@charset "UTF-8";
/* responsive */
/*@include mq() { }*/
/*color*/
/* cubic-bezier */
.vh_max {
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
}

.f_sans, .page_header .hd_nav_list > li {
  font-family: "Noto Sans JP", sans-serif;
}

.text {
  line-height: 2;
}

.u_ba {
  position: relative;
}
.u_ba::before, .u_ba::after {
  content: "";
  position: absolute;
  display: block;
}

/*
.vertical {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -o-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
}
 */
html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
}

@media (max-width: 1079.9px) {
  html {
    font-size: 1.4814814815vw;
  }
}
@media (max-width: 767.9px) {
  html {
    font-size: 4.2666vw;
  }
}
*,
*::before,
*::after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

body {
  -ms-scroll-chaining: none;
      overscroll-behavior: none;
  min-width: 100%;
  margin: 0;
  color: #333333;
  font-family: "noto sans jp", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  line-height: 2;
  font-size: max(0.875rem, 10px);
}
@media (max-width: 767.9px) {
  body {
    font-size: 0.75rem;
  }
}
body {
  font-weight: normal;
  letter-spacing: 0.1em;
}
@media (max-width: 1079.9px) {
  body {
    letter-spacing: 0.05em;
  }
}
body {
  position: relative;
  background: #F7F8F8;
}
body figure {
  margin-bottom: 0;
}
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-text-size-adjust: 100%;
}

main {
  width: 100%;
  display: block;
}

nav {
  display: block;
}

a {
  color: inherit;
  text-decoration: none;
  background-color: transparent;
}
a [href=""] {
  pointer-events: none;
}
@media (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}
a {
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
a:hover {
  opacity: 0.8;
}

select,
input,
button,
textarea {
  font-family: "noto sans jp", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500 !important;
}

input:focus,
textarea:focus {
  background: #f8f8f8 !important;
}

button {
  padding: 0;
  cursor: pointer;
}

img {
  max-width: 100%;
  height: auto;
  border-style: none;
  vertical-align: top;
}

p {
  margin: 0;
  line-height: 2;
}
@media (max-width: 767.9px) {
  p {
    line-height: 1.9;
    word-break: break-all;
  }
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

button,
input { /* 1 */
  overflow: visible;
}

input[type=submit],
input[type=button] {
  border-radius: 0;
  -webkit-appearance: button;
     -moz-appearance: button;
          appearance: button;
  border: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  cursor: pointer;
}

input[type=submit]::-webkit-search-decoration,
input[type=button]::-webkit-search-decoration {
  display: none;
}

input[type=submit]::focus,
input[type=button]::focus {
  outline-offset: -2px;
}

button,
select {
  text-transform: none;
}

button {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  -moz-appearance: button;
       appearance: button;
  border: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  cursor: pointer;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  font-weight: 900;
}

ul,
ol,
li,
dl,
dt,
dd {
  margin: 0;
  padding: 0;
  list-style: none;
}

address {
  font-style: normal;
}

.fixed {
  position: fixed;
  z-index: -1;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.clearfix {
  *zoom: 1;
}

.clearfix:after {
  content: "";
  display: table;
  clear: both;
}

.obj-fit {
  -o-object-fit: cover;
     object-fit: cover;
}

.slick-slide:focus {
  outline: none;
}

@media (min-width: 768px) {
  .sp {
    display: none;
  }
}
@media (max-width: 767.9px) {
  .pc {
    display: none;
  }
}
.f_sans, .page_header .hd_nav_list > li {
  font-family: "noto sans jp", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}

.f_serif, section:not(#fv) .head_box .title, .top_section#info .info_block .info_block_box .info_block_title, .top_section#brand .brand_links .bn_list li a .bn_list_dl .bn_list_dl_text, .top_section#brand .brand_list > li a .text_wrap p, .top_section#professional .step .step_head .title, .top_section#professional .coming_soon .ja, .top_section#professional .experience .experience_block .experience_box .experience_box_content .experience_box_title span, .top_section#professional .experience .experience_head .title, .top_section#professional .check_list_wrap .check_list_title, .top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_title, .fv_slide .head_box .title {
  font-family: "noto serif jp", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}

.f_en, .archives_list .more_link .tx, .archives_list_info .new_icon, .archives_list_info time, .post_nav .post_nav_btn, .post_head_date, section:not(#fv) .head_box .reed_en, .top_section#faq .faq_dl .faq_dl_in .faq_dl_contents::before, .top_section#faq .faq_dl .faq_dl_in .faq_dl_title_in::before, .top_section#professional .step .step_content .step_content_in .step_content_slider .step_content_slider_item .step_content_slider_item_no, .top_section#professional .step .step_content .step_no_list button, .top_section#professional .experience .experience_block .experience_box .experience_box_head span, .top_section#professional .experience .experience_head .lead, .top_section#news .more_link .tx, .top_section#news .news_list li a .topics_info .topics_date, .fv_slide .head_box .reed_en, .page_top a .tx, .page_footer .sns_wrapper .sns_links .sns_links_title, .page_footer .footer_copy .copyright, .page_footer .footer_menu .footer_links li a.btn, .page_footer .footer_menu_title, .page_header .btn_link a.btn, .page_header .menu_bt, .en {
  font-family: "Outfit", "noto sans jp", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 200;
}

.wrapper {
  position: relative;
}

.page_header {
  -webkit-transition: opacity 0.3s, background-color 0.3s, -webkit-transform 0.3s ease;
  transition: opacity 0.3s, background-color 0.3s, -webkit-transform 0.3s ease;
  transition: opacity 0.3s, background-color 0.3s, transform 0.3s ease;
  transition: opacity 0.3s, background-color 0.3s, transform 0.3s ease, -webkit-transform 0.3s ease;
}

.page_header.is-hide {
  -webkit-transform: translateY(-101%);
          transform: translateY(-101%);
}

.page_header_in {
  -webkit-transition: padding 0.3s;
  transition: padding 0.3s;
}

body.page_home .page_header {
  opacity: 0;
}
body.page_home .wrapper.slide-fv02.fv_view .page_header,
body.page_home .wrapper.slide-fv03 .page_header,
body.page_home .wrapper.slide-fv04 .page_header,
body.page_home .wrapper.js-header-fix .page_header,
body.page_home .wrapper.js-fix .page_header {
  opacity: 1 !important;
}
body.page_home .wrapper.slide-fv02.fv_view .page_header,
body.page_home .wrapper.slide-fv03 .page_header,
body.page_home .wrapper.slide-fv04 .page_header {
  background: transparent !important;
}
body.page_home .wrapper.js-header-fix .page_header {
  background: #ffffff;
}
body.page_home .wrapper.js-fix .page_header {
  background: #ffffff !important;
}

.wrapper.js-header-fix .page_header, .wrapper.js-fix .page_header {
  background: #ffffff;
}

#first, #professional {
  overflow: hidden;
}

@media (min-width: 768px) {
  body.page_home .wrapper:not(.slide-fv02) .page_header .hd_nav_list, body:not(.page_home) .wrapper .page_header .hd_nav_list, .wrapper.js-fix .page_header .hd_nav_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  body.page_home .wrapper:not(.slide-fv02) .page_header .hd_nav_list > li a, body:not(.page_home) .wrapper .page_header .hd_nav_list > li a, .wrapper.js-fix .page_header .hd_nav_list > li a {
    color: #333333;
  }
  body.page_home .wrapper:not(.slide-fv02) .page_header .btn_link a.btn, body:not(.page_home) .wrapper .page_header .btn_link a.btn, .wrapper.js-fix .page_header .btn_link a.btn {
    background: #5D8295;
    color: #ffffff;
  }
  .wrapper.js-header-fix .page_header, .wrapper.js-fix .page_header {
    background: #ffffff;
  }
  .wrapper.js-header-fix .page_header .page_header_in, .wrapper.js-fix .page_header .page_header_in {
    padding-block: 1.25rem;
  }
  .wrapper.js-header-fix .page_header .page_header_in .hd_logo, .wrapper.js-fix .page_header .page_header_in .hd_logo {
    width: 7.5rem;
  }
}
@media (max-width: 767.9px) {
  body.page_home .wrapper:not(.slide-fv02) .hd_menu .menu_bt .menu {
    color: #618291;
  }
  body.page_home .wrapper:not(.slide-fv02) .hd_menu .menu_bt span {
    background: #618291;
  }
  body.page_home .wrapper:not(.slide-fv02) .hd_menu .menu_bt span::before {
    background: #618291;
  }
  body.page_home .wrapper:not(.slide-fv02) .hd_menu .menu_bt span::after {
    background: #618291;
  }
  .wrapper, .page_header {
    min-width: inherit;
  }
}
.page_header {
  position: fixed;
  width: 100%;
  z-index: 1000;
  top: 0;
  left: 0;
}
.page_header_in {
  max-width: 90rem;
  margin-left: auto;
  margin-right: auto;
  padding: 2.25rem 3.125rem 2.25rem 2.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.page_header .hd_logo {
  width: 11rem;
  -webkit-transition: width 0.5s;
  transition: width 0.5s;
}
.page_header .hd_logo a {
  display: block;
}
.page_header .hd_logo img {
  height: auto;
}
.page_header .menu_bt {
  display: none;
}
.page_header .hd_nav_in {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.page_header .hd_nav_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media (min-width: 768px) and (max-width: 1254.9px) {
  .page_header .hd_nav_list > li {
    font-size: 0.8125rem;
  }
}
.page_header .hd_nav_list > li + li {
  margin-left: 3em;
}
@media (min-width: 768px) and (max-width: 1254.9px) {
  .page_header .hd_nav_list > li + li {
    margin-left: 1.25em;
  }
}
.page_header .hd_nav_list > li a {
  color: #ffffff;
  -webkit-transition: color 0.3s, background-color 0.3s;
  transition: color 0.3s, background-color 0.3s;
  text-decoration: none;
  display: block;
}
.page_header .btn_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-left: 2.5rem;
}
@media (max-width: 1254.9px) {
  .page_header .btn_link {
    margin-left: 1.5625rem;
  }
}
.page_header .btn_link a.btn {
  padding: 0.875rem 2.125rem;
  line-height: 1.3;
  background: #ffffff;
  color: #666666;
  border-radius: 3.75rem;
  display: inline-block;
  text-decoration: none;
  -webkit-transition: color 0.3s, background-color 0.3s;
  transition: color 0.3s, background-color 0.3s;
  font-weight: 300;
}
.page_header .btn_link a.btn span {
  display: inline-block;
}
.page_header .line a.btn {
  color: #ffffff !important;
  background-color: #05b850 !important;
}

@media (max-width: 767.9px) {
  .page_header_in {
    padding: 20px 18px 18px 20px;
    height: 100%;
    overflow: auto;
  }
  .page_header .hd_logo {
    width: 108px;
  }
  .page_header .hd_logo img {
    display: block;
  }
  .page_header .menu_bt {
    width: 44px;
    height: 44px;
    z-index: 5500;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-line-pack: center;
        align-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    background: transparent;
    -webkit-transition: opacity 0.2s;
    transition: opacity 0.2s;
    position: relative;
  }
  .page_header .menu_bt .menu {
    width: 100%;
    font-size: 10px;
    font-weight: 400;
    color: #ffffff;
    position: relative;
    bottom: 1.5em;
    left: -0.25em;
    letter-spacing: 0.05em;
  }
  .page_header .menu_bt span {
    width: 23px;
    height: 1px;
    background: #ffffff;
    display: block;
    position: relative;
    -webkit-transition: 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
  .page_header .menu_bt span::before, .page_header .menu_bt span::after {
    content: "";
    width: 28px;
    height: 1px;
    background: #ffffff;
    position: absolute;
    left: -5px;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    display: block;
  }
  .page_header .menu_bt span::before {
    top: -8px;
  }
  .page_header .menu_bt span::after {
    margin-left: 10px;
    width: 18px;
    bottom: -8px;
  }
  .page_header .menu_bt.open .menu {
    opacity: 0;
  }
  .page_header .menu_bt.open span {
    background: transparent !important;
  }
  .page_header .menu_bt.open span::before, .page_header .menu_bt.open span::after {
    background: #ffffff !important;
  }
  .page_header .menu_bt.open span::before {
    width: 26px;
    margin-left: 0;
    top: 0;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .page_header .menu_bt.open span::after {
    width: 26px;
    margin-left: 0;
    bottom: 0;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
  body:not(.page_home) .page_header .menu_bt .menu, .js-fix .page_header .menu_bt .menu {
    color: #618291;
  }
  body:not(.page_home) .page_header .menu_bt span, .js-fix .page_header .menu_bt span {
    background: #618291;
  }
  body:not(.page_home) .page_header .menu_bt span::before, body:not(.page_home) .page_header .menu_bt span::after, .js-fix .page_header .menu_bt span::before, .js-fix .page_header .menu_bt span::after {
    background: #618291;
  }
  .page_header::before, .page_header .hd_nav {
    -webkit-transform: translate3d(105%, 0, 0);
            transform: translate3d(105%, 0, 0);
    -webkit-transition: -webkit-transform 0.5s ease-in-out;
    transition: -webkit-transform 0.5s ease-in-out;
    transition: transform 0.5s ease-in-out;
    transition: transform 0.5s ease-in-out, -webkit-transform 0.5s ease-in-out;
    will-change: transform;
  }
  .menu_open .page_header::before, .menu_open .page_header .hd_nav {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
  .page_header::before {
    width: 350px;
    content: "";
    background: rgba(97, 130, 145, 0.8);
    height: 100%;
    position: fixed;
    top: 0;
    right: 0;
  }
  .page_header .hd_nav {
    width: 350px;
    backdrop-filter: blur(12px);
    height: 100%;
    position: fixed;
    top: 0;
    right: 0;
  }
  .page_header .hd_nav_in {
    padding: 85px 35px 64px;
    display: block;
    height: 100%;
    overflow: auto;
  }
  .page_header .hd_nav_list {
    display: block;
  }
  .page_header .hd_nav_list > li + li {
    margin-top: 42px;
    margin-left: 0;
  }
  .page_header .hd_nav_list > li a {
    line-height: 1;
  }
  .page_header .hd_nav_list > li a .en {
    font-size: 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .page_header .hd_nav_list > li a .en span {
    font-size: 0.75em;
    margin-inline: 0.25em;
    display: inline-block;
    position: relative;
    top: 0.25em;
  }
  .page_header .hd_nav_list > li a .ja {
    margin-top: 10px;
    font-size: 13px;
  }
  .page_header .hd_nav_list > li a span {
    display: block;
  }
  .page_header .btn_link {
    margin-top: 60px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-left: 0;
  }
  .page_header .btn_link p {
    width: calc(50% - 0.375rem);
  }
  .page_header .btn_link a.btn {
    font-size: 12px;
    color: #618291;
    letter-spacing: 0.05em;
    height: 35px;
    padding: 0;
    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;
  }
}
.page_footer {
  margin-top: 0;
  position: relative;
}
.page_footer .inbox {
  padding-inline: 0;
}
.page_footer::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 1.3125rem;
  background: #F7F8F8;
  z-index: 2;
}
.page_footer .inbox {
  max-width: 60rem;
  margin-left: auto;
  margin-right: auto;
}
.page_footer .page_footer_bg {
  padding-bottom: 3.625rem;
  background: #8FAFBC;
  position: relative;
  color: #ffffff;
}
.page_footer .page_footer_bg a {
  color: #ffffff;
}
.page_footer .page_footer_bg::before, .page_footer .page_footer_bg::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  display: block;
  height: 7.375rem;
}
.page_footer .page_footer_bg::before {
  width: 100%;
  background: #8FAFBC url("../img/footer_bg.svg") center bottom 0 no-repeat;
}
.page_footer .page_footer_bg::after {
  width: calc(50% - 15.625rem);
  background: #F7F8F8;
}
.page_footer .page_footer_bg > * {
  position: relative;
  z-index: 5;
}
.page_footer .page_footer_logo {
  height: 7.375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.page_footer .page_footer_logo img {
  width: 12.625rem;
}
.page_footer .footer_menu_title {
  margin-bottom: 1.875rem;
  font-weight: 600;
}
.page_footer .footer_menu.head {
  padding: 4.125rem 0 0.875rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.page_footer .footer_menu .footer_menu_box {
  margin-right: 3.75rem;
  letter-spacing: 0.05em;
}
.page_footer .footer_menu .footer_menu_box:last-child {
  margin-right: 0;
  margin-left: auto;
}
.page_footer .footer_menu .footer_links li {
  line-height: 1;
}
.page_footer .footer_menu .footer_links li + li {
  margin-top: 1.25rem;
}
.page_footer .footer_menu .footer_links li a.btn {
  width: 12.5rem;
  height: 3.125rem;
  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;
  font-size: 0.875rem;
  color: #618291;
  font-weight: 300;
  background: #ffffff;
  border-radius: 3.125rem;
  letter-spacing: 0.1em;
}
.page_footer .footer_menu .footer_links li.line a.btn {
  color: #ffffff !important;
  background-color: #05b850 !important;
}
.page_footer .foot_hours_in {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.page_footer .foot_hours dt {
  width: 5.5em;
}
.page_footer .footer_company {
  max-width: 42.5rem;
}
.page_footer .footer_company .footer_menu_title {
  margin-bottom: 0;
}
.page_footer .footer_company ul {
  margin-top: 1.5625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.page_footer .footer_company .text {
  margin-top: 1.625rem;
  font-size: 0.75rem;
}
.page_footer .arw_title {
  color: #42697B;
  font-weight: bold;
  padding-right: 1.875rem;
  margin-right: 1.25rem;
  background: url("../img/i_guide_arw.svg") right center no-repeat;
  background-size: auto 0.5rem;
}
.page_footer .arw_link span {
  padding-right: 1.5625rem;
  background: url("../img/i_arw_w.svg") right center no-repeat;
  background-size: 0.25rem auto;
}
.page_footer .footer_copy {
  margin-top: 3.75rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.page_footer .footer_copy .link a {
  font-weight: 500;
}
.page_footer .sns_wrapper {
  padding: 1.875rem 0;
}
.page_footer .sns_wrapper dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.page_footer .sns_wrapper dt {
  width: 14.5rem;
  color: #42697B;
}
.page_footer .sns_wrapper .sns_wrapper_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.5rem;
}
.page_footer .sns_wrapper .sns_links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.875rem;
}
.page_footer .sns_wrapper .sns_links .sns_links_title {
  color: #618291;
}
.page_footer .sns_wrapper .sns_links .sns_links_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.625rem;
}
.page_footer .sns_wrapper .sns_links .sns_links_list li a img {
  width: 1.875rem;
}

@media (max-width: 767.9px) {
  .page_footer::before {
    display: none;
  }
  .page_footer .page_footer_bg {
    padding-bottom: 2.625rem;
  }
  .page_footer .page_footer_bg::before, .page_footer .page_footer_bg::after {
    height: 3.75rem;
  }
  .page_footer .page_footer_bg::before {
    background: #F7F8F8 url("../img/footer_bg_sp.svg") center 0 no-repeat;
    background-size: contain;
  }
  .page_footer .page_footer_bg::after {
    display: none;
  }
  .page_footer .page_footer_logo {
    height: 3.75rem;
    padding-left: 1.875rem;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .page_footer .page_footer_logo img {
    width: 7.6875rem;
  }
  .page_footer .footer_menu_title {
    font-size: 1.125rem;
    margin-bottom: 1.25rem;
    line-height: 1;
  }
  .page_footer .footer_menu.head {
    padding: 2.25rem 1.875rem 2.1875rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .page_footer .footer_menu .footer_menu_box {
    margin-right: 0;
    letter-spacing: 0.05em;
  }
  .page_footer .footer_menu .footer_menu_box:last-child {
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 2.1875rem;
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
  }
  .page_footer .footer_menu p:not([class]) {
    font-size: 0.625rem;
  }
  .page_footer .footer_menu .footer_links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .page_footer .footer_menu .footer_links li + li {
    margin-top: 0;
  }
  .page_footer .footer_menu .footer_links li {
    width: calc(50% - 0.46875rem);
  }
  .page_footer .footer_menu .footer_links li a.btn {
    font-size: 0.6875rem;
    width: 100%;
    height: 2.1875rem;
  }
  .page_footer .footer_company {
    padding: 0 1.875rem;
  }
  .page_footer .footer_company .footer_menu_title_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .page_footer .footer_company .footer_menu_title_wrap p {
    line-height: 1;
  }
  .page_footer .footer_company .footer_menu_title_wrap .arw_link {
    font-size: 0.6875rem;
  }
  .page_footer .footer_company .footer_menu_title_wrap .arw_link span {
    padding-right: 0.5625rem;
  }
  .page_footer .footer_company .footer_menu_title {
    margin-bottom: 0;
  }
  .page_footer .footer_company ul {
    margin-top: 1.5625rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .page_footer .footer_company ul b {
    font-size: 0.75rem;
    letter-spacing: 0;
  }
  .page_footer .footer_company .text {
    margin-top: 0.9375rem;
    font-size: 0.625rem;
  }
  .page_footer .arw_title {
    font-size: 0.625rem;
    padding-right: 1.6875rem;
    margin-right: 0.375rem;
    background-size: auto 0.375rem;
  }
  .page_footer .footer_copy {
    margin-top: 2.5rem;
    padding: 0 1.875rem;
  }
  .page_footer .footer_copy .copyright {
    color: #C9DCE3;
    font-size: 0.625rem;
    letter-spacing: 0.05em;
  }
  .page_footer .footer_copy .link a {
    font-size: 0.6875rem;
  }
  .page_footer .sns_wrapper {
    padding: 1.5625rem 1.875rem 3.5rem;
  }
  .page_footer .sns_wrapper dl {
    display: block;
  }
  .page_footer .sns_wrapper dt {
    margin-bottom: 1.125rem;
    line-height: 1;
  }
  .page_footer .sns_wrapper .sns_wrapper_inner {
    margin-left: -0.25rem;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 2.5rem;
  }
  .page_footer .sns_wrapper .sns_links {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0.5rem 0.8125rem;
  }
  .page_footer .sns_wrapper .sns_links .sns_links_title {
    font-size: 0.75rem;
    width: 100%;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    text-align: center;
    letter-spacing: 0.05em;
  }
  .page_footer .sns_wrapper .sns_links .sns_links_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.625rem;
  }
  .page_footer .sns_wrapper .sns_links .sns_links_list li a img {
    width: 1.875rem;
  }
}
.fix_aside_wrap {
  position: relative;
  z-index: 100 !important;
  pointer-events: none;
}
.js-fix .fix_aside_wrap {
  pointer-events: auto;
}

.fix_aside_area {
  position: fixed;
  right: 6.25rem;
  bottom: 2.5rem;
  z-index: 100;
  -webkit-transition: bottom 0.3s;
  transition: bottom 0.3s;
  will-change: bottom;
}
@media (max-width: 1399.9px) {
  .fix_aside_area {
    right: 2.5rem;
  }
}
.fix_aside_area.absolute-position {
  position: absolute;
  bottom: -2rem;
}
.fix_aside_area.absolute-position .floating_bn {
  opacity: 0 !important;
  pointer-events: none !important;
}
.fix_aside_area.absolute-position .floating_bn.hidden {
  display: none;
}

.js-fix .page_top {
  opacity: 1;
}
.page_home .js-fix .floating_bn {
  opacity: 1;
  pointer-events: auto;
}

.floating_bn {
  margin-bottom: 1.25rem;
}

.page_top {
  width: 3.75rem;
  margin-left: auto;
  margin-right: 3.25rem;
}
@media (max-width: 1399.9px) {
  .page_top {
    margin-right: 0.625rem;
  }
}
.page_top {
  z-index: 100;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  opacity: 0;
}
.page_top a {
  display: block;
  text-align: center;
}
.page_top a .tx {
  margin-bottom: 0.375rem;
  display: block;
  color: #B5A575;
  font-size: 0.75rem;
  line-height: 1.25;
}
.page_top a img {
  width: 2.875rem;
  display: inline;
}

@media (max-width: 767.9px) {
  .fix_aside_area {
    right: 0.9375rem;
    bottom: 1.375rem;
  }
  .fix_aside_area.absolute-position {
    position: absolute;
    bottom: -0.625rem;
  }
  .floating_bn {
    margin-bottom: 0.625rem;
  }
  .page_top {
    width: 3.5rem;
    margin-left: auto;
    margin-right: 0.625rem;
  }
  .page_top a {
    display: block;
    text-align: center;
  }
  .page_top a .tx {
    margin-bottom: 0.375rem;
    font-size: 0.625rem;
    letter-spacing: 0.05em;
  }
  .page_top a img {
    width: 2.4375rem;
  }
}
.floating_bn {
  width: 18.75rem;
  z-index: 100;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  opacity: 0;
  pointer-events: none;
}
body:not(.page_home) .floating_bn {
  display: none;
}
.floating_bn.hidden {
  opacity: 0 !important;
  pointer-events: none !important;
}
.floating_bn .js-close-floating {
  width: 2rem;
  margin-bottom: -2.25rem;
  display: block;
  margin-left: auto;
  text-align: center;
  position: relative;
  z-index: 5;
  right: 1.625rem;
  bottom: 0;
}
.floating_bn img {
  display: block;
}
@media (max-width: 767.9px) {
  .floating_bn {
    width: 14rem;
  }
  .floating_bn .js-close-floating {
    width: 1.25rem;
    margin-bottom: -2rem;
    right: -0.125rem;
  }
}
.modal {
  width: 100%;
  height: 100%;
  background: rgba(93, 130, 149, 0.72);
  position: fixed;
  top: 0;
  left: 0;
  opacity: 0;
  pointer-events: none;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
  z-index: 2000;
}
.modal.active {
  opacity: 1;
  pointer-events: auto;
}
.modal .modal_bg {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  display: block;
}
.modal .modal_content {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  overflow: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 3.125rem;
}
.modal .modal_body {
  width: 36.25rem;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  background: #ffffff;
  border-radius: 1.25rem;
  padding: 3rem 3.125rem 2.5rem;
  text-align: center;
}
.modal .modal_body .js-close-modal {
  position: absolute;
  top: -1.375rem;
  right: -1.375rem;
  width: 2.75rem;
  height: 2.75rem;
}
.modal .modal_body_in > img {
  width: 18.125rem;
}
.modal .modal_body_in > p {
  margin-top: 1.75rem;
  text-align: left;
}
.modal .modal_line {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 1.875rem;
  padding: 1.75rem 1.25rem 2.25rem;
  background: #F5F5F5;
  border-radius: 0.625rem;
}
.modal .modal_line_title {
  width: 100%;
  margin-bottom: 1.125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.modal .modal_line_title .tx01,
.modal .modal_line_title .tx02 {
  font-size: 1.125rem;
  font-weight: bold;
}
.modal .modal_line_title .img {
  position: relative;
  bottom: 0.05em;
  margin: 0 0.5rem;
}
.modal .modal_line_title .img img {
  width: 7rem;
}
.modal .qr_code {
  width: 5.625rem;
  margin-right: 1rem;
}
.modal .modal_line_txt {
  width: 17.375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.modal .slash_text {
  margin-top: 0.34em;
}
.modal .slash_text span::before, .modal .slash_text span::after {
  content: "/";
  margin-left: 1em;
  display: inline-block;
}
.modal .slash_text span::before {
  margin-left: 0;
  margin-right: 1em;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}
.modal .btn_line {
  margin-top: auto;
  height: 3rem;
  color: #ffffff;
  background: #4DC764;
  border-radius: 0.625rem;
  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;
}
.modal .btn_line span {
  font-size: 1.125rem;
  font-weight: bold;
}
.modal .btn_line {
  position: relative;
}
.modal .btn_line::before {
  content: "";
  width: 2.625rem;
  height: 2.625rem;
  background: url("../img/i_line.svg") no-repeat;
  background-size: contain;
  pointer-events: none;
  position: absolute;
  left: 1.125rem;
  top: 50%;
  margin-top: -1.3125rem;
}

@media (max-width: 767.9px) {
  .modal .modal_content {
    padding: 10dvh 0;
  }
  .modal .modal_body {
    width: 19.6875rem;
    border-radius: 1.25rem;
    padding: 2.1875rem 1.5625rem 1.5625rem;
    text-align: center;
  }
  .modal .modal_body_in {
    max-height: 80dvh;
    overflow: auto;
  }
  .modal .modal_body_in > img {
    width: 11.9375rem;
  }
  .modal .modal_body_in > p {
    margin-top: 1.25rem;
    text-align: left;
  }
  .modal .modal_body .js-close-modal {
    top: -0.75rem;
    right: -0.75rem;
    width: 1.5625rem;
    height: 1.5625rem;
  }
  .modal .modal_line {
    margin-top: 1.125rem;
    padding: 0.9375rem 0.9375rem 0.9375rem;
    border-radius: 0.3125rem;
  }
  .modal .modal_line_title {
    width: 100%;
    margin-bottom: 0.5rem;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
  .modal .modal_line_title .tx01 {
    width: 100%;
    font-size: 0.75rem;
    margin-bottom: 0.3125rem;
  }
  .modal .modal_line_title .tx02 {
    line-height: 1.2;
    -webkit-box-flex: 2;
        -ms-flex: 2;
            flex: 2;
    font-size: 1rem;
    font-weight: bold;
  }
  .modal .modal_line_title .img {
    bottom: 0.05em;
    margin: 0 0;
  }
  .modal .modal_line_title .img img {
    width: 7.5rem;
  }
  .modal .modal_line_txt {
    width: 100%;
  }
  .modal .slash_text {
    margin-top: 0;
    margin-bottom: 0.25rem;
  }
  .modal .btn_line {
    height: 2.5rem;
    border-radius: 0.3125rem;
  }
  .modal .btn_line span {
    font-size: 0.90625rem;
  }
  .modal .btn_line::before {
    width: 2.25rem;
    height: 2.25rem;
    left: 1rem;
    margin-top: -1.125rem;
  }
}
#fv {
  position: relative;
  z-index: 5;
}
#fv ~ * {
  position: relative;
  z-index: 10;
}

#fv01 {
  width: 100%;
  height: 100dvh;
}
@media (hover: none) and (pointer: coarse) {
  #fv01 {
    height: calc(var(--vh-initial) * 100);
  }
}
#fv01 {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}
#fv01.is-hide {
  opacity: 0;
  pointer-events: none;
}
#fv01.is-hide::before {
  opacity: 0;
}
#fv01 .fv01_text {
  z-index: 50;
}
#fv01 .image {
  height: 100%;
  position: relative;
  z-index: 10;
}
#fv01::before {
  width: 100%;
  height: 150%;
  content: "";
  position: absolute;
  background: #D3D0CB;
  display: block;
  top: 0;
  left: 0;
  z-index: 5;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}

#fv {
  height: 100dvh;
}
@media (hover: none) and (pointer: coarse) {
  #fv {
    height: calc(var(--vh-initial) * 100);
  }
}

.fv_slider,
.slick-list,
.slick-track,
.fv_slide {
  height: 100%;
}

.fv_slider {
  position: relative;
  width: 100%;
  height: 100dvh;
}
@media (hover: none) and (pointer: coarse) {
  .fv_slider {
    height: calc(var(--vh-initial) * 100);
  }
}
.fv_slider .inbox {
  padding-inline: 0 !important;
}
.fv_slider + .fv_slider_dot {
  position: absolute;
  top: auto;
  left: auto;
  right: 4.8611111111vw;
  bottom: 4.4444444444vw;
  z-index: 50;
}
.fv_slider + .fv_slider_dot span {
  opacity: 0.24;
  width: 0.375rem;
  height: 0.375rem;
  border-radius: 0.0625rem;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  text-indent: 150%;
  overflow: hidden;
  white-space: nowrap;
  display: block;
  line-height: 1;
}
.fv_slider + .fv_slider_dot span + span {
  margin-top: 1.25rem !important;
}
.fv_slider + .fv_slider_dot span.swiper-pagination-bullet-active {
  opacity: 1;
}
.fv_slider + .fv_slider_dot .swiper-pagination-bullet-active {
  background: #FFFFFF;
}
.slide-fv03 .fv_slider + .fv_slider_dot span {
  background: #ADA17C;
}
.slide-fv04 .fv_slider + .fv_slider_dot span {
  background: #5D8295;
}

.fv_slide {
  width: 100%;
  height: 100dvh;
}
@media (hover: none) and (pointer: coarse) {
  .fv_slide {
    height: calc(var(--vh-initial) * 100);
  }
}
.fv_slide {
  position: relative;
  top: 0;
  left: 0;
}
.fv_slide .image {
  width: 100%;
  height: 100dvh;
}
@media (hover: none) and (pointer: coarse) {
  .fv_slide .image {
    height: calc(var(--vh-initial) * 100);
  }
}
.fv_slide .image {
  background: center center no-repeat;
  background-size: cover;
  background-attachment: fixed;
}
.fv_slide .image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.fv_slide .head_box {
  position: absolute;
}
.fv_slide .head_box .reed_en {
  color: #888888;
  line-height: 1.3333333333;
}
.fv_slide .head_box .reed_en span {
  display: block;
}
.fv_slide .head_box .reed_en span + span {
  margin-top: 0.4861111111vw;
}
.fv_slide .head_box .title {
  margin-top: 4.1666666667vw;
}
.fv_slide .head_box .link {
  font-size: 1.1111111111vw;
  margin-top: 4.1666666667vw;
  color: #333333;
  display: inline-block;
  position: relative;
  line-height: 1;
}
.fv_slide .head_box .link a {
  padding-right: max(1.5277777778vw, 16px);
  display: inline-block;
  padding-bottom: 1.1111111111vw;
  border-bottom: 1px solid #333333;
}
.fv_slide .head_box .link a::after {
  content: "";
  width: max(0.1875rem, 0.2083333333vw);
  height: max(0.375rem, 0.4166666667vw);
  background: url("../img/i_arw.svg") no-repeat;
  background-size: contain;
  position: absolute;
  top: max(50% - 0.5rem, 50% - 0.5555555556vw);
  right: max(0.25rem, 0.2777777778vw);
  margin-top: max(-0.1875rem, -0.2083333333vw);
  display: block;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.fv_slide .head_box .reed_en {
  font-weight: 200;
  font-size: 0.8333333333vw;
}
.fv_slide .head_box .title {
  margin-top: 2.0833333333vw;
  font-size: 1.8055555556vw;
  line-height: 1.7692307692;
  font-weight: 500;
}
.fv_slide .head_box .text {
  margin-top: 2.0833333333vw;
  letter-spacing: 0.05em;
}
.fv_slide .head_box .reed_en,
.fv_slide .head_box .title,
.fv_slide .head_box .link {
  opacity: 0;
  -webkit-transform: translate3d(0, 20%, 0);
          transform: translate3d(0, 20%, 0);
  -webkit-transition: opacity 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
}
.fv_slide.swiper-slide-active .head_box .reed_en,
.fv_slide.swiper-slide-active .head_box .title,
.fv_slide.swiper-slide-active .head_box .link {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  -webkit-transition: opacity 0.75s ease-in-out, -webkit-transform 0.75s ease-in-out;
  transition: opacity 0.75s ease-in-out, -webkit-transform 0.75s ease-in-out;
  transition: opacity 0.75s ease-in-out, transform 0.75s ease-in-out;
  transition: opacity 0.75s ease-in-out, transform 0.75s ease-in-out, -webkit-transform 0.75s ease-in-out;
}
.fv_slide.swiper-slide-active .head_box .reed_en {
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}
.fv_slide.swiper-slide-active .head_box .title {
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}
.fv_slide.swiper-slide-active .head_box .link {
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}
.fv_slide .fv01_text {
  width: 29.4444444444vw;
  text-align: center;
  left: 9.5138888889vw;
  bottom: 4.0277777778vw;
}
.fv_slide .fv01_text .logo {
  margin-bottom: 1.3888888889vw;
}
.fv_slide .fv01_text .text {
  margin-top: 0;
  font-size: 0.8333333333vw;
  color: #ffffff;
}
.fv_slide .fv02_text {
  left: 16.6666666667vw;
  top: 50%;
  padding-top: 6.25%;
  -webkit-transform: translate3d(0, -50%, 0);
          transform: translate3d(0, -50%, 0);
  bottom: auto;
  color: #ffffff;
}
.fv_slide .fv02_text .reed_en {
  color: #FFFFFF;
}
@media (min-width: 768px) {
  .fv_slide .fv02_text .title {
    font-size: 2.3611111111vw;
    line-height: 1.7352941176;
  }
}
.fv_slide .fv02_text .link a {
  color: #ffffff;
  border-bottom-color: #ffffff;
}
.fv_slide .fv02_text .link a::after {
  background-image: url(../img/i_arw_w.svg);
}
.fv_slide .fv03_text {
  left: 61.1111111111vw;
  top: 50%;
  padding-top: 10.625%;
  -webkit-transform: translate3d(0, -50%, 0);
          transform: translate3d(0, -50%, 0);
  bottom: auto;
}
.fv_slide .fv03_text .reed_en {
  color: #9B8D62;
}
@media (min-width: 768px) {
  .fv_slide .fv03_text .title {
    font-size: 2.0833333333vw;
    line-height: 1.7333333333;
  }
}
.fv_slide .fv04_text {
  left: 56.1111111111vw;
  top: 50%;
  padding-top: 3.25%;
  -webkit-transform: translate3d(0, -50%, 0);
          transform: translate3d(0, -50%, 0);
  bottom: auto;
}
@media (min-width: 768px) {
  .fv_slide .fv04_text .title {
    font-size: 2.0833333333vw;
    line-height: 1.7333333333;
  }
}

@media (min-width: 768px) and (max-width: 1079.9px) and (orientation: landscape) {
  .fv_slider + .fv_slider_dot {
    right: 3.28125rem;
    bottom: 3rem;
  }
  .fv_slider + .fv_slider_dot span + span {
    margin-top: 0.9375rem;
  }
  .fv_slide .head_box .reed_en span + span {
    margin-top: 0.328125rem;
  }
  .fv_slide .head_box .title {
    margin-top: 2.8125rem;
  }
  .fv_slide .head_box .link {
    font-size: 0.75rem;
    margin-top: 2.8125rem;
  }
  .fv_slide .head_box .link a {
    padding-right: 1.03125rem;
    padding-bottom: 0.75rem;
  }
  .fv_slide .head_box .reed_en {
    font-size: 0.625rem;
  }
  .fv_slide .head_box .title {
    margin-top: 1.40625rem;
    font-size: 1.21875rem;
  }
  .fv_slide .head_box .text {
    margin-top: 1.40625rem;
  }
  .fv_slide .fv01_text {
    width: 19.875rem;
    left: 6.421875rem;
    bottom: 2.71875rem;
  }
  .fv_slide .fv01_text .logo {
    margin-bottom: 0.9375rem;
  }
  .fv_slide .fv01_text .text {
    font-size: 0.625rem;
  }
  .fv_slide .fv02_text {
    left: 11.25rem;
    bottom: 9.140625rem;
  }
  .fv_slide .fv02_text .title {
    font-size: 1.59375rem;
  }
  .fv_slide .fv03_text {
    left: 41.25rem;
    bottom: 9.1875rem;
  }
  .fv_slide .fv03_text .title {
    font-size: 1.40625rem;
  }
  .fv_slide .fv04_text {
    left: 37.875rem;
  }
  .fv_slide .fv04_text .title {
    font-size: 1.40625rem;
  }
}
@media (min-width: 768px) and (max-width: 1079.9px) and (orientation: portrait) {
  .fv_slider + .fv_slider_dot {
    right: 9.3333333333vw;
    bottom: 8vw;
  }
  .fv_slider + .fv_slider_dot span {
    width: 1.3333333333vw;
    height: 1.3333333333vw;
  }
  .fv_slider + .fv_slider_dot span + span {
    margin-top: 5.3333333333vw;
  }
  .fv_slide .head_box .reed_en {
    line-height: 1.2777777778;
    font-size: 1.8vw;
    letter-spacing: 0.05em;
  }
  .fv_slide .head_box .reed_en span + span {
    margin-top: 1.0666666667vw;
  }
  .fv_slide .head_box .title {
    margin-top: 5vw;
    font-size: 4vw;
    line-height: 1.7;
    letter-spacing: 0.2em;
  }
  .fv_slide .head_box .link {
    margin-top: 7vw;
  }
  .fv_slide .head_box .link a {
    font-size: 2vw;
    padding-right: 3vw;
    padding-bottom: 1.8vw;
  }
  .fv_slide .head_box .link a::after {
    width: 0.6vw;
    height: 1.2vw;
    top: 0.8vw;
  }
  .fv_slide .fv01_text {
    width: 59.7333333333vw;
    padding: 0;
    left: 21.7333333333vw;
    top: auto;
    bottom: 11.8666666667vh;
  }
  .fv_slide .fv01_text .text {
    width: 120%;
    margin-left: -10%;
    margin-top: 43.2vh;
    font-size: 3.2vw;
    color: #ffffff;
    text-align: center;
  }
  .fv_slide .fv02_text {
    left: 14.6666666667vw;
  }
  .fv_slide .fv03_text {
    padding-top: 0;
    left: 48.8vw;
  }
  .fv_slide .fv04_text {
    left: 14.6666666667vw;
    top: auto;
    padding-top: 0;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    bottom: 11dvh;
  }
}
@media (max-width: 767.9px) and (orientation: portrait) {
  .fv_slide .head_box .reed_en {
    line-height: 1.2777777778;
    font-size: 0.5625rem;
    letter-spacing: 0.05em;
  }
  .fv_slide .head_box .reed_en span + span {
    margin-top: 0.25rem;
  }
  .fv_slide .head_box .title {
    margin-top: 5.8333333333dvh;
    font-size: 1.25rem;
    line-height: 1.7;
    letter-spacing: 0.2em;
  }
  .fv_slide .head_box .link {
    margin-top: 5.8333333333dvh;
  }
  .fv_slide .head_box .link a {
    font-size: 0.625rem;
    padding-right: 0.9375rem;
    padding-bottom: 0.5625rem;
  }
  .fv_slide .head_box .link a::after {
    top: 0.25rem;
  }
  .fv_slide .fv01_text {
    width: 100%;
    height: 100%;
    left: auto;
    bottom: auto;
    padding: 0;
    position: absolute;
  }
  .fv_slide .fv01_text .inbox {
    padding: 0;
  }
  .fv_slide .fv01_text .logo {
    position: absolute;
    width: 100%;
    left: 0;
    text-align: center;
    top: 24.75dvh;
    bottom: auto;
  }
  .fv_slide .fv01_text .logo img {
    width: 14rem;
  }
  .fv_slide .fv01_text .text {
    width: 100%;
    margin-left: 0;
    margin-top: 0;
    font-size: 0.75rem;
    color: #ffffff;
    text-align: center;
    position: absolute;
    left: 0;
    top: auto;
    bottom: 7.4166666667dvh;
  }
  .fv_slide .fv02_text {
    left: 3.4375rem;
    top: 50%;
    -webkit-transform: translate3d(0, -50%, 0);
            transform: translate3d(0, -50%, 0);
    bottom: auto;
  }
  .fv_slide .fv03_text {
    left: 11.4375rem;
    top: 50%;
    -webkit-transform: translate3d(0, -50%, 0);
            transform: translate3d(0, -50%, 0);
    bottom: auto;
    padding-bottom: 13.5833333333dvh;
  }
  .fv_slide .fv04_text {
    left: 3.4375rem;
    top: auto;
    padding-top: 0;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    bottom: 11.0833333333dvh;
  }
  .fv_slide .fv04_text .title {
    margin-top: 3.3333333333dvh;
  }
  .fv_slide .fv04_text .link {
    margin-top: 3.3333333333dvh;
  }
}
@media (max-width: 767.9px) and (orientation: landscape) {
  .fv_slide .head_box .reed_en {
    font-size: 1.3333333333vw;
  }
  .fv_slide .head_box .title {
    margin-top: 3.3333333333vw;
    font-size: 2.6666666667vw;
    line-height: 1.7;
  }
  .fv_slide .head_box .text {
    font-size: 1.7333333333vw;
    margin-top: 3.3333333333vw;
  }
}
@media (max-width: 767.9px) and (orientation: portrait) {
  .fv_slider + .fv_slider_dot {
    right: 2.1875rem;
    bottom: 5.8333333333dvh;
  }
  .fv_slider + .fv_slider_dot span {
    width: 0.3125rem;
    height: 0.3125rem;
  }
  .fv_slider + .fv_slider_dot span + span {
    margin-top: 0.875rem;
  }
}
.bg01 .sec_in {
  background: #FAF8F2;
}

.top_section#news .sec_in {
  padding-block: 5.125rem 3.75rem;
}
.top_section#news .sec_in_title {
  width: 10.625rem;
}
.top_section#news .news_list {
  -webkit-box-flex: 2;
      -ms-flex: 2;
          flex: 2;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.top_section#news .news_list li {
  width: 33.333%;
  padding: 1.0625rem 1.875rem 1.5625rem;
  border-right: 1px solid #C4B78F;
}
.top_section#news .news_list li:only-child {
  width: 100%;
}
@media (min-width: 768px) {
  .top_section#news .news_list li.box02 {
    width: 50%;
  }
}
.top_section#news .news_list li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.top_section#news .news_list li a .post_title {
  margin-top: 0.4375rem;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  line-height: 1.5714285714;
}
.top_section#news .news_list li a .post_title span {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.top_section#news .news_list li a .topics_info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  color: #A7914E;
}
.top_section#news .news_list li a .topics_info .new-icon {
  font-size: 0.6875rem;
  border-radius: 1.875rem;
  line-height: 1;
  background: #F4F0E6;
  padding: 0.3125rem 1.0625rem;
  display: inline-block;
}
.top_section#news .more_link {
  width: 5.5rem;
  padding-top: 1.5rem;
  margin-left: auto;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.top_section#news .more_link span {
  display: block;
}
.top_section#news .more_link .tx {
  font-size: 0.75rem;
  margin-bottom: 0.75rem;
  letter-spacing: 0.05em;
  color: #A7914E;
  line-height: 1;
}
.top_section#news .more_link .arw {
  display: block;
}
.top_section#news .more_link .arw img {
  width: 2.5rem;
}

@media (max-width: 767.9px) {
  .top_section#news .sec_in {
    padding-block: 2.8125rem 3.125rem;
  }
  .top_section#news .sec_in_flex {
    display: block;
    position: relative;
  }
  .top_section#news .sec_in_title {
    margin-bottom: 0.75rem;
    width: auto;
    text-align: left;
  }
  .top_section#news .sec_in_title .en {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .top_section#news .news_list {
    -webkit-box-flex: 1;
        -ms-flex: auto;
            flex: auto;
    display: block;
  }
  .top_section#news .news_list li {
    width: 100%;
    padding: 1.25rem 0 1.25rem;
    border-right: 0;
    border-bottom: 1px solid #C4B78F;
  }
  .top_section#news .news_list li a .post_title {
    margin-top: 0.625rem;
  }
  .top_section#news .news_list li a .post_title span {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
  }
  .top_section#news .news_list li a .topics_info {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .top_section#news .news_list li a .topics_info .new-icon {
    font-size: 0.625rem;
    margin-left: 0.9375rem;
    padding: 0.1875rem 0.8125rem;
  }
  .top_section#news .more_link {
    position: absolute;
    top: 0;
    right: 2.8125rem;
    width: 4.5rem;
    padding-top: 0.3125rem;
  }
  .top_section#news .more_link .tx {
    font-size: 0.625rem;
    margin-bottom: 0.25rem;
  }
  .top_section#news .more_link .arw {
    display: block;
  }
  .top_section#news .more_link .arw img {
    width: 1.6875rem;
  }
}
.top_section#about .sec_in {
  padding-bottom: 5.625rem;
}
.top_section#about .about_content {
  margin-inline: -15rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.top_section#about .about_content > * {
  width: 50%;
}
.top_section#about .about_content .about_content_box {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
.top_section#about .about_content .about_content_box .about_content_box_head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-bottom: 3.5rem;
}
.top_section#about .about_content .about_content_box .about_content_box_head .sec_in_title {
  text-align: left;
  padding-bottom: 1.875rem;
}
.top_section#about .about_content .about_content_box .about_content_box_head .about_content_box_head_image {
  width: 24.25rem;
}
@media (min-width: 768px) and (max-width: 1254.9px) {
  .top_section#about .about_content .about_content_box .about_content_box_head .about_content_box_head_image {
    margin-right: 4rem;
  }
}
@media (min-width: 768px) and (max-width: 1079.9px) {
  .top_section#about .about_content .about_content_box .about_content_box_head .about_content_box_head_image {
    width: 21.75rem;
    margin-right: 6.5rem;
  }
}
.top_section#about .about_content .about_content_box .about_content_box_head .about_content_box_head_image {
  margin-left: auto;
}
.top_section#about .about_content .about_content_box .head_box {
  max-width: 30.25rem;
}
.top_section#about .about_content .about_content_image {
  padding-top: 3.5rem;
}
.top_section#about .about_content .about_content_image picture {
  display: block;
  width: 38.75rem;
}
.top_section#about .about_wellbeing {
  padding-top: 3.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.top_section#about .about_wellbeing .about_wellbeing_q {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-right: 0;
  padding-inline: 0.25rem;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid #333333;
  cursor: pointer;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.top_section#about .about_wellbeing .about_wellbeing_q:hover {
  opacity: 0.7;
}
.top_section#about .about_wellbeing .about_wellbeing_q span {
  display: inline-block;
}
.top_section#about .about_wellbeing .about_wellbeing_q .i_add {
  width: 7px;
  height: 7px;
  margin-left: 1.75rem;
  position: relative;
}
.top_section#about .about_wellbeing .about_wellbeing_q .i_add::before, .top_section#about .about_wellbeing .about_wellbeing_q .i_add::after {
  content: "";
  width: 7px;
  height: 1px;
  background: #333333;
  display: block;
  position: absolute;
  left: 0;
  top: 3px;
}
.top_section#about .about_wellbeing .about_wellbeing_q .i_add::after {
  width: 1px;
  height: 7px;
  left: 3px;
  top: 0;
}
.top_section#about .about_wellbeing .about_wellbeing_content {
  width: 100%;
  margin-top: 2.25rem;
  background: #F4F0E4;
  border-radius: 1.25rem;
}
.top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_content_lead {
  width: 25rem;
  height: 2.125rem;
  margin-bottom: 2.5rem;
  color: #B9AA7C;
  padding-top: 0.125rem;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  background: url("../img/well-being_title_bg.svg") no-repeat;
  background-size: contain;
  display: block;
}
.top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_title {
  text-align: center;
  margin-bottom: 1.875rem;
  font-size: 1.25rem;
  font-weight: 500;
}
.top_section#about .about_wellbeing .about_wellbeing_content p {
  max-width: 46.375rem;
  margin-left: auto;
  margin-right: auto;
}
.top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_list_wrap {
  max-width: 52.5rem;
  margin-top: 3.125rem;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
.top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_list_wrap .image {
  width: 28.75rem;
  position: absolute;
  top: -3.5rem;
  left: 50%;
  margin-left: -14.375rem;
}
.top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_list_wrap .about_wellbeing_list {
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 3.5rem 12.5rem;
  padding-bottom: 2.375rem;
}
.top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_list_wrap .about_wellbeing_list li {
  max-width: 14.125rem;
}
.top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_list_wrap .about_wellbeing_list li.wellbeing01 .about_wellbeing_list_title {
  color: #397D9A;
}
.top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_list_wrap .about_wellbeing_list li.wellbeing02 .about_wellbeing_list_title {
  color: #C75660;
}
.top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_list_wrap .about_wellbeing_list li.wellbeing03 .about_wellbeing_list_title {
  color: #5566B9;
}
.top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_list_wrap .about_wellbeing_list li.wellbeing04 .about_wellbeing_list_title {
  color: #68A33C;
}
.top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_list_wrap .about_wellbeing_list li .about_wellbeing_list_title {
  font-size: 1.0625rem;
  line-height: 1.5555555556;
  font-weight: 500;
  letter-spacing: 0.05em;
}
.top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_list_wrap .about_wellbeing_list li p {
  margin-top: 1.3125rem;
  margin-bottom: 1.125rem;
  font-size: 0.75rem;
  line-height: 1.6666666667;
  letter-spacing: 0.04em;
}
.top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_list_wrap .about_wellbeing_list li a {
  font-size: 0.6875rem;
  padding-right: 0.9375rem;
  padding-bottom: 0.3125rem;
  display: inline-block;
  border-bottom: 1px solid #333333;
  position: relative;
}
.top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_list_wrap .about_wellbeing_list li a::after {
  content: "";
  width: 3px;
  height: 5px;
  background: url("../img/i_arw.svg") no-repeat;
  background-size: contain;
  display: block;
  position: absolute;
  top: 50%;
  margin-top: -4px;
  right: 0.1875rem;
}
.top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_list_wrap .about_wellbeing_list li a span {
  display: inline-block;
}
.top_section#about .about_wellbeing .about_wellbeing_close {
  position: relative;
  z-index: 5;
  width: 12.375rem;
  margin-left: auto;
  margin-right: auto;
  height: 1.8125rem;
  background: url("../img/well-being_close_bg.svg");
  background-size: contain;
  text-align: center;
  color: #B9AA7C;
  font-size: 0.75rem;
  padding-top: 0.5rem;
  cursor: pointer;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.top_section#about .about_wellbeing .about_wellbeing_close:hover {
  opacity: 0.7;
}
.top_section#about .about_wellbeing .about_wellbeing_close span {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.top_section#about .about_wellbeing .about_wellbeing_close span::after {
  content: "";
  width: 0.5625rem;
  height: 0.5625rem;
  background: url("../img/well-being_close.svg");
  background-size: contain;
  margin-left: 0.625rem;
}

@media (max-width: 767.9px) {
  .top_section#about .sec_in {
    padding-bottom: 3.75rem;
  }
  .top_section#about .about_content {
    margin-inline: -1.875rem;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .top_section#about .about_content > * {
    width: 100%;
  }
  .top_section#about .about_content .about_content_box {
    padding-left: 3.125rem;
  }
  .top_section#about .about_content .about_content_box .about_content_box_head {
    margin-bottom: 1.375rem;
  }
  .top_section#about .about_content .about_content_box .about_content_box_head .sec_in_title {
    padding-bottom: 2.375rem;
  }
  .top_section#about .about_content .about_content_box .about_content_box_head .about_content_box_head_image {
    width: 9.75rem;
  }
  .top_section#about .about_content .about_content_box .head_box {
    max-width: 17.1875rem;
  }
  .top_section#about .about_content .about_content_image {
    padding-top: 0;
    margin-bottom: 1.25rem;
  }
  .top_section#about .about_content .about_content_image picture {
    width: 16.75rem;
  }
  .top_section#about .about_wellbeing {
    padding-top: 3.4375rem;
  }
  .top_section#about .about_wellbeing .about_wellbeing_q {
    padding-inline: 0.25rem;
    padding-bottom: 0.625rem;
  }
  .top_section#about .about_wellbeing .about_wellbeing_q .i_add {
    margin-left: 0.875rem;
  }
  .top_section#about .about_wellbeing .about_wellbeing_content {
    margin-top: 1.5625rem;
    border-radius: 0.625rem;
  }
  .top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_content_lead {
    width: 12.5rem;
    height: 1.0625rem;
    margin-bottom: 2.0625rem;
    padding-top: 0rem;
    font-size: 0.5rem;
  }
  .top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_title {
    margin-bottom: 1.1875rem;
    font-size: 0.8125rem;
  }
  .top_section#about .about_wellbeing .about_wellbeing_content p {
    max-width: 17.1875rem;
    letter-spacing: 0.05em;
  }
  .top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_list_wrap {
    max-width: 17.1875rem;
    margin-top: 2.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_list_wrap .image {
    width: 20.5rem;
    top: -3.5rem;
    margin-block: -0.375rem;
    margin-right: -1.6875rem;
    margin-left: -1.625rem;
    position: static;
  }
  .top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_list_wrap .about_wellbeing_list {
    display: contents;
  }
  .top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_list_wrap .about_wellbeing_list li {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
  }
  .top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_list_wrap .about_wellbeing_list li:nth-child(n+3) {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_list_wrap .about_wellbeing_list li:nth-child(even) {
    padding-left: 0.625rem;
  }
  .top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_list_wrap .about_wellbeing_list li {
    max-width: 50%;
  }
  .top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_list_wrap .about_wellbeing_list li .about_wellbeing_list_title {
    font-size: 0.75rem;
    line-height: 1.5416666667;
    letter-spacing: 0.05em;
  }
  .top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_list_wrap .about_wellbeing_list li p {
    margin-top: 0.9375rem;
    margin-bottom: 0.625rem;
    font-size: 0.625rem;
    line-height: 1.6;
    letter-spacing: 0.04em;
  }
  .top_section#about .about_wellbeing .about_wellbeing_content .about_wellbeing_list_wrap .about_wellbeing_list li a {
    font-size: 0.625rem;
    padding-right: 0.875rem;
    padding-bottom: 0.25rem;
  }
  .top_section#about .about_wellbeing .about_wellbeing_close {
    margin-top: 2.5rem;
    width: 7.375rem;
    height: 1.125rem;
    font-size: 0.625rem;
    padding-top: 0.5rem;
  }
  .top_section#about .about_wellbeing .about_wellbeing_close span::after {
    width: 0.4375rem;
    height: 0.4375rem;
    margin-left: 0.375rem;
  }
}
.top_section#service .sec_in {
  padding-block: 4.5rem 8.125rem;
}
.top_section#service .service_list {
  margin-top: 3.125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 3.75rem 2.5rem;
}
.top_section#service .service_list li {
  width: calc(50% - 1.25rem);
  min-height: 10rem;
  position: relative;
  padding-top: 2.8125rem;
  padding-left: 12.25rem;
  border-radius: 0.625rem;
  -webkit-box-shadow: -0.75rem -0.75rem 1.125rem #ffffff, 0.75rem 0.75rem 1.125rem rgba(202, 210, 222, 0.3);
          box-shadow: -0.75rem -0.75rem 1.125rem #ffffff, 0.75rem 0.75rem 1.125rem rgba(202, 210, 222, 0.3);
}
.top_section#service .service_list li:nth-child(4) .image {
  top: auto;
  bottom: 0;
}
.top_section#service .service_list li .text_wrap .service_list_title {
  min-height: 3.1111111111em;
  font-size: 1rem;
  line-height: 1.5555555556;
  font-weight: 400;
  margin-bottom: 0.5625rem;
}
.top_section#service .service_list li .text_wrap .service_list_check span {
  padding-left: 1.9375rem;
  position: relative;
}
.top_section#service .service_list li .text_wrap .service_list_check span::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 1.25rem;
  height: 1.25rem;
  margin-top: -0.625rem;
  background: url("../img/i_check.svg") no-repeat;
  background-size: contain;
}
.top_section#service .service_list li .service_list_lead {
  position: absolute;
  top: 0;
  left: 50%;
  width: 9.5rem;
  margin-left: -4.75rem;
  height: 1.875rem;
  color: #ffffff;
  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: url("../img/service_tt_bg.svg") no-repeat;
  background-size: contain;
}
.top_section#service .service_list li .service_list_lead.en {
  font-size: 0.625rem;
}
.top_section#service .service_list li .image {
  width: 12.25rem;
  position: absolute;
  top: 0;
  left: 0;
}

@media (max-width: 767.9px) {
  .top_section .inbox {
    padding-inline: 1.5625rem;
  }
  .top_section#service .sec_in {
    padding-block: 3.125rem 3.5rem;
  }
  .top_section#service .service_list {
    margin-top: 3.125rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 1.25rem 0.9375rem;
  }
  .top_section#service .service_list li {
    width: calc(50% - 0.46875rem);
    min-height: 14.125rem;
    padding-top: 1.625rem;
    padding-inline: 0.9375rem;
    border-radius: 0.3125rem;
    -webkit-box-shadow: -0.375rem -0.375rem 0.5625rem #ffffff, 0.375rem 0.375rem 0.5625rem rgba(202, 210, 222, 0.3);
            box-shadow: -0.375rem -0.375rem 0.5625rem #ffffff, 0.375rem 0.375rem 0.5625rem rgba(202, 210, 222, 0.3);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .top_section#service .service_list li .text_wrap .service_list_title {
    min-height: 3.1111111111em;
    font-size: 0.75rem;
    line-height: 1.5;
    margin-bottom: 0.6875rem;
    letter-spacing: 0.04em;
  }
  .top_section#service .service_list li .text_wrap .service_list_check {
    font-size: 0.625rem;
    line-height: 1.4;
    letter-spacing: 0.04em;
  }
  .top_section#service .service_list li .text_wrap .service_list_check span {
    display: block;
    padding-left: 0.875rem;
    letter-spacing: 0.04em;
    margin-right: -1em;
  }
  .top_section#service .service_list li .text_wrap .service_list_check span::before {
    width: 0.6875rem;
    height: 0.6875rem;
    top: 0.75rem;
    left: 0;
  }
  .top_section#service .service_list li .service_list_lead {
    width: 6.75rem;
    margin-left: -3.375rem;
    height: 1.3125rem;
  }
  .top_section#service .service_list li .service_list_lead.en {
    font-size: 0.5rem;
  }
  .top_section#service .service_list li .image {
    width: auto;
    margin-inline: -0.9375rem;
    margin-bottom: 0.625rem;
    position: static;
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
  }
}
.top_section#professional.professional_bg {
  background: url("../img/grd_bg.webp") no-repeat;
  background-size: cover;
}
.top_section#professional .sec_in {
  padding-block: 5rem 6.75rem;
}
.top_section#professional .professional_head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 3.125rem;
}
.top_section#professional .professional_head .head_box {
  width: 28.75rem;
  padding-bottom: 2.5rem;
}
.top_section#professional .professional_head .image {
  width: 28.125rem;
}
.top_section#professional .check_list_wrap {
  margin-block: 3.75rem 4.375rem;
  border-radius: 1.25rem;
  -webkit-box-shadow: -0.75rem -0.75rem 1.125rem #ffffff, 0.75rem 0.75rem 1.125rem rgba(202, 210, 222, 0.3);
          box-shadow: -0.75rem -0.75rem 1.125rem #ffffff, 0.75rem 0.75rem 1.125rem rgba(202, 210, 222, 0.3);
  padding: 2.8125rem 3.75rem 3.125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  position: relative;
}
.top_section#professional .check_list_wrap .check_list_en {
  position: absolute;
  top: 50%;
  right: -0.5rem;
  -webkit-transform: translate3d(0, -50%, 0);
          transform: translate3d(0, -50%, 0);
  -webkit-transform-origin: center center;
          transform-origin: center center;
  line-height: 1;
}
.top_section#professional .check_list_wrap .check_list_en span {
  font-size: 0.75rem;
  color: #84ACBE;
  display: inline-block;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.top_section#professional .check_list_wrap .check_list_title {
  width: 100%;
  font-size: 1.25rem;
  margin-bottom: 0.5em;
  text-align: center;
  color: #618291;
  font-weight: 500;
}
.top_section#professional .check_list_wrap .image {
  width: 15.5rem;
  margin-right: 3rem;
}
.top_section#professional .check_list_wrap .check_list_box {
  position: relative;
}
.top_section#professional .check_list_wrap .check_list_box small {
  position: absolute;
  bottom: 0;
  right: 0;
}
.top_section#professional .check_list_wrap .check_list li {
  padding-left: 2.5rem;
  font-size: 0.9375rem;
  line-height: 1.3333333333;
  letter-spacing: 0.05em;
  position: relative;
}
.top_section#professional .check_list_wrap .check_list li + li {
  margin-top: 0.9375rem;
}
.top_section#professional .check_list_wrap .check_list li:before {
  content: "";
  width: 1.25rem;
  height: 1.25rem;
  background: url("../img/i_check.svg") no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
}
.top_section#professional .experience .experience_head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  text-align: center;
}
.top_section#professional .experience .experience_head * {
  width: 100%;
  display: block;
}
.top_section#professional .experience .experience_head .title {
  margin-top: 1.5rem;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  font-weight: 500;
  line-height: 1;
  font-size: 1.5rem;
}
.top_section#professional .experience .experience_head .lead {
  font-weight: 200;
  font-size: 0.75rem;
  line-height: 1;
}
.top_section#professional .experience .experience_block {
  margin-top: 2.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1.25rem;
}
.top_section#professional .experience .experience_block .experience_box {
  width: calc(50% - 0.625rem);
  background: #ffffff;
  border-radius: 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 1.875rem 1.875rem 2.5rem 0;
}
.top_section#professional .experience .experience_block .experience_box .experience_box_head {
  width: 4.0625rem;
  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;
}
.top_section#professional .experience .experience_block .experience_box .experience_box_head span {
  font-size: 0.75rem;
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
  white-space: nowrap;
  color: #BFBFBF;
}
.top_section#professional .experience .experience_block .experience_box .experience_box_content {
  -webkit-box-flex: 2;
      -ms-flex: 2;
          flex: 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.top_section#professional .experience .experience_block .experience_box .experience_box_content .experience_box_title {
  text-align: center;
  line-height: 1;
  margin-bottom: 1.0625rem;
}
.top_section#professional .experience .experience_block .experience_box .experience_box_content .experience_box_title span {
  font-weight: 500;
  display: block;
}
.top_section#professional .experience .experience_block .experience_box .experience_box_content .experience_box_title .tx01 {
  font-size: 1.125rem;
  margin-bottom: 0.875rem;
}
.top_section#professional .experience .experience_block .experience_box .experience_box_content .experience_box_title .tx02 {
  font-size: 1.375rem;
}
.top_section#professional .experience .experience_block .experience_box .experience_box_content .image {
  margin-bottom: 1.875rem;
  -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
          order: -1;
}
.top_section#professional .coming_soon {
  margin-top: 3.125rem;
  position: relative;
}
.top_section#professional .coming_soon::before {
  width: 10.625rem;
  margin-left: auto;
  margin-right: auto;
  height: 0.9375rem;
  margin-bottom: 1.5rem;
  background: url("../img/dot_list.svg");
  background-size: auto 0.875rem;
  content: "";
  display: block;
}
.top_section#professional .coming_soon span {
  font-size: 1rem;
  display: block;
  text-align: center;
}
.top_section#professional .coming_soon .en {
  color: #618291;
}
.top_section#professional .step {
  background: url("../img/counseling_bg.webp") center center;
  background-size: cover;
  padding-block: 9.375rem 7.5rem;
  position: relative;
}
.top_section#professional .step::before {
  content: "";
  width: 90rem;
  height: 40px;
  left: 50%;
  margin-left: -48.125rem;
  background: url("../img/counseling_bg_head.svg") center bottom no-repeat;
  background-size: auto 100%;
  display: block;
  position: absolute;
  top: -2px;
}
.top_section#professional .step::after {
  content: "";
  width: 50%;
  left: 50%;
  height: 38px;
  background: #F5F7F8;
  display: block;
  position: absolute;
  top: 0;
}
.top_section#professional .step .step_head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1.875rem;
}
.top_section#professional .step .step_head .title {
  color: #ffffff;
  font-size: 1.625rem;
  line-height: 1;
  font-weight: 500;
}
@media (min-width: 768px) {
  .top_section#professional .step .step_arrow_wrap {
    max-width: 55rem;
    padding-right: 2.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    gap: 0.9375rem;
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
    margin-top: -3.4375rem;
    margin-bottom: 1.875rem;
  }
  .top_section#professional .step .step_arrow_wrap .step_arrow {
    width: 1.5625rem;
    height: 1.5625rem;
    background: url("../img/i_slide.svg") no-repeat;
    background-size: contain;
    text-indent: 150%;
    white-space: nowrap;
    overflow: hidden;
  }
  .top_section#professional .step .step_arrow_wrap .step_arrow[aria-disabled=true] {
    opacity: 0.5;
  }
  .top_section#professional .step .step_arrow_wrap .step_arrow.step_arrow_prev {
    -webkit-transform: scale(-1, 1);
            transform: scale(-1, 1);
  }
  .top_section#professional .step .step_arrow_wrap .step_arrow img {
    display: block;
  }
}
.top_section#professional .step .step_content {
  margin-left: max(50vw - 30rem + 5rem, 7.5rem);
  position: relative;
}
.top_section#professional .step .step_content .step_no_list {
  position: absolute;
  top: 0;
  left: -5rem;
  width: 2.5rem;
  margin-top: 2.8125rem;
  margin-right: 2.5rem;
}
.top_section#professional .step .step_content .step_no_list li + li {
  margin-top: 1.25rem;
}
.top_section#professional .step .step_content .step_no_list li.slick-active button {
  color: #556C76;
  background: #CDDAE0;
}
.top_section#professional .step .step_content .step_no_list button {
  width: 2.5rem;
  height: 2.5rem;
  background: #8FAAB4;
  font-weight: 300 !important;
  color: #ffffff;
  border-radius: 2.5rem;
}
.top_section#professional .step .step_content .step_no_list button::before {
  content: "0";
}
.top_section#professional .step .step_content .step_content_in {
  -webkit-box-flex: 2;
      -ms-flex: 2;
          flex: 2;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.top_section#professional .step .step_content .step_content_in .step_content_slider_wrap {
  overflow: hidden;
  position: relative;
}
.top_section#professional .step .step_content .step_content_in .step_content_slider {
  width: 21.875rem;
}
.top_section#professional .step .step_content .step_content_in .step_content_slider .slick-list {
  overflow: inherit;
}
.top_section#professional .step .step_content .step_content_in .step_content_slider .step_content_slider_item {
  padding-right: 1.25rem;
  position: relative;
}
.top_section#professional .step .step_content .step_content_in .step_content_slider .step_content_slider_item .step_content_slider_item_no {
  margin-left: 1.25rem;
  margin-bottom: 0.5rem;
  line-height: 1;
  font-weight: 400 !important;
  color: #597581;
}
.top_section#professional .step .step_content .step_content_in .step_content_slider .step_content_slider_item .in_wrap {
  padding: 1.25rem 1.25rem 1.5rem;
  position: relative;
  background: url("../img/counseling_bg.webp") center center;
  background-size: 90rem auto;
  color: #ffffff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.top_section#professional .step .step_content .step_content_in .step_content_slider .step_content_slider_item .in_wrap::before {
  content: "";
  width: 100%;
  height: 100%;
  mix-blend-mode: multiply;
  background: #A6B8BF;
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  border-radius: 0.625rem;
  opacity: 0.15;
}
.top_section#professional .step .step_content .step_content_in .step_content_slider .step_content_slider_item .in_wrap .step_content_slider_title {
  font-size: 1.125rem;
  margin-bottom: 0.9375rem;
  line-height: 1.2;
  font-weight: 500;
}
.top_section#professional .step .step_content .step_content_in .step_content_slider .step_content_slider_item .in_wrap p {
  line-height: 1.7142857143;
}
.top_section#professional .step .step_content .step_content_in .step_content_slider .step_content_slider_item .in_wrap .image {
  -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
          order: -1;
  margin-bottom: 1.25rem;
}
.top_section#professional .step .step_content .step_content_in .step_content_slider .step_content_slider_item .in_wrap .image img {
  display: block;
}
.top_section#professional .step .step_content .step_content_in .step_content_info {
  margin-top: 3.125rem;
  color: #ffffff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.top_section#professional .step .step_content .step_content_in .step_content_info .step_content_info_title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-right: 3.125rem;
}
.top_section#professional .step .step_content .step_content_in .step_content_info .step_content_info_title img {
  width: 1.375rem;
  margin-right: 0.9375rem;
  display: block;
}
.top_section#professional .step .step_content .step_content_in .step_content_info .step_content_info_title span {
  font-weight: 500;
}
.top_section#professional .step .step_content .step_content_in .step_content_info p {
  max-width: 31.25rem;
  -webkit-box-flex: 2;
      -ms-flex: 2;
          flex: 2;
  padding-left: 2.5rem;
  border-left: 1px solid #ffffff;
  letter-spacing: 0.05em;
  line-height: 1.8571428571;
}
.top_section#professional .step .step_content .step_content_in .step_content_info p span {
  display: inline-block;
}

@media (max-width: 767.9px) {
  .top_section#professional.professional_bg {
    background: none;
  }
  .top_section#professional .sec_in {
    padding-block: 0.25rem 3.75rem;
  }
  .top_section#professional .professional_head {
    width: 17.1875rem;
    margin-top: 2.1875rem;
    margin-left: auto;
    margin-right: auto;
  }
  .top_section#professional .professional_head .head_box {
    width: 100%;
    padding-bottom: 0;
  }
  .top_section#professional .professional_head .head_box .reed_en {
    letter-spacing: 0.05em;
  }
  .top_section#professional .professional_head .head_box .title {
    font-size: 1.0625rem;
  }
  .top_section#professional .professional_head .image {
    width: 17.1875rem;
    margin-bottom: 2.1875rem;
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
  }
  .top_section#professional .check_list_wrap {
    margin-block: 2.1875rem 3.4375rem;
    border-radius: 0.625rem;
    -webkit-box-shadow: -0.375rem -0.375rem 0.5625rem #ffffff, 0.375rem 0.375rem 0.5625rem rgba(202, 210, 222, 0.3);
            box-shadow: -0.375rem -0.375rem 0.5625rem #ffffff, 0.375rem 0.375rem 0.5625rem rgba(202, 210, 222, 0.3);
    padding: 1.5625rem 2.375rem 2.1875rem;
  }
  .top_section#professional .check_list_wrap .check_list_en {
    right: -0.5rem;
  }
  .top_section#professional .check_list_wrap .check_list_en span {
    font-size: 0.5625rem;
  }
  .top_section#professional .check_list_wrap .check_list_title {
    font-size: 0.875rem;
    line-height: 1.6428571429;
    margin-bottom: 1.5625rem;
  }
  .top_section#professional .check_list_wrap .image {
    width: 7rem;
    margin-right: 0;
    position: absolute;
    right: -1.875rem;
    bottom: -1.875rem;
  }
  .top_section#professional .check_list_wrap .check_list_box small {
    position: static;
    margin-left: 1.75rem;
  }
  .top_section#professional .check_list_wrap .check_list li {
    padding-left: 1.75rem;
    font-size: 0.8125rem;
    line-height: 1.3846153846;
  }
  .top_section#professional .check_list_wrap .check_list li + li {
    margin-top: 1.25rem;
  }
  .top_section#professional .check_list_wrap .check_list li:before {
    width: 1.125rem;
    height: 1.125rem;
  }
  .top_section#professional .experience .experience_head .title {
    margin-top: 1.25rem;
    font-size: 1rem;
  }
  .top_section#professional .experience .experience_head .lead {
    font-size: 0.5625rem;
  }
  .top_section#professional .experience .experience_block {
    margin-top: 2.0625rem;
    gap: 1.375rem;
  }
  .top_section#professional .experience .experience_block .experience_box {
    width: 100%;
    border-radius: 0.625rem;
    padding: 0.9375rem 0.9375rem 1.5625rem 0;
  }
  .top_section#professional .experience .experience_block .experience_box .experience_box_head {
    width: 2.9375rem;
  }
  .top_section#professional .experience .experience_block .experience_box .experience_box_head span {
    font-size: 0.5625rem;
  }
  .top_section#professional .experience .experience_block .experience_box .experience_box_content .experience_box_title {
    margin-bottom: 0.9375rem;
  }
  .top_section#professional .experience .experience_block .experience_box .experience_box_content .experience_box_title .tx01 {
    font-size: 0.8125rem;
    margin-bottom: 0.625rem;
  }
  .top_section#professional .experience .experience_block .experience_box .experience_box_content .experience_box_title .tx02 {
    font-size: 0.9375rem;
  }
  .top_section#professional .experience .experience_block .experience_box .experience_box_content p {
    font-size: 0.6875rem;
    line-height: 1.8181818182;
  }
  .top_section#professional .experience .experience_block .experience_box .experience_box_content .image {
    margin-bottom: 0.9375rem;
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
  }
  .top_section#professional .coming_soon {
    margin-top: 2.8125rem;
  }
  .top_section#professional .coming_soon::before {
    width: 9.0625rem;
    height: 0.75rem;
    margin-bottom: 2.1875rem;
    background-size: auto 0.75rem;
  }
  .top_section#professional .coming_soon span {
    font-size: 0.8125rem;
    display: block;
    text-align: center;
  }
  .top_section#professional .coming_soon .en {
    font-size: 0.9375rem;
  }
  .top_section#professional .coming_soon .ja {
    margin-top: 0.625rem;
  }
  .top_section#professional .step {
    background-image: url("../img/counseling_bg_sp.webp");
    padding-block: 4.25rem 3.125rem;
  }
  .top_section#professional .step::before {
    content: "";
    width: 100%;
    height: 1.375rem;
    left: 0;
    margin-left: 0;
    background: url("../img/counseling_bg_head_sp.svg") center bottom no-repeat;
    background-size: 100% auto;
    display: block;
    position: absolute;
    top: -2px;
  }
  .top_section#professional .step::after {
    display: none;
  }
  .top_section#professional .step .step_head {
    margin-bottom: 1.4375rem;
  }
  .top_section#professional .step .step_head .title {
    width: 100%;
    text-align: center;
    font-size: 1rem;
  }
  .top_section#professional .step .step_head .step_arrow_wrap {
    display: none;
  }
  .top_section#professional .step .step_content {
    margin-left: 3.125rem;
    position: relative;
  }
  .top_section#professional .step .step_content .step_no_list {
    position: absolute;
    top: 0;
    left: -1.5625rem;
    width: 1.5625rem;
    margin-top: 1.125rem;
    margin-right: 0;
  }
  .top_section#professional .step .step_content .step_no_list li + li {
    margin-top: 0.78125rem;
  }
  .top_section#professional .step .step_content .step_no_list button {
    width: 1.5625rem;
    height: 1.5625rem;
    border-radius: 1.5625rem;
    font-size: 0.53125rem;
  }
  .top_section#professional .step .step_content .step_arrow_wrap {
    margin-left: auto;
    margin-top: 1.125rem;
    padding-right: 1.5625rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    gap: 0.75rem;
  }
  .top_section#professional .step .step_content .step_arrow_wrap .step_arrow {
    width: 1.375rem;
    height: 1.375rem;
    background: url("../img/i_slide.svg") no-repeat;
    background-size: contain;
    text-indent: 150%;
    white-space: nowrap;
    overflow: hidden;
  }
  .top_section#professional .step .step_content .step_arrow_wrap .step_arrow[aria-disabled=true] {
    opacity: 0.5;
  }
  .top_section#professional .step .step_content .step_arrow_wrap .step_arrow.step_arrow_prev {
    -webkit-transform: scale(-1, 1);
            transform: scale(-1, 1);
  }
  .top_section#professional .step .step_content .step_arrow_wrap .step_arrow img {
    display: block;
  }
  .top_section#professional .step .step_content .step_content_in {
    -webkit-box-flex: 2;
        -ms-flex: 2;
            flex: 2;
    overflow: hidden;
  }
  .top_section#professional .step .step_content .step_content_in .step_content_slider_wrap {
    overflow: hidden;
    margin-left: 1.5625rem;
  }
  .top_section#professional .step .step_content .step_content_in .step_content_slider {
    width: 16.1875rem;
  }
  .top_section#professional .step .step_content .step_content_in .step_content_slider .slick-list {
    overflow: inherit;
  }
  .top_section#professional .step .step_content .step_content_in .step_content_slider .step_content_slider_item {
    padding-right: 0.9375rem;
    position: relative;
  }
  .top_section#professional .step .step_content .step_content_in .step_content_slider .step_content_slider_item .step_content_slider_item_no {
    margin-left: 1.0625rem;
    margin-bottom: 0.375rem;
  }
  .top_section#professional .step .step_content .step_content_in .step_content_slider .step_content_slider_item .in_wrap {
    padding: 1.0625rem 1.0625rem 1.25rem;
    background: url("../img/counseling_bg_sp.webp") center center;
    background-size: 23.4375rem auto;
  }
  .top_section#professional .step .step_content .step_content_in .step_content_slider .step_content_slider_item .in_wrap::before {
    border-radius: 0.3125rem;
  }
  .top_section#professional .step .step_content .step_content_in .step_content_slider .step_content_slider_item .in_wrap .step_content_slider_title {
    font-size: 0.875rem;
    margin-bottom: 0.5rem;
  }
  .top_section#professional .step .step_content .step_content_in .step_content_slider .step_content_slider_item .in_wrap p {
    letter-spacing: 0.03em;
    line-height: 1.5;
    margin-right: -0.25em;
  }
  .top_section#professional .step .step_content .step_content_in .step_content_slider .step_content_slider_item .in_wrap .image {
    margin-bottom: 0.9375rem;
  }
  .top_section#professional .step .step_content .step_content_in .step_content_info {
    margin-top: 1.0625rem;
    display: block;
  }
  .top_section#professional .step .step_content .step_content_in .step_content_info .step_content_info_title {
    font-size: 0.8125rem;
    padding-right: 0;
  }
  .top_section#professional .step .step_content .step_content_in .step_content_info .step_content_info_title img {
    width: 1.0625rem;
    margin-right: 0.75rem;
    display: block;
  }
  .top_section#professional .step .step_content .step_content_in .step_content_info .step_content_info_title span {
    font-weight: 500;
  }
  .top_section#professional .step .step_content .step_content_in .step_content_info p {
    margin-top: 0.625rem;
    max-width: 17.1875rem;
    padding-left: 0;
    border-left: 0;
    letter-spacing: 0.05em;
    line-height: 1.8333333333;
  }
  .top_section#professional .step .step_content .step_content_in .step_content_info p span {
    display: inline;
  }
}
.top_section#brand .sec_in {
  padding-block: 7.5rem;
}
.top_section#brand .sec_in_title {
  position: relative;
}
.top_section#brand .sec_in_title span {
  position: relative;
  z-index: 5;
}
.top_section#brand .sec_in_title::before {
  content: "";
  width: 72.9861111111vw;
  height: 50.4166666667vw;
  min-height: 45.375rem;
  position: absolute;
  top: 0.75rem;
  left: 0;
  background: url("../img/products_bg.webp") right 0 no-repeat;
  background-size: auto 100%;
}
.top_section#brand .brand_head {
  margin-top: 4.5rem;
  position: relative;
  z-index: 5;
}
.top_section#brand .brand_head .head_box {
  width: 27.5rem;
  padding-right: 1.25rem;
  margin-left: auto;
}
.top_section#brand .brand_list {
  margin-top: 3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1.875rem;
  position: relative;
  z-index: 5;
}
.top_section#brand .brand_list > li {
  width: calc(50% - 0.9375rem);
}
.top_section#brand .brand_list > li a {
  padding: 1.25rem 1.25rem 1.875rem;
  background: #ffffff;
  border-radius: 0.625rem;
  display: block;
}
.top_section#brand .brand_list > li a .image {
  margin-bottom: 1.25rem;
}
.top_section#brand .brand_list > li a .logo {
  margin-bottom: 1.25rem;
  text-align: center;
}
.top_section#brand .brand_list > li a .logo img {
  width: 20rem;
}
.top_section#brand .brand_list > li a .text_wrap {
  position: relative;
}
.top_section#brand .brand_list > li a .text_wrap::before {
  width: 2.5rem;
  height: 2.5rem;
  background: url("../img/i_cl_arw.svg") no-repeat;
  background-size: contain;
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
}
.top_section#brand .brand_list > li a .text_wrap p {
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 500;
}
.top_section#brand .brand_list > li a .text_wrap .cat_list {
  margin-top: 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.top_section#brand .brand_list > li a .text_wrap .cat_list li {
  font-size: 0.6875rem;
  line-height: 1;
  margin-right: 0.375rem;
  padding: 0.375rem 0.625rem 0.4375rem;
  border-radius: 1.875rem;
}
.top_section#brand .brand_list > li a .text_wrap .cat_list li.cat01 {
  color: #358BB2;
  background: #EDF5F8;
}
.top_section#brand .brand_list > li a .text_wrap .cat_list li.cat02 {
  color: #7A68AA;
  background: #F0EDF8;
}
.top_section#brand .brand_list > li a .text_wrap .cat_list li.cat03 {
  color: #A87A4D;
  background: #F7F2ED;
}
.top_section#brand .brand_list > li a .text_wrap .cat_list li.cat04 {
  color: #648D43;
  background: #F2F8ED;
}
.top_section#brand .brand_list > li a .text_wrap .cat_list li.cat05 {
  color: #A79E4B;
  background: #F8F7ED;
}
.top_section#brand .brand_list > li a .text_wrap .cat_list li.cat06 {
  color: #C45C78;
  background: #F8EDF0;
}
.top_section#brand .brand_list > li a .text_wrap .cat_list li.cat07 {
  color: #659187;
  background: #E7F4F1;
}
.top_section#brand .att_text {
  margin-top: 1.875rem;
  font-size: max(0.6875rem, 8px);
  line-height: 1.6363636364;
  color: #888888;
  display: block;
}
.top_section#brand .brand_links {
  margin-top: 4rem;
  padding-left: 2.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.top_section#brand .brand_links .logo {
  width: 14.5rem;
}
.top_section#brand .brand_links .bn_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1.875rem;
}
.top_section#brand .brand_links .bn_list li {
  width: 19.125rem;
}
.top_section#brand .brand_links .bn_list li a .bn_list_dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.top_section#brand .brand_links .bn_list li a .bn_list_dl .bn_list_dl_bn {
  height: 6.25rem;
  background: right center no-repeat;
  color: #ffffff;
  line-height: 1;
  border-radius: 0.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-line-pack: center;
      align-content: center;
}
.top_section#brand .brand_links .bn_list li a .bn_list_dl .bn_list_dl_bn span {
  width: 100%;
  display: block;
  text-align: center;
}
.top_section#brand .brand_links .bn_list li a .bn_list_dl .bn_list_dl_bn .en {
  font-size: 1.125rem;
  margin-bottom: 0.75rem;
}
.top_section#brand .brand_links .bn_list li a .bn_list_dl .bn_list_dl_text {
  margin-top: 0.5em;
  font-size: 0.9375rem;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  text-align: center;
}
.top_section#brand .brand_links .bn_list li.shop a .bn_list_dl_text {
  color: #6994A8;
}
.top_section#brand .brand_links .bn_list li.shop a .bn_list_dl_bn {
  background-image: url(../img/bn_online.svg);
  background-size: contain;
}
.top_section#brand .brand_links .bn_list li.media a .bn_list_dl_text {
  color: #4C958F;
}
.top_section#brand .brand_links .bn_list li.media a .bn_list_dl_bn {
  background-image: url(../img/bn_media.svg);
  background-size: contain;
}

@media (max-width: 767.9px) {
  .top_section#brand .sec_in {
    position: relative;
    padding-block: 18.75rem 2.5rem;
  }
  .top_section#brand .sec_in_title {
    position: static;
  }
  .top_section#brand .sec_in_title span {
    position: relative;
    z-index: 5;
  }
  .top_section#brand .sec_in_title::before {
    width: 100%;
    height: 23.125rem;
    min-height: auto;
    position: absolute;
    top: 0;
    left: 0;
    background: url("../img/products_bg_sp.webp") center 0 no-repeat;
    background-size: 100% auto;
  }
  .top_section#brand .brand_head {
    margin-top: 1.875rem;
  }
  .top_section#brand .brand_head .inbox {
    max-width: 20.3125rem;
  }
  .top_section#brand .brand_head .head_box {
    width: 100%;
    padding-right: 0;
    margin-left: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .top_section#brand .brand_head .head_box .image {
    margin-top: 0;
    margin-bottom: 1.875rem;
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
  }
  .top_section#brand .brand_list {
    margin-top: 1.875rem;
    gap: 1.5625rem;
  }
  .top_section#brand .brand_list > li {
    width: 100%;
  }
  .top_section#brand .brand_list > li a {
    padding: 1.25rem 1.25rem 1.5625rem;
    border-radius: 0.3125rem;
  }
  .top_section#brand .brand_list > li a .image {
    margin-bottom: 0.9375rem;
  }
  .top_section#brand .brand_list > li a .logo {
    margin-bottom: 0.9375rem;
  }
  .top_section#brand .brand_list > li a .logo img {
    width: 100%;
  }
  .top_section#brand .brand_list > li a .text_wrap {
    position: relative;
  }
  .top_section#brand .brand_list > li a .text_wrap::before {
    width: 1.25rem;
    height: 1.25rem;
    top: 0.1875rem;
  }
  .top_section#brand .brand_list > li a .text_wrap p {
    font-size: 0.9375rem;
    line-height: 1.6;
    letter-spacing: 0.1em;
  }
  .top_section#brand .brand_list > li a .text_wrap .cat_list {
    margin-top: 1.25rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-right: -0.625rem;
  }
  .top_section#brand .brand_list > li a .text_wrap .cat_list li {
    font-size: 0.625rem;
    line-height: 1;
    margin-right: 0.3125rem;
    padding: 0.375rem 0.625rem 0.4375rem;
  }
  .top_section#brand .att_text {
    margin-top: 1.5625rem;
    font-size: 0.625rem;
    line-height: 1.5;
  }
  .top_section#brand .brand_links {
    margin-top: 1.25rem;
    padding-left: 0;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .top_section#brand .brand_links .logo {
    width: 10.5rem;
    margin-bottom: 1.0625rem;
  }
  .top_section#brand .brand_links .bn_list {
    gap: 0.9375rem;
  }
  .top_section#brand .brand_links .bn_list li {
    width: calc(50% - 0.46875rem);
  }
  .top_section#brand .brand_links .bn_list li a .bn_list_dl .bn_list_dl_bn {
    background-position: center center;
    height: 6.0625rem;
    padding-top: 0.3125rem;
    border-radius: 0.125rem;
  }
  .top_section#brand .brand_links .bn_list li a .bn_list_dl .bn_list_dl_bn .en {
    font-size: 0.75rem;
    margin-bottom: 0.5rem;
  }
  .top_section#brand .brand_links .bn_list li a .bn_list_dl .bn_list_dl_bn .ja {
    font-size: 0.625rem;
    line-height: 1.5;
  }
  .top_section#brand .brand_links .bn_list li a .bn_list_dl .bn_list_dl_text {
    margin-top: 0.5em;
    font-size: 0.6875rem;
    line-height: 1.6363636364;
  }
  .top_section#brand .brand_links .bn_list li.shop a .bn_list_dl_bn {
    background-image: url(../img/bn_online_sp.svg);
    background-size: contain;
  }
  .top_section#brand .brand_links .bn_list li.media a .bn_list_dl_bn {
    background-image: url(../img/bn_media_sp.svg);
    background-size: contain;
  }
}
.top_section#info {
  background: #7E9AA6 url("../img/info_bg.webp") center center no-repeat;
  background-size: cover;
}
.top_section#info .sec_in {
  padding-block: 5rem 8.125rem;
}
.top_section#info .sec_in_title {
  color: #ffffff;
}
.top_section#info .info_block {
  width: 100%;
  margin-top: 3.125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.top_section#info .info_block .info_block_box {
  width: 48.4375%;
  color: #446777;
  background: #ffffff;
  border-radius: 0.625rem;
  position: relative;
  overflow: hidden;
}
.top_section#info .info_block .info_block_box .info_block_title {
  margin-bottom: 1.5rem;
  padding-top: 2.625rem;
  padding-left: 3.125rem;
  font-size: 1.375rem;
  line-height: 1.7272727273;
  font-weight: 500;
  color: #446777;
}
.top_section#info .info_block .info_block_box .info_block_box_dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.top_section#info .info_block .info_block_box .info_block_box_dl > dt {
  width: 1.875rem;
  margin-right: 1.25rem;
  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;
}
.top_section#info .info_block .info_block_box .info_block_box_dl > dt span {
  color: #ffffff;
  font-size: 0.625rem;
  display: inline-block;
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
  white-space: nowrap;
  letter-spacing: 0.05em;
}
.top_section#info .info_block .info_block_box .info_block_box_dl > dd {
  -webkit-box-flex: 2;
      -ms-flex: 2;
          flex: 2;
}
@media (min-width: 768px) {
  .top_section#info .info_block .info_block_box .info_block_box_dl.access {
    padding-right: 1.25rem;
  }
}
.top_section#info .info_block .info_block_box .info_block_box_dl.access {
  margin-bottom: -0.5rem;
}
.top_section#info .info_block .info_block_box .info_block_box_dl.access dt {
  height: 8.5rem;
  background: url("../img/access_bg.svg") 0 center no-repeat;
  background-size: contain;
}
.top_section#info .info_block .info_block_box .info_block_box_dl.access dd ul {
  margin-top: 0.5rem;
  list-style: none;
}
.top_section#info .info_block .info_block_box .info_block_box_dl.access dd ul li {
  font-size: max(0.6875rem, 10px);
  line-height: 1.8181818182;
}
.top_section#info .info_block .info_block_box .info_block_box_dl.hours {
  margin-bottom: 0.5rem;
}
.top_section#info .info_block .info_block_box .info_block_box_dl.hours > dt {
  height: 9.5rem;
  background: url("../img/hours_bg.svg") 0 center no-repeat;
  background-size: contain;
}
.top_section#info .info_block .info_block_box .info_block_box_dl.hours > dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.top_section#info .info_block .info_block_box .info_block_box_dl.hours .schedule_dl .schedule_dl_in {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  line-height: 1.7142857143;
}
.top_section#info .info_block .info_block_box .info_block_box_dl.hours .schedule_dl .schedule_dl_in dt {
  width: 5.5em;
}
.top_section#info .info_block .info_block_box.gmap iframe {
  width: 100%;
  height: 100%;
  display: block;
}

@media (max-width: 767.9px) {
  .top_section#info {
    background-image: url("../img/info_bg_sp.webp");
  }
  .top_section#info .sec_in {
    padding-block: 2.625rem 3.5rem;
  }
  .top_section#info .sec_in_title .en {
    letter-spacing: 0;
  }
  .top_section#info .inbox {
    padding-inline: 1.875rem;
  }
  .top_section#info .info_block {
    width: 100%;
    margin-top: 2.0625rem;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .top_section#info .info_block .info_block_box {
    width: 100%;
    border-radius: 0.3125rem;
  }
  .top_section#info .info_block .info_block_box .info_block_title {
    margin-bottom: 1rem;
    padding-top: 1.625rem;
    padding-left: 3.125rem;
    font-size: 0.9375rem;
    line-height: 1.6;
  }
  .top_section#info .info_block .info_block_box .info_block_box_dl > dt {
    width: 1.25rem;
    margin-right: 1.375rem;
  }
  .top_section#info .info_block .info_block_box .info_block_box_dl > dt span {
    font-size: 0.4375rem;
    margin-left: -0.1875rem;
  }
  .top_section#info .info_block .info_block_box .info_block_box_dl > dd {
    -webkit-box-flex: 2;
        -ms-flex: 2;
            flex: 2;
  }
  .top_section#info .info_block .info_block_box .info_block_box_dl.access {
    margin-bottom: -0.5rem;
  }
  .top_section#info .info_block .info_block_box .info_block_box_dl.access dt {
    height: 5rem;
    margin-top: -0.875rem;
  }
  .top_section#info .info_block .info_block_box .info_block_box_dl.access dd {
    max-width: 15.4375rem;
    letter-spacing: 0.05em;
  }
  .top_section#info .info_block .info_block_box .info_block_box_dl.access dd p {
    font-size: 0.75rem;
    line-height: 1.5;
  }
  .top_section#info .info_block .info_block_box .info_block_box_dl.access dd ul {
    margin-top: 0.5rem;
    list-style: none;
  }
  .top_section#info .info_block .info_block_box .info_block_box_dl.access dd ul li {
    font-size: 0.75rem;
    line-height: 1.5;
  }
  .top_section#info .info_block .info_block_box .info_block_box_dl.hours {
    margin-bottom: 0.5rem;
  }
  .top_section#info .info_block .info_block_box .info_block_box_dl.hours > dt {
    height: 6.5625rem;
  }
  .top_section#info .info_block .info_block_box .info_block_box_dl.hours > dd {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .top_section#info .info_block .info_block_box .info_block_box_dl.hours .schedule_dl .schedule_dl_in {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    line-height: 1.7142857143;
  }
  .top_section#info .info_block .info_block_box .info_block_box_dl.hours .schedule_dl .schedule_dl_in dt {
    width: 5.5em;
  }
  .top_section#info .info_block .info_block_box.gmap {
    margin-top: 0.9375rem;
    height: 13.9375rem;
  }
  .top_section#info .info_block .info_block_box.gmap iframe {
    width: 100%;
    height: 100%;
    display: block;
  }
}
.top_section#faq .sec_in {
  padding-block: 5.625rem 0;
}
.top_section#faq .faq_dl .faq_dl_in {
  border-bottom: 1px solid #D5D5D5;
}
.top_section#faq .faq_dl .faq_dl_in:first-child .faq_dl_title {
  padding-top: 0.3125rem;
}
.top_section#faq .faq_dl .faq_dl_in .faq_dl_title {
  padding-block: 1.875rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  cursor: pointer;
}
.top_section#faq .faq_dl .faq_dl_in .faq_dl_title:hover {
  opacity: 0.7;
}
.top_section#faq .faq_dl .faq_dl_in .faq_dl_title_in {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.top_section#faq .faq_dl .faq_dl_in .faq_dl_title_in::before {
  width: 4.5rem;
  content: "Q";
  font-size: 1.25rem;
  line-height: 1.4;
  font-weight: 200;
}
.top_section#faq .faq_dl .faq_dl_in .faq_dl_title_in .tx {
  -webkit-box-flex: 2;
      -ms-flex: 2;
          flex: 2;
}
.top_section#faq .faq_dl .faq_dl_in .faq_dl_title.active .i_add::after {
  display: none;
}
.top_section#faq .faq_dl .faq_dl_in .faq_dl_title .i_add {
  width: 13px;
  height: 13px;
  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: relative;
}
.top_section#faq .faq_dl .faq_dl_in .faq_dl_title .i_add::before, .top_section#faq .faq_dl .faq_dl_in .faq_dl_title .i_add::after {
  content: "";
  width: 13px;
  height: 1px;
  background: #333333;
  display: block;
}
.top_section#faq .faq_dl .faq_dl_in .faq_dl_title .i_add::after {
  width: 1px;
  height: 13px;
  position: absolute;
  left: 50%;
  top: 0;
}
.top_section#faq .faq_dl .faq_dl_in .faq_dl_contents {
  padding-bottom: 1.875rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.top_section#faq .faq_dl .faq_dl_in .faq_dl_contents::before {
  width: 4.5rem;
  content: "A";
  font-size: 1.25rem;
  line-height: 1.4;
  font-weight: 200;
}
.top_section#faq .faq_dl .faq_dl_in .faq_dl_contents .faq_text {
  -webkit-box-flex: 2;
      -ms-flex: 2;
          flex: 2;
}
.top_section#faq .faq_dl .faq_dl_in .faq_dl_contents .faq_text ul {
  list-style: none;
}
.top_section#faq .faq_dl .faq_dl_in .faq_dl_contents .faq_text ul li {
  padding-left: 1em;
  position: relative;
}
.top_section#faq .faq_dl .faq_dl_in .faq_dl_contents .faq_text ul li::before {
  width: 1em;
  text-align: center;
  content: "・";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

@media (max-width: 767.9px) {
  .top_section#faq .sec_in {
    padding-block: 3.125rem 0;
  }
  .top_section#faq .faq_dl {
    margin-top: 2.5rem;
  }
  .top_section#faq .faq_dl .faq_dl_in {
    border-bottom: 1px solid #D5D5D5;
  }
  .top_section#faq .faq_dl .faq_dl_in:first-child .faq_dl_title {
    padding-top: 0;
  }
  .top_section#faq .faq_dl .faq_dl_in .faq_dl_title {
    padding-block: 1.25rem;
  }
  .top_section#faq .faq_dl .faq_dl_in .faq_dl_title_in {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .top_section#faq .faq_dl .faq_dl_in .faq_dl_title_in::before {
    width: 1.75rem;
    font-size: 0.875rem;
  }
  .top_section#faq .faq_dl .faq_dl_in .faq_dl_title_in .tx {
    padding-right: 1.0625rem;
    font-size: 0.8125rem;
    line-height: 1.6153846154;
    -webkit-box-flex: 2;
        -ms-flex: 2;
            flex: 2;
  }
  .top_section#faq .faq_dl .faq_dl_in .faq_dl_title .i_add {
    width: 10px;
    height: 10px;
    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: relative;
    margin-right: 0.625rem;
  }
  .top_section#faq .faq_dl .faq_dl_in .faq_dl_title .i_add::before, .top_section#faq .faq_dl .faq_dl_in .faq_dl_title .i_add::after {
    content: "";
    width: 10px;
    height: 1px;
    background: #333333;
    display: block;
  }
  .top_section#faq .faq_dl .faq_dl_in .faq_dl_title .i_add::after {
    width: 1px;
    height: 10px;
    position: absolute;
    left: 50%;
    top: 0;
  }
  .top_section#faq .faq_dl .faq_dl_in .faq_dl_contents {
    padding-bottom: 1.25rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .top_section#faq .faq_dl .faq_dl_in .faq_dl_contents::before {
    width: 1.75rem;
    font-size: 0.875rem;
    margin-top: 0.225em;
  }
  .top_section#faq .faq_dl .faq_dl_in .faq_dl_contents .faq_text {
    font-size: 0.8125rem;
    line-height: 1.6153846154;
    padding-right: 2.25rem;
  }
  .top_section#faq .faq_dl .faq_dl_in .faq_dl_contents .faq_text ul {
    list-style: none;
  }
  .top_section#faq .faq_dl .faq_dl_in .faq_dl_contents .faq_text ul li {
    padding-left: 1em;
    position: relative;
  }
  .top_section#faq .faq_dl .faq_dl_in .faq_dl_contents .faq_text ul li::before {
    width: 1em;
    text-align: center;
    content: "・";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
  }
}
.top_section#links {
  background: #F7F8F8;
}
.top_section#links .sec_in {
  padding-block: 5.625rem 6.25rem;
}
.top_section#links .links_list {
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1.25rem;
}
.top_section#links .links_list li {
  width: calc(25% - 0.9375rem);
}
.top_section#links .links_list li a {
  border-radius: 0.625rem;
  -webkit-box-shadow: -0.25rem -0.25rem 0.5rem #ffffff, 0.25rem 0.25rem 0.5rem rgba(202, 210, 222, 0.3);
          box-shadow: -0.25rem -0.25rem 0.5rem #ffffff, 0.25rem 0.25rem 0.5rem rgba(202, 210, 222, 0.3);
  display: block;
}
.top_section#links .links_list li a picture img {
  display: block;
}

@media (max-width: 767.9px) {
  .top_section#links .sec_in {
    padding-block: 3.125rem 5.25rem;
  }
  .top_section#links .links_list {
    margin-top: 1.875rem;
    gap: 0.9375rem;
  }
  .top_section#links .links_list li {
    width: calc(50% - 0.46875rem);
  }
  .top_section#links .links_list li a {
    border-radius: 0.3125rem;
    -webkit-box-shadow: -0.125rem -0.125rem 0.25rem #ffffff, 0.125rem 0.125rem 0.25rem rgba(202, 210, 222, 0.3);
            box-shadow: -0.125rem -0.125rem 0.25rem #ffffff, 0.125rem 0.125rem 0.25rem rgba(202, 210, 222, 0.3);
  }
}
.inbox, .sec_in_flex {
  max-width: 63.75rem;
  margin-left: auto;
  margin-right: auto;
  padding-inline: 1.875rem;
}

.sec_in_title, .page_title {
  text-align: center;
}
.sec_in_title span, .page_title span {
  display: block;
}
.sec_in_title .en, .page_title .en {
  font-size: 3.125rem;
  line-height: 1.28;
  font-weight: 100;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.sec_in_title .en span, .page_title .en span {
  font-size: 0.75em;
  margin-inline: 0.25em;
  display: inline-block;
  position: relative;
  top: 0.25em;
}
.sec_in_title .ja, .page_title .ja {
  margin-top: 0.75rem;
  font-size: 1.125rem;
  font-weight: 300;
  line-height: 1;
}

@media (max-width: 767.9px) {
  .sec_in_title .en, .page_title .en {
    font-size: 2rem;
    line-height: 1.28125;
  }
  .sec_in_title .ja, .page_title .ja {
    margin-top: 0.625rem;
    font-size: 0.625rem;
  }
}
.sec_in_flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.sec_in_flex .sec_in_title {
  width: 14.6875rem;
  text-align: left;
}
.sec_in_flex .sec_in_title .en {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.sec_in_flex_content {
  -webkit-box-flex: 2;
      -ms-flex: 2;
          flex: 2;
}

@media (max-width: 767.9px) {
  .sec_in_flex {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .sec_in_flex .sec_in_title {
    width: 100%;
    text-align: center;
  }
  .sec_in_flex .sec_in_title .en {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .sec_in_flex_content {
    -webkit-box-flex: 1;
        -ms-flex: auto;
            flex: auto;
  }
}
section:not(#fv) .head_box .reed_en {
  font-weight: 200;
  font-size: 0.75rem;
}
section:not(#fv) .head_box .title {
  margin-top: 1.875rem;
  font-size: 1.625rem;
  line-height: 1.7692307692;
  font-weight: 500;
}
section:not(#fv) .head_box .text {
  margin-top: 1.875rem;
  letter-spacing: 0.05em;
}
section:not(#fv) .head_box .image {
  width: 100%;
  margin-top: 4.0625rem;
}

@media (max-width: 767.9px) {
  section:not(#fv) .head_box .reed_en {
    font-size: 0.625rem;
  }
  section:not(#fv) .head_box .title {
    margin-top: 1.5625rem;
    font-size: 1.25rem;
    line-height: 1.7;
  }
  section:not(#fv) .head_box .text {
    font-size: 0.8125rem;
    margin-top: 1.5625rem;
  }
  section:not(#fv) .head_box .image {
    margin-top: 2.5rem;
  }
}
.att_i {
  position: relative;
  bottom: 0.15em;
  margin-left: -0.2em;
  scale: 0.7;
  display: inline-block;
}

.post_contents {
  padding-top: 11.875rem;
  padding-bottom: 10.625rem;
}

.page_title {
  margin-bottom: 3.75rem;
}
.page_title .en {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.page_title {
  text-align: left;
}

.post_head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.post_head_date {
  line-height: 1;
  font-size: 1.25rem;
  color: #A7914E;
}

.post_head_title {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  font-weight: 500;
  line-height: 1.4;
  font-size: 1.625rem;
  margin-top: 2.5rem;
  margin-bottom: 3.75rem;
}

.post_thumbnail {
  text-align: center;
  margin-bottom: 3.75rem;
}

.post_detail h1, .post_detail h2, .post_detail h3, .post_detail h4, .post_detail h5, .post_detail h6 {
  font-weight: 500;
  margin-bottom: 2.2222222222em;
}
@media (max-width: 767.9px) {
  .post_detail h1, .post_detail h2, .post_detail h3, .post_detail h4, .post_detail h5, .post_detail h6 {
    line-height: 1.6;
  }
}
.post_detail h2 {
  font-size: 1.125rem;
}
.post_detail h2:not(:first-child) {
  margin-top: 3.75rem;
}
@media (max-width: 767.9px) {
  .post_detail p {
    line-height: 1.6;
  }
}
.post_detail p + p {
  margin-top: 2.1428571429em;
}

.post_nav {
  margin: 3.75rem 0 2.8125rem;
}
.post_nav_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.post_nav .post_nav_btn {
  height: 2.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  font-size: 0.75rem;
  color: #A7914E;
}
.post_nav .post_nav_btn a::before {
  content: "";
  width: 2.5rem;
  height: 2.5rem;
  background: url("../img/i_nav_arw.svg") center center no-repeat;
  background-size: contain;
  display: block;
  position: absolute;
  top: 0;
}
.post_nav .post_nav_btn.prev {
  margin-left: auto;
}
.post_nav .post_nav_btn.prev a {
  padding-right: 3.375rem;
}
.post_nav .post_nav_btn.prev a::before {
  right: 0;
}
.post_nav .post_nav_btn.next a {
  padding-left: 3.375rem;
}
.post_nav .post_nav_btn.next a::before {
  left: 0;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}

.back_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.back_link a {
  padding: 0 0.5rem 0.375rem 1.375rem;
  font-size: 0.9375rem;
  color: #8E7833;
  border-bottom: 1px solid #8E7833;
  position: relative;
}
.back_link a::before {
  width: 3px;
  height: 6px;
  content: "";
  background: url("../img/i_arw_g.svg") no-repeat;
  background-size: contain;
  display: block;
  position: absolute;
  left: 3px;
  top: 50%;
  margin-top: -5px;
}

@media (max-width: 767.9px) {
  .post_contents {
    padding-top: 5.625rem;
    padding-bottom: 6.25rem;
  }
  .page_title {
    margin-bottom: 3rem;
  }
  .page_title .en {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .page_title {
    text-align: center;
  }
  .post_head_date {
    font-size: 0.75rem;
  }
  .post_head_title {
    font-size: 1.125rem;
    margin-top: 1.125rem;
    margin-bottom: 1.875rem;
  }
  .post_thumbnail {
    margin-bottom: 1.875rem;
  }
  .post_detail h2 {
    font-size: 1rem;
    margin-bottom: 1.25rem;
  }
  .post_detail h2:not(:first-child) {
    margin-top: 1.875rem;
  }
  .post_detail p + p {
    margin-top: 1.7142857143em;
  }
  .post_nav {
    margin: 2.5rem 0 1.875rem;
  }
  .post_nav .post_nav_btn {
    height: 1.875rem;
  }
  .post_nav .post_nav_btn a::before {
    width: 1.875rem;
    height: 1.875rem;
  }
  .post_nav .post_nav_btn.prev a {
    padding-right: 2.5rem;
  }
  .post_nav .post_nav_btn.next a {
    padding-left: 2.5rem;
  }
  .back_link a {
    padding: 0 0.5rem 0.25rem 1.375rem;
    font-size: 0.8125rem;
  }
}
.archives_list_box + .archives_list_box {
  margin-top: 3.75rem;
}
.archives_list_box a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.archives_list_box_in {
  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-flex: 2;
      -ms-flex: 2;
          flex: 2;
}
.archives_list_info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
          order: -1;
  line-height: 1;
}
.archives_list_info time {
  font-size: 1.25rem;
  margin-right: 1em;
  color: #A7914E;
}
.archives_list_info .new_icon {
  color: #A7914E;
  background: #F4F0E6;
  padding: 0.375rem 1.375rem;
  border-radius: 2.5rem;
  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;
}
.archives_list_title {
  margin-top: 1.875rem;
  font-size: 1.125rem;
  line-height: 1.5555555556;
  font-weight: 500;
}
.archives_list .text {
  margin-top: 1.875rem;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.archives_list .more_link {
  width: 2.5rem;
  margin-left: 6.25rem;
}
.archives_list .more_link .tx {
  font-size: 0.75rem;
  color: #A7914E;
  display: block;
  line-height: 1;
  margin-bottom: 0.375rem;
}

@media (max-width: 767.9px) {
  .archives_list_box + .archives_list_box {
    margin-top: 2.5rem;
  }
  .archives_list_info time {
    font-size: 0.8125rem;
  }
  .archives_list_info .new_icon {
    padding: 0.1875rem 0.9375rem;
  }
  .archives_list_title {
    margin-top: 1.25rem;
    font-size: 1rem;
    margin-right: -3.75rem;
  }
  .archives_list .text {
    margin-top: 1.25rem;
  }
  .archives_list .more_link {
    width: 2.5rem;
    text-align: center;
    margin-left: 1.25rem;
  }
  .archives_list .more_link .tx {
    font-size: 0.75rem;
    color: #A7914E;
    display: block;
    line-height: 1;
    margin-bottom: 0.375rem;
  }
  .archives_list .more_link img {
    width: 1.875rem;
  }
}
.pagenation_nav {
  margin-top: 5.625rem;
  margin-bottom: -3.125rem;
}
.pagenation_nav_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.pagenation_nav_list li {
  margin: 0 0.4375rem;
}
.pagenation_nav_list a, .pagenation_nav_list span {
  width: 1.875rem;
  height: 1.875rem;
  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: #A7914E;
  border-radius: 1.875rem;
}
.pagenation_nav_list .pagenation_nav_prev,
.pagenation_nav_list .pagenation_nav_next {
  text-indent: 110%;
  white-space: nowrap;
  overflow: hidden;
}
.pagenation_nav_list .pagenation_nav_prev a,
.pagenation_nav_list .pagenation_nav_next a {
  background: url("../img/i_arw_g.svg") center 0.625rem no-repeat;
  background-size: 0.25rem auto;
}
.pagenation_nav_list .pagenation_nav_prev a {
  background-position: center 0.75rem;
}
.pagenation_nav_list .pagenation_nav_next {
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}
.pagenation_nav_list span {
  background: #ffffff;
}

@media (max-width: 767.9px) {
  .pagenation_nav {
    margin-top: 3rem;
    margin-bottom: 0;
  }
  .pagenation_nav_list li {
    margin: 0 0.3125rem;
  }
}