@charset "UTF-8";
/*=======================================
	breakpoint
=======================================*/
/*=======================================
	hover
=======================================*/
/*=======================================
	中央配置
=======================================*/
/*=======================================
	可変レスポンシブ
=======================================*/
/* PC */
/* TB */
/* SP */
/*=======================================
	ブラウザ別
=======================================*/
/* Safari */
/* Firefox */
/*----------------------------
- base
- サイドナビ
- MV_sec
- about_sec
- recommend_sec
- information_sec
- plan_sec
- detail_sec
- flow_sec
- caution_sec
- bring_items_sec
- faq_sec
- contact_sec
----------------------------*/
/*============================
base
============================*/
:root {
  --zenmarugothic: "Zen Maru Gothic", sans-serif;
  --zenkakugothic: "Zen Kaku Gothic New", sans-serif;
  --jost: "Jost", sans-serif;
}

html {
  scroll-padding-top: 130px;
}
@media screen and (max-width: 768px) {
  html {
    scroll-padding-top: 100px;
  }
}

main.dock {
  color: #333;
  font-family: var(--zenkakugothic);
  font-size: 16px;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.02em;
  padding-top: 110px;
  position: relative;
}
@media screen and (max-width: 768px) {
  main.dock {
    padding-top: 80px;
  }
}
main.dock :where(.inner) {
  width: 60%;
  max-width: 1000px;
  margin-left: max(24.5494047619vw, 306px);
}
@media screen and (min-width: 1681px) {
  main.dock :where(.inner) {
    margin-inline: auto;
  }
}
@media screen and (max-width: 768px) {
  main.dock :where(.inner) {
    width: 89.33%;
    margin-inline: auto;
  }
}
main.dock :where(.sec_ttl_wrapper) {
  padding-left: 62px;
}
@media screen and (max-width: 768px) {
  main.dock :where(.sec_ttl_wrapper) {
    padding-left: 35px;
  }
}
main.dock :where(.sec_ttl_wrapper) :where(.sec_ttl) {
  color: #001e56;
  font-family: var(--zenmarugothic);
  font-size: 44px;
  font-weight: 700;
  line-height: 60px;
  letter-spacing: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  margin-bottom: 9px;
  position: relative;
}
@media screen and (max-width: 768px) {
  main.dock :where(.sec_ttl_wrapper) :where(.sec_ttl) {
    font-size: 24px;
    line-height: 30px;
    margin-bottom: 6px;
  }
}
main.dock :where(.sec_ttl_wrapper) :where(.sec_ttl)::before {
  content: "";
  display: block;
  width: 48px;
  aspect-ratio: 1/1;
  background: center/100% 100% no-repeat;
  position: absolute;
  top: 9px;
  left: -58px;
}
@media screen and (max-width: 768px) {
  main.dock :where(.sec_ttl_wrapper) :where(.sec_ttl)::before {
    width: 28.64px;
    top: 2px;
    left: -35px;
  }
}
main.dock :where(.sec_ttl_wrapper) :where(.sec_ttl).glass_blue::before {
  background-image: url(../image/dock/glass_blue.png);
}
main.dock :where(.sec_ttl_wrapper) :where(.sec_ttl).glass_white::before {
  background-image: url(../image/dock/glass_white.png);
}
main.dock :where(.sec_ttl_wrapper) :where(.sec_ttl) .big {
  font-size: 54px;
}
@media screen and (max-width: 768px) {
  main.dock :where(.sec_ttl_wrapper) :where(.sec_ttl) .big {
    font-size: 30px;
  }
}
main.dock :where(.sec_ttl_wrapper) :where(.sec_ttl) .big .ls10 {
  letter-spacing: 0.1em;
}
main.dock :where(.sec_ttl_wrapper) :where(.sec_ttl) .big .ls-5 {
  letter-spacing: -0.05em;
}
main.dock :where(.sec_ttl_wrapper) :where(.sec_ttl) .big .ls-10 {
  letter-spacing: -0.1em;
}
main.dock :where(.sec_ttl_wrapper) :where(.sec_ttl) .q_mark {
  font-size: 48px;
  translate: -8px -3px;
}
@media screen and (max-width: 768px) {
  main.dock :where(.sec_ttl_wrapper) :where(.sec_ttl) .q_mark {
    font-size: 24px;
    translate: 0 0;
  }
}
main.dock :where(.sec_ttl_wrapper) .en {
  color: #E3732D;
  font-family: var(--jost);
  letter-spacing: 0.1em;
  line-height: 1;
  padding-left: 4px;
  margin-bottom: 45px;
}
@media screen and (max-width: 768px) {
  main.dock :where(.sec_ttl_wrapper) .en {
    font-size: 13px;
    margin-bottom: 30px;
  }
}
main.dock :where(.sec_sttl) {
  font-family: var(--zenmarugothic);
  color: #001e56;
  font-size: 40px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
  padding-left: 56px;
  padding-bottom: 24px;
  margin-left: 12px;
  position: relative;
  border-bottom: 1px solid #98A3C7;
}
@media screen and (max-width: 768px) {
  main.dock :where(.sec_sttl) {
    font-size: 24px;
    padding-bottom: 12px;
    padding-left: 36px;
  }
}
main.dock :where(.sec_sttl)::before {
  content: "";
  display: block;
  width: 44px;
  aspect-ratio: 1/1;
  background: center/100% 100% url(../image/dock/check_sttl.svg) no-repeat;
  position: absolute;
  top: 2px;
  left: 0;
}
@media screen and (max-width: 768px) {
  main.dock :where(.sec_sttl)::before {
    width: 26px;
  }
}
main.dock :where(.content_sttl_wrapper) {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding-left: 62px;
}
@media screen and (max-width: 768px) {
  main.dock :where(.content_sttl_wrapper) {
    padding-left: 28px;
  }
}
main.dock :where(.content_sttl_wrapper) .content_sttl {
  position: relative;
  color: #fff;
  font-family: var(--zenmarugothic);
  margin-bottom: 15px;
  font-size: 40px;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 60px;
}
@media screen and (max-width: 1400px) {
  main.dock :where(.content_sttl_wrapper) .content_sttl {
    font-size: 18px;
    font-size: clamp(18px, 2.5vw, 40px);
    line-height: 30px;
    margin-bottom: 5px;
  }
}
main.dock :where(.content_sttl_wrapper) .content_sttl .big {
  font-size: 50px;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.2;
}
@media screen and (max-width: 1400px) {
  main.dock :where(.content_sttl_wrapper) .content_sttl .big {
    font-size: clamp(24px, 3.125vw, 50px);
  }
}
main.dock :where(.content_sttl_wrapper) .content_sttl::before {
  content: "";
  display: block;
  width: 48px;
  aspect-ratio: 1/1;
  background: center/100% 100% no-repeat;
  position: absolute;
  top: 9px;
  left: -58px;
  background-image: url(../image/dock/glass_white.png);
}
@media screen and (max-width: 1400px) {
  main.dock :where(.content_sttl_wrapper) .content_sttl::before {
    width: 20.15px;
    width: clamp(20.15px, 3vw, 48px);
    top: 3px;
    left: -45px;
    left: clamp(-58px, -3.625vw, -26px);
  }
}
@media screen and (max-width: 768px) {
  main.dock :where(.content_sttl_wrapper) .content_sttl::before {
    left: -26px;
  }
}
main.dock :where(.bottom_spacing) {
  margin-bottom: 168px;
}
@media screen and (max-width: 768px) {
  main.dock :where(.bottom_spacing) {
    margin-bottom: 80px;
  }
}

a {
  -webkit-transition: none;
  transition: none;
}

.nowrap {
  white-space: nowrap;
}

/*============================
サイドナビ
============================*/
.side_nav_wrapper {
  width: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  z-index: 10;
  pointer-events: none;
  opacity: 0;
  -webkit-transition: opacity 1s ease;
  transition: opacity 1s ease;
}
@media screen and (max-width: 768px) {
  .side_nav_wrapper {
    margin-bottom: 47px;
    pointer-events: all;
    position: static;
    z-index: 1;
  }
}
body.is-loaded .side_nav_wrapper {
  opacity: 1;
  -webkit-transition-delay: 0.8s;
          transition-delay: 0.8s;
  -webkit-transition-delay: 0.53s;
          transition-delay: 0.53s;
}
.side_nav_wrapper .side_nav_inner {
  width: 100%;
  height: 100%;
  margin-inline: auto;
  padding-left: 6.8113095238vw;
}
@media screen and (max-width: 768px) {
  .side_nav_wrapper .side_nav_inner {
    width: 89.3%;
    background: #F1F6FF;
    border-radius: 10px;
    padding: 20px 12px;
  }
}
.side_nav_wrapper .side_nav_inner .side_nav {
  width: 234px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  position: -webkit-sticky;
  position: sticky;
  top: 18.4523809524vw;
  z-index: 10;
  pointer-events: auto;
}
@media screen and (max-width: 768px) {
  .side_nav_wrapper .side_nav_inner .side_nav {
    width: 100%;
    height: 100%;
    position: static;
  }
}
.side_nav_wrapper .side_nav_inner .side_nav .side_nav_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  position: relative;
  gap: 15px;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .side_nav_wrapper .side_nav_inner .side_nav .side_nav_list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 19px 10px;
  }
}
.side_nav_wrapper .side_nav_inner .side_nav .side_nav_list::after {
  content: "";
  display: block;
  width: clamp(250px, 8.3vw + 154px, 268px);
  height: 486px;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.6);
  position: absolute;
  top: -31px;
  left: -39px;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  z-index: -1;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .side_nav_wrapper .side_nav_inner .side_nav .side_nav_list::after {
    display: none;
  }
}
.side_nav_wrapper .side_nav_inner .side_nav .side_nav_list:has(.has_bg.active)::after {
  opacity: 1;
}
.side_nav_wrapper .side_nav_inner .side_nav .side_nav_item {
  color: #7081A1;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: 29px;
  display: grid;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  -webkit-transition: color 0.4s;
  transition: color 0.4s;
}
@media screen and (max-width: 768px) {
  .side_nav_wrapper .side_nav_inner .side_nav .side_nav_item {
    color: #002259;
    width: 100%;
    height: auto;
    padding-bottom: 9px;
    border-bottom: 1px solid #A5B0C4;
  }
}
.side_nav_wrapper .side_nav_inner .side_nav .side_nav_item::before {
  content: "";
  display: block;
  width: 0;
  height: 1px;
  background: currentColor;
  position: absolute;
  left: 28px;
  bottom: -1px;
  -webkit-transition: width 0.4s ease;
  transition: width 0.4s ease;
}
@media screen and (max-width: 768px) {
  .side_nav_wrapper .side_nav_inner .side_nav .side_nav_item::before {
    display: none;
  }
}
.side_nav_wrapper .side_nav_inner .side_nav .side_nav_item::after {
  content: "";
  width: 1px;
  height: 44px;
  position: absolute;
  top: 14.5px;
  left: 4px;
  background: #A5B0C4;
  z-index: 0;
}
@media screen and (max-width: 768px) {
  .side_nav_wrapper .side_nav_inner .side_nav .side_nav_item::after {
    display: none;
  }
}
.side_nav_wrapper .side_nav_inner .side_nav .side_nav_item:last-child::after {
  display: none;
}
.side_nav_wrapper .side_nav_inner .side_nav .side_nav_item.passed a {
  color: #002259;
}
.side_nav_wrapper .side_nav_inner .side_nav .side_nav_item.passed a::before {
  background: #002259;
}
.side_nav_wrapper .side_nav_inner .side_nav .side_nav_item.passed::after {
  background: #002259;
}
.side_nav_wrapper .side_nav_inner .side_nav .side_nav_item:first-child a {
  font-size: 18px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .side_nav_wrapper .side_nav_inner .side_nav .side_nav_item:first-child a {
    font-size: 14px;
    font-weight: 500;
  }
}
@media screen and (max-width: 768px) {
  .side_nav_wrapper .side_nav_inner .side_nav .side_nav_item.plan a {
    font-size: 13px;
  }
}
.side_nav_wrapper .side_nav_inner .side_nav .side_nav_item a {
  font-weight: 500;
  line-height: 29px;
  letter-spacing: 0;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding-left: 28px;
  position: relative;
  z-index: 1;
  opacity: 1 !important;
}
@media (min-width: 769px) and (hover: hover) and (pointer: fine) {
  .side_nav_wrapper .side_nav_inner .side_nav .side_nav_item a:hover {
    opacity: 1 !important;
    color: #002259;
  }
}
@media (min-width: 769px) and (-ms-high-contrast: none), (min-width: 769px) and (-ms-high-contrast: active) {
  .side_nav_wrapper .side_nav_inner .side_nav .side_nav_item a:hover {
    opacity: 1 !important;
    color: #002259;
  }
}
.side_nav_wrapper .side_nav_inner .side_nav .side_nav_item a:hover, .side_nav_wrapper .side_nav_inner .side_nav .side_nav_item a:focus, .side_nav_wrapper .side_nav_inner .side_nav .side_nav_item a:active {
  opacity: 1 !important;
}
@media screen and (max-width: 768px) {
  .side_nav_wrapper .side_nav_inner .side_nav .side_nav_item a {
    font-size: 14px;
    line-height: 20px;
    width: 100%;
    padding-left: 0;
  }
  .side_nav_wrapper .side_nav_inner .side_nav .side_nav_item a:hover {
    opacity: 1;
  }
}
.side_nav_wrapper .side_nav_inner .side_nav .side_nav_item a::before {
  content: "";
  width: 9px;
  aspect-ratio: 1/1;
  background: #7081A1;
  border-radius: 100%;
  position: absolute;
  top: 10px;
  left: 0;
  z-index: 2;
}
@media screen and (max-width: 768px) {
  .side_nav_wrapper .side_nav_inner .side_nav .side_nav_item a::before {
    display: none;
  }
}
.side_nav_wrapper .side_nav_inner .side_nav .side_nav_item a::after {
  content: "";
  width: 37px;
  aspect-ratio: 1/1;
  border-radius: 100%;
  background: #A4B8DD;
  position: absolute;
  top: -4px;
  left: -14px;
  z-index: 1;
  scale: 0;
  -webkit-transition: scale 0.4s ease;
  transition: scale 0.4s ease;
}
@media screen and (max-width: 768px) {
  .side_nav_wrapper .side_nav_inner .side_nav .side_nav_item a::after {
    width: 4px;
    background: transparent;
    border-radius: 0;
    border-right: 1px solid #00266C;
    border-bottom: 1px solid #00266C;
    rotate: 45deg;
    top: 50%;
    left: auto;
    right: 7px;
    translate: 0 -50%;
    z-index: 1;
    scale: 1;
  }
}
.side_nav_wrapper .side_nav_inner .side_nav .side_nav_item.active::before {
  width: calc(100% - 28px);
}
.side_nav_wrapper .side_nav_inner .side_nav .side_nav_item.active a {
  color: #002259;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .side_nav_wrapper .side_nav_inner .side_nav .side_nav_item.active a {
    font-weight: inherit;
  }
}
.side_nav_wrapper .side_nav_inner .side_nav .side_nav_item.active a::before {
  background: #002259;
}
.side_nav_wrapper .side_nav_inner .side_nav .side_nav_item.active a::after {
  scale: 1;
}

/*============================
mv_sec
============================*/
.mv_sec {
  width: 100%;
  background: center/100% 100% url(../image/dock/mv_bg.jpg) no-repeat;
  margin-bottom: 140.66px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .mv_sec {
    margin-bottom: 30px;
    background-image: url(../image/dock/mv_bg_sp.jpg);
  }
}
.mv_sec .inner {
  padding-top: 10.9916666667vw;
  padding-bottom: 7.5547619048vw;
}
@media screen and (max-width: 768px) {
  .mv_sec .inner {
    width: 90%;
    margin: 0 auto;
    padding-top: 25px;
    padding-bottom: 32px;
  }
}
.mv_sec .inner .ttl_wrapper {
  font-family: var(--zenmarugothic);
  font-size: 34.52px;
  letter-spacing: 0.1em;
  line-height: 45px;
  padding-top: 8px;
  margin-bottom: 50px;
  position: relative;
  z-index: 1;
  opacity: 0;
  -webkit-transition: opacity 1s ease;
  transition: opacity 1s ease;
}
@media screen and (max-width: 768px) {
  .mv_sec .inner .ttl_wrapper {
    font-size: 24.58px;
    margin-bottom: 172px;
  }
}
body.is-loaded .mv_sec .inner .ttl_wrapper {
  opacity: 1;
  -webkit-transition-delay: 0.53s;
          transition-delay: 0.53s;
}
.mv_sec .inner .ttl_wrapper .ttl_intro {
  color: #001e56;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-bottom: 43px;
}
@media screen and (max-width: 768px) {
  .mv_sec .inner .ttl_wrapper .ttl_intro {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-bottom: 10px;
  }
}
.mv_sec .inner .ttl_wrapper .ttl_intro .circle_back {
  position: relative;
  margin-left: 6px;
  margin-right: 4px;
  letter-spacing: 0.2em;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .mv_sec .inner .ttl_wrapper .ttl_intro .circle_back {
    margin-left: 8px;
  }
}
.mv_sec .inner .ttl_wrapper .ttl_intro .circle_back::before, .mv_sec .inner .ttl_wrapper .ttl_intro .circle_back::after {
  content: "";
  display: block;
  width: 57px;
  aspect-ratio: 1/1;
  border-radius: 100%;
  background: #FFB181;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .mv_sec .inner .ttl_wrapper .ttl_intro .circle_back::before, .mv_sec .inner .ttl_wrapper .ttl_intro .circle_back::after {
    width: 40px;
  }
}
.mv_sec .inner .ttl_wrapper .ttl_intro .circle_back::before {
  top: 53%;
  left: -10px;
}
@media screen and (max-width: 768px) {
  .mv_sec .inner .ttl_wrapper .ttl_intro .circle_back::before {
    top: 50%;
    left: -8px;
  }
}
.mv_sec .inner .ttl_wrapper .ttl_intro .circle_back::after {
  top: 55%;
  right: -3px;
}
@media screen and (max-width: 768px) {
  .mv_sec .inner .ttl_wrapper .ttl_intro .circle_back::after {
    top: 50%;
    right: -1px;
  }
}
.mv_sec .inner .ttl_wrapper .ttl_intro .tilt {
  rotate: 15deg;
  margin-left: -10px;
}
@media screen and (max-width: 768px) {
  .mv_sec .inner .ttl_wrapper .ttl_intro .tilt {
    margin-left: -2px;
  }
}
.mv_sec .inner .ttl_wrapper .ttl {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: calc(100vw - max(24.5494047619vw, 306px) - 60px);
  padding-left: 6.8px;
}
@media screen and (max-width: 768px) {
  .mv_sec .inner .ttl_wrapper .ttl {
    width: 246px;
    max-width: none;
    padding-left: 0;
    margin-inline: auto;
  }
}
.mv_sec .inner .ttl_wrapper .ttl picture {
  display: block;
}
.mv_sec .inner .mv_txt {
  font-size: 20px;
  position: relative;
  z-index: 10;
  opacity: 0;
  -webkit-transition: opacity 1s ease;
  transition: opacity 1s ease;
}
@media screen and (max-width: 1000px) {
  .mv_sec .inner .mv_txt .nowrap {
    white-space: normal;
  }
}
@media screen and (max-width: 768px) {
  .mv_sec .inner .mv_txt .nowrap {
    width: 335px;
    margin-inline: auto;
  }
}
body.is-loaded .mv_sec .inner .mv_txt {
  opacity: 1;
  -webkit-transition-delay: 0.53s;
          transition-delay: 0.53s;
}
@media screen and (max-width: 768px) {
  .mv_sec .inner .mv_txt {
    font-size: 16px;
    text-align: center;
  }
}
.mv_sec .inner .mv_txt .capsule {
  font-size: 21.37px;
  font-weight: 700;
  color: #E3732D;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: 47.58px;
  display: inline-grid;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 23.66px;
  background: #FFF;
  padding-inline: 1.3988095238vw;
  margin-right: 0.8928571429vw;
  margin-bottom: 14.5px;
}
@media screen and (max-width: 768px) {
  .mv_sec .inner .mv_txt .capsule {
    font-size: 14px;
    height: auto;
    line-height: 24px;
    padding: 2px 10px;
    margin-right: 5px;
    margin-bottom: 0;
  }
}
.mv_sec .inner .mv_txt .capsule:last-child {
  margin-right: 0.5952380952vw;
}
@media screen and (max-width: 768px) {
  .mv_sec .inner .mv_txt .capsule:last-child {
    margin-right: 8px;
  }
}
.mv_sec .inner .mv_txt .indent {
  display: block;
  padding-left: 9px;
}
@media screen and (max-width: 1000px) {
  .mv_sec .inner .mv_txt .indent {
    width: 67%;
  }
  .mv_sec .inner .mv_txt .indent br {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .mv_sec .inner .mv_txt .indent {
    width: 100%;
    line-height: 1.625;
    text-align: center;
    padding-left: 0;
    margin-inline: auto;
  }
  .mv_sec .inner .mv_txt .indent br {
    display: block;
  }
}
.mv_sec .mv_img_area {
  width: clamp(130px, 43.57vw - 236px, 496px);
  aspect-ratio: 496/614;
  position: absolute;
  right: clamp(50px, 21.1vw - 244.5px, 110px);
  bottom: clamp(1%, 12.25vw - 155.8px, 50px);
  z-index: 0;
}
@media screen and (max-width: 768px) {
  .mv_sec .mv_img_area {
    width: 339px;
    aspect-ratio: 339/190;
    left: 50%;
    top: 264px;
    right: auto;
    bottom: auto;
    translate: -50% 0;
  }
}
.mv_sec .mv_img_area .mv_img_wrapper {
  width: 100%;
  height: 100%;
  position: relative;
}
.mv_sec .mv_img_area .mv_img_wrapper .mv_img {
  display: block;
  position: absolute;
  opacity: 0;
  -webkit-transition: opacity 0.53s ease;
  transition: opacity 0.53s ease;
}
body.is-loaded .mv_sec .mv_img_area .mv_img_wrapper .mv_img {
  opacity: 1;
}
.mv_sec .mv_img_area .mv_img_wrapper .mv_img:nth-of-type(1) {
  width: 72.17%;
  aspect-ratio: 358/402;
  position: absolute;
  top: 0;
  right: 0;
}
@media screen and (max-width: 768px) {
  .mv_sec .mv_img_area .mv_img_wrapper .mv_img:nth-of-type(1) {
    width: 47.4926253687%;
  }
}
body.is-loaded .mv_sec .mv_img_area .mv_img_wrapper .mv_img:nth-of-type(1) {
  -webkit-transition-delay: 0.53s;
          transition-delay: 0.53s;
}
.mv_sec .mv_img_area .mv_img_wrapper .mv_img:nth-of-type(2) {
  width: 55.84%;
  aspect-ratio: 1/1;
  position: absolute;
  top: 29.96%;
  right: 44.15%;
}
@media screen and (max-width: 768px) {
  .mv_sec .mv_img_area .mv_img_wrapper .mv_img:nth-of-type(2) {
    width: 37.1681415929%;
    top: auto;
    right: 37.1681415929%;
    bottom: 0;
  }
}
body.is-loaded .mv_sec .mv_img_area .mv_img_wrapper .mv_img:nth-of-type(2) {
  -webkit-transition-delay: 0.27s;
          transition-delay: 0.27s;
}
.mv_sec .mv_img_area .mv_img_wrapper .mv_img:nth-of-type(3) {
  width: 46.37%;
  aspect-ratio: 1/1;
  position: absolute;
  top: 62.54%;
  right: 25.6%;
}
@media screen and (max-width: 768px) {
  .mv_sec .mv_img_area .mv_img_wrapper .mv_img:nth-of-type(3) {
    width: 30.6784660767%;
    top: 43px;
    right: auto;
    left: 0;
  }
}
body.is-loaded .mv_sec .mv_img_area .mv_img_wrapper .mv_img:nth-of-type(3) {
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

/*============================
about_sec
============================*/
.about_sec {
  margin-bottom: 150px;
}
@media screen and (max-width: 768px) {
  .about_sec {
    margin-bottom: 50px;
  }
}
.about_sec .inner .sec_ttl_wrapper .en {
  margin-bottom: 70px;
}
@media screen and (max-width: 768px) {
  .about_sec .inner .sec_ttl_wrapper .en {
    margin-bottom: 30px;
  }
}
.about_sec .inner .main_con {
  position: relative;
  background: #FFF7F3;
  border-radius: 30px;
  width: 100%;
  max-width: 1000px;
  margin-bottom: 15%;
}
@media screen and (max-width: 768px) {
  .about_sec .inner .main_con {
    margin-bottom: 10%;
    border-radius: 20px;
  }
}
.about_sec .inner .main_con .about_main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 4.7%;
  padding: 6.8% 7.7% 7.7% 7%;
}
@media screen and (max-width: 1000px) {
  .about_sec .inner .main_con .about_main {
    display: block;
    padding: 6.8% 5.7% 6% 5.7%;
  }
}
.about_sec .inner .main_con .about_main img {
  width: 112px;
  height: 112px;
  margin-top: 10px;
}
@media screen and (max-width: 1000px) {
  .about_sec .inner .main_con .about_main img {
    display: block;
    width: 80px;
    height: 80px;
    aspect-ratio: 1/1;
    margin: 0 auto 15px;
  }
}
.about_sec .inner .main_con .about_main .txt_area {
  display: block;
  padding: 0;
}
.about_sec .inner .main_con .about_main .txt_area .sec_des {
  position: relative;
  left: 24px;
  display: inline-block;
  width: 95%;
  color: #E3732D;
  margin-bottom: 19px;
  font-size: 28px;
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 2.4;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
@media screen and (max-width: 768px) {
  .about_sec .inner .main_con .about_main .txt_area .sec_des {
    width: 97%;
    left: 0px;
    margin-bottom: 10px;
    font-size: 18px;
  }
}
.about_sec .inner .main_con .about_main .txt_area .sec_des span {
  position: relative;
  background: #fff;
  padding: 6px 8px 6px 0px;
  -webkit-box-shadow: 0px 0 0 #fff, -24px 0 0 #fff;
          box-shadow: 0px 0 0 #fff, -24px 0 0 #fff;
  /* 改行された要素の端にも padding や border を適用する */
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  /* Safari用 */
  z-index: 10;
}
@media screen and (max-width: 768px) {
  .about_sec .inner .main_con .about_main .txt_area .sec_des span {
    -webkit-box-shadow: 0px 0 0 #fff, -7px 0 0 #fff;
            box-shadow: 0px 0 0 #fff, -7px 0 0 #fff;
  }
}
.about_sec .inner .main_con .about_main .txt_area .sec_des span:last-of-type {
  z-index: 1;
}
.about_sec .inner .main_con .about_main .txt_area .txt {
  margin-bottom: 21px;
  background-size: 100% 2.5em;
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 2.5;
}
@media screen and (max-width: 768px) {
  .about_sec .inner .main_con .about_main .txt_area .txt {
    margin-bottom: 17px;
    font-size: 16px;
  }
}
.about_sec .inner .main_con .about_main .txt_area .txt:last-of-type {
  margin-bottom: 0;
}
.about_sec .inner .main_con .about_main .txt_area .txt .txt_group {
  padding-bottom: 7px;
  border-bottom: 1px solid #FFB181;
}
.about_sec .inner .main_con .about_img_con {
  padding-bottom: 96px;
}
@media screen and (max-width: 768px) {
  .about_sec .inner .main_con .about_img_con {
    padding-bottom: 20px;
  }
}
.about_sec .inner .main_con .about_img_con .exam_info {
  display: block;
  width: 90%;
  max-width: 850px;
  height: auto;
  aspect-ratio: 850/464;
  margin: 0 auto;
}
@media screen and (max-width: 900px) {
  .about_sec .inner .main_con .about_img_con .exam_info {
    width: 100%;
    aspect-ratio: auto;
  }
}
.about_sec .inner .main_con .about_img_con .exam_info img {
  display: block;
  width: 100%;
  height: auto;
}
.about_sec .inner .main_con .corner {
  position: absolute;
  width: 74px;
  height: 74px;
  border-top: 5px solid #E3732D;
  border-left: 5px solid #E3732D;
  border-radius: 30px 0 0 0;
  top: -3.35px;
  left: -4px;
}
@media screen and (max-width: 768px) {
  .about_sec .inner .main_con .corner {
    border-radius: 20px 0 0 0;
  }
}
.about_sec .inner .main_con .corner:nth-of-type(2) {
  border-top: 5px solid #E3732D;
  border-right: 5px solid #E3732D;
  border-left: none;
  border-radius: 0 30px 0 0;
  top: -3.35px;
  right: -4px;
  left: auto;
}
@media screen and (max-width: 768px) {
  .about_sec .inner .main_con .corner:nth-of-type(2) {
    border-radius: 0 20px 0 0;
  }
}
.about_sec .inner .main_con .corner:nth-of-type(3) {
  border-top: none;
  border-bottom: 5px solid #E3732D;
  border-left: 5px solid #E3732D;
  border-right: none;
  border-radius: 0 0 0 30px;
  top: auto;
  bottom: -2.1px;
  left: -4px;
}
@media screen and (max-width: 768px) {
  .about_sec .inner .main_con .corner:nth-of-type(3) {
    border-radius: 0 0 0 20px;
  }
}
.about_sec .inner .main_con .corner:nth-of-type(4) {
  border-top: none;
  border-bottom: 5px solid #E3732D;
  border-right: 5px solid #E3732D;
  border-left: none;
  border-radius: 0 0 30px 0;
  top: auto;
  left: auto;
  bottom: -2.1px;
  right: -4px;
}
@media screen and (max-width: 768px) {
  .about_sec .inner .main_con .corner:nth-of-type(4) {
    border-radius: 0 0 20px 0;
  }
}

/*============================
recommend_sec
============================*/
.reccomend_sec {
  margin-bottom: 9.92619%;
}
@media screen and (max-width: 768px) {
  .reccomend_sec {
    margin-bottom: 50px;
  }
}
.reccomend_sec .inner {
  background: #2C56A5;
  padding: 4.11428% 60px;
  border-radius: 30px;
}
@media screen and (max-width: 768px) {
  .reccomend_sec .inner {
    padding: 40px clamp(20px, 1.75vw, 28px);
    border-radius: 20px;
  }
}
.reccomend_sec .inner .content_sttl_wrapper {
  margin: 0 auto 35px;
  padding-left: 2.5%;
}
.reccomend_sec .inner .people_like_div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 25px 18px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 26px;
}
@media screen and (max-width: 1000px) {
  .reccomend_sec .inner .people_like_div {
    gap: 12px 10px;
    margin-bottom: 20px;
  }
}
.reccomend_sec .inner .people_like_div .people_like {
  width: 413px;
  height: 85px;
  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;
  background: #fff;
  text-align: center;
  border-radius: 6px;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 2.2;
}
@media screen and (max-width: 1000px) {
  .reccomend_sec .inner .people_like_div .people_like {
    width: 300px;
    height: 65px;
    font-size: 16px;
  }
}
.reccomend_sec .inner .people_like_div .people_like .color_txt {
  color: #E3732D;
}
.reccomend_sec .inner .content_des {
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 2;
}
@media screen and (max-width: 1000px) {
  .reccomend_sec .inner .content_des {
    font-size: 14px;
  }
}

/*============================
information_sec
============================*/
.information_sec {
  position: relative;
  background-image: url(../image/dock/planinfo_bg.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: bottom;
  margin-bottom: 122px;
  overflow: hidden;
}
@media screen and (max-width: 1000px) {
  .information_sec {
    margin-bottom: 55px;
  }
}
.information_sec .inner {
  padding-top: 120px;
  padding-bottom: 75px;
}
@media screen and (max-width: 768px) {
  .information_sec .inner {
    padding-top: 56px;
    padding-bottom: 8px;
    margin-bottom: 32px;
    width: 90%;
    max-width: 100vw;
    margin: 0 auto;
  }
}
.information_sec .inner .sec_ttl_wrapper .en {
  margin-bottom: 50px;
}
@media screen and (max-width: 1000px) {
  .information_sec .inner .sec_ttl_wrapper .en {
    margin-bottom: 28px;
  }
}
.information_sec .inner .flex_area {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 40px 15px;
}
@media screen and (max-width: 1400px) {
  .information_sec .inner .flex_area {
    width: 100%;
    display: block;
    gap: 0 10px;
  }
}
.information_sec .inner .flex_area .reco_con {
  position: relative;
  width: 323px;
  height: 706px;
  background: #fff;
  border-radius: 10px;
  padding: 38px 24px 0 35px;
  -webkit-box-shadow: 2px 2px 4px 0 #A4B8DD;
          box-shadow: 2px 2px 4px 0 #A4B8DD;
  background-image: url(../image/dock/planinfo_img01.png);
  background-size: 97px;
  background-repeat: no-repeat;
  background-position: 115px 602px;
}
@media screen and (max-width: 1400px) {
  .information_sec .inner .flex_area .reco_con {
    width: 100%;
    height: auto;
    padding: 12px 34px;
    padding-bottom: 45px;
    background-position: right 47px bottom 43px;
    margin: 0 auto;
    margin-bottom: 31px;
  }
}
@media screen and (max-width: 1000px) {
  .information_sec .inner .flex_area .reco_con {
    width: 100%;
    height: auto;
    padding: 15px 4vw 3.38028vw;
    padding-bottom: 80px;
    background-position: bottom;
    background-size: 70px;
    margin: 0 auto;
    margin-bottom: 28px;
  }
}
.information_sec .inner .flex_area .reco_con .subject {
  height: 111px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-bottom: 30px;
  border-bottom: 1px solid #A5B0C4;
  text-align: center;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.5;
}
@media screen and (max-width: 1400px) {
  .information_sec .inner .flex_area .reco_con .subject {
    height: 83px;
    padding-bottom: 0;
  }
}
@media screen and (max-width: 1000px) {
  .information_sec .inner .flex_area .reco_con .subject {
    height: auto;
    padding-top: 5px;
    padding-bottom: 20px;
    font-size: 16px;
  }
}
.information_sec .inner .flex_area .reco_con .description {
  padding: 30px 0 32px;
  border-bottom: 1px solid #A5B0C4;
}
@media screen and (max-width: 1400px) {
  .information_sec .inner .flex_area .reco_con .description {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 10px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media screen and (max-width: 1000px) {
  .information_sec .inner .flex_area .reco_con .description {
    gap: 8px;
    padding: 13px 0 5px;
  }
}
.information_sec .inner .flex_area .reco_con .description .name {
  color: #06AEC0;
  text-align: center;
  font-size: 32px;
  font-weight: 900;
  line-height: 1.3;
}
@media screen and (max-width: 1000px) {
  .information_sec .inner .flex_area .reco_con .description .name {
    font-size: 24px;
    margin-bottom: -6px;
  }
}
.information_sec .inner .flex_area .reco_con .description .name .sm01 {
  font-size: 28px;
}
@media screen and (max-width: 1000px) {
  .information_sec .inner .flex_area .reco_con .description .name .sm01 {
    font-size: 20px;
  }
}
@media screen and (max-width: 1400px) {
  .information_sec .inner .flex_area .reco_con .description .sp_flex_wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 8px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.information_sec .inner .flex_area .reco_con .description .sp_flex_wrapper .price {
  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;
  color: #06AEC0;
  margin-bottom: 8px;
  font-family: "jost", sans-serif;
  font-size: 48px;
  font-weight: 500;
  line-height: 1.3;
}
@media screen and (max-width: 1400px) {
  .information_sec .inner .flex_area .reco_con .description .sp_flex_wrapper .price {
    margin-bottom: 0;
  }
}
@media screen and (max-width: 1000px) {
  .information_sec .inner .flex_area .reco_con .description .sp_flex_wrapper .price {
    margin-bottom: 4px;
    font-size: 36px;
  }
}
.information_sec .inner .flex_area .reco_con .description .sp_flex_wrapper .price .md {
  margin-top: 3px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 28px;
  font-weight: 700;
}
@media screen and (max-width: 1000px) {
  .information_sec .inner .flex_area .reco_con .description .sp_flex_wrapper .price .md {
    font-size: 20px;
  }
}
.information_sec .inner .flex_area .reco_con .description .sp_flex_wrapper .price .sm02 {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 17px;
  font-weight: 700;
  margin-top: 13px;
}
@media screen and (max-width: 1000px) {
  .information_sec .inner .flex_area .reco_con .description .sp_flex_wrapper .price .sm02 {
    margin-top: 10px;
    font-size: 13px;
  }
}
.information_sec .inner .flex_area .reco_con .description .sp_flex_wrapper .price .kanma {
  letter-spacing: -0.1em;
}
.information_sec .inner .flex_area .reco_con .description .sp_flex_wrapper .time {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background: #D9FAFE;
  border-radius: 18px;
  padding: 0 19px 0px 21px;
  margin: 0 auto 5px;
  font-size: 18px;
  font-weight: 500;
  line-height: 2;
}
@media screen and (max-width: 1400px) {
  .information_sec .inner .flex_area .reco_con .description .sp_flex_wrapper .time {
    margin-bottom: 0;
  }
}
@media screen and (max-width: 1000px) {
  .information_sec .inner .flex_area .reco_con .description .sp_flex_wrapper .time {
    padding: 2px 9px;
    margin: 0;
    margin-bottom: 0;
    font-size: 14px;
  }
}
.information_sec .inner .flex_area .reco_con .description .sp_flex_wrapper .time .num {
  margin-left: 13px;
  font-size: 25px;
  font-weight: 500;
  line-height: 1.2;
}
@media screen and (max-width: 1000px) {
  .information_sec .inner .flex_area .reco_con .description .sp_flex_wrapper .time .num {
    margin-left: 5px;
    font-size: 18.19px;
  }
}
.information_sec .inner .flex_area .reco_con .description .sp_flex_wrapper .time .num .small {
  font-size: 18px;
}
@media screen and (max-width: 1000px) {
  .information_sec .inner .flex_area .reco_con .description .sp_flex_wrapper .time .num .small {
    font-size: 14px;
  }
}
.information_sec .inner .flex_area .reco_con .des_txt {
  margin-top: 27px;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 2;
}
@media screen and (max-width: 1400px) {
  .information_sec .inner .flex_area .reco_con .des_txt {
    width: 78.7623%;
    padding-right: 10px;
  }
}
@media screen and (max-width: 1000px) {
  .information_sec .inner .flex_area .reco_con .des_txt {
    width: auto;
    margin-top: 10px;
    padding-right: 0;
    font-size: 14px;
  }
}
.information_sec .inner .flex_area :where(.sp) {
  display: none;
}
@media screen and (max-width: 1000px) {
  .information_sec .inner .flex_area :where(.sp) {
    display: block;
  }
}
.information_sec .inner .flex_area .reco_con:nth-of-type(2) {
  background-image: url(../image/dock/planinfo_img02.png);
  background-size: 145px;
  background-repeat: no-repeat;
  background-position: bottom;
  padding-bottom: 83px;
}
@media screen and (max-width: 1400px) {
  .information_sec .inner .flex_area .reco_con:nth-of-type(2) {
    background-position: right 47px bottom 43px;
  }
}
@media screen and (max-width: 1000px) {
  .information_sec .inner .flex_area .reco_con:nth-of-type(2) {
    background-position: bottom;
    background-size: 88px;
  }
}
.information_sec .inner .flex_area .reco_con:nth-of-type(2) .description .name {
  color: #058DE2;
}
.information_sec .inner .flex_area .reco_con:nth-of-type(2) .description .price {
  color: #058DE2;
}
.information_sec .inner .flex_area .reco_con:nth-of-type(2) .description .time {
  background: #CDECFF;
}
.information_sec .inner .flex_area .reco_con:nth-of-type(3) {
  background-image: url(../image/dock/planinfo_img03.png);
  background-size: 260px;
  background-repeat: no-repeat;
  background-position: bottom;
  padding-bottom: 86px;
  margin-bottom: 55px;
}
@media screen and (max-width: 1400px) {
  .information_sec .inner .flex_area .reco_con:nth-of-type(3) {
    background-image: url(../image/dock/planinfo_img03_sp.png);
    background-position: right 47px bottom 43px;
    background-size: 130px;
  }
}
@media screen and (max-width: 1000px) {
  .information_sec .inner .flex_area .reco_con:nth-of-type(3) {
    background-position: bottom;
    background-size: 80px;
  }
}
.information_sec .inner .flex_area .reco_con:nth-of-type(3) .description .name {
  color: #2C56A5;
}
.information_sec .inner .flex_area .reco_con:nth-of-type(3) .description .price {
  color: #2C56A5;
}
.information_sec .inner .flex_area .reco_con:nth-of-type(3) .description .time {
  background: #D2E2FF;
}
.information_sec .inner .flex_area .tag::before {
  content: "";
  display: block;
  position: absolute;
  background-image: url(../image/dock/reco_tag.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 97px;
  height: 73px;
  top: -12px;
  left: 17px;
}
@media screen and (max-width: 1000px) {
  .information_sec .inner .flex_area .tag::before {
    width: 80px;
    height: 60px;
    top: -10px;
    background-image: url(../image/dock/reco_tag_sp.png);
  }
}

/*============================
plan_sec
============================*/
.plan_sec {
  padding-bottom: 150px;
}
@media screen and (max-width: 768px) {
  .plan_sec {
    padding-bottom: 75px;
  }
}
.plan_sec .plan_table_wrapper {
  width: auto;
  margin-inline: -14px;
  overflow-x: auto;
  position: relative;
  padding-left: 14px;
}
@media screen and (max-width: 1000px) {
  .plan_sec .plan_table_wrapper {
    margin-inline: 0;
  }
}
@media screen and (max-width: 768px) {
  .plan_sec .plan_table_wrapper {
    margin-inline: -7px;
    padding-left: 6px;
  }
}
.plan_sec .plan_table {
  width: 100%;
  min-width: 828px;
  table-layout: fixed;
  border-collapse: separate;
  border-spacing: 14px 0;
  margin-left: -14px;
}
@media screen and (max-width: 768px) {
  .plan_sec .plan_table {
    min-width: 510px;
    border-spacing: 6px 0;
    line-height: 1;
    margin-left: -6px;
    margin-right: 0;
  }
}
.plan_sec .plan_table thead tr th {
  color: #FFF;
  font-family: var(--zenkakugothic);
  font-size: 22px;
  font-weight: 700;
  text-align: center;
  width: 166px;
  height: 53px;
  vertical-align: middle;
  border-radius: 10px 10px 0 0;
  padding: 0;
}
@media screen and (max-width: 768px) {
  .plan_sec .plan_table thead tr th {
    font-size: 11px;
    width: 80px;
    height: 27px !important;
    padding: 0 !important;
    line-height: 1 !important;
    border-radius: 5px 5px 0 0;
  }
}
.plan_sec .plan_table thead tr th:first-child {
  width: auto;
  position: -webkit-sticky;
  position: sticky;
  left: 0;
  border-radius: 0;
  border-right: 8px solid transparent;
  background: #FFF;
  -webkit-box-shadow: -14px 0 0 #FFF;
          box-shadow: -14px 0 0 #FFF;
  padding-right: 0;
  z-index: 2;
}
@media screen and (max-width: 768px) {
  .plan_sec .plan_table thead tr th:first-child {
    width: 255px;
    border-radius: 0;
    border-right: 4px solid transparent;
    -webkit-box-shadow: -6px 0 0 #FFF;
            box-shadow: -6px 0 0 #FFF;
  }
}
.plan_sec .plan_table thead tr th:first-child .scroll_note {
  display: none;
  color: #333;
  font-family: var(--zenkakugothic);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0;
  text-align: left;
}
.plan_sec .plan_table_wrapper.has-scroll .plan_table thead tr th:first-child .scroll_note {
  display: block;
}

@media screen and (max-width: 768px) {
  .plan_sec .plan_table thead tr th:first-child .scroll_note {
    font-size: 12px;
  }
}
.plan_sec .plan_table thead tr th.cyan {
  background: #06AEC0;
}
.plan_sec .plan_table thead tr th.blue {
  background: #058DE2;
}
.plan_sec .plan_table thead tr th.navy {
  background: #2C56A5;
}
.plan_sec .plan_table tbody tr th {
  color: #333;
  font-family: var(--zenkakugothic);
  font-size: 18px;
  font-weight: 500;
  line-height: 1.67;
  text-align: left;
  text-indent: -29px;
  vertical-align: middle;
  min-width: 232px;
  min-height: 49px;
  position: -webkit-sticky;
  position: sticky;
  left: 0;
  border-right: 8px solid #FFF;
  border-bottom: 2px solid #FFF;
  background: #FFF;
  -webkit-box-shadow: -14px 0 0 #FFF;
          box-shadow: -14px 0 0 #FFF;
  padding: 8px 0;
  padding-left: 41px;
  padding-right: 12px;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .plan_sec .plan_table tbody tr th {
    font-size: 11px;
    line-height: 1 !important;
    text-indent: -18px;
    min-width: 250px;
    height: 26px !important;
    border-right: 4px solid #FFF;
    -webkit-box-shadow: -6px 0 0 #FFF;
            box-shadow: -6px 0 0 #FFF;
    padding: 0 !important;
    padding-left: 28px !important;
  }
}
.plan_sec .plan_table tbody tr th img {
  width: 19px;
  height: auto;
  display: inline-block;
  vertical-align: middle;
  margin-top: -6px;
  margin-right: 10px;
}
@media screen and (max-width: 768px) {
  .plan_sec .plan_table tbody tr th img {
    width: 10px;
    margin-top: -4px;
    margin-right: 7.8px;
  }
}
.plan_sec .plan_table tbody tr td {
  height: 49px;
  text-align: center;
  vertical-align: middle;
  border-bottom: 2px solid #FFF;
  padding: 0;
}
@media screen and (max-width: 768px) {
  .plan_sec .plan_table tbody tr td {
    height: 26px !important;
    padding: 0 !important;
    line-height: 1 !important;
  }
}
.plan_sec .plan_table tbody tr td .dot {
  font-family: var(--zenkakugothic);
  font-size: 15px;
}
@media screen and (max-width: 768px) {
  .plan_sec .plan_table tbody tr td .dot {
    font-size: 12px;
  }
}
.plan_sec .plan_table tbody tr td .dash {
  width: 22.18px;
  height: 1px;
  background: #000;
  display: inline-block;
  vertical-align: middle;
}
@media screen and (max-width: 768px) {
  .plan_sec .plan_table tbody tr td .dash {
    width: 12px;
  }
}
.plan_sec .plan_table tbody tr td:nth-child(2) {
  border-left: 1px solid #06AEC0;
  border-right: 1px solid #06AEC0;
  border-bottom: none;
}
.plan_sec .plan_table tbody tr td:nth-child(2) .dot {
  color: #06AEC0;
}
.plan_sec .plan_table tbody tr td:nth-child(3) {
  border-left: 1px solid #058DE2;
  border-right: 1px solid #058DE2;
  border-bottom: none;
}
.plan_sec .plan_table tbody tr td:nth-child(3) .dot {
  color: #058DE2;
}
.plan_sec .plan_table tbody tr td:nth-child(4) {
  border-left: 1px solid #2C56A5;
  border-right: 1px solid #2C56A5;
  border-bottom: none;
}
.plan_sec .plan_table tbody tr td:nth-child(4) .dot {
  color: #2C56A5;
}
.plan_sec .plan_table tbody tr:last-child td:nth-child(2) {
  border-bottom: 1px solid #06AEC0;
}
.plan_sec .plan_table tbody tr:last-child td:nth-child(3) {
  border-bottom: 1px solid #058DE2;
}
.plan_sec .plan_table tbody tr:last-child td:nth-child(4) {
  border-bottom: 1px solid #2C56A5;
}
.plan_sec .plan_table tbody tr:nth-child(5) td,
.plan_sec .plan_table tbody tr:nth-child(9) td,
.plan_sec .plan_table tbody tr:nth-child(15) td,
.plan_sec .plan_table tbody tr:nth-child(17) td {
  position: relative;
}
.plan_sec .plan_table tbody tr:nth-child(5) th,
.plan_sec .plan_table tbody tr:nth-child(5) td,
.plan_sec .plan_table tbody tr:nth-child(9) th,
.plan_sec .plan_table tbody tr:nth-child(9) td,
.plan_sec .plan_table tbody tr:nth-child(15) th,
.plan_sec .plan_table tbody tr:nth-child(15) td,
.plan_sec .plan_table tbody tr:nth-child(17) th,
.plan_sec .plan_table tbody tr:nth-child(17) td {
  border-bottom: none;
}
.plan_sec .plan_table tbody tr:nth-child(5) th::after,
.plan_sec .plan_table tbody tr:nth-child(5) td::after,
.plan_sec .plan_table tbody tr:nth-child(9) th::after,
.plan_sec .plan_table tbody tr:nth-child(9) td::after,
.plan_sec .plan_table tbody tr:nth-child(15) th::after,
.plan_sec .plan_table tbody tr:nth-child(15) td::after,
.plan_sec .plan_table tbody tr:nth-child(17) th::after,
.plan_sec .plan_table tbody tr:nth-child(17) td::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
  background: #98A3C7;
}
.plan_sec .plan_table tbody tr:nth-child(odd) th,
.plan_sec .plan_table tbody tr:nth-child(odd) td {
  background: #F1F6FF;
}
.plan_sec .plan_table tbody tr:nth-child(even) th,
.plan_sec .plan_table tbody tr:nth-child(even) td {
  background: #FFF;
}
.plan_sec {
  /* ScrollHintのスタイルカスタマイズ */
}
@-webkit-keyframes custom-scroll-hint-appear {
  0% {
    -webkit-transform: translateX(12px);
            transform: translateX(12px);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  50%, 100% {
    -webkit-transform: translateX(-12px);
            transform: translateX(-12px);
    opacity: 0;
  }
}
@keyframes custom-scroll-hint-appear {
  0% {
    -webkit-transform: translateX(12px);
            transform: translateX(12px);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  50%, 100% {
    -webkit-transform: translateX(-12px);
            transform: translateX(-12px);
    opacity: 0;
  }
}
.plan_sec .scroll-hint-icon-wrap.is-active .scroll-hint-icon {
  opacity: 1;
}
.plan_sec .scroll-hint-icon-wrap.is-active .scroll-hint-icon::after {
  opacity: 0.8;
}
.plan_sec .scroll-hint-icon-wrap.is-active .scroll-hint-icon::before {
  -webkit-animation: custom-scroll-hint-appear 1.2s linear;
          animation: custom-scroll-hint-appear 1.2s linear;
  -webkit-animation-iteration-count: 2;
          animation-iteration-count: 2;
}
.plan_sec .scroll-hint-icon {
  background: transparent;
  border: none;
  border-radius: 10px;
  width: 218px;
  height: 218px;
  padding: 0;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  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;
}
@media screen and (max-width: 768px) {
  .plan_sec .scroll-hint-icon {
    width: 109px;
    height: 109px;
  }
}
.plan_sec .scroll-hint-icon::before {
  content: "";
  display: block;
  width: 160px;
  height: 130px;
  background: center/contain url(../image/dock/scroll_hint.svg) no-repeat;
  margin: 0;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .plan_sec .scroll-hint-icon::before {
    width: 80px;
    height: 65px;
  }
}
.plan_sec .scroll-hint-icon::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #2C56A5;
  border: solid 3px #fff;
  border-radius: 10px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 0;
  display: block;
  margin: 0;
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
  background-image: none;
}
.plan_sec .scroll-hint-icon .scroll-hint-text {
  display: none;
}

/*============================
detail_sec
============================*/
.detail_sec {
  background: center/cover url("../image/dock/detail_bg.jpg") repeat-y;
  padding-top: 123.7px;
  padding-bottom: 127px;
  margin-bottom: 120px;
}
@media screen and (max-width: 768px) {
  .detail_sec {
    background: center/cover url("../image/dock/detail_bg_sp.jpg") repeat-y;
    padding-block: 60px;
    margin-bottom: 55px;
  }
}
.detail_sec .detail_list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  max-width: 1002px;
  gap: 20px 22px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 86px;
}
@media screen and (max-width: 1200px) {
  .detail_sec .detail_list {
    grid-template-columns: 1fr;
    max-width: none;
  }
}
@media screen and (max-width: 768px) {
  .detail_sec .detail_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 10px;
    margin-bottom: 50px;
  }
}
.detail_sec .detail_item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #333;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 2.2857142857;
  width: 100%;
  height: 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: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  gap: 10px;
  border-radius: 10px;
  background: #fff;
  -webkit-box-shadow: 2px 4px 4px #F6CDB3;
          box-shadow: 2px 4px 4px #F6CDB3;
  padding: 23px 25px;
}
@media screen and (max-width: 768px) {
  .detail_sec .detail_item {
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 10px;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    padding: 12px 20px 5px;
  }
}
.detail_sec .detail_item .card_top {
  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: flex-start;
  gap: 10px;
  margin-bottom: 0;
  height: auto;
}
@media screen and (max-width: 768px) {
  .detail_sec .detail_item .card_top {
    display: contents;
    -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: flex-start;
    gap: 5px;
    margin-bottom: 0;
    height: auto;
  }
}
.detail_sec .detail_item .card_top .card_ttl {
  color: #333;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.5;
}
.detail_sec .detail_item .card_top .card_ttl .sm {
  font-size: 18px;
}
@media screen and (max-width: 768px) {
  .detail_sec .detail_item .card_top .card_ttl {
    font-size: 18px;
  }
  .detail_sec .detail_item .card_top .card_ttl .sm {
    font-size: 14px;
  }
}
.detail_sec .detail_item .card_top .card_tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 9px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .detail_sec .detail_item .card_top .card_tags {
    gap: 5px;
  }
}
.detail_sec .detail_item .card_top .card_tags .tag {
  color: #fff;
  font-family: var(--zenkakugothic);
  font-size: 14px;
  font-weight: 700;
  width: 102px;
  height: 26.5px;
  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: 13.25px;
}
@media screen and (max-width: 768px) {
  .detail_sec .detail_item .card_top .card_tags .tag {
    font-size: 13px;
    width: 94px;
    height: 25px;
    border-radius: 100px;
  }
}
.detail_sec .detail_item .card_top .card_tags .tag.eye-strain {
  background: #06AEC0;
}
.detail_sec .detail_item .card_top .card_tags .tag.basic {
  background: #058DE2;
}
.detail_sec .detail_item .card_top .card_tags .tag.advance {
  background: #2C56A5;
}
.detail_sec .detail_item .card_bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 15px;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .detail_sec .detail_item .card_bottom {
    display: contents;
  }
}
.detail_sec .detail_item .card_txt {
  color: #333;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 2.2857142857;
  margin-bottom: 0;
}
.has_img .detail_sec .detail_item .card_txt {
  width: 245px;
}
@media screen and (max-width: 768px) {
  .detail_sec .detail_item .card_txt {
    width: auto;
    font-size: 13px;
    line-height: 1.7692307692;
    margin-bottom: 12px;
  }
}
.detail_sec .detail_item .card_txt .card_sttl {
  color: #E3732D;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.02em;
}
.detail_sec .detail_item .card_img {
  width: 180px;
  height: 114px;
  aspect-ratio: 180/114;
  border-radius: 4px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  overflow: hidden;
  margin-top: 10px;
}
@media screen and (max-width: 768px) {
  .detail_sec .detail_item .card_img {
    margin-top: 0;
    margin-inline: auto;
    margin-bottom: 15px;
  }
}
.detail_sec .detail_option {
  width: 100%;
  max-width: 1000px;
  margin-inline: auto;
}
.detail_sec .detail_option .sec_sttl {
  margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
  .detail_sec .detail_option .sec_sttl {
    margin-bottom: 20px;
  }
}
.detail_sec .detail_option .option_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 15px;
}
@media screen and (max-width: 1366px) {
  .detail_sec .detail_option .option_list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.detail_sec .detail_option .option_list .option_item {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  background: #fff;
  border-radius: 10px;
  -webkit-box-shadow: 2px 2px 4px #F6CDB3;
          box-shadow: 2px 2px 4px #F6CDB3;
  padding: 23px 2.9555% 30px 3.275%;
}
@media screen and (max-width: 768px) {
  .detail_sec .detail_option .option_list .option_item {
    padding: 20px;
  }
}
.detail_sec .detail_option .option_list .option_item .option_ttl {
  font-size: 32px;
  font-weight: 900;
  letter-spacing: 0;
  text-align: center;
  position: relative;
  border-bottom: 1px solid #A5B0C4;
  padding-bottom: 10px;
  margin-bottom: 24px;
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .detail_sec .detail_option .option_list .option_item .option_ttl {
    font-size: 24px;
  }
}
.detail_sec .detail_option .option_list .option_item .option_ttl .small {
  font-size: 28px;
}
@media screen and (max-width: 768px) {
  .detail_sec .detail_option .option_list .option_item .option_ttl .small {
    font-size: 20px;
  }
}
.detail_sec .detail_option .option_list .option_item .option_sub_list {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
  margin-inline: auto;
}
@media screen and (max-width: 1366px) {
  .detail_sec .detail_option .option_list .option_item .option_sub_list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.detail_sec .detail_option .option_list .option_item .option_sub_list .option_sub_item {
  font-size: 16px;
  letter-spacing: 0;
  line-height: 1.625;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
  padding-left: 16px;
}
@media screen and (max-width: 1366px) {
  .detail_sec .detail_option .option_list .option_item .option_sub_list .option_sub_item {
    width: 48%;
  }
}
@media screen and (max-width: 768px) {
  .detail_sec .detail_option .option_list .option_item .option_sub_list .option_sub_item {
    font-size: 14px;
  }
}
@media screen and (max-width: 480px) {
  .detail_sec .detail_option .option_list .option_item .option_sub_list .option_sub_item {
    width: 100%;
  }
}
.detail_sec .detail_option .option_list .option_item .option_sub_list .option_sub_item::before {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  border-radius: 100%;
  position: absolute;
  top: 11px;
  left: 4px;
}
@media screen and (max-width: 768px) {
  .detail_sec .detail_option .option_list .option_item .option_sub_list .option_sub_item::before {
    top: 9px;
  }
}
.detail_sec .detail_option .option_list .option_item .option_sub_list .option_sub_item .price {
  font-size: 18px;
  line-height: 1.7777777778;
  white-space: nowrap;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  translate: 2px -4px;
}
.detail_sec .detail_option .option_list .option_item .option_sub_list .option_sub_item .price .small {
  font-size: 14px;
}
.detail_sec .detail_option .option_list .option_item .option_sub_list .option_sub_item.grayout {
  color: #E0E0E0;
}
.detail_sec .detail_option .option_list .option_item .option_sub_list .option_sub_item.grayout::before {
  background: #E0E0E0;
}
.detail_sec .detail_option .option_list .option_item.eye-strain .option_ttl {
  color: #06AEC0;
}
.detail_sec .detail_option .option_list .option_item.eye-strain .option_sub_list .option_sub_item:not(.grayout)::before {
  background: #06AEC0;
}
.detail_sec .detail_option .option_list .option_item.basic .option_ttl {
  color: #058DE2;
}
.detail_sec .detail_option .option_list .option_item.basic .option_sub_list .option_sub_item:not(.grayout)::before {
  background: #058DE2;
}
.detail_sec .detail_option .option_list .option_item.advance .option_ttl {
  color: #2C56A5;
}
.detail_sec .detail_option .option_list .option_item.advance .option_sub_list .option_sub_item:not(.grayout)::before {
  background: #2C56A5;
}

/*============================
flow_sec
============================*/
.flow_sec {
  margin-bottom: 130px;
}
@media screen and (max-width: 768px) {
  .flow_sec {
    margin-bottom: 55px;
  }
}
.flow_sec :where(.pc) {
  display: block;
}
@media screen and (max-width: 1000px) {
  .flow_sec :where(.pc) {
    display: none;
  }
}
.flow_sec :where(.sp) {
  display: none;
}
@media screen and (max-width: 1000px) {
  .flow_sec :where(.sp) {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .flow_sec .inner {
    margin-left: 0;
    margin: 0 auto;
  }
}
.flow_sec .inner .flow_content_wrapper {
  padding: 4.7% 4.5% 4.5% 5%;
  border: 2px solid #98A3C7;
  border-radius: 30px;
}
@media screen and (max-width: 768px) {
  .flow_sec .inner .flow_content_wrapper {
    padding-top: 35px;
    padding-left: 20px;
    padding-right: 20px;
    border-radius: 10px;
  }
}
.flow_sec .inner .flow_content_wrapper .flow_content {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 4.3%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-bottom: 5%;
}
@media screen and (max-width: 1000px) {
  .flow_sec .inner .flow_content_wrapper .flow_content {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 3.25926%;
    padding-bottom: 35px;
  }
}
.flow_sec .inner .flow_content_wrapper .flow_content::before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  top: 0;
  left: 64px;
  width: 2px;
  width: 2px;
  height: 100%;
  background-image: url("../image/dock/dot.svg");
  background-size: 2px 5px;
  background-repeat: repeat-y;
}
@media screen and (max-width: 1000px) {
  .flow_sec .inner .flow_content_wrapper .flow_content::before {
    top: 0;
    left: 20px;
  }
}
.flow_sec .inner .flow_content_wrapper .flow_content .ttl_num_wrapper {
  width: 128px;
  height: 128px;
  background: #2C56A5;
  border-radius: 100%;
  aspect-ratio: 1/1;
  -webkit-box-shadow: 0 2px 2px 0 #9F9EBC;
          box-shadow: 0 2px 2px 0 #9F9EBC;
}
@media screen and (max-width: 1000px) {
  .flow_sec .inner .flow_content_wrapper .flow_content .ttl_num_wrapper {
    width: 40px;
    height: 40px;
  }
}
.flow_sec .inner .flow_content_wrapper .flow_content .ttl_num_wrapper .ttl_inner {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: 100%;
  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: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  margin: 0 auto;
  color: #fff;
}
.flow_sec .inner .flow_content_wrapper .flow_content .ttl_num_wrapper .ttl_inner .num {
  font-size: 18px;
  font-weight: 700;
  font-family: "jost", sans-serif;
  line-height: 28px;
}
.flow_sec .inner .flow_content_wrapper .flow_content .ttl_num_wrapper .ttl_inner .ttl {
  height: 59px;
  display: grid;
  place-items: center;
  margin-bottom: 14px;
  font-size: 23px;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 30px;
}
@media screen and (max-width: 1000px) {
  .flow_sec .inner .flow_content_wrapper .flow_content .ttl_num_wrapper .ttl_inner .ttl {
    display: none;
  }
}
.flow_sec .inner .flow_content_wrapper .flow_content .content_area {
  min-width: 0;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media screen and (max-width: 1000px) {
  .flow_sec .inner .flow_content_wrapper .flow_content .content_area {
    margin-top: 4px;
  }
}
.flow_sec .inner .flow_content_wrapper .flow_content .content_area .ttl.sp {
  color: #2C56A5;
  margin-bottom: 8px;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.5;
}
.flow_sec .inner .flow_content_wrapper .flow_content .content_area .des_txt {
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 2;
}
@media screen and (max-width: 1000px) {
  .flow_sec .inner .flow_content_wrapper .flow_content .content_area .des_txt {
    font-size: 14px;
  }
}
.flow_sec .inner .flow_content_wrapper .flow_content .content_area .tel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 13px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 1000px) {
  .flow_sec .inner .flow_content_wrapper .flow_content .content_area .tel {
    width: 100%;
  }
}
.flow_sec .inner .flow_content_wrapper .flow_content .content_area .tel .pc_txt {
  width: 110px;
  height: 40px;
  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;
  background: #E3732D;
  color: #fff;
  text-align: center;
  border-radius: 4px;
}
@media screen and (max-width: 1000px) {
  .flow_sec .inner .flow_content_wrapper .flow_content .content_area .tel .pc_txt {
    display: none;
  }
}
.flow_sec .inner .flow_content_wrapper .flow_content .content_area .tel .sp_txt {
  width: 244px;
  height: 40px;
  display: none;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: #E3732D;
  color: #fff;
  text-align: center;
  border-radius: 4px;
}
@media screen and (max-width: 1000px) {
  .flow_sec .inner .flow_content_wrapper .flow_content .content_area .tel .sp_txt {
    width: 100%;
    max-width: 244px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.flow_sec .inner .flow_content_wrapper .flow_content .content_area .tel .sp_txt img {
  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: center;
      -ms-flex-align: center;
          align-items: center;
  margin-right: 5px;
}
.flow_sec .inner .flow_content_wrapper .flow_content .content_area .tel .tel_num {
  padding-bottom: 3px;
  font-size: 41.53px;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 1000px) {
  .flow_sec .inner .flow_content_wrapper .flow_content .content_area .tel .tel_num {
    display: none;
  }
}
.flow_sec .inner .flow_content_wrapper .flow_content:nth-of-type(2) {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
.flow_sec .inner .flow_content_wrapper .flow_content:nth-of-type(2) .content_area {
  margin-top: 13px;
}
@media screen and (max-width: 1000px) {
  .flow_sec .inner .flow_content_wrapper .flow_content:nth-of-type(2) .content_area {
    margin-top: 4px;
  }
}
.flow_sec .inner .flow_content_wrapper .flow_content:nth-of-type(2) .content_area .des_txt {
  margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
  .flow_sec .inner .flow_content_wrapper .flow_content:nth-of-type(2) .content_area .des_txt {
    margin-bottom: 15px;
  }
}
.flow_sec .inner .flow_content_wrapper .flow_content:nth-of-type(2) .content_area .bring_list_wrapper {
  background: #FFF7F3;
  padding: 24px 5% 23px 34px;
  border-radius: 10px;
}
@media screen and (max-width: 1000px) {
  .flow_sec .inner .flow_content_wrapper .flow_content:nth-of-type(2) .content_area .bring_list_wrapper {
    padding: 13.22px 5% 16px 14px;
  }
}
.flow_sec .inner .flow_content_wrapper .flow_content:nth-of-type(2) .content_area .bring_list_wrapper p {
  color: #E3732D;
  margin-bottom: 14px;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.75;
}
@media screen and (max-width: 1000px) {
  .flow_sec .inner .flow_content_wrapper .flow_content:nth-of-type(2) .content_area .bring_list_wrapper p {
    margin-bottom: 10px;
    font-size: 18px;
  }
}
.flow_sec .inner .flow_content_wrapper .flow_content:nth-of-type(2) .content_area .bring_list_wrapper ul li {
  position: relative;
  padding-left: 20px;
  margin: 8px 0;
  margin-left: 11px;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.5;
}
@media screen and (max-width: 1000px) {
  .flow_sec .inner .flow_content_wrapper .flow_content:nth-of-type(2) .content_area .bring_list_wrapper ul li {
    padding-left: 8px;
    margin-left: 0;
    font-size: 14px;
    line-height: 1.6;
  }
}
.flow_sec .inner .flow_content_wrapper .flow_content:nth-of-type(2) .content_area .bring_list_wrapper ul li::before {
  content: "";
  display: block;
  position: absolute;
  background: #E3732D;
  border-radius: 100%;
  width: 6px;
  height: 6px;
  top: 11px;
  left: 0;
}
@media screen and (max-width: 1000px) {
  .flow_sec .inner .flow_content_wrapper .flow_content:nth-of-type(2) .content_area .bring_list_wrapper ul li::before {
    width: 4px;
    height: 4px;
    top: 9px;
  }
}
.flow_sec .inner .flow_content_wrapper .flow_content:last-of-type {
  padding-bottom: 0;
}
.flow_sec .inner .flow_content_wrapper .flow_content:last-of-type:before {
  display: none;
}
.flow_sec .inner .flow_content_wrapper .flow_content.flex_inc .content_area .des_txt {
  margin-bottom: 11px;
}
.flow_sec .inner .flow_content_wrapper .flow_content.img_inc .content_area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3.7%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 1000px) {
  .flow_sec .inner .flow_content_wrapper .flow_content.img_inc .content_area {
    display: block;
  }
}
@media screen and (max-width: 1000px) {
  .flow_sec .inner .flow_content_wrapper .flow_content.img_inc .content_area .des_txt {
    margin-bottom: 16px;
  }
}
.flow_sec .inner .flow_content_wrapper .flow_content.img_inc .content_area .flow_img {
  width: 180px;
  border-radius: 5px;
}
@media screen and (max-width: 1000px) {
  .flow_sec .inner .flow_content_wrapper .flow_content.img_inc .content_area .flow_img {
    width: 244px;
    height: 114px;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.flow_sec .inner .flow_content_wrapper .flow_content.img_inc.no03 {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
.flow_sec .inner .flow_content_wrapper .flow_content.img_inc.no03 .content_area {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
.flow_sec .inner .flow_content_wrapper .flow_content.img_inc.no03 .content_area .middle_area {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 225px;
}
.flow_sec .inner .flow_content_wrapper .flow_content.img_inc.no03 .content_area .middle_area .des_txt {
  padding-top: 20px;
  margin-bottom: 20px;
}
@media screen and (max-width: 1000px) {
  .flow_sec .inner .flow_content_wrapper .flow_content.img_inc.no03 .content_area .middle_area .des_txt {
    padding-top: 0;
    margin-bottom: 10px;
  }
}
.flow_sec .inner .flow_content_wrapper .flow_content.img_inc.no03 .content_area .middle_area .btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  max-width: 246px;
  height: 52px;
  background: #E3732D;
  color: #fff;
  border-radius: 4px;
  font-size: 17.36px;
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 1.3;
}
@media screen and (max-width: 1000px) {
  .flow_sec .inner .flow_content_wrapper .flow_content.img_inc.no03 .content_area .middle_area .btn {
    width: 244px;
    height: 46px;
    margin-bottom: 28px;
  }
}
.flow_sec .inner .flow_content_wrapper .flow_content.img_inc.no03 .content_area .middle_area .btn .icon {
  margin-top: 4px;
}
.flow_sec .inner .flow_content_wrapper .flow_content.img_inc.no03 .flow_img {
  margin-top: 10px;
  min-width: 0;
  height: auto;
}
@media screen and (max-width: 1000px) {
  .flow_sec .inner .flow_content_wrapper .flow_content.img_inc.no03 .flow_img {
    margin-top: 0;
  }
}

/*============================
caution_sec
============================*/
.caution_sec {
  margin-bottom: 120px;
}
@media screen and (max-width: 768px) {
  .caution_sec {
    margin-bottom: 55px;
  }
}
.caution_sec .inner .sec_sttl {
  margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
  .caution_sec .inner .sec_sttl {
    margin-bottom: 15px;
  }
}
.caution_sec .inner .caution_list_wrapper {
  margin-left: 12px;
}
.caution_sec .inner .caution_list_wrapper li {
  position: relative;
  padding-left: 25px;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .caution_sec .inner .caution_list_wrapper li {
    font-size: 14px;
    padding-left: 14px;
  }
}
.caution_sec .inner .caution_list_wrapper li::before {
  content: "";
  display: block;
  position: absolute;
  background: #E3732D;
  border-radius: 100%;
  width: 6px;
  height: 6px;
  top: 14px;
  left: 0;
}
@media screen and (max-width: 768px) {
  .caution_sec .inner .caution_list_wrapper li::before {
    width: 4px;
    height: 4px;
    top: 12px;
  }
}

/*============================
bring_items_sec
============================*/
.bring_items_sec {
  margin-bottom: 130px;
}
@media screen and (max-width: 768px) {
  .bring_items_sec {
    margin-bottom: 55px;
  }
}
.bring_items_sec .inner {
  background: #2C56A5;
  padding: 3.70476% 60px;
  padding-right: 68px;
  padding-bottom: 4.46429%;
  border-radius: 30px;
}
@media screen and (max-width: 768px) {
  .bring_items_sec .inner {
    padding: 40px 28px;
    border-radius: 20px;
  }
}
.bring_items_sec .inner .content_sttl_wrapper {
  margin: 0 auto 47px;
  padding-left: 28px;
}
@media screen and (max-width: 1000px) {
  .bring_items_sec .inner .content_sttl_wrapper {
    margin-bottom: clamp(35px, 2.9375vw, 47px);
  }
}
.bring_items_sec .inner .people_like_div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 25px 20px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 1000px) {
  .bring_items_sec .inner .people_like_div {
    gap: 12px 10px;
  }
}
.bring_items_sec .inner .people_like_div .people_like {
  width: 413px;
  height: 85px;
  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;
  background: #fff;
  text-align: center;
  border-radius: 6px;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 2.2;
}
@media screen and (max-width: 1000px) {
  .bring_items_sec .inner .people_like_div .people_like {
    width: 300px;
    height: 65px;
    font-size: 16px;
  }
}
.bring_items_sec .inner .people_like_div .people_like .color_txt {
  color: #E3732D;
}
.bring_items_sec .inner .people_like_div .list02 {
  line-height: 26px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-line-pack: center;
      align-content: center;
  row-gap: 0;
  padding-top: 10px;
}
@media screen and (max-width: 1000px) {
  .bring_items_sec .inner .people_like_div .list02 {
    height: auto;
    min-height: 65px;
    padding-top: 6px;
    padding-bottom: 6px;
    line-height: 22px;
  }
}
.bring_items_sec .inner .people_like_div .list02 .small {
  font-size: 16px;
  font-weight: 700;
  line-height: 26px;
  width: 100%;
}
@media screen and (max-width: 1000px) {
  .bring_items_sec .inner .people_like_div .list02 .small {
    font-size: 12px;
    line-height: 1.45;
    letter-spacing: 0;
  }
}
.bring_items_sec .inner .content_des {
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 2;
}

/*============================
faq_sec
============================*/
.faq_sec {
  margin-bottom: 150px;
}
@media screen and (max-width: 768px) {
  .faq_sec {
    margin-bottom: 97px;
  }
}
.faq_sec .inner .sec_sttl {
  margin-bottom: 32px;
}
.faq_sec .inner .faq_wrapper .faq_content .faq_q {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  background: #F2F6FF;
  padding: 17px 0;
  padding-right: 40px;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .faq_sec .inner .faq_wrapper .faq_content .faq_q {
    padding: 10px 0;
    padding-right: 25px;
    font-size: 14px;
  }
}
.faq_sec .inner .faq_wrapper .faq_content .faq_q .q_txt {
  padding: 0 27px;
  color: #2C56A5;
  font-size: 34px;
  font-weight: 400;
  line-height: 1;
  font-family: "jost", sans-serif;
}
@media screen and (max-width: 768px) {
  .faq_sec .inner .faq_wrapper .faq_content .faq_q .q_txt {
    padding: 0 24px;
    padding-left: 16px;
    font-size: 28px;
  }
}
.faq_sec .inner .faq_wrapper .faq_content .faq_a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding: 17px 0;
  padding-right: 40px;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .faq_sec .inner .faq_wrapper .faq_content .faq_a {
    padding: 10px 0;
    padding-right: 25px;
    font-size: 14px;
  }
}
.faq_sec .inner .faq_wrapper .faq_content .faq_a .a_txt {
  padding: 0 30px;
  color: #E3732D;
  font-size: 34px;
  font-weight: 400;
  line-height: 1;
  font-family: "jost", sans-serif;
}
@media screen and (max-width: 768px) {
  .faq_sec .inner .faq_wrapper .faq_content .faq_a .a_txt {
    padding: 0 24px;
    padding-left: 16px;
    font-size: 28px;
  }
}

/*============================
contact_sec
============================*/
@media screen and (max-width: 768px) {
  .contact_sec {
    margin-bottom: 20.6602vw;
  }
}
.contact_sec .inner {
  background: #E3732D;
  color: #00266C;
  border-radius: 30px;
}
@media screen and (max-width: 768px) {
  .contact_sec .inner {
    border-radius: 10px;
  }
}
.contact_sec .inner .sec_ttl_wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 13px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 17px 10px 14px 20px;
}
@media screen and (max-width: 768px) {
  .contact_sec .inner .sec_ttl_wrapper {
    gap: 7px;
    padding: 13px 8px 12px 10px;
  }
}
.contact_sec .inner .sec_ttl_wrapper .label_mark {
  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-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #fff;
  border-radius: 50%;
  width: 89px;
  height: 89px;
  aspect-ratio: 1/1;
}
@media screen and (max-width: 768px) {
  .contact_sec .inner .sec_ttl_wrapper .label_mark {
    width: 53px;
    height: 53px;
  }
}
.contact_sec .inner .sec_ttl_wrapper .label_mark .label_txt {
  color: #06AEC0;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.3;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .contact_sec .inner .sec_ttl_wrapper .label_mark .label_txt {
    font-size: 12.13px;
  }
}
.contact_sec .inner .sec_ttl_wrapper .des_txt {
  text-align: center;
  color: #fff;
  font-size: clamp(17px, 1.8vw, 30px);
  font-weight: 700;
  line-height: 1.3;
  font-family: var(--zenmarugothic);
}
@media screen and (max-width: 1570px) {
  .contact_sec .inner .sec_ttl_wrapper .des_txt {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    text-align: left;
  }
}
.contact_sec .inner .sec_ttl_wrapper .des_txt .txt_br {
  white-space: nowrap;
}
.contact_sec .inner .sec_ttl_wrapper .des_txt .small {
  font-size: clamp(17px, 1.5vw, 25px);
  font-weight: 700;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
@media screen and (max-width: 768px) {
  .contact_sec .inner .sec_ttl_wrapper .des_txt .small {
    font-size: 13px;
  }
}
.contact_sec .inner .contact_info {
  background: #fff;
  border: 1px solid #E3732D;
  border-radius: 0 0 30px 30px;
  padding: 34px 6.5% 51px;
  background-image: url(../image/dock/contact_img.png);
  background-size: 16%;
  background-repeat: no-repeat;
  background-position: 94.8214% 104.46428%;
}
@media screen and (max-width: 768px) {
  .contact_sec .inner .contact_info {
    border-radius: 0 0 10px 10px;
    padding: 22px 20px 20px;
    background-size: 50px;
  }
}
.contact_sec .inner .contact_info .time {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  margin-bottom: 12px;
}
@media screen and (max-width: 768px) {
  .contact_sec .inner .contact_info .time {
    gap: 15px;
  }
}
.contact_sec .inner .contact_info .time .wrapper_ttl {
  width: 138px;
  height: 40px;
  aspect-ratio: 138/40;
  color: #E3732D;
  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: 1px solid #E3732D;
  text-align: center;
  border-radius: 4px;
  margin-top: 10px;
  font-size: clamp(12px, 1.736vw, 17.36px);
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 1.3;
}
@media screen and (max-width: 768px) {
  .contact_sec .inner .contact_info .time .wrapper_ttl {
    width: 64px;
    height: 40px;
    aspect-ratio: 64/40;
    margin-top: 0;
  }
}
.contact_sec .inner .contact_info .time .date_info .date {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: clamp(15px, 5.25vw, 30px);
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .contact_sec .inner .contact_info .time .date_info .date {
    line-height: 1.3;
    font-size: 17px;
  }
}
@media screen and (max-width: 768px) {
  .contact_sec .inner .contact_info .time .date_info .date .date_time {
    margin-bottom: 5px;
  }
}
.contact_sec .inner .contact_info .time .date_info .date .date_time .weekday {
  margin-right: 10px;
}
.contact_sec .inner .contact_info .time .date_info .date .date_time .weekday .date_weekday {
  margin-right: 18.37px;
}
@media screen and (max-width: 768px) {
  .contact_sec .inner .contact_info .time .date_info .date .date_time .weekday .date_weekday {
    margin-right: 9px;
  }
}
.contact_sec .inner .contact_info .time .date_info .date .date_time .weekday .datetime_week {
  margin-right: 10px;
}
@media screen and (max-width: 448px) {
  .contact_sec .inner .contact_info .time .date_info .date .date_time .weekday .partition {
    display: none;
  }
}
.contact_sec .inner .contact_info .time .date_info .date .date_time .holiday {
  white-space: nowrap;
}
@media screen and (max-width: 1040px) {
  .contact_sec .inner .contact_info .time .date_info .date .date_time .holiday {
    display: inline-block;
  }
}
.contact_sec .inner .contact_info .time .date_info .date .date_time .holiday .date_holiday {
  margin-right: 19.28px;
}
@media screen and (max-width: 768px) {
  .contact_sec .inner .contact_info .time .date_info .date .date_time .holiday .date_holiday {
    margin-right: 4px;
  }
}
.contact_sec .inner .contact_info .time .date_info .date .date_time .holiday .dots {
  display: none;
  font-size: 14px;
  letter-spacing: 0em;
  line-height: 1.3;
}
@media screen and (max-width: 448px) {
  .contact_sec .inner .contact_info .time .date_info .date .date_time .holiday .dots {
    display: inline;
    vertical-align: 4px;
    margin-right: 9px;
  }
}
.contact_sec .inner .contact_info .time .date_info .date_des {
  font-size: clamp(10px, 2.8vw, 16px);
  font-weight: 500;
  line-height: 1.5;
}
.contact_sec .inner .contact_info .time .date_info .date_des p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 9px;
  position: relative;
}
@media screen and (min-width: 1200px) and (max-width: 1380px) {
  .contact_sec .inner .contact_info .time .date_info .date_des p {
    padding-right: 18%;
  }
}
@media screen and (max-width: 768px) {
  .contact_sec .inner .contact_info .time .date_info .date_des p {
    gap: 2.9px;
    width: 100%;
  }
}
.contact_sec .inner .contact_info .time .date_info .date_des p::before {
  content: "※";
  display: block;
  position: relative;
  height: 100%;
  top: 0;
  left: 0;
}
.contact_sec .inner .contact_info .tel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 15px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  pointer-events: none;
  cursor: default;
}
@media screen and (max-width: 768px) {
  .contact_sec .inner .contact_info .tel {
    pointer-events: auto;
    cursor: pointer;
  }
}
.contact_sec .inner .contact_info .tel p:first-of-type {
  width: 138px;
  height: 40px;
  aspect-ratio: 138/40;
  color: #E3732D;
  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: 1px solid #E3732D;
  text-align: center;
  border-radius: 4px;
  margin-top: 12px;
  font-size: clamp(12px, 1.736vw, 17.36px);
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 1.3;
}
@media screen and (max-width: 768px) {
  .contact_sec .inner .contact_info .tel p:first-of-type {
    width: 64px;
    height: 24px;
    aspect-ratio: 64/24;
    margin-top: 0;
  }
}
.contact_sec .inner .contact_info .tel p:last-of-type {
  font-size: clamp(40px, 5.625vw, 54px);
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 1000px) {
  .contact_sec .inner .contact_info .tel p:last-of-type {
    font-size: clamp(24px, 7vw, 40px);
  }
}

.txt_block {
  display: inline-block;
}

.non_1400 {
  display: block;
}
@media screen and (max-width: 1400px) {
  .non_1400 {
    display: none;
  }
}
@media screen and (max-width: 1000px) {
  .non_1400 {
    display: block;
  }
}

@media screen and (max-width: 768px) {
  .non_768 {
    display: none;
  }
}

.active_768 {
  display: none;
}
@media screen and (max-width: 768px) {
  .active_768 {
    display: block;
  }
}

@media screen and (max-width: 768px) {
  .nonsp {
    display: none;
  }
}

/* scroll-hint */
.scroll-hint-shadow-wrap::before, .scroll-hint-shadow-wrap::after {
  display: none !important;
}

.scroll-hint-icon {
  width: 218px;
  height: auto;
  aspect-ratio: 1/1;
  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;
  position: absolute;
  top: 50%;
  left: 50%;
  background: rgba(44, 86, 165, 0.8);
  border-radius: 10px;
  padding: 0;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 100;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .scroll-hint-icon {
    width: 109px;
  }
}
.scroll-hint-icon::before {
  content: "";
  width: 178px;
  height: auto;
  aspect-ratio: 89/72;
  background-image: url(../image/dock/scroll_hint.svg);
  background-size: contain;
  -webkit-transform: translateY(-2px);
      -ms-transform: translateY(-2px);
          transform: translateY(-2px);
}
@media screen and (max-width: 768px) {
  .scroll-hint-icon::before {
    width: 89px;
  }
}
.scroll-hint-icon::after {
  display: none;
}

.scroll-hint-text {
  display: none;
}

.scroll-hint-icon-wrap {
  z-index: 100;
}

/*============================
tel_bnr
============================*/
.tel_bnr {
  display: none;
}
@media screen and (max-width: 768px) {
  .tel_bnr {
    color: rgb(255, 255, 255);
    width: 100%;
    display: block;
    position: fixed;
    left: 0;
    bottom: 0;
    background: rgb(227, 115, 45);
    opacity: 0;
    -webkit-transform: translateY(100%);
        -ms-transform: translateY(100%);
            transform: translateY(100%);
    -webkit-transition: opacity 0.3s ease, -webkit-transform 0.3s ease;
    transition: opacity 0.3s ease, -webkit-transform 0.3s ease;
    transition: opacity 0.3s ease, transform 0.3s ease;
    transition: opacity 0.3s ease, transform 0.3s ease, -webkit-transform 0.3s ease;
    z-index: 100;
    pointer-events: none;
  }
  .tel_bnr.active {
    opacity: 1;
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
    pointer-events: all;
  }
}
.tel_bnr .tel_bnr_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.4vw;
  padding: 11.5px 3.2vw 11.5px 1.8666666667vw;
  margin-inline: auto;
  width: 100%;
  max-width: 100vw;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.tel_bnr .tel_bnr_link .tel_bnr_badge {
  width: 12vw;
  height: 10.9333333333vw;
  background: #fff;
  border-radius: 2px;
  color: #00266C;
  font-family: var(--zenkakugothic);
  font-size: 3.2vw;
  font-weight: 700;
  line-height: 4vw;
  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;
  text-align: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.tel_bnr .tel_bnr_link .link_txt_area .tel_txt_top {
  font-family: var(--zenmarugothic);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 1.0666666667vw;
  margin-bottom: 0;
}
.tel_bnr .tel_bnr_link .link_txt_area .tel_txt_top .big {
  font-size: 4.8vw;
  font-weight: 900;
  line-height: 1.2;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.tel_bnr .tel_bnr_link .link_txt_area .tel_txt_top .big .pack {
  letter-spacing: -0.2em;
}
.tel_bnr .tel_bnr_link .link_txt_area .tel_txt_top .normal {
  font-size: 3.2vw;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
  -webkit-transform: translate(-2.9333333333vw, -0.5333333333vw);
      -ms-transform: translate(-2.9333333333vw, -0.5333333333vw);
          transform: translate(-2.9333333333vw, -0.5333333333vw);
}
.tel_bnr .tel_bnr_link .link_txt_area .tel_txt_bottom {
  font-family: var(--zenkakugothic);
  font-weight: 500;
  line-height: 4.8vw;
  letter-spacing: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.1333333333vw;
}
.tel_bnr .tel_bnr_link .link_txt_area .tel_txt_bottom .txt {
  font-size: 3.2vw;
  white-space: nowrap;
}
.tel_bnr .tel_bnr_link .link_txt_area .tel_txt_bottom .txt .ls-50 {
  letter-spacing: -0.5em;
}
.tel_bnr .tel_bnr_link .link_txt_area .tel_txt_bottom .txt .time {
  font-size: 3.4666666667vw;
}

.sp_und_fix {
  display: none !important;
}/*# sourceMappingURL=dock.css.map */