@charset "utf-8";
/* LESS Document */
.layout-base {
  position: relative;
  box-sizing: border-box;
}
.ly_fullsize {
  width: 100%;
  height: 100%;
}
#my_caos {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: block;
  overflow: hidden;
  font-family: '游ゴシック Medium', YuGothic, YuGothicM, 'Hiragino Kaku Gothic ProN', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, sans-serif;
}
.myc-slider {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: block;
  overflow: hidden;
}
.myc-slider img {
  vertical-align: top;
  width: 100%;
}
.myc-slider a {
  display: block;
}
.myc-slider .myc-slider-ttl {
  position: absolute;
  box-sizing: border-box;
  display: block;
  width: 45%;
  margin: auto;
  bottom: 2.8rem;
  left: 0;
  right: 0;
  z-index: 2;
}
.myc-key-v {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: block;
  padding: 3.8rem 15% 7.3rem 15%;
  overflow: hidden;
  background: url("../img/top-mss-bg.png") bottom center no-repeat #67b0cd;
  background-size: 100%;
}
.myc-key-v .myc-key-v-img {
  position: relative;
  box-sizing: border-box;
  width: 70%;
  display: block;
  margin: 0 auto 1.5rem auto;
}
.myc-key-v .myc-key-v-icon {
  position: relative;
  box-sizing: border-box;
  width: 20%;
  display: block;
  margin: 0 auto;
}
.myc-key-v .myc-key-v-tx {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  margin: 0 auto 2rem auto;
  text-align: center;
  color: #063487;
  font-size: 1.1rem;
  line-height: 2.1rem;
  letter-spacing: 0.05rem;
}
.myc-cnt-wrap {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: block;
  overflow: hidden;
}
.myc-cnt-area {
  position: relative;
  box-sizing: border-box;
  display: block;
  width: 100%;
}
.myc-brk-pt {
  display: inline-block;
}
.myc-pc-view {
  display: block !important;
}
.myc-sp-view {
  display: none !important;
}
@media screen and (max-width: 751px) {
  .myc-slider .myc-slider-ttl {
    width: 60%;
    margin: auto;
    bottom: 1.6vw;
    left: 0;
    right: 0;
    z-index: 2;
  }
  .myc-key-v {
    background-size: 118%;
    background-position: center bottom -3.8vw;
    padding: 6vw 5% 8vw 5%;
  }
  .myc-key-v .myc-key-v-img {
    width: 90%;
    margin: 0 auto 2.9vw auto;
  }
  .myc-key-v .myc-key-v-icon {
    width: 28%;
    margin: 0 auto;
  }
  .myc-key-v .myc-key-v-tx {
    margin: 0 auto 1.4vw auto;
    font-size: 3.8vw;
    line-height: 8vw;
  }
  .myc-pc-view {
    display: none !important;
  }
  .myc-sp-view {
    display: block !important;
  }
}
/* Modal Window
--------------------------------------------------------------------------*/
input[type=checkbox] {
  transition: all 0.3s;
  box-sizing: border-box;
  display: none;
}
.w-modal_overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  overflow: hidden;
  top: 0;
  left: 0;
  background: rgba(171, 196, 223, 0.94);
  opacity: 0;
  transition: opacity 0.3s, transform 0s 0.3s;
  transform: scale(0);
  z-index: 6000;
}
.w-modal_trigger {
  position: fixed;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 501;
}
.w-modal_content {
  position: absolute;
  display: none;
  width: 100%;
  height: 100%;
  margin: auto;
  overflow: auto;
  box-sizing: border-box;
  transform: scale(1.2);
  transition: 0.3s;
  z-index: 502;
}
.wm_close_button {
  display: none;
  position: fixed;
  box-sizing: border-box;
  width: 5rem;
  height: 5rem;
  top: 0;
  right: 1.3rem;
  padding: 1.3rem;
  line-height: 1;
  color: #FFF;
  cursor: pointer;
  z-index: 505;
}
.w-modal_wrap .cnt-box0 {
  padding: 0 1rem 0 1rem;
}
.pp_movie-youtube-w {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  max-width: 62.5rem;
  margin: auto;
  z-index: 503;
}
.pp_movie-youtube {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
.pp_movie-youtube iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.pp-movie-box {
  padding: 1rem;
}
.w-modal_wrap input:checked ~ .w-modal_overlay {
  opacity: 1;
  transform: scale(1);
  transition: opacity 0.3s;
}
.w-modal_wrap input:checked ~ .w-modal_overlay .w-modal_content {
  transform: scale(1);
  display: flex;
}
.w-modal_wrap input:checked ~ .w-modal_overlay .wm_close_button {
  display: block;
}
.w-modal_wrap input:checked ~ .w-modal_overlay .pp_movie-youtube {
  display: block;
}
.wm_open_button {
  position: relative;
  display: block;
  cursor: pointer;
  transform: scale(1, 1);
  transition: all 0.5s ease 0s;
  z-index: 2;
}
.wm_open_button:hover {
  transform: scale(1.05, 1.05);
}
@media screen and (max-width: 751px) {
  .wm_close_button {
    right: 0rem;
    width: 4rem;
    height: 4rem;
    padding: 1.1rem;
  }
  .pp-movie-box {
    padding: 0;
  }
  .wm_open_button:hover {
    transform: scale(1, 1);
    z-index: 1;
  }
}
/* Youtube
--------------------------------------------------------------------------*/
.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 1px;
  right: 0;
}
/* Top bnr
--------------------------------------------------------------------------*/
figure.myc-top-cnt {
  position: relative;
  overflow: hidden;
  width: 100%;
  color: #000000;
  text-align: center;
  display: flex;
  align-items: center;
}
figure.myc-top-cnt img {
  opacity: 1;
  width: 100%;
  vertical-align: top;
}
figure.myc-top-cnt:after,
figure.myc-top-cnt:before {
  background: #ffffff;
  width: 200%;
  height: 200%;
  position: absolute;
  content: '';
  opacity: 0.5;
  -webkit-transition: all 0.55s ease-in-out;
  transition: all 0.55s ease-in-out;
  z-index: 1;
}
figure.myc-top-cnt:before {
  right: 0;
  bottom: 0;
  -webkit-transform: skew(-45deg) translateX(150%);
  transform: skew(-45deg) translateX(150%);
}
figure.myc-top-cnt:after {
  top: 0;
  left: 0;
  -webkit-transform: skew(-45deg) translateX(-150%);
  transform: skew(-45deg) translateX(-150%);
}
figure.myc-top-cnt figcaption {
  position: absolute;
  display: block;
  top: 15%;
  left: 0;
  width: 56%;
  color: #FFF;
  font-family: Oswald;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 2;
  transition: color 0.6s ease;
}
figure.myc-top-cnt figcaption p.myc-top-cnt-number {
  font-size: 2.8rem;
  font-weight: 400;
  letter-spacing: 0.2rem;
  margin-bottom: 1.3rem;
}
figure.myc-top-cnt figcaption p.myc-top-cnt-job {
  font-size: 1.2rem;
  font-weight: 400;
  letter-spacing: 0.2rem;
  margin-bottom: 0.8rem;
}
figure.myc-top-cnt figcaption p.myc-top-cnt-en {
  font-size: 3.3rem;
  font-weight: 400;
  letter-spacing: 0.2rem;
  margin-bottom: 1.1rem;
}
figure.myc-top-cnt figcaption p.myc-top-cnt-bt {
  position: relative;
  box-sizing: border-box;
  font-size: 0.85rem;
  border: solid 1px #FFF;
  border-radius: 2rem;
  padding: 0.1rem 0.6rem 0.2rem 0.6rem;
  letter-spacing: 0.08rem;
  font-weight: 400;
  width: 6rem;
  margin: 0 auto 1.6rem auto;
  transition: border 0.6s ease;
}
figure.myc-top-cnt figcaption h3.myc-top-cnt-wa {
  font-family: '游ゴシック Medium', YuGothic, YuGothicM, 'Hiragino Kaku Gothic ProN', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, sans-serif !important;
  font-size: 1.9rem;
  font-weight: 500;
  letter-spacing: 0.5rem;
  margin-bottom: 1.1rem;
}
figure.myc-top-cnt figcaption.top-cnt-r {
  right: 0;
  left: auto;
}
figure.myc-top-cnt-cs {
  position: relative;
  overflow: hidden;
  width: 100%;
  color: #000000;
  text-align: center;
  display: flex;
  align-items: center;
}
figure.myc-top-cnt-cs img {
  opacity: 1;
  width: 100%;
  vertical-align: top;
}
figure.myc-top-cnt-cs figcaption {
  position: absolute;
  display: block;
  top: 43%;
  left: 0;
  width: 56%;
  color: #FFF;
  font-family: Oswald;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 2;
  transition: color 0.6s ease;
}
figure.myc-top-cnt-cs figcaption p.myc-top-cnt-en {
  font-size: 3.3rem;
  font-weight: 400;
  letter-spacing: 0.2rem;
  margin-bottom: 1.1rem;
}
figure.myc-top-cnt * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
}
figure.myc-top-cnt a {
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  position: absolute;
  z-index: 2;
}
figure.myc-top-cnt:hover figcaption,
figure.myc-top-cnt.hover figcaption {
  color: #000;
}
figure.myc-top-cnt:hover figcaption p.myc-top-cnt-bt,
figure.myc-top-cnt.hover figcaption p.myc-top-cnt-bt {
  border: solid 1px #000;
}
figure.myc-top-cnt:hover img,
figure.myc-top-cnt.hover img {
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
}
figure.myc-top-cnt:hover:after,
figure.myc-top-cnt.hover:after {
  -webkit-transform: skew(-45deg) translateX(-50%);
  transform: skew(-45deg) translateX(-50%);
}
figure.myc-top-cnt:hover:before,
figure.myc-top-cnt.hover:before {
  -webkit-transform: skew(-45deg) translateX(50%);
  transform: skew(-45deg) translateX(50%);
}
@media screen and (max-width: 1215px) {
  figure.myc-top-cnt figcaption {
    top: 50%;
    left: 0;
    width: 56%;
  }
  figure.myc-top-cnt figcaption p.myc-top-cnt-number {
    font-size: 3.8vw;
    letter-spacing: 0.3vw;
    margin-bottom: 1.8vw;
  }
  figure.myc-top-cnt figcaption p.myc-top-cnt-job {
    font-size: 1.6vw;
    letter-spacing: 0.25vw;
    margin-bottom: 1vw;
  }
  figure.myc-top-cnt figcaption p.myc-top-cnt-en {
    font-size: 4.4vw;
    letter-spacing: 0.25vw;
    margin-bottom: 1.5vw;
  }
  figure.myc-top-cnt figcaption p.myc-top-cnt-bt {
    font-size: 1.1vw;
    border-radius: 2rem;
    padding: 0.1rem 0.8vw 0.2rem 0.8vw;
    letter-spacing: 0.1vw;
    width: 7.8vw;
    margin: 0 auto 2vw auto;
  }
  figure.myc-top-cnt figcaption h3.myc-top-cnt-wa {
    font-size: 2.5vw;
    letter-spacing: 0.5vw;
    margin-bottom: 1.5vw;
  }
  figure.myc-top-cnt figcaption.top-cnt-r {
    right: 0;
    left: auto;
  }
  figure.myc-top-cnt-cs figcaption p.myc-top-cnt-en {
    font-size: 4.4vw;
    letter-spacing: 0.25vw;
    margin-bottom: 1.5vw;
  }
}
@media screen and (max-width: 751px) {
  figure.myc-top-cnt figcaption {
    top: 50%;
    left: 0;
    width: 56%;
  }
  figure.myc-top-cnt figcaption p.myc-top-cnt-number {
    font-size: 4.6vw;
    letter-spacing: 0.5vw;
    margin-bottom: 1.8vw;
  }
  figure.myc-top-cnt figcaption p.myc-top-cnt-job {
    font-size: 2.8vw;
    margin-bottom: 1vw;
  }
  figure.myc-top-cnt figcaption p.myc-top-cnt-en {
    font-size: 6vw;
    letter-spacing: 0.4vw;
    margin-bottom: 1.5vw;
  }
  figure.myc-top-cnt figcaption p.myc-top-cnt-bt {
    font-size: 2.4vw;
    border-radius: 2rem;
    padding: 0.1rem 0.8vw 0.2rem 0.8vw;
    width: 13.8vw;
    margin: 0 auto 1vw auto;
  }
  figure.myc-top-cnt figcaption h3.myc-top-cnt-wa {
    font-size: 3.6vw;
    letter-spacing: 0.25vw;
    margin-bottom: 1.5vw;
  }
  figure.myc-top-cnt figcaption.top-cnt-r {
    right: 0;
    left: auto;
  }
  figure.myc-top-cnt-cs figcaption p.myc-top-cnt-en {
    font-size: 6vw;
    letter-spacing: 0.4vw;
    margin-bottom: 1.5vw;
  }
}
