@charset "UTF-8";
/*********************************************
 * CSS Document
 *
 * COMMON
 *********************************************/
/* ====================================
 * VAR *
====================================*/
/*********************************************
 * VAR
 *********************************************/
/* ------------------------------- *
 * BREAK POINT *
 * ---*/
/* ------------------------------- *
 * COLOR *
 * ---*/
/*====================================
 * RESET *
====================================*/
html {
  width: 100%;
  font-size: 2.41546vw;
  margin-top: 0 !important;
  overflow-x: hidden;
}

@media (min-width: 600px) {
  html {
    font-size: 1.20773vw;
  }
}

@media (min-width: 960px) {
  html {
    font-size: 62.5%;
  }
}

body {
  min-width: 360px;
  line-height: 1;
  color: #000;
  background-color: #FFF;
  font-family: 'Noto Sans JP','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',YuGothic,'Yu Gothic','Yu Gothic UI','メイリオ', Meiryo,'Meiryo UI',sans-serif;
  font-size: 1rem;
  font-weight: 500;
  word-wrap: break-word;
  overflow: hidden;
}

img {
  width: 100%;
  max-width: 100%;
  height: auto;
}

video {
  max-width: 100%;
}

img,
input[type="image"] {
  transition: 0.5s ease-in-out;
}

@media (min-width: 1200px) {
  img {
    width: auto;
  }
}

.svg {
  position: relative;
}

.svg svg,
.svg .svg_img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

a, a div {
  text-decoration: none;
  color: inherit;
  transition: 0.5s all ease;
}

.underline-bf {
  text-decoration: underline;
  color:#258FAD;

}


@media (min-width: 1200px) {
  a:not(.nohover):hover,
  a:not(.nohover):hover div,
  a:not(.nohover):hover img {
    opacity: 0.8;
    transition: .3s ease-in-out;
  }
  .hover {
    transition: .3s ease-in-out;
  }
  .hover:hover,
  .hover:hover svg,
  .hover:hover div,
  .hover:hover img {
    opacity: .8;
  }
  .underline-bf:hover,
  a:hover .underline-bf {
    text-decoration: none;
    opacity: 1 !important;
  }
  .underline-af:hover,
  a:hover .underline-af {
    text-decoration: underline;
    opacity: 1 !important;
  }
}

.ti {
  text-indent: -1em;
  padding-left: 1em;
}

* {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  /* ハイライトカラー無効化 */
}

::selection {
  background: rgba(199, 145, 31, 0.2);
}

/*====================================
 * DEVICE *
====================================*/
@media (max-width: 599px) {
  .sp-none {
    display: none !important;
  }
}

@media screen and (min-width: 600px) and (max-width: 959px) {
  .tb-none {
    display: none !important;
  }
}

@media (min-width: 960px) {
  .pc-none {
    display: none !important;
  }
}

/*====================================
 * Common *
====================================*/
#wrap {
  position: relative;
  z-index: 0;
}

.cmn-anc {
  display: block;
  width: 0;
  height: 0;
  margin-top: -3rem;
  padding-top: 3rem;
}

.cmn-width01,
.cmn-width02 {
  margin: 0 auto;
  box-sizing: border-box;
}

.cmn-width01 {
  width: 36.4rem;
}

.cmn-width02 {
  width: calc((100vw - 100%) / 2 + 100%);
}

.cmn-width02 .cmn-width02__inner--left {
  margin-left: calc((100vw - 100%) / -2);
  margin-right: 0;
}

.cmn-width02 .cmn-width02__inner--right {
  margin-right: calc((100vw - 100%) / -2);
  margin-left: 0;
}


@media (min-width: 600px) {
  .cmn-anc {
    margin-top: -5rem;
    padding-top: 5rem;
  }
  .cmn-width01 {
    width: 75rem;
  }
}

@media (min-width: 960px) {
  .cmn-width01 {
    width: 95rem;
  }
}

@media (min-width: 1200px) {
  .cmn-anc {
    margin-top: -3rem;
    padding-top: 3rem;
  }
  .cmn-width01 {
    width: 120rem;
  }
}

/* ------------------------------- *
 * TITLE *
/* --- */
/* ttl01 */
.cmn-sec__ttl01 {
  margin-bottom: 3rem;
  position: relative;
  padding-bottom: 2.5rem;
  /* ttlBox */
}

.cmn-sec__ttl01::before {
  content: "";
  width: 6rem;
  height: 2px;
  background-color: #258FAD;
  position: absolute;
  left: 0;
  bottom: 0;
}

.cmn-sec__ttl01--center {
  text-align: center;
}

.cmn-sec__ttl01--center::before {
  left: 50%;
  transform: translateX(-50%);
}

.cmn-sec__ttl01 .sec__ttl--en {
  font-size: 1.3rem;
  font-weight: 700;
  color: #258FAD;
  letter-spacing: .2em;
  margin-bottom: 1.5rem;
}

.cmn-sec__ttl01 .sec__ttl--ja {
  font-size: 2.4rem;
  font-weight: 700;
  color: #258FAD;
  letter-spacing: .1em;
  line-height: 1.4;
}

.cmn-sec__ttl01Box {
  margin-bottom: 4rem;
}

@media (min-width: 960px) {
  .cmn-sec__ttl01 {
    margin-bottom: 6rem;
    padding-bottom: 3.5rem;
    /* ttlBox */
  }
  .cmn-sec__ttl01::before {
    width: 12rem;
  }
  .cmn-sec__ttl01 .sec__ttl--en {
    font-size: 1.6rem;
    margin-bottom: 2rem;
  }
  .cmn-sec__ttl01 .sec__ttl--ja {
    font-size: 3.2rem;
  }
  .cmn-sec__ttl01Box {
    margin-bottom: 6rem;
    display: flex;
    align-items: center;
  }
  .cmn-sec__ttl01Box .cmn-sec__ttl01 {
    margin-bottom: 0;
    margin-right: 5rem;
  }
  .cmn-sec__ttl01Box--m .cmn-sec__ttl01 {
    margin-right: 2.5rem;
  }
  .cmn-sec__ttl01Box--l .cmn-sec__ttl01 {
    margin-right: 5rem;
  }
}

@media (min-width: 1200px) {
  .cmn-sec__ttl01 {
    /* ttlBox */
  }
  .cmn-sec__ttl01 .sec__ttl--en {
    font-size: 1.8rem;
  }
  .cmn-sec__ttl01 .sec__ttl--ja {
    font-size: 4rem;
  }
  .cmn-sec__ttl01Box .cmn-sec__ttl01 {
    margin-right: 10rem;
  }
  .cmn-sec__ttl01Box--m .cmn-sec__ttl01 {
    margin-right: 5rem;
  }
  .cmn-sec__ttl01Box--l .cmn-sec__ttl01 {
    margin-right: 18rem;
  }
}

/* ttl02 */
.cmn-sec__ttl02 {
  font-size: 1.6rem;
  font-weight: 700;
  color: #258FAD;
  display: flex;
  align-items: baseline;
  line-height: 1.25;
}

.cmn-sec__ttl02::before {
  content: "";
  width: 1rem;
  height: 1rem;
  border-radius: 3px;
  background-color: #E0D7B7;
  margin-right: 1rem;
}

@media (min-width: 600px) {
  .cmn-sec__ttl02 {
    font-size: 1.8rem;
    align-items: center;
    line-height: 1.6;
  }
  .cmn-sec__ttl02::before {
    margin-right: 1.5rem;
  }
}

/* ------------------------------- *
 * TEXT *
/* --- */
.cmn-txt {
  font-size: 1.3rem;
  line-height: 2.6;
}

.cmn-txt p:not(:last-of-type) {
  margin-bottom: 1.5em;
}

@media (min-width: 960px) {
  .cmn-txt {
    font-size: 1.4rem;
    line-height: 2;
  }
}

@media (min-width: 1200px) {
  .cmn-txt {
    font-size: 1.5rem;
  }
}

/* color */
.color--white {
  color: #FFF !important;
}

.color--gold {
  color: #258FAD !important;
}

/* line */
.lh--low {
  line-height: 1.6;
}

@media (min-width: 600px) {
  .lh--low {
    line-height: 1.7;
  }
}

.lh--low--mini {
  line-height: 1.4;
}

@media (min-width: 960px) {
  .lh--low--mini {
    line-height: 1.5;
  }
}

.lh--high {
  line-height: 2.6;
}

/* font */
.font--mincho {
  font-family: 'Noto Serif JP', serif;
}

/* ------------------------------- *
 * IMAGE *
/* --- */
.cmn-trimming__thumb {
  overflow: hidden;
  width: 100%;
  height: 100%;
  position: relative;
}

.cmn-trimming__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  -webkit-object-fit: cover;
}

/* browser-ie */
.browser-ie .cmn-trimming__thumb {
  position: relative;
  /* overflow: hidden; */
}

.browser-ie .cmn-trimming__thumb img {
  width: auto;
  height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* HOVER */
@media (min-width: 1200px) {
  .cmn-trimming__zoom {
    position: relative;
    overflow: hidden;
  }
  .cmn-trimming__zoom img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  a:hover .cmn-trimming__zoom img,
  a.cmn-trimming__zoom:hover img {
    transform: translate(-50%, -50%) scale(1.2);
  }
}

/* ------------------------------- *
 * SHADOW *
/* --- */
.cmn-shadow01 {
  box-shadow: 0px 0px 3rem rgba(176, 175, 175, 0.3);
}

.cmn-shadow02 {
  box-shadow: 0px 0px 1rem rgba(176, 175, 175, 0.1);
}

/* ------------------------------- *
 * BUTTON *
/* --- */
/* btn01 */
.cmn-btn01 {
  width: 17.7rem;
  height: 5rem;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  padding: 1.4rem 1rem;
  border-radius: 5px;
  border: 1px solid #258FAD;
  font-size: 1.5rem;
  color: #258FAD;
  letter-spacing: .1em;
  text-align: center;
}

@media (min-width: 960px) {
  .cmn-btn01 {
    height: 6rem;
    padding: 2rem 1rem;
    font-size: 1.6rem;
  }
}

@media (min-width: 1200px) {
  .cmn-btn01:hover {
    background-color: #000;
    opacity: 1 !important;
    color: #FFF;
    background-color: #258FAD;
  }
}

/* btn02 */
.cmn-btn02 {
  width: 25rem;
  height: 5rem;
  box-sizing: border-box;
  display: block;
  position: relative;
  padding: 1.4rem 1rem;
  border-radius: 5px;
  text-align: center;
  overflow: hidden;
}

.cmn-btn02::before {
  content: "";
  width: 200%;
  height: 100%;
  background: linear-gradient(90deg, #4BA7BF 0%, #258FAD 50%, #106780 100%);
  position: absolute;
  top: 0;
  left: 0;
  transition: .3s ease-in-out;
}

.cmn-btn02 span {
  font-size: 1.5rem;
  color: #FFF;
  letter-spacing: .1em;
  position: relative;
  z-index: 55;
}

@media (min-width: 960px) {
  .cmn-btn02 {
    height: 6rem;
    padding: 2rem 1rem;
    font-size: 1.6rem;
  }
}

@media (min-width: 1200px) {
  .cmn-btn02:hover::before {
    left: -100%;
  }
}

/* ------------------------------- *
 * PAGE TITLE *
/* --- */
.cmn-page__ttl {
  margin-bottom: 1rem;
}

.cmn-page__ttl .page__ttl-inner {
  width: calc((100vw - 100%) / 2 + 100%);
  height: 23rem;
  border-radius: 0 0 5px 0;
  overflow: hidden;
  position: relative;
  background: no-repeat center / cover;
  margin-left: calc((100vw - 100%) / -2);
}

.cmn-page__ttl .page__ttl01 {
  display: inline-block;
  font-size: 2.4rem;
  font-weight: 700;
  color: #258FAD;
  line-height: 1.4;
  padding: 1.25rem 2.5rem;
  background-color: #FFF;
  border-radius: 0 5px 0 0;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 5;
}

.cmn-page__ttl .page__ttl02 {
  display: none;
}

@media (min-width: 960px) {
  .cmn-page__ttl .page__ttl-inner {
    width: 100rem;
    height: 40rem;
  }
  .cmn-page__ttl .page__ttl01 {
    font-size: 3.6rem;
    padding: 2rem 5rem;
    z-index: 100;
  }
  .cmn-page__ttl .page__ttl02 {
    display: block;
    line-height: 1;
    color: rgba(255, 255, 255, 0.7);
    font-weight: 700;
    text-align: right;
    position: absolute;
    bottom: -.5rem;
    right: -.5rem;
    z-index: 5;
  }
  .cmn-page__ttl .page__ttl02--s {
    font-size: 6rem;
  }
  .cmn-page__ttl .page__ttl02--m {
    font-size: 7.5rem;
  }
  .cmn-page__ttl .page__ttl02--l {
    font-size: 10rem;
  }
}

@media (min-width: 1200px) {
  .cmn-page__ttl .page__ttl-inner {
    width: calc(100vw - 5rem);
  }
  .cmn-page__ttl .page__ttl01 {
    font-size: 4.2rem;
    padding: 2rem 10rem;
  }
  .cmn-page__ttl .page__ttl02--s {
    font-size: 8rem;
  }
  .cmn-page__ttl .page__ttl02--m {
    font-size: 10rem;
  }
  .cmn-page__ttl .page__ttl02--l {
    font-size: 13rem;
  }
}

/*====================================
 * EFFECT *
====================================*/
/* ------------------------------- *
 * SCROLL *
 */
/* FADEIN Y */
.fadein_y {
  transform: translateY(-15px);
  opacity: 0;
  transition: 0.8s all;
  transition-delay: .4s;
}

.is--fire .fadein_y,
.fadein_y.is--fire {
  transform: translateY(0px) !important;
  opacity: 1 !important;
}

.fadein {
  opacity: 0;
  transition: 0.8s all;
  transition-delay: .4s;
}

.is--fire .fadein,
.fadein.is--fire {
  opacity: 1 !important;
}

/* FADEIN X */
.fadein_x_l {
  transform: translateX(-15px);
  opacity: 0;
  transition: 0.8s all;
}

.fadein_x_r {
  transform: translateX(15px);
  opacity: 0;
  transition: 0.8s all;
}

.is--fire .fadein_x_l,
.fadein_x_l.is--fire,
.is--fire .fadein_x_r,
.fadein_x_r.is--fire {
  transform: translateX(0px) !important;
  opacity: 1;
  transition-delay: .4s;
}

/* DELAY */
.delay1 {
  transition-delay: .6s !important;
}

.delay2 {
  transition-delay: .8s !important;
}

.delay3 {
  transition-delay: 1s !important;
}

.delay4 {
  transition-delay: 1.2s !important;
}

.delay5 {
  transition-delay: 1.4s !important;
}

.delay6 {
  transition-delay: 1.6s !important;
}

.delay7 {
  transition-delay: 1.8s !important;
}

.delay8 {
  transition-delay: 2s !important;
}

.delay9 {
  transition-delay: 2.2s !important;
}

.delay10 {
  transition-delay: 2.4s !important;
}

/*====================================
 * HEADER *
====================================*/
header {
  box-sizing: border-box;
  transition: .3s;
  z-index: 1010;
  position: fixed;
  top: 1.5rem;
  left: 50%;
  transform: translateX(-50%);
  /* keyframes */
}

header .header__inner {
  height: 5rem;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1rem 2rem;
  transition: .3s;
  z-index: 900;
  background-color: #FFF;
}

header .header__logo {
  width: 10rem;
  transition: .2s ease-in-out;
}

@media (max-width: 600px){
  header .header__logo {
  width: 13rem;
  transition: .2s ease-in-out;
  }
} 

@keyframes hbgr_anim1-sp {
  0% {
    top: -5rem;
  }
  50% {
    top: -5rem;
  }
  100% {
    top: 0;
  }
}

@keyframes hbgr_anim2-sp {
  0% {
    top: -5rem;
  }
  50% {
    top: -5rem;
  }
  100% {
    top: 5rem;
  }
}

@media (max-width: 959px) {
header .gnavi_icon {
    display: flex;
    align-items: center;
    margin-left: 5%;
    width: 40%;
  }
header {
    /* sideBtn */
  }
  header.is--open .header__inner {
    padding: 0;
  }
  header.is--open .header__logo {
    width: 9rem;
  }
  header .sideBtn {
    width: 1.5rem;
    height: 2rem;
    z-index: 9999;
    box-sizing: border-box;
    padding: 2px 0;
  }
  header .sideBtn__inner {
    width: 100%;
    height: 100%;
    position: relative;
  }
  header .sideBtn span {
    width: 100%;
    height: 1px;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    transition: all 0.4s ease-in-out;
    background-color: #258FAD;
  }
  header .sideBtn span:nth-child(1) {
    top: 0.2rem;
  }
  header .sideBtn span:nth-child(2) {
    top: .75rem;
  }
  header .sideBtn span:nth-child(3) {
    bottom: 0.2rem;
  }
  header.is--open .sideBtn span {
    top: .5rem;
  }
  header.is--open .sideBtn span:nth-child(1) {
    transform: translate(-50%) rotate(315deg);
  }
  header.is--open .sideBtn span:nth-child(2) {
    opacity: 0;
  }
  header.is--open .sideBtn span:nth-child(3) {
    bottom: .5rem;
    transform: translate(-50%) rotate(225deg);
  }
}

@media (min-width: 960px) {
  header {
    /* gnav */
  }
  header .header__inner {
    height: 8rem;
    padding: 1.5rem 2rem;
    justify-content: flex-start;
  }
  header .header__logo {
    width: 11rem;
    margin-right: 5rem;

  }
  header #gnav {
    display: flex;
    align-items: center;
    margin-left: 2.5rem;
  }
  header #gnav .gnavLink:not(:last-child) {
    margin-right: 1.5rem;
  }
  header #gnav .gnavLink__item {
    font-size: 1.2rem;
    margin-right: 2rem;
    transition: .3s ease-in-out;
  }
  header #gnav .gnavLink__item:hover {
    color: #258FAD;
  }
  header #gnav .gnavLink--contact {
    height: 100%;
    position: absolute;
    top: 14;
    right: 0;
  }
  header #gnav .gnavLink--contact a {
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    display: block;
    padding: 1.75rem;
    border-radius: 0px 5px 5px 0px;
    background: linear-gradient(315deg, #106780 0%, #4BA7BF 100%);
    text-align: center;
    color: #FFF;
  }
  header #gnav .gnavLink--contact .gnavLink__txt {
    font-size: 1.2rem;
    margin-top: 0.1rem;
    margin-bottom: 0.6rem;
  }
  header #gnav .gnavLink--contact .gnavLink__tel {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  header #gnav .gnavLink--contact .gnavLink__tel .icon {
    width: 1.5rem;
    height: 1.5rem;
    margin-right: .5rem;
  }
  header #gnav .gnavLink--contact .gnavLink__tel .icon .svg_img {
    fill: #FFF;
  }
  header #gnav .gnavLink--contact .gnavLink__tel .label {
    font-size: 1.6rem;
    font-weight: 700;
  }
}

@media (min-width: 1200px) {
  header {
    /* gnav */
  }
  header .header__inner {
    padding: 1.5rem 4rem;
  }
  header .header__logo {
    width: 19rem;
    margin-right: 2rem;
  }
  header #gnav {
    margin-left: 5.4rem;
  }
  header #gnav .gnavLink:not(:last-child) {
    margin-right: 3.5rem;
  }
  header #gnav .gnavLink__item {
    font-size: 1.4rem;
  }
  header #gnav .gnavLink--contact a {
    padding: 2rem;
    padding-left: 2.5rem;
  }
  header #gnav .gnavLink--contact .gnavLink__txt {
    font-size: 1.4rem;
    margin-top: 0.1rem;
    margin-bottom: 0.6rem;
  }
  header #gnav .gnavLink--contact .gnavLink__tel .label {
    font-size: 1.8rem;
  }
}

/* ------------------------------- *
 * HAMBURGER *
 * ---*/
#side {
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: -100vh;
  left: 0;
  z-index: 900;
  transition: .3s ease-in-out;
}

#side.is--open {
  top: 0;
}

#side:before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: #FFF;
  z-index: -1;
}

#side .side__inner {
  height: calc(100% - 6.5rem);
  padding: 6.5rem 0 0;
  margin: 0 auto;
}

#side .side__area--scroll {
  height: 100%;
  padding-top: 4rem;
  padding-bottom: 10rem;
  overflow-y: auto;
  box-sizing: border-box;
}

/* links */
.sideMenu__info {
  padding: 4rem 3rem;
  background-color: #F5F5F5;
  margin-bottom: 4.5rem;
}

.sideMenu__info__btn {
  width: 100%;
  height: 5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #258FAD;
}

.sideMenu__info__btn .icon {
  width: 2rem;
  height: 2rem;
  margin-right: 1rem;
}

.sideMenu__info__btn .icon .svg_img {
  fill: #FFF;
}

.sideMenu__info__btn .label {
  font-size: 1.5rem;
  font-weight: 700;
  color: #FFF;
  letter-spacing: .1em;
}

.sideMenu__info__label {
  font-size: 1.6rem;
  text-align: center;
  margin: 4rem 0 1.5rem;
}

.sideMenu__box {
  margin-bottom: 2.5rem;
}

.sideMenu__label {
  font-size: 2rem;
  font-weight: 700;
  color: #258FAD;
  position: relative;
  display: flex;
  align-items: center;
  margin-bottom: 3rem;
}

.sideMenu__label::before {
  content: "";
  width: 1rem;
  height: 1rem;
  background-color: #258FAD;
  border-radius: 2px;
  margin-right: 1rem;
}

.sideMenu__list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.sideMenu__link {
  width: 50%;
  margin-bottom: 2.6rem;
}

.sideMenu__link a {
  font-size: 1.5rem;
  line-height: 1.3;
  padding-left: .5em;
  text-indent: -.5em;
}

@media (max-width: 959px) {
  .sideMenu__link a {
    display: block;
  }
}

header.is--nav-open + #side .side_btn {
  position: fixed;
  animation: hbgr_anim2-sp .8s ease-in-out forwards;
}

/* ------------------------------- *
 * SIDE BG *
 *---*/
/*====================================
 * FOOTER *
====================================*/
footer {
  width: 100%;
}

/* ------------------------------- * /
 * FOOT CONTACT *
/* --- */
.footerContact {
  background: url(../img/common/foot_bg2-sp.jpg) no-repeat center/cover;
  padding: 6rem 0;
}

.footerContact__ttl {
  font-size: 2.2rem;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: 1.8;
  color: #FFF;
  text-align: center;
  margin-bottom: 2.5rem;
}

.footerContact__headline {
  font-size: 1.5rem;
  line-height: 1.6;
  color: #FFF;
  text-align: center;
  margin-bottom: 4rem;
}

.footerContact__info {
  width: 30rem;
  margin: 0 auto;
}

.footerContact__info__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.5rem;
  background-color: #FFF;
}

.footerContact__info__btn .icon {
  width: 2rem;
  height: 2rem;
  margin-right: 1rem;
}

.footerContact__info__btn .icon .svg_img {
  fill: #258FAD;
  transition: .3s ease-in-out;
}

.footerContact__info__btn .label {
  font-size: 1.5rem;
  font-weight: 700;
  color: #258FAD;
  letter-spacing: .1em;
}

.footerContact__info__label {
  font-size: 1.6rem;
  font-weight: 700;
  color: #FFF;
  text-align: center;
  margin: 4rem 0 1.5rem;
}

@media (min-width: 960px) {
  .footerContact {
    background: url(../img/common/foot_bg2-pc.jpg) no-repeat center/cover;
    padding: 8rem 0;
  }
  .footerContact__ttl {
    font-size: 3rem;
    margin-bottom: 3.5rem;
  }
  .footerContact__headline {
    font-size: 1.8rem;
    margin-bottom: 5.5rem;
  }
  .footerContact__info {
    width: auto;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .footerContact__info__btn {
    padding: 2rem;
  }
  .footerContact__info__btn--tel {
    background-color: transparent;
    border: 2px solid #FFF;
  }
  .footerContact__info__btn--tel .icon .svg_img {
    fill: #FFF;
  }
  .footerContact__info__btn--tel .label {
    color: #FFF;
  }
  .footerContact__info__btn .label {
    font-size: 1.8rem;
  }
  .footerContact__info__label {
    font-size: 2.2rem;
    margin: 0;
    padding: 2.5rem 2rem 2.5rem 7rem;
    margin-left: 7rem;
    border-left: 1px solid #FFF;
  }
}

@media (min-width: 1200px) {
  .footerContact__ttl {
    font-size: 3.8rem;
  }
  .footerContact__info__btn {
    width: 30rem;
    box-sizing: border-box;
  }
  .footerContact__info__btn--tel {
    pointer-events: none;
  }
  .footerContact__info__btn:hover {
    background-color: #258FAD;
  }
  .footerContact__info__btn:hover .icon .svg_img {
    fill: #FFF;
  }
  .footerContact__info__btn:hover .label {
    color: #FFF;
  }
}

/* ------------------------------- * /
 * FOOT MENU *
/* --- */
.footerMenu {
  padding: 6rem 0 9rem;
  background-color: #FFF;
}

.footerMenu__box {
  margin-top: 5rem;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}

.footerMenu__logo {
  width: 17rem;
  display: block;
}

.footerMenu__cr {
  font-size: 1rem;
  letter-spacing: .1em;
  color: #258FAD;
}

@media (min-width: 960px) {
  .footerMenu {
    padding: 8rem 0 5.7rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-direction: row-reverse;
  }
  .footerMenu .sideMenu__blc {
    display: flex;
    justify-content: space-between;
  }
  .footerMenu .sideMenu__box:first-child {
    width: 27rem;
  }
  .footerMenu .sideMenu__box:not(:last-child) {
    margin-right: 3.5rem;
  }
  .footerMenu .sideMenu__box:not(:last-child) .sideMenu__link {
    margin-right: 2rem;
  }
  .footerMenu .sideMenu__list {
    height: 18rem;
    flex-flow: column;
    flex-wrap: wrap;
    justify-content: start;
  }
  .footerMenu .sideMenu__link {
    width: auto;
    display: inline-block;
  }
  .footerMenu .sideMenu__link a {
    font-size: 1.4rem;
  }
  .footerMenu__box {
    margin-top: 0;
    display: block;
  }
  .footerMenu__logo {
    width: 20rem;
  }
  .footerMenu__cr {
    margin-top: 3rem;
  }
}

@media (min-width: 1200px) {
  .footerMenu .sideMenu__box:first-child {
    width: 32rem;
  }
  .footerMenu .sideMenu__box:not(:last-child) {
    margin-right: 5rem;
  }
  .footerMenu .sideMenu__box:not(:last-child) .sideMenu__link {
    margin-right: 5rem;
  }
  .footerMenu__logo {
    width: 26rem;
  }
}

/*====================================
 * CONTENTS *
====================================*/
/* radiusBox */
.cmn-radiusBox {
  border-radius: 5px;
  overflow: hidden;
}

/* section bg */
.cmn-lastSec {
  padding: 6rem 0;
  background: url(../img/common/foot_bg1.jpg) no-repeat center top/cover;
}

@media (min-width: 960px) {
  .cmn-lastSec {
    padding: 12rem 0;
  }
}

/*====================================
 * COPYRIGHT *
====================================*/
.copyright {
  display: block;
  font-size: 1rem;
  color: #7E7E7E;
}

/*====================================
 * Background *
====================================*/
.cmn-bg {
  position: relative;
  z-index: 10;
  padding: 5rem 0 6rem;
}

.cmn-bg::before {
  content: "";
  width: 40.4rem;
  height: 100%;
  position: absolute;
  top: 0;
  transition: .3s ease-in-out;
  z-index: -1;
  pointer-events: none;
  background-color: #FFF;
}

.cmn-bg--left::before {
  left: -105vw;
  border-radius: 0 5px 5px 0;
}

.cmn-bg--left.is--fire::before {
  left: calc((100vw - 100%) / -2);
}

.cmn-bg--right::before {
  right: -105vw;
  border-radius: 5px 0 0 5px;
}

.cmn-bg--right.is--fire::before {
  right: calc((100vw - 100%) / -2);
}

.cmn-bg--yellow::before {
  background-color: #E5F9FF;
}

.cmn-bg--beige::before {
  background-color: #EDF1F2;
}

.cmn-bg--shadow::before {
  background: #fff;
  box-shadow: 0px 0px 1rem rgba(176, 175, 175, 0.2);
}

.cmn-bg--short {
  padding-bottom: 0 !important;
}

.cmn-bg--short::before {
  height: calc(100% - 7rem);
}

@media (min-width: 600px) {
  .cmn-bg::before {
    width: 80.5rem;
  }
}

@media (min-width: 960px) {
  .cmn-bg {
    padding: 8rem 0;
  }
  .cmn-bg::before {
    width: 100rem;
  }
  .cmn-bg--short::before {
    height: calc(100% - 8rem);
  }
}

@media (min-width: 1200px) {
  .cmn-bg::before {
    width: calc((100vw - 100%) / 2 + 100% + 5rem);
  }
}

/*====================================
 * CONSULT MENU *
====================================*/
/* ------------------------------- */
/* tab buuton */
/* --- */
.cmn-consultArea .consultArea__btns {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 4rem;
}

.cmn-consultArea .consultArea__btns li {
  width: 48.6%;
}

.cmn-consultArea .consultArea__btns li.is--active .consultArea__btn {
  background-color: #258FAD;
  color: #FFF;
}

.cmn-consultArea .consultArea__btn {
  display: block;
  box-sizing: border-box;
  padding: 1.5rem 1rem;
  font-size: 1.5rem;
  color: #258FAD;
  text-align: center;
  letter-spacing: .1em;
  border-radius: 5px;
  margin-bottom: 1rem;
  border: 1px solid #258FAD;
  transition: .3s ease-in-out;
  cursor: pointer;
}

.cmn-consultArea .consultBox {
  padding: 3rem 2rem;
  background-color: #FFF;
  display: block;
}

.cmn-consultArea .consultBox:not(:last-child) {
  margin-bottom: 3rem;
}

.cmn-consultArea .consultBox__ttl {
  display: flex;
  align-items: center;
}

.cmn-consultArea .consultBox__ttl__name {
  font-size: 1.6rem;
  color: #258FAD;
  margin-right: 1.5rem;
}

.cmn-consultArea .consultBox__ttl__address {
  border: 1px solid #258FAD;
  border-radius: 100px;
  box-sizing: border-box;
  padding: 3px 1.5rem;
  font-size: 1.3rem;
  color: #258FAD;
}

.cmn-consultArea .consultBox__info {
  margin-top: 2.5rem;
}

.cmn-consultArea .consultBox__info dl:not(:last-child) {
  padding-bottom: 1.5rem;
  border-bottom: 1px solid #F5F5F5;
  margin-bottom: 2.5rem;
}

.cmn-consultArea .consultBox__info dl dt {
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: .1em;
  color: #258FAD;
  margin-bottom: .5rem;
  padding: .75rem 2.8rem;
  border-radius: 5px;
  background-color: #F5F5F5;
  display: inline-block;
}

@media (min-width: 960px) {
  .cmn-consultArea .consultArea__btns {
    margin-bottom: 5rem;
    align-items: flex-end;
  }
  .cmn-consultArea .consultArea__btns li {
    width: 23.7%;
  }
  .cmn-consultArea .consultArea__btns li.is--active .consultArea__btn,
  .cmn-consultArea .consultArea__btns li:hover .consultArea__btn {
    background-color: #258FAD;
    color: #FFF;
    padding: 2rem 1rem;
    font-weight: 700;
  }
  .cmn-consultArea .consultArea__btn {
    padding: 1rem;
    font-size: 1.6rem;
    margin-bottom: 0;
  }
  .cmn-consultArea .consultBox {
    padding: 4rem;
  }
  .cmn-consultArea .consultBox__ttl__name {
    font-size: 1.8rem;
    margin-right: 1.8rem;
  }
  .cmn-consultArea .consultBox__ttl__address {
    padding: 5px 1.5rem;
    font-size: 1.4rem;
  }
  .cmn-consultArea .consultBox__info {
    margin-top: 3rem;
  }
  .cmn-consultArea .consultBox__info dl {
    display: flex;
    align-items: baseline;
  }
  .cmn-consultArea .consultBox__info dl:not(:last-child) {
    margin-bottom: 1.5rem;
  }
  .cmn-consultArea .consultBox__info dl dt {
    width: 14rem;
    box-sizing: border-box;
    font-size: 1.8rem;
    text-align: center;
    padding: 1rem;
    margin-bottom: 0;
    margin-right: 3rem;
  }
  .cmn-consultArea .consultBox__info dl dd {
    width: 70rem;
  }
}

@media (min-width: 1200px) {
  .cmn-consultArea .consultBox__info dl dd {
    width: 95rem;
  }
}

.cmn-consult--gray .cmn-consultArea .consultBox {
  background-color: #F5F5F5;
}

.cmn-consult--gray .cmn-consultArea .consultBox__info dl:not(:last-child) {
  border-color: #EAEAEA;
}

.cmn-consult--gray .cmn-consultArea .consultBox__info dl dt {
  background-color: #FFF;
}

/*====================================
Form
====================================*/
.cmn-form .alert {
  color: #FF0000;
  line-height: 1.6;
  font-size: 1.6rem;
  margin-bottom: 3rem;
}

.cmn-form .form_tbl {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  word-wrap: break-word;
  margin-bottom: 3rem;
}

.cmn-form .form_tbl tr:not(:last-child) {
  border-bottom: 1px solid #E5E5E5;
}

.cmn-form .form_tbl tr th,
.cmn-form .form_tbl tr td {
  box-sizing: border-box;
}

.cmn-form .form_tbl tr th {
  width: 100%;
  font-size: 1.8rem;
  font-weight: 700;
  padding-top: 3rem;
  position: relative;
}

.cmn-form .form_tbl tr th .required {
  width: 4.5rem;
  height: 2.5rem;
  display: block;
  box-sizing: border-box;
  padding: .5rem 0 .3rem;
  font-size: 1.2rem;
  color: #258FAD;
  border: 1px solid #258FAD;
  border-radius: 100px;
  text-align: center;
  line-height: 1;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}

.cmn-form .form_tbl tr td {
  font-size: 1.3rem;
  line-height: 1.4;
  padding: 2.6rem 0 3rem;
}

.cmn-form .form_tbl tr td .input__box {
  display: flex;
  align-items: center;
}

.cmn-form .form_tbl tr td .input__box:not(:last-child) {
  margin-bottom: 1.5rem;
}

.cmn-form .form_tbl tr td .input__box__birth {
  display: flex;
  align-items: center;
}

.cmn-form .form_tbl tr td .input__box__birth .input__box {
  margin-bottom: 0;
}

.cmn-form .form_tbl tr td .input__box__symptom {
  flex-wrap: wrap;
  justify-content: space-between;
}

.cmn-form .form_tbl tr td .input__box__symptom label {
  width: 49%;
  margin-bottom: 2rem;
}

.cmn-form .form_tbl tr td .input__label {
  font-size: 1.4rem;
}

.cmn-form .form_tbl tr td .input__label__name {
  width: 2.5em;
}

.cmn-form .form_tbl tr td .input__label__birth {
  margin: 0 3rem 0 1rem;
}

.cmn-form .form_tbl tr td .input__name {
  width: 100%;
  margin-left: 2.6rem;
}

.cmn-form .form_tbl tr td .input__postcode {
  width: 22rem;
  margin-left: 2.6rem;
  margin-right: 1rem;
}

.cmn-form .form_tbl tr td .input__address:not(:last-child) {
  margin-bottom: 1.5rem;
}

.cmn-form .form_tbl tr td .input__addressBtn {
  width: 9.4rem;
  margin: 0;
}

.cmn-form .form_tbl tr td .input__birth {
  width: 7rem;
}

.cmn-form .form_tbl tr td .input__blc {
  margin-bottom: 1rem;
}

.cmn-form .form_tbl tr td .input__catch {
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: .1em;
  margin-bottom: 2rem;
}

.cmn-form .form__btn {
  width: 25rem;
  height: 5rem;
  margin: 0 auto;
  border-radius: 5px;
  border: 1px solid #258FAD;
  box-sizing: border-box;
  padding: 1.5rem;
  font-size: 1.4rem;
  color: #258FAD;
  letter-spacing: .1em;
  text-align: center;
}

.cmn-form .form__txt {
  margin-top: 3rem;
}

@media (max-width: 959px) {
  .cmn-form .form_tbl th,
  .cmn-form .form_tbl td {
    display: block;
  }
}

@media (min-width: 960px) {
  .cmn-form .alert {
    font-size: 1.5rem;
    margin-bottom: 1.5rem;
  }
  .cmn-form .form_tbl.confirm th,
  .cmn-form .form_tbl.confirm td {
    vertical-align: middle;
  }
  .cmn-form .form_tbl tr:not(:last-child) th {
    border-bottom: 1px solid #E5E5E5;
  }
  .cmn-form .form_tbl tr th,
  .cmn-form .form_tbl tr td {
    padding: 4rem 0;
    vertical-align: baseline;
  }
  .cmn-form .form_tbl tr th {
    width: 24%;
    font-size: 2rem;
  }
  .cmn-form .form_tbl tr th .required {
    width: 6rem;
    height: 3rem;
    padding: .7rem 0;
    font-size: 1.4rem;
  }
  .cmn-form .form_tbl tr td {
    width: 75%;
    font-size: 1.5rem;
    padding-left: 3rem;
  }
  .cmn-form .form_tbl tr td .input__box__symptom {
    justify-content: flex-start;
  }
  .cmn-form .form_tbl tr td .input__box__symptom label {
    width: auto;
    min-width: 25%;
  }
}

@media (min-width: 960px) and (min-width: 1200px) {
  .cmn-form .form_tbl tr td .input__box__symptom label {
    min-width: 16.5%;
  }
}

@media (min-width: 960px) {
  .cmn-form .form_tbl tr td .input__label {
    font-size: 1.6rem;
  }
  .cmn-form .form_tbl tr td .input__label__birth {
    margin-right: 4rem;
  }
  .cmn-form .form_tbl tr td .input__name {
    margin-left: 1rem;
  }
  .cmn-form .form_tbl tr td .input__postcode {
    width: 24.3%;
    margin-left: 1rem;
  }
  .cmn-form .form_tbl tr td .input__addressBtn {
    width: 10.1rem;
  }
  .cmn-form .form_tbl tr td .input__privacy__box {
    display: flex;
    align-items: center;
  }
  .cmn-form .form_tbl tr td .input__wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .cmn-form .form_tbl tr td .input__wrap .input__box {
    width: 33rem;
    margin-bottom: 0;
  }
}

@media (min-width: 960px) and (min-width: 1200px) {
  .cmn-form .form_tbl tr td .input__wrap .input__box {
    width: 42rem;
  }
}

@media (min-width: 960px) {
  .cmn-form .form_tbl tr td .input__birth {
    width: 12rem;
  }
  .cmn-form .form_tbl tr td .input__blc {
    margin-bottom: 2.5rem;
  }
  .cmn-form .form_tbl tr td .input__catch {
    font-size: 1.8rem;
    margin-bottom: 3rem;
  }
  .cmn-form .form__btn {
    width: 30rem;
    height: 6rem;
    padding: 2rem;
    font-size: 1.6rem;
    transition: .3s ease-in-out;
    line-height: 1;
  }
  .cmn-form .form__btn:not(:disabled):hover {
    background-color: #258FAD;
    color: #FFF;
    cursor: pointer;
  }
  .cmn-form .form__btn:disabled {
    border-color: #e0e0e0;
    color: #e0e0e0;
    background-color: #F5F5F5;
  }
  .cmn-form .form__txt {
    margin-top: 3.5rem;
  }
}

/* form input tag
--------------------------------------*/
input[type="text"],
input[type="tel"],
textarea,
select {
  width: 100%;
  box-sizing: border-box;
  padding: 1.2rem 2rem;
  font-size: 1.3rem;
  line-height: 2.1;
  appearance: none;
  outline: none;
  border-radius: 0;
  background-color: #F5F5F5;
  border: none;
  border-radius: 5px;
}

input[type="radio"],
input[type="checkbox"] {
  display: none;
}

button,
input[type="submit"] {
  appearance: none;
  border: none;
  outline: none;
  background: none;
}

input[type="text"],
input[type="tel"],
select {
  height: 5rem;
}

select::-ms-expand {
  display: none;
}

@media (min-width: 960px) {
  input[type="text"],
  input[type="tel"],
  textarea,
  select {
    padding: 1rem 2.6rem;
    font-size: 1.5rem;
  }
  input[type="text"],
  input[type="tel"],
  select {
    height: 6rem;
  }
  select {
    cursor: pointer;
  }
}

/* その他
--------------------------------------*/
.check_box {
  display: block;
  margin-bottom: 2.5rem;
}

@media (min-width: 960px) {
  .check_box {
    margin-bottom: 0;
    margin-right: 4rem;
  }
}

/* select */
.selectWrap {
  width: 100%;
  position: relative;
}

.selectWrap::before, .selectWrap::after {
  content: "";
  position: absolute;
  pointer-events: none;
  z-index: 5;
}

.selectWrap::before {
  width: 5rem;
  height: 100%;
  background-color: #258FAD;
  top: 0;
  right: 0;
  border-radius: 0 5px 5px 0;
}

.selectWrap::after {
  width: 1rem;
  height: 1rem;
  border-right: #FFF 1px solid;
  border-bottom: #FFF 1px solid;
  top: 37%;
  right: 1.85rem;
  transform: rotate(45deg);
}

@media (min-width: 960px) {
  .selectWrap {
    width: 46.9rem;
  }
  .selectWrap::before {
    width: 6rem;
  }
  .selectWrap::after {
    right: 2.5rem;
  }
}

/* inputのボタンデザイン
--------------------------------------*/
label {
  display: inline-block;
}

.radio-btn::before,
.check-btn::before {
  content: "";
  background: #FFF;
  display: block;
  margin-right: 1rem;
  transform: translateY(-2px);
  transition: .3s;
  box-sizing: border-box;
}

.radio-btn span,
.check-btn span {
  display: block;
  font-size: 1.4rem;
}

.radio-btn {
  position: relative;
  display: flex;
  align-items: center;
  margin-right: 3rem;
}

.radio-btn::before {
  width: 3rem;
  height: 3rem;
  border: 1px solid #D7D7D7;
  border-radius: 100px;
}

.radio-btn::after {
  content: "";
  width: 2rem;
  height: 2rem;
  background-color: #258FAD;
  position: absolute;
  top: .3rem;
  left: .5rem;
  border-radius: 100px;
  opacity: 0;
  transition: .3s;
}

input[type="radio"]:checked + .radio-btn::after {
  opacity: 1;
}

.check-btn {
  position: relative;
  display: flex;
  align-items: center;
}

.check-btn::before {
  width: 5rem;
  height: 5rem;
  border: 2px solid #EBEBEB;
  box-sizing: border-box;
  border-radius: 5px;
}

.check-btn::after {
  content: "";
  width: 2rem;
  height: 1.2rem;
  border-left: 2px solid #FFF;
  border-bottom: 2px solid #FFF;
  position: absolute;
  left: 2.6rem;
  top: 50%;
  transform: rotate(-45deg) translateY(-130%);
  transition: .2s ease-in-out;
  opacity: .3;
}

input[type="checkbox"]:checked + .check-btn::before {
  opacity: 1;
}

input[type="checkbox"]:checked + .check-btn::after {
  opacity: 1;
  border-color: #998661;
}

.policy-btn {
  display: inline-block;
  margin-top: 1rem;
}

@media (min-width: 1200px) {
  label {
    cursor: pointer;
  }
  .radio-btn span,
  .check-btn span {
    width: auto;
    font-size: 1.6rem;
  }
  .check-btn::before {
    width: 4rem;
    height: 4rem;
    margin-right: 1rem;
    background-color: #FFF;
  }
  .check-btn::after {
    width: 2rem;
    height: 1rem;
    left: 2.2rem;
    transform: rotate(-45deg) translateY(-150%);
  }
  .radio-btn::before {
    transform: translateY(2px);
  }
  .radio-btn::after {
    width: 1.4rem;
    height: 1.4rem;
    top: 1rem;
    left: .8rem;
  }
  .policy-btn {
    margin-top: 0;
  }
}

/* placeholder
--------------------------------------*/
:placeholder-shown {
  color: #D7D7D7;
}

::-webkit-input-placeholder {
  color: #D7D7D7;
}

:-moz-placeholder {
  color: #D7D7D7;
}

::-moz-placeholder {
  color: #D7D7D7;
}

:-ms-input-placeholder {
  color: #D7D7D7;
}

/* confirm
--------------------------------------*/
@media (min-width: 960px) {
  .cmn-form .submit_box {
    display: flex;
    justify-content: space-evenly;
  }
}

/*====================================
 * ANIMATION *
====================================*/
/* ------------------------------- *
 * TEXT ANIMATION*
/* --- */
.anim-text {
  overflow: hidden;
  display: flex;
}

.anim-text span {
  display: block;
  transform: translate(0, 105%);
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
}

.anim-text span:nth-child(1) {
  transition-delay: 0.14s;
}

.anim-text span:nth-child(2) {
  transition-delay: 0.18s;
}

.anim-text span:nth-child(3) {
  transition-delay: 0.22s;
}

.anim-text span:nth-child(4) {
  transition-delay: 0.26s;
}

.anim-text span:nth-child(5) {
  transition-delay: 0.3s;
}

.anim-text span:nth-child(6) {
  transition-delay: 0.34s;
}

.anim-text span:nth-child(7) {
  transition-delay: 0.38s;
}

.anim-text span:nth-child(8) {
  transition-delay: 0.42s;
}

.anim-text span:nth-child(9) {
  transition-delay: 0.46s;
}

.anim-text span:nth-child(10) {
  transition-delay: 0.5s;
}

.anim-text span:nth-child(11) {
  transition-delay: 0.54s;
}

.anim-text span:nth-child(12) {
  transition-delay: 0.58s;
}

.anim-text span:nth-child(13) {
  transition-delay: 0.62s;
}

.anim-text span:nth-child(14) {
  transition-delay: 0.66s;
}

.anim-text span:nth-child(15) {
  transition-delay: 0.7s;
}

.anim-text span:nth-child(16) {
  transition-delay: 0.74s;
}

.anim-text span:nth-child(17) {
  transition-delay: 0.78s;
}

.anim-text span:nth-child(18) {
  transition-delay: 0.82s;
}

.anim-text span:nth-child(19) {
  transition-delay: 0.86s;
}

.anim-text span:nth-child(20) {
  transition-delay: 0.9s;
}

.anim-text span:nth-child(21) {
  transition-delay: 0.94s;
}

.anim-text span:nth-child(22) {
  transition-delay: 0.98s;
}

.anim-text span:nth-child(23) {
  transition-delay: 1.02s;
}

.anim-text span:nth-child(24) {
  transition-delay: 1.06s;
}

.anim-text span:nth-child(25) {
  transition-delay: 1.1s;
}

.anim-text span:nth-child(26) {
  transition-delay: 1.14s;
}

.anim-text span:nth-child(27) {
  transition-delay: 1.18s;
}

.anim-text span:nth-child(28) {
  transition-delay: 1.22s;
}

.anim-text span:nth-child(29) {
  transition-delay: 1.26s;
}

.anim-text span:nth-child(30) {
  transition-delay: 1.3s;
}

.anim-text span:nth-child(31) {
  transition-delay: 1.34s;
}

.anim-text span:nth-child(32) {
  transition-delay: 1.38s;
}

.anim-text span:nth-child(33) {
  transition-delay: 1.42s;
}

.anim-text span:nth-child(34) {
  transition-delay: 1.46s;
}

.anim-text span:nth-child(35) {
  transition-delay: 1.5s;
}

.anim-text span:nth-child(36) {
  transition-delay: 1.54s;
}

.anim-text span:nth-child(37) {
  transition-delay: 1.58s;
}

.anim-text span:nth-child(38) {
  transition-delay: 1.62s;
}

.anim-text span:nth-child(39) {
  transition-delay: 1.66s;
}

.anim-text span:nth-child(40) {
  transition-delay: 1.7s;
}

.anim-text span:nth-child(41) {
  transition-delay: 1.74s;
}

.anim-text span:nth-child(42) {
  transition-delay: 1.78s;
}

.anim-text span:nth-child(43) {
  transition-delay: 1.82s;
}

.anim-text span:nth-child(44) {
  transition-delay: 1.86s;
}

.anim-text span:nth-child(45) {
  transition-delay: 1.9s;
}

.anim-text span:nth-child(46) {
  transition-delay: 1.94s;
}

.anim-text span:nth-child(47) {
  transition-delay: 1.98s;
}

.anim-text span:nth-child(48) {
  transition-delay: 2.02s;
}

.anim-text span:nth-child(49) {
  transition-delay: 2.06s;
}

.anim-text span:nth-child(50) {
  transition-delay: 2.1s;
}

.anim-text.is--fire span {
  transform: translate(0, 0);
}

.anim-text--up {
  overflow: hidden;
  display: flex;
}

.anim-text--up span {
  display: block;
  transform: translate(0, 105%);
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
}

.anim-text--up span:nth-child(1) {
  transition-delay: 0.12s;
}

.anim-text--up span:nth-child(2) {
  transition-delay: 0.14s;
}

.anim-text--up span:nth-child(3) {
  transition-delay: 0.16s;
}

.anim-text--up span:nth-child(4) {
  transition-delay: 0.18s;
}

.anim-text--up span:nth-child(5) {
  transition-delay: 0.2s;
}

.anim-text--up span:nth-child(6) {
  transition-delay: 0.22s;
}

.anim-text--up span:nth-child(7) {
  transition-delay: 0.24s;
}

.anim-text--up span:nth-child(8) {
  transition-delay: 0.26s;
}

.anim-text--up span:nth-child(9) {
  transition-delay: 0.28s;
}

.anim-text--up span:nth-child(10) {
  transition-delay: 0.3s;
}

.anim-text--up span:nth-child(11) {
  transition-delay: 0.32s;
}

.anim-text--up span:nth-child(12) {
  transition-delay: 0.34s;
}

.anim-text--up span:nth-child(13) {
  transition-delay: 0.36s;
}

.anim-text--up span:nth-child(14) {
  transition-delay: 0.38s;
}

.anim-text--up span:nth-child(15) {
  transition-delay: 0.4s;
}

.anim-text--up span:nth-child(16) {
  transition-delay: 0.42s;
}

.anim-text--up span:nth-child(17) {
  transition-delay: 0.44s;
}

.anim-text--up span:nth-child(18) {
  transition-delay: 0.46s;
}

.anim-text--up span:nth-child(19) {
  transition-delay: 0.48s;
}

.anim-text--up span:nth-child(20) {
  transition-delay: 0.5s;
}

.anim-text--up span:nth-child(21) {
  transition-delay: 0.52s;
}

.anim-text--up span:nth-child(22) {
  transition-delay: 0.54s;
}

.anim-text--up span:nth-child(23) {
  transition-delay: 0.56s;
}

.anim-text--up span:nth-child(24) {
  transition-delay: 0.58s;
}

.anim-text--up span:nth-child(25) {
  transition-delay: 0.6s;
}

.anim-text--up span:nth-child(26) {
  transition-delay: 0.62s;
}

.anim-text--up span:nth-child(27) {
  transition-delay: 0.64s;
}

.anim-text--up span:nth-child(28) {
  transition-delay: 0.66s;
}

.anim-text--up span:nth-child(29) {
  transition-delay: 0.68s;
}

.anim-text--up span:nth-child(30) {
  transition-delay: 0.7s;
}

.anim-text--up span:nth-child(31) {
  transition-delay: 0.72s;
}

.anim-text--up span:nth-child(32) {
  transition-delay: 0.74s;
}

.anim-text--up span:nth-child(33) {
  transition-delay: 0.76s;
}

.anim-text--up span:nth-child(34) {
  transition-delay: 0.78s;
}

.anim-text--up span:nth-child(35) {
  transition-delay: 0.8s;
}

.anim-text--up span:nth-child(36) {
  transition-delay: 0.82s;
}

.anim-text--up span:nth-child(37) {
  transition-delay: 0.84s;
}

.anim-text--up span:nth-child(38) {
  transition-delay: 0.86s;
}

.anim-text--up span:nth-child(39) {
  transition-delay: 0.88s;
}

.anim-text--up span:nth-child(40) {
  transition-delay: 0.9s;
}

.anim-text--up span:nth-child(41) {
  transition-delay: 0.92s;
}

.anim-text--up span:nth-child(42) {
  transition-delay: 0.94s;
}

.anim-text--up span:nth-child(43) {
  transition-delay: 0.96s;
}

.anim-text--up span:nth-child(44) {
  transition-delay: 0.98s;
}

.anim-text--up span:nth-child(45) {
  transition-delay: 1s;
}

.anim-text--up span:nth-child(46) {
  transition-delay: 1.02s;
}

.anim-text--up span:nth-child(47) {
  transition-delay: 1.04s;
}

.anim-text--up span:nth-child(48) {
  transition-delay: 1.06s;
}

.anim-text--up span:nth-child(49) {
  transition-delay: 1.08s;
}

.anim-text--up span:nth-child(50) {
  transition-delay: 1.1s;
}

.anim-text--up.is--fire span {
  transform: translate(0, 0);
}

/*====================================
 * floatBnr *
====================================*/
.floatBnr {
  z-index: 200;
}

.floatBnr__item {
  width: calc(100% / 3 - 1px);
  height: 5rem;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #F5F5F5;
}

.floatBnr__icon {
  width: 1.6rem;
  height: 1.6rem;
}

.floatBnr__icon .svg_img {
  fill: #258FAD;
}

.floatBnr__txt {
  font-size: 1.4rem;
  font-weight: 700;
  color: #258FAD;
  letter-spacing: .1em;
  margin-left: 0.5rem;
}
.floatBnr__txt_skin {
  font-size: 1.4rem;
  font-weight: 700;
  color: #F06A7B;
  letter-spacing: .1em;
  margin-left: 0.5rem;
}

@media (max-width: 959px) {
  .floatBnr {
    width: 100%;
    display: flex;
    justify-content: space-between;
    position: fixed;
    bottom: 0;
    left: 0;
  }
}

@media (min-width: 960px) {
  .floatBnr {
    position: absolute;
    top: 0;
    right: 0;
  }
  .floatBnr__item {
    width: 6rem;
    height: auto;
    display: block;
    background-color: #FFF;
    padding: 2rem;
    margin-bottom: 0.5rem;
    border-radius: 5px 0 0 5px;
    border: 1px solid #EDF1F2;
    transition: .3s ease-in-out;
  }
  .floatBnr__item:hover {
    background-color: #258FAD;
    border-color: #258FAD;
  }
  .floatBnr__item:hover .floatBnr__icon .svg_img {
    fill: #FFF !important;
  }
  .floatBnr__item:hover .floatBnr__txt {
    color: #FFF;
  }
  .floatBnr__icon {
    width: 2rem;
    height: 2rem;
  }
  .floatBnr__icon .svg_img {
    transition: .3s ease-in-out;
  }
  .floatBnr__txt {
    margin-left: .2em;
    margin-top: 1rem;
    transition: .3s ease-in-out;
    -moz-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    text-align: left;
    display: inline-block;
  }
}

/*====================================
 * XXX *
====================================*/
/* ------------------------------- */
/* XXX */
/* --- */
/*# sourceMappingURL=common.css.map */