@charset "UTF-8";
@font-face {
  font-family: 'zenmaru';
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/zenmaru/ZenMaruGothic-Light.otf");
  src: url("../fonts/zenmaru/ZenMaruGothic-Light.woff") format("woff"), url("../fonts/zenmaru/ZenMaruGothic-Light.ttf") format("truetype");
}
@font-face {
  font-family: 'zenmaru';
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/zenmaru/ZenMaruGothic-Regular.otf");
  src: url("../fonts/zenmaru/ZenMaruGothic-Regular.woff") format("woff"), url("../fonts/zenmaru/ZenMaruGothic-Regular.ttf") format("truetype");
}
@font-face {
  font-family: 'zenmaru';
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/zenmaru/ZenMaruGothic-Medium.otf");
  src: url("../fonts/zenmaru/ZenMaruGothic-Medium.woff") format("woff"), url("../fonts/zenmaru/ZenMaruGothic-Medium.ttf") format("truetype");
}
@font-face {
  font-family: 'zenmaru';
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/zenmaru/ZenMaruGothic-Bold.otf");
  src: url("../fonts/zenmaru/ZenMaruGothic-Bold.woff") format("woff"), url("../fonts/zenmaru/ZenMaruGothic-Bold.ttf") format("truetype");
}
@font-face {
  font-family: 'zenmaru';
  font-style: normal;
  font-weight: 900;
  src: url("../fonts/zenmaru/ZenMaruGothic-Black.otf");
  src: url("../fonts/zenmaru/ZenMaruGothic-Black.woff") format("woff"), url("../fonts/zenmaru/ZenMaruGothic-Black.ttf") format("truetype");
}
@font-face {
  font-family: 'zenmaru';
  font-style: normal;
  font-weight: normal;
  src: url("../fonts/zenmaru/ZenMaruGothic-Regular.otf");
  src: url("../fonts/zenmaru/ZenMaruGothic-Regular.woff") format("woff"), url("../fonts/zenmaru/ZenMaruGothic-Regular.ttf") format("truetype");
}
.zenmaru {
  font-family: 'zenmaru', sans-serif;
}

@font-face {
  font-family: 'karla';
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/karla/Karla-Medium.otf");
  src: url("../fonts/karla/Karla-Medium.woff") format("woff"), url("../fonts/karla/Karla-Medium.ttf") format("truetype");
}
.karla {
  font-family: 'karla', sans-serif;
}

/* 共通 color
*******************/
/* カラー
*******************/
.c-white {
  color: #ffffff !important;
}
.c-black {
  color: #1D2530 !important;
}
.c-blue {
  color: #144aa6 !important;
}
.c-yellow {
  color: #EFC557 !important;
}
.c-red {
  color: #E81414 !important;
}
.c-green {
  color: #0CAFB8 !important;
}
.c-orange {
  color: #ff9020 !important;
}
.c-gray {
  color: #D2D2D2 !important;
}

/* bgカラー
*******************/
.bg-white {
  background-color: #ffffff !important;
}
.bg-black {
  background-color: #1D2530 !important;
}
.bg-blue {
  background-color: #144aa6 !important;
}
.bg-yellow {
  background-color: #EFC557 !important;
}
.bg-red {
  background-color: #E81414 !important;
}
.bg-green {
  background-color: #0CAFB8 !important;
}
.bg-orange {
  background-color: #ff9020 !important;
}
.bg-gray {
  background-color: #D2D2D2 !important;
}

/* border color
*******************/
.bc-white {
  border-color: #ffffff !important;
}
.bc-black {
  border-color: #1D2530 !important;
}
.bc-blue {
  border-color: #144aa6 !important;
}
.bc-yellow {
  border-color: #EFC557 !important;
}
.bc-red {
  border-color: #E81414 !important;
}
.bc-green {
  border-color: #0CAFB8 !important;
}
.bc-orange {
  border-color: #ff9020 !important;
}
.bc-gray {
  border-color: #D2D2D2 !important;
}

html {
  font-size: 62.5%;
  font-family: 'zenmaru', sans-serif;
  color: #1D2530;
}
html * {
  box-sizing: border-box;
}

p, a, li, dd, dt, th, td {
  font-size: 1.6rem;
  line-height: 1.65;
}

.sp {
  display: none !important;
}

img {
  max-width: 100%;
}

.bold {
  font-weight: bold;
}

.block {
  display: block;
}

.pc_block {
  display: block;
}

.inline-block {
  display: inline-block;
}

.lwrap {
  max-width: 1200px;
  width: 100%;
  margin: auto;
}

.lwrap1 {
  max-width: 1210px;
  width: 100%;
  margin: auto;
}

.lwrap2 {
  max-width: 1500px;
  width: 100%;
  margin: auto;
}

.tel a {
  pointer-events: none;
}

.imgCenter {
  display: block;
  margin: auto;
}

/* float
*******************/
.fl-l {
  float: left;
}
.fl-r {
  float: right;
}

/* clear
*******************/
.clearfix::after {
  content: "";
  display: block;
  clear: both;
}

/* txt 揃え
*******************/
.alignCenter {
  text-align: center;
}
.alignLeft {
  text-align: left;
}
.alignRight {
  text-align: right;
}

/* flex
*******************/
.flex {
  display: flex;
}
.flex.col-2 {
  flex-wrap: wrap;
}
.flex.col-2 .item {
  width: 48%;
  margin-right: 4%;
}
.flex.col-2 .item:nth-child(2n) {
  margin-right: 0;
}
.flex.col-3 {
  flex-wrap: wrap;
}
.flex.col-3 .item {
  width: 32%;
  margin-right: 2%;
}
.flex.col-3 .item:nth-child(3n) {
  margin-right: 0;
}
.flex.col-4 {
  flex-wrap: wrap;
}
.flex.col-4 .item {
  width: 23.5%;
  margin-right: 2%;
}
.flex.col-4 .item:nth-child(4n) {
  margin-right: 0;
}
.flex.col-5 {
  flex-wrap: wrap;
}
.flex.col-5 .item {
  width: 18.4%;
  margin-right: 2%;
}
.flex.col-5 .item:nth-child(5n) {
  margin-right: 0;
}

/* border
*******************/
.border-solid-top {
  border-top: 1px solid #D2D2D2;
}
.border-solid-left {
  border-left: 1px solid #D2D2D2;
}
.border-solid-right {
  border-right: 1px solid #D2D2D2;
}
.border-solid-bottom {
  border-bottom: 1px solid #D2D2D2;
}
.border-dashed-top {
  border-top: 1px dashed #D2D2D2;
}
.border-dashed-left {
  border-left: 1px dashed #D2D2D2;
}
.border-dashed-right {
  border-right: 1px dashed #D2D2D2;
}
.border-dashed-bottom {
  border-bottom: 1px dashed #D2D2D2;
}
.border-dotted-top {
  border-top: 1px dotted #D2D2D2;
}
.border-dotted-left {
  border-left: 1px dotted #D2D2D2;
}
.border-dotted-right {
  border-right: 1px dotted #D2D2D2;
}
.border-dotted-bottom {
  border-bottom: 1px dotted #D2D2D2;
}

/* circle
*******************/
.circle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 10rem;
  height: 10rem;
  border-radius: 100%;
  background-color: #D2D2D2;
  text-align: center;
}
.circle-inner {
  width: 100%;
}

/* square
*******************/
.square {
  display: inline-block;
  width: 10rem;
  height: 10rem;
  background-color: #D2D2D2;
  text-align: center;
  position: relative;
}
.square > span {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
}

/* 角丸
*******************/
.round-15 {
  border-radius: 1.5rem;
}
.round-30 {
  border-radius: 3rem;
}
.round-60 {
  border-radius: 6rem;
}
.round-90 {
  border-radius: 9rem;
}
.round-100 {
  border-radius: 100%;
}

/* box shadow
*******************/
.b-shadow {
  box-shadow: 0.5rem 0.5rem 0.4rem rgba(0, 0, 0, 0.2);
}

/* text shadow
*******************/
.t-shadow {
  text-shadow: 0.43rem 0.43rem 0.323rem rgba(0, 0, 0, 0.6);
}

/* marker
*******************/
.marker-yellow {
  display: inline;
  line-height: 1;
  background: linear-gradient(90deg, #fcedc3, #fcedc3) bottom left no-repeat;
  background-size: 0 44%;
  transition: all 1s ease-in-out;
}
.marker-yellow.animation.active {
  background-size: 100% 44%;
}
.marker-green {
  display: inline;
  line-height: 1;
  background: linear-gradient(90deg, #bde9ec, #bde9ec) bottom left no-repeat;
  background-size: 0 44%;
  transition: all 1s ease-in-out;
}
.marker-green.animation.active {
  background-size: 100% 44%;
}
.marker-pink {
  display: inline;
  line-height: 1;
  background: linear-gradient(90deg, #fabfa3, #fabfa3) bottom left no-repeat;
  background-size: 0 44%;
  transition: all 1s ease-in-out;
}
.marker-pink.animation.active {
  background-size: 100% 44%;
}

.txt-wave {
  position: relative;
  padding-bottom: 10px;
  line-height: 1;
  background: url("../images/common/text-wave_yellow.png") repeat-x bottom 4px left;
  background-size: 166px 8px;
}
.txt-wave.red {
  background-image: url("../images/common/text-wave_red.png");
  background-size: 27px 8px;
}
.txt-wave.animation::after {
  width: 0%;
}
.txt-wave.animation.active::after {
  width: 100%;
}

.txt-dots {
  position: relative;
  line-height: 1.5;
  display: inline-block;
}
.txt-dots::before {
  content: "";
  display: block;
  width: .6rem;
  height: .6rem;
  border-radius: 100%;
  position: absolute;
  left: 50%;
  bottom: 100%;
  transform: translateY(0%) translateX(-50%);
  background-color: #E45861;
}
.txt-dots.yellow::before {
  background-color: #F5BB21;
}
.txt-dots.green::before {
  background-color: #0CAFB8;
}

.dot-text {
  position: relative;
  display: inline-block;
  overflow: hidden;
  vertical-align: bottom;
}
.dot-text.ps-s::after {
  top: -0.5rem;
}
.dot-text.ps-s > span::before {
  top: .3px;
}
.dot-text.ps-m::after {
  top: -0.3rem;
}
.dot-text.ps-m > span::before {
  top: .2rem;
}
.dot-text.ps-l {
  padding-top: 3px;
}
.dot-text.ps-l > span::before {
  top: -3px;
}
.dot-text::before {
  content: none;
}
.dot-text::after {
  content: "";
  height: 1.5rem;
  width: 100%;
  background-color: #ffffff;
  position: absolute;
  right: 0;
  top: -0.8rem;
  transition: right 1s;
}
.dot-text.active::after {
  right: -100%;
}
.dot-text.bglightgreen::after {
  background-color: #F6F6FA;
}
.dot-text > span {
  position: relative;
  display: inline-block;
}
.dot-text > span::before {
  content: "●";
  color: #F4454D;
  display: block;
  font-size: 1rem;
  transform: scale(0.8);
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  line-height: 1;
}
.dot-text.green > span::before {
  color: #0CAFB8;
}
.dot-text.yellow > span::before {
  color: #F5BB21;
}
.dot-text.fs20::after {
  height: 1.8rem;
}
.dot-text.fs16::after {
  height: 1.6rem;
}
.dot-text.fs16 > span::before {
  transform: scale(0.6);
}
.dot-text.fs14::after {
  height: 1.4rem;
}
.dot-text.fs14 > span::before {
  transform: scale(0.6);
}

.flowing-anim {
  display: inline-block;
  width: 0%;
  white-space: nowrap;
  overflow: hidden;
}
.flowing-anim.active {
  animation: flowing-anim 3s;
  animation-fill-mode: forwards;
}

@keyframes flowing-anim {
  0% {
    width: 0%;
  }
  100% {
    width: 100%;
  }
}
.vertical-anim {
  height: 0;
  white-space: nowrap;
  overflow: hidden;
}
.vertical-anim.active {
  animation: vertical-anim 2s;
  animation-fill-mode: forwards;
  will-change: filter;
}

@keyframes vertical-anim {
  0% {
    height: 0%;
  }
  100% {
    height: 100%;
  }
}
.fade-in {
  opacity: 0;
}
.fade-in.active {
  animation: fade-in 1s;
  animation-fill-mode: forwards;
}

@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.fadeIn-top {
  position: relative;
  opacity: 0;
}
.fadeIn-top.active {
  animation-name: fadeIn-top;
  animation-duration: 1s;
  animation-fill-mode: forwards;
}

@keyframes fadeIn-top {
  0% {
    opacity: 0;
    top: -3rem;
  }
  100% {
    opacity: 1;
    top: 0;
  }
}
.slideout-top {
  position: relative;
  overflow: hidden;
}
.slideout-top::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: #ffffff;
  position: absolute;
  top: 0;
  left: 0;
}
.slideout-top.active::after {
  animation-name: slideout-top;
  animation-duration: 3s;
  animation-fill-mode: forwards;
}

@keyframes slideout-top {
  0% {
    top: 0;
  }
  100% {
    top: 100%;
  }
}
.boxslide {
  overflow: hidden;
  display: inline-block;
}
.boxslide .inner {
  opacity: 0;
}

.boxslide.active .inner {
  position: relative;
  opacity: 1 !important;
  display: inline-block;
}
.boxslide.active .inner:before {
  animation-name: maskOut;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  animation-timing-function: ease-in-out;
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background-color: #ffffff;
}

@keyframes maskOut {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(100%);
  }
}
*[data-delay="0"] {
  animation-delay: 0s !important;
}
*[data-delay="0"]::before {
  transition-delay: 0s !important;
}
*[data-delay="0"]::after {
  transition-delay: 0s !important;
}

.marker-yellow[data-delay="0"], .marker-green[data-delay="0"], .marker-pink[data-delay="0"] {
  transition-delay: 0s !important;
}

*[data-delay="2"] {
  animation-delay: 0.2s !important;
}
*[data-delay="2"]::before {
  transition-delay: 0.2s !important;
}
*[data-delay="2"]::after {
  transition-delay: 0.2s !important;
}

.marker-yellow[data-delay="2"], .marker-green[data-delay="2"], .marker-pink[data-delay="2"] {
  transition-delay: 0.2s !important;
}

*[data-delay="4"] {
  animation-delay: 0.4s !important;
}
*[data-delay="4"]::before {
  transition-delay: 0.4s !important;
}
*[data-delay="4"]::after {
  transition-delay: 0.4s !important;
}

.marker-yellow[data-delay="4"], .marker-green[data-delay="4"], .marker-pink[data-delay="4"] {
  transition-delay: 0.4s !important;
}

*[data-delay="6"] {
  animation-delay: 0.6s !important;
}
*[data-delay="6"]::before {
  transition-delay: 0.6s !important;
}
*[data-delay="6"]::after {
  transition-delay: 0.6s !important;
}

.marker-yellow[data-delay="6"], .marker-green[data-delay="6"], .marker-pink[data-delay="6"] {
  transition-delay: 0.6s !important;
}

*[data-delay="8"] {
  animation-delay: 0.8s !important;
}
*[data-delay="8"]::before {
  transition-delay: 0.8s !important;
}
*[data-delay="8"]::after {
  transition-delay: 0.8s !important;
}

.marker-yellow[data-delay="8"], .marker-green[data-delay="8"], .marker-pink[data-delay="8"] {
  transition-delay: 0.8s !important;
}

*[data-delay="10"] {
  animation-delay: 1s !important;
}
*[data-delay="10"]::before {
  transition-delay: 1s !important;
}
*[data-delay="10"]::after {
  transition-delay: 1s !important;
}

.marker-yellow[data-delay="10"], .marker-green[data-delay="10"], .marker-pink[data-delay="10"] {
  transition-delay: 1s !important;
}

*[data-delay="12"] {
  animation-delay: 1.2s !important;
}
*[data-delay="12"]::before {
  transition-delay: 1.2s !important;
}
*[data-delay="12"]::after {
  transition-delay: 1.2s !important;
}

.marker-yellow[data-delay="12"], .marker-green[data-delay="12"], .marker-pink[data-delay="12"] {
  transition-delay: 1.2s !important;
}

*[data-delay="14"] {
  animation-delay: 1.4s !important;
}
*[data-delay="14"]::before {
  transition-delay: 1.4s !important;
}
*[data-delay="14"]::after {
  transition-delay: 1.4s !important;
}

.marker-yellow[data-delay="14"], .marker-green[data-delay="14"], .marker-pink[data-delay="14"] {
  transition-delay: 1.4s !important;
}

*[data-delay="16"] {
  animation-delay: 1.6s !important;
}
*[data-delay="16"]::before {
  transition-delay: 1.6s !important;
}
*[data-delay="16"]::after {
  transition-delay: 1.6s !important;
}

.marker-yellow[data-delay="16"], .marker-green[data-delay="16"], .marker-pink[data-delay="16"] {
  transition-delay: 1.6s !important;
}

*[data-delay="18"] {
  animation-delay: 1.8s !important;
}
*[data-delay="18"]::before {
  transition-delay: 1.8s !important;
}
*[data-delay="18"]::after {
  transition-delay: 1.8s !important;
}

.marker-yellow[data-delay="18"], .marker-green[data-delay="18"], .marker-pink[data-delay="18"] {
  transition-delay: 1.8s !important;
}

*[data-delay="20"] {
  animation-delay: 2s !important;
}
*[data-delay="20"]::before {
  transition-delay: 2s !important;
}
*[data-delay="20"]::after {
  transition-delay: 2s !important;
}

.marker-yellow[data-delay="20"], .marker-green[data-delay="20"], .marker-pink[data-delay="20"] {
  transition-delay: 2s !important;
}

*[data-delay="22"] {
  animation-delay: 2.2s !important;
}
*[data-delay="22"]::before {
  transition-delay: 2.2s !important;
}
*[data-delay="22"]::after {
  transition-delay: 2.2s !important;
}

.marker-yellow[data-delay="22"], .marker-green[data-delay="22"], .marker-pink[data-delay="22"] {
  transition-delay: 2.2s !important;
}

*[data-delay="24"] {
  animation-delay: 2.4s !important;
}
*[data-delay="24"]::before {
  transition-delay: 2.4s !important;
}
*[data-delay="24"]::after {
  transition-delay: 2.4s !important;
}

.marker-yellow[data-delay="24"], .marker-green[data-delay="24"], .marker-pink[data-delay="24"] {
  transition-delay: 2.4s !important;
}

*[data-delay="26"] {
  animation-delay: 2.6s !important;
}
*[data-delay="26"]::before {
  transition-delay: 2.6s !important;
}
*[data-delay="26"]::after {
  transition-delay: 2.6s !important;
}

.marker-yellow[data-delay="26"], .marker-green[data-delay="26"], .marker-pink[data-delay="26"] {
  transition-delay: 2.6s !important;
}

*[data-delay="28"] {
  animation-delay: 2.8s !important;
}
*[data-delay="28"]::before {
  transition-delay: 2.8s !important;
}
*[data-delay="28"]::after {
  transition-delay: 2.8s !important;
}

.marker-yellow[data-delay="28"], .marker-green[data-delay="28"], .marker-pink[data-delay="28"] {
  transition-delay: 2.8s !important;
}

*[data-delay="30"] {
  animation-delay: 3s !important;
}
*[data-delay="30"]::before {
  transition-delay: 3s !important;
}
*[data-delay="30"]::after {
  transition-delay: 3s !important;
}

.marker-yellow[data-delay="30"], .marker-green[data-delay="30"], .marker-pink[data-delay="30"] {
  transition-delay: 3s !important;
}

*[data-delay="32"] {
  animation-delay: 3.2s !important;
}
*[data-delay="32"]::before {
  transition-delay: 3.2s !important;
}
*[data-delay="32"]::after {
  transition-delay: 3.2s !important;
}

.marker-yellow[data-delay="32"], .marker-green[data-delay="32"], .marker-pink[data-delay="32"] {
  transition-delay: 3.2s !important;
}

*[data-delay="34"] {
  animation-delay: 3.4s !important;
}
*[data-delay="34"]::before {
  transition-delay: 3.4s !important;
}
*[data-delay="34"]::after {
  transition-delay: 3.4s !important;
}

.marker-yellow[data-delay="34"], .marker-green[data-delay="34"], .marker-pink[data-delay="34"] {
  transition-delay: 3.4s !important;
}

*[data-delay="36"] {
  animation-delay: 3.6s !important;
}
*[data-delay="36"]::before {
  transition-delay: 3.6s !important;
}
*[data-delay="36"]::after {
  transition-delay: 3.6s !important;
}

.marker-yellow[data-delay="36"], .marker-green[data-delay="36"], .marker-pink[data-delay="36"] {
  transition-delay: 3.6s !important;
}

*[data-delay="38"] {
  animation-delay: 3.8s !important;
}
*[data-delay="38"]::before {
  transition-delay: 3.8s !important;
}
*[data-delay="38"]::after {
  transition-delay: 3.8s !important;
}

.marker-yellow[data-delay="38"], .marker-green[data-delay="38"], .marker-pink[data-delay="38"] {
  transition-delay: 3.8s !important;
}

*[data-delay="40"] {
  animation-delay: 4s !important;
}
*[data-delay="40"]::before {
  transition-delay: 4s !important;
}
*[data-delay="40"]::after {
  transition-delay: 4s !important;
}

.marker-yellow[data-delay="40"], .marker-green[data-delay="40"], .marker-pink[data-delay="40"] {
  transition-delay: 4s !important;
}

*[data-delay="42"] {
  animation-delay: 4.2s !important;
}
*[data-delay="42"]::before {
  transition-delay: 4.2s !important;
}
*[data-delay="42"]::after {
  transition-delay: 4.2s !important;
}

.marker-yellow[data-delay="42"], .marker-green[data-delay="42"], .marker-pink[data-delay="42"] {
  transition-delay: 4.2s !important;
}

*[data-delay="44"] {
  animation-delay: 4.4s !important;
}
*[data-delay="44"]::before {
  transition-delay: 4.4s !important;
}
*[data-delay="44"]::after {
  transition-delay: 4.4s !important;
}

.marker-yellow[data-delay="44"], .marker-green[data-delay="44"], .marker-pink[data-delay="44"] {
  transition-delay: 4.4s !important;
}

*[data-delay="46"] {
  animation-delay: 4.6s !important;
}
*[data-delay="46"]::before {
  transition-delay: 4.6s !important;
}
*[data-delay="46"]::after {
  transition-delay: 4.6s !important;
}

.marker-yellow[data-delay="46"], .marker-green[data-delay="46"], .marker-pink[data-delay="46"] {
  transition-delay: 4.6s !important;
}

*[data-delay="48"] {
  animation-delay: 4.8s !important;
}
*[data-delay="48"]::before {
  transition-delay: 4.8s !important;
}
*[data-delay="48"]::after {
  transition-delay: 4.8s !important;
}

.marker-yellow[data-delay="48"], .marker-green[data-delay="48"], .marker-pink[data-delay="48"] {
  transition-delay: 4.8s !important;
}

*[data-delay="50"] {
  animation-delay: 5s !important;
}
*[data-delay="50"]::before {
  transition-delay: 5s !important;
}
*[data-delay="50"]::after {
  transition-delay: 5s !important;
}

.marker-yellow[data-delay="50"], .marker-green[data-delay="50"], .marker-pink[data-delay="50"] {
  transition-delay: 5s !important;
}

*[data-delay="52"] {
  animation-delay: 5.2s !important;
}
*[data-delay="52"]::before {
  transition-delay: 5.2s !important;
}
*[data-delay="52"]::after {
  transition-delay: 5.2s !important;
}

.marker-yellow[data-delay="52"], .marker-green[data-delay="52"], .marker-pink[data-delay="52"] {
  transition-delay: 5.2s !important;
}

*[data-delay="54"] {
  animation-delay: 5.4s !important;
}
*[data-delay="54"]::before {
  transition-delay: 5.4s !important;
}
*[data-delay="54"]::after {
  transition-delay: 5.4s !important;
}

.marker-yellow[data-delay="54"], .marker-green[data-delay="54"], .marker-pink[data-delay="54"] {
  transition-delay: 5.4s !important;
}

*[data-delay="56"] {
  animation-delay: 5.6s !important;
}
*[data-delay="56"]::before {
  transition-delay: 5.6s !important;
}
*[data-delay="56"]::after {
  transition-delay: 5.6s !important;
}

.marker-yellow[data-delay="56"], .marker-green[data-delay="56"], .marker-pink[data-delay="56"] {
  transition-delay: 5.6s !important;
}

*[data-delay="58"] {
  animation-delay: 5.8s !important;
}
*[data-delay="58"]::before {
  transition-delay: 5.8s !important;
}
*[data-delay="58"]::after {
  transition-delay: 5.8s !important;
}

.marker-yellow[data-delay="58"], .marker-green[data-delay="58"], .marker-pink[data-delay="58"] {
  transition-delay: 5.8s !important;
}

*[data-delay="60"] {
  animation-delay: 6s !important;
}
*[data-delay="60"]::before {
  transition-delay: 6s !important;
}
*[data-delay="60"]::after {
  transition-delay: 6s !important;
}

.marker-yellow[data-delay="60"], .marker-green[data-delay="60"], .marker-pink[data-delay="60"] {
  transition-delay: 6s !important;
}

@media screen and (max-width: 1530px) {
  .lwrap2 {
    margin: 0 3rem;
    width: auto;
  }
}
@media screen and (max-width: 1240px) {
  .lwrap1 {
    margin: 0 3rem;
    width: auto;
  }
}
@media screen and (max-width: 1230px) {
  .lwrap {
    margin: 0 3rem;
    width: auto;
  }
}
/*******************
スマホ
******************/
@media screen and (max-width: 750px) {
  html {
    font-size: 1.33333vw;
  }

  p, a, li, dd, dt, th, td {
    font-size: 2.8rem;
  }

  .pc {
    display: none !important;
  }

  .sp {
    display: block !important;
  }
  .sp-inline {
    display: inline !important;
  }

  .tel a {
    pointer-events: auto;
  }

  .lwrap {
    margin: 0 3.5rem;
    width: auto;
  }

  .lwrap1 {
    margin: 0 3.5rem;
    width: auto;
  }

  .lwrap2 {
    margin: 0 3.5rem;
    width: auto;
  }

  .txt-wave {
    padding-bottom: 1rem;
    background-position: bottom .4rem left;
    background-size: 16.6rem .8rem;
  }
  .txt-wave.red {
    background-size: 2.7rem .8rem;
  }

  /* marker
  *******************/
  .dot-text.ps-s > span::before {
    top: .3rem;
  }
  .dot-text.ps-l {
    padding-top: .3rem;
  }
  .dot-text.ps-l > span::before {
    top: -.3rem;
  }
  .dot-text.spbgblue::after {
    background-color: #e2efff;
  }
  .dot-text > span::before {
    transform: inherit;
    font-size: 1.2rem;
    top: 0;
  }
  .dot-text.fs16::after {
    height: 2.5rem;
  }
  .dot-text.fs16 > span::before {
    transform: inherit;
  }
  .dot-text.fs20::after {
    height: 2rem;
  }
}
.header {
  position: relative;
  z-index: 999;
}
.header .following-right {
  padding-top: 4rem;
}
.header-logo {
  position: fixed;
  z-index: 999;
  left: 3rem;
  top: 5.5rem;
  transition: .3s;
}
.header-logo.hide {
  opacity: 0;
  pointer-events: none;
}
.header-logo a {
  width: 14.5rem;
  line-height: 1;
  display: block;
  text-decoration: none;
  color: #1D2530;
}

.home .header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 6;
}
.home .header-logo {
  position: absolute;
}
.home .following-left {
  background-color: transparent;
}

#nav-menu .parrent {
  cursor: pointer;
  padding-right: 1rem;
}
#nav-menu .parrent > span {
  font-size: 1.4rem;
}
#nav-menu .parrent:hover > span {
  color: #E81414;
}
#nav-menu .parrent:hover .child {
  opacity: 1;
  top: 100%;
  pointer-events: auto;
}
#nav-menu .parrent:hover .child a {
  pointer-events: auto;
}
#nav-menu .child {
  transition: .3s;
}

.nav-wrap .nav-menu a {
  position: relative;
}
.nav-wrap .nav-menu a::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 10%;
  width: 80%;
  height: 2px;
  background: #E81414;
  transition: all .3s;
  transform: scale(0, 1);
  transform-origin: center top;
}
.nav-wrap .nav-menu a:hover {
  color: #E81414;
}
.nav-wrap .nav-menu a:hover::after {
  transform: scale(1, 1);
}
.nav-wrap .nav-menu li.active > a {
  color: #E81414;
}
.nav-wrap .nav-menu li.active > a::after {
  background: #E81414;
  transform: scale(1, 1);
}
.nav-wrap-pc {
  position: fixed;
  top: 0;
  right: -100%;
  background-color: #F3F3F3;
  max-width: 60rem;
  width: 100%;
  height: 100%;
  overflow-y: scroll;
  overscroll-behavior-y: contain;
  border-left: 0.8rem solid #E81414;
  z-index: 9;
  transition: .3s;
  padding: 12rem 0 6rem;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.nav-wrap-pc::-webkit-scrollbar {
  display: none;
}
.nav-wrap-pc.active {
  right: 0;
}
.nav-wrap-pc .nav-menu {
  display: block;
  max-width: 40rem;
  width: 100%;
  margin: auto;
}
.nav-wrap-pc .nav-menu li {
  border-bottom: 1px solid #1D2530;
  font-size: 2rem;
}
.nav-wrap-pc .nav-menu a {
  font-size: 2rem;
  padding: 2rem 1.5rem;
}
.nav-wrap-pc .nav-menu .parrent > span::after {
  width: 1.1rem;
  height: 0.5rem;
  top: 3.6rem;
  right: 2rem;
  transition: .3s;
}
.nav-wrap-pc .nav-menu .parrent.active > span::after {
  transform: rotate(180deg);
}
.nav-wrap-pc .nav-menu .child {
  display: none;
  position: static;
  background-color: transparent;
  pointer-events: auto;
}
.nav-wrap-pc .nav-menu .child li {
  border-bottom: none;
}
.nav-wrap-pc .nav-menu .child li:last-child {
  margin-bottom: 5rem;
}
.nav-wrap-pc .nav-menu .child a {
  font-size: 1.6rem;
  padding: .75rem 1.5rem .75rem 5rem;
  display: flex;
  align-items: center;
}
.nav-wrap-pc .nav-menu .child a::before {
  content: "";
  display: inline-block;
  width: .7rem;
  height: .2rem;
  background-color: #E81414;
  margin-right: 1rem;
}
.nav-menu {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin-right: 15.5rem;
}
.nav-menu .parrent {
  position: relative;
}
.nav-menu .parrent > span {
  padding: 2rem 1.5rem;
  display: block;
  cursor: pointer;
  position: relative;
  cursor: pointer;
}
.nav-menu .parrent > span::after {
  content: "";
  width: .7rem;
  height: .36rem;
  background: url("../images/common/ico-arrow-bottom.png") no-repeat center;
  background-size: 100%;
  position: absolute;
  right: 0;
  top: 3.1rem;
}
.nav-menu .child {
  width: 100%;
  opacity: 0;
  position: absolute;
  top: 120%;
  left: 0;
  z-index: 1;
  background-color: #F6F6FA;
  pointer-events: none;
}
.nav-menu .child a {
  padding: 1.5rem 1rem;
  pointer-events: none;
}
.nav-menu .child.active {
  opacity: 1;
  top: 100%;
  pointer-events: auto;
}
.nav-menu .child.active a {
  pointer-events: auto;
}
.nav-menu a {
  text-decoration: none;
  color: #1D2530;
  font-size: 1.4rem;
  padding: 2rem 1.75rem;
  box-sizing: border-box;
  display: block;
}
.nav-btn {
  width: 7.5rem;
  height: 7.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  right: 5.5rem;
  top: 3.5rem;
  z-index: 999;
  background-color: #ffffff;
  border: 1px solid #1D2530;
  border-radius: 100%;
  cursor: pointer;
}
.nav-btn span {
  font-weight: 600;
  border-radius: 3px;
  transition: all .5s;
  box-sizing: border-box;
  display: inline-block;
  transition: .3s;
	font-size: 1.3rem;
}
.nav-btn span:nth-child(1) {
  opacity: 1;
}
.nav-btn span:nth-child(2), .nav-btn span:nth-child(3) {
  opacity: 0;
  width: 3.4rem;
  height: .2rem;
  background-color: #ffffff;
  position: absolute;
  left: 2rem;
  top: 3.6rem;
}
.nav-btn span:nth-child(2) {
  transform: rotate(45deg);
}
.nav-btn span:nth-child(3) {
  transform: rotate(-45deg);
}
.nav-btn.active {
  background-color: #1D2530;
  color: #ffffff;
}
.nav-btn.active span:nth-child(1) {
  opacity: 0;
}
.nav-btn.active span:nth-child(2), .nav-btn.active span:nth-child(3) {
  opacity: 1;
}

@media screen and (min-width: 751px) and (max-width: 1240px) {
  .nav-menu {
    margin-right: 7.5rem;
  }

  .nav-btn {
    right: 3rem;
  }
}
@media screen and (min-width: 751px) and (max-width: 1050px) {
  #nav-menu {
    opacity: 0;
    pointer-events: none;
    height: 6.6rem;
  }
}
/*******************
スマホ
******************/
@media screen and (max-width: 750px) {
  .header-logo {
    position: absolute;
    top: 8.5rem;
    opacity: 1;
    transition: opacity .3s;
  }
  .header-logo.hide {
    opacity: 0;
    pointer-events: none;
  }
  .header-logo a {
    width: 30.7rem;
  }

  .nav-btn {
    width: 14.2rem;
    height: 14.2rem;
    right: 3.5rem;
    top: 8.5rem;
  }
  .nav-btn span {
    font-size: 2.4rem;
  }
  .nav-btn span:nth-child(2), .nav-btn span:nth-child(3) {
    width: 7rem;
    height: 0.4rem;
    left: 3.5rem;
    top: 6.7rem;
  }
  .nav-wrap {
    width: 100%;
    height: 100%;
    position: fixed;
    right: -100%;
    top: 0;
    z-index: 99;
    background-color: #ffffff;
    padding: 20rem 3.5rem 9rem;
    box-sizing: border-box;
    overflow: scroll;
    transition: .3s;
  }
  .nav-wrap.active {
    right: 0;
  }
  .nav-wrap-pc {
    max-width: inherit;
    border-left: none;
    padding: 24rem 0 6rem;
  }
  .nav-wrap-pc .nav-menu {
    max-width: 68rem;
    margin-left: 3.5rem;
  }
  .nav-wrap-pc .nav-menu li {
    font-size: 4rem;
  }
  .nav-wrap-pc .nav-menu a {
    font-size: 4rem;
    padding: 4rem 3rem;
  }
  .nav-wrap-pc .nav-menu .parrent {
    transition: .3s;
  }
  .nav-wrap-pc .nav-menu .parrent.active {
    padding-bottom: 5rem;
  }
  .nav-wrap-pc .nav-menu .parrent > span::after {
    width: 1.8rem;
    height: 0.9rem;
    top: 7.2rem;
    right: 3rem;
  }
  .nav-wrap-pc .nav-menu .child {
    width: auto;
  }
  .nav-wrap-pc .nav-menu .child li {
    margin-bottom: 1.5rem;
  }
  .nav-wrap-pc .nav-menu .child li:last-child {
    margin-bottom: 0;
  }
  .nav-wrap-pc .nav-menu .child a {
    font-size: 2.6rem;
    padding: 0;
  }
  .nav-wrap-pc .nav-menu .child a::before {
    width: 1rem;
    height: 0.2rem;
  }
  .nav-menu {
    flex-wrap: wrap;
    margin-right: 0;
  }
  .nav-menu li {
    width: 100%;
  }
  .nav-menu .parrent > span {
    padding: 4rem 3rem;
    font-size: 4rem;
  }
  .nav-menu .child {
    position: static;
    opacity: 1;
    background-color: transparent;
    margin-left: 7rem;
  }
}
.footer {
  border-top: 5px solid #E81414;
  padding: 6.5rem 0 0;
}
.footer-nav {
  padding-bottom: 3.5rem;
  margin-bottom: 4.5rem;
  border-bottom: 1px solid #707070;
}
.footer-nav > .flex {
  justify-content: space-between;
}
.footer-nav-list a {
  text-decoration: none;
  color: #1D2530;
}
.footer-nav-list dt {
  margin-bottom: 2.5rem;
}
.footer-nav-list dt a {
  font-size: 1.6rem;
}
.footer-nav-list dd {
  margin-bottom: .5rem;
}
.footer-nav-list dd:last-child {
  margin-bottom: 0;
}
.footer-nav-list dd a {
  font-size: 1.3rem;
}
.footer-nav-list .lh-min {
  line-height: 1.2;
}
.footer-nav-list .lh-min a {
  line-height: 1.2;
}
.footer-bottom {
  display: flex;
  justify-content: space-between;
}
.footer-logo {
  width: 20rem;
}
.footer .companyname {
  font-size: 1.4rem;
  margin-bottom: 1rem;
}
.footer .companyaddress {
  font-size: 1.4rem;
  color: #686868;
  line-height: 1.5714;
}
.footer small {
  background-color: #E81414;
  color: #ffffff;
  margin-top: 6rem;
  display: block;
  text-align: center;
  font-size: 1rem;
  padding: 1rem 0;
}

@media screen and (min-width: 751px) and (max-width: 1130px) {
	.footer-nav > .flex{
		flex-wrap: wrap;
		justify-content: center;
		gap: 5rem;
		max-width: 80rem;
		margin: auto;
	}
	.footer-nav > .flex .item{
	}
}


@media screen and (min-width: 751px) and (max-width: 900px) {
/*
  .footer-nav-list dt a {
    font-size: 1.4rem;
  }
  .footer-nav-list dd a {
    font-size: 1.1rem;
  }
*/
}
/*******************
スマホ
******************/
@media screen and (max-width: 750px) {
  .footer {
    border-width: 1rem;
    padding: 10rem 0 0;
  }
  .footer-logo {
    margin: auto;
    width: 28rem;
    margin-bottom: 9.5rem;
  }
  .footer-nav {
    padding-bottom: 11.5rem;
    margin-bottom: 11.5rem;
  }
  .footer-nav > .flex {
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .footer-nav > .flex .item {
    width: 45%;
    margin-bottom: 13rem;
  }
  .footer-nav > .flex .item:nth-child(odd) {
    width: 50%;
  }
  .footer-nav > .flex .item:nth-child(2n) {
    width: 45%;
  }
	.footer-nav > .flex .item:last-child() {
		margin-bottom: 0;
	}
/*
  .footer-nav > .flex .item:nth-child(n + 5) {
    margin-bottom: 0;
  }
*/
  .footer-nav-list dt {
    line-height: 1;
    margin-bottom: 2rem;
	  font-size: 3rem;
	  font-weight: 500;
	  line-height: 1.65;
  }
  .footer-nav-list dt a {
    font-size: 3rem;
    font-weight: 500;
  }
  .footer-nav-list dd {
    line-height: 1;
    margin-left: 2rem;
    margin-bottom: 2.5rem;
  }
  .footer-nav-list dd a {
    font-size: 2.4rem;
    font-weight: 500;
  }
  .footer .companyname {
    font-size: 2.8rem;
    font-weight: 500;
    margin-bottom: 2.5rem;
  }
  .footer .companyaddress {
    font-size: 2.4rem;
    font-weight: 500;
    color: #1D2530;
    line-height: 1.8;
  }
  .footer small {
    margin-top: 10rem;
    font-size: 2.4rem;
    padding: 1.5rem 0 10.5rem;
  }

  .home .footer small, .page-voice .footer small {
    padding: 1.5rem 0;
  }
}
/* margin
*******************/
.mt-0 {
  margin-top: 0rem !important;
}

.mb-0 {
  margin-bottom: 0rem !important;
}

.mt-5 {
  margin-top: 0.5rem !important;
}

.mb-5 {
  margin-bottom: 0.5rem !important;
}

.mt-10 {
  margin-top: 1rem !important;
}

.mb-10 {
  margin-bottom: 1rem !important;
}

.mt-15 {
  margin-top: 1.5rem !important;
}

.mb-15 {
  margin-bottom: 1.5rem !important;
}

.mt-20 {
  margin-top: 2rem !important;
}

.mb-20 {
  margin-bottom: 2rem !important;
}

.mt-25 {
  margin-top: 2.5rem !important;
}

.mb-25 {
  margin-bottom: 2.5rem !important;
}

.mt-30 {
  margin-top: 3rem !important;
}

.mb-30 {
  margin-bottom: 3rem !important;
}

.mt-35 {
  margin-top: 3.5rem !important;
}

.mb-35 {
  margin-bottom: 3.5rem !important;
}

.mt-40 {
  margin-top: 4rem !important;
}

.mb-40 {
  margin-bottom: 4rem !important;
}

.mt-45 {
  margin-top: 4.5rem !important;
}

.mb-45 {
  margin-bottom: 4.5rem !important;
}

.mt-50 {
  margin-top: 5rem !important;
}

.mb-50 {
  margin-bottom: 5rem !important;
}

.mt-55 {
  margin-top: 5.5rem !important;
}

.mb-55 {
  margin-bottom: 5.5rem !important;
}

.mt-60 {
  margin-top: 6rem !important;
}

.mb-60 {
  margin-bottom: 6rem !important;
}

.mt-65 {
  margin-top: 6.5rem !important;
}

.mb-65 {
  margin-bottom: 6.5rem !important;
}

.mt-70 {
  margin-top: 7rem !important;
}

.mb-70 {
  margin-bottom: 7rem !important;
}

.mt-75 {
  margin-top: 7.5rem !important;
}

.mb-75 {
  margin-bottom: 7.5rem !important;
}

.mt-80 {
  margin-top: 8rem !important;
}

.mb-80 {
  margin-bottom: 8rem !important;
}

.mt-85 {
  margin-top: 8.5rem !important;
}

.mb-85 {
  margin-bottom: 8.5rem !important;
}

.mt-90 {
  margin-top: 9rem !important;
}

.mb-90 {
  margin-bottom: 9rem !important;
}

.mt-95 {
  margin-top: 9.5rem !important;
}

.mb-95 {
  margin-bottom: 9.5rem !important;
}

.mt-100 {
  margin-top: 10rem !important;
}

.mb-100 {
  margin-bottom: 10rem !important;
}

.mt-105 {
  margin-top: 10.5rem !important;
}

.mb-105 {
  margin-bottom: 10.5rem !important;
}

.mt-110 {
  margin-top: 11rem !important;
}

.mb-110 {
  margin-bottom: 11rem !important;
}

.mt-115 {
  margin-top: 11.5rem !important;
}

.mb-115 {
  margin-bottom: 11.5rem !important;
}

.mt-120 {
  margin-top: 12rem !important;
}

.mb-120 {
  margin-bottom: 12rem !important;
}

.mt-125 {
  margin-top: 12.5rem !important;
}

.mb-125 {
  margin-bottom: 12.5rem !important;
}

.mt-130 {
  margin-top: 13rem !important;
}

.mb-130 {
  margin-bottom: 13rem !important;
}

.mt-135 {
  margin-top: 13.5rem !important;
}

.mb-135 {
  margin-bottom: 13.5rem !important;
}

.mt-140 {
  margin-top: 14rem !important;
}

.mb-140 {
  margin-bottom: 14rem !important;
}

.mt-145 {
  margin-top: 14.5rem !important;
}

.mb-145 {
  margin-bottom: 14.5rem !important;
}

.mt-150 {
  margin-top: 15rem !important;
}

.mb-150 {
  margin-bottom: 15rem !important;
}

.mt-155 {
  margin-top: 15.5rem !important;
}

.mb-155 {
  margin-bottom: 15.5rem !important;
}

.mt-160 {
  margin-top: 16rem !important;
}

.mb-160 {
  margin-bottom: 16rem !important;
}

.mt-165 {
  margin-top: 16.5rem !important;
}

.mb-165 {
  margin-bottom: 16.5rem !important;
}

.mt-170 {
  margin-top: 17rem !important;
}

.mb-170 {
  margin-bottom: 17rem !important;
}

.mt-175 {
  margin-top: 17.5rem !important;
}

.mb-175 {
  margin-bottom: 17.5rem !important;
}

.mt-180 {
  margin-top: 18rem !important;
}

.mb-180 {
  margin-bottom: 18rem !important;
}

.mt-185 {
  margin-top: 18.5rem !important;
}

.mb-185 {
  margin-bottom: 18.5rem !important;
}

.mt-190 {
  margin-top: 19rem !important;
}

.mb-190 {
  margin-bottom: 19rem !important;
}

.mt-195 {
  margin-top: 19.5rem !important;
}

.mb-195 {
  margin-bottom: 19.5rem !important;
}

.mt-200 {
  margin-top: 20rem !important;
}

.mb-200 {
  margin-bottom: 20rem !important;
}

.mt-205 {
  margin-top: 20.5rem !important;
}

.mb-205 {
  margin-bottom: 20.5rem !important;
}

.mt-210 {
  margin-top: 21rem !important;
}

.mb-210 {
  margin-bottom: 21rem !important;
}

.mt-215 {
  margin-top: 21.5rem !important;
}

.mb-215 {
  margin-bottom: 21.5rem !important;
}

.mt-220 {
  margin-top: 22rem !important;
}

.mb-220 {
  margin-bottom: 22rem !important;
}

.mt-225 {
  margin-top: 22.5rem !important;
}

.mb-225 {
  margin-bottom: 22.5rem !important;
}

.mt-230 {
  margin-top: 23rem !important;
}

.mb-230 {
  margin-bottom: 23rem !important;
}

.mt-235 {
  margin-top: 23.5rem !important;
}

.mb-235 {
  margin-bottom: 23.5rem !important;
}

.mt-240 {
  margin-top: 24rem !important;
}

.mb-240 {
  margin-bottom: 24rem !important;
}

.mt-245 {
  margin-top: 24.5rem !important;
}

.mb-245 {
  margin-bottom: 24.5rem !important;
}

.mt-250 {
  margin-top: 25rem !important;
}

.mb-250 {
  margin-bottom: 25rem !important;
}

.mt-255 {
  margin-top: 25.5rem !important;
}

.mb-255 {
  margin-bottom: 25.5rem !important;
}

.mt-260 {
  margin-top: 26rem !important;
}

.mb-260 {
  margin-bottom: 26rem !important;
}

.mt-265 {
  margin-top: 26.5rem !important;
}

.mb-265 {
  margin-bottom: 26.5rem !important;
}

.mt-270 {
  margin-top: 27rem !important;
}

.mb-270 {
  margin-bottom: 27rem !important;
}

.mt-275 {
  margin-top: 27.5rem !important;
}

.mb-275 {
  margin-bottom: 27.5rem !important;
}

.mt-280 {
  margin-top: 28rem !important;
}

.mb-280 {
  margin-bottom: 28rem !important;
}

.mt-285 {
  margin-top: 28.5rem !important;
}

.mb-285 {
  margin-bottom: 28.5rem !important;
}

.mt-290 {
  margin-top: 29rem !important;
}

.mb-290 {
  margin-bottom: 29rem !important;
}

.mt-295 {
  margin-top: 29.5rem !important;
}

.mb-295 {
  margin-bottom: 29.5rem !important;
}

.mt-300 {
  margin-top: 30rem !important;
}

.mb-300 {
  margin-bottom: 30rem !important;
}

/* padding
*******************/
.pd-0 {
  padding: 0rem !important;
  box-sizing: border-box;
}

.pd-5 {
  padding: 0.5rem !important;
  box-sizing: border-box;
}

.pd-10 {
  padding: 1rem !important;
  box-sizing: border-box;
}

.pd-15 {
  padding: 1.5rem !important;
  box-sizing: border-box;
}

.pd-20 {
  padding: 2rem !important;
  box-sizing: border-box;
}

.pd-25 {
  padding: 2.5rem !important;
  box-sizing: border-box;
}

.pd-30 {
  padding: 3rem !important;
  box-sizing: border-box;
}

.pd-35 {
  padding: 3.5rem !important;
  box-sizing: border-box;
}

.pd-40 {
  padding: 4rem !important;
  box-sizing: border-box;
}

.pd-45 {
  padding: 4.5rem !important;
  box-sizing: border-box;
}

.pd-50 {
  padding: 5rem !important;
  box-sizing: border-box;
}

.pd-55 {
  padding: 5.5rem !important;
  box-sizing: border-box;
}

.pd-60 {
  padding: 6rem !important;
  box-sizing: border-box;
}

.pd-65 {
  padding: 6.5rem !important;
  box-sizing: border-box;
}

.pd-70 {
  padding: 7rem !important;
  box-sizing: border-box;
}

.pd-75 {
  padding: 7.5rem !important;
  box-sizing: border-box;
}

.pd-80 {
  padding: 8rem !important;
  box-sizing: border-box;
}

.pd-85 {
  padding: 8.5rem !important;
  box-sizing: border-box;
}

.pd-90 {
  padding: 9rem !important;
  box-sizing: border-box;
}

.pd-95 {
  padding: 9.5rem !important;
  box-sizing: border-box;
}

.pd-100 {
  padding: 10rem !important;
  box-sizing: border-box;
}

.pd-105 {
  padding: 10.5rem !important;
  box-sizing: border-box;
}

.pd-110 {
  padding: 11rem !important;
  box-sizing: border-box;
}

.pd-115 {
  padding: 11.5rem !important;
  box-sizing: border-box;
}

.pd-120 {
  padding: 12rem !important;
  box-sizing: border-box;
}

.pd-125 {
  padding: 12.5rem !important;
  box-sizing: border-box;
}

.pd-130 {
  padding: 13rem !important;
  box-sizing: border-box;
}

.pd-135 {
  padding: 13.5rem !important;
  box-sizing: border-box;
}

.pd-140 {
  padding: 14rem !important;
  box-sizing: border-box;
}

.pd-145 {
  padding: 14.5rem !important;
  box-sizing: border-box;
}

.pd-150 {
  padding: 15rem !important;
  box-sizing: border-box;
}

.ttl01 {
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1.5;
}

.ttl02 {
  font-size: 2rem;
  font-weight: 400;
  color: #E81414;
  line-height: 2;
  padding-left: 3.8rem;
  position: relative;
}
.ttl02::before {
  content: "";
  display: block;
  width: 2.7rem;
  height: .2rem;
  background-color: #E81414;
  position: absolute;
  left: 0;
  top: 2rem;
}
.ttl02 .small {
  display: block;
  font-size: 1.4rem;
  color: #656565;
  margin-top: .6rem;
}

.ttl-vertical {
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-orientation: upright;
}

.btnwrap {
  display: flex;
  align-items: center;
  justify-content: center;
  border-top: 1px solid #D2D2D2;
}
.btnwrap .btn + .btn {
  margin-left: 13rem;
}
.btnwrap.induction {
  padding-top: 7rem;
  margin-bottom: 10.5rem;
}
.btn a {
  display: flex;
  align-items: center;
  text-decoration: none;
  color: #1D2530;
  font-size: 1.4rem;
  background-color: #ffffff;
  border: 1px solid #1D2530;
  border-radius: 3rem;
  width: 29.6rem;
  height: 5.4rem;
  padding: 0 0 0 4rem;
  transition: .3s;
  position: relative;
}
.btn a::before {
  content: "";
  display: inline-block;
  width: 1px;
  height: 1.6rem;
  background-color: #E81414;
  margin-right: .6rem;
  transition: .3s;
}
.btn a::after {
  content: "";
  display: block;
  width: .7rem;
  height: 1.2rem;
  background: url("../images/common/ico-arrow-right.png") no-repeat center;
  background-size: 100%;
  position: absolute;
  right: 2rem;
  top: 50%;
  transform: translateY(-50%) translateX(0%);
  transition: .3s;
}
.btn a:hover {
  background-color: #E81414;
  border-color: #E81414;
  color: #ffffff;
}
.btn a:hover::after {
  background-image: url("../images/common/ico-arrow-right_white.png");
}
.btn a:hover::before {
  background-color: #ffffff;
}

.btn01 a {
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  color: #1D2530;
  font-size: 1.4rem;
  border: 1px solid #1D2530;
  border-radius: 3rem;
  width: 29.6rem;
  height: 5.4rem;
  transition: .3s;
  position: relative;
}
.btn01 a::after {
  content: "";
  display: block;
  width: .7rem;
  height: 1.2rem;
  background: url("../images/common/ico-arrow-right.png") no-repeat center;
  background-size: 100%;
  position: absolute;
  right: 2rem;
  top: 50%;
  transform: translateY(-50%) translateX(0%);
  transition: .3s;
}
.btn01 a:hover {
  background-color: #E81414 !important;
  border-color: #E81414;
  color: #ffffff;
}
.btn01 a:hover::after {
  background-image: url("../images/common/ico-arrow-right_white.png");
}

/* dl style
*******************/
.dl-st01 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.dl-st01 dt {
  font-size: 1.6rem;
  font-weight: 500;
  width: 20.3rem;
  padding: 2rem 2.5rem;
  line-height: 2.75;
  border-bottom: 1px solid #AAAAAA;
}
.dl-st01 dt.none {
  border-bottom: none;
}
.dl-st01 dd {
  font-size: 1.6rem;
  font-weight: 400;
  padding: 2.5rem 1rem;
  line-height: 2.125;
  width: calc(100% - 21.3rem);
  border-bottom: 1px solid #D6D6D6;
}
.dl-st01 dd a {
  font-size: 1.6rem;
  text-decoration: none;
  color: #1D2530;
}
.dl-st01 dd table th {
  font-weight: normal;
}

.following {
  display: flex;
}
.following-left {
  background-color: #F6F6FA;
  width: 25rem;
}
.following-left ul {
  position: sticky;
  top: 0;
  padding: 33rem 0 12rem;
  margin-left: 4.5rem;
  margin-right: 1rem;
}
.following-left ul li a {
  text-decoration: none;
  color: #D2D2D2;
  font-size: 1.2rem;
}
.following-left ul li a:hover {
  color: #E81414;
}
.following-left ul li.active a {
  color: #E81414;
}
.following-right {
  width: calc(100% - 25rem);
  padding-left: 1.5rem;
  padding-right: 4.5rem;
}
.following-right_inner {
  max-width: 1150px;
}

.it-st01 .ttl01 {
  margin-bottom: 6.5rem;
}
.it-st01 p {
  font-weight: 500;
  line-height: 2.0625;
  margin-bottom: 3.5rem;
  overflow: hidden;
}
.it-st01 .btn01 {
  margin-bottom: 0;
}

.l-st01 .item {
  width: calc(100% - 68rem);
}
.l-st01 .item:nth-child(1) {
  padding-right: 1.5rem;
}
.l-st01 .item:nth-child(2) {
  width: 68rem;
}
.l-st01 .item p {
  font-size: 2rem;
  line-height: 2.25;
  overflow: hidden;
}

.home .mv {
  position: relative;
  z-index: 3;
  overflow: hidden;
}
.home .mv-bg {
  padding: 14rem 0;
  overflow: hidden;
  border-bottom-right-radius: 79%;
  margin-right: -70%;
  padding-right: 70%;
}
@media screen and (min-width: 751px) and (max-width: 1850px) {
  .home .mv-bg {
    border-bottom-right-radius: 78%;
  }
}
@media screen and (min-width: 751px) and (max-width: 1742px) {
  .home .mv-bg {
    border-bottom-right-radius: 80%;
    margin-right: -80%;
    padding-right: 80%;
  }
}
@media screen and (min-width: 751px) and (max-width: 1680px) {
  .home .mv-bg {
    border-bottom-right-radius: 79%;
  }
}
@media screen and (min-width: 751px) and (max-width: 1570px) {
  .home .mv-bg {
    border-bottom-right-radius: 81%;
    margin-right: -90%;
    padding-right: 90%;
  }
}
@media screen and (min-width: 751px) and (max-width: 1500px) {
  .home .mv-bg {
    border-bottom-right-radius: 80%;
  }
}
@media screen and (min-width: 751px) and (max-width: 1430px) {
  .home .mv-bg {
    border-bottom-right-radius: 81%;
    margin-right: -100%;
    padding-right: 100%;
  }
}
@media screen and (min-width: 751px) and (max-width: 1360px) {
  .home .mv-bg {
    border-bottom-right-radius: 85%;
  }
}
@media screen and (min-width: 751px) and (max-width: 1320px) {
  .home .mv-bg {
    border-bottom-right-radius: 84%;
  }
}
@media screen and (min-width: 751px) and (max-width: 1220px) {
  .home .mv-bg {
    border-bottom-right-radius: 77.5%;
    margin-right: -80%;
    padding-right: 80%;
  }
}
@media screen and (min-width: 751px) and (max-width: 1170px) {
  .home .mv-bg {
    border-bottom-right-radius: 82%;
    margin-right: -100%;
    padding-right: 100%;
  }
}
@media screen and (min-width: 751px) and (max-width: 1110px) {
  .home .mv-bg {
    border-bottom-right-radius: 87%;
    margin-right: -130%;
    padding-right: 130%;
  }
}
@media screen and (min-width: 751px) and (max-width: 1070px) {
  .home .mv-bg {
    border-bottom-right-radius: 86%;
  }
}
@media screen and (min-width: 751px) and (max-width: 1047px) {
  .home .mv-bg {
    border-bottom-right-radius: 84.5%;
  }
}
@media screen and (min-width: 751px) and (max-width: 1018px) {
  .home .mv-bg {
    border-bottom-right-radius: 88%;
    margin-right: -150%;
    padding-right: 150%;
  }
}
@media screen and (min-width: 751px) and (max-width: 1000px) {
  .home .mv-bg {
    border-bottom-right-radius: 87%;
  }
}
@media screen and (min-width: 751px) and (max-width: 960px) {
  .home .mv-bg {
    border-bottom-right-radius: 86%;
  }
}
@media screen and (min-width: 751px) and (max-width: 901px) {
  .home .mv-bg {
    border-bottom-right-radius: 92%;
    margin-right: -200%;
    padding-right: 200%;
  }
}
@media screen and (min-width: 751px) and (max-width: 872px) {
  .home .mv-bg {
    border-bottom-right-radius: 91%;
  }
}
@media screen and (min-width: 751px) and (max-width: 808px) {
  .home .mv-bg {
    border-bottom-right-radius: 95%;
    margin-right: -240%;
    padding-right: 240%;
  }
}
.home .mv-bg-frame {
  position: relative;
}
.home .mv-bg-frame.active::after {
  opacity: 1;
}
.home .mv-bg-frame::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url("../images/top/mv-bg.svg") no-repeat center bottom;
  background-size: cover;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  transition: 1s;
  opacity: 0;
}
.home .mv + .frameline {
  margin-top: -23rem;
}
.home .mv + .frameline::before {
  background-color: #ffffff;
}
.home .mv + .frameline::after {
  background-color: transparent;
}
.home .mv .view {
  position: absolute;
  z-index: 3;
  text-align: center;
  font-size: 1.5rem;
  width: 7rem;
  left: calc(50% - 3.5rem);
  bottom: 3rem;
}
.home .mv .view a {
  display: inline-block;
  text-decoration: none;
  color: #1D2530;
  white-space: nowrap;
}
.home .mv .view a::after {
  content: "";
  display: block;
  background: url("../images/common/ico-arrow-bottom.png") no-repeat center;
  background-size: 100%;
  width: .9rem;
  height: .45rem;
  margin: 1rem auto .5rem;
}
.home .mv .lwrap1 {
  position: relative;
  z-index: 3;
}
.home .mv .ttlwrap {
  margin-bottom: 2rem;
  margin-left: -1rem;
}
.home .mv .ttlwrap h2 {
  width: 68rem;
}
.home .mv .ttlwrap .page-ttl {
  font-size: 6.4rem;
  font-weight: 500;
  display: flex;
  align-items: center;
}
.home .mv .ttlwrap .page-ttl .inline-block {
  margin: 0 1.5rem;
  line-height: 1;
}
.home .mv .ttlwrap .page-ttl .inline-block img {
  width: 11.5rem;
}
.home .mv .ttlwrap .circle {
  width: 11.3rem;
  height: 11.3rem;
  background-color: #E81414;
  color: #ffffff;
}
.home .mv .flex {
  margin-left: -4.5rem;
}
.home .mv .flex .item {
  width: 55%;
  padding: 3rem 4rem;
  border-radius: 2.3rem;
  background-color: rgba(255, 255, 255, 0.76);
}
.home .mv .flex .item:nth-child(2) {
  width: 45%;
}
.home .mv .flex .item p {
  font-size: 2rem;
  font-weight: 500;
  line-height: 2.4;
}
.home .mv .newImg {
  width: 44rem;
  position: absolute;
  right: 7rem;
  bottom: -13rem;
  z-index: -1;
}
@media screen and (min-width: 751px) and (max-width: 1240px) {
  .home .mv .newImg {
    width: 35vw;
    right: 2vw;
    bottom: -13.1rem;
  }
}
@media screen and (min-width: 751px) and (max-width: 960px) {
  .home .mv .newImg {
    bottom: -12.1rem;
  }
}
@media screen and (min-width: 751px) and (max-width: 920px) {
  .home .mv .newImg {
    bottom: -13rem;
  }
}
.home .it-st01 .ttl01 {
  font-size: 3.4rem;
  font-weight: 500;
  line-height: 1.8;
  margin-bottom: 7.5rem;
}
.home .it-st01 p {
  font-size: 2rem;
  margin-bottom: 3rem;
}
.home .movewrap {
  height: 24rem;
}
.home .movewrap .move {
  font-size: 2.6rem;
  font-family: 'karla', sans-serif;
  padding-top: 4rem;
}
.home .movewrap .move span::before {
  width: 11.6rem;
  left: inherit;
  right: -15.1rem;
  top: 2rem;
}
.home .cont01 {
  padding-top: 10rem;
  background: url("../images/top/bg01.png") no-repeat center bottom;
  background-size: 100%;
  margin-bottom: -6rem;
  position: relative;
}
.home .cont01::before {
  content: "ABOUT";
  position: absolute;
  left: 0;
  top: 0;
  font-size: 21.7rem;
  font-weight: 500;
  color: #FF6E6E;
  opacity: .03;
}
.home .cont01 + .frameline {
  background-color: #F6F6FA;
}
.home .cont01 + .frameline::before {
  background-color: #ffffff;
}
.home .cont01 .fadeIn-top {
  position: relative;
}
.home .cont01 .fadeIn-top.active .fade-in {
  animation: fade-in 1s;
  animation-fill-mode: forwards;
  animation-delay: 2s;
}
.home .cont01 .fadeIn-top .fade-in {
  position: absolute;
  right: 0;
  bottom: 20rem;
  width: 17rem;
}
.home .cont01 .it-st01 {
  justify-content: space-between;
}
.home .cont01 .it-st01 p {
  letter-spacing: -.005em;
}
.home .cont01 .it-st01 .txt {
  width: 61.2rem;
  margin-left: 6rem;
}
.home .cont01 .it-st01 .img {
  margin-top: -6rem;
  max-width: 56rem;
  width: 100%;
}
.home .cont01 .it-st01 .img img {
  width: 100%;
}
.home .cont02 {
  padding-top: 10rem;
  background: #F6F6FA url("../images/top/bg02.png") no-repeat center top;
  background-size: 100%;
  position: relative;
}
.home .cont02::before {
  content: "YORISOU";
  position: absolute;
  left: 0;
  top: 0;
  font-size: 21.7rem;
  font-weight: 500;
  color: #FF6E6E;
  opacity: .03;
}
.home .cont02 + .frameline {
  background-color: #f0f7ff;
}
.home .cont02 + .frameline::before {
  background-color: #F6F6FA;
}
.home .cont02 .imgflex {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.home .cont02 .imgflex.active .item {
  animation: fade-in 1s;
  animation-fill-mode: forwards;
}
.home .cont02 .imgflex .item {
  line-height: 0;
}
.home .cont02 .imgflex .item:nth-child(1), .home .cont02 .imgflex .item:nth-child(4) {
  width: 100%;
}
.home .cont02 .imgflex .item:nth-child(1) {
  margin-bottom: 2%;
}
.home .cont02 .imgflex .item:nth-child(2) {
  width: 57.5%;
}
.home .cont02 .imgflex .item:nth-child(3) {
  width: 40.5%;
  margin-bottom: 2%;
}
.home .cont02 .it-st01 {
  justify-content: space-between;
}
.home .cont02 .it-st01 .txt {
  width: 58.7rem;
}
.home .cont02 .it-st01 .img {
  max-width: 53.2rem;
  width: 100%;
}
.home .cont02 .it-st01 .img img {
  width: 100%;
}
.home .cont03 {
  padding-top: 10rem;
  padding-bottom: 21rem;
  background: #f0f7ff url("../images/top/bg04.jpg") no-repeat center bottom;
  background-size: 100%;
  position: relative;
}
.home .cont03::before {
  content: "SERVICE";
  position: absolute;
  left: 0;
  top: 0;
  font-size: 21.7rem;
  font-weight: 500;
  color: #FF6E6E;
  opacity: .03;
}
.home .cont03 p {
  font-size: 2rem;
}
.home .cont03 .flex {
  position: relative;
  justify-content: space-between;
}
.home .cont03 .flex.no1 {
  min-height: 568px;
}
.home .cont03 .flex .item {
  width: 47rem;
}
.home .cont03 .flex .item:nth-child(1) {
  margin-top: 20rem;
  position: relative;
  z-index: 3;
}
.home .cont03 .flex .item:nth-child(2) {
  max-width: 103rem;
  width: 100%;
  position: absolute;
  top: 0;
  right: 0;
}
.home .cont03 .flex .imgbox {
  position: relative;
}
.home .cont03 .flex .imgbox.active .fade-in {
  animation: fade-in 1s;
  animation-fill-mode: forwards;
}
.home .cont03 .flex .imgbox.active .fadeIn-top {
  animation-name: fadeIn-top;
  animation-duration: 1s;
  animation-fill-mode: forwards;
}
.home .cont03 .flex .imgbox .box.no2 {
  margin-top: 2rem;
  margin-bottom: -4rem;
}
.home .cont03 .flex .imgbox .box.no3 {
  margin-top: 5.5rem;
}
.home .cont03 .flex .imgbox .arrow {
  position: relative;
}
.home .cont03 .flex .imgbox .arrow img {
  width: 4.4rem;
}
.home .cont03 .flex .imgbox .arrow.no1 img {
  position: absolute;
  left: 38rem;
  top: 0.2rem;
}
.home .cont03 .flex .imgbox .arrow.no2 img {
  position: absolute;
  left: 61rem;
  top: -0.6rem;
}
.home .cont03 .ttl-vertical {
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1.5;
  margin: auto;
  min-height: 38rem;
}
.home .cont03 .ttl-vertical .block {
  margin: 0 0 0 1.5rem;
  width: 48px;
}
.home .cont03 .ttl-vertical .block:last-child {
  margin-left: 0;
}
.home .cont03 .ttl-vertical .bg-white {
  letter-spacing: .15em;
  padding: 1rem 0;
}
.home .cont03 .ttl-vertical .bg-white.last {
  max-height: 27rem;
  margin-left: 0;
}
.home .cont03 .img img {
  width: 100%;
}
.home .cont03 .bottom {
  max-width: 80rem;
  margin: 8rem 0 0 15rem;
}
.home .cont03 .bottom p {
  font-weight: 500;
  line-height: 2.0625;
  margin-bottom: 3rem;
}
.home .cont03 .bottom p:last-child {
  margin-bottom: 0;
}
.home .cont04 {
  padding-top: 13rem;
  position: relative;
  padding-bottom: 12rem;
}
.home .cont04::before {
  content: "VOICE";
  position: absolute;
  left: 0;
  top: 0;
  font-size: 21.7rem;
  font-weight: 500;
  color: #FF6E6E;
  opacity: .03;
}
.home .cont04 .ttl01 {
  margin-bottom: 7rem;
  margin-left: 6rem;
  display: inline-block;
}
.home .cont04 .overhidden {
  padding-bottom: 6.5rem;
}
.home .cont04 .slide-wrap {
  margin-left: 6rem;
}
.home .overhidden {
  overflow: hidden;
}
.home .bottomBtn {
  background-color: #F3F4F9;
  padding: 15rem 0 12.5rem;
  border-top-left-radius: 50%;
  border-top-right-radius: 50%;
  margin-left: -350px;
  margin-right: -350px;
  padding-left: 350px;
  padding-right: 350px;
}
.home .bottomBtn .btn01 a {
  margin: auto;
}
.home .bottomBtn .flex {
  justify-content: space-between;
}
.home .bottomBtn .flex .item {
  width: 48%;
  background-color: #ffffff;
  border-radius: 3.6rem;
  padding: 5rem 1rem;
}
.home .bottomBtn .flex .item h5 {
  font-size: 5rem;
  font-weight: 500;
  text-align: center;
  line-height: 1.3;
  margin-bottom: 4rem;
}
.home .bottomBtn .flex .item h5 .small {
  font-size: 1.6rem;
  display: block;
}

.progress-bar {
  width: calc(100% - 14rem);
  height: 0.1rem;
  margin: 8.5rem 0 0;
  background-color: #F0F0F0;
}
.progress-bar .bar {
  max-width: 100%;
  position: relative;
  bottom: 0.1rem;
  height: .3rem;
}

.slide-wrap .slick-prev, .slide-wrap .slick-next {
  top: inherit;
  bottom: -14rem;
  width: 5rem;
  height: 5rem;
}
.slide-wrap .slick-prev::before, .slide-wrap .slick-next::before {
  content: none;
}
.slide-wrap .slick-prev {
  left: inherit;
  right: 2rem;
  background: url("../images/common/ico-slide-prev_on.png") no-repeat center;
  background-size: 100%;
}
.slide-wrap .slick-prev.slick-disabled {
  background-image: url("../images/common/ico-slide-prev.png");
}
.slide-wrap .slick-next {
  right: -5rem;
  background: url("../images/common/ico-slide-next_on.png") no-repeat center;
  background-size: 100%;
}
.slide-wrap .slick-next.slick-disabled {
  background-image: url("../images/common/ico-slide-next.png");
}
.slide-wrap .slide .slick-list {
  padding: 0 24rem 0 0;
  overflow: initial;
  margin-left: -1.5rem;
}
.slide-wrap .slide-item {
  margin: 0 2rem;
  border: 1px solid #1D2530;
  border-radius: .9rem;
  background-color: #ffffff;
  padding: 4.8rem 2.5rem;
}
.slide-wrap .slide-item a {
  position: relative;
  display: block;
  text-decoration: none;
  color: #1D2530;
  overflow: hidden;
}
.slide-wrap .slide-item a img {
  width: 100%;
}
.slide-wrap .slide-item .img {
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 11rem;
  padding: 0 0 2.5rem;
}
.slide-wrap .slide-item .txt {
  width: 100%;
  border-top: 1px solid #DEDEDE;
  padding: 2.5rem 0 0;
}
.slide-wrap .slide-item .txt h4 {
  font-size: 1.4rem;
  margin-bottom: 1.5rem;
  line-height: 1.35;
}
.slide-wrap .slide-item .txt p {
  font-size: 1.4rem;
  margin-bottom: 1rem;
}
.slide-wrap .slide-item .txt .btn {
  margin-top: 3rem;
}
.slide-wrap .slide-item .txt .btn > span {
  font-size: 1.4rem;
}

body:not(.home) {
  opacity: 0;
  transition: opacity 1s;
}
body:not(.home).show {
  opacity: 1;
}
body:not(.home) .page-ttl {
  font-size: 5.5rem;
  font-weight: 400;
}
body:not(.home) .mv {
  display: flex;
  align-items: center;
  height: 24rem;
  margin-bottom: 3rem;
}

.movewrap {
  height: 18rem;
  position: relative;
}
.movewrap .move {
  color: #E81414;
  position: sticky;
  top: 0;
  left: 0;
  padding-top: 5rem;
}
.movewrap .move span {
  position: relative;
  padding-left: 2.45rem;
  margin-left: -2.45rem;
  display: inline-block;
}
.movewrap .move span::before {
  content: "";
  display: block;
  width: 1.725rem;
  height: 2px;
  background-color: #E81414;
  position: absolute;
  left: 0;
  top: 1.2rem;
}

.innerwrap {
  max-width: 68rem;
  width: 100%;
  float: right;
}
.innerwrap2 {
  max-width: 81rem;
  float: right;
}
.innerwrap2 img {
  display: block;
  margin: auto;
}
.innerwrap3 {
  max-width: 93.4rem;
  float: right;
}
.innerwrap3 img {
  display: block;
  margin: auto;
}
.innerwrap img {
  display: block;
  margin: auto;
}

.maincont .innerwrap p {
  font-size: 2rem;
  line-height: 2.25;
}
.maincont .innerwrap2 p {
  font-size: 2rem;
  line-height: 2.25;
}

/*
.page-about #contents {
  background: url("../images/about/mv.svg") no-repeat right top 3rem;
  background-size: 1180px;
}
*/
.page-about .following-right.top{
	position: relative;
	overflow: hidden;
	text-align: right;
}
.page-about .following-left ul{
    margin-top: -36.5rem;
}
.page-about .mv{
	position: relative;
	z-index: 6;
}
.page-about .following-right.top video{
	position: relative;
	right: -23rem;
	top: -40rem;
	z-index: -1;
	width: 1380px;
	margin-bottom: -40rem;
	filter: drop-shadow(0px 0px #000);
}
.page-about .maincont {
/*  margin-top: 36rem;*/
}
.page-about .cont01 .flex .item {
  width: calc(100% - 68rem);
}
.page-about .cont01 .flex .item:nth-child(1) {
  padding-right: 1.5rem;
}
.page-about .cont01 .flex .item:nth-child(2) {
  width: 68rem;
  margin-top: 4.5rem;
}
.page-about .cont01 .flex .item img {
  width: 100%;
  max-width: 36.9rem;
}
.page-about .cont01 .flex .item p {
  font-size: 2rem;
  line-height: 2.25;
}
.page-about .cont04 .innerwrap2 {
  width: 100%;
	overflow: hidden;
}
.page-about .cont04 .innerwrap2 img {
  width: 100%;
}
.page-about .cont04 .innerwrap2 video {
	width: calc(100% + 12rem);
	filter: drop-shadow(0px 0px #000);
}

.page-yorisou #contents {
  background: url("../images/yorisou/mv.svg") no-repeat right top 20rem;
  background-size: 1335px;
}
.page-yorisou .cont01 {
  margin-top: 63rem;
}
.page-yorisou .cont01 .imgCenter {
  max-width: 23.5rem;
  width: 100%;
}
.page-yorisou .cont02 .l-st01 .item img, .page-yorisou .cont03 .l-st01 .item img {
  max-width: 38.5rem;
  width: 100%;
}

.page-service .innerwrap p {
  font-size: 1.8rem;
  line-height: 2.5;
}
.page-service .cont04 .l-st01 .item img {
  max-width: 23.5rem;
  width: 100%;
}

.page-company #contents {
  position: relative;
}
.page-company #contents::after {
  content: "";
  display: block;
  width: 100%;
  max-width: 1352px;
  height: 72.8rem;
  background: url("../images/company/img01.svg") no-repeat right bottom;
  background-size: 100%;
  position: fixed;
  right: 0;
  bottom: 0;
  z-index: -1;
  pointer-events: none;
}
.page-company .movewrap {
  height: auto;
}
.page-company .movewrap .move {
  height: auto;
  padding: 0;
}
.page-company .innerwrap {
  max-width: 93.5rem;
  margin-right: 15rem;
}
.page-company .map {
  margin: 7rem 0 1rem;
}
.page-company .map iframe {
  width: 100%;
  height: 38rem;
}
.page-company .map + .alignRight a {
  text-decoration: none;
  color: #1D2530;
}
.page-company .cont03 .movewrap{
	margin-bottom: 2rem;
}
.page-company .cont03 .flex{
	column-gap: 6%;
/*	max-width: 85%;*/
}
.page-company .cont03 .item p{
	font-size: 1.6rem;
	text-align: center;
}

.list01 li {
  text-indent: -1em;
  padding-left: 1em;
  margin-bottom: 1rem;
}
.list01 li:last-child {
  margin-bottom: 0;
}

.list-num {
  list-style: none;
  counter-reset: item;
}
.list-num li {
  text-indent: -1.5em;
  padding-left: 1.5em;
  font-size: 1.8rem;
  line-height: 1.833333;
  margin-bottom: 2rem;
}
.list-num li:last-child {
  margin-bottom: 0;
}
.list-num li::before {
  counter-increment: item;
  content: counter(item) ".";
  /* 以下は自由に装飾... */
  padding-right: .8em;
}

.list-dots li {
  text-indent: -1em;
  padding-left: 1.5em;
  font-size: 1.8rem;
  line-height: 1.833333;
  margin-bottom: 2rem;
}
.list-dots li:last-child {
  margin-bottom: 0;
}
.list-dots li::before {
  content: '.';
  position: relative;
  top: -.5rem;
  padding-right: .8em;
}

.page-contact {
  /* 確認
  **************/
  /* 完了
  **************/
}
.page-contact .footer {
  background-color: #ffffff;
  position: relative;
  z-index: 1;
}
.page-contact .movewrap {
  height: auto;
}
.page-contact .movewrap .move {
  height: auto;
  padding: 0;
}
.page-contact #contents::after {
  content: "";
  display: block;
  background: url("../images/contact/img01.svg") no-repeat center;
  background-size: cover;
  width: 34.4rem;
  height: 65.7rem;
  position: fixed;
  right: -1rem;
  bottom: 0;
  z-index: 0;
  opacity: 1;
  transition: .6s;
}
.page-contact #contents.is-hidden::after {
  opacity: 0;
}
.page-contact .following {
  position: relative;
  z-index: 3;
}
.page-contact .innerwrap {
  max-width: 84.5rem;
  float: none;
  margin-left: 13.5rem;
}
@media screen and (min-width: 751px) and (max-width: 1599px) {
  .page-contact .innerwrap {
    width: auto;
    margin-left: 5rem;
    margin-right: 10rem;
    max-width: 55vw;
    min-width: 40rem;
  }
}
@media screen and (min-width: 751px) and (max-width: 1200px) {
  .page-contact .innerwrap {
    margin-left: 3rem;
    margin-right: 0;
  }
}
@media screen and (min-width: 751px) and (max-width: 900px) {
  .page-contact .innerwrap {
    max-width: inherit;
  }
}
.page-contact .privacy-box {
  background-color: #fcfcfc;
  border: 1px solid #EDEDED;
  padding: 4rem 3.5rem;
  height: 46rem;
  overflow-y: scroll;
}
.page-contact .privacy-box h4 {
  font-size: 1.8rem;
  line-height: 1.35;
  margin-bottom: 1.5rem;
}
.page-contact .privacy-box p {
  font-size: 1.4rem;
  margin-bottom: 1.5rem;
  line-height: 2.35714;
}
.page-contact .privacy-box .pad {
  margin-left: 2rem;
  text-indent: -1.3em;
  padding-left: 1em;
}
.page-contact .privacy-list li {
  display: flex;
  align-items: flex-start;
  font-size: 1.4rem;
  line-height: 2.35714;
  margin-bottom: 2rem;
}
.page-contact .privacy-list li:last-child {
  margin-bottom: 0;
}
.page-contact .privacy-list li .num {
  margin-right: 1rem;
}
.page-contact.confirm .footer small {
  padding: 1rem 0;
}
.page-contact.confirm .vb_form_cnf {
  display: flex;
  align-items: flex-start;
  margin-bottom: 1.5rem;
}
.page-contact.confirm .vb_form_cnf > span {
  font-size: 1.8rem;
  margin-right: 3rem;
  min-width: 15rem;
  line-height: 2.5;
}
.page-contact.confirm .fb_form_btn_wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 6rem;
}
.page-contact.confirm .fb_form_btn_wrapper .btn + .btn {
  margin-left: 3rem;
}
.page-contact.thanks .footer small {
  padding: 1rem 0;
}
.page-contact.thanks .fb_form_comp {
  margin-bottom: 3rem;
}
.page-contact.thanks .fb_form_comp h3 {
  font-size: 2.6rem;
  font-weight: 500;
  margin-bottom: 3rem;
}

.contact-wrap {
  /* チェックボックス01 */
}
.contact-wrap .error {
  color: #E81414;
  font-size: 1.2rem;
  margin-bottom: .6rem;
}
.contact-wrap .item {
  display: flex;
  align-items: center;
  margin-bottom: 2rem;
}
.contact-wrap .item .ttl {
  font-size: 1.6rem;
  font-weight: 500;
  width: 17.2rem;
}
.contact-wrap .item > div {
  width: calc(100% - 17.2rem);
}
.contact-wrap .item.aliTop {
  align-items: flex-start;
}
.contact-wrap .item.aliTop .ttl {
  margin-top: 1.5rem;
}
.contact-wrap input, .contact-wrap textarea {
  font-size: 1.6rem;
  width: 100% !important;
  border: 1px solid #B5B5B5;
  padding: 1.5rem;
  background-color: #ffffff;
	line-height: 1.65;
}
.contact-wrap select {
  min-height: 5.5rem;
  font-size: 1.6rem;
  width: 100% !important;
  padding: 1.5rem;
  color: #1D2530;
}
.contact-wrap textarea {
  min-height: 27rem;
}
.contact-wrap #submit {
  border: 1px solid #1D2530;
  background-color: #ffffff;
  border-radius: 6rem;
  padding: 1.9rem 0;
  width: 29rem;
  font-size: 1.4rem;
  font-weight: 500;
  margin: 3rem auto 0;
  display: block;
  position: relative;
}
.contact-wrap #submit:disabled {
  border-color: #B5B5B5;
  color: #B5B5B5;
}
.contact-wrap #submit:disabled::after {
  background-image: url("../images/common/ico-arrow-right_gray.png");
}
.contact-wrap #submit::after {
  content: "";
  display: block;
  width: .4rem;
  height: .8rem;
  background: url("../images/common/ico-arrow-right.png") no-repeat center;
  background-size: 100%;
  position: absolute;
  right: 3.5rem;
  top: 50%;
  transform: translateY(-50%) translateX(0%);
}
.contact-wrap #submit-wrap {
  text-align: center;
  margin: 4.5rem 0 3rem;
}
.contact-wrap .selectbox {
  position: relative;
  z-index: 1;
  border: 1px solid #B5B5B5;
  background-color: #ffffff;
}
.contact-wrap .selectbox::after {
  position: absolute;
  content: '';
  width: 8px;
  height: 8px;
  right: 3rem;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  border-bottom: 2px solid #1D2530;
  border-right: 2px solid #1D2530;
  z-index: -1;
}
.contact-wrap p.alignCenter {
  color: #848484;
}
.contact-wrap input[type=checkbox] {
  display: none;
}
.contact-wrap .checkbox01 {
  box-sizing: border-box;
  cursor: pointer;
  display: inline-block;
  padding: 5px 30px;
  position: relative;
  width: auto;
  font-size: 16px;
  color: #848484;
}
.contact-wrap .checkbox01 a {
  font-size: 16px;
  color: #848484;
}
.contact-wrap .checkbox01::before {
  background: #fff;
  border: 1px solid #707070;
  content: '';
  display: block;
  height: 16px;
  left: 0;
  margin-top: -8px;
  position: absolute;
  top: 50%;
  width: 16px;
  border-radius: 3px;
}
.contact-wrap .checkbox01::after {
  border-right: 2px solid #707070;
  border-bottom: 2px solid #707070;
  content: '';
  display: block;
  height: 9px;
  left: 6px;
  margin-top: -7px;
  opacity: 0;
  position: absolute;
  top: calc(50% + 1px);
  transform: rotate(45deg);
  width: 5px;
}
.contact-wrap input[type=checkbox]:checked + .checkbox01::after {
  opacity: 1;
}

.page-privacypolicy .movewrap {
  height: auto;
}
.page-privacypolicy .movewrap .move {
  padding: 0;
  height: auto;
}
.page-privacypolicy .innerwrap3.border-bottom {
  padding-bottom: 6.5rem;
  border-bottom: 1px solid #D6D6D6;
}
.page-privacypolicy .innerwrap3 h3 {
  font-size: 2.2rem;
  font-weight: 500;
  margin-bottom: 1.5rem;
}
.page-privacypolicy .innerwrap3 p.alignRight {
  font-size: 1.4rem;
  line-height: 1.7857;
  margin-top: 5rem;
}
.page-privacypolicy .innerwrap3 p.alignRight a {
  font-size: 1.4rem;
  text-decoration: none;
  color: #1D2530;
}
.page-privacypolicy .btn01 {
  margin-top: 2.5rem;
  margin-bottom: 12rem;
}

.page-voice {
  background-color: #F6F6FA;
}
.page-voice .mv {
  height: auto !important;
  margin: 7rem 0 14rem;
}
.page-voice .mv .txtwrap {
  background-color: #ffffff;
  padding: 6.5rem 6rem 7rem;
  width: 67rem;
  margin-top: 13rem;
  margin-left: 8rem;
  position: relative;
  z-index: 3;
}
.page-voice .mv .txtwrap .page-ttl {
  font-size: 3.2rem;
  line-height: 1.5;
  padding-bottom: 3.5rem;
  margin-bottom: 3.5rem;
  position: relative;
}
.page-voice .mv .txtwrap .page-ttl::after {
  content: "";
  display: block;
  width: 6.7rem;
  height: .2rem;
  background-color: #E81414;
  position: absolute;
  left: 0;
  bottom: 0;
}
.page-voice .mv .txtwrap .name {
  font-size: 2rem;
}
.page-voice .mv .vol {
  font-size: 3rem;
  margin-bottom: 4rem;
}
.page-voice .mv .lwrap2 {
  position: relative;
}
.page-voice .mv .img {
  position: absolute;
  right: 0;
  top: 0;
}
.page-voice .mv .img img {
  width: 100%;
}
.page-voice .cont01 .lwrap1 > .alignCenter {
  margin-bottom: 40rem;
}
.page-voice .cont01 .lwrap1 > .alignCenter > .inline-block {
  max-width: 107.5rem;
  text-align: left;
}
.page-voice .cont01 .lwrap1 > .alignCenter > .inline-block p {
  font-size: 1.8rem;
  line-height: 2.5;
}
.page-voice .postcont > .bg-white {
  padding: 6rem 6.5rem;
}
.page-voice .postcont > .bg-white > p {
  margin-bottom: 11rem;
}
.page-voice .postcont .topcont {
  margin-bottom: 14rem;
  position: relative;
}
.page-voice .postcont .topcont-ttl {
  font-size: 3.2rem;
  font-weight: 400;
  line-height: 1.5;
  margin-bottom: 2.5rem;
}
.page-voice .postcont .topcont-name {
  font-size: 1.8rem;
  line-height: 1.35;
}
.page-voice .postcont .topcont .img {
  width: 63.6rem;
  position: absolute;
  top: -30rem;
  left: -21.5rem;
}
.page-voice .postcont .topcont .img img {
  width: 100%;
}
.page-voice .postcont .topcont .tag {
  display: inline-block;
  position: absolute;
  top: -7.5rem;
  left: 43.5%;
  font-size: 1.8rem;
  line-height: 1.8;
  padding: .2rem 1rem;
}
.page-voice .postcont .topcont .txt {
  width: 53.5%;
}
.page-voice .postcont .topcont .txt.w100 {
  width: 100%;
  float: none;
}
.page-voice .postcont .topcont .txt.w100 .tag {
  position: static;
  margin-bottom: 1rem;
}
.page-voice .postcont .ttl02 {
  margin-bottom: 3rem;
}
.page-voice .postcont p {
  font-size: 1.8rem;
  line-height: 2.222;
}
.page-voice .postcont p .small {
  font-size: 1.6rem;
}
.page-voice .postcont .border-name {
  font-size: 1.4rem;
  position: relative;
  padding-top: 2rem;
  margin-top: 2rem;
}
.page-voice .postcont .border-name::before {
  content: "";
  width: 6rem;
  height: .1rem;
  background-color: #1D2530;
  position: absolute;
  left: 0;
  top: 0;
}
.page-voice .postcont .imgbox {
  margin-bottom: 12rem;
  position: relative;
}
.page-voice .postcont .imgbox .txt {
  background-color: #F6F6F6;
  padding: 6rem 4rem 5rem;
  width: 69.5rem;
}
.page-voice .postcont .imgbox .txt-inner {
  border-top: 0.2rem solid #E81414;
  max-width: 52.3rem;
  padding: 3.5rem 2.5rem 0;
}
.page-voice .postcont .imgbox .txt p {
  font-size: 1.6rem;
}
.page-voice .postcont .imgbox .img {
  position: absolute;
  right: 0;
  top: -3rem;
}
.page-voice .postcont .imgbox.imgLeft {
  display: flex;
  justify-content: flex-end;
}
.page-voice .postcont .imgbox.imgLeft .txt {
  padding: 6rem 4rem 5rem;
}
.page-voice .postcont .imgbox.imgLeft .txt-inner {
  margin-left: auto;
}
.page-voice .postcont .imgbox.imgLeft .img {
  right: inherit;
  left: 0;
}
.page-voice .postcont .imgbox.bd-none .txt-inner {
  padding-top: 0;
  border-top: none;
}
.page-voice .postcont .imgbox1 {
  margin-bottom: 12rem;
  position: relative;
}
.page-voice .postcont .imgbox1 .img {
  text-align: right;
  position: relative;
  z-index: 3;
}
.page-voice .postcont .imgbox1 .img img {
  max-width: 47rem;
  height: auto;
}
.page-voice .postcont .imgbox1 .txt {
  padding: 6rem 7rem;
  background-color: #F6F6F6;
  width: 100%;
  position: absolute;
  top: 3rem;
  left: 0;
  z-index: 1;
}
.page-voice .postcont .imgbox1 .txt-inner {
  max-width: 47rem;
}
.page-voice .postcont .imgbox1 .txt h4 {
  color: #E81414;
  font-size: 1.6rem;
  font-weight: 500;
  margin-bottom: 3rem;
}
.page-voice .postcont .imgbox1 .txt p {
  font-size: 1.6rem;
  line-height: 2.5;
}
.page-voice .postcont .imgbox1.imgLeft .img {
  text-align: left;
}
.page-voice .postcont .imgbox1.imgLeft .txt-inner {
  margin-left: auto;
}
.page-voice .postcont .txtbox1 {
  margin-bottom: 6rem;
}
.page-voice .postcont .txtbox1 .txt {
  padding: 6rem 7rem;
  background-color: #F6F6F6;
  width: 100%;
}
.page-voice .postcont .txtbox1 .txt h4 {
  color: #E81414;
  font-size: 1.6rem;
  font-weight: 500;
  margin-bottom: 3rem;
}
.page-voice .postcont-summary {
  border: 1px solid #E81414;
  border-radius: 1.5rem;
  padding: 3.5rem 5rem 3rem;
}
.page-voice .postcont-summary-ttl {
  text-align: center;
  font-size: 2.4rem;
  font-weight: 400;
  color: #E81414;
  margin-bottom: 1rem;
}
.page-voice .postcont-summary p {
  line-height: 2;
}
.page-voice .cont02 {
  margin: 15rem 0 12rem;
}
.page-voice .remark {
  border: 1px solid #E81414;
  border-radius: .9rem;
  background-color: #ffffff;
  padding: 7rem 4.5rem;
}
.page-voice .remark h3 {
  text-align: center;
  font-size: 2.6rem;
  font-weight: 400;
  color: #E81414;
  margin-bottom: 7rem;
}
.page-voice .remark h3 + p.alignCenter {
  font-size: 1.8rem;
  font-weight: 500;
}
.page-voice .remark h4 {
  font-size: 3.2rem;
  font-weight: 400;
  border-bottom: 1px solid #E81414;
  margin-bottom: 7rem;
  padding: 0 2rem 1.5rem;
}
.page-voice .remark .flex {
  margin: 0 2rem;
  justify-content: space-between;
}
.page-voice .remark .flex .img {
  width: 39.7rem;
}
.page-voice .remark .flex .txt {
  width: calc(100% - 46.7rem);
}
.page-voice .remark .flex .txt p {
  font-size: 1.8rem;
  line-height: 2.2222;
  margin-bottom: 3.5rem;
}
.page-voice .remark .flex .txt p:last-child {
  margin-bottom: 0;
}
.page-voice .bottomBtn .btnwrap {
  padding: 7rem 0 12rem;
}
.page-voice .bottomBtn .btnwrap .btn a {
  width: 38.3rem;
  justify-content: center;
  padding: 0;
  background-color: transparent;
}
.page-voice .bottomBtn .btnwrap .btn a::before {
  position: absolute;
  left: 4rem;
}
.page-voice .bottomBtn .btnwrap .btn a:hover {
  background-color: #E81414;
}
.page-voice .achievement {
  max-width: 90.4rem;
  margin: 12rem auto 0;
  background-color: #ffffff;
}
.page-voice .achievement-inner {
  padding: 3.5rem 6rem;
  justify-content: space-between;
}
.page-voice .achievement-inner .item:nth-child(1) {
  width: 40%;
}
.page-voice .achievement-inner .item:nth-child(2) {
  width: 50%;
}
.page-voice .achievement-inner .item p {
  font-size: 1.5rem;
  line-height: 1.8;
}
.page-voice .achievement-inner .item p a {
  text-decoration: none;
  color: #1D2530;
  line-height: 1.8;
}
.page-voice .achievement-inner .ttl {
  font-size: 2.5rem;
  font-weight: 400;
  padding-bottom: 2.5rem;
  margin-bottom: 2.5rem;
  position: relative;
}
.page-voice .achievement-inner .ttl::after {
  content: "";
  width: 3.7rem;
  height: .2rem;
  background-color: #E81414;
  position: absolute;
  left: 0;
  bottom: 0;
}

.frameline {
  overflow: hidden;
  position: relative;
  z-index: -1;
}
.frameline::before {
  content: "";
  display: block;
  background: #F6F6FA;
  border-bottom-left-radius: 50%;
  border-bottom-right-radius: 50%;
  width: 100%;
  height: 240px;
  margin-left: -100px;
  margin-right: -100px;
  padding-left: 100px;
  padding-right: 100px;
  position: absolute;
  bottom: 1.2rem;
  left: 0;
  right: 0;
}
.frameline::after {
  content: "";
  display: block;
  width: 100%;
  background: #E81414;
  border-bottom-left-radius: 50%;
  border-bottom-right-radius: 50%;
  height: 240px;
  margin-left: -100px;
  margin-right: -100px;
  padding-left: 100px;
  padding-right: 100px;
}
.frameline.green::after {
  background-color: #0CAFB8;
}
.frameline.yellow::after {
  background-color: #F5BB21;
}

.framebg {
  overflow: hidden;
  position: relative;
  z-index: 0;
}
.framebg::after {
  content: "";
  display: block;
  width: 100%;
  background: #E2EFFF;
  border-bottom-left-radius: 50%;
  border-bottom-right-radius: 50%;
  height: 200px;
  margin-left: -100px;
  margin-right: -100px;
  padding-left: 100px;
  padding-right: 100px;
}

_::-webkit-full-page-media, _:future, :root .home .cont03 .ttl-vertical .bg-white .pos {
  position: relative;
  left: -1.5rem;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .home .cont03 .ttl-vertical .bg-white .pos {
    position: relative;
    left: -1.5rem;
  }
}
@-moz-document url-prefix() {
  .home .cont03 .ttl-vertical .bg-white {
    padding: 1rem;
  }
}
@media screen and (min-width: 751px) {
  .page-service .movewrap {
    height: 15rem;
  }
}
@media screen and (min-width: 751px) and (max-width: 1630px) {
  .page-yorisou #contents {
    background-size: 82vw;
  }
}
@media screen and (min-width: 751px) and (max-width: 1575px) {
  .home .movewrap {
    height: 31rem;
  }
  .home .movewrap .move {
    padding-top: 12rem;
  }
  .home .cont01 {
    padding-top: 3rem;
  }
  .home .cont02 {
    padding-top: 3rem;
  }
  .home .cont03 {
    padding-top: 3rem;
  }
  .home .cont04 {
    padding-top: 5rem;
  }
}
@media screen and (max-width: 1530px) {
  .page-voice .mv .lwrap2 {
    width: 100%;
    margin: 0;
    padding: 0 1.5rem;
  }
  .page-voice .mv .img {
    right: 1.5rem;
  }
  .page-voice .mv .txtwrap {
    margin-left: 0;
  }
}
@media screen and (min-width: 751px) and (max-width: 1700px) {
	.page-about .following-right.top{
		height: 64rem;
	}
	.page-about .following-right.top video{
		position: static;
		margin: -39rem -23rem 0 0;
	}
}
@media screen and (min-width: 751px) and (max-width: 1480px) {
  .page-voice .mv .img {
    width: 56vw;
  }
  .page-voice .mv .txtwrap {
    width: 45vw;
    padding: 4.5vw 4vw 5vw;
  }
  .page-voice .mv .txtwrap .page-ttl {
    font-size: 2.1vw;
    padding-bottom: 2.45vw;
    margin-bottom: 2.45vw;
  }
  .page-voice .mv .txtwrap .name {
    font-size: 1.35vw;
  }
  .page-voice .mv .vol {
    font-size: 2vw;
    margin-bottom: 2.8vw;
  }

  .page-company .innerwrap {
    margin-right: 0;
  }

/*
  .page-about #contents {
    background-size: 80.2vw;
  }
*/

  .page-yorisou #contents {
    background-size: 80vw;
  }
/*
	.page-about .following-right.top video{
		width: 94vw;
		top: -8.5vw;
		right: -16rem;
	}
*/
	
}
@media screen and (min-width: 751px) and (max-width: 1370px) {
  .slide-wrap .slick-prev {
    right: 7rem;
  }
  .slide-wrap .slick-next {
    right: 0;
  }
  .slide-wrap .slide .slick-list {
    padding: 0 19vw 0 0;
  }

  .progress-bar {
    width: calc(100% - 16rem);
  }
}
@media screen and (min-width: 751px) and (max-width: 1360px) {
  .home .mv .flex {
    margin-left: 0;
  }
  .home .mv .flex .item p {
    font-size: 1.6rem;
  }
  .home .mv .flex .item p .dot-text::before {
    background-size: 1.6rem;
  }

/*
  .page-about #contents {
    background-size: 78vw;
  }
*/

  .page-yorisou #contents {
    background-size: 78vw;
  }
}
@media screen and (min-width: 751px) and (max-width: 1280px) {
  .btnwrap.induction .btn + .btn {
    margin-left: 3rem;
  }

  .page-about .cont01 .flex {
    flex-wrap: wrap;
    max-width: 67rem;
    width: 100%;
    float: right;
  }
  .page-about .cont01 .flex .item:nth-child(1) {
    width: 100%;
  }
  .page-about .cont01 .flex .item:nth-child(2) {
    width: 100%;
  }

  .page-yorisou #contents {
    background-size: 76vw;
  }
}
@media screen and (min-width: 751px) and (max-width: 1240px) {
  .frameline::before, .frameline::after {
    height: 200px;
  }

  .home .mv .ttlwrap {
    margin-left: 0;
  }
  .home .mv .flex {
    margin-left: 0;
    justify-content: space-between;
  }
  .home .mv .flex .item {
    padding: 1.5rem 0 0.5rem 1.5rem;
  }
  .home .mv .flex .item:nth-child(1) {
    width: 55%;
  }
  .home .mv .flex .item:nth-child(2) {
    width: 40%;
  }
  .home .mv + .frameline {
    margin-top: -19rem;
  }
  .home .cont01::before {
    font-size: 15rem;
  }
  .home .cont02::before {
    font-size: 15rem;
  }
  .home .cont03::before {
    font-size: 15rem;
  }
  .home .cont03 .flex .item:nth-child(1) {
    width: 38%;
  }
  .home .cont03 .flex .item:nth-child(2) {
    width: 88%;
  }
  .home .cont03 .flex .imgbox .box.no2 {
    margin-top: 1.6vw;
    margin-bottom: -3.2vw;
  }
  .home .cont03 .flex .imgbox .arrow img {
    width: 3.6vw;
  }
  .home .cont03 .flex .imgbox .arrow.no1 img {
    left: 30.6vw;
  }
  .home .cont03 .flex .imgbox .arrow.no2 img {
    left: 49.5vw;
  }
  .home .cont04::before {
    font-size: 15rem;
  }
  .home .cont04 .ttl01 {
    margin-left: 0;
  }
  .home .cont04 .slide-wrap {
    margin-left: 0;
  }

  .slide-wrap .slide-item {
    margin: 0 .75rem;
    padding: 3rem 1.5rem;
  }
}
@media screen and (max-width: 1280px) {
  .l-st01 {
    flex-wrap: wrap;
    max-width: 67rem;
    width: 100%;
    float: right;
  }
  .l-st01 .item:nth-child(1) {
    width: 100%;
    padding-right: 0;
    margin-bottom: 4.5rem;
  }
  .l-st01 .item:nth-child(2) {
    width: 100%;
  }
}
@media screen and (max-width: 1240px) {
  .bottomBtn .btnwrap .btn + .btn {
    margin-left: 6rem;
  }

  .page-voice .postcont .topcont .img {
    width: 50vw;
    left: -12vw;
    top: -20vw;
  }
  .page-voice .postcont .topcont .txt {
    width: 42vw;
  }
  .page-voice .postcont .topcont-ttl {
    font-size: 2.3vw;
  }
  .page-voice .postcont .topcont-name {
    font-size: 1.4vw;
  }
  .page-voice .postcont .topcont .tag {
    font-size: 1.44vw;
    padding: 0.2vw 1vw;
    top: -6.5vw;
  }
  .page-voice .postcont > .bg-white {
    padding: 5vw 5.2vw;
  }
  .page-voice .postcont .imgbox .img {
    width: 38vw;
    top: -2.5vw;
  }
  .page-voice .postcont .imgbox .txt {
    width: 57vw;
  }
  .page-voice .postcont .imgbox .txt-inner {
    width: 84%;
  }
  .page-voice .postcont .imgbox1 .img img {
    width: 36vw;
  }
  .page-voice .postcont .imgbox1 .txt {
    padding: 4.8vw 5.6vw;
    top: 2.5vw;
  }
  .page-voice .postcont .imgbox1 .txt-inner {
    width: 37vw;
  }
  .page-voice .btnwrap .btn + .btn {
    margin-left: 6rem;
  }
}
@media screen and (min-width: 751px) and (max-width: 1130px) {
  .home .cont03 .bottom {
    margin-left: 0;
  }

  .home .cont01 .fadeIn-top .fade-in {
    bottom: 18vw;
    width: 15.1vw;
  }

  .page-yorisou #contents {
    background-size: 74vw;
  }
}
@media screen and (min-width: 751px) and (max-width: 1060px) {
  .following-left ul {
    margin-left: 3.5rem;
  }
  .following-right {
    padding-right: 3.5rem;
  }

  .home .mv + .frameline {
    margin-top: -24vw;
  }
  .home .mv + .frameline::before, .home .mv + .frameline::after {
    height: 25vw;
    margin-left: -8.5vw;
    margin-right: -8.5vw;
    padding-left: 8.5vw;
    padding-right: 8.5vw;
  }
  .home .cont01 .it-st01 {
    justify-content: space-between;
  }
  .home .cont01 .it-st01 .txt {
    margin-left: 0;
    width: 60%;
  }
  .home .cont01 .it-st01 .img {
    width: 35%;
  }
  .home .cont01 .fadeIn-top .fade-in {
    bottom: 12vw;
    width: 10.1vw;
  }
  .home .cont02 .it-st01 {
    justify-content: space-between;
  }
  .home .cont02 .it-st01 .txt {
    margin-left: 0;
    width: 55%;
  }
  .home .cont02 .it-st01 .img {
    width: 40%;
  }
  .home .cont03 .flex .imgbox .arrow img {
    width: 4.2vw;
  }

/*
  .page-about #contents {
    background-size: 72vw;
    background-position: right top 10rem;
  }
*/
	
/*
	.page-about .following-right.top video{
		width: 84vw;
		top: 1vw;
		right: -12rem;
	}
*/

  .page-yorisou #contents {
    background-size: 72vw;
  }
}
@media screen and (min-width: 751px) and (max-width: 960px) {
  .home .mv .ttlwrap {
    margin-left: 0;
  }
  .home .mv .ttlwrap h2 img {
    width: 67.5vw;
  }
  .home .mv .ttlwrap .page-ttl {
    font-size: 6.4vw;
  }
  .home .mv .ttlwrap .page-ttl .inline-block {
    margin: 0 3vw;
  }
  .home .mv .ttlwrap .page-ttl .inline-block img {
    width: 12vw;
  }
  .home .mv .ttlwrap .circle {
    width: 11.5vw;
    height: 11.5vw;
  }

  .btnwrap.induction {
    flex-wrap: wrap;
  }
  .btnwrap.induction .btn {
    width: 100%;
  }
  .btnwrap.induction .btn a {
    margin: auto;
  }
  .btnwrap.induction .btn + .btn {
    margin-left: 0;
    margin-top: 3rem;
  }

  .page-yorisou #contents {
    background-size: 70vw;
  }
}
@media screen and (max-width: 1060px) {
/*
	.page-company .cont03 .flex{
		column-gap: 6rem;
		max-width: 100%;
	}
*/
}
@media screen and (max-width: 960px) {
  .page-voice .bottomBtn .btnwrap .btn a {
    width: 30rem;
  }
  .page-voice .bottomBtn .btnwrap .btn a::before {
    left: 2rem;
  }
}
/*******************
スマホ
******************/
@media screen and (max-width: 750px) {
  _::-webkit-full-page-media, _:future, :root .home .cont03 .ttl-vertical .bg-white .pos {
    position: relative;
    left: -2.5rem;
  }
}
@media screen and (max-width: 750px) and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .home .cont03 .ttl-vertical .bg-white .pos {
    position: relative;
    left: -2.5rem;
  }
}
@media screen and (max-width: 750px) {
  @-moz-document url-prefix() {}
  .sp-mt-0 {
    margin-top: 0rem !important;
  }

  .sp-mb-0 {
    margin-bottom: 0rem !important;
  }

  .sp-mt-5 {
    margin-top: 0.5rem !important;
  }

  .sp-mb-5 {
    margin-bottom: 0.5rem !important;
  }

  .sp-mt-10 {
    margin-top: 1rem !important;
  }

  .sp-mb-10 {
    margin-bottom: 1rem !important;
  }

  .sp-mt-15 {
    margin-top: 1.5rem !important;
  }

  .sp-mb-15 {
    margin-bottom: 1.5rem !important;
  }

  .sp-mt-20 {
    margin-top: 2rem !important;
  }

  .sp-mb-20 {
    margin-bottom: 2rem !important;
  }

  .sp-mt-25 {
    margin-top: 2.5rem !important;
  }

  .sp-mb-25 {
    margin-bottom: 2.5rem !important;
  }

  .sp-mt-30 {
    margin-top: 3rem !important;
  }

  .sp-mb-30 {
    margin-bottom: 3rem !important;
  }

  .sp-mt-35 {
    margin-top: 3.5rem !important;
  }

  .sp-mb-35 {
    margin-bottom: 3.5rem !important;
  }

  .sp-mt-40 {
    margin-top: 4rem !important;
  }

  .sp-mb-40 {
    margin-bottom: 4rem !important;
  }

  .sp-mt-45 {
    margin-top: 4.5rem !important;
  }

  .sp-mb-45 {
    margin-bottom: 4.5rem !important;
  }

  .sp-mt-50 {
    margin-top: 5rem !important;
  }

  .sp-mb-50 {
    margin-bottom: 5rem !important;
  }

  .sp-mt-55 {
    margin-top: 5.5rem !important;
  }

  .sp-mb-55 {
    margin-bottom: 5.5rem !important;
  }

  .sp-mt-60 {
    margin-top: 6rem !important;
  }

  .sp-mb-60 {
    margin-bottom: 6rem !important;
  }

  .sp-mt-65 {
    margin-top: 6.5rem !important;
  }

  .sp-mb-65 {
    margin-bottom: 6.5rem !important;
  }

  .sp-mt-70 {
    margin-top: 7rem !important;
  }

  .sp-mb-70 {
    margin-bottom: 7rem !important;
  }

  .sp-mt-75 {
    margin-top: 7.5rem !important;
  }

  .sp-mb-75 {
    margin-bottom: 7.5rem !important;
  }

  .sp-mt-80 {
    margin-top: 8rem !important;
  }

  .sp-mb-80 {
    margin-bottom: 8rem !important;
  }

  .sp-mt-85 {
    margin-top: 8.5rem !important;
  }

  .sp-mb-85 {
    margin-bottom: 8.5rem !important;
  }

  .sp-mt-90 {
    margin-top: 9rem !important;
  }

  .sp-mb-90 {
    margin-bottom: 9rem !important;
  }

  .sp-mt-95 {
    margin-top: 9.5rem !important;
  }

  .sp-mb-95 {
    margin-bottom: 9.5rem !important;
  }

  .sp-mt-100 {
    margin-top: 10rem !important;
  }

  .sp-mb-100 {
    margin-bottom: 10rem !important;
  }

  .sp-mt-105 {
    margin-top: 10.5rem !important;
  }

  .sp-mb-105 {
    margin-bottom: 10.5rem !important;
  }

  .sp-mt-110 {
    margin-top: 11rem !important;
  }

  .sp-mb-110 {
    margin-bottom: 11rem !important;
  }

  .sp-mt-115 {
    margin-top: 11.5rem !important;
  }

  .sp-mb-115 {
    margin-bottom: 11.5rem !important;
  }

  .sp-mt-120 {
    margin-top: 12rem !important;
  }

  .sp-mb-120 {
    margin-bottom: 12rem !important;
  }

  .sp-mt-125 {
    margin-top: 12.5rem !important;
  }

  .sp-mb-125 {
    margin-bottom: 12.5rem !important;
  }

  .sp-mt-130 {
    margin-top: 13rem !important;
  }

  .sp-mb-130 {
    margin-bottom: 13rem !important;
  }

  .sp-mt-135 {
    margin-top: 13.5rem !important;
  }

  .sp-mb-135 {
    margin-bottom: 13.5rem !important;
  }

  .sp-mt-140 {
    margin-top: 14rem !important;
  }

  .sp-mb-140 {
    margin-bottom: 14rem !important;
  }

  .sp-mt-145 {
    margin-top: 14.5rem !important;
  }

  .sp-mb-145 {
    margin-bottom: 14.5rem !important;
  }

  .sp-mt-150 {
    margin-top: 15rem !important;
  }

  .sp-mb-150 {
    margin-bottom: 15rem !important;
  }

  .sp-mt-155 {
    margin-top: 15.5rem !important;
  }

  .sp-mb-155 {
    margin-bottom: 15.5rem !important;
  }

  .sp-mt-160 {
    margin-top: 16rem !important;
  }

  .sp-mb-160 {
    margin-bottom: 16rem !important;
  }

  .sp-mt-165 {
    margin-top: 16.5rem !important;
  }

  .sp-mb-165 {
    margin-bottom: 16.5rem !important;
  }

  .sp-mt-170 {
    margin-top: 17rem !important;
  }

  .sp-mb-170 {
    margin-bottom: 17rem !important;
  }

  .sp-mt-175 {
    margin-top: 17.5rem !important;
  }

  .sp-mb-175 {
    margin-bottom: 17.5rem !important;
  }

  .sp-mt-180 {
    margin-top: 18rem !important;
  }

  .sp-mb-180 {
    margin-bottom: 18rem !important;
  }

  .sp-mt-185 {
    margin-top: 18.5rem !important;
  }

  .sp-mb-185 {
    margin-bottom: 18.5rem !important;
  }

  .sp-mt-190 {
    margin-top: 19rem !important;
  }

  .sp-mb-190 {
    margin-bottom: 19rem !important;
  }

  .sp-mt-195 {
    margin-top: 19.5rem !important;
  }

  .sp-mb-195 {
    margin-bottom: 19.5rem !important;
  }

  .sp-mt-200 {
    margin-top: 20rem !important;
  }

  .sp-mb-200 {
    margin-bottom: 20rem !important;
  }

  .sp-mt-205 {
    margin-top: 20.5rem !important;
  }

  .sp-mb-205 {
    margin-bottom: 20.5rem !important;
  }

  .sp-mt-210 {
    margin-top: 21rem !important;
  }

  .sp-mb-210 {
    margin-bottom: 21rem !important;
  }

  .sp-mt-215 {
    margin-top: 21.5rem !important;
  }

  .sp-mb-215 {
    margin-bottom: 21.5rem !important;
  }

  .sp-mt-220 {
    margin-top: 22rem !important;
  }

  .sp-mb-220 {
    margin-bottom: 22rem !important;
  }

  .sp-mt-225 {
    margin-top: 22.5rem !important;
  }

  .sp-mb-225 {
    margin-bottom: 22.5rem !important;
  }

  .sp-mt-230 {
    margin-top: 23rem !important;
  }

  .sp-mb-230 {
    margin-bottom: 23rem !important;
  }

  .sp-mt-235 {
    margin-top: 23.5rem !important;
  }

  .sp-mb-235 {
    margin-bottom: 23.5rem !important;
  }

  .sp-mt-240 {
    margin-top: 24rem !important;
  }

  .sp-mb-240 {
    margin-bottom: 24rem !important;
  }

  .sp-mt-245 {
    margin-top: 24.5rem !important;
  }

  .sp-mb-245 {
    margin-bottom: 24.5rem !important;
  }

  .sp-mt-250 {
    margin-top: 25rem !important;
  }

  .sp-mb-250 {
    margin-bottom: 25rem !important;
  }

  .sp-mt-255 {
    margin-top: 25.5rem !important;
  }

  .sp-mb-255 {
    margin-bottom: 25.5rem !important;
  }

  .sp-mt-260 {
    margin-top: 26rem !important;
  }

  .sp-mb-260 {
    margin-bottom: 26rem !important;
  }

  .sp-mt-265 {
    margin-top: 26.5rem !important;
  }

  .sp-mb-265 {
    margin-bottom: 26.5rem !important;
  }

  .sp-mt-270 {
    margin-top: 27rem !important;
  }

  .sp-mb-270 {
    margin-bottom: 27rem !important;
  }

  .sp-mt-275 {
    margin-top: 27.5rem !important;
  }

  .sp-mb-275 {
    margin-bottom: 27.5rem !important;
  }

  .sp-mt-280 {
    margin-top: 28rem !important;
  }

  .sp-mb-280 {
    margin-bottom: 28rem !important;
  }

  .sp-mt-285 {
    margin-top: 28.5rem !important;
  }

  .sp-mb-285 {
    margin-bottom: 28.5rem !important;
  }

  .sp-mt-290 {
    margin-top: 29rem !important;
  }

  .sp-mb-290 {
    margin-bottom: 29rem !important;
  }

  .sp-mt-295 {
    margin-top: 29.5rem !important;
  }

  .sp-mb-295 {
    margin-bottom: 29.5rem !important;
  }

  .sp-mt-300 {
    margin-top: 30rem !important;
  }

  .sp-mb-300 {
    margin-bottom: 30rem !important;
  }

  .sp-mt-305 {
    margin-top: 30.5rem !important;
  }

  .sp-mb-305 {
    margin-bottom: 30.5rem !important;
  }

  .sp-mt-310 {
    margin-top: 31rem !important;
  }

  .sp-mb-310 {
    margin-bottom: 31rem !important;
  }

  .sp-mt-315 {
    margin-top: 31.5rem !important;
  }

  .sp-mb-315 {
    margin-bottom: 31.5rem !important;
  }

  .sp-mt-320 {
    margin-top: 32rem !important;
  }

  .sp-mb-320 {
    margin-bottom: 32rem !important;
  }

  .sp-mt-325 {
    margin-top: 32.5rem !important;
  }

  .sp-mb-325 {
    margin-bottom: 32.5rem !important;
  }

  .sp-mt-330 {
    margin-top: 33rem !important;
  }

  .sp-mb-330 {
    margin-bottom: 33rem !important;
  }

  .sp-mt-335 {
    margin-top: 33.5rem !important;
  }

  .sp-mb-335 {
    margin-bottom: 33.5rem !important;
  }

  .sp-mt-340 {
    margin-top: 34rem !important;
  }

  .sp-mb-340 {
    margin-bottom: 34rem !important;
  }

  .sp-mt-345 {
    margin-top: 34.5rem !important;
  }

  .sp-mb-345 {
    margin-bottom: 34.5rem !important;
  }

  .sp-mt-350 {
    margin-top: 35rem !important;
  }

  .sp-mb-350 {
    margin-bottom: 35rem !important;
  }

  .sp-mt-355 {
    margin-top: 35.5rem !important;
  }

  .sp-mb-355 {
    margin-bottom: 35.5rem !important;
  }

  .sp-mt-360 {
    margin-top: 36rem !important;
  }

  .sp-mb-360 {
    margin-bottom: 36rem !important;
  }

  .sp-mt-365 {
    margin-top: 36.5rem !important;
  }

  .sp-mb-365 {
    margin-bottom: 36.5rem !important;
  }

  .sp-mt-370 {
    margin-top: 37rem !important;
  }

  .sp-mb-370 {
    margin-bottom: 37rem !important;
  }

  .sp-mt-375 {
    margin-top: 37.5rem !important;
  }

  .sp-mb-375 {
    margin-bottom: 37.5rem !important;
  }

  .sp-mt-380 {
    margin-top: 38rem !important;
  }

  .sp-mb-380 {
    margin-bottom: 38rem !important;
  }

  .sp-mt-385 {
    margin-top: 38.5rem !important;
  }

  .sp-mb-385 {
    margin-bottom: 38.5rem !important;
  }

  .sp-mt-390 {
    margin-top: 39rem !important;
  }

  .sp-mb-390 {
    margin-bottom: 39rem !important;
  }

  .sp-mt-395 {
    margin-top: 39.5rem !important;
  }

  .sp-mb-395 {
    margin-bottom: 39.5rem !important;
  }

  .sp-mt-400 {
    margin-top: 40rem !important;
  }

  .sp-mb-400 {
    margin-bottom: 40rem !important;
  }

  .sp-mt-405 {
    margin-top: 40.5rem !important;
  }

  .sp-mb-405 {
    margin-bottom: 40.5rem !important;
  }

  .sp-mt-410 {
    margin-top: 41rem !important;
  }

  .sp-mb-410 {
    margin-bottom: 41rem !important;
  }

  .sp-mt-415 {
    margin-top: 41.5rem !important;
  }

  .sp-mb-415 {
    margin-bottom: 41.5rem !important;
  }

  .sp-mt-420 {
    margin-top: 42rem !important;
  }

  .sp-mb-420 {
    margin-bottom: 42rem !important;
  }

  .sp-mt-425 {
    margin-top: 42.5rem !important;
  }

  .sp-mb-425 {
    margin-bottom: 42.5rem !important;
  }

  .sp-mt-430 {
    margin-top: 43rem !important;
  }

  .sp-mb-430 {
    margin-bottom: 43rem !important;
  }

  .sp-mt-435 {
    margin-top: 43.5rem !important;
  }

  .sp-mb-435 {
    margin-bottom: 43.5rem !important;
  }

  .sp-mt-440 {
    margin-top: 44rem !important;
  }

  .sp-mb-440 {
    margin-bottom: 44rem !important;
  }

  .sp-mt-445 {
    margin-top: 44.5rem !important;
  }

  .sp-mb-445 {
    margin-bottom: 44.5rem !important;
  }

  .sp-mt-450 {
    margin-top: 45rem !important;
  }

  .sp-mb-450 {
    margin-bottom: 45rem !important;
  }

  .sp-mt-455 {
    margin-top: 45.5rem !important;
  }

  .sp-mb-455 {
    margin-bottom: 45.5rem !important;
  }

  .sp-mt-460 {
    margin-top: 46rem !important;
  }

  .sp-mb-460 {
    margin-bottom: 46rem !important;
  }

  .sp-mt-465 {
    margin-top: 46.5rem !important;
  }

  .sp-mb-465 {
    margin-bottom: 46.5rem !important;
  }

  .sp-mt-470 {
    margin-top: 47rem !important;
  }

  .sp-mb-470 {
    margin-bottom: 47rem !important;
  }

  .sp-mt-475 {
    margin-top: 47.5rem !important;
  }

  .sp-mb-475 {
    margin-bottom: 47.5rem !important;
  }

  .sp-mt-480 {
    margin-top: 48rem !important;
  }

  .sp-mb-480 {
    margin-bottom: 48rem !important;
  }

  .sp-mt-485 {
    margin-top: 48.5rem !important;
  }

  .sp-mb-485 {
    margin-bottom: 48.5rem !important;
  }

  .sp-mt-490 {
    margin-top: 49rem !important;
  }

  .sp-mb-490 {
    margin-bottom: 49rem !important;
  }

  .sp-mt-495 {
    margin-top: 49.5rem !important;
  }

  .sp-mb-495 {
    margin-bottom: 49.5rem !important;
  }

  .sp-mt-500 {
    margin-top: 50rem !important;
  }

  .sp-mb-500 {
    margin-bottom: 50rem !important;
  }

  .sp-pdt-0 {
    padding-top: 0rem !important;
  }

  .sp-pdb-0 {
    padding-bottom: 0rem !important;
  }

  .sp-pdt-5 {
    padding-top: 0.5rem !important;
  }

  .sp-pdb-5 {
    padding-bottom: 0.5rem !important;
  }

  .sp-pdt-10 {
    padding-top: 1rem !important;
  }

  .sp-pdb-10 {
    padding-bottom: 1rem !important;
  }

  .sp-pdt-15 {
    padding-top: 1.5rem !important;
  }

  .sp-pdb-15 {
    padding-bottom: 1.5rem !important;
  }

  .sp-pdt-20 {
    padding-top: 2rem !important;
  }

  .sp-pdb-20 {
    padding-bottom: 2rem !important;
  }

  .sp-pdt-25 {
    padding-top: 2.5rem !important;
  }

  .sp-pdb-25 {
    padding-bottom: 2.5rem !important;
  }

  .sp-pdt-30 {
    padding-top: 3rem !important;
  }

  .sp-pdb-30 {
    padding-bottom: 3rem !important;
  }

  .sp-pdt-35 {
    padding-top: 3.5rem !important;
  }

  .sp-pdb-35 {
    padding-bottom: 3.5rem !important;
  }

  .sp-pdt-40 {
    padding-top: 4rem !important;
  }

  .sp-pdb-40 {
    padding-bottom: 4rem !important;
  }

  .sp-pdt-45 {
    padding-top: 4.5rem !important;
  }

  .sp-pdb-45 {
    padding-bottom: 4.5rem !important;
  }

  .sp-pdt-50 {
    padding-top: 5rem !important;
  }

  .sp-pdb-50 {
    padding-bottom: 5rem !important;
  }

  .sp-pdt-55 {
    padding-top: 5.5rem !important;
  }

  .sp-pdb-55 {
    padding-bottom: 5.5rem !important;
  }

  .sp-pdt-60 {
    padding-top: 6rem !important;
  }

  .sp-pdb-60 {
    padding-bottom: 6rem !important;
  }

  .sp-pdt-65 {
    padding-top: 6.5rem !important;
  }

  .sp-pdb-65 {
    padding-bottom: 6.5rem !important;
  }

  .sp-pdt-70 {
    padding-top: 7rem !important;
  }

  .sp-pdb-70 {
    padding-bottom: 7rem !important;
  }

  .sp-pdt-75 {
    padding-top: 7.5rem !important;
  }

  .sp-pdb-75 {
    padding-bottom: 7.5rem !important;
  }

  .sp-pdt-80 {
    padding-top: 8rem !important;
  }

  .sp-pdb-80 {
    padding-bottom: 8rem !important;
  }

  .sp-pdt-85 {
    padding-top: 8.5rem !important;
  }

  .sp-pdb-85 {
    padding-bottom: 8.5rem !important;
  }

  .sp-pdt-90 {
    padding-top: 9rem !important;
  }

  .sp-pdb-90 {
    padding-bottom: 9rem !important;
  }

  .sp-pdt-95 {
    padding-top: 9.5rem !important;
  }

  .sp-pdb-95 {
    padding-bottom: 9.5rem !important;
  }

  .sp-pdt-100 {
    padding-top: 10rem !important;
  }

  .sp-pdb-100 {
    padding-bottom: 10rem !important;
  }

  .progress-bar {
    width: 47.5rem;
    height: .3rem;
    margin: 12.5rem 0 0;
  }
  .progress-bar .bar {
    height: 0.4rem;
    bottom: .15rem;
  }

  #contents {
    margin: 0 3.5rem;
  }

  .following-left {
    background-color: transparent;
    width: 0;
  }
  .following-left ul {
    margin: 0;
    padding: 0;
    display: none;
  }
  .following-right {
    width: 100%;
    padding: 0;
  }

  .movewrap {
    height: 40rem;
  }
  .movewrap .move {
    font-size: 3rem;
    padding-top: 20rem;
    padding-bottom: 3rem;
  }
  .movewrap .move span {
    padding-left: 3rem;
    margin-left: 0;
  }
  .movewrap .move span::before {
    width: 2.27rem;
    height: .2rem;
    top: 2.6rem;
  }

  .anchorLink {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 1;
  }
  .anchorLink .sp-txt {
    border-top: 0.2rem solid #E81414;
    background-color: #F6F6FA;
    line-height: 1;
    padding: 3rem 3.5rem 3rem 5.5rem;
    margin-bottom: -0.2rem;
    position: relative;
  }
  .anchorLink .sp-txt::before {
    content: "";
    display: inline-block;
    width: .2rem;
    height: 4.6rem;
    background-color: #E81414;
    position: absolute;
    left: 3rem;
    top: 50%;
    transform: translateY(-50%) translateX(0%);
  }
  .anchorLink .sp-txt::after {
    content: "";
    width: 2.4rem;
    height: 1.3rem;
    background: url("../images/common/ico-arrow-top_red.png") no-repeat center;
    background-size: 100%;
    position: absolute;
    right: 3.5rem;
    top: 3.8rem;
    transition: .5s;
  }
  .anchorLink .sp-txt.active::after {
    transform: rotate(180deg);
    top: 4rem;
  }
  .anchorLink ul {
    display: none;
    background-color: #F6F6FA;
    padding: 0 5.5rem 6rem;
  }
  .anchorLink ul li {
    margin-bottom: 3rem;
  }
  .anchorLink ul li:last-child {
    margin-bottom: 0;
  }
  .anchorLink ul li a {
    font-size: 2.8rem;
    display: block;
    position: relative;
  }
  .anchorLink ul li.active a::before {
    content: "";
    display: inline-block;
    width: .2rem;
    height: 3rem;
    background-color: #E81414;
    position: absolute;
    left: -1.5rem;
    top: 55%;
    transform: translateY(-50%) translateX(0%);
  }

  .ttl01 {
    font-size: 4.4rem;
    line-height: 1.7045;
  }

  .ttl02 {
    font-size: 2.8rem;
  }
  .ttl02::before {
    top: 2.8rem;
  }
  .ttl02 .small {
    font-size: 2.2rem;
  }

  .btnwrap .btn + .btn {
    margin-left: 0;
    margin-top: 3rem;
  }
  .btnwrap.induction {
    padding-top: 12rem;
    margin-bottom: 20rem;
    flex-wrap: wrap;
  }

  .btn {
    width: 100%;
  }
  .btn a {
    font-size: 2.6rem;
    width: 100%;
    height: 10rem;
    justify-content: center;
    padding: 0;
    border-radius: 5rem;
  }
  .btn a::before {
    width: .2rem;
    height: 3.6rem;
    position: absolute;
    left: 9.5rem;
    top: 50%;
    transform: translateY(-50%) translateX(0%);
    margin-right: 0;
  }
  .btn a::after {
    width: 0.9rem;
    height: 1.8rem;
    right: 5rem;
  }
  .btn.sp-arrow-left a::before {
    left: inherit;
    right: 5.2rem;
  }
  .btn.sp-arrow-left a::after {
    right: inherit;
    left: 5.2rem;
    transform: rotate(180deg) translateY(50%) translateX(0%);
  }

  .btn01 a {
    width: 100%;
    height: 9.9rem;
    font-size: 2.6rem;
    border-radius: 6rem;
  }
  .btn01 a::after {
    width: 0.9rem;
    height: 1.8rem;
    right: 5rem;
  }

  /* dl style
  *******************/
  .dl-st01 dt {
    font-size: 2.8rem;
    line-height: 1.95;
    width: 20rem;
    padding: 4rem 1rem;
  }
  .dl-st01 dd {
    font-size: 2.8rem;
    line-height: 1.714285;
    width: calc(100% - 21rem);
    padding: 4rem 2rem;
  }
  .dl-st01 dd a {
    font-size: 2.8rem;
  }

  .it-st01 {
    flex-wrap: wrap;
  }
  .it-st01 .txt {
    width: 100%;
    order: 2;
  }
  .it-st01 .img {
    width: 100%;
    text-align: center;
  }
  .it-st01 .ttl01 {
    font-size: 5rem;
    line-height: 1.68;
    margin-bottom: 12rem;
  }
  .it-st01 p {
    font-size: 3.2rem;
    line-height: 1.9375;
    margin-bottom: 6.5rem;
  }

  .l-st01 .item:nth-child(1) {
    padding-right: 0;
    margin-bottom: 10rem;
  }
  .l-st01 .item p {
    font-size: 2.8rem;
    line-height: 2.5;
  }

  .home #contents {
    margin: 0;
  }
  .home .mv {
    margin: 14.5rem 0 0;
  }
  .home .mv + .frameline {
    margin-top: -22rem;
  }
  .home .mv + .frameline::before, .home .mv + .frameline::after {
    height: 26rem;
  }
  .home .mv .lwrap1 {
    margin-bottom: 0;
  }
  .home .mv-bg {
    padding-bottom: 0;
    border-radius: 0;
  }
  .home .mv-bg::after {
    width: 450rem;
    right: -112.5rem;
  }
  .home .mv-bg.active::after {
    border-radius: 0 0 30% 0%;
    right: -450rem;
  }
  .home .mv-bg-frame {
    padding-bottom: 3.5rem;
  }
  .home .mv-bg-frame::after {
    background-image: url("../images/top/sp-mv.svg");
  }
  .home .mv .ttlwrap {
    margin-left: 0;
    margin-bottom: 7rem;
  }
  .home .mv .ttlwrap h2 {
    width: 65rem;
    margin-bottom: 1.5rem;
  }
  .home .mv .ttlwrap .page-ttl {
    flex-wrap: wrap;
  }
  .home .mv .ttlwrap .page-ttl img:nth-child(2) {
	width: 52.3rem;
	margin-bottom: 3rem;
	margin-top: 1rem;
  }
  .home .mv .ttlwrap .page-ttl img:nth-child(3) {
    width: 51.3rem;
  }
  .home .mv .newImg {
    position: static;
    width: 48rem;
    margin-left: 9rem;
    margin-top: 3rem;
  }
  .home .mv .view {
    display: none;
    font-size: 2.6rem;
  }
  .home .mv .view::after {
    width: 1.8rem;
    height: 0.9rem;
    margin: 1.5rem auto 1rem;
  }
  .home .mv .flex {
    flex-wrap: wrap;
    margin-left: 0;
  }
  .home .mv .flex .item {
    width: 100%;
  }
  .home .mv .flex .item:nth-child(1) {
    width: 100%;
    padding: 3rem;
  }
  .home .mv .flex .item:nth-child(2) {
    width: 100%;
    margin-top: 0;
    margin-bottom: 26rem;
  }
  .home .mv .flex .item:nth-child(2) img {
    width: 52rem;
  }
  .home .mv .flex .item p {
    font-size: 3rem;
    line-height: 2.466666;
  }
  .home .movewrap {
    height: 40rem;
  }
  .home .movewrap .move {
    font-size: 3.4rem;
    padding-top: 20rem;
  }
  .home .movewrap .move span {
    padding-left: 0;
  }
  .home .movewrap .move span::before {
    right: -14.6rem;
  }
  .home .it-st01 .ttl01 {
    font-size: 4.8rem;
    line-height: 1.4;
    margin-bottom: 10rem;
  }
  .home .it-st01 p {
    font-size: 2.8rem;
    line-height: 2.214;
    margin-bottom: 6rem;
  }
  .home .cont01 {
    background-image: url("../images/top/sp-bg01.png");
    background-position: center bottom;
    z-index: 3;
    padding-bottom: 25rem;
    margin-bottom: -15rem;
    padding-top: 5.5rem;
  }
  .home .cont01::before {
    font-size: 15rem;
    top: 18rem;
  }
  .home .cont01 .it-st01 .img {
    width: 100%;
    margin-bottom: 12.5rem;
    margin-top: 0;
    text-align: center;
    max-width: inherit;
  }
  .home .cont01 .it-st01 .img img {
    width: 100%;
    margin-right: -4rem;
  }
  .home .cont01 .it-st01 .txt {
    width: 100%;
    margin-left: 0;
  }
  .home .cont01 .fadeIn-top .fade-in {
    bottom: 25rem;
    width: 20rem;
  }
  .home .cont01 .fadeIn-top .fade-in img {
    margin-right: 0;
  }
  .home .cont01 .btn01 a {
    background-color: #ffffff;
  }
  .home .cont02 {
    background-image: url("../images/top/sp-bg02.png");
    background-position: center top 40rem;
    padding-top: 6rem;
    padding-bottom: 10rem;
  }
  .home .cont02::before {
    font-size: 15rem;
    top: 18rem;
  }
  .home .cont02 .it-st01 .txt {
    width: 100%;
  }
  .home .cont02 .it-st01 .img {
    max-width: 100%;
    margin-bottom: 7rem;
  }
  .home .cont02 + .frameline {
    background-color: #e2efff;
  }
  .home .cont03 {
    padding-top: 6rem;
    padding-bottom: 50rem;
    background-color: transparent;
    background-image: url("../images/top/sp-bg03.png");
    background-position: center bottom;
  }
  .home .cont03::before {
    font-size: 15rem;
    top: 18rem;
    color: #ffffff;
    opacity: .17;
  }
  .home .cont03 .ttl-vertical .block {
    width: inherit;
  }
  .home .cont03 .ttl-vertical .bg-white {
    background-color: #ffffff !important;
  }
  .home .cont03 .img {
    max-width: 100%;
    margin-bottom: 7rem;
  }
  .home .cont03 .img img {
    width: 100%;
  }
  .home .cont03 .flex {
    flex-wrap: wrap;
  }
  .home .cont03 .flex.no1 {
    min-height: inherit;
  }
  .home .cont03 .flex .item {
    width: 50%;
  }
  .home .cont03 .flex .item:nth-child(1) {
    margin-bottom: 9rem;
    margin-top: 0;
  }
  .home .cont03 .flex .item:nth-child(2) {
    position: static;
    width: 50%;
  }
  .home .cont03 .flex .item:nth-child(2) p {
    max-width: 100%;
    margin-bottom: 8rem;
  }
  .home .cont03 .flex .item:nth-child(2) p.btn01 {
    margin-bottom: 0;
  }
  .home .cont03 .flex .imgbox .box.no1 {
    margin-bottom: 2rem;
  }
  .home .cont03 .flex .imgbox .box.no2 {
    margin-top: -0.5rem;
    margin-bottom: 0;
  }
  .home .cont03 .flex .imgbox .box.no3 {
    margin-top: 1.5rem;
  }
  .home .cont03 .flex .imgbox .arrow {
    text-align: center;
  }
  .home .cont03 .flex .imgbox .arrow img {
    width: 4rem;
    position: static !important;
    margin: auto;
  }
  .home .cont03 .flex .imgbox .arrow.no1 img {
    left: 38rem;
    top: 0.2rem;
  }
  .home .cont03 .flex .imgbox .arrow.no2 img {
    left: 61rem;
    top: -0.6rem;
  }
  .home .cont03 .ttl-vertical {
    font-size: 5.2rem;
    font-weight: 500;
    margin: 0;
    letter-spacing: .22em;
  }
  .home .cont03 .ttl-vertical .bg-white {
    padding: 3rem 1rem .5rem;
    margin: 0 0 0 2rem;
  }
  .home .cont03 .bottom {
    margin: 0;
  }
  .home .cont03 p {
    font-size: 2.8rem;
    line-height: 2.214;
  }
  .home .cont03 p .dot-text.fs20::before {
    background-size: 2.8rem;
  }
  .home .cont04 {
    padding-top: 5rem;
    padding-bottom: 29rem;
  }
  .home .cont04::before {
    top: 10rem;
  }
  .home .cont04 .movewrap {
    height: 40rem;
  }
  .home .cont04 .overhidden {
    padding-bottom: 10.5rem;
  }
  .home .cont04 .ttl01 {
    font-size: 4.8rem;
    margin-bottom: 20.5rem;
    margin-left: 0;
  }
  .home .cont04 .slide-wrap {
    margin-left: 0;
  }
  .home .bottomBtn {
    margin-left: -50rem;
    margin-right: -50rem;
    padding-left: 50rem;
    padding-right: 50rem;
    padding-bottom: 21rem;
    padding-top: 25.5rem;
  }
  .home .bottomBtn .btn01 a {
    max-width: 44.7rem;
    height: 8.9rem;
  }
  .home .bottomBtn .flex {
    flex-wrap: wrap;
  }
  .home .bottomBtn .flex .item {
    width: 100%;
    padding: 6.5rem 1rem 6.5rem;
  }
  .home .bottomBtn .flex .item:nth-child(1) {
    margin-bottom: 7rem;
  }
  .home .bottomBtn .flex .item h5 {
    font-size: 6.8rem;
    margin-bottom: 6rem;
  }
  .home .bottomBtn .flex .item h5 .small {
    font-size: 2.6rem;
  }

  .slide-wrap .slick-prev, .slide-wrap .slick-next {
    width: 7rem;
    height: 7rem;
    bottom: -19.5rem;
  }
  .slide-wrap .slick-prev {
    right: 9.5rem;
  }
  .slide-wrap .slick-next {
    right: 0;
  }
  .slide-wrap .slide-item {
    margin: 0 1.75rem;
    padding: 5rem 3.2rem 7rem;
  }
  .slide-wrap .slide-item .img {
    height: 26rem;
  }
  .slide-wrap .slide-item .txt {
    padding: 3.8rem 0 0;
  }
  .slide-wrap .slide-item .txt h4 {
    font-size: 2.6rem;
    margin-bottom: 2rem;
  }
  .slide-wrap .slide-item .txt p {
    font-size: 2.6rem;
  }
  .slide-wrap .slide .slick-list {
    padding: 0 18rem 0 0;
  }

  body:not(.home) .mv {
    height: 73rem;
  }
  body:not(.home) .page-ttl {
    font-size: 6rem;
  }

  .innerwrap2 {
    max-width: inherit;
    float: none;
  }

  .sp-letter {
    letter-spacing: -1em;
  }

  .sp-parrent {
    overflow: scroll;
  }

  .maincont .innerwrap p {
    font-size: 2.8rem;
    overflow: hidden;
  }
  .maincont .innerwrap2 p {
    font-size: 2.8rem;
  }

  .bottomBtn .btnwrap {
    flex-wrap: wrap;
    padding: 16rem 0 20rem;
    border: none;
  }
  .bottomBtn .btnwrap .btn a {
    width: 100%;
  }
  .bottomBtn .btnwrap .btn a::before {
    left: 9rem;
  }
  .bottomBtn .btnwrap .btn.sp-arrow-left a::before {
    left: inherit;
    right: 9rem;
  }
  .bottomBtn .btnwrap .btn + .btn {
    margin-left: 0;
  }
	
	.page-about .following-left ul{
		margin-top: 0;
	}
	
  .page-about #contents {
    background: none;
	  width: auto;
	  margin: 0;
  }
	.page-about #contents > .following.no2{
		margin: 0 3.5rem;
	}
	.page-about .following-right.top video{
		width: 120rem;
		right: 6rem;
		top: -15rem;
		margin-bottom: -15rem;
	}
  .page-about .mv {
    height: 45.5rem !important;
    align-items: flex-end !important;
	margin-left: 3.5rem;
	  margin-right: 3.5rem;
  }
  .page-about .mv .page-ttl {
    margin-bottom: 6rem;
  }
  .page-about .mv + img.sp {
    margin-right: -3rem;
    width: 71rem;
    max-width: inherit;
  }
  .page-about .maincont {
/*    margin-top: 15rem;*/
  }
  .page-about .cont01 .ttl01 {
    letter-spacing: -.03em;
  }
  .page-about .cont01 .flex {
    flex-wrap: wrap;
  }
  .page-about .cont01 .flex .item {
    width: 100%;
  }
  .page-about .cont01 .flex .item img {
    max-width: 54rem;
  }
  .page-about .cont01 .flex .item p {
    font-size: 2.8rem;
  }
  .page-about .cont01 .flex .item:nth-child(1) {
    margin-bottom: 10rem;
    text-align: center;
    margin-right: 0;
    padding-right: 0;
  }
  .page-about .cont01 .flex .item:nth-child(1) img {
    width: 100%;
  }
  .page-about .cont01 .flex .item:nth-child(2) {
    width: 100%;
  }
  .page-about .cont02 img {
    width: 100%;
  }
  .page-about .cont02 .sp-parrent {
    margin-right: -3.5rem;
    padding-right: 3.5rem;
  }
  .page-about .cont02 .sp-parrent img {
    width: 95rem;
    max-width: inherit;
  }
	.page-about .cont03 .movewrap{
		height: 35rem;
	}
	.page-about .cont03 .movewrap .move{
		padding-top: 15rem;
	}
  .page-about .cont04 .sp-parrent {
    margin-right: -3.5rem;
    padding-right: 3.5rem;
  }
  .page-about .cont04 .sp-parrent img {
    width: 149rem;
    max-width: inherit;
  }

  .page-service .cont04 .l-st01 .item img {
    max-width: inherit;
    width: 42rem;
  }

  .page-yorisou #contents {
    background: none;
  }
  .page-yorisou .mv {
    height: 45.5rem !important;
    align-items: flex-end !important;
  }
  .page-yorisou .mv .page-ttl {
    margin-bottom: 6rem;
  }
  .page-yorisou .mv + img.sp {
    margin-right: -3rem;
    width: 71rem;
    max-width: inherit;
  }
  .page-yorisou .cont01 {
    margin-top: 0;
  }
  .page-yorisou .cont01 .l-st01 .item:nth-child(1) img {
    width: 42rem;
    max-width: inherit;
  }
  .page-yorisou .cont02 .l-st01 .item:nth-child(1) img, .page-yorisou .cont03 .l-st01 .item:nth-child(1) img {
    width: 100%;
    max-width: inherit;
  }

  .page-company #contents::after {
    background-image: url("../images/company/sp-img01.svg");
    bottom: 9rem;
  }
  .page-company .innerwrap {
    margin-right: 0;
  }
  .page-company .mv {
    margin-bottom: -20rem;
  }
  .page-company .map {
    margin: 5rem 0 3rem;
  }
	.page-company .cont03 .movewrap{
		margin-bottom: 4rem;
	}
	.page-company .cont03 .flex{
		column-gap: 3rem;
		max-width: 100%;
	}
	.page-company .cont03 .item p{
		font-size: 2.6rem;
	}

  .list01 li {
    margin-bottom: 3rem;
  }

  .list-num li {
    font-size: 2.6rem;
    margin-bottom: 2.5rem;
  }

  .list-dots li {
    font-size: 2.6rem;
    margin-bottom: 2.5rem;
  }

  .page-privacypolicy .innerwrap3 h3 {
    font-size: 2.8rem;
    line-height: 1.35;
    margin-bottom: 3rem;
  }
  .page-privacypolicy .innerwrap3 p.alignRight {
    font-size: 2.6rem;
    margin-top: 6rem;
  }
  .page-privacypolicy .innerwrap3 p.alignRight a {
    font-size: 2.6rem;
  }
  .page-privacypolicy .innerwrap3.border-bottom {
    padding-bottom: 12rem;
  }
  .page-privacypolicy .btn01 {
    margin-top: 6rem;
  }

  .page-contact {
    /* 確認
    **************/
    /* 完了
    **************/
  }
  .page-contact #contents::after {
    width: 40.2rem;
    height: 76.9rem;
    right: -8rem;
  }
  .page-contact .move {
    height: auto;
  }
  .page-contact .movewrap {
    height: auto;
  }
  .page-contact .innerwrap {
    margin-left: 0;
  }
  .page-contact .privacy-box {
    padding: 4.5rem 2rem;
  }
  .page-contact .privacy-box h4 {
    font-size: 2.8rem;
    margin-bottom: 3rem;
  }
  .page-contact .privacy-box p {
    font-size: 2.8rem;
    margin-bottom: 7rem;
  }
  .page-contact .privacy-box .pad {
    margin-left: 4rem;
  }
  .page-contact .privacy-list li {
    font-size: 2.8rem;
    margin-bottom: 3rem;
  }
  .page-contact.thanks .innerwrap .ttl01 {
    font-size: 3.8rem;
  }
  .page-contact.confirm .footer small {
    padding: 1.5rem 0;
  }
  .page-contact.confirm .vb_form_cnf {
    flex-wrap: wrap;
    margin-bottom: 3rem;
  }
  .page-contact.confirm .vb_form_cnf > span {
    font-size: 2.6rem;
    margin-right: 0;
    margin-bottom: 2rem;
    width: 100%;
  }
  .page-contact.confirm .vb_form_cnf p {
    width: 100%;
  }
  .page-contact.confirm .fb_form_btn_wrapper {
    display: flex;
    flex-wrap: wrap;
    margin-top: 9rem;
  }
  .page-contact.confirm .fb_form_btn_wrapper .btn {
    order: 2;
  }
  .page-contact.confirm .fb_form_btn_wrapper .btn + .btn {
    order: 1;
    margin: 0 0 5rem 0;
  }
  .page-contact.thanks .footer small {
    padding: 1.5rem 0;
  }
  .page-contact.thanks .fb_form_comp {
    margin-bottom: 6rem;
  }
  .page-contact.thanks .fb_form_comp h3 {
    font-size: 3.2rem;
    margin-bottom: 6rem;
  }

  .contact-wrap .error {
    font-size: 2.2rem;
    margin-bottom: 1.2rem;
  }
  .contact-wrap .item {
    display: block;
    margin-bottom: 2rem;
  }
  .contact-wrap .item .ttl {
    font-size: 2.8rem;
    width: 100%;
    margin-bottom: .6rem;
  }
  .contact-wrap .item > div {
    width: 100%;
  }
  .contact-wrap input, .contact-wrap textarea {
    font-size: 2.8rem;
  }
  .contact-wrap textarea {
    min-height: 48rem;
  }
  .contact-wrap select {
    min-height: 7.1rem;
    font-size: 2.8rem;
  }
  .contact-wrap .checkbox01 {
    font-size: 2.8rem;
    line-height: 2;
    text-align: left;
    padding: 0 6rem;
  }
  .contact-wrap .checkbox01::before {
    width: 2.8rem;
    height: 2.8rem;
    margin-top: -.8rem;
    border-radius: .3rem;
  }
  .contact-wrap .checkbox01::after {
    width: 1rem;
    height: 1.8rem;
    left: 1.2rem;
    margin-top: -1.1rem;
  }
  .contact-wrap .checkbox01 a {
    font-size: 2.8rem;
  }
  .contact-wrap .selectbox::after {
    width: .8rem;
    height: .8rem;
    border-bottom-width: .2rem;
    border-right-width: .2rem;
  }
  .contact-wrap #submit {
    font-size: 2.6rem;
    color: #1D2530;
    width: 100%;
    margin: 6rem auto 3rem;
    padding: 3.6rem 0;
    -webkit-appearance: none;
  }
  .contact-wrap #submit::after {
    width: .89rem;
    height: 1.7rem;
    right: 5rem;
  }
  .contact-wrap p.alignCenter {
    font-size: 2.4rem;
  }

  div#mfp_overlay_inner {
    padding: 3rem;
  }
  div#mfp_overlay_inner h4 {
    font-size: 2.8rem;
    margin: 0 0 3rem;
  }

  table#mfp_confirm_table tr th, table#mfp_confirm_table tr td {
    font-size: 2.8rem;
    display: block;
    width: 100%;
  }

  table#mfp_confirm_table tr th {
    background-color: #f8f8f8;
  }
  table#mfp_confirm_table tr td {
    background-color: #ffffff;
  }

  div.mfp_buttons {
    padding: 6rem 0 0;
  }

  div.mfp_buttons button#mfp_button_send {
    font-size: 2.8rem;
  }

  div.mfp_buttons button#mfp_button_cancel {
    font-size: 2.8rem;
  }

  .page-voice #contents {
    margin: 0;
  }
  .page-voice .mv {
    margin: 29rem 0 10.7rem;
  }
  .page-voice .mv .vol {
    font-size: 3.2rem;
    margin-bottom: 3rem;
  }
  .page-voice .mv .lwrap2 {
    width: auto;
    padding: 0;
    margin: 0 3.5rem;
  }
  .page-voice .mv .txtwrap {
    width: 100%;
    margin-top: 49rem;
    padding: 7rem 3.5rem;
  }
  .page-voice .mv .txtwrap .page-ttl {
    font-size: 4.4rem;
    line-height: 1.4545;
    padding-bottom: 4.5rem;
    margin-bottom: 4.5rem;
  }
  .page-voice .mv .txtwrap .page-ttl::after {
    width: 10.1rem;
    height: 0.2rem;
  }
  .page-voice .mv .txtwrap .name {
    font-size: 2.8rem;
    font-weight: 500;
  }
  .page-voice .mv .img {
    width: 75rem;
    right: -3.5rem;
  }
  .page-voice .cont01 .lwrap1 > .alignCenter {
    margin-bottom: 52rem;
  }
  .page-voice .cont01 .lwrap1 > .alignCenter > .inline-block p {
    font-size: 2.8rem;
    line-height: 2.214;
  }
  .page-voice .postcont > .bg-white {
    padding: 28rem 3.5rem 7.5rem;
  }
  .page-voice .postcont > .bg-white > p {
    line-height: 2.214;
    margin-bottom: 17rem;
  }
  .page-voice .postcont .topcont {
    margin-bottom: 15rem;
  }
  .page-voice .postcont .topcont .txt.fl-r {
    float: none;
    width: 100%;
  }
  .page-voice .postcont .topcont .tag {
    position: static;
    left: inherit;
    top: inherit;
    font-size: 2.5rem;
    line-height: 1.35;
    padding: 0.2rem 1.5rem;
    margin-bottom: 5rem;
  }
  .page-voice .postcont .topcont .img {
    width: 71.5rem;
    left: -7rem;
    top: -58rem;
  }
  .page-voice .postcont .topcont-ttl {
    font-size: 4.2rem;
    line-height: 1.4545;
    margin-bottom: 3rem;
  }
  .page-voice .postcont .topcont-name {
    font-size: 2.4rem;
  }
  .page-voice .postcont .ttl02 {
    margin-bottom: 6rem;
  }
  .page-voice .postcont p {
    font-size: 2.8rem;
  }
  .page-voice .postcont p .small {
    font-size: 2.4rem;
  }
  .page-voice .postcont .imgbox {
    margin-bottom: 17rem;
  }
  .page-voice .postcont .imgbox .txt {
    width: 100%;
    padding: 20rem 3.5rem 5.5rem;
  }
  .page-voice .postcont .imgbox .txt p {
    font-size: 2.8rem;
  }
  .page-voice .postcont .imgbox .txt-inner {
    max-width: inherit;
    width: 100%;
    padding: 6rem 0 0;
  }
  .page-voice .postcont .imgbox .img {
    width: 47rem;
    top: -26rem;
  }
  .page-voice .postcont .imgbox.imgLeft .txt {
    padding: 20rem 3.5rem 5.5rem;
  }
  .page-voice .postcont .imgbox1 {
    margin-bottom: 17rem;
  }
  .page-voice .postcont .imgbox1 .txt {
    position: static;
    padding: 12rem 3.5rem 7rem;
  }
  .page-voice .postcont .imgbox1 .txt-inner {
    width: 100%;
    max-width: inherit;
  }
  .page-voice .postcont .imgbox1 .txt h4 {
    font-size: 3.4rem;
    margin-bottom: 3.5rem;
  }
  .page-voice .postcont .imgbox1 .txt p {
    font-size: 2.8rem;
  }
  .page-voice .postcont .imgbox1 .img {
    margin-right: -7rem;
    margin-bottom: -5rem;
  }
  .page-voice .postcont .imgbox1 .img img {
    width: 50.4rem;
  }
  .page-voice .postcont-summary {
    padding: 7rem 3rem 6rem;
  }
  .page-voice .postcont-summary-ttl {
    font-size: 3.4rem;
    margin-bottom: 6rem;
  }
  .page-voice .postcont .txtbox1 .txt {
    padding: 6rem 3rem;
  }
  .page-voice .postcont .txtbox1 .txt h4 {
    font-size: 2.8rem;
  }
  .page-voice .remark {
    padding: 9.5rem 3.5rem;
    border-radius: 2.1rem;
  }
  .page-voice .remark h3 {
    font-size: 3.4rem;
    margin-bottom: 8rem;
  }
  .page-voice .remark h4 {
    font-size: 4.4rem;
    border-bottom: 0.2rem solid #E81414;
    padding: 0 0 2.5rem;
    margin-bottom: 6rem;
  }
  .page-voice .remark .flex {
    margin: 0;
    flex-wrap: wrap;
  }
  .page-voice .remark .flex .img {
    width: 100%;
    order: 2;
    border-radius: 1.8rem;
    overflow: hidden;
  }
  .page-voice .remark .flex .img img {
    width: 100%;
  }
  .page-voice .remark .flex .txt {
    width: 100%;
    order: 1;
    margin-bottom: 8rem;
  }
  .page-voice .remark .flex .txt p {
    font-size: 2.8rem;
    margin-bottom: 6rem;
  }
  .page-voice .cont02 {
    margin-bottom: 0;
  }
  .page-voice .bottomBtn .btnwrap {
    flex-wrap: wrap;
    padding: 16rem 0 20rem;
    border: none;
  }
  .page-voice .bottomBtn .btnwrap .btn a {
    width: 100%;
  }
  .page-voice .bottomBtn .btnwrap .btn a::before {
    left: 9rem;
  }
  .page-voice .bottomBtn .btnwrap .btn.sp-arrow-left a::before {
    left: inherit;
    right: 9rem;
  }
  .page-voice .bottomBtn .btnwrap .btn + .btn {
    margin-left: 0;
  }
  .page-voice .achievement {
    margin: 21rem 3.5rem 0;
  }
  .page-voice .achievement-inner {
    padding: 8rem 3.5rem;
    flex-wrap: wrap;
  }
  .page-voice .achievement-inner .item img {
    width: 100%;
  }
  .page-voice .achievement-inner .item:nth-child(1) {
    width: 100%;
    margin-bottom: 9rem;
  }
  .page-voice .achievement-inner .item:nth-child(2) {
    width: 100%;
  }
  .page-voice .achievement-inner .item p {
    font-size: 2.8rem;
    line-height: 1.92857;
  }
  .page-voice .achievement-inner .item p a {
    line-height: 1.92857;
  }
  .page-voice .achievement-inner .ttl {
    font-size: 4.6rem;
    padding-bottom: 4rem;
    margin-bottom: 4rem;
  }
  .page-voice .achievement-inner .ttl::after {
    width: 7.5rem;
  }

  .frameline::before {
    bottom: 3.5rem;
    height: 30rem;
    margin-left: -10rem;
    margin-right: -10rem;
    padding-left: 10rem;
    padding-right: 10rem;
  }
  .frameline::after {
    height: 30rem;
    margin-left: -10rem;
    margin-right: -10rem;
    padding-left: 10rem;
    padding-right: 10rem;
  }
	
}
/* 2023.7.4
**************/
body.page-service:not(.home) .mv {
    margin-bottom: -5rem;
}

@media screen and (max-width: 750px) {
	body.page-service:not(.home) .mv {
    	margin-bottom: -34rem;
	}
	body.page-company:not(.home) .mv {
    	margin-bottom: -14rem;
	}
	body.page-contact:not(.home) .mv {
    	margin-bottom: -14rem;
	}
	.page-about video {
		width: 100%;
	}
	
}
/* 2024.11.01
**************/
.header-banner {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  z-index: 999;
  left: 20rem;
  top: 2.4rem;
  width: 22rem;
  height: 8rem;
  line-height: 1;
  text-decoration: none;
}
@media screen and (max-width: 1160px) {
  .header-banner {
    width: calc(100vw - 94rem);
  }
}
@media screen and (max-width: 1050px) {
  .header-banner {
    width: 22rem;
  }
}
@media screen and (max-width: 750px) {
  .header-banner {
    position: absolute;
    left: 3rem;
    top: 16rem;
    width: 31rem;
    opacity: 1;
    transition: opacity .3s;
  }
}