body {
  font-family: "Noto Sans JP", sans-serif;
  letter-spacing: .04em;
  position: relative
}

.hp_inner {
  padding-left: 15px;
  padding-right: 15px;
  letter-spacing: .04em
}

.ff_termina {
  font-family: "termina"
}

@-webkit-keyframes slideL {
  0% {
    -webkit-clip-path: inset(0 100% 0 0);
    clip-path: inset(0 100% 0 0)
  }

  100% {
    -webkit-clip-path: inset(0);
    clip-path: inset(0)
  }
}

@keyframes slideL {
  0% {
    -webkit-clip-path: inset(0 100% 0 0);
    clip-path: inset(0 100% 0 0)
  }

  100% {
    -webkit-clip-path: inset(0);
    clip-path: inset(0)
  }
}

.js_openAnime {
  opacity: 0
}

.js_slideL span {
  -webkit-clip-path: inset(0 100% 0 0);
  clip-path: inset(0 100% 0 0)
}

.js_slideL.js_on span {
  -webkit-animation: slideL .5s ease-in forwards;
  animation: slideL .5s ease-in forwards
}

.js_slideL.js_on>span:nth-of-type(2) {
  -webkit-animation-delay: .15s;
  animation-delay: .15s
}

.js_slideL.js_on>span:nth-of-type(3) {
  -webkit-animation-delay: .3s;
  animation-delay: .3s
}

.js_slideL.js_on>span:nth-of-type(4) {
  -webkit-animation-delay: .45s;
  animation-delay: .45s
}

.js_hopUp {
  opacity: 0;
  -webkit-transform: translateY(20px);
  transform: translateY(20px);
  -webkit-transition: all .4s ease-in;
  transition: all .4s ease-in
}

.js_hopUp.js_on {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0)
}

.bgDeco_wrapper picture,
.bgDeco_wrapper img {
  display: block;
  position: fixed;
  z-index: 1
}

.bgDeco_1 {
  width: 170px;
  top: -78px;
  left: 106px
}

.bgDeco_2 {
  width: 108px;
  top: -13px;
  left: 180px
}

.bgDeco_3 {
  width: 250px;
  bottom: -116px;
  left: -102px
}

.bgDeco_4 {
  width: 108px;
  bottom: -42px;
  left: 232px
}

.bgDeco_5 {
  bottom: -116px;
  left: 233px;
  width: 173px
}

.bgDeco_6 {
  width: 248px;
  bottom: 116px;
  left: -80px
}

.bgDeco_7 {
  width: 63px;
  top: 203px;
  left: 86px
}

.bgDeco_8 {
  width: 248px;
  right: 294px;
  top: -150px
}


.bgDeco_9 {
  width: 63px;
  right: 63px;
  top: 12px
}

.bgDeco_10 {
  width: 108px;
  right: -48px;
  top: 88px
}

.bgDeco_11 {
  width: 160px;
  right: -118px;
  top: 80px
}

.bgDeco_12 {
  width: 108px;
  right: -69px;
  bottom: 212px
}

.bgDeco_13 {
  width: 248px;
  bottom: -63px;
  right: -42px
}

.left {
  position: fixed;
  top: 0;
  left: 0;
  width: calc((100% - 400px)/2);
  height: 100%;
  background-image: url("../images/bg_noise.gif");
  background-color: rgba(255, 255, 255, .7);
  background-blend-mode: lighten;
  z-index: 0
}

.left_inner {
  width: 255px;
  padding: 100px 60px 0 15px;
  margin-right: 0;
  margin-left: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: end;
  row-gap: 50px
}

.right {
  position: fixed;
  top: 0;
  right: 0;
  width: calc((100% - 400px)/2);
  height: 100%;
  background-image: url("../images/bg_noise.gif");
  background-color: rgba(255, 255, 255, .7);
  background-blend-mode: lighten;
  z-index: 0;
  min-width: 348px;
  padding-left: 15px;
  padding-right: 15px
}

.right_inner {
  padding: 100px 0 0 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  width: 318px
}

.main {
  width: 100%;
  max-width: 400px;
  margin: 0 auto;
  background-image: url("../images/bg_noise.gif");
  background-color: rgba(255, 255, 255, .7);
  background-blend-mode: lighten;
  padding-top: 40px;
  position: relative;
  z-index: 3
}

.main_inner {
  border-radius: 20px 20px 0 0;
  background-color: #fff;
  overflow: hidden;
  position: relative;
  z-index: 2
}

.left_logo {
  width: 180px;
  position: relative
}

.left_logo::before {
  content: "";
  background-image: url("../images/left_logo_ring.png");
  display: block;
  width: 100px;
  height: 100px;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  z-index: 2;
  top: -60px;
  left: -60px;
  -webkit-animation: 4s linear infinite rotation;
  animation: 4s linear infinite rotation
}

.left_logo img {
  position: relative;
  z-index: 3;
  width: 100%
}

@-webkit-keyframes rotation {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0)
  }

  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg)
  }
}

@keyframes rotation {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0)
  }

  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg)
  }
}

.left_nav {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 16px
}

.left_nav_item {
  font-size: 20px;
  font-weight: 700;
  color: #aaa;
  text-align: center;
  padding: 6px 0;
  position: relative
}

.left_nav_item.js_actve {
  color: #0021e1
}

.left_nav_item.js_actve:before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 5px;
  background-color: #0021e1;
  position: absolute;
  left: 4px;
  top: calc(50% - 5px)
}

.left_nav_item.js_actve.js_active__stop {
  color: #aaa
}

.left_nav_item.js_actve.js_active__stop:before {
  content: none
}

.fv {
  background-color: #0021e1;
  height: 710px;
  position: relative;
  overflow: hidden
}
.fv_archive {
  content: '';
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  background-image: url('../images/fv_archive.webp');
  /* background-image: url('../images/fv_archive.png'); */
  background-size: cover;
  background-repeat: no-repeat;
  z-index: 1;
}

.fv_bgDeco_1 {
  position: absolute;
  width: 180px;
  top: -98px;
  left: 45px;
  z-index: 2
}

.fv_bgDeco_2 {
  position: absolute;
  width: 180px;
  bottom: -82px;
  right: 32px;
  z-index: 2
}

.fv_bgDeco_3 {
  position: absolute;
  width: 120px;
  bottom: 280px;
  right: -65px;
  z-index: 2
}

.fv_bgDeco_4 {
  position: absolute;
  width: 80px;
  bottom: 253px;
  right: -40px;
  z-index: 2
}

.fv_bgDeco_5 {
  position: absolute;
  width: 28px;
  bottom: 173px;
  right: 6px;
  z-index: 3
}

.fv_bgDeco_6 {
  position: absolute;
  width: 28px;
  top: 117px;
  left: 0px;
  z-index: 4;
}

.fv_cont {
  position: absolute;
  top: 140px;
  width: 100%;
  z-index: 2;
}

.fv_lv1Ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 74px;
  color: #fff;
  font-weight: 700;
  width: 100%;
  text-align: center;
  line-height: 1.1;
  letter-spacing: .1em;
  text-shadow: 0 0 7px #0021e1, 0 0 7px #0021e1, 0 0 7px #0021e1, 0 0 7px #0021e1, 0 0 7px #0021e1, 0 0 7px #0021e1, 0 0 7px #0021e1, 0 0 7px #0021e1, 0 0 7px #0021e1, 0 0 7px #0021e1, 0 0 7px #0021e1, 0 0 7px #0021e1, 0 0 7px #0021e1, 0 0 7px #0021e1, 0 0 7px #0021e1, 0 0 7px #0021e1
}

.fv_lv1Ttl>span {
  opacity: 0
}

.fv_lv1Ttl .mod_yellow {
  color: #fff100
}

.fv_lv1Ttl .mod_showy {
  font-size: 110px;
  display: inline-block;
  -webkit-transform: translateY(7px);
  transform: translateY(7px)
}

.fv_point_unit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 18px;
  padding-top: 30px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
  margin-right: auto
}

.fv_point {
  font-size: 19px;
  color: #fff;
  font-weight: 600;
  letter-spacing: .06em;
  padding-left: 20px;
  position: relative
}

.fv_point::before {
  content: "";
  width: 16px;
  height: 16px;
  border-radius: 8px;
  background-image: url("../images/fv_point_icon.png");
  background-size: contain;
  position: absolute;
  left: -1px;
  top: 4px
}

.fv_authority {
  display: block;
  width: 280px;
  margin-top: 28px;
  margin-left: auto;
  margin-right: auto
}

.archiveSlider {
  padding-top: 10px;
  padding-bottom: 10px;
  opacity: 0;
  height: 120px
}

.archiveSlider.slick-initialized {
  opacity: 1
}

.archiveSlider_slide {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  height: 100px !important;
  position: relative
}

.archiveSlider_slide img {
  width: 94%;
  height: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%)
}

.aboutSec {
  background-color: #ececec;
  padding-top: 46px;
  padding-bottom: 240px;
  position: relative;
  overflow: hidden
}

.aboutSec:before {
  content: "";
  display: block;
  background-image: url("../images/about_ttl_en.png");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 300px
}

.aboutSec_bgDeco_1 {
  position: absolute;
  top: 120px;
  width: 120px;
  right: -50px
}

.aboutSec_bgDeco_2 {
  position: absolute;
  bottom: 74px;
  left: -47px;
  width: 90px
}

.aboutSec_bgDeco_3 {
  position: absolute;
  bottom: 18px;
  left: -51px;
  width: 100px
}

.aboutSec_bgDeco_4 {
  position: absolute;
  width: 90px;
  right: -50px;
  bottom: 0
}

.aboutSec_bgDeco_5 {
  position: absolute;
  width: 100px;
  right: -40px;
  bottom: 80px
}

.aboutSec_bgDeco_6 {
  position: absolute;
  width: 36px;
  right: 15px;
  top: 250px
}

.sectionCont {
  z-index: 3;
  position: relative
}

.slideInHeading {
  position: relative;
  color: #0021e1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 14px
}

.slideInHeading span {
  display: block;
  font-weight: 500;
  letter-spacing: .06em;
  background-color: #fff;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  line-height: 1.6;
  font-size: 39px;
  padding-left: .3em;
  padding-right: .2em;
  padding-bottom: .08em
}

.slideInHeading span.mod_yellow {
  background-color: #fff655
}

.aboutSec_desc {
  padding-top: 26px;
  line-height: 2.5;
  font-size: 14px;
  color: #0021e1;
  font-weight: 500
}

.aboutSec_illust {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  margin-bottom: -100px
}

.planSec {
  background-color: #fff655;
  padding-top: 40px;
  padding-bottom: 30px
}

.sectionTtl {
  text-align: center;
  color: #0021e1
}

.sectionTtl span {
  display: block
}

.sectionTtl_en {
  font-size: 48px;
  font-weight: 700
}

.sectionTtl_ja {
  font-size: 12px;
  padding-top: 3px
}

.planSec_cont {
  padding-top: 28px
}

.planSec_heading {
  font-size: 42px;
  text-align: center;
  color: #0021e1;
  padding-bottom: 10px
}

.planSec_heading_num {
  font-size: 85px
}

.planSec_cont_table {
  display: block;
  width: 100%
}

.workSec {
  padding-top: 50px;
  padding-bottom: 30px
}

.workSec_cont {
  padding-top: 46px
}

.workSec_tab_unit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 14px;
  -moz-column-gap: 14px;
  flex-wrap: wrap;
  justify-content: center;
  column-gap: 17px;
  row-gap: 13px;
  padding: 0 10px;
  overflow-x: auto;
  /* overflow-y: hidden; */
  max-width: 100%
}

.workSec_tab_unit::-webkit-scrollbar {
  display: none
}

.workSec_tab {
  color: #0021e1;
  border: 1px solid #0021e1;
  padding: .3em .8em;
  font-size: 14px;
  font-weight: bold;
  border-radius: 13px;
  letter-spacing: .04em
}

.workSec_tab.js_on {
  background-color: #0021e1;
  color: #fff
}

.workSec_panel_unit {
  padding-top: 30px;
  position: relative
}

.workSec_panel_unit.js_loading {
  height: 320px
}

.workSec_panel_unit.js_loading:after {
  content: "";
  display: block;
  width: 60px;
  height: 60px;
  background-image: url("../images/spin-gray.svg");
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%)
}

.workSec_panel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-column-gap: 10px;
  -moz-column-gap: 10px;
  column-gap: 10px;
  row-gap: 18px;
  display: none
}

.workSec_panel.js_on {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

.workSec_panel_item {
  width: calc((100% - 10px)/2)
}

.workSec_panel_item img,
.workSec_panel_item video
{
  display: block;
  width: 100%;
  height: 265px;
  border-radius: 4px;
  object-fit: cover;
  /* border: 1px solid */
  position: relative;
}
.workSec_panel_item img::after,
.workSec_panel_item video::after{
  content: '';
  display: block;
  width: 60px;
  height: 41px;
  background-image: url('../images/play-icon.png');
  background-size: cover;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}

.workSec_panel_item img {
  filter: grayscale(100%);
}
.workSec_panel_item video {
  
}
.workSec_panel_item p {
  font-size: 13px;
  color: #9e9e9e;
  line-height: 1.4;
  padding-top: 4px
}

.meritSec {
  padding-top: 46px;
  padding-bottom: 30px;
  background-color: #ececec
}

.meritSec_cont {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 14px;
  padding-top: 48px
}

.meritSec_card {
  display: block;
  width: 100%;
  height: 230px;
  border: 2px solid #0021e1;
  color: #0021e1;
  background-color: #fff;
  position: relative;
  cursor: pointer
}

.meritSec_card_front {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 3;
  padding-left: 96px;
  padding-top: 32px;
  padding-bottom: 32px
}

.meritSec_card_front::before {
  content: "";
  display: block;
  width: 100%;
  height: 100px;
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center left;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}

.meritSec_card_front p {
  font-size: 21px;
  line-height: 1.8;
  font-weight: 500
}

.meritSec_card_front_inner {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}

.meritSec_card.meritSec_card__1 .meritSec_card_front::before {
  background-image: url("../images/meritcard_front_bg_1.png");
  height: 110px
}

.meritSec_card.meritSec_card__2 .meritSec_card_front::before {
  background-image: url("../images/meritcard_front_bg_2.png")
}

.meritSec_card.meritSec_card__3 .meritSec_card_front::before {
  background-image: url("../images/meritcard_front_bg_3.png")
}

.meritSec_card_back {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 4;
  opacity: 0;
  background-color: #0021e1;
  -webkit-transition: opacity .3s;
  transition: opacity .3s;
  padding-left: 42px;
  color: #fff655
}

.meritSec_card_back.js_on {
  opacity: 1
}

.meritSec_card_back p {
  font-size: 16px;
  padding-left: 22px;
  position: relative
}

.meritSec_card_back p:before {
  content: "";
  display: block;
  width: 14px;
  height: 14px;
  background-image: url("../images/meritcard_check.png");
  background-size: contain;
  position: absolute;
  left: 0;
  top: 3px
}

.meritSec_card_back_inner {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 16px
}

.meritSec_card_toggleBtn {
  position: absolute;
  bottom: 10px;
  right: 10px;
  display: block;
  width: 22px;
  height: 22px;
  background-image: url("../images/merit_cart_toggle.png");
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 5;
  -webkit-transition: all .3s;
  transition: all .3s
}

.meritSec_card_toggleBtn:hover {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg)
}

.meritSec_card_toggleBtn.js_on {
  background-image: url("../images/merit_cart_toggle_white.png")
}

.appeal1Sec {
  padding-top: 32px;
  position: relative
}

.appeal1Sec_topTxt {
  position: absolute;
  font-size: 15px;
  color: #0021e1;
  top: -9px;
  left: 0;
  text-align: center;
  width: 100%
}

.appeal1Sec_txt {
  font-size: 22px;
  letter-spacing: .01em;
  font-weight: 600;
  line-height: 1.9;
  color: #0021e1;
  text-align: center
}

.appeal1Sec_txt .mod_yellow {
  display: inline-block;
  background-color: #fff655;
  padding-left: 3px;
  padding-right: 3px;
  line-height: 1.2
}

.appeal1Sec_txt .mod_num {
  font-size: 39px;
  font-family: "termina"
}

.appeal1Sec_img {
  display: block;
  width: 100%;
  margin-top: -160px
}

.appealSec2 {
  background-color: #000;
  padding-top: 43px;
  position: relative;
  overflow: hidden
}

.appealSec2::before {
  content: " ";
  display: block;
  width: 500px;
  height: 250px;
  background-color: #0021e1;
  -webkit-transform: rotate(14deg);
  transform: rotate(14deg);
  -webkit-transform-origin: left top;
  transform-origin: left top;
  position: absolute;
  bottom: -200px;
  left: 1px
}

.appealSec2::after {
  content: " ";
  display: block;
  width: 500px;
  height: 250px;
  background-color: #0021e1;
  -webkit-transform: rotate(-14deg);
  transform: rotate(-14deg);
  -webkit-transform-origin: right top;
  transform-origin: right top;
  position: absolute;
  bottom: -200px;
  right: 1px
}

.appealSec2_cont_speech {
  background-color: #fff;
  font-size: 14px;
  position: absolute;
  line-height: 1.5;
  padding: .9em 1.2em
}

.appealSec2_cont_speech.mod_1 {
  border-radius: 23px;
  top: 60px;
  left: 160px
}

.appealSec2_cont_speech.mod_1:before {
  font-size: 12px;
  content: "▼";
  color: #fff;
  position: absolute;
  left: -8px;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  top: calc(50% - 10px)
}

.appealSec2_cont_speech.mod_2 {
  border-radius: 35px;
  top: 116px;
  left: 140px
}

.appealSec2_cont_speech.mod_2:before {
  font-size: 12px;
  content: "▼";
  color: #fff;
  position: absolute;
  left: -8px;
  top: calc(50% - 10px);
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg)
}

.appealSec2_cont_speech.mod_3 {
  border-radius: 35px;
  top: 60px;
  left: 24px
}

.appealSec2_cont_speech.mod_3:before {
  font-size: 12px;
  content: "▼";
  color: #fff;
  position: absolute;
  right: -8px;
  top: calc(50% - 10px);
  -webkit-transform: rotate(30deg);
  transform: rotate(30deg)
}

.appealSec2_cont_speech .mod_blue {
  color: #0021e1
}

.appealSec2_cont_1 {
  height: 238px;
  position: relative
}

.appealSec2_cont_1_moya {
  position: absolute;
  width: 350px;
  right: -121px;
  top: -188px;
  z-index: 2
}

.appealSec2_cont_2 {
  height: 222px;
  position: relative
}

.appealSec2_cont_1_person {
  position: absolute;
  left: -25px;
  top: -60px;
  width: 90%;
  max-height: none;
}

.appealSec2_cont_2_person {
  position: absolute;
  bottom: 0;
  right: -25px;
  width: 90%;
  max-height: none;
}

.appealSec3 {
  background-color: #0021e1;
  height: 580px;
  position: relative;
  overflow: hidden
}

.appealSec3_bgDeco_1 {
  position: absolute;
  width: 30px;
  left: 18px;
  top: 0px
}

.appealSec3_bgDeco_2 {
  position: absolute;
  width: 160px;
  top: 80px;
  left: -65px
}

.appealSec3_bgDeco_3 {
  position: absolute;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  width: 62px;
  right: -31px;
  top: 67px
}

.appealSec3_bgDeco_4 {
  position: absolute;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  width: 100px;
  right: -53px
}

.appealSec3_bgDeco_5 {
  position: absolute;
  width: 100px;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  bottom: 100px;
  left: -53px
}

.appealSec3_bgDeco_6 {
  position: absolute;
  width: 62px;
  left: -31px;
  bottom: 72px;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg)
}

.appealSec3_bgDeco_7 {
  position: absolute;
  width: 30px;
  right: 18px;
  bottom: 140px
}

.appealSec3_bgDeco_8 {
  position: absolute;
  bottom: -30px;
  right: -64px;
  width: 160px
}

.appealSec3_cont {
  position: absolute;
  top: 120px;
  width: 100%
}

.appealSec3_logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 200px;
  height: 232px;
  margin-left: auto;
  margin-right: auto;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-column-gap: 4px;
  -moz-column-gap: 4px;
  column-gap: 4px;
  row-gap: 6px
}

.appealSec3_logo .appealSec3_logo_img {
  width: calc(50% - 2px)
}

.appealSec3_logo .appealSec3_logo_img img {
  width: 100%
}

.appealSec3_logo .appealSec3_logo_img:last-child {
  width: calc(50% - 2px + 14px);
  margin-left: -14px
}

.appealSec3_txt {
  text-align: center;
  color: #fff;
  font-weight: 600;
  padding: 17px;
  font-size: 34px;
  padding-left: 1.2em;
  -webkit-transition-delay: .3s;
  transition-delay: .3s
}

.appealSec3_bottom {
  font-size: 40px;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  text-align: center;
  color: #fff;
  padding-left: 24px
}

.point3Sec {
  padding-top: 50px;
  padding-bottom: 44px;
  position: relative
}

.point3Sec:before {
  content: "";
  display: block;
  width: 100%;
  height: 200px;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0
}

.point3Sec_ttl {
  font-size: 42px;
  text-align: center;
  font-weight: 600;
  letter-spacing: .04em
}

.point3Sec_ttl .mod_num {
  font-size: 50px
}

.point3Sec_ttl .mod_mini {
  font-size: 27px
}

.point3Sec_IllustGif {
  position: relative
}

.point3Sec_IllustGif img {
  width: 100%
}

.point3Sec_desc {
  font-size: 15px;
  text-align: center;
  line-height: 2;
  font-weight: 500;
  letter-spacing: .04em;
  margin-top: -30px
}

.speedSec {
  background-color: #e4e4e4
}

.speedSec::before {
  background-image: url("../images/speedsec_ttl.png")
}

.speedSec .point3Sec_ttl {
  color: #0021e1
}

.speedSec .point3Sec_desc {
  color: #0021e1
}

.priceSec {
  background-color: #0021e1
}

.priceSec::before {
  background-image: url("../images/pricesec_ttl.png")
}

.priceSec .point3Sec_ttl {
  color: #fff
}

.priceSec .point3Sec_desc {
  color: #fff
}

.qualitySec {
  background-color: #e4e4e4
}

.qualitySec::before {
  background-image: url("../images/qualitysec_ttl.png")
}

.qualitySec .point3Sec_ttl {
  color: #0021e1
}

.qualitySec .point3Sec_desc {
  color: #0021e1
}

.mapSec {
  height: 343px;
  background-color: #0021e1;
  position: relative
}

.mapSec:before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background-image: url("../images/japanmap.png");
  background-size: cover;
  background-repeat: no-repeat;
  z-index: 2
}

.mapSec_cont {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
  color: #fff;
  position: relative;
  z-index: 3
}

.mapSec_ttl {
  font-size: 42px;
  text-align: center;
  font-weight: 600;
  letter-spacing: .04em
}

.mapSec_ttl .mod_mini {
  font-size: 27px
}

.mapSec_desc {
  font-size: 14px;
  text-align: center;
  line-height: 2;
  letter-spacing: .04em;
  padding-top: 10px
}
.flyerSec {
  background-color: #e4e4e4;
  padding-top: 50px;
  position: relative;
}
.flyerSec::before {
  background-image: url(../images/flyersec_ttl.png);
  content: "";
  display: block;
  width: 100%;
  height: 200px;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
}

.flyerSec_balloon {
  background: #fff;
  border-radius: 30px;
  width: 75%;
  margin: 0 auto;
  font-size: 14px;
  text-align: center;
  font-weight: 500;
  color: #000;
  padding: 10px;
  position: relative;
}
.flyerSec_balloon::before {
  content: "";
  width: 30px;
  height: 30px;
  background: #fff;
  clip-path: polygon(50% 50%, 0 0, 100% 0);
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
}

.flyerSec_balloon .mod_blue {
  color: #0021e1;
}

.flyerSec_ttl {
  color: #0021e1;
  font-size: 42px;
  text-align: center;
  font-weight: 600;
  letter-spacing: .04em;
  padding-top: 20px;
}
.flyerSec_ttl .mod_mini {
  font-size: 33px;
}

.flyerSec_cont {
  width: 100%;
  padding-top: 20px;
}

.flyerSec_cont_img {
  width: 100%;
}

.otherSec {
  background-color: #e4e4e4;
  padding-top: 30px;
  padding-bottom: 30px
}

.otherSec_cont {
  background-color: #fff;
  padding-top: 40px;
  padding-bottom: 20px;
  border-radius: 200px 200px 0 0
}

.otherSec_heading {
  font-size: 26px;
  font-weight: 600;
  line-height: 1.4;
  color: #0021e1;
  text-align: center
}

.otherSec_img img {
  width: 100%;
  margin-top: -150px;
  margin-left: 60px
}

.otherSec_person {
  position: relative
}

.otherSec_desc {
  font-size: 15px;
  text-align: center;
  color: #0021e1;
  padding-top: 20px;
  line-height: 1.7
}

.otherSec_speech {
  background-color: #ebebeb;
  color: #0021e1;
  font-size: 12.5px;
  position: absolute;
  line-height: 1.4;
  padding: .8em 1.8em
}

.otherSec_speech:before {
  font-size: 12px;
  content: "▼";
  color: #ebebeb;
  position: absolute;
  right: -6px;
  -webkit-transform: rotate(30deg);
  transform: rotate(30deg);
  top: calc(50% - 10px)
}

.otherSec_speech.mod_1 {
  border-radius: 29px;
  top: 20px;
  right: 170px
}

.otherSec_speech.mod_2 {
  border-radius: 29px;
  top: 84px;
  right: 170px
}

.otherSec_speech.mod_3 {
  border-radius: 20px;
  top: 150px;
  right: 170px
}

.flowSec {
  padding-top: 40px;
  padding-bottom: 126px;
  background-color: #0021e1;
  position: relative
}

.flowSec_ttl {
  color: #fff
}

.flowSec_cont {
  padding-top: 48px
}

.flowCard_unit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 20px
}

.flowCard {
  background-color: #fff;
  padding: 14px 18px;
  position: relative
}

.flowCard::after {
  content: "";
  display: block;
  width: 76px;
  height: 14px;
  background-image: url("../images/flowcard_tryangle.png");
  background-size: 100%;
  background-repeat: no-repeat;
  position: absolute;
  bottom: -13px;
  left: calc(50% - 38px)
}

.flowCard_unit>.flowCard:last-child::after {
  content: none
}

.flowCard_heading {
  font-size: 21px;
  color: #0021e1;
  font-weight: 600;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 30px
}

.flowCard_heading_num {
  display: block;
  width: 86px;
  font-size: 27px;
  font-weight: 600;
  position: relative;
  padding-top: 3px
}

.flowCard_heading_num::after {
  content: "−";
  position: absolute;
  right: 10px;
  top: .8px;
  font-weight: lighter;
  font-family: "Noto Sans JP"
}

.flowCard_desc {
  color: #0021e1;
  padding-top: 12px
}

.flowCard_desc>p {
  font-size: 16px;
  line-height: 1.7;
  margin-bottom: 5px;
  letter-spacing: .05em
}

.flowCard_desc>p:last-child {
  margin-bottom: 0
}

.flowCard_desc_memo {
  display: block;
  font-size: 13px;
  padding-top: 6px;
  line-height: 1.5;
  padding-left: 1em;
  position: relative
}

.flowCard_desc_memo:before {
  content: "＊";
  position: absolute;
  top: 6px;
  left: 0
}

.flowCard_desc_label {
  display: inline-block;
  color: #fff;
  background-color: #0021e1;
  font-size: 11px;
  line-height: 1.7;
  border-radius: 11px;
  padding: 1px 10px 1px;
  margin-right: .6em;
  -webkit-transform: translateY(-1px);
  transform: translateY(-1px)
}

.flowSec_bottomGif {
  position: absolute;
  bottom: 0
}

.flowSec_bottomGif img {
  width: 100%
}

.faqSec {
  padding-top: 45px;
  padding-bottom: 44px
}

.faqSec_cont {
  background-color: #f5f5f5;
  margin-top: 48px
}

.faqItem {
  border-bottom: 1px solid #0021e1;
  color: #0021e1;
  padding-bottom: 23px;
  line-height: 1.6;
  letter-spacing: .05em
}

.faqItem_head {
  font-weight: 500;
  font-size: 15px;
  padding: 23px 36px 11px 38px;
  position: relative;
  cursor: pointer
}

.faqItem_head_leftIcon {
  position: absolute;
  width: 19px;
  top: 45%;
  left: 9px
}

.faqItem_head_rightIcon {
  position: absolute;
  width: 19px;
  top: 50%;
  right: 9px;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
  -webkit-transition: all .4s;
  transition: all .4s
}

.faqItem_head.js_active .faqItem_head_rightIcon {
  -webkit-transform: rotate(0);
  transform: rotate(0)
}

.faqItem_body {
  font-size: 14px;
  font-weight: normal;
  padding: 0px 36px 4px 38px
}
.corpinfo {
  background-color: #000;
  color: #fff;
  text-align: center;
  position: relative;
  z-index: 3;
  border-bottom: 1px solid #fff;
  padding: 4px 0;
}
.corpinfo a {
  display: inline-block;
  font-size: 10px;
  line-height: 20px;
}
.copyRight {
  background-color: #000;
  color: #fff;
  text-align: center;
  font-size: 10px;
  line-height: 20px;
  position: relative;
  z-index: 3
  padding: 4px 0;
}

.workSec_fancy {
  margin-top: 2px;
  opacity: 0;
}
.workSec_fancy_cont {
  position: relative;
}
.workSec_fancy_cont video {
  width: 100%;
  max-width: 85vw;
  max-height: 85vh;
  position: relative;
  z-index: 3;
}
.workSec_fancy_cont iframe {
  max-height: 80vh;
  max-width: 80vw;
  width: 80vw;
  height: 45vw;
  position: relative;
  z-index: 3;
}
.workSec_fancy_cont::after{
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  background-image: url("../images/spin-gray.svg");
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 2;
}

.workSec_fancy_cont .workSec_fancy_text {
  padding-top: 10px;
  color: #9e9e9e
}

.form {
  width: 258px
}

.form_ttl {
  font-size: 30px;
  color: #0021e1;
  text-align: center
}

.form_body {
  padding-top: 14px
}

.form_cont {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 16px;
  transition: all 0.8s;
}
.form_cont.js_submit {
  transform: translateY(-900px);
}

.form_label {
  display: block;
  font-size: 14px;
  font-weight: 600;
  padding-bottom: 8px;
  padding-left: 3px
}

.form_label_badge {
  font-size: 10px;
  color: #fff;
  background-color: #0021e1;
  display: inline-block;
  margin-left: 8px;
  padding: 2px 8px 4px;
  border-radius: 9px;
  -webkit-transform: translateY(-1px);
  transform: translateY(-1px)
}

.form_input {
  display: block;
  width: 100%;
  background-color: #fff;
  height: 40px;
  border-radius: 10px;
  border: 2px solid #ececec;
  font-size: 14px;
  padding-left: 1em
}

.form_radio_unit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 6px
}

.form_radio_unit label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 12px 10px;
  background-color: #ececec;
  border-radius: 10px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 7px;
  -moz-column-gap: 7px;
  column-gap: 7px;
  font-size: 14px;
  font-weight: 500
}

.form_radio_unit input {
  -webkit-transform: scale(1.3);
  transform: scale(1.3);
  margin-top: 1px
}

.form_submit {
  background-color: #00c168;
  color: #fff;
  height: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  border-radius: 30px;
  margin-top: 16px;
  font-size: 18px;
  letter-spacing: .12em;
  font-weight: 600;
  text-align: center;
}

.form_privacy {
  font-size: 10px;
  color: #a5a5a5;
  text-align: center
}

.form_privacy a {
  display: inline-block;
  border-bottom: 1px solid
}

.formSec {
  display: none;
  padding-top: 60px;
  padding-bottom: 80px;
  background-color: #ebebeb
}

.formSec_ttl {
  color: #0021e1
}

.formSec_cont {
  padding-top: 48px
}

.formSec .form_radio_unit label {
  background-color: #e1e1e1
}

.formSec .form_input {
  height: 50px;
  border-color: #e1e1e1
}

.formSec .form_input::-webkit-input-placeholder {
  color: #e1e1e1
}

.formSec .form_input::-moz-placeholder {
  color: #e1e1e1
}

.formSec .form_input:-ms-input-placeholder {
  color: #e1e1e1
}

.formSec .form_input::-ms-input-placeholder {
  color: #e1e1e1
}

.formSec .form_input::placeholder {
  color: #e1e1e1
}

.formSec .form_privacy {
  text-align: left
}

.left_cv {
  width: 100%;
  background-color: #00c168;
  color: #fff;
  height: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  border-radius: 30px;
  font-size: 18px;
  letter-spacing: .12em;
  font-weight: 600;
  display: none;
  letter-spacing: .04em
}

.bl_openAnime {
  position: fixed;
  width: 100vw;
  height: 100vh;
  overflow: hidden;
  top: 0;
  left: 0;
  z-index: 100;
  background-color: #fff
}

.bl_openAnime_loader {
  color: #002055;
  font-size: 16px;
  width: 105px;
  height: 102px;
  border-radius: 50%;
  position: relative;
  text-indent: -9999em;
  position: absolute;
  top: 47%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%)
}

.bl_openAnime_loader img {
  display: block;
  -webkit-animation: 4s linear infinite rotation;
  animation: 4s linear infinite rotation
}

.bl_openAnime_logo_wrapper {
  width: 220px;
  height: auto;
  position: absolute;
  top: 47%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  margin: auto;
  overflow: hidden;
  -webkit-transition: opacity 0;
  transition: opacity 0
}

.bl_openAnime_logo_wrapper::before {
  content: "";
  background-color: #fff;
  width: 220px;
  height: 100%;
  position: absolute;
  top: 0;
  left: 220px;
  -webkit-transition: all .7s ease;
  transition: all .7s ease
}

.bl_openAnime_logo_wrapper.js_none {
  opacity: 0
}

.bl_openAnime_logo_wrapper.js_none:before {
  left: 0
}

.bl_openAnime_logo {
  display: block;
  min-width: 220px
}

@-webkit-keyframes loading {

  0%,
  100% {
    -webkit-box-shadow: 0 -3em 0 .2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0;
    box-shadow: 0 -3em 0 .2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0
  }

  12.5% {
    -webkit-box-shadow: 0 -3em 0 0, 2em -2em 0 .2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
    box-shadow: 0 -3em 0 0, 2em -2em 0 .2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em
  }

  25% {
    -webkit-box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 .2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
    box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 .2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em
  }

  37.5% {
    -webkit-box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 .2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 .2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em
  }

  50% {
    -webkit-box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 .2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 .2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em
  }

  62.5% {
    -webkit-box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 .2em, -3em 0 0 0, -2em -2em 0 -1em;
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 .2em, -3em 0 0 0, -2em -2em 0 -1em
  }

  75% {
    -webkit-box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 .2em, -2em -2em 0 0;
    box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 .2em, -2em -2em 0 0
  }

  87.5% {
    -webkit-box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 .2em;
    box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 .2em
  }
}

@keyframes loading {

  0%,
  100% {
    -webkit-box-shadow: 0 -3em 0 .2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0;
    box-shadow: 0 -3em 0 .2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0
  }

  12.5% {
    -webkit-box-shadow: 0 -3em 0 0, 2em -2em 0 .2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
    box-shadow: 0 -3em 0 0, 2em -2em 0 .2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em
  }

  25% {
    -webkit-box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 .2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
    box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 .2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em
  }

  37.5% {
    -webkit-box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 .2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 .2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em
  }

  50% {
    -webkit-box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 .2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 .2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em
  }

  62.5% {
    -webkit-box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 .2em, -3em 0 0 0, -2em -2em 0 -1em;
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 .2em, -3em 0 0 0, -2em -2em 0 -1em
  }

  75% {
    -webkit-box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 .2em, -2em -2em 0 0;
    box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 .2em, -2em -2em 0 0
  }

  87.5% {
    -webkit-box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 .2em;
    box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 .2em
  }
}

@media screen and (max-width: 649px) {
  .js_slideL span {
    -webkit-clip-path: none;
    clip-path: none
  }

  .js_hopUp {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }

  .left {
    display: none
  }

  .left_inner {
    display: none
  }

  .right {
    display: none
  }

  .right_inner {
    display: none
  }

  .main {
    padding-top: 0;
    z-index: 20
  }

  .main_inner {
    border-radius: 0;
    z-index: 20
  }

  .otherSec_speech.mod_3 {
    border-radius: 29px
  }

  .otherSec_speech {
    max-width: 175px
  }

  .formSec {
    display: block
  }

  .left_cv {
    display: none
  }
  .workSec_fancy_text {
    font-size: 12px;
  }
  .otherSec_speech p br {
    display: none;
  }
}

@media screen and (min-width: 650px)and (max-width: 900px) {
  .left {
    left: auto;
    right: 0;
    max-width: 290px;
    width: calc(100vw - 400px)
  }

  .left_inner {
    padding-right: 15px;
    padding-left: 15px;
    margin-left: auto;
    margin-right: auto
  }

  .right {
    right: auto;
    left: 0
  }

  .right_inner {
    display: none
  }

  .main {
    margin-right: 290px
  }

  .left_logo {
    margin: auto
  }

  .left_logo::before {
    display: none
  }

  .formSec {
    display: block
  }

  .left_cv {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
}

@media screen and (max-height: 799px) {
  .left_inner {
    padding-top: 20px
  }

  .right_inner {
    padding-top: 20px
  }
  .bgDeco_13 {
    display: none !important;
  }
}

@media screen and (min-width: 900px)and (max-width: 970px) {
  .main {
    -webkit-transform: translateX(-38px);
    transform: translateX(-38px)
  }
}

.mw_wp_form .horizontal-item+.horizontal-item {
  margin-left: 0 !important;
}

.mwform-checkbox-field label,
.mwform-radio-field label {
  cursor: pointer;
}

.form_submit {
  width: 100%;
}
.mw_wp_form .error {
  font-size: 12px !important;
  color: red !important;
  display: block !important;
  padding-top: 3px !important;
  padding-left: 10px !important;
}
.fancybox-content {
  padding: 36px 36px 20px !important;
}

@media screen and (max-width:428px) {
  body {
    position: static;
  }
  .left {
    display: none;
    position: static;
  }
  .right {
    display: none;
    position: static;
  }
  .bgDeco_wrapper {
    display: none;
  }
  .bgDeco_wrapper * {
    display: none;
    position: static;
  }
  .main {
    max-width: 428px;
  }
  .main,
  .main_inner {
    /* overflow: auto; */
    position: static;
  }
  .bl_openAnime{
    /* display: none; */
    /* position: static; */
  }
}

.right_tel {
  padding-top: 24px;
}
.right_tel > a {
  display: block;
}
.right_tel > a img {
  display: block;
  width: 100%;
}
.formSec_tel {
  display: block;
  margin-top: 28px;
}
.formSec_tel img {
  display: block;
  width: 100%;
}
.floatingBtn {
  background-color: #00c168;
  color: #fff;
  height: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  border-radius: 30px;
  margin-top: 16px;
  font-size: 18px;
  letter-spacing: .12em;
  font-weight: 600;
  position: fixed;
  transition: all 0.4s;
  z-index: 20;
  width: calc(100% - 32px);
  left: 16px;
  opacity: 0;
  bottom: 20px;
}
.floatingBtn.js_active {
  bottom: 20px;
  opacity: 1;
}


@media screen and (max-width:1228px) {
  .bgDeco_9 {
    display: none !important;
  }
}
@media screen and (max-width:1220px) and (max-height:980px) {
  .bgDeco_13 {
    display: none !important;
  }
  .bgDeco_8 {
    display: none !important;
  }
}


/* 20230906 バナー追加作業 */
.etcSec {
  padding-top: 45px;
}

.etcSec a{
	display:flex;
	width:100%;
	margin:0 auto;
	margin-bottom:20px;
}
.etcSec a img{
	width:100%;
}

.etcSec a:last-child{
	margin-bottom:45px;
}

/* 20230906 バナー追加作業 */

/* 会社概要追加 .companySec */
.companySec {
  padding-top: 60px;
  padding-bottom: 80px;
  background-color: #d4d4d4;
}

.companySec_cont {
  padding-top: 38px;
}

.companySec_lead {
  text-align: center;
  font-weight: 500;
  line-height: 1.7;
}

.companySec_table_wrapper {
  padding-top: 38px;
}

.companySec_table {
  width: 100%;
  max-width: 620px;
  margin: 0 auto;
}

.companySec_table tr {
  border-bottom: 1px solid #000;
  line-height: 1.7;
}

.companySec_table th {
  width: 90px;
  text-align: left;
}

.companySec_table th, .companySec_table td {
  min-height: 84px;
  vertical-align: top;
  color: #000;
  font-weight: 600;
  padding-top: 20px;
  padding-bottom: 20px;
  font-size: 14px;
}

.companySec_table td {
  font-weight: 400;
}

@media screen and (max-width: 820px){
  .companySec_table_wrapper{
    padding-top: 10px;
  }   
  .companySec_table th {
    width: 75px;
    padding-left: 7px;
    padding-right: 7px;
  }
  .companySec_table th, .companySec_table td {
    padding-top: 25px;
    padding-bottom: 25px;
    min-height: 60px;
  }
  .companySec_table td {
    padding-left: 14px;
  }
}

.form_cont .wpcf7-radio .wpcf7-list-item{
    margin: 0!important;
    width: 100%;
}
.form_cont .wpcf7-radio{
    display: flex;
    flex-direction: column;
    row-gap: 6px;
}

/* 会社概要追加 /.companySec */