@charset "utf-8";

/******
フォント

Poppins
font-family: "Poppins", sans-serif;
font-weight:300;→light
font-weight:400;→regular
font-weight:500;→medium
font-weight:700;→bold

*******/

body {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  /*
		font-weight: 100;Thin
		font-weight: 900;Black
		*/
  font-style: normal;
}

.img {
  width: 100%;
  height: auto;
  display: block;
}

.img--sp {
  display: none;
}

.text--sp,
.text--sp400,
.text--sp480,
.text--sp640,
.text--sp800 {
  display: none;
}

.inner-1100 {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
}

.clr--bl {
  color: #033d59;
}
.clr--wh {
  color: #fff;
}

.bg--bl {
  background-color: #033d59;
}

.hover--opacity {
  transition: opacity 0.3s;
}
.hover--opacity:hover {
  opacity: 0.7;
}

.section-last {
  padding-bottom: 93px;
}

br.b-980 {
  display: none;
}

br.b-640 {
  display: none;
}

br.b-400 {
  display: none;
}

/* 詳細の行程・内容などこちら */
.contents-btn {
  font-size: 15px;
  font-weight: 900;
  text-align: center;
  display: block;
  width: 100%;
  max-width: 292px;
  padding: 10px 10px;
  margin: 0 auto;
  position: relative;
  background-color: #e6e6e6;
  line-height: 1.75;
}
.contents-btn::before {
  content: "";
  width: 17px;
  height: 10px;
  display: block;
  background: url("../imgs/common/arrow_bl.png") center center / contain no-repeat;
  position: absolute;
  top: 50%;
  right: 10px;
  z-index: 1;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -o-transform: translateY(-50%);
}

.contents-btn__en {
  max-width: 472px;
  padding: 10px 30px 10px 10px;
}
/* 詳細の行程・内容などこちら */

/* 詳細の行程・内容などこちら */
.back-btn__wrap {
  padding-top: 70px;
}
.back-btn {
  background-color: #033d59;
}
.back-btn::before {
  background: url("../imgs/common/arrow_wh.png") center center / contain no-repeat;
}
/* 詳細の行程・内容などこちら */

/*---------------------
model-course
-----------------------*/
.plan__list {
  width: 100%;
  max-width: 910px;
  margin: 0 auto;
}
.plan__list--type02 {
  margin-top: 38px;
}
.plan__list--item:not(:last-child) {
  margin-bottom: 68px;
}
.plan__imgWrap {
  padding-top: 64px;
  margin-bottom: 24px;
  position: relative;
}
.plan__heading {
  font-size: 63px;
  font-family: "Poppins", sans-serif;
  font-weight: 300;
  position: absolute;
  top: 0;
  right: 55px;
  line-height: 1.75;
}
.plan__lineText {
  margin-bottom: 21px;
}
.plan__lineText span {
  display: inline-block;
  background-color: #fcee21;
  font-size: 21px;
  font-weight: 900;
  padding: 2px 0;
  white-space: nowrap;
}
.plan__lineText span:not(:last-child) {
  margin-bottom: 9px;
}
.plan__detailWrap {
  display: flex;
  justify-content: space-between;
  margin-bottom: 44px;
}
.plan__detailWrap--type02 {
  display: block;
}
.plan__detailLeft {
  width: 44%;
  max-width: 398px;
}
.plan__detailLeft--type02 {
  width: 100%;
  max-width: initial;
}
.plan__detailText {
  font-size: 15px;
  line-height: 1.75;
}
.plan__detailRight {
  width: 53%;
  max-width: 482px;
  padding-top: 5px;
}
.plan__pointTitle {
  font-size: 24px;
  font-family: "Poppins", sans-serif;
  font-weight: 300;
  display: inline-block;
  margin-bottom: 5px;
  background-color: #fcee21;
  line-height: 0.85;
}
.plan__pointList {
  width: 100%;
  padding-top: 7px;
  padding-left: 15px;
  padding-bottom: 18px;
  border-bottom: 1px solid #4c7589;
  border-left: 1px solid #4c7589;
}
.plan__pointList--item {
  font-size: 12px;
  padding-left: 1em;
  text-indent: -1em;
  line-height: 1.75;
}

.plan__pointList--en .plan__pointList--item {
  padding-left: 0.6em;
  text-indent: -0.6em;
}

/*---------------------
fv
-----------------------*/
.fv {
  width: 100%;
  position: relative;
}
.fv__title--logo {
  width: 35%;
  max-width: 447px;
  min-width: 262px;
  position: absolute;
  top: 35%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
.fv__title--under {
  font-size: 4.652vw;
  text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.8);
  width: 92%;
  text-align: center;
  position: absolute;
  top: 19vw;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}

/*---------------------
intro
-----------------------*/
.intro {
  position: relative;
  padding-top: 123px;
  padding-bottom: 130px;
}
.intro__lineText {
  position: absolute;
  top: -21px;
  margin-bottom: 0;
}
.intro__lineText span {
  font-size: 32px;
}
.intro__lineText span:not(:last-child) {
  margin-bottom: 14px;
}
.intro__conts {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  width: 100%;
}
.intro__imgWrap {
  width: 41.5%;
  max-width: 441px;
}
.intro__text {
  color: #fff;
  font-size: 15px;
  width: 56%;
  max-width: 610px;
  line-height: 1.75;
}

.intro__type01--en {
  padding-top: 185px;
}

.intro__type02--en {
  padding-top: 235px;
}

.intro__type03--en {
  padding-top: 245px;
}
/*---------------------
day
-----------------------*/
.day {
  padding-bottom: 62px;
}
.day__wrap {
  width: 100%;
  display: flex;
}
.day__heading {
  width: 66px;
  line-height: 1;
}
.day__heading span {
  color: #033d59;
  display: inline-block;
  background-color: #fcee21;
  font-size: 25px;
  padding-bottom: 2px;
  padding-right: 7px;
  white-space: nowrap;
}
.day__contsWrap {
  border-left: 2px solid #fff;
  width: calc(100% - 67px);
  max-width: 1035px;
  padding-bottom: 45px;
  margin: 0 auto 0 20px;
}
.day__contsWrap.lst {
  padding-bottom: 0;
}
.day__list {
  width: 100%;
}
.day__list--item {
  padding-left: 38px;
  position: relative;
}
.day__list--item:not(:last-child) {
  margin-bottom: 45px;
}
.day__list--item::before {
  content: "";
  width: 32px;
  height: 32px;
  background: url("../imgs/common/dot.svg") center center / contain no-repeat;
  display: inline-block;
  vertical-align: middle;
  position: absolute;
  left: -17px;
  top: 0;
}
.day__detailWrap {
  display: flex;
  justify-content: space-between;
}
.day__detail--text {
  color: #fff;
  font-size: 17px;
  font-weight: 700;
  width: 250px;
  line-height: 1.75;
}
.day__detailConts {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  width: calc(100% - 260px);
}
.day__detailConts--type02 {
  flex-direction: column;
}
.day__detailConts--wrap {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
}
.day__detailConts--wrap:not(:last-child) {
  margin-bottom: 46px;
}
.day__detailConts--left {
  width: 51%;
  max-width: 367px;
}
.day__detailConts--text {
  color: #fff;
  font-size: 14px;

  line-height: 1.75;
}
.day__detailConts--img {
  width: 45%;
  max-width: 315px;
}
.day__detailConts--imgSml {
  width: 100%;
  max-width: 179px;
  padding-top: 47px;
  margin: 0 0 0 auto;
}

/*---------------------
schedule
-----------------------*/
.schedule {
  padding-bottom: 71px;
}
.schedule__wrap {
  width: 100%;
  padding: 50px 20px;
  background-color: #fff;
}
.schedule__list {
  width: 100%;
  max-width: 1010px;
  margin: 0 auto;
}
.schedule02,
.schedule01 {
  margin-bottom: 30px;
}
.schedule__list--item {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
.schedule__listTitle {
  font-size: 16px;
  font-weight: 700;
  padding-left: 13px;
  position: relative;
  width: 150px;
  line-height: 1.75;
}
.schedule__listTitle::before {
  content: "";
  width: 6px;
  height: 21px;
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 0;
  z-index: 1;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  background-color: #fcee21;
}
.schedule__listDetail {
  width: calc(100% - 150px);
  max-width: 830px;
}
.dayItem:not(:last-child) {
  margin-bottom: 17px;
}
.dayItem__title {
  font-size: 14px;
  font-weight: 700;
  line-height: 2.15;
}
.dayItem__list {
  width: 100%;
}
.dayItem__list--item,
.dayItem__listText {
  font-size: 14px;
  line-height: 1.75;
}
.dayItem__list--item {
  padding-left: 1em;
  text-indent: -1em;
}
.dayItem__contsWrap {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
}
.dayItem__contsWrap--heading,
.dayItem__contsWrap--text {
  font-size: 14px;
  line-height: 1.75;
}
.dayItem__contsWrap--heading {
  font-weight: 700;
  width: 210px;
}
.dayItem__contsWrap--text {
  width: calc(100% - 210px);
}
#bokun_ce04dace_9cae_4735_9a81_0515571e80e5,
#bokun_95f8eba7_68ae_472b_a931_29e56214dba6,
#bokun_24cf5cf6_fe63_45ea_8fd3_ac2d31985df2 {
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  /* width: 100%;
  max-width: 150px; */
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px;
  background-color: #1818ac;
  border-radius: 24px;
  line-height: 1.67;
}

.dayItem__contsWrap--en .dayItem__contsWrap--text {
  width: 100%;
}

/* youtube埋め込み ↓ */
.video {
  padding-bottom: 62px;
}
.video.pdb {
  padding-bottom: 31px;
}
.video-wrap {
  width: 100%;
  margin: 0 auto;
  padding-top: 619px;
  position: relative;
}
.video-wrap iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  left: 0px;
}
/* youtube埋め込み ↑ */

@media screen and (max-width: 1440px) {
  /* youtube埋め込み ↓ */
  .video-wrap {
    padding-top: 56.3%;
  }
  /* youtube埋め込み ↑ */
}

@media screen and (max-width: 1260px) {
}

@media screen and (max-width: 1200px) {
  .inner-1100 {
    max-width: 100%;
    margin-left: 4%;
    margin-right: 4%;
  }

  /*---------------------
intro
-----------------------*/
  .intro {
    padding-top: 10.25vw;
  }
  .intro__lineText span {
    font-size: 2.666vw;
  }
  .intro__lineText {
    top: -1.71vw;
  }

  .intro__type01--en {
    padding-top: 15.416vw;
  }

  .intro__type02--en {
    padding-top: 19.583vw;
  }

  .intro__type03--en {
    padding-top: 20.416vw;
  }
}

@media screen and (max-width: 980px) {
  br.b-980 {
    display: block;
  }

  .text--sp {
    display: block;
  }
  .text--pc {
    display: none;
  }

  /*---------------------
intro
-----------------------*/
  .intro {
    padding-top: 21.693vw;
  }
  .intro__type02 {
    padding-top: 10.25vw;
  }
  .intro__type03 {
    padding-top: 10.25vw;
  }

  .intro__type01--en {
    padding-top: 26.53vw;
  }

  .intro__type02--en {
    padding-top: 38.224vw;
  }

  .intro__type03--en {
    padding-top: 20.918vw;
  }

  /*---------------------
day
-----------------------*/
  .day__detailConts {
    display: block;
  }
  .day__detailConts--wrap {
    display: block;
  }
  .day__detailConts--img {
    width: 100%;
    max-width: 242px;
    margin-bottom: 15px;
  }
  .day__detailConts--left {
    width: 100%;
    max-width: initial;
  }
  .day__detailConts--imgSml {
    padding-top: 27px;
    margin: 0 auto 0 0;
  }
}

@media screen and (max-width: 800px) {
  .text--pc800 {
    display: none;
  }

  .text--sp800 {
    display: block;
  }

  /*---------------------
intro
-----------------------*/
  .intro__type02 {
    padding-top: 17.25vw;
  }
}

@media screen and (max-width: 750px) {
  .img--sp {
    display: block;
  }
  .img--pc {
    display: none;
  }

  .section-last {
    padding-bottom: 73px;
  }

  /*---------------------
model-course
-----------------------*/
  .plan__list--item:not(:last-child) {
    margin-bottom: 48px;
  }
  .plan__imgWrap {
    padding-top: 52px;
    margin-bottom: 19px;
  }
  .plan__heading {
    font-size: 53px;
  }
  .plan__lineText span {
    font-size: 18px;
  }
  .plan__lineText span:not(:last-child) {
    margin-bottom: 6px;
  }
  .plan__lineText {
    margin-bottom: 16px;
  }
  .plan__detailWrap {
    display: block;
    margin-bottom: 34px;
  }
  .plan__detailLeft {
    width: 100%;
    max-width: initial;
    margin-bottom: 20px;
  }
  .plan__detailText {
    font-size: 14px;
  }
  .plan__detailRight {
    width: 100%;
    max-width: initial;
    padding-top: 0;
  }
  .contents-btn {
    font-size: 14px;
    padding: 8px 10px;
  }
  .contents-btn::before {
    width: 16px;
    height: 9px;
  }

  .contents-btn__en {
    padding: 8px 40px 8px 10px;
  }

  /*---------------------
fv
-----------------------*/
  .fv__title--under {
    font-size: 33px;
  }
  .fv__title--logo {
    top: 73px;
  }
  .fv__title--under {
    top: 143px;
  }
  .fv__under--img {
    height: 209px;
    object-fit: cover;
  }

  /*---------------------
intro
-----------------------*/
  .intro {
    padding-top: 135px;
    padding-bottom: 80px;
  }
  .intro__type02 {
    padding-top: 106px;
  }
  .intro__type03 {
    padding-top: 81px;
  }
  .intro__lineText {
    top: -13px;
  }
  .intro__conts {
    display: block;
  }
  .intro__imgWrap {
    width: 100%;
    max-width: 320px;
    margin: 0 auto 20px;
  }
  .intro__text {
    font-size: 14px;
    width: 100%;
    max-width: initial;
  }

  .intro__type01--en {
    padding-top: 165px;
  }

  .intro__type02--en {
    padding-top: 230px;
  }

  .intro__type03--en {
    padding-top: 140px;
  }
  /*---------------------
day
-----------------------*/
  .day__heading {
    width: 57px;
  }
  .day__heading span {
    font-size: 22px;
    padding-right: 5px;
  }
  .day__contsWrap {
    width: calc(100% - 57px);
    padding-bottom: 25px;
  }
  .day__detailWrap {
    display: block;
  }
  .day__detail--text {
    font-size: 15px;
    width: 100%;
  }
  .day__list--item {
    padding-left: 32px;
  }
  .day__list--item::before {
    width: 27px;
    height: 27px;
    left: -14px;
  }
  .day__list--item:not(:last-child) {
    margin-bottom: 25px;
  }
  .day__detailConts {
    width: 100%;
    padding-top: 15px;
  }

  /*---------------------
schedule
-----------------------*/
  .schedule__wrap {
    padding: 35px 20px;
  }
  .schedule__list--item {
    display: block;
  }
  .schedule__listTitle {
    font-size: 15px;
    padding-left: 13px;
    margin-bottom: 10px;
    width: 100%;
  }
  .schedule__listTitle::before {
    width: 5px;
    height: 19px;
  }
  .schedule__listDetail {
    width: 100%;
    max-width: initial;
  }
  .dayItem:not(:last-child) {
    margin-bottom: 10px;
  }
  .dayItem__contsWrap {
    display: block;
  }
  .dayItem__contsWrap:not(:last-child) {
    margin-bottom: 10px;
  }
  .dayItem__contsWrap--heading {
    width: 100%;
  }
  .dayItem__contsWrap--text {
    width: 100%;
  }

  #bokun_ce04dace_9cae_4735_9a81_0515571e80e5,
  #bokun_95f8eba7_68ae_472b_a931_29e56214dba6,
  #bokun_24cf5cf6_fe63_45ea_8fd3_ac2d31985df2 {
    font-size: 14px;
    padding: 7px 10px;
  }
}

@media screen and (max-width: 640px) {
  br.b-640 {
    display: block;
  }

  .text--sp640 {
    display: block;
  }

  .intro__type03 {
    padding-top: 111px;
  }

  .intro__type01--en {
    padding-top: 195px;
  }

  .plan__lineText.en {
    display: none;
  }
}

@media screen and (max-width: 500px) {
  /*---------------------
model-course
-----------------------*/
  .plan__imgWrap {
    padding-top: 44px;
    margin-bottom: 15px;
  }
  .plan__heading {
    font-size: 43px;
    right: 25px;
  }
  .plan__lineText {
    margin-bottom: 11px;
  }
  .plan__lineText span {
    font-size: 15px;
  }
  .plan__detailLeft {
    margin-bottom: 15px;
  }
  .plan__pointTitle {
    font-size: 21px;
  }
  .plan__pointList {
    padding-left: 10px;
    padding-bottom: 13px;
  }

  /*---------------------
fv
-----------------------*/
  .fv__title--under {
    font-size: 33px;
  }

  /*---------------------
intro
-----------------------*/
  .intro {
    padding-top: 115px;
  }
  .intro__type02 {
    padding-top: 95px;
  }
  .intro__type03 {
    padding-top: 96px;
  }
  .intro__lineText {
    margin-bottom: 0;
  }

  .intro__type01--en {
    padding-top: 170px;
  }

  .intro__type02--en {
    padding-top: 205px;
  }

  .intro__type03--en {
    padding-top: 120px;
  }
}

@media screen and (max-width: 480px) {
  .text--sp480 {
    display: block;
  }
  .text--pc480 {
    display: none;
  }

  /*---------------------
intro
-----------------------*/
  .intro__type03 {
    padding-top: 96px;
  }
}

@media screen and (max-width: 400px) {
  br.b-400 {
    display: block;
  }

  .text--sp {
    display: none;
  }

  .text--sp400 {
    display: block;
  }

  /*---------------------
intro
-----------------------*/
  .intro {
    padding-top: 145px;
  }

  .intro__type02 {
    padding-top: 145px;
  }
  .intro__type03 {
    padding-top: 96px;
  }

  .intro__type01--en {
    padding-top: 170px;
  }

  .intro__type02--en {
    padding-top: 205px;
  }

  .intro__type03--en {
    padding-top: 145px;
  }

  .plan__lineText.en2 {
    display: none;
  }
}

@media screen and (max-width: 375px) {
}
