@charset "UTF-8";
/* ========================================================================== */
/* header */
/* ========================================================================== */
.header{
  z-index: 999;
}
.header .header__inner .header__wrap .header__title{
  max-width: 300px;
  vertical-align: middle;
  margin-bottom: 0;
  margin-right: 2.5%;
}
.header-tokyo__logo{
  max-width: 130px;
  vertical-align: middle;
  margin-bottom: 0;
  margin-right: 2%;
}
.header-shigoto__logo.header-shigoto__logo-lp{
  max-width: 180px;
  vertical-align: middle;
  margin-bottom: 0;
  margin-right: 2%;
}



.header__wrap{
  width: 60%;
}
/* 申し込み */
.h-mousikomi{
  width: 40%;
  list-style: none;
  display: flex;
  padding-left: 0;
  margin: 0;
}
.h-mousikomi-item{
  width: 50%;
  color: #fff;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}
.h-mousikomi-item a{
  border-radius: 5px;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 100%;
  color: #fff;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.5;
  text-decoration: none !important;
  padding: 2rem 0;
  margin: 0 .5rem;
}
.h-mousikomi-item a :hover{
  opacity: .7;
}
.h-mousikomi-item01 a{
  background: #F4AD1B;
}
.h-mousikomi-item02 a{
  background: #5BBB97;
}
.h-mousikomi-item03 a{
  background: #F16E3F;
}
@media screen and (max-width:767px) {
  .header__inner {
    padding: 0 2%;
  }
  .header .header__inner .header__wrap .header__title{
    width: 50% !important;
    max-width: 100%;
    vertical-align: middle;
    margin-right: 3%;
    height: auto;
  }
  .header-tokyo__logo{
    width: 20%;
    max-width: 100%;
    margin-right: 3%;
    vertical-align: top;
    height: 140%;
  }
  .header-tokyo__logo.header-tokyo__logo-top{
      width: 28%;
    height: 104%;
  }
  .header-shigoto__logo.header-shigoto__logo-lp{
    width: 30%;
    max-width: 100%;
    height: auto;
    vertical-align: middle;
    margin-right: 0;
  }

}
@media screen and (max-width:1080px) {
  .h-mousikomi-item a{
    font-size: 1.8vw;
  }
  .h-mousikomi-item a span{
    font-size: 1.8vw;
  }
}

/* ========================================================================== */
/* MV */
/* ========================================================================== */
.mv {
    margin: 0;
    background: url(../images/lp/mv-bg.webp) center center / cover no-repeat;
    padding: 9rem 2rem 1rem 2rem;
}

@media screen and (max-width:767px) {
  .mv {
    background: url(../images/lp/mv-bg.webp) center center / cover no-repeat;
    height: 105vw;
    padding: 6rem 0 1rem 0;
    margin-bottom: 15%;
  }
  .mv__image{
    width: 100%;
  }
}
/* ========================================================================== */
/* top-about */
/* ========================================================================== */
.top-about{
  padding: 8rem 0;
}
.top-about .top-about-boder-box{
  border: solid 5px #004e91;
  border-radius: 30px 0 30px 0;
  max-width: 720px;
  margin: 0 auto;
}
.top-about .section__head{
  margin-top: -4rem;
}
.top-about .top-about__text{
  margin: 2rem 0 4rem 0;
}
.top-about .top-about-step{
  max-width: 800px;
  margin: 5rem auto;
}
.top-about .top-about-tail{
  display: flex;
  max-width: 800px;
  margin: 0 auto;
  list-style: none;
  padding-left: 0 !important;
}
.top-about .top-about-tail .top-about-tail-item{
  width: 33.3%;
  border-left: solid 2px #919191;
  text-align: center;
  padding: 2rem;
  font-weight: bold;
  color: #008D44;
}
.top-about .top-about-tail .top-about-tail-item:first-of-type{
  border-left: 0;
}
.top-about .top-about-tail .top-about-tail-item .icon{
  width: 35%;
  margin: 0 auto 2rem auto;
}
.top-about .top-about-tail .top-about-tail-item .sub_ttl{
  font-size: 2.2rem;
  line-height: 1.2;
  margin-bottom: 1rem;
}
.top-about .top-about-tail .top-about-tail-item .ttl{
  font-size: 3rem;
  line-height: 1.2;
  margin-bottom: 1.5rem;
}
.top-about .top-about-tail .top-about-tail-item .ttl02{
  margin-bottom: 3.5rem;
}
.top-about .top-about-tail .top-about-tail-item .txt01{
  font-size: 1.8rem;
  line-height: 1.5;
}
.top-about .top-about-tail .top-about-tail-item .txt02{
  font-size: 2.2rem;
  line-height: 1.5;
}
/* ========================================================================== */
/* top-merit */
/* ========================================================================== */
.top-merit__desc{
  font-size: 2.5rem;
}
.top-merit__item .sub{
  font-size: 1.8rem;
  line-height: 1.8;
  color: #008D44;
  text-align: center;
  margin: .5rem 0;
}
.top-merit__item:last-child .top-merit__text::after{
  left: 0;
  right: 0;
  margin: 0 auto;
  text-align: center;
  bottom: -30px;
}
/* ========================================================================== */
/* top-level */
/* ========================================================================== */
#top-level{
  background: #F26E40;
  padding:  15rem 0 7rem 0;
}
.level_image{
  max-width: 760px;
  margin: 0 auto;
}

/* ========================================================================== */
/* top-condition */
/* ========================================================================== */
.condition{
  padding: 9rem 0;
}
.condition__txt_orange{
  color: #008D44;
  text-align: center;
  font-size: 2.8rem;
  font-weight: bold;
}
.condition_list{
  max-width: 980px;
  margin: 0 auto;
  padding-left: 0;
}
.condition_list .condition_item{
  display: flex;
  align-items: center;
  background: #E2F6EB;
  padding: 3.5rem 5rem;
  border-radius: 10px;
  margin-bottom: 2rem;
}
.condition_list .condition_item .condition_item_icon{
  width: 50px;
  margin-right: 4rem;
}
.condition_list .condition_item .condition_item_text{
  width: 95%;
  font-size: 2.6rem;
  color: #008D44;
  font-weight: bold;
}
/* ========================================================================== */
/* top-flow */
/* ========================================================================== */
.top-flow{
  position: relative;
  z-index: 99;
  padding: 10rem 0 0 0;
}
.top-flow::after {
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 30vw;
  bottom: -100px;
  left: 0;
  z-index: -1;
  background: url(../images/lp/flow-bg.webp) center center / cover no-repeat;
}
.flow_item_01 .bln_box_mid{
  background: url('../images/lp/flow_item_mid01.png');
  -webkit-background-size: 100%;
  background-size: 100%;
  background-repeat: repeat-y;
  padding: 0 4rem;
}
.flow_item_02 .bln_box_mid{
  background: url('../images/lp/flow_item_mid02.png');
  -webkit-background-size: 100%;
  background-size: 100%;
  background-repeat: repeat-y;
  padding: 0 4rem;
}
.flow_item_02 .bln_box_bottom{
  height: 0;
}
.flow_list{
  position: relative;
  z-index: 80;
  max-width: 800px;
  margin: 0 auto;
  list-style: none;
  padding-left: 0;
}
.flow_arrow{
  position: absolute;
  z-index: 79;
  max-width: 50px;
  top: 260px;
  left: 0;
  right: 28px;
  margin: 0 auto;
}
.flow_item{
  position: relative;
  z-index: 80;
  text-align: center;
}
.flow_item_01{
  padding-bottom: 0;
}
.flow_item_02{
  margin-top: 2.5rem;
}
.flow_item .bln_box .ttl{
  font-weight: bold;
  font-size: 3.4rem;
  margin-bottom: .5rem;
  line-height: 1;
}
.flow_item .bln_box .txt{
  font-size: 2.4rem;
  line-height: 1.6;
}
#top-flow-tail{
  background: #008D44;
  padding: 11rem 0 5rem;
}
.flow-tail_image{
  max-width: 760px;
  margin: 0 auto;
}

/* ========================================================================== */
/* top-industry */
/* ========================================================================== */
.industry{
  padding: 10rem 0;
}
.industry-intro{
  margin-top: 4rem;
  max-width: 45rem;
  margin: 4rem auto;
}
.industry-intro-txt{
  max-width: 62.5rem;
  margin: 0 auto;
  font-size: 2.3rem;
  font-weight: bold;
  color: #008D44;
}
.industry__item-title{
  color: #fff;
}
.industry__item-link{
  background: #008D44;
  border-radius: 30px 0 30px 0;
  box-shadow: none !important;
}
.industry__item-image {
  max-width: 8.3rem;
}
.industry__item:nth-child(n + 2) .industry__item-image {
    height: 6rem;
}
.industry__item:nth-child(3) .industry__item-image {
    max-width: 5.5rem;
}
.industry__item:nth-child(4) .industry__item-image {
    max-width: 6.7rem;
}
.industry__item:nth-child(5) .industry__item-image {
    max-width: 6rem;
}
.industry__item:nth-child(6) .industry__item-image {
    max-width: 10rem;
}

/* ========================================================================== */
/* top-briefing */
/* ========================================================================== */
.top-briefing{
  background: #E2F6EB;
  position: relative;
  z-index: 1;
  padding: 4rem 0 0 0;
}
.top-briefing::after {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 30vw;
    bottom: -160px;
    left: 0;
    z-index: -1;
    background: url(../lp/img/merit-bg.png) center center / cover no-repeat;
}
.top-briefing .contact__heading {
    width: 100%;
    max-width: 53.2rem;
    margin: auto;
}
.briefing_item_01 .bln_box_mid{
  background: url('../images/lp/briefing_item_mid01.png');
  -webkit-background-size: 100%;
  background-size: 100%;
  background-repeat: repeat-y;
  padding: 0 6rem;
}
.briefing_item_02 .bln_box_mid{
  background: url('../images/lp/briefing_item_mid02.png');
  -webkit-background-size: 100%;
  background-size: 100%;
  background-repeat: repeat-y;
  padding: 0 4rem;
}
.briefing_list{
  list-style: none;
  padding-left: 0;
}
.briefing_item{
  text-align: center;
}
.briefing_item_01{
  max-width: 850px;
  margin: 3rem auto 0 auto;
}
.briefing_item_02{
  max-width: 800px;
  margin: 5rem auto 0 auto;
}
.briefing_item .bln_box .txt{
  font-size: 2.8rem;
}
.briefing_link .schedule_sub_link{
  box-shadow: none;
  background: #E7E7E7;
  max-width: 35rem;
  height: 7rem;
  margin-top: 2rem;
}
#top-briefing-joint{
  background: #fff;
  padding: 20rem 0 0rem
}
.top-briefing-joint-txt{
  text-align: center;
  font-size: 3.5rem;
  font-weight: bold;
  color: #008D44;
}
/* ========================================================================== */
/* schedule */
/* ========================================================================== */
.schedule{
  padding-top: 2rem;
  padding-bottom: 10rem;
}
.schedule_sub {
  margin: 0 auto;
  padding: 3rem 0;
}
#top-schedule .top-schedule__title{
  max-width: 42rem;
  padding-bottom: 2rem;
}
.schedule_sub_title {
	font-size: 3rem;
  font-weight: bold;
  color: #008D44;
  text-align: center;
  margin: 0;
}
.schedule_sub_caption {
    font-size: 1.8rem;
    line-height: 1.5;
    text-align: center;
}
.schedule_sub_btn {
	margin-top: 0;
}
.schedule_sub_link {
	max-width: 55rem;
	box-shadow: 2px 5px #9D8202;
}

.schedule_items a {
  display: flex;
  align-items: center;
  width: 100%;
  max-width: 100%;
  text-decoration: none;
  background-color: #E2F6EB;
  margin-bottom: 1.5rem;
  border-radius: 100rem;
  padding: 1rem 3rem;
  box-sizing: border-box;
  box-shadow: 3px 2px #999;
  color: #008D44;
}
.schedule_items a .date {
  font-size: 2.5rem;
  font-weight: bold;
  width: 15rem;
}
.schedule_items a .time {
  margin-right: 2rem;
}
.schedule_items a .category {
  background-color: white;
  /*border: 1px solid gray;*/
  padding: 0 1rem;
  border-radius: 100em;
  font-size: 1.5rem;
  font-weight: bold;
}
.schedule_items a .reserve {
  font-size: 1.5rem;
  font-weight: bold;
  margin-left: auto;
}
.schedule_items a .reserve img {
  width: auto;
  height: 1.5rem;
  margin-left: 1rem;
  vertical-align: middle;
}
.schedule_caption p {
  font-size: 1.5rem;
  margin: 0;
}
.schedule_caption p + p {
  margin: 0;
}

/* ========================================================================== */
/* yoyaku */
/* ========================================================================== */
.yoyaku-area{
  background: url('../images/lp/yoyaku-bg.png') repeat;
  padding: 8rem 0;
}
/* 予約ボタン */
.yoyaku{
  list-style: none;
  display: flex;
  padding-left: 0;
  justify-content: center;
  align-items: flex-end;
  margin: 0;
}
.yoyaku-item{
  width: 33.3%;
  color: #fff;
  text-align: center;
  margin: 0 .5rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
}
.yoyaku-item .caution{
  width: 100%;
  color: #008D44;
  font-size: 2rem;
}
.yoyaku-item a{
  height: 70px;
  border-radius: 10px;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 100%;
  color: #fff;
  font-size: 2.6rem;
  font-weight: bold;
  line-height: 1.5;
  text-decoration: none !important;
  padding: 2rem 1rem 2rem 0;
}
.yoyaku-item a.tel{
  font-size: 2.2rem
}
.yoyaku-item a :hover{
  opacity: .7;
}
.yoyaku-item a::after{
  position: absolute;
  content: "";
  display: block;
  right: 2.6rem;
  top: 50%;
  transform: translateY(-50%);
  background: url(../images/right_arrow-blue.svg) center center / cover no-repeat;
  width: 1.5rem;
  height: 2.5rem;
}
.yoyaku-item a span{
  width: 100%;
  font-size: 2.5rem;
}
.yoyaku-item01 a{
  background: #F4AD1B;
  box-shadow: 2px 5px #9D8202;
}
.yoyaku-item02 a{
  background: #5BBB97;
  box-shadow: 2px 5px #2A6357;
}
.yoyaku-item03 a{
  background: #F16E3F;
  box-shadow: 2px 5px #91412B;
}
@media screen and (max-width:1080px) {
  .yoyaku-item a{
    font-size: 2.2vw;
  }
  .yoyaku-item a span{
    font-size: 2.2vw;
  }
}

/* ========================================================================== */
/* contact */
/* ========================================================================== */
.contact {
    padding-top: 6rem;
    padding-bottom: 8rem;
}
.form-caution{
  text-align: center;
  margin-bottom: 2rem;
  color: #fff;
}
/* ========================================================================== */
/* access */
/* ========================================================================== */
.access{
  padding-top: 10rem;
}
.access__items{
  margin-top: 5rem !important;
}
.access__items .schedule_sub_link{
  box-shadow: none;
  background: #FCDA3B;
  margin-top: 3rem;
}
/* ========================================================================== */
/* news */
/* ========================================================================== */

/* ========================================================================== */
/* footer */
/* ========================================================================== */



/* ========================================================================== */
/* 共通パーツ */
/* ========================================================================== */
.bln_box{

}
.bln_box_top{}
.bln_box_mid{
  -webkit-background-size: 100%;
  background-size: 100%;
  background-repeat: repeat-y;
}
.bln_box_bottom{}

.floating-btn{
  z-index: 999;
}

/* ********************************** SP ********************************** */
@media screen and (max-width:767px) {
  /* ========================================================================== */
  /* header */
  /* ========================================================================== */
  .header{
    height: auto;
    padding: 2.5% 0;
  }
  .header .header__inner .header__wrap .header__title{
    width: 36%;
  }
  .header .header__inner .header__wrap .header-shigoto__title{
    width: 46%;
    margin-bottom: 2%;
  }
  .header__wrap{
    width: 100%;
  }
  /* 申し込み */
  .h-mousikomi{
    display: none;
  }
  /* ========================================================================== */
  /* top-about */
  /* ========================================================================== */
  .top-about{
    padding: 8rem 0;
  }
  .top-about .top-about-boder-box{
    border: solid 3px #004e91;
    max-width: 100%;
  }
  .top-about .section__head{
    margin-top: -2.8rem;
  }
  .top-about .top-about__text{
    margin: 1.3rem 0 2.5rem 0;
    font-size: 1.6rem;
  }
  .top-about .top-about-step{
    max-width: 100%;
    margin: 3rem auto;
  }
  .top-about .top-about-tail .top-about-tail-item{
    width: 33.3%;
    border-left: solid 1px #919191;
    text-align: center;
    padding: 1rem;
    font-weight: bold;
    color: #008D44;
  }
  .top-about .top-about-tail .top-about-tail-item:first-of-type{
    border-left: 0;
  }
  .top-about .top-about-tail .top-about-tail-item .icon{
    width: 36%;
    margin: 0 auto 1.5rem auto;
  }
  .top-about .top-about-tail .top-about-tail-item .sub_ttl{
    font-size: 1.4rem;
    line-height: 1.2;
    margin-bottom: .5rem;
  }
  .top-about .top-about-tail .top-about-tail-item .ttl{
    font-size: 2rem;
    line-height: 1.2;
    margin-bottom: 1.5rem;
  }
  .top-about .top-about-tail .top-about-tail-item .ttl02{
    margin-bottom: 3.5rem;
  }
  .top-about .top-about-tail .top-about-tail-item .txt01{
    font-size: 1rem;
    line-height: 1.5;
  }
  .top-about .top-about-tail .top-about-tail-item .txt02{
    font-size: 1.3rem;
    line-height: 1.5;
  }

  /* ========================================================================== */
  /* top-merit */
  /* ========================================================================== */
  .top-merit__desc{
    font-size: 2rem;
    margin: .5rem 0;
  }
  .top-merit__item .sub{
    font-size: 1.6rem;
    margin: .5rem 0;
  }
  .top-merit__item:last-child .top-merit__text::after{
    font-size: 1.6rem;
    bottom: -35px;
  }
  /* ========================================================================== */
  /* top-level */
  /* ========================================================================== */
  #top-level{
    padding:  9rem 0 3rem 0;
  }
  .level_image{
    max-width: 94%;
    margin: 0 auto;
  }

  /* ========================================================================== */
  /* top-condition */
  /* ========================================================================== */
  .condition{
    padding: 5rem 0;
  }
  .condition__lead{
    font-size: 1.6rem;
  }
  .condition__txt_orange{
    font-size: 1.4rem;
  }
  .condition_list{
  }
  .condition_list .condition_item{
    padding: 2rem;
  }
  .condition_list .condition_item .condition_item_icon{
    width: 30px;
    margin-right: 2rem;
  }
  .condition_list .condition_item .condition_item_text{
    width: 95%;
    font-size: 1.6rem;
  }
  /* ========================================================================== */
  /* top-flow */
  /* ========================================================================== */
  .top-flow{
    padding: 5rem 0 1rem 0;
  }
  .top-flow::after {
    height: 20%;
    bottom: -3%;
  }
  .flow_item_01 .bln_box_mid{
    background: url('../images/lp/flow_item_mid01.png');
    -webkit-background-size: 100%;
    background-size: 100%;
    background-repeat: repeat-y;
    padding: 0 2rem;
  }
  .flow_item_02 .bln_box_mid{
    background: url('../images/lp/flow_item_mid02.png');
    -webkit-background-size: 100%;
    background-size: 100%;
    background-repeat: repeat-y;
    padding: 0 2rem;
  }
  .flow_list{
  }
  .flow_arrow{
    position: absolute;
    z-index: 79;
    min-width: 40px;
    max-width: 8%;
    top: 15%;
    left: 0;
    right: 2%;
    margin: 0 auto;
  }
  .flow_item{
    text-align: center;
  }
  .flow_item_01{
    margin-bottom: -1rem;
  }
  .flow_item_02{
    margin-top: 0;
    margin-bottom: 1.7rem;
  }
  .flow_item .bln_box .ttl{
    font-weight: bold;
    font-size: 2rem;
    margin-bottom: .5rem;
  }
  .flow_item .bln_box .txt{
    font-size: 1.6rem;
    line-height: 1.6;
    padding-bottom: .5rem;
  }
  #top-flow-tail{
    padding: 4rem 0;
  }
  .flow-tail_image{
  }

  /* ========================================================================== */
  /* top-industry */
  /* ========================================================================== */
  .industry{
    padding: 5rem 0;
  }
  .industry-intro{
    margin-top: 2rem;
    max-width: 60%;
    margin: 2rem auto;
  }
  .industry-intro-txt{
    font-size: 1.5rem;
  }
  .industry__item-link{
    border-radius: 10px 0 10px 0;
    box-shadow: none !important;
  }
  .industry__item-image {
    max-width: 5rem;
  }
  .industry__item:nth-child(n + 2) .industry__item-image {
    height: 4.5rem;
  }
  .industry__item:nth-child(3) .industry__item-image {
      max-width: 3.6rem;
  }
  .industry__item:nth-child(4) .industry__item-image {
      max-width: 3.7rem;
  }
  .industry__item:nth-child(5) .industry__item-image {
      max-width: 3.7rem;
  }
  .industry__item:nth-child(6) .industry__item-image {
      max-width: 6.3rem;
  }

  /* ========================================================================== */
  /* top-briefing */
  /* ========================================================================== */
  .top-briefing{
    position: relative;
    z-index: 1;
    padding: 4rem 0 0 0;
  }
  .top-briefing::after {
    height: 20%;
    bottom: -7%;
  }
  .top-briefing .contact__heading {
  }
  .briefing_item_01 .bln_box_mid{
    background: url('../images/lp/briefing_item_mid01.png');
    -webkit-background-size: 100%;
    background-size: 100%;
    background-repeat: repeat-y;
    padding: 0 2.5rem;
  }
  .briefing_item_02 .bln_box_mid{
    background: url('../images/lp/briefing_item_mid02.png');
    -webkit-background-size: 100%;
    background-size: 100%;
    background-repeat: repeat-y;
    padding: 0 1.5rem;
  }
  .briefing_list{
  }
  .briefing_item{
  }
  .briefing_item_01{
    max-width: 100%;
    margin: 2rem auto 0 auto;
  }
  .briefing_item_02{
    max-width: 94%;
    margin: 2rem auto 0 auto;
  }
  .briefing_item .bln_box .txt{
    font-size: 1.3rem;
  }
  .briefing_link .schedule_sub_link{
    height: 4.5rem;
    margin-top: 2rem;
  }
  #top-briefing-joint{
    background: #fff;
    padding: 6rem 0 0rem
  }
  .top-briefing-joint-txt{
    font-size: 1.7rem;
  }


  /* ========================================================================== */
  /* schedule */
  /* ========================================================================== */
  .schedule {
    padding-top: 0rem;
    padding-bottom: 5rem;
  }
  .schedule_sub {
    margin: 0 auto;
    padding: 2rem 0;
	}
  #top-schedule .top-schedule__title{
    max-width: 24rem;
    padding-bottom: .5rem;
  }
	.schedule_sub_title {
		font-size: 2rem;
	}
	.schedule_sub_caption {
    font-size: 1.4rem;
    text-align: left;
	}
	.schedule_sub_btn {
		margin-bottom: 1rem;
	}
	.schedule_sub_link {
    width: 90%;
	}
  .schedule_items a {
    position: relative;
    margin-bottom: 1.2rem;
    padding: 1rem 2rem;
  }
  .schedule_items a .date {
    font-size: 1.5rem;
    width: 9rem;
  }
  .schedule_items a .time {
    font-size: 1.2rem;
    font-weight: bold;
    margin-right: 0;
  }
  .schedule_items a .category {
    font-size: 1rem;
    margin-left: 1rem;
  }
  .schedule_items a .reserve span {
    display: none;
  }
  .schedule_items a .reserve img {
    position: absolute;
    right: 1rem;
    transform: translateY(-50%);
    height: 1rem;
  }
  .schedule_caption p {
    font-size: 1.2rem;
  }
  .schedule_caption p + p {
    font-size: 1.2rem;
  }

  /* ========================================================================== */
  /* yoyaku */
  /* ========================================================================== */
  .yoyaku-area{
    background: url('../images/lp/yoyaku-bg.png') repeat;
    -webkit-background-size: 100%;
    background-size: 100%;
    padding: 3rem 0;
  }
  /* 予約ボタン */
  .yoyaku{
    flex-wrap: wrap;
    padding-left: 0;
    margin: 0;
  }
  .yoyaku-item{
    width: 100%;
    margin: 1.2rem 0;
  }
  .yoyaku-item .caution{
    font-size: 1.5rem;
  }
  .yoyaku-item a{
    height: auto;
    border-radius: 999px;
    font-size: 1.6rem;
    padding: 1.2rem 1rem 1.2rem 0;
  }
  .yoyaku-item a.tel{
    font-size: 1.6rem
  }
  .yoyaku-item a::after{
    width: .7rem;
    height: 1.3rem;
  }

  /* ========================================================================== */
  /* contact */
  /* ========================================================================== */
  .contact {
      padding-top: 3rem;
      padding-bottom: 3rem;
  }
  /* ========================================================================== */
  /* access */
  /* ========================================================================== */
  .access{
    padding-top: 5rem;
    padding-bottom: 2rem;
  }
  .access__items{
    margin-top: 0rem !important;
  }
  .access__head{
    margin-top: 4rem;
  }
  .access__items .schedule_sub_link{
    box-shadow: none;
    background: #E7E7E7;
    margin-top: 3rem;
  }

  /* ========================================================================== */
  /* form */
  /* ========================================================================== */
  .form__input{
    font-size: 18px;
  }
  .swiper{
    font-size: 1.3rem;
  }
  .form-caution{
    font-size: 1.4rem;
    margin-bottom: 2rem;
  }
  .error .form__item{
    margin-top: 2.5rem !important;
  }
  .error .form__row{
    margin-top: 8rem;
  }
  .contact-next .form__input{
    font-size: 1.8rem;
  }
  .contact-next .swiper{
    font-size: 1.3rem;
  }
  .contact-next{
    padding-bottom: 4rem;
  }
  .confirm .form__submit{
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    z-index: 999;
    width: 100%;
    padding: 2rem 0;
    background: rgba(66,66,66,.5);
  }
  .confirm .btn.form-btn{
    width: 80%;
    max-width: 100%;
    font-size: 2rem;
    height: 7rem;
  }
  /* ========================================================================== */
  /* footer */
  /* ========================================================================== */
  .floating-btn{
    bottom: 15%;
  }
  .floating-cta{
    z-index: 999;
    bottom: 0;
  }
  /* 申し込み */
  .f-mousikomi{
    width: 100%;
    list-style: none;
    display: flex;
    padding-left: 0;
    margin: 0;
  }
  .f-mousikomi-item{
    width: 50%;
    color: #fff;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .f-mousikomi-item a{
    max-width: 100% !important;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    width: 100%;
    color: #fff;
    font-size: 1.5rem;
    font-weight: bold;
    line-height: 1.5;
    text-decoration: none !important;
    padding: 2rem 0;
  }
  .f-mousikomi-item01 a{
    background: #F4AD1B;
  }
  .f-mousikomi-item02 a{
    background: #5BBB97;
  }
  .f-mousikomi-item03 a{
    background: #F16E3F;
  }
}

/* 応募完了用 */
.fun-thx{
  align-items: center;
  display: inline-flex;
  justify-content: center;
}
.fun-thx .fun-thx-img{
  width: 130px;
  animation: bound-anim 0.8s infinite;
}
.fun-thx .fun-thx-img img{
  width: 100%;
}
.fun-thx .fun-thx-txt{
  color: #31A338;
  font-size: 2.9rem;
  position: relative;
  font-weight: bold;
  margin-left: -30px;
  margin-top: 5px;
}
.footer__line-text_tnx{
  font-size: 2.7rem;
}
@media screen and (max-width:767px) {
  .fun-thx .fun-thx-img{
    width: 28%;
  }
  .fun-thx .fun-thx-txt{
    font-size: 2.3rem;
    margin-left: -5%;
    margin-top: .5%;
  }
  .footer__line-text_tnx{
    font-size: 2.3rem;
  }
}
@keyframes bound-anim {
	0%,100% {transform: translateY(-5%);}
	30% {transform: translateY(-18%);}
	90% {transform: translateY(-5%);}
}
