@charset "UTF-8";
/*Theme Name : common_template*/
@import url("https://fonts.googleapis.com/css2?family=Aboreto&family=Figtree:ital,wght@0,300..900;1,300..900&family=Shippori+Mincho:wght@400;500;600;700;800&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap");
*:where(:not(html, iframe, canvas, img, svg, video, audio):not(svg*, symbol*)) {
  all: unset;
  display: revert;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

a,
button {
  cursor: revert;
}

ol,
ul,
menu {
  list-style: none;
  padding: 0;
}

img {
  max-inline-size: 100%;
  max-block-size: 100%;
}

table {
  border-collapse: collapse;
}

input,
textarea {
  -webkit-user-select: auto;
}

textarea {
  white-space: revert;
}

meter {
  -webkit-appearance: revert;
  -moz-appearance: revert;
       appearance: revert;
}

:where(pre) {
  all: revert;
}

::-moz-placeholder {
  color: unset;
}

::placeholder {
  color: unset;
}

::marker {
  content: initial;
}

:where([hidden]) {
  display: none;
}

:where([contenteditable]:not([contenteditable=false])) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
  -webkit-user-select: auto;
}

:where([draggable=true]) {
  -webkit-user-drag: element;
}

:where(dialog:modal) {
  all: revert;
}

h1,
h2,
h3,
h4,
h5,
dl,
dd,
dt,
ul,
li,
a,
figure,
p,
body {
  font-family: "Zen Kaku Gothic New", sans-serif;
  margin: 0;
}

body {
  background: #edf2f5;
}

a {
  text-decoration: none;
  color: unset;
}

.fa-solid {
  font-family: "Font Awesome 5 Free" !important;
  font-style: initial !important;
}

html {
  scroll-behavior: smooth;
}

.grecaptcha-badge {
  bottom: 74px !important;
}

#header {
  background: transparent;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10;
  transition: 0.4s;
}
#header.fixed {
  background: #3d4c62;
  transition: 0.4s;
}
#header .header_pc {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 90px;
}
@media (max-width: 1199px) {
  #header .header_pc {
    height: 60px;
  }
}
#header .header_pc .header_logo {
  width: 135px;
  margin-left: clamp(20px, 2.196193265vw, 30px);
}
#header .header_pc .header_logo a {
  display: flex;
}
#header .header_pc .header_item {
  display: flex;
  width: 100%;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -moz-column-gap: clamp(25px, 2.3426061493vw, 32px);
       column-gap: clamp(25px, 2.3426061493vw, 32px);
  align-items: center;
}
@media (max-width: 1199px) {
  #header .header_pc .header_item {
    display: none;
  }
}
#header .header_pc .header_item .header_nav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  width: 100%;
  -moz-column-gap: clamp(15px, 2.3426061493vw, 32px);
       column-gap: clamp(15px, 2.3426061493vw, 32px);
}
#header .header_pc .header_item .header_nav .main_ul {
  display: flex;
  align-items: center;
  padding: 0;
  margin: 0 0 0 6%;
  list-style: none;
}
#header .header_pc .header_item .header_nav .main_ul li {
  margin-right: clamp(15px, 1.4641288433vw, 20px);
}
#header .header_pc .header_item .header_nav .main_ul li a {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-size: 14px;
  color: #fff;
}
@media (max-width: 1366px) {
  #header .header_pc .header_item .header_nav .main_ul li a {
    font-size: clamp(12px, 1.0248901903vw, 14px);
  }
}
@media (max-width: 1290px) {
  #header .header_pc .header_item .header_nav .main_ul li a {
    font-size: 12px;
  }
}
#header .header_pc .header_item .header_nav .main_ul li a .btn_wrap {
  border-radius: 5px;
  display: inline-block;
  color: #fff;
  border: 1px solid #fff;
  text-decoration: none;
  position: relative;
  width: 122px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  -moz-column-gap: 6px;
       column-gap: 6px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: bold;
  font-size: 14px;
  letter-spacing: 0.02em;
  z-index: 1;
}
#header .header_pc .header_item .header_nav .main_ul li a .btn_wrap .btn_wrap {
  position: relative;
  z-index: 3;
}
#header .header_pc .header_item .header_nav .main_ul li a .btn_wrap:hover {
  color: #2e385a;
  background: #fff;
  border: 1px solid #fff;
  position: relative;
  z-index: 3;
}
#header .header_pc .header_item .header_nav .main_ul li:last-of-type {
  margin-right: 0;
}
#header .header_pc .header_item .header_nav .main_ul .parent {
  position: relative;
  float: left;
}
#header .header_pc .header_item .header_nav .main_ul .parent:hover ul {
  transition: 0.4s all;
  display: block !important;
  position: absolute !important;
  opacity: 1;
  top: 104%;
}
#header .header_pc .header_item .header_nav .main_ul .parent .child {
  opacity: 0;
  display: none;
  margin: 0;
  width: 100%;
  transition: 0.4s;
}
#header .header_pc .header_item .header_nav .main_ul .parent .child li {
  width: 100%;
}
#header .header_pc .header_item .header_nav .main_ul .parent .child li a {
  background: #3d4c62;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 207px;
  height: 70px;
  transition: 0.4s all;
  padding: 0 20px;
  font-weight: 500;
  margin: 0;
  line-height: normal;
  text-align: start;
}
#header .header_pc .header_item .header_nav .main_ul .parent .child li a:hover {
  background: #fff;
  color: #3d4c62;
}
#header .header_pc .header_item .header_nav .main_ul .parent .child li a::after {
  display: none;
}
#header .header_pc .header_item .button_container .cta_txt {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 4px;
  padding-bottom: 8px;
}
#header .header_pc .header_item .button_container .cta_txt::before {
  content: "";
  width: 18px;
  height: 2px;
  transform: rotate(60deg);
  box-sizing: border-box;
  background-color: #fff;
}
#header .header_pc .header_item .button_container .cta_txt::after {
  content: "";
  width: 18px;
  height: 2px;
  transform: rotate(-60deg);
  box-sizing: border-box;
  background-color: #fff;
}
#header .header_pc .header_item .button_container .cta_txt p {
  color: #fff;
  font-size: 14px;
  font-weight: 500;
}
#header .header_pc .header_item .button_flex {
  display: flex;
  align-items: center;
  -moz-column-gap: 10px;
       column-gap: 10px;
  padding-right: 20px;
  position: relative;
}
#header .header_pc .header_item .button_flex .button1 .btn_wrap {
  border-radius: 5px;
  display: inline-block;
  color: #2e385a;
  text-decoration: none;
  position: relative;
  width: 122px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  -moz-column-gap: 6px;
       column-gap: 6px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: bold;
  font-size: 14px;
  letter-spacing: 0.02em;
  background-image: linear-gradient(90deg, rgb(255, 230, 230) 0%, rgb(211, 246, 255) 100%);
  -webkit-backface-visibility: hidden;
  z-index: 1;
}
#header .header_pc .header_item .button_flex .button1 .btn_wrap img {
  width: 16px;
  height: 16px;
}
#header .header_pc .header_item .button_flex .button1 .btn_wrap::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 0.3em;
  background-image: linear-gradient(90deg, rgb(190, 216, 255) 0%, rgb(229, 246, 255) 100%);
  transition: opacity 0.5s ease-out;
  z-index: 2;
  opacity: 0;
}
#header .header_pc .header_item .button_flex .button1 .btn_wrap .btn_wrap {
  position: relative;
  z-index: 3;
}
#header .header_pc .header_item .button_flex .button1 .btn_wrap:hover span {
  position: relative;
  z-index: 3;
}
#header .header_pc .header_item .button_flex .button1 .btn_wrap:hover img {
  position: relative;
  z-index: 3;
}
#header .header_pc .header_item .button_flex .button1 .btn_wrap:hover::after {
  opacity: 1;
}
#header .header_pc .header_item .button_flex .button2 .btn_wrap {
  display: inline-block;
  color: #2e385a;
  text-decoration: none;
  position: relative;
  width: 122px;
  height: 36px;
  display: flex;
  border-radius: 5px;
  align-items: center;
  justify-content: center;
  -moz-column-gap: 6px;
       column-gap: 6px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: bold;
  font-size: 14px;
  letter-spacing: 0.02em;
  background-image: linear-gradient(90deg, rgb(218, 214, 255) 0%, rgb(255, 232, 254) 100%);
  -webkit-backface-visibility: hidden;
  z-index: 1;
}
#header .header_pc .header_item .button_flex .button2 .btn_wrap img {
  width: 16px;
  height: 16px;
}
#header .header_pc .header_item .button_flex .button2 .btn_wrap::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 0.3em;
  background-image: linear-gradient(90deg, rgb(190, 216, 255) 0%, rgb(229, 246, 255) 100%);
  transition: opacity 0.5s ease-out;
  z-index: 2;
  opacity: 0;
}
#header .header_pc .header_item .button_flex .button2 .btn_wrap .btn_wrap {
  position: relative;
  z-index: 3;
}
#header .header_pc .header_item .button_flex .button2 .btn_wrap:hover span {
  position: relative;
  z-index: 3;
}
#header .header_pc .header_item .button_flex .button2 .btn_wrap:hover img {
  position: relative;
  z-index: 3;
}
#header .header_pc .header_item .button_flex .button2 .btn_wrap:hover::after {
  opacity: 1;
}
#header .header_pc .header_item .button_flex body {
  text-align: center;
  background: #ddd;
}

@media (max-width: 769) {
  .pc_only {
    display: none;
  }
}

.sp_only {
  display: none;
}
@media (max-width: 769) {
  .sp_only {
    display: block;
  }
}

@media (max-width: 425px) {
  .pc_only_425 {
    display: none;
  }
}

.sp_only_425 {
  display: none;
}
@media (max-width: 425px) {
  .sp_only_425 {
    display: block;
  }
}

#burger {
  height: 90px;
  background: #fff;
  display: none;
  margin-bottom: 0;
}
@media (max-width: 1199px) {
  #burger {
    display: contents;
  }
}
#burger .nav-container {
  max-width: 100%;
  width: 100%;
  margin: 0 auto;
}
#burger .nav-container nav {
  width: 100%;
}
#burger .nav-container nav .nav-mobile {
  display: none;
  position: absolute;
  top: 0;
  right: 0;
  background: transparent;
  height: 60px;
  width: 60px;
}
@media (max-width: 1199px) {
  #burger .nav-container nav .nav-mobile {
    display: block;
  }
}
#burger .nav-container nav .nav-mobile #nav-toggle {
  position: absolute;
  left: 10px;
  top: 20px;
  cursor: pointer;
  padding: 10px 35px 16px 0px;
}
#burger .nav-container nav .nav-mobile #nav-toggle span,
#burger .nav-container nav .nav-mobile #nav-toggle span:before,
#burger .nav-container nav .nav-mobile #nav-toggle span:after {
  cursor: pointer;
  border-radius: 1px;
  height: 3px;
  width: 32px;
  background: #fff;
  position: absolute;
  display: block;
  content: "";
  transition: all 300ms ease-in-out;
}
#burger .nav-container nav .nav-mobile #nav-toggle span:before {
  top: -10px;
}
#burger .nav-container nav .nav-mobile #nav-toggle span:after {
  bottom: -10px;
}
#burger .nav-container nav .nav-mobile #nav-toggle.active span {
  background-color: transparent;
}
#burger .nav-container nav .nav-mobile #nav-toggle.active span:before, #burger .nav-container nav .nav-mobile #nav-toggle.active span:after {
  top: 0;
}
#burger .nav-container nav .nav-mobile #nav-toggle.active span:before {
  transform: rotate(45deg);
}
#burger .nav-container nav .nav-mobile #nav-toggle.active span:after {
  transform: rotate(-45deg);
}
@media (max-width: 1199px) {
  #burger .nav-container nav ul {
    display: none;
  }
  #burger .nav-container nav ul.nav-list {
    position: absolute;
    width: 100%;
    height: auto;
    top: 90px;
    max-height: calc(100vh - 90px);
    overflow: auto;
  }
}
@media (max-width: 1199px) and (max-width: 1199px) {
  #burger .nav-container nav ul.nav-list {
    top: 60px;
    max-height: calc(100vh - 60px);
    left: 0;
  }
}
@media (max-width: 1199px) and (max-width: 425px) {
  #burger .nav-container nav ul.nav-list {
    background: #3d4c62;
    padding-bottom: 80px;
  }
}
@media (max-width: 1199px) {
  #burger .nav-container nav ul li {
    position: relative;
    float: none;
  }
  #burger .nav-container nav ul li a,
  #burger .nav-container nav ul li a:visited {
    display: block;
    padding: 20px;
    background: #3d4c62;
    color: #fff;
    font-family: "Zen Kaku Gothic New", sans-serif;
    text-decoration: none;
    font-weight: 500;
  }
  #burger .nav-container nav ul li a:hover,
  #burger .nav-container nav ul li a:visited:hover {
    background: #3d4c62;
    color: #fff;
  }
  #burger .nav-container nav ul li a:not(:only-child):after,
  #burger .nav-container nav ul li a:visited:not(:only-child):after {
    padding-left: 4px;
    content: " ▾";
  }
  #burger .nav-container nav ul li ul.nav-dropdown {
    position: static;
    z-index: 1;
  }
  #burger .nav-container nav ul li ul.nav-dropdown li {
    min-width: 190px;
  }
  #burger .nav-container nav ul li ul.nav-dropdown li a {
    padding: 15px 15px 15px 30px;
    font-size: 0.8em;
    background: #7c889e;
    color: #fff;
  }
}

.pagetop_block {
  position: fixed;
  bottom: 0;
  right: 0;
  left: 0;
  z-index: 9;
}
.pagetop_block #pagetop {
  width: 60px;
  height: 60px;
  margin-left: auto;
}
.pagetop_block #pagetop a {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 100%;
  height: 100%;
  text-decoration: none;
  background: #3d4c62;
  color: #fff;
}
.pagetop_block #pagetop a::before {
  font-family: "Font Awesome 5 Free";
  content: "\f0d8";
  font-size: 16px;
  line-height: 1;
  font-weight: bold;
}
.pagetop_block .contact_sp {
  display: none !important;
  justify-content: center;
  align-items: center;
  width: 100%;
}
@media (max-width: 769px) {
  .pagetop_block .contact_sp {
    display: flex !important;
  }
}
.pagetop_block .contact_sp a {
  padding: 10px 30px;
  height: 60px;
  width: 100%;
  text-decoration: none;
  display: flex;
  align-items: center;
  font-weight: bold;
  justify-content: center;
  text-align: center;
  font-size: 14px;
}
@media (max-width: 425px) {
  .pagetop_block .contact_sp a {
    padding: 10px;
  }
}
.pagetop_block .contact_sp a.footer_bg1 {
  background: #fff;
  color: #2e385a;
}
.pagetop_block .contact_sp a.footer_bg1::before {
  font-family: "Font Awesome 5 Free";
  content: "";
  background: url(/wp-content/uploads/tel_icon.svg) no-repeat;
  background-size: contain;
  height: 18px;
  width: 18px;
  margin-right: 10px;
  font-weight: bold;
}
.pagetop_block .contact_sp a.footer_bg2 {
  background: #7c889e;
  color: #fff;
}
.pagetop_block .contact_sp a.footer_bg2::before {
  font-family: "Font Awesome 5 Free";
  content: "";
  background: url(/wp-content/uploads/line_icon.svg) no-repeat;
  background-size: contain;
  height: 18px;
  width: 18px;
  margin-right: 10px;
  font-weight: bold;
}
.pagetop_block .contact_sp a.footer_bg3 {
  background: #fff;
  color: #2e385a;
}
.pagetop_block .contact_sp a.footer_bg3::before {
  font-family: "Font Awesome 5 Free";
  content: "";
  background: url(/wp-content/uploads/reserve_icon.svg) no-repeat;
  background-size: contain;
  height: 18px;
  width: 18px;
  margin-right: 10px;
  font-weight: bold;
}

#s_news {
  margin-left: 7.8125vw;
  background: url(/wp-content/uploads/bg01.jpg) no-repeat;
  background-size: cover;
  overflow: hidden;
  padding: clamp(70px, 7.3206442167vw, 100px) 0;
  border-top-left-radius: clamp(40px, 5.8565153734vw, 80px);
  border-bottom-left-radius: clamp(40px, 5.8565153734vw, 80px);
  margin-bottom: clamp(90px, 10.980966325vw, 150px);
}
@media (max-width: 1366px) {
  #s_news {
    margin-left: 6%;
  }
}
#s_news .inner {
  max-width: calc(1145px + 12%);
  width: 100%;
  margin: 0 auto;
  padding: 0 6%;
}
#s_news .inner .flex_box {
  display: flex;
  -moz-column-gap: clamp(30px, 3.6603221083vw, 50px);
       column-gap: clamp(30px, 3.6603221083vw, 50px);
  justify-content: space-between;
}
@media (max-width: 769px) {
  #s_news .inner .flex_box {
    flex-direction: column;
    row-gap: 30px;
  }
}
#s_news .inner .flex_box .title_area {
  max-width: 250px;
  width: 100%;
}
#s_news .inner .flex_box .title_area .title_jp {
  color: #fff;
}
#s_news .inner .flex_box .title_area .title_en {
  color: #fff;
  text-align: start;
  margin-bottom: clamp(20px, 2.4890190337vw, 34px);
}
#s_news .inner .flex_box .news_area {
  max-width: 695px;
  width: 100%;
}
@media (max-width: 769px) {
  #s_news .inner .flex_box .news_area {
    max-width: 100%;
  }
}
#s_news .inner .flex_box .news_area .news_wrap {
  position: relative;
  z-index: 1;
  margin-bottom: clamp(30px, 2.9282576867vw, 40px);
}
#s_news .inner .flex_box .news_area .news_wrap a {
  display: flex;
  -moz-column-gap: clamp(20px, 2.9282576867vw, 40px);
       column-gap: clamp(20px, 2.9282576867vw, 40px);
  align-items: flex-start;
  -moz-column-gap: clamp(35px, 3.6603221083vw, 50px);
       column-gap: clamp(35px, 3.6603221083vw, 50px);
  padding: clamp(15px, 1.4641288433vw, 20px) 0 clamp(15px, 1.4641288433vw, 20px) clamp(5px, 1.4641288433vw, 20px);
  align-items: center;
}
#s_news .inner .flex_box .news_area .news_wrap a:hover .news_title {
  color: #3d4c62;
}
#s_news .inner .flex_box .news_area .news_wrap a:hover .date {
  color: #3d4c62;
}
@media (max-width: 769px) {
  #s_news .inner .flex_box .news_area .news_wrap a {
    flex-direction: column;
    padding: 15px 0;
    align-items: flex-start;
    row-gap: 10px;
  }
}
#s_news .inner .flex_box .news_area .news_wrap .date {
  color: #fff;
  font-size: 14px;
  letter-spacing: 0.05em;
  transition: 0.4s all;
  line-height: 1.6;
  font-weight: 500;
  font-family: "Figtree", sans-serif;
}
#s_news .inner .flex_box .news_area .news_wrap .news_title {
  font-size: 16px;
  transition: 0.4s all;
  font-weight: 400;
  font-family: "Zen Kaku Gothic New", sans-serif;
  color: #fff;
  line-height: 1.6;
}
#s_news .inner .button a {
  display: flex;
  align-items: center;
  -moz-column-gap: 15px;
       column-gap: 15px;
  justify-content: flex-end;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: bold;
  font-size: 16px;
  color: #7c889e;
  line-height: normal;
}

#footer {
  margin-bottom: 0 !important;
  padding-top: clamp(70px, 10.980966325vw, 150px);
  background: #3d4c62;
}
@media (max-width: 1050px) {
  #footer {
    padding-top: 70px;
  }
}
#footer .inner {
  max-width: calc(1580px + 12%);
  width: 100%;
  margin: 0 auto;
  padding: 0 6%;
}
#footer .inner .wrap .footer_flex {
  position: relative;
  display: flex;
  justify-content: space-between;
  -moz-column-gap: clamp(45px, 5.7291666667vw, 110px);
       column-gap: clamp(45px, 5.7291666667vw, 110px);
  border-bottom: 1px solid #6b7789;
  padding-bottom: clamp(40px, 4.6852122987vw, 64px);
}
@media (max-width: 1050px) {
  #footer .inner .wrap .footer_flex {
    flex-direction: column;
    row-gap: 30px;
  }
}
#footer .inner .wrap .footer_flex .footer_logo_area {
  max-width: 390px;
  width: 100%;
}
#footer .inner .wrap .footer_flex .footer_logo_area .footer_logo {
  margin-bottom: clamp(30px, 3.074670571vw, 42px);
  max-width: 268px;
  width: 100%;
}
#footer .inner .wrap .footer_flex .footer_logo_area .footer_logo img {
  width: 100%;
}
#footer .inner .wrap .footer_flex .footer_logo_area .footer_content {
  text-align: start;
  color: #fff;
  line-height: 2;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-size: 14px;
}
#footer .inner .wrap .footer_flex .footer_logo_area .footer_content .content_space {
  display: none;
}
@media (max-width: 500px) {
  #footer .inner .wrap .footer_flex .footer_logo_area .footer_content .content_space {
    display: block;
  }
}
#footer .inner .wrap .footer_item_wrap {
  max-width: 610px;
  width: 100%;
}
@media (max-width: 1050px) {
  #footer .inner .wrap .footer_item_wrap {
    display: block;
    text-align: start;
  }
}
#footer .inner .wrap .footer_item_wrap .nav_content {
  margin-bottom: clamp(40px, 5.8565153734vw, 80px);
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  justify-content: space-between;
  width: 100%;
}
@media (max-width: 600px) {
  #footer .inner .wrap .footer_item_wrap .nav_content {
    grid-template-columns: repeat(2, 1fr);
  }
}
#footer .inner .wrap .footer_item_wrap .nav_content .footer_nav_list {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 20px;
       column-gap: 20px;
  max-width: 460px;
  width: 100%;
  flex-direction: column;
}
@media (max-width: 1050px) {
  #footer .inner .wrap .footer_item_wrap .nav_content .footer_nav_list {
    justify-content: flex-start;
  }
}
@media (max-width: 500px) {
  #footer .inner .wrap .footer_item_wrap .nav_content .footer_nav_list {
    flex-direction: column;
  }
}
#footer .inner .wrap .footer_item_wrap .nav_content .footer_nav_list li.footer_parent {
  font-family: "Aboreto", system-ui;
  text-transform: uppercase;
  font-weight: 400;
  font-size: clamp(16px, 1.317715959vw, 18px);
  line-height: 2;
  color: #7c889e;
  margin-bottom: 0;
}
#footer .inner .wrap .footer_item_wrap .nav_content .footer_nav_list li.footer_child a {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 2.571;
  transition: 0.4s all;
  color: #fff;
}
@media (max-width: 1050px) {
  #footer .inner .wrap .footer_item_wrap .nav_content .footer_nav_list li.footer_child a {
    font-size: 13px;
  }
}
#footer .inner .wrap .footer_item_wrap .nav_content .footer_nav_list li.footer_child a:hover {
  color: #bbced9;
}
#footer .inner .wrap .footer_item_wrap .main_button {
  margin-bottom: 20px;
}
#footer .inner .wrap .footer_item_wrap .main_button a {
  max-width: 100%;
  width: 100%;
  height: 86px;
  font-family: "Shippori Mincho", serif;
  font-size: 20px;
  color: #fff;
  border: 1px solid #9aa3b1;
}
#footer .copy {
  padding: 40px 0;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-family: "Zen Kaku Gothic New", sans-serif;
  max-width: calc(1580px + 12%);
  width: 100%;
  padding: 40px 6%;
  margin: 0 auto;
  position: relative;
  z-index: 10001;
}
@media (max-width: 769px) {
  #footer .copy {
    z-index: unset;
  }
}
#footer .copy p {
  color: #fff;
  font-weight: 400;
  font-size: 10px;
}
@media (max-width: 769px) {
  #footer .copy {
    flex-direction: column-reverse;
    row-gap: 15px;
    align-items: flex-start;
  }
}
#footer .copy .copy_wrap {
  display: flex;
  align-items: center;
  -moz-column-gap: clamp(20px, 3.2942898975vw, 45px);
       column-gap: clamp(20px, 3.2942898975vw, 45px);
}
@media (max-width: 600px) {
  #footer .copy .copy_wrap {
    flex-direction: column-reverse;
    row-gap: 15px;
    align-items: flex-start;
  }
}
@media (max-width: 769px) {
  #footer .copy .sp_flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
  }
}
#footer .copy .copy_flex {
  display: flex;
  -moz-column-gap: 20px;
       column-gap: 20px;
}
@media (max-width: 769px) {
  #footer .copy .copy_flex.pc_only {
    display: none;
  }
}
#footer .copy .copy_flex.sp_only {
  display: none;
}
@media (max-width: 769px) {
  #footer .copy .copy_flex.sp_only {
    display: flex;
  }
}
#footer .copy .copy_flex a {
  font-size: 12px;
  font-weight: 400;
  line-height: 1;
  font-family: "Zen Kaku Gothic New", sans-serif;
  color: #fff;
  transition: 0.4s;
}
@media (max-width: 1050px) {
  #footer .copy .copy_flex a {
    font-size: 15px;
  }
}
#footer .copy .copy_flex a:hover {
  color: #bbced9;
  transition: 0.4s;
}
@media (max-width: 769px) {
  #footer .copy {
    padding: 20px 6% 70px;
  }
}
#footer .copy .btn_wrap {
  display: flex;
  align-items: center;
  -moz-column-gap: 10px;
       column-gap: 10px;
}
#footer .copy .btn_wrap:hover img {
  top: -10px;
  transition: 0.4s all;
}
#footer .copy .btn_wrap span {
  font-family: "Figtree", sans-serif;
  font-weight: 400;
  font-size: 12px;
  line-height: 1.35;
  color: #fff;
  text-transform: uppercase;
}
#footer .copy .btn_wrap img {
  position: relative;
  width: 41px;
  transition: 0.4s all;
  height: 41px;
  top: 0;
}

.grecaptcha-badge {
  visibility: hidden;
}

main {
  overflow: hidden;
}

#main_video {
  position: relative;
  z-index: 2;
  height: 100vh;
  width: 100%;
}
@media (max-width: 769px) {
  #main_video {
    height: 600px;
  }
}
#main_video .mv_img {
  height: 100vh;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 769px) {
  #main_video .mv_img {
    height: 600px;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
  }
}
#main_video video {
  height: auto !important;
  width: 100% !important;
}
#main_video .scroll_area {
  position: absolute;
  bottom: clamp(60px, 7.906295754vw, 108px);
  right: 7.8125vw;
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: 12px;
}
@media (max-width: 1024px) {
  #main_video .scroll_area {
    right: 6%;
  }
}
#main_video .scroll_area p {
  color: #fff;
  writing-mode: vertical-rl;
  text-orientation: sideways;
  text-transform: uppercase;
  font-family: "Figtree", sans-serif;
  font-weight: 400;
  line-height: 0.1em;
  font-size: 11px;
}
#main_video .scroll_area figure {
  width: 34px;
  height: 34px;
  position: relative;
}
#main_video .scroll_area figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  /* 화살표 위아래 이동 애니메이션 */
  animation: arrow_bob 1.4s ease-in-out infinite;
  will-change: transform, opacity;
  transform: translate3d(0, 0, 0);
}
#main_video {
  /* 위아래로 천천히 이동하며 약간의 페이드 */
}
@keyframes arrow_bob {
  0% {
    transform: translateY(-10%);
    opacity: 0.7;
  }
  50% {
    transform: translateY(12%);
    opacity: 1;
  }
  100% {
    transform: translateY(-10%);
    opacity: 0.7;
  }
}
#main_video {
  /* 사용자가 모션 줄이기 설정 시 애니메이션 비활성화 */
}
@media (prefers-reduced-motion: reduce) {
  #main_video .scroll_area figure img {
    animation: none;
  }
}
#main_video .title_flex {
  display: flex;
  justify-content: space-between;
  max-width: 73.9583333333vw;
  width: 100%;
  align-items: flex-end;
  position: absolute;
  bottom: clamp(60px, 7.906295754vw, 108px);
  margin: 0 auto;
  left: 7.8125vw;
}
@media (max-width: 1024px) {
  #main_video .title_flex {
    left: 6%;
    -moz-column-gap: 20px;
         column-gap: 20px;
  }
}
@media (max-width: 769px) {
  #main_video .title_flex {
    flex-direction: column;
    align-items: flex-start;
  }
}
#main_video .title_flex .title_area {
  width: -moz-fit-content;
  width: fit-content;
}
#main_video .title_flex .title_area .mv_title {
  font-family: "Shippori Mincho", serif;
  font-weight: 500;
  font-size: clamp(42px, 4.1666666667vw, 80px);
  letter-spacing: 0.05em;
  line-height: 1.35;
  color: #fff;
  margin-bottom: clamp(10px, 0.9375vw, 18px);
}
@media (max-width: 1024px) {
  #main_video .title_flex .title_area .mv_title {
    font-size: 4.1015625vw;
  }
}
@media (max-width: 769px) {
  #main_video .title_flex .title_area .mv_title {
    font-size: 6.2418725618vw;
  }
}
#main_video .title_flex .title_area .mv_title_sub {
  font-family: "Shippori Mincho", serif;
  font-weight: 500;
  font-size: clamp(20px, 4.1666666667vw, 30px);
  letter-spacing: 0.05em;
  line-height: 1.35;
  color: #fff;
  margin-bottom: clamp(10px, 0.9375vw, 18px);
}
@media (max-width: 1024px) {
  #main_video .title_flex .title_area .mv_title_sub {
    font-size: 2.34375vw;
  }
}
@media (max-width: 769px) {
  #main_video .title_flex .title_area .mv_title_sub {
    font-size: 3.6410923277vw;
  }
}
#main_video .title_flex .title_area .sub_title {
  padding-left: 90px;
  position: relative;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-size: clamp(14px, 1.71875vw, 16px);
  line-height: 1.35;
  letter-spacing: 0.1em;
  color: #fff;
  margin-bottom: 20px;
}
@media (max-width: 1024px) {
  #main_video .title_flex .title_area .sub_title {
    font-size: 2.34375vw;
    padding-left: 8.7890625vw;
  }
}
@media (max-width: 769px) {
  #main_video .title_flex .title_area .sub_title {
    font-size: 3.6410923277vw;
    padding-left: 9.1027308192vw;
    display: none !important;
  }
}
#main_video .title_flex .title_area .sub_title::after {
  position: absolute;
  top: 50%;
  left: 0;
  content: "";
  width: 80px;
  height: 1px;
  background: #fff;
  transform: translateY(-50%);
}
@media (max-width: 1024px) {
  #main_video .title_flex .title_area .sub_title::after {
    width: 7.8125vw;
  }
}
@media (max-width: 769px) {
  #main_video .title_flex .title_area .sub_title::after {
    width: 7.8023407022vw;
  }
}
#main_video .title_flex .content_area {
  font-family: "Figtree", sans-serif;
  font-weight: 400;
  font-size: clamp(16px, 1.4641288433vw, 20px);
  line-height: 1.35;
  color: #fff;
  letter-spacing: 0.1em;
}
@media (max-width: 1024px) {
  #main_video .title_flex .content_area {
    font-size: 1.5625vw;
  }
}
@media (max-width: 769px) {
  #main_video .title_flex .content_area {
    font-size: 2.3407022107vw;
  }
}

.title_en {
  text-align: center;
  font-family: "Aboreto", system-ui;
  font-weight: 400;
  font-size: clamp(18px, 5.8565153734vw, 20px);
  text-transform: uppercase;
  line-height: normal;
  letter-spacing: 0.04em;
}
@media (max-width: 769px) {
  .title_en {
    font-size: clamp(16px, 7.8023407022vw, 20px);
  }
}

.title_jp {
  font-family: "Shippori Mincho", serif;
  font-size: clamp(46px, 2.196193265vw, 60px);
  line-height: normal;
  letter-spacing: 0.03em;
  margin-bottom: 8px;
}
@media (max-width: 769px) {
  .title_jp {
    font-size: clamp(30px, 3.6410923277vw, 40px);
  }
}

.main_button a {
  border-radius: 5px;
  display: inline-block;
  color: #fff;
  text-decoration: none;
  position: relative;
  width: 250px;
  height: 56px;
  padding: 0 23px;
  display: flex;
  border: 1px solid #fff;
  align-items: center;
  justify-content: flex-start;
  -moz-column-gap: 6px;
       column-gap: 6px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-size: 16px;
  border-radius: 5px;
  background: rgba(255, 255, 255, 0.1);
  -webkit-backface-visibility: hidden;
  z-index: 1;
}
.main_button a::before {
  background: url(/wp-content/uploads/arrow_w.svg) no-repeat;
  background-size: contain;
  content: "";
  position: absolute;
  top: 50%;
  right: 23px;
  transform: translateY(-50%);
  width: 14px;
  height: 11px;
  z-index: 10;
}
.main_button a img {
  width: 16px;
  height: 16px;
}
.main_button a::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 0.3em;
  background-image: linear-gradient(90deg, rgb(218, 214, 255) 0%, rgb(255, 232, 254) 100%);
  transition: opacity 0.5s ease-out;
  z-index: 2;
  opacity: 0;
}
.main_button a span {
  position: relative;
  z-index: 3;
  transition: opacity 0.5s all;
  color: #fff;
}
.main_button a:hover span {
  color: #2e385a;
}
.main_button a:hover::before {
  background: url(/wp-content/uploads/arrow_b.svg) no-repeat;
  background-size: contain;
  content: "";
  position: absolute;
  top: 50%;
  right: 23px;
  transform: translateY(-50%);
  width: 14px;
  height: 11px;
  z-index: 10;
}
.main_button a:hover::after {
  opacity: 1;
}

.content {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  color: #2e385a;
  font-size: clamp(14px, 1.1713030747vw, 16px);
  line-height: 1.8;
}
@media (max-width: 769px) {
  .content {
    font-size: clamp(14px, 2.0806241873vw, 16px);
  }
}

#s01 {
  background: url(/wp-content/uploads/bg01.jpg) no-repeat;
  background-size: cover;
  overflow: hidden;
  padding: clamp(55px, 4.7584187408vw, 65px) 0;
  border-bottom-right-radius: clamp(40px, 5.8565153734vw, 80px);
  border-bottom-left-radius: clamp(40px, 5.8565153734vw, 80px);
}
#s01 .inner .title_en {
  color: #fff;
  text-align: center;
  margin-bottom: clamp(30px, 2.7818448023vw, 38px);
  font-size: clamp(28px, 3.074670571vw, 42px);
}
@media (max-width: 769px) {
  #s01 .inner .title_en {
    font-size: clamp(24px, 4.6814044213vw, 36px);
  }
}
#s01 .inner .slider_section #campaign_column_slider.swiper {
  overflow: visible;
  padding: 0 6vw;
}
#s01 .inner .slider_section .swiper-wrapper {
  align-items: stretch;
}
#s01 .inner .slider_section .swiper-slide {
  display: flex;
  align-items: stretch;
  height: auto;
  position: relative;
}
#s01 .inner .slider_section .swiper-slide .cat,
#s01 .inner .slider_section .swiper-slide .cat_active {
  position: absolute;
  left: 0;
  top: clamp(12px, 1.2445095168vw, 17px);
  padding: 5px clamp(15px, 1.4641288433vw, 20px);
  background-color: #fff;
  color: #2e385a;
  font-family: "Aboreto", system-ui;
  font-weight: 400;
  font-size: clamp(16px, 1.317715959vw, 18px);
  line-height: normal;
  border-top-right-radius: 50vh;
  border-bottom-right-radius: 50vh;
}
#s01 .inner .slider_section .swiper-slide .cat.cat_column,
#s01 .inner .slider_section .swiper-slide .cat_active.cat_column {
  background-color: #2e385a !important;
  color: #fff !important;
}
#s01 .inner .slider_section {
  /* 박스 자체는 레이아웃 고정 */
}
#s01 .inner .slider_section .slide_card {
  width: 100%;
  aspect-ratio: 16/10;
  overflow: hidden;
  position: relative;
  isolation: isolate;
}
#s01 .inner .slider_section {
  /* 콘텐츠만 확대 */
}
#s01 .inner .slider_section .slide_inner {
  width: 100%;
  height: 100%;
  transform: scale(0.9);
  transition: transform 0.35s ease, filter 0.35s ease, opacity 0.25s ease;
  will-change: transform;
}
#s01 .inner .slider_section .slide_inner img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
#s01 .inner .slider_section {
  /* 가운데(액티브) 강조 — 레이아웃 영향 없음 */
}
#s01 .inner .slider_section .swiper-slide-active .slide_inner {
  transform: scale(1.2);
  filter: saturate(1.05) contrast(1.02);
}
#s01 .inner .slider_section .swiper-slide-active .slide_card.img_column {
  border-radius: 20px !important;
}
#s01 .inner .slider_section .swiper-slide:not(.swiper-slide-active) .slide_inner {
  opacity: 0.9;
  filter: saturate(0.85);
}
#s01 .inner .slider_section .swiper_pagination {
  position: relative;
  z-index: 5;
  margin-top: clamp(30px, 2.9282576867vw, 40px);
  text-align: center;
}
#s01 .inner .slider_section .swiper_pagination .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: transparent;
  opacity: 1;
  border: 1px solid #fff;
  margin: 0 5px;
}
#s01 .inner .slider_section .swiper_pagination .swiper-pagination-bullet-active {
  background: #fff;
}
@media (max-width: 1024px) {
  #s01 .inner .slider_section #campaign_column_slider.swiper {
    padding: 0 5vw;
  }
}
@media (max-width: 769px) {
  #s01 .inner .slider_section #campaign_column_slider.swiper {
    padding: 0 24px;
  }
  #s01 .inner .slider_section .swiper-slide-active .slide_inner {
    transform: scale(1.05);
  }
}
#s01 .thumb_column {
  border-radius: 20px;
}
#s01 .swiper-slide .cat {
  opacity: 1;
  transition: 0.4s all;
}
#s01 .swiper-slide .cat_active {
  opacity: 0;
  transition: 0.4s all;
}
#s01 .swiper-slide-active .cat {
  opacity: 0;
  transition: 0.4s all;
}
#s01 .swiper-slide-active .cat_active {
  opacity: 1;
  transition: 0.4s all;
}

.button_grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  align-items: center;
  -moz-column-gap: clamp(20px, 2.196193265vw, 30px);
       column-gap: clamp(20px, 2.196193265vw, 30px);
  max-width: 530px;
  width: 100%;
  margin: clamp(30px, 3.1478770132vw, 43px) auto 0;
}
@media (max-width: 600px) {
  .button_grid {
    grid-template-columns: 1fr;
    row-gap: 20px;
    justify-items: center;
  }
}
.button_grid .main_button {
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
}
.button_grid .main_button .btn_wrap {
  border-radius: 5px;
  display: inline-block;
  color: #fff;
  text-decoration: none;
  position: relative;
  width: 250px;
  height: 56px;
  padding: 0 23px;
  display: flex;
  border: 1px solid #fff;
  align-items: center;
  justify-content: flex-start;
  -moz-column-gap: 6px;
       column-gap: 6px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-size: 16px;
  border-radius: 5px;
  background: rgba(255, 255, 255, 0.1);
  -webkit-backface-visibility: hidden;
  z-index: 1;
}
.button_grid .main_button .btn_wrap::before {
  background: url(/wp-content/uploads/arrow_w.svg) no-repeat;
  background-size: contain;
  content: "";
  position: absolute;
  top: 50%;
  right: 23px;
  transform: translateY(-50%);
  width: 14px;
  height: 11px;
  z-index: 10;
}
.button_grid .main_button .btn_wrap img {
  width: 16px;
  height: 16px;
}
.button_grid .main_button .btn_wrap::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 0.3em;
  background-image: linear-gradient(90deg, rgb(218, 214, 255) 0%, rgb(255, 232, 254) 100%);
  transition: opacity 0.5s ease-out;
  z-index: 2;
  opacity: 0;
}
.button_grid .main_button .btn_wrap span {
  position: relative;
  z-index: 3;
  transition: opacity 0.5s all;
  color: #fff;
}
.button_grid .main_button .btn_wrap:hover span {
  color: #2e385a;
}
.button_grid .main_button .btn_wrap:hover::before {
  background: url(/wp-content/uploads/arrow_b.svg) no-repeat;
  background-size: contain;
  content: "";
  position: absolute;
  top: 50%;
  right: 23px;
  transform: translateY(-50%);
  width: 14px;
  height: 11px;
  z-index: 10;
}
.button_grid .main_button .btn_wrap:hover::after {
  opacity: 1;
}

#s02 {
  padding: clamp(60px, 7.7598828697vw, 106px) 0 clamp(100px, 12.6647144949vw, 173px);
}
#s02 .inner {
  max-width: calc(1270px + 12%);
  width: 100%;
  margin: 0 auto;
  padding: 0 6%;
}
#s02 .inner .title_jp {
  color: #2e385a;
  text-align: center;
}
#s02 .inner .title_en {
  color: #2e385a;
  text-align: center;
  margin-bottom: clamp(35px, 4.2459736457vw, 58px);
}
#s02 .inner .grid_box {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  row-gap: clamp(5px, 2.196193265vw, 30px);
  -moz-column-gap: clamp(10px, 2.5622254758vw, 35px);
       column-gap: clamp(10px, 2.5622254758vw, 35px);
}
#s02 .inner .grid_box .grid_col a {
  transition: 0.4s all;
}
#s02 .inner .grid_box .grid_col a:hover {
  filter: brightness(1.1);
}
#s02 .inner .grid_box .grid_col a img {
  width: 100%;
}

#s03 {
  overflow: hidden;
  border-radius: clamp(40px, 5.8565153734vw, 80px);
  position: relative;
  z-index: 1;
}
#s03 .inner {
  padding: 0 0 0 12.96875vw;
  background: url(/wp-content/uploads/bg01.jpg) no-repeat center/cover;
  border-radius: clamp(40px, 5.8565153734vw, 80px);
}
@media (max-width: 1366px) {
  #s03 .inner {
    padding: 0 0 0 50px;
  }
}
@media (max-width: 767px) {
  #s03 .inner {
    padding: 70px 6% 0;
  }
}
#s03 .inner .flex_box {
  display: flex;
  align-items: center;
}
@media (max-width: 767px) {
  #s03 .inner .flex_box {
    flex-direction: column;
    row-gap: clamp(30px, 5.8517555267vw, 45px);
  }
}
#s03 .inner .flex_box {
  /* ===================== */
  /*    슬라이더 영역      */
  /* ===================== */
}
#s03 .inner .flex_box .slider_wrapper {
  max-width: 100%;
  width: 100%;
  display: flex;
  gap: clamp(10px, 1.4641288433vw, 20px);
  height: clamp(600px, 47.3958333333vw, 910px);
  overflow: hidden;
}
@media (max-width: 767px) {
  #s03 .inner .flex_box .slider_wrapper {
    /* SP 컨테이너 높이: JS에서 이 값 기준으로 슬라이드 N장 딱 맞춤 */
    height: clamp(420px, 120vw, 600px);
  }
}
#s03 .inner .flex_box .column {
  display: flex;
  flex-direction: column;
  gap: 16px; /* ★ 정수 px 유지 (SP도 정수 px로) */
  flex-shrink: 0;
  will-change: transform;
  width: 26.6666666667vw;
}
@media (max-width: 767px) {
  #s03 .inner .flex_box .column {
    width: 43.25vw; /* 디자인에 맞는 컬럼 너비 */
    gap: 12px; /* ★ SP: 정수 px 고정 (서브픽셀 누적 방지) */
  }
}
#s03 .inner .flex_box .slide {
  flex-shrink: 0; /* 높이는 PC=auto, SP=JS로 지정 */
  margin: 0;
  line-height: 0; /* 이미지 하단 공백 방지 */
}
#s03 .inner .flex_box .slide img {
  display: block;
  width: 100%;
  height: 100%; /* SP: JS가 준 높이에 맞춰 꽉 채움 */
  -o-object-fit: cover;
     object-fit: cover;
  border-top-right-radius: clamp(15px, 3.6603221083vw, 50px);
  /* 필요하면 다른 코너도: border-radius: clamp(35px, vw(50), 50px); */
}
#s03 .inner .flex_box {
  /* ===================== */
  /*     좌측 텍스트 박스   */
  /* ===================== */
}
#s03 .inner .flex_box .text_area {
  max-width: calc(375px + 6%);
  width: 100%;
  padding: 0 6% 0 0;
}
@media (max-width: 1366px) {
  #s03 .inner .flex_box .text_area {
    max-width: calc(clamp(250px, 27.4524158126vw, 375px) + 6%);
  }
}
@media (max-width: 767px) {
  #s03 .inner .flex_box .text_area {
    max-width: 100%;
    padding: 0;
  }
}
#s03 .inner .flex_box .text_area .box {
  width: 100%;
  margin: 0 auto;
}
#s03 .inner .flex_box .text_area .box .title_jp {
  color: #fff;
}
#s03 .inner .flex_box .text_area .box .title_en {
  color: #fff;
  margin-bottom: clamp(35px, 3.6603221083vw, 50px);
  text-align: start;
}
@media (max-width: 1366px) {
  #s03 .inner .flex_box .text_area .box .title_en {
    font-size: 5.8565153734vw;
  }
}
@media (max-width: 767px) {
  #s03 .inner .flex_box .text_area .box .title_en {
    font-size: clamp(40px, 7.8023407022vw, 60px);
  }
}

.parallax_section {
  overflow: hidden;
  margin-top: -70px;
}
.parallax_section .parallax_bg {
  margin: 0 calc(50% - 50vw);
  height: clamp(450px, 54.1666666667vw, 1040px);
  position: relative;
  clip-path: inset(0);
  background: url(/wp-content/uploads/pala_bg.jpg) no-repeat center top/cover;
}
@media (max-width: 767px) {
  .parallax_section .parallax_bg {
    background: url(/wp-content/uploads/pala_bg_sp.jpg) no-repeat center top/cover;
  }
}
.parallax_section .parallax_bg::after {
  content: "";
  position: fixed;
  display: block;
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
  z-index: -1;
  background: inherit;
  box-sizing: border-box;
}
@media (max-width: 767px) {
  .parallax_section .parallax_bg::after {
    background-position-x: 0;
  }
}

#s04 {
  margin-top: -70px;
  padding: clamp(70px, 7.3206442167vw, 100px) 0 clamp(100px, 9.1508052709vw, 125px);
  background: url(/wp-content/uploads/bg02.jpg) no-repeat;
  background-size: cover;
  position: relative;
  z-index: 1;
  border-radius: clamp(40px, 5.8565153734vw, 80px);
}
#s04 .inner {
  overflow: hidden;
  max-width: calc(1620px + 12%);
  width: 100%;
  margin: 0 auto;
  padding: 0 6%;
}
#s04 .inner .area_flex {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}
@media (max-width: 900px) {
  #s04 .inner .area_flex {
    flex-direction: column;
    row-gap: 30px;
    align-items: flex-start;
  }
}
#s04 .inner .area_flex .title_flex {
  display: flex;
  -moz-column-gap: clamp(45px, 5.710102489vw, 78px);
       column-gap: clamp(45px, 5.710102489vw, 78px);
  align-items: flex-end;
}
@media (max-width: 500px) {
  #s04 .inner .area_flex .title_flex {
    flex-direction: column;
    row-gap: 30px;
    align-items: flex-start;
  }
}
#s04 .inner .area_flex .title_flex .title_jp {
  color: #fff;
}
#s04 .inner .area_flex .title_flex .title_en {
  color: #fff;
  text-align: start;
}
#s04 .inner .area_flex .title_flex .content {
  color: #fff;
  font-weight: 400;
}
#s04 .inner .case_slider_area {
  position: relative;
  margin-top: clamp(28px, 2.9282576867vw, 40px);
  /* 스와이퍼 컨테이너가 .inner 폭을 꽉 채우도록 */
}
#s04 .inner .case_slider_area #case_slider {
  width: 100%;
}
#s04 .inner .case_slider_area .swiper-wrapper {
  align-items: stretch;
}
#s04 .inner .case_slider_area .swiper-slide {
  /* width 고정 금지! (삭제) */
  /* height auto만 유지 */
  height: auto;
}
#s04 .inner .case_slider_area .swiper-slide img {
  display: block;
  width: 100%;
  height: auto;
}
#s04 .inner .case_slider_area {
  /* 접근성: 키보드 포커스 표시 */
}
#s04 .inner .case_slider_area .case_next:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.8);
  outline-offset: 2px;
  border-radius: 999px;
}
#s04 .case_next {
  position: absolute;
  top: 60%;
  right: 5.7291666667vw;
  transform: translateY(-50%);
  width: clamp(40px, 3.3333333333vw, 64px);
  height: clamp(40px, 3.3333333333vw, 64px);
  z-index: 5;
  border: 0;
  padding: 0;
}
@media (max-width: 1840px) {
  #s04 .case_next {
    right: 4.1666666667vw;
  }
}
@media (max-width: 425px) {
  #s04 .case_next {
    right: 2%;
  }
}
#s04 .case_next {
  background: transparent url("/wp-content/uploads/case_arrow.png") no-repeat center/contain;
  cursor: pointer;
}

#s05 {
  padding: clamp(70px, 8.6383601757vw, 118px) 0 clamp(100px, 10.8345534407vw, 148px);
}
#s05 .inner {
  max-width: calc(1620px + 12%);
  width: 100%;
  margin: 0 auto;
  padding: 0 6%;
}
#s05 .inner .title_flex {
  align-items: flex-end;
  display: flex;
  justify-content: space-between;
  margin-bottom: clamp(45px, 4.6120058565vw, 63px);
  -moz-column-gap: clamp(30px, 3.2942898975vw, 45px);
       column-gap: clamp(30px, 3.2942898975vw, 45px);
}
@media (max-width: 900px) {
  #s05 .inner .title_flex {
    flex-direction: column;
    row-gap: 30px;
    align-items: flex-start;
  }
}
#s05 .inner .title_flex .title_area {
  width: -moz-fit-content;
  width: fit-content;
}
#s05 .inner .title_flex .title_area .title_jp {
  color: #2e385a;
}
#s05 .inner .title_flex .title_area .title_en {
  color: #2e385a;
  text-align: start;
  white-space: nowrap;
}
#s05 .inner .title_flex .content {
  color: #2e385a;
}
#s05 .grid_wrap {
  padding-right: 7.8125vw;
}
@media (max-width: 1366px) {
  #s05 .grid_wrap {
    padding-right: 6%;
  }
}
@media (max-width: 767px) {
  #s05 .grid_wrap {
    padding: 0 6%;
  }
}
#s05 .grid_wrap .grid_box {
  display: grid;
  align-items: center;
  -moz-column-gap: 30px;
       column-gap: 30px;
  max-width: 1775px;
  width: 100%;
  grid-template-columns: 1.05fr 0.95fr;
}
@media (max-width: 767px) {
  #s05 .grid_wrap .grid_box {
    display: flex;
    flex-direction: column-reverse;
    row-gap: clamp(30px, 5.8517555267vw, 45px);
  }
}
#s05 .grid_wrap .grid_box {
  /* 하이픈/언더스코어 모두 대응 */
}
#s05 .grid_wrap .grid_box .image_container,
#s05 .grid_wrap .grid_box .image-container {
  position: relative;
  overflow: hidden;
  aspect-ratio: attr(data-ratio); /* 브라우저 지원 낮으면 JS에서 적용됨 */
}
@media (max-width: 767px) {
  #s05 .grid_wrap .grid_box .image_container,
  #s05 .grid_wrap .grid_box .image-container {
    width: 100%;
  }
}
#s05 .grid_wrap .grid_box .image_container canvas,
#s05 .grid_wrap .grid_box .image-container canvas {
  display: block;
  width: 100%;
  height: 100%;
}
#s05 .grid_wrap .grid_box .text_grid {
  width: 100%;
  height: 100%;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
#s05 .grid_wrap .grid_box .text_grid a {
  background: #fff;
  border-radius: 5px;
  border: 1px solid #bbced9;
  width: 100%;
  height: 100%;
  padding: 6%;
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
}
@media (max-width: 425px) {
  #s05 .grid_wrap .grid_box .text_grid a {
    padding: 12% 6%;
  }
}
#s05 .grid_wrap .grid_box .text_grid a:hover .main_img {
  transform: scale(1.2);
}
#s05 .grid_wrap .grid_box .text_grid a .main_img {
  max-width: 79px;
  width: 100%;
  transform: scale(1);
  margin-bottom: 15px;
  transition: 0.4s all;
}
@media (max-width: 1366px) {
  #s05 .grid_wrap .grid_box .text_grid a .main_img {
    max-width: 5.7833089312vw;
    margin-bottom: 1.0980966325vw;
  }
}
@media (max-width: 767px) {
  #s05 .grid_wrap .grid_box .text_grid a .main_img {
    max-width: clamp(40px, 7.8023407022vw, 60px);
    margin-bottom: 10px;
  }
}
#s05 .grid_wrap .grid_box .text_grid a .main_img img {
  width: 100%;
}
#s05 .grid_wrap .grid_box .text_grid a .grid_title {
  text-align: center;
  font-family: "Shippori Mincho", serif;
  font-weight: 400;
  font-size: clamp(24px, 1.5625vw, 30px);
  letter-spacing: 0.03em;
  margin-bottom: 0;
  color: #2e385a;
}
@media (max-width: 1366px) {
  #s05 .grid_wrap .grid_box .text_grid a .grid_title {
    font-size: 1.756954612vw;
  }
}
@media (max-width: 767px) {
  #s05 .grid_wrap .grid_box .text_grid a .grid_title {
    font-size: clamp(16px, 3.1209362809vw, 24px);
  }
}
#s05 .grid_wrap .grid_box .text_grid a .grid_en {
  text-align: center;
  font-family: "Aboreto", system-ui;
  font-weight: 400;
  font-size: clamp(14px, 1.5373352855vw, 18px);
  letter-spacing: 0.04em;
  margin-bottom: 15px;
  color: #7c889e;
}
@media (max-width: 1366px) {
  #s05 .grid_wrap .grid_box .text_grid a .grid_en {
    font-size: clamp(14px, 1.317715959vw, 18px);
    margin-bottom: 1.0980966325vw;
  }
}
@media (max-width: 767px) {
  #s05 .grid_wrap .grid_box .text_grid a .grid_en {
    font-size: clamp(14px, 2.0806241873vw, 16px);
  }
}
#s05 .grid_wrap .grid_box .text_grid a .btn_arrow {
  max-width: 32px;
  width: 100%;
  height: auto;
  margin: 0 auto;
}
@media (max-width: 1366px) {
  #s05 .grid_wrap .grid_box .text_grid a .btn_arrow {
    max-width: clamp(24px, 2.3426061493vw, 32px);
  }
}

#s_column {
  padding: 0 0 clamp(60px, 9.224011713vw, 126px) 0;
}
#s_column .inner {
  max-width: calc(1620px + 12%);
  width: 100%;
  margin: 0 auto;
  padding: 0 6%;
}
#s_column .inner .flex_box {
  display: flex;
  -moz-column-gap: clamp(30px, 3.6603221083vw, 50px);
       column-gap: clamp(30px, 3.6603221083vw, 50px);
  justify-content: space-between;
}
@media (max-width: 999px) {
  #s_column .inner .flex_box {
    flex-direction: column;
    row-gap: 30px;
  }
}
#s_column .inner .flex_box .title_area {
  width: -moz-fit-content;
  width: fit-content;
}
#s_column .inner .flex_box .title_area .title_jp {
  color: #2e385a;
}
#s_column .inner .flex_box .title_area .title_en {
  margin-bottom: clamp(30px, 3.5871156662vw, 49px);
  text-align: start;
  color: #2e385a;
}
#s_column .inner .flex_box .title_area .main_button a {
  color: #2e385a;
  border: 1px solid #bbced9;
  background: #fff;
}
#s_column .inner .flex_box .title_area .main_button a::before {
  background: url(/wp-content/uploads/arrow_b.svg) no-repeat;
}
#s_column .inner .flex_box .title_area .main_button a img {
  width: 16px;
  height: 16px;
}
#s_column .inner .flex_box .title_area .main_button a::after {
  background-image: linear-gradient(90deg, rgb(218, 214, 255) 0%, rgb(255, 232, 254) 100%);
}
#s_column .inner .flex_box .title_area .main_button a span {
  position: relative;
  z-index: 3;
  transition: opacity 0.5s all;
  color: #2e385a;
}
#s_column .inner .flex_box .title_area .main_button a:hover span {
  color: #2e385a;
  z-index: 3;
}
#s_column .inner .flex_box .title_area .main_button a:hover::before {
  background: url(/wp-content/uploads/arrow_b.svg) no-repeat;
}
#s_column .inner .flex_box .title_area .main_button a:hover::after {
  opacity: 1;
}
#s_column .inner .flex_box .column_area {
  max-width: 982px;
  width: 100%;
}
@media (max-width: 769px) {
  #s_column .inner .flex_box .column_area {
    max-width: 100%;
  }
}
#s_column .inner .flex_box .column_area .column_wrap {
  position: relative;
  z-index: 1;
  margin-bottom: clamp(30px, 2.9282576867vw, 40px);
}
#s_column .inner .flex_box .column_area .column_wrap .column_flex {
  background: #fff;
  border-radius: 5px;
  border: 1px solid #bbced9;
  display: flex;
  padding: 20px clamp(20px, 2.196193265vw, 30px) 20px 20px;
  -moz-column-gap: 20px;
       column-gap: 20px;
  align-items: center;
  margin-bottom: 20px;
}
@media (max-width: 600px) {
  #s_column .inner .flex_box .column_area .column_wrap .column_flex {
    flex-direction: column;
    row-gap: 20px;
  }
}
#s_column .inner .flex_box .column_area .column_wrap .column_flex .img_area {
  max-width: 260px;
  min-width: 180px;
  width: 100%;
  aspect-ratio: 4/3;
}
@media (max-width: 769px) {
  #s_column .inner .flex_box .column_area .column_wrap .column_flex .img_area {
    aspect-ratio: unset;
  }
}
@media (max-width: 600px) {
  #s_column .inner .flex_box .column_area .column_wrap .column_flex .img_area {
    max-width: 100%;
    aspect-ratio: unset;
  }
}
#s_column .inner .flex_box .column_area .column_wrap .column_flex .img_area img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#s_column .inner .flex_box .column_area .column_wrap .content_flex .date {
  color: #3d4c62;
  font-size: 14px;
  letter-spacing: 0.05em;
  line-height: normal;
  font-weight: 500;
  font-family: "Figtree", sans-serif;
}
#s_column .inner .flex_box .column_area .column_wrap .content_flex .flex_button a {
  border-radius: 5px;
  display: inline-block;
  color: #2e385a;
  text-decoration: none;
  position: relative;
  width: 130px;
  height: 32px;
  padding: 0 13px;
  display: flex;
  border: 1px solid #bbced9;
  align-items: center;
  justify-content: flex-start;
  -moz-column-gap: 6px;
       column-gap: 6px;
  font-family: "Figtree", sans-serif;
  font-weight: 500;
  font-size: 14px;
  border-radius: 3px;
  -webkit-backface-visibility: hidden;
  z-index: 1;
}
#s_column .inner .flex_box .column_area .column_wrap .content_flex .flex_button a::before {
  background: url(/wp-content/uploads/arrow_b.svg) no-repeat;
  background-size: contain;
  content: "";
  position: absolute;
  top: 50%;
  right: 13px;
  transform: translateY(-50%);
  width: 12px;
  height: 9px;
  z-index: 10;
}
#s_column .inner .flex_box .column_area .column_wrap .content_flex .flex_button a img {
  width: 16px;
  height: 16px;
}
#s_column .inner .flex_box .column_area .column_wrap .content_flex .flex_button a::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 0.3em;
  background-image: linear-gradient(90deg, rgb(218, 214, 255) 0%, rgb(255, 232, 254) 100%);
  transition: opacity 0.5s ease-out;
  z-index: 2;
  opacity: 0;
}
#s_column .inner .flex_box .column_area .column_wrap .content_flex .flex_button a span {
  position: relative;
  z-index: 3;
  transition: opacity 0.5s all;
  color: #2e385a;
}
#s_column .inner .flex_box .column_area .column_wrap .content_flex .flex_button a:hover span {
  color: #2e385a !important;
  z-index: 3 !important;
}
#s_column .inner .flex_box .column_area .column_wrap .content_flex .flex_button a:hover::after {
  opacity: 1;
}
#s_column .inner .flex_box .column_area .column_wrap .news_title {
  font-size: clamp(18px, 1.9033674963vw, 26px);
  transition: 0.4s;
  font-weight: 500;
  font-family: "Shippori Mincho", serif;
  color: #2e385a;
  line-height: 1.6;
  letter-spacing: 0.05em;
  margin-bottom: 13px;
}
@media (max-width: 600px) {
  #s_column .inner .flex_box .column_area .column_wrap .news_title {
    font-size: clamp(20px, 3.6666666667vw, 22px);
  }
}
#s_column .inner .flex_box .column_area .column_wrap .content {
  margin-bottom: 15px;
}
#s_column .inner .flex_box .column_area .column_wrap .content_flex {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

#s_slider {
  padding: 0 0 clamp(80px, 11.420204978vw, 156px) 0;
}
#s_slider .inner {
  position: relative;
}
#s_slider .inner .box {
  position: absolute;
  z-index: 1;
  bottom: 0;
  left: 0;
  max-width: clamp(774px, 42.0833333333vw, 808px);
  padding: 80px clamp(80px, 5.2083333333vw, 100px) 2.6041666667vw;
  border-top-right-radius: clamp(35px, 3.6603221083vw, 50px);
  background: #edf2f5;
}
@media (max-width: 1366px) {
  #s_slider .inner .box {
    padding: clamp(50px, 5.8565153734vw, 80px) clamp(20px, 5.8565153734vw, 80px) 0;
    bottom: -30px;
  }
}
@media (max-width: 769px) {
  #s_slider .inner .box {
    max-width: 85vw;
  }
}
#s_slider .inner .box .title_jp {
  text-align: start;
  color: #2e385a;
}
#s_slider .inner .box .title_en {
  text-align: start;
  margin-bottom: clamp(15px, 1.6837481698vw, 23px);
  color: #2e385a;
}
#s_slider .inner .box .content {
  margin-bottom: clamp(15px, 1.6837481698vw, 23px);
}
#s_slider .inner .box .main_button a {
  color: #2e385a;
  border: 1px solid #bbced9;
  background: #fff;
}
#s_slider .inner .box .main_button a::before {
  background: url(/wp-content/uploads/arrow_b.svg) no-repeat;
}
#s_slider .inner .box .main_button a img {
  width: 16px;
  height: 16px;
}
#s_slider .inner .box .main_button a::after {
  background-image: linear-gradient(90deg, rgb(218, 214, 255) 0%, rgb(255, 232, 254) 100%);
}
#s_slider .inner .box .main_button a span {
  position: relative;
  z-index: 3;
  transition: opacity 0.5s all;
  color: #2e385a;
}
#s_slider .inner .box .main_button a:hover span {
  color: #2e385a;
  z-index: 3;
}
#s_slider .inner .box .main_button a:hover::before {
  background: url(/wp-content/uploads/arrow_b.svg) no-repeat;
}
#s_slider .inner .box .main_button a:hover::after {
  opacity: 1;
}
#s_slider .owl-carousel .owl-item img {
  display: block;
  width: clamp(795px, 50.2083333333vw, 964px);
  height: clamp(600px, 37.9166666667vw, 728px);
  -o-object-fit: cover;
     object-fit: cover;
}
#s_slider .owl-theme .owl-dots,
#s_slider .owl-theme .owl-nav {
  text-align: end;
  padding-right: 50px;
}
@media (max-width: 769px) {
  #s_slider .owl-theme .owl-dots,
  #s_slider .owl-theme .owl-nav {
    text-align: center;
    padding-right: 0;
  }
}
#s_slider .owl-theme .owl-nav [class*=owl-]:hover {
  background: #fff;
}

#s06 {
  padding-bottom: clamp(70px, 10.980966325vw, 150px);
  margin-left: 7.8125vw;
}
@media (max-width: 1366px) {
  #s06 {
    margin-left: 6%;
  }
}
#s06 .inner {
  padding-right: 6%;
}
#s06 .inner .flex_box {
  display: flex;
  align-items: center;
  -moz-column-gap: clamp(69px, 4.1145833333vw, 79px);
       column-gap: clamp(69px, 4.1145833333vw, 79px);
}
@media (max-width: 1366px) {
  #s06 .inner .flex_box {
    -moz-column-gap: clamp(45px, 5.0512445095vw, 69px);
         column-gap: clamp(45px, 5.0512445095vw, 69px);
  }
}
@media (max-width: 769px) {
  #s06 .inner .flex_box {
    flex-direction: column-reverse;
    row-gap: clamp(30px, 3.2942898975vw, 45px);
  }
}
#s06 .inner .flex_box .map_area {
  max-width: 810px;
  width: 100%;
}
#s06 .inner .flex_box .map_area iframe {
  height: clamp(450px, 30.1041666667vw, 578px);
}
@media (max-width: 769px) {
  #s06 .inner .flex_box .map_area iframe {
    height: clamp(320px, 58.5175552666vw, 450px);
  }
}
#s06 .inner .flex_box .access_area {
  max-width: 450px;
  width: 100%;
}
@media (max-width: 769px) {
  #s06 .inner .flex_box .access_area {
    max-width: 100%;
  }
}
#s06 .inner .flex_box .access_area .title_jp {
  color: #2e385a;
}
#s06 .inner .flex_box .access_area .title_en {
  color: #2e385a;
  text-align: start;
  margin-bottom: clamp(30px, 3.2942898975vw, 45px);
}
#s06 .inner .flex_box .access_area .content {
  margin-bottom: clamp(15px, 1.4641288433vw, 20px);
}
#s06 .inner .flex_box .access_area .content .content_space {
  display: none;
}
@media (max-width: 425px) {
  #s06 .inner .flex_box .access_area .content .content_space {
    display: block;
  }
}
#s06 .inner .flex_box .access_area .btn_mb {
  margin-bottom: clamp(25px, 2.4158125915vw, 33px);
}
#s06 .inner .flex_box .access_area .main_button a {
  color: #2e385a;
  border: 1px solid #bbced9;
  background: #fff;
}
#s06 .inner .flex_box .access_area .main_button a::before {
  background: url(/wp-content/uploads/arrow_b.svg) no-repeat;
}
#s06 .inner .flex_box .access_area .main_button a img {
  width: 16px;
  height: 16px;
}
#s06 .inner .flex_box .access_area .main_button a::after {
  background-image: linear-gradient(90deg, rgb(218, 214, 255) 0%, rgb(255, 232, 254) 100%);
}
#s06 .inner .flex_box .access_area .main_button a span {
  position: relative;
  z-index: 3;
  transition: opacity 0.5s all;
  color: #2e385a;
}
#s06 .inner .flex_box .access_area .main_button a:hover span {
  color: #2e385a;
  z-index: 3;
}
#s06 .inner .flex_box .access_area .main_button a:hover::before {
  background: url(/wp-content/uploads/arrow_b.svg) no-repeat;
}
#s06 .inner .flex_box .access_area .main_button a:hover::after {
  opacity: 1;
}

#s07 {
  background: linear-gradient(0deg, rgb(61, 76, 98) 50%, rgb(237, 242, 245) 50%);
}
#s07 .wrap {
  background: url(/wp-content/uploads/bg02.jpg) no-repeat;
  background-size: cover;
  border-radius: clamp(60px, 7.3206442167vw, 100px);
  padding: clamp(60px, 7.027818448vw, 96px) 0 clamp(50px, 6.2957540264vw, 86px);
}
#s07 .wrap .inner {
  max-width: calc(1266px + 12%);
  width: 100%;
  margin: 0 auto;
  padding: 0 6%;
}
#s07 .wrap .inner .title_jp {
  color: #fff;
  text-align: center;
}
#s07 .wrap .inner .title_en {
  text-align: center;
  color: #fff;
  margin-bottom: clamp(30px, 3.074670571vw, 42px);
}
#s07 .wrap .inner .grid_box {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(20px, 2.196193265vw, 30px);
  margin-bottom: clamp(40px, 4.9048316252vw, 67px);
}
@media (max-width: 900px) {
  #s07 .wrap .inner .grid_box {
    grid-template-columns: 1fr;
    max-width: 420px;
    width: 100%;
    margin: 0 auto 40px;
  }
}
#s07 .wrap .inner .grid_box .grid_col {
  transition: 0.4s all;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 5px;
  border: 1px solid #fff;
  padding: clamp(40px, 4.0263543192vw, 55px) clamp(20px, 2.196193265vw, 30px) clamp(50px, 4.6852122987vw, 64px);
  display: grid;
  grid-template-rows: subgrid;
  gap: 0;
  grid-row: span 3;
}
#s07 .wrap .inner .grid_box .grid_col:hover {
  background: rgba(255, 255, 255, 0.5);
}
#s07 .wrap .inner .grid_box .grid_col.box1 figure {
  background: linear-gradient(90deg, rgb(218, 214, 255) 0%, rgb(255, 232, 254) 100%);
}
#s07 .wrap .inner .grid_box .grid_col.box2 figure {
  background: linear-gradient(90deg, rgb(255, 230, 230) 0%, rgb(211, 246, 255) 100%);
}
#s07 .wrap .inner .grid_box .grid_col.box3 figure {
  background: linear-gradient(90deg, rgb(190, 216, 255) 0%, rgb(229, 246, 255) 100%);
}
#s07 .wrap .inner .grid_box .grid_title {
  text-align: center;
  font-family: "Aboreto", "Shippori Mincho", system-ui;
  font-size: clamp(22px, 2.196193265vw, 30px);
  line-height: normal;
  letter-spacing: 0.04em;
  color: #fff;
  margin-bottom: clamp(20px, 2.196193265vw, 30px);
  font-weight: 400;
}
#s07 .wrap .inner .grid_box figure {
  padding: 33px;
  margin: 0 auto clamp(20px, 2.196193265vw, 30px);
  border-radius: 50%;
}
@media (max-width: 769px) {
  #s07 .wrap .inner .grid_box figure {
    padding: 20px;
  }
}
#s07 .wrap .inner .grid_box figure img {
  width: 38px;
  height: 38px;
}
@media (max-width: 769px) {
  #s07 .wrap .inner .grid_box figure img {
    width: 30px;
    height: 30px;
  }
}
#s07 .wrap .content {
  color: #fff;
  text-align: center;
}
@media (max-width: 1150px) {
  #s07 .wrap .content {
    text-align: start;
  }
}
@media (max-width: 900px) {
  #s07 .wrap .content {
    text-align: center;
  }
}
#s07 .wrap .content .content_space {
  display: none;
}
@media (max-width: 600px) {
  #s07 .wrap .content .content_space {
    display: block;
  }
}
#s07 .wrap .text_center {
  text-align: center;
  margin-bottom: 20px;
}
#s07 .wrap .main_button a {
  margin: 0 auto;
}

.main_slider_wrap {
  position: relative;
}
.main_slider_wrap .table_wrap {
  position: absolute;
  bottom: 0;
  right: 0;
  background: #fff;
  padding: clamp(15px, 1.4641288433vw, 20px) clamp(12px, 1.2445095168vw, 17px) clamp(15px, 1.4641288433vw, 20px) clamp(15px, 1.4641288433vw, 20px);
}
.main_slider_wrap .table_wrap p {
  display: flex;
  align-items: center;
  -moz-column-gap: 10px;
       column-gap: 10px;
}
.main_slider_wrap .table_wrap p .table_head {
  width: 70px;
  height: 27px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #3d4c62;
  color: #fff;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: bold;
  font-size: 15px;
  line-height: 1.4;
}
.main_slider_wrap .table_wrap p .table_body {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: bold;
  font-size: 16px;
  line-height: 1.4;
  color: #2e385a;
}
.main_slider_wrap .table_wrap p .table_body .table_small {
  font-size: 12px;
}
.main_slider_wrap .table_wrap p.mb_10 {
  margin-bottom: 10px;
}
.main_slider_wrap .main_slider {
  position: relative;
}
@media (max-width: 600px) {
  .main_slider_wrap .main_slider .slide_pc {
    display: none;
  }
}
.main_slider_wrap .main_slider .slide_sp {
  display: none;
}
@media (max-width: 600px) {
  .main_slider_wrap .main_slider .slide_sp {
    display: inherit;
  }
}
.main_slider_wrap .main_slider .slick-dots {
  display: none !important;
}
.main_slider_wrap .main_slider .slick-slide {
  height: 100vh;
  width: 100vw;
}
@media (max-width: 600px) {
  .main_slider_wrap .main_slider .slick-slide {
    height: 600px;
  }
}
.main_slider_wrap .main_slider .slick-slide img {
  height: 100vh;
  width: 100vw;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 600px) {
  .main_slider_wrap .main_slider .slick-slide img {
    height: 600px;
  }
}
.main_slider_wrap .main_slider .slider_title {
  position: absolute;
  bottom: 95px;
  left: clamp(6%, 7.3206442167vw, 100px);
  max-width: 917px;
  width: 100%;
  margin: 0 auto;
}
@media (max-width: 1366px) {
  .main_slider_wrap .main_slider .slider_title {
    bottom: 110px;
  }
}
@media (max-width: 1024px) {
  .main_slider_wrap .main_slider .slider_title {
    max-width: 89.55078125vw;
  }
}
@media (max-width: 600px) {
  .main_slider_wrap .main_slider .slider_title {
    left: 3%;
  }
}
.main_slider_wrap .main_slider .slider_title img {
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  height: auto;
}/*# sourceMappingURL=style.css.map */