.zen_kaku {
  font-family: "Zen Kaku Gothic New", serif;
  font-weight: 400;
  font-style: normal;
}

.lato {
  font-family: "Lato", serif;
  font-weight: bold;
  font-style: normal;
}

html,
body {
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  background: #fff;
  line-height: 1.5;
  font-family: "M PLUS 1p", sans-serif;
  font-style: normal;
}
@media screen and (max-width: 1900px) {
  html,
  body {
    font-size: 0.0520833333vw;
  }
}
@media screen and (max-width: 768px) {
  html,
  body {
    font-size: 0.1333333333vw;
  }
}

* {
  box-sizing: border-box;
  transition: all 0.2s ease-in-out;
}

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

a {
  text-decoration: none;
  cursor: pointer;
  transition: 0.3s;
  display: block;
  color: #000;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
ul {
  margin: 0;
  padding: 0;
  line-height: 1;
}

ul,
li,
ol,
li {
  list-style: none;
}

ul,
ol {
  margin: auto;
  padding: 0;
}

figure,
table {
  margin: auto;
}

.page_width {
  max-width: 1920px;
  width: 100%;
  margin: auto !important;
}

.pc {
  display: block;
}

.sp {
  display: none;
}

@media screen and (max-width: 750px) {
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
}
h2 {
  font-size: 52px;
  font-weight: bold;
  line-height: 1.5;
}
@media screen and (max-width: 1900px) {
  h2 {
    font-size: 52rem;
  }
}
@media screen and (max-width: 768px) {
  h2 {
    font-size: 60rem;
  }
}

p {
  font-size: 24px;
  font-weight: 500;
  line-height: 1.5;
}
@media screen and (max-width: 1900px) {
  p {
    font-size: 24rem;
  }
}
@media screen and (max-width: 768px) {
  p {
    font-size: 28rem;
  }
}

.m_txt {
  font-size: 24px;
  font-weight: 500;
  line-height: 2;
}
@media screen and (max-width: 1900px) {
  .m_txt {
    font-size: 24rem;
  }
}
@media screen and (max-width: 768px) {
  .m_txt {
    font-size: 32rem;
  }
}

.u_txt {
  font-size: 36px;
  font-weight: 500;
  line-height: 2;
}
@media screen and (max-width: 1900px) {
  .u_txt {
    font-size: 36rem;
  }
}
@media screen and (max-width: 768px) {
  .u_txt {
    font-size: 40rem;
  }
}

.s_txt {
  font-size: 18px;
  font-weight: 500;
  line-height: 2;
}
@media screen and (max-width: 1900px) {
  .s_txt {
    font-size: 18rem;
  }
}
@media screen and (max-width: 768px) {
  .s_txt {
    font-size: 24rem;
  }
}

.sec_ttl {
  font-size: 52px;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 1900px) {
  .sec_ttl {
    font-size: 52rem;
  }
}
@media screen and (max-width: 768px) {
  .sec_ttl {
    font-size: 60rem;
  }
}

.sub_ttl {
  font-size: 36px;
  font-weight: 500;
  line-height: 1.5;
}
@media screen and (max-width: 1900px) {
  .sub_ttl {
    font-size: 36rem;
  }
}
@media screen and (max-width: 768px) {
  .sub_ttl {
    font-size: 40rem;
  }
}

.fadein {
  opacity: 0;
  transition: all 1s ease-in-out;
}
.fadein.visible {
  opacity: 1;
}

.fadeup {
  opacity: 0;
  transition: all 1s ease-in-out;
  transform: translateY(70px);
}
.fadeup.visible {
  opacity: 1;
  transform: translateY(0);
}

.fadedown {
  opacity: 0;
  transition: all 1s ease-in-out;
  transform: translateY(-70px);
}
.fadedown.visible {
  opacity: 1;
  transform: translateY(0);
}

.fadeleft {
  opacity: 0;
  transition: all 1s ease-in-out;
  transform: translateX(-100px);
}
.fadeleft.visible {
  opacity: 1;
  transform: translateX(0);
}

.faderight {
  opacity: 0;
  transition: all 1s ease-in-out;
  transform: translateX(100px);
}
.faderight.visible {
  opacity: 1;
  transform: translateX(0);
}

section {
  position: relative;
  padding: 100px 0;
}
@media screen and (max-width: 1900px) {
  section {
    padding: 100rem 0;
  }
}
@media screen and (max-width: 768px) {
  section {
    padding: 120rem 40rem;
  }
}

.container {
  max-width: 1100px;
  margin: 0 auto;
}
@media screen and (max-width: 1900px) {
  .container {
    max-width: 1100rem;
  }
}
@media screen and (max-width: 768px) {
  .container {
    max-width: 100%;
  }
}

header {
  position: relative;
  background-color: #fff;
  padding: 20px 0;
  z-index: 1000;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
@media screen and (max-width: 1900px) {
  header {
    padding: 20rem 0;
  }
}
@media screen and (max-width: 768px) {
  header {
    position: fixed;
    justify-content: center;
    padding: 10rem 0;
  }
}
header .header-logo {
  width: 370px;
}
@media screen and (max-width: 1900px) {
  header .header-logo {
    width: 370rem;
  }
}
header .main_menu {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 100px;
  margin-left: 215px;
}
@media screen and (max-width: 1900px) {
  header .main_menu {
    gap: 100rem;
    margin-left: 215rem;
  }
}
@media screen and (max-width: 768px) {
  header .main_menu {
    display: none;
  }
}
header .main_menu li a.nav_link {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
header .main_menu li a.nav_link:hover span {
  text-decoration: underline;
}
header .main_menu li a.nav_link:hover span.txt_about {
  color: #F77171;
}
header .main_menu li a.nav_link:hover span.txt_guide {
  color: #2FB1EA;
}
header .main_menu li a.nav_link:hover span.txt_company {
  color: #45C445;
}
header .main_menu li a.nav_link:hover span.txt_news {
  color: #2CCEB7;
}
header .main_menu li a.nav_link img {
  width: 55px;
  height: 50px;
}
@media screen and (max-width: 1900px) {
  header .main_menu li a.nav_link img {
    width: 55rem;
    height: 50rem;
  }
}
header .main_menu li a.nav_link span {
  font-size: 18px;
  font-weight: 500;
  line-height: 1;
  margin-top: 15px;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 1900px) {
  header .main_menu li a.nav_link span {
    font-size: 18rem;
    margin-top: 15rem;
  }
}
header .sp_menu {
  position: fixed;
  display: flex;
  flex-direction: column;
  background: #fff;
  width: 100%;
  left: 0;
  top: 0;
  bottom: 0;
  margin-left: 0;
  z-index: -1;
  display: block;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 35rem;
  display: none;
}
header .sp_menu.is_open {
  display: flex;
}
header .sp_menu li a.nav_link {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
header .sp_menu li a.nav_link:hover span {
  text-decoration: underline;
}
header .sp_menu li a.nav_link:hover span.txt_about {
  color: #F77171;
}
header .sp_menu li a.nav_link:hover span.txt_guide {
  color: #2FB1EA;
}
header .sp_menu li a.nav_link:hover span.txt_company {
  color: #45C445;
}
header .sp_menu li a.nav_link:hover span.txt_news {
  color: #2CCEB7;
}
header .sp_menu li a.nav_link img {
  width: 90rem;
  height: auto;
}
header .sp_menu li a.nav_link span {
  font-size: 24rem;
  font-weight: 500;
  line-height: 1;
  margin-top: 10rem;
  transition: all 0.3s ease-in-out;
}
header .fixed_btn {
  position: fixed;
  top: 50px;
  right: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: flex-end;
}
@media screen and (max-width: 1900px) {
  header .fixed_btn {
    top: 50rem;
  }
}
@media screen and (max-width: 768px) {
  header .fixed_btn {
    bottom: 0;
    width: 100%;
    top: unset;
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}
header .fixed_btn .btn {
  padding: 20px 50px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  border-bottom-left-radius: 999px;
  border-top-left-radius: 999px;
}
@media screen and (max-width: 1900px) {
  header .fixed_btn .btn {
    padding: 20rem 50rem;
  }
}
@media screen and (max-width: 768px) {
  header .fixed_btn .btn {
    border-radius: 0;
    padding: 20rem;
    justify-content: center;
  }
}
header .fixed_btn .btn img {
  width: 33px;
}
@media screen and (max-width: 1900px) {
  header .fixed_btn .btn img {
    width: 33rem;
  }
}
header .fixed_btn .btn svg {
  width: 34px;
  height: 36px;
}
@media screen and (max-width: 1900px) {
  header .fixed_btn .btn svg {
    width: 34rem;
    height: 36rem;
  }
}
header .fixed_btn .btn span {
  font-size: 26px;
  font-weight: 500;
  line-height: 1;
  color: white;
  margin-left: 10px;
  margin-bottom: -5px;
}
@media screen and (max-width: 1900px) {
  header .fixed_btn .btn span {
    font-size: 26rem;
    margin-left: 10rem;
    margin-bottom: -5rem;
  }
}
header .fixed_btn .btn.btn_booking {
  background-color: #F77171;
  border: 1px solid #F77171;
}
header .fixed_btn .btn.btn_booking:hover {
  background-color: #FFFFFF;
}
header .fixed_btn .btn.btn_booking:hover span {
  color: #F77171;
}
header .fixed_btn .btn.btn_booking:hover svg path {
  fill: #F77171;
}
header .fixed_btn .btn.btn_booking:hover svg path[fill="#06C755"] {
  fill: #F77171;
}
header .fixed_btn .btn.btn_booking:hover svg path[fill=white] {
  fill: #fff;
}
header .fixed_btn .btn.btn_recruit {
  background-color: #45C445;
  border: 1px solid #45C445;
  margin-top: 20px;
}
@media screen and (max-width: 1900px) {
  header .fixed_btn .btn.btn_recruit {
    margin-top: 20rem;
  }
}
header .fixed_btn .btn.btn_recruit:hover {
  background-color: #FFFFFF;
}
header .fixed_btn .btn.btn_recruit:hover span {
  color: #45C445;
}
header .fixed_btn .btn.btn_recruit:hover svg path {
  fill: #45C445;
}
header .hamburger {
  display: none;
}
@media screen and (max-width: 768px) {
  header .hamburger {
    display: block;
    position: absolute;
    z-index: 10;
    width: 52rem;
    height: 52rem;
    cursor: pointer;
    top: 50%;
    right: 20rem;
    transform: translateY(-50%);
  }
  header .hamburger span {
    display: block;
    width: 100%;
    height: 3px;
    border-radius: 999px;
    background-color: #F77171;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    margin: auto;
    transition: all 0.3s ease-in-out;
  }
  header .hamburger span.bar1 {
    transform: translateY(-15rem);
  }
  header .hamburger span.bar3 {
    transform: translateY(15rem);
  }
  header .hamburger.is_open .bar1 {
    transform: translateY(0) rotate(405deg);
  }
  header .hamburger.is_open .bar3 {
    transform: translateY(0) rotate(495deg);
  }
  header .hamburger.is_open .bar2 {
    display: none;
  }
}

.t_fv {
  position: relative;
  padding-bottom: 125px;
}
@media screen and (max-width: 1900px) {
  .t_fv {
    padding-bottom: 125rem;
  }
}
@media screen and (max-width: 768px) {
  .t_fv {
    margin-top: 130rem;
  }
}
.t_fv .main-slider {
  position: relative;
  width: 100%;
  height: 700px;
  max-width: 1400px;
  overflow: hidden;
  -webkit-mask-image: url(../img/mask_main.svg);
          mask-image: url(../img/mask_main.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: 100%;
          mask-size: 100%;
  margin: 0 auto;
  margin-top: 20px;
}
@media screen and (max-width: 1900px) {
  .t_fv .main-slider {
    max-width: 1400rem;
    height: 700rem;
    margin-top: 20rem;
  }
}
@media screen and (max-width: 768px) {
  .t_fv .main-slider {
    max-width: 100%;
    height: 1040rem;
    -webkit-mask-image: url("../img/t_fv_mask.svg");
            mask-image: url("../img/t_fv_mask.svg");
  }
}
.t_fv .main-slider .m_slide {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0;
  transition: all 1.5s ease-in-out;
}
.t_fv .main-slider .m_slide.active {
  opacity: 1;
}
.t_fv .img_banner {
  width: 662px;
  top: 30px;
  left: 75px;
  position: absolute;
}
@media screen and (max-width: 1900px) {
  .t_fv .img_banner {
    width: 662rem;
    top: 30rem;
    left: 75rem;
  }
}
@media screen and (max-width: 768px) {
  .t_fv .img_banner {
    width: 350rem;
    top: 0;
    left: 0;
  }
}
.t_fv .shapes {
  position: absolute;
  top: 0;
  right: 0;
}
.t_fv .shapes svg {
  width: 100%;
  height: 100%;
}
.t_fv .shapes .shape.shape1 {
  position: absolute;
  width: 152px;
  height: 158px;
  top: 26px;
  right: 360px;
}
@media screen and (max-width: 1900px) {
  .t_fv .shapes .shape.shape1 {
    width: 152rem;
    height: 158rem;
    top: 26rem;
    right: 360rem;
  }
}
@media screen and (max-width: 768px) {
  .t_fv .shapes .shape.shape1 {
    top: 0;
    right: 50rem;
  }
}
.t_fv .shapes .shape.shape2 {
  width: 108px;
  height: 85px;
  top: 200px;
  right: 300px;
  position: absolute;
  animation-delay: 0.3s;
}
@media screen and (max-width: 1900px) {
  .t_fv .shapes .shape.shape2 {
    width: 108rem;
    height: 85rem;
    top: 200rem;
    right: 300rem;
  }
}
@media screen and (max-width: 768px) {
  .t_fv .shapes .shape.shape2 {
    right: 0;
    top: 150rem;
  }
}
.t_fv .shapes .shape.shape3 {
  position: absolute;
  width: 103px;
  height: 105px;
  top: 420px;
  right: 220px;
  animation-delay: 0.5s;
}
@media screen and (max-width: 1900px) {
  .t_fv .shapes .shape.shape3 {
    width: 103rem;
    height: 105rem;
    top: 420rem;
    right: 220rem;
  }
}
@media screen and (max-width: 768px) {
  .t_fv .shapes .shape.shape3 {
    top: 750rem;
    right: 10rem;
  }
}
.t_fv .shapes .shape.shape4 {
  position: absolute;
  width: 193px;
  height: 152px;
  top: 590px;
  right: 165px;
  animation-delay: 0.5s;
}
@media screen and (max-width: 1900px) {
  .t_fv .shapes .shape.shape4 {
    width: 193rem;
    height: 152rem;
    top: 590rem;
    right: 165rem;
  }
}
@media screen and (max-width: 768px) {
  .t_fv .shapes .shape.shape4 {
    top: 824rem;
    right: 50rem;
  }
}
.t_fv .main_banner_text {
  position: absolute;
  top: 110px;
  right: 90px;
  font-size: 28px;
  writing-mode: vertical-lr;
  transform: rotate(13deg);
  padding: 5px 15px;
  border: 1px solid black;
  border-top: none;
  border-bottom: none;
}
@media screen and (max-width: 1900px) {
  .t_fv .main_banner_text {
    top: 110rem;
    right: 90rem;
    font-size: 28rem;
    padding: 5rem 15rem;
  }
}
@media screen and (max-width: 768px) {
  .t_fv .main_banner_text {
    bottom: 30rem;
    top: unset;
    right: 50rem;
  }
}
.t_fv .scroll-div {
  position: absolute;
  top: 568px;
  right: 390px;
  width: 340px;
  height: auto;
}
@media screen and (max-width: 1900px) {
  .t_fv .scroll-div {
    top: 568rem;
    right: 390rem;
    width: 340rem;
  }
}
@media screen and (max-width: 768px) {
  .t_fv .scroll-div {
    top: 820rem;
    left: 0;
    right: unset;
    width: 280rem;
  }
}
.t_fv .scroll-div span {
  font-size: 38px;
  font-weight: 500;
  transform: rotate(5deg);
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  position: absolute;
  top: 45px;
  left: 102px;
  line-height: 1.3;
}
@media screen and (max-width: 1900px) {
  .t_fv .scroll-div span {
    font-size: 38rem;
    top: 45rem;
    left: 102rem;
  }
}
@media screen and (max-width: 768px) {
  .t_fv .scroll-div span {
    font-size: 24rem;
  }
}
.t_fv .scroll-div .arw {
  width: 33px;
  height: auto;
  position: absolute;
  top: 160px;
  left: 130px;
  right: 0;
  animation: s_scroll 1s infinite;
}
@media screen and (max-width: 1900px) {
  .t_fv .scroll-div .arw {
    width: 33rem;
    top: 160rem;
    left: 130rem;
  }
}
@media screen and (max-width: 768px) {
  .t_fv .scroll-div .arw {
    width: 24rem;
    top: 110rem;
    left: 115rem;
  }
}
.t_fv .scroll-div .arw svg {
  width: 33px;
  height: 41px;
}
@media screen and (max-width: 1900px) {
  .t_fv .scroll-div .arw svg {
    width: 33rem;
    height: 41rem;
  }
}
@media screen and (max-width: 768px) {
  .t_fv .scroll-div .arw svg {
    width: 24rem;
    height: 35rem;
  }
}
.t_fv .usable_time {
  width: 720px;
  height: auto;
  border-top-right-radius: 30px;
  border-bottom-right-radius: 30px;
  background-color: rgba(47, 177, 234, 0.8);
  padding: 24px 50px 24px 142px;
  color: white;
  position: absolute;
  bottom: 60px;
  left: 0;
}
@media screen and (max-width: 1900px) {
  .t_fv .usable_time {
    bottom: 60rem;
    width: 720rem;
    border-top-right-radius: 30rem;
    border-bottom-right-radius: 30rem;
    padding: 24rem 50rem 24rem 142rem;
  }
}
@media screen and (max-width: 768px) {
  .t_fv .usable_time {
    position: relative;
    bottom: -50rem;
    width: 75%;
    padding: 30rem;
  }
}
.t_fv .usable_time .div_ttl {
  font-size: 24px;
  margin-bottom: 15px;
}
@media screen and (max-width: 1900px) {
  .t_fv .usable_time .div_ttl {
    font-size: 24rem;
    margin-bottom: 15rem;
  }
}
@media screen and (max-width: 768px) {
  .t_fv .usable_time .div_ttl {
    font-size: 32rem;
  }
}
.t_fv .usable_time .div_ttl span.sm {
  font-size: 18px;
}
@media screen and (max-width: 1900px) {
  .t_fv .usable_time .div_ttl span.sm {
    font-size: 18rem;
  }
}
@media screen and (max-width: 768px) {
  .t_fv .usable_time .div_ttl span.sm {
    font-size: 24rem;
  }
}
.t_fv .usable_time p {
  font-size: 18px;
}
@media screen and (max-width: 1900px) {
  .t_fv .usable_time p {
    font-size: 18rem;
  }
}
@media screen and (max-width: 768px) {
  .t_fv .usable_time p {
    margin-top: 20rem;
    font-size: 24rem;
  }
  .t_fv .usable_time p:last-child {
    margin-top: 0;
  }
}

@keyframes s_scroll {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(10px);
  }
}
.t_concept {
  background: url(../img/sec_bg.png) no-repeat center bottom;
  background-size: 100% 100%;
  background-position: bottom;
}
.t_concept .container .ttl_wrap {
  width: -moz-fit-content;
  width: fit-content;
  margin: auto;
  position: relative;
  z-index: 5;
  padding: 30px 0;
}
@media screen and (max-width: 1900px) {
  .t_concept .container .ttl_wrap {
    padding: 30rem 0;
  }
}
.t_concept .container .ttl_wrap .outlined_text {
  font-size: 104px;
  font-weight: 500;
  color: #fff;
  line-height: 1;
  text-shadow: -1px -1px 0 #2FB1EA, 1px 1px 0 #2fb1ea, 1px -1px 0 #2fb1ea, -1px 1px 0 #2fb1ea;
  position: absolute;
  z-index: -1;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  opacity: 0.5;
}
@media screen and (max-width: 1900px) {
  .t_concept .container .ttl_wrap .outlined_text {
    font-size: 104rem;
  }
}
.t_concept .container .ttl_wrap span {
  font-size: 30px;
  font-weight: 500;
  line-height: 1;
  display: block;
}
@media screen and (max-width: 1900px) {
  .t_concept .container .ttl_wrap span {
    font-size: 30rem;
  }
}
@media screen and (max-width: 768px) {
  .t_concept .container .ttl_wrap span {
    font-size: 36rem;
  }
}
.t_concept .container .ttl_wrap h2 {
  line-height: 1;
}
.t_concept .container .concept_main {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 74px;
  margin-left: -188px;
}
@media screen and (max-width: 1900px) {
  .t_concept .container .concept_main {
    gap: 74rem;
    margin-left: -180rem;
  }
}
@media screen and (max-width: 768px) {
  .t_concept .container .concept_main {
    display: block;
    margin-left: 0;
    margin-top: 80rem;
  }
}
.t_concept .container .concept_main .img-div {
  width: 664px;
  -webkit-mask-image: url(../img/t_s1_img_mask.svg);
          mask-image: url(../img/t_s1_img_mask.svg);
  -webkit-mask-size: 100%;
          mask-size: 100%;
}
@media screen and (max-width: 1900px) {
  .t_concept .container .concept_main .img-div {
    width: 664rem;
  }
}
@media screen and (max-width: 768px) {
  .t_concept .container .concept_main .concept_text {
    margin-top: 70rem;
    text-align: center;
  }
}
.t_concept .container .concept_main .concept_text h3 {
  font-size: 52px;
  font-weight: 500;
  line-height: 1.5;
}
@media screen and (max-width: 1900px) {
  .t_concept .container .concept_main .concept_text h3 {
    font-size: 52rem;
  }
}
@media screen and (max-width: 768px) {
  .t_concept .container .concept_main .concept_text h3 {
    font-size: 60rem;
  }
}
.t_concept .container .concept_main .concept_text p.u_txt {
  color: #2FB1EA;
  margin-top: 30px;
  line-height: 2;
}
@media screen and (max-width: 1900px) {
  .t_concept .container .concept_main .concept_text p.u_txt {
    margin-top: 30rem;
  }
}

.ttl_wrap {
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
  z-index: 5;
  padding: 30px 0;
  margin: 0 auto;
}
@media screen and (max-width: 1900px) {
  .ttl_wrap {
    padding: 30rem 0;
  }
}
.ttl_wrap .sec_ttl-sub {
  font-size: 32px;
  font-weight: 500;
  line-height: 1.5;
  display: block;
}
@media screen and (max-width: 1900px) {
  .ttl_wrap .sec_ttl-sub {
    font-size: 32rem;
  }
}
@media screen and (max-width: 768px) {
  .ttl_wrap .sec_ttl-sub {
    font-size: 36rem;
  }
}
.ttl_wrap h2 {
  line-height: 1.5;
}
.ttl_wrap .en {
  font-size: 28px;
  font-weight: 500;
  line-height: 1;
  color: #2FB1EA;
  text-align: center;
  width: 100%;
  display: block;
}
@media screen and (max-width: 1900px) {
  .ttl_wrap .en {
    font-size: 28rem;
  }
}
@media screen and (max-width: 768px) {
  .ttl_wrap .en {
    font-size: 34rem;
  }
}

.t_guide {
  background: url("../img/t_guide_bg.png") no-repeat center center;
  background-position: top;
  background-size: contain;
  padding-top: 50px;
}
@media screen and (max-width: 1900px) {
  .t_guide {
    padding-top: 50rem;
  }
}
@media screen and (max-width: 768px) {
  .t_guide {
    background: url("../img/t_guide_bg-sp.png") no-repeat top center;
    background-size: cover;
    background-position: top;
    padding-top: 150rem;
  }
}
.t_guide .container {
  margin: 0 auto;
  width: 100%;
}
.t_guide .container .guide_main {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .t_guide .container .guide_main {
    display: block;
  }
}
.t_guide .container .guide_main .aside .ttl_wrap {
  color: #FFFFFF;
}
.t_guide .container .guide_main .aside .btn-blue {
  font-size: 23px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 400px;
  padding: 20px;
  background-color: #FFFFFF;
  border-radius: 999px;
  border: 1px solid #FFFFFF;
  margin: 0 auto;
  margin-top: 15px;
}
@media screen and (max-width: 1900px) {
  .t_guide .container .guide_main .aside .btn-blue {
    font-size: 23rem;
    width: 400rem;
    padding: 20rem;
    margin-top: 15rem;
  }
}
@media screen and (max-width: 768px) {
  .t_guide .container .guide_main .aside .btn-blue {
    font-size: 30rem;
    width: 90%;
    position: absolute;
    top: 800rem;
    left: 0;
    right: 0;
  }
}
.t_guide .container .guide_main .aside .btn-blue:hover {
  background-color: #2FB1EA;
  color: #FFFFFF;
}
.t_guide .container .guide_main .aside .btn-blue:hover .icon_arw {
  border: 1px solid #FFFFFF;
}
.t_guide .container .guide_main .aside .btn-blue:hover .icon_arw svg {
  transform: translateX(0.5vw);
}
.t_guide .container .guide_main .aside .btn-blue .icon_arw {
  width: 42px;
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  background: #2FB1EA;
  border: 1px solid #2FB1EA;
  border-radius: 999px;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
}
@media screen and (max-width: 1900px) {
  .t_guide .container .guide_main .aside .btn-blue .icon_arw {
    right: 20rem;
    width: 42rem;
    height: 42rem;
  }
}
@media screen and (max-width: 768px) {
  .t_guide .container .guide_main .aside .btn-blue .icon_arw {
    width: 50rem;
    height: 50rem;
  }
}
.t_guide .container .guide_main .aside .btn-blue .icon_arw svg {
  width: 15px;
  height: 15px;
}
@media screen and (max-width: 1900px) {
  .t_guide .container .guide_main .aside .btn-blue .icon_arw svg {
    width: 15rem;
    height: 15rem;
  }
}
@media screen and (max-width: 768px) {
  .t_guide .container .guide_main .aside .btn-blue .icon_arw svg {
    width: 20rem;
    height: 20rem;
  }
}
@media screen and (max-width: 768px) {
  .t_guide .container .guide_main .guide_main-text {
    margin-bottom: 250rem;
  }
}
.t_guide .container .guide_main .guide_main-text p {
  color: #FFFFFF;
  line-height: 1.8;
}
.t_guide .img-slider {
  margin-top: 90px;
  overflow: hidden;
  transition: none;
}
.t_guide .img-slider * {
  transition: none;
}
@media screen and (max-width: 1900px) {
  .t_guide .img-slider {
    margin-top: 90rem;
  }
}
.t_guide .img-slider .slide_wrapper {
  display: flex;
}
.t_guide .img-slider .slide_wrapper img {
  transition: transform 0.3s linear;
  transition-delay: 0.5s;
}

.slick-slide {
  padding: 0 10px;
}
@media screen and (max-width: 1900px) {
  .slick-slide {
    padding: 0 10rem;
  }
}

.t_movie {
  background-color: #D5F0FA;
}
.t_movie::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 66px;
  top: -66px;
  left: 0;
  background: url("../img/mm_before-frame.svg") no-repeat center center;
  background-size: cover;
  background-position: center;
}
@media screen and (max-width: 1900px) {
  .t_movie::before {
    height: 66rem;
    top: -66rem;
  }
}
.t_movie .before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
}
.t_movie .container .ttl_wrap {
  padding-top: 100px;
}
@media screen and (max-width: 1900px) {
  .t_movie .container .ttl_wrap {
    padding-top: 100rem;
  }
}
.t_movie .container .video-div {
  margin: 70px auto;
  width: 100%;
  position: relative;
  z-index: 5;
}
@media screen and (max-width: 1900px) {
  .t_movie .container .video-div {
    margin: 70rem auto;
    height: 597rem;
  }
}
@media screen and (max-width: 768px) {
  .t_movie .container .video-div {
    height: auto;
    margin: 50rem auto;
  }
}
.t_movie .container .video-div .video {
  width: 100%;
  aspect-ratio: 16/9;
}
.t_movie .container .video-div .video iframe {
  width: 100%;
  height: 100%;
}
.t_movie .container .video-div .bg-div {
  position: absolute;
  z-index: -1;
  width: 1330px;
  height: 770px;
  top: -85px;
  left: -115px;
}
@media screen and (max-width: 1900px) {
  .t_movie .container .video-div .bg-div {
    width: 1330rem;
    height: 770rem;
    left: -115rem;
    top: -85rem;
  }
}
@media screen and (max-width: 768px) {
  .t_movie .container .video-div .bg-div {
    width: 110%;
    height: auto;
    left: -5%;
    top: -8%;
  }
}
.t_movie .container .shapes {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.t_movie .container .shapes .shape_tortoise {
  width: -moz-fit-content;
  width: fit-content;
  height: auto;
  position: absolute;
  left: 170px;
  top: 90px;
}
@media screen and (max-width: 1900px) {
  .t_movie .container .shapes .shape_tortoise {
    left: 170rem;
    top: 90rem;
  }
}
@media screen and (max-width: 768px) {
  .t_movie .container .shapes .shape_tortoise {
    left: 30rem;
    top: 50rem;
  }
}
.t_movie .container .shapes .shape_tortoise svg {
  width: 182px;
  height: 190px;
}
@media screen and (max-width: 1900px) {
  .t_movie .container .shapes .shape_tortoise svg {
    width: 182rem;
    height: 190rem;
  }
}
.t_movie .container .shapes .shape_seaweed {
  width: -moz-fit-content;
  width: fit-content;
  height: auto;
  position: absolute;
  top: 195px;
  right: 185px;
}
@media screen and (max-width: 1900px) {
  .t_movie .container .shapes .shape_seaweed {
    top: 195rem;
    right: 185rem;
  }
}
@media screen and (max-width: 768px) {
  .t_movie .container .shapes .shape_seaweed {
    top: 50rem;
    right: 30rem;
  }
}
.t_movie .container .shapes .shape_seaweed svg {
  width: 132px;
  height: 180px;
}
@media screen and (max-width: 1900px) {
  .t_movie .container .shapes .shape_seaweed svg {
    width: 132rem;
    height: 180rem;
  }
}

.features {
  background-color: #D5F0FA;
}
.features .feature_main {
  margin-top: 150px;
  display: flex;
  flex-direction: column;
  gap: 130px;
}
@media screen and (max-width: 1900px) {
  .features .feature_main {
    margin-top: 150rem;
    gap: 130rem;
  }
}
@media screen and (max-width: 768px) {
  .features .feature_main {
    gap: 200rem;
    margin-top: 50rem;
  }
}
.features .feature_main .feature-item {
  position: relative;
}
.features .feature_main .feature-item .container {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 50px;
}
@media screen and (max-width: 1900px) {
  .features .feature_main .feature-item .container {
    gap: 50rem;
  }
}
@media screen and (max-width: 768px) {
  .features .feature_main .feature-item .container {
    display: block;
  }
}
.features .feature_main .feature-item .container .img-div {
  width: 531px;
  height: auto;
  -webkit-mask-image: url("../img/t_s1_img_mask.svg");
          mask-image: url("../img/t_s1_img_mask.svg");
  -webkit-mask-size: 100%;
          mask-size: 100%;
  position: relative;
  z-index: 15;
}
@media screen and (max-width: 1900px) {
  .features .feature_main .feature-item .container .img-div {
    width: 531rem;
  }
}
@media screen and (max-width: 768px) {
  .features .feature_main .feature-item .container .img-div {
    width: 100%;
    height: auto;
  }
}
.features .feature_main .feature-item .container .feature-text {
  position: relative;
  z-index: 10;
}
@media screen and (max-width: 768px) {
  .features .feature_main .feature-item .container .feature-text {
    margin-top: 50rem;
  }
}
.features .feature_main .feature-item .container .feature-text h3 {
  color: #2FB1EA;
  margin-top: 15px;
}
@media screen and (max-width: 1900px) {
  .features .feature_main .feature-item .container .feature-text h3 {
    margin-top: 15rem;
  }
}
@media screen and (max-width: 768px) {
  .features .feature_main .feature-item .container .feature-text h3 {
    text-align: center;
  }
}
.features .feature_main .feature-item .container .feature-text p.s_txt {
  margin-top: 30px;
}
@media screen and (max-width: 1900px) {
  .features .feature_main .feature-item .container .feature-text p.s_txt {
    margin-top: 30rem;
  }
}
@media screen and (max-width: 768px) {
  .features .feature_main .feature-item .container .feature-text p.s_txt {
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  .features .feature_main .feature-item .container .feature-text p.m_txt {
    text-align: center;
  }
}
.features .feature_main .feature-item .container .feature-text::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: -110px;
  left: -225px;
  width: 840px;
  height: 545px;
  background: url("../img/msg_frm.svg") no-repeat center center;
  background-position: center;
  background-size: cover;
}
@media screen and (max-width: 1900px) {
  .features .feature_main .feature-item .container .feature-text::before {
    width: 840rem;
    height: 545rem;
    top: -110rem;
    left: -225rem;
  }
}
@media screen and (max-width: 768px) {
  .features .feature_main .feature-item .container .feature-text::before {
    width: 1000rem;
    height: 700rem;
    left: -160rem;
    top: -155rem;
  }
}
.features .feature_main .feature-item .shapes {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  z-index: 20;
}
.features .feature_main .feature-item .shapes .shape_coral svg {
  width: 192px;
  height: 152px;
  position: absolute;
  bottom: 0;
  left: 400px;
  z-index: 20;
}
@media screen and (max-width: 1900px) {
  .features .feature_main .feature-item .shapes .shape_coral svg {
    width: 192rem;
    height: 152rem;
    bottom: 0;
    left: 400rem;
  }
}
@media screen and (max-width: 768px) {
  .features .feature_main .feature-item .shapes .shape_coral svg {
    bottom: unset;
    top: 450rem;
    left: 450rem;
  }
}
.features .feature_main .feature-item .shapes .shape_fishes svg {
  position: absolute;
  width: 424px;
  height: 270px;
  right: -20px;
  top: -310px;
}
@media screen and (max-width: 1900px) {
  .features .feature_main .feature-item .shapes .shape_fishes svg {
    width: 424rem;
    height: 270rem;
    right: -20rem;
    top: -310rem;
  }
}
@media screen and (max-width: 768px) {
  .features .feature_main .feature-item .shapes .shape_fishes svg {
    top: -500rem;
  }
}
.features .feature_main .feature-item .shapes .shape_fish svg {
  width: 152px;
  height: 126px;
  position: absolute;
  bottom: 0;
  left: 200px;
}
@media screen and (max-width: 1900px) {
  .features .feature_main .feature-item .shapes .shape_fish svg {
    width: 152rem;
    height: 126rem;
    bottom: 0;
    left: 200rem;
  }
}
@media screen and (max-width: 768px) {
  .features .feature_main .feature-item .shapes .shape_fish svg {
    bottom: unset;
    top: 500rem;
    left: 0rem;
    z-index: 20;
  }
}
.features .feature_main .feature-item .shapes .shape_starfish svg {
  width: 168px;
  height: 170px;
  position: absolute;
  z-index: 20;
  bottom: 30px;
  right: 400px;
}
@media screen and (max-width: 1900px) {
  .features .feature_main .feature-item .shapes .shape_starfish svg {
    width: 168rem;
    height: 170rem;
    bottom: 30rem;
    right: 400rem;
  }
}
@media screen and (max-width: 768px) {
  .features .feature_main .feature-item .shapes .shape_starfish svg {
    top: 430rem;
    right: 0;
  }
}
.features .feature_main .feature-item .shapes .shape_jellyfish svg {
  position: absolute;
  right: 80px;
  top: 300px;
  width: 208px;
  height: 376px;
}
@media screen and (max-width: 1900px) {
  .features .feature_main .feature-item .shapes .shape_jellyfish svg {
    right: 80rem;
    top: 300rem;
    width: 208rem;
    height: 376rem;
  }
}
@media screen and (max-width: 768px) {
  .features .feature_main .feature-item .shapes .shape_jellyfish svg {
    bottom: unset;
    top: -200rem;
    right: unset;
    left: 0;
  }
}
.features .feature_main .feature-item .shapes .shape_conch svg {
  position: absolute;
  z-index: 20;
  width: 172px;
  height: 110px;
  bottom: 0;
  left: 780px;
}
@media screen and (max-width: 1900px) {
  .features .feature_main .feature-item .shapes .shape_conch svg {
    width: 172rem;
    height: 110rem;
    bottom: 0;
    left: 780rem;
  }
}
.features .feature_main .feature-item .shapes .shape_fish2 svg {
  position: absolute;
  width: 280px;
  height: 131px;
  left: 129px;
  bottom: -130px;
}
@media screen and (max-width: 1900px) {
  .features .feature_main .feature-item .shapes .shape_fish2 svg {
    width: 280rem;
    height: 131rem;
    left: 129rem;
    bottom: -130rem;
  }
}
@media screen and (max-width: 768px) {
  .features .feature_main .feature-item .shapes .shape_fish2 svg {
    bottom: unset;
    z-index: 10;
    top: -80rem;
    left: 0;
  }
}
.features .feature_main .feature-item.feature2 .container {
  flex-direction: row-reverse;
}
@media screen and (max-width: 768px) {
  .features .feature_main .feature-item.feature2 .container {
    display: block;
  }
}
.features .feature_main .feature-item.feature2 .container .feature-text::before {
  transform: scaleX(-1);
  left: unset;
  right: -200px;
}
@media screen and (max-width: 1900px) {
  .features .feature_main .feature-item.feature2 .container .feature-text::before {
    right: -200rem;
  }
}
.features .mega_link .container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 45px;
  margin-top: 180px;
}
@media screen and (max-width: 1900px) {
  .features .mega_link .container {
    gap: 45rem;
    margin-top: 180rem;
  }
}
@media screen and (max-width: 768px) {
  .features .mega_link .container {
    display: flex;
    flex-direction: column;
    gap: 50rem;
  }
}
.features .mega_link .container .btn_mega {
  position: relative;
}
.features .mega_link .container .btn_mega:hover {
  opacity: 0.8;
}
.features .mega_link .container .btn_mega:hover .link_btn svg path {
  transform: translateX(1vw);
}
.features .mega_link .container .btn_mega .link-main {
  color: #FFFFFF;
  margin-left: 200px;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
@media screen and (max-width: 1900px) {
  .features .mega_link .container .btn_mega .link-main {
    margin-left: 200rem;
  }
}
@media screen and (max-width: 768px) {
  .features .mega_link .container .btn_mega .link-main {
    margin-left: 250rem;
  }
}
.features .mega_link .container .btn_mega .link_btn {
  position: absolute;
  bottom: 10px;
  right: 15px;
  z-index: 10;
}
@media screen and (max-width: 1900px) {
  .features .mega_link .container .btn_mega .link_btn {
    right: 15rem;
    bottom: 10rem;
  }
}
@media screen and (max-width: 768px) {
  .features .mega_link .container .btn_mega .link_btn {
    right: 20rem;
    bottom: 20rem;
  }
}
.features .mega_link .container .btn_mega .link_btn svg {
  width: 43px;
  height: 43px;
}
@media screen and (max-width: 1900px) {
  .features .mega_link .container .btn_mega .link_btn svg {
    width: 43rem;
    height: 43rem;
  }
}
@media screen and (max-width: 768px) {
  .features .mega_link .container .btn_mega .link_btn svg {
    width: 50rem;
    height: 50rem;
  }
}

.promo {
  background: url("../img/recruit_bg.png") no-repeat center center;
  background-position: center;
  background-size: cover;
  background-color: #d8f0fb;
  padding: 160px 0;
}
@media screen and (max-width: 1900px) {
  .promo {
    padding: 160rem 0;
  }
}
.promo .container {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 50px;
}
@media screen and (max-width: 1900px) {
  .promo .container {
    gap: 50rem;
  }
}
.promo .container .ttl_wrap {
  align-items: center;
  color: #fff;
  text-align: center;
}
.promo .container .btn_green {
  width: 400px;
  padding: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  background-color: white;
  border-radius: 999px;
  border: 1px solid #fff;
}
.promo .container .btn_green:hover {
  background-color: #45C445;
}
.promo .container .btn_green:hover svg span {
  color: #FFFFFF;
}
@media screen and (max-width: 1900px) {
  .promo .container .btn_green {
    width: 400rem;
    padding: 20rem;
  }
}
@media screen and (max-width: 768px) {
  .promo .container .btn_green {
    width: 90%;
    padding: 30rem;
  }
}
.promo .container .btn_green span {
  font-size: 23px;
  font-weight: 500;
  line-height: 1;
  color: #000000;
}
@media screen and (max-width: 1900px) {
  .promo .container .btn_green span {
    font-size: 23rem;
  }
}
@media screen and (max-width: 768px) {
  .promo .container .btn_green span {
    font-size: 30rem;
  }
}
.promo .container .btn_green svg {
  width: 43px;
  height: 43px;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
}
@media screen and (max-width: 1900px) {
  .promo .container .btn_green svg {
    width: 43rem;
    height: 43rem;
    left: unset;
    right: 15rem;
  }
}
@media screen and (max-width: 768px) {
  .promo .container .btn_green svg {
    width: 50rem;
    height: 50rem;
  }
}

.message {
  background: url("../img/t_bg_sea.png") no-repeat center center;
  background-position: center;
  background-size: cover;
  padding-bottom: 200px;
}
@media screen and (max-width: 1900px) {
  .message {
    padding-bottom: 200rem;
  }
}
.message.sub {
  background: none;
  background-color: #FFFFFF;
  padding-bottom: 100px;
}
@media screen and (max-width: 1900px) {
  .message.sub {
    padding-bottom: 100rem;
    padding-top: 0;
  }
}
.message.sub .container .msg_main {
  margin-top: 60px;
}
@media screen and (max-width: 1900px) {
  .message.sub .container .msg_main {
    margin-top: 60rem;
  }
}
.message.sub .container .msg_main .img-div {
  border-radius: 20px;
  overflow: hidden;
}
@media screen and (max-width: 1900px) {
  .message.sub .container .msg_main .img-div {
    border-radius: 20rem;
  }
}
@media screen and (max-width: 768px) {
  .message.sub .container .msg_main .img-div {
    border-radius: 30rem;
  }
}
.message .container .ttl_wrap {
  margin-left: 0;
  position: relative;
}
@media screen and (max-width: 768px) {
  .message .container .ttl_wrap {
    margin-left: auto;
  }
}
.message .container .shape {
  position: absolute;
  width: 113px;
  height: 66px;
  top: 40px;
  right: -150px;
}
@media screen and (max-width: 1900px) {
  .message .container .shape {
    position: absolute;
    width: 113rem;
    height: 66rem;
    top: 40rem;
    right: -150rem;
  }
}
.message .container .msg_main {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  margin: 30px 0;
  gap: 60px;
}
@media screen and (max-width: 1900px) {
  .message .container .msg_main {
    margin: 30rem 0;
    gap: 60rem;
  }
}
@media screen and (max-width: 768px) {
  .message .container .msg_main {
    flex-direction: column-reverse;
    margin-top: 50rem;
  }
}
.message .container .msg_main .txt-div {
  position: relative;
}
@media screen and (max-width: 768px) {
  .message .container .msg_main .txt-div .sub_ttl {
    text-align: center;
  }
}
.message .container .msg_main .txt-div .shape_crab {
  width: 84px;
  height: 82px;
  position: absolute;
  bottom: 20px;
  right: -150px;
}
@media screen and (max-width: 1900px) {
  .message .container .msg_main .txt-div .shape_crab {
    bottom: 20rem;
    right: -150rem;
    width: 84rem;
    height: 82rem;
  }
}
.message .container .msg_main .txt-div .shape_crab svg {
  width: 100%;
  height: 100%;
}
.message .container .msg_main .txt-div .s_txt {
  margin-top: 30px;
}
@media screen and (max-width: 1900px) {
  .message .container .msg_main .txt-div .s_txt {
    margin-top: 30rem;
  }
}
.message .container .msg_main .txt-div .name {
  text-align: right;
}
@media screen and (max-width: 768px) {
  .message .container .msg_main .txt-div .name {
    font-size: 24rem;
  }
}
.message .container .msg_main .img-div {
  width: 340px;
}
@media screen and (max-width: 1900px) {
  .message .container .msg_main .img-div {
    width: 340rem;
  }
}
@media screen and (max-width: 768px) {
  .message .container .msg_main .img-div {
    width: 100%;
  }
}
.message .container .btn_green {
  display: flex;
  width: 400px;
  border-radius: 999px;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  border: 1px solid #2FB1EA;
  padding: 20px;
  position: relative;
  margin: auto;
  margin-top: 100px;
}
@media screen and (max-width: 1900px) {
  .message .container .btn_green {
    width: 400rem;
    padding: 20rem;
    margin-top: 100rem;
  }
}
@media screen and (max-width: 768px) {
  .message .container .btn_green {
    width: 100%;
    padding: 30rem;
  }
}
.message .container .btn_green:hover {
  background-color: #2FB1EA;
  color: white;
}
.message .container .btn_green:hover svg path {
  transform: translateX(0.5vw);
}
.message .container .btn_green span {
  font-size: 23px;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 1900px) {
  .message .container .btn_green span {
    font-size: 23rem;
  }
}
@media screen and (max-width: 768px) {
  .message .container .btn_green span {
    font-size: 30rem;
  }
}
.message .container .btn_green svg {
  width: 43px;
  height: 43px;
  border-radius: 999px;
  border: 1px solid #FFFFFF;
  position: absolute;
  top: 50%;
  right: 25px;
  transform: translateY(-50%);
}
@media screen and (max-width: 1900px) {
  .message .container .btn_green svg {
    width: 43rem;
    height: 43rem;
    right: 25rem;
  }
}
@media screen and (max-width: 768px) {
  .message .container .btn_green svg {
    width: 50rem;
    height: 50rem;
  }
}

.map_faq {
  background-image: linear-gradient(to top, #2FB1EA, #2CCEB7);
  padding-bottom: 150px;
}
@media screen and (max-width: 1900px) {
  .map_faq {
    padding-bottom: 150rem;
  }
}
@media screen and (max-width: 768px) {
  .map_faq {
    padding-bottom: 350rem;
  }
}
.map_faq::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 72px;
  top: 0;
  left: 0;
  background: url("../img/frame_map.svg") no-repeat center center;
  background-size: cover;
  background-position: center;
  transform: translateY(-99%);
}
@media screen and (max-width: 1900px) {
  .map_faq::before {
    height: 72rem;
  }
}
.map_faq .container .map_div {
  position: relative;
  display: flex;
  gap: 62px;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .map_div {
    gap: 62rem;
  }
}
@media screen and (max-width: 768px) {
  .map_faq .container .map_div {
    display: block;
  }
}
.map_faq .container .map_div .jp_map {
  width: 367px;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .map_div .jp_map {
    width: 367rem;
  }
}
@media screen and (max-width: 768px) {
  .map_faq .container .map_div .jp_map {
    width: 100%;
  }
}
.map_faq .container .map_div .shapes {
  position: absolute;
  left: -250px;
  bottom: -330px;
  width: 208px;
  height: 376px;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .map_div .shapes {
    width: 208rem;
    height: 376rem;
    left: -250rem;
    bottom: -330rem;
  }
}
@media screen and (max-width: 768px) {
  .map_faq .container .map_div .shapes {
    left: unset;
    right: 0;
    bottom: 600rem;
  }
}
.map_faq .container .map_div .shapes svg {
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 768px) {
  .map_faq .container .map_div .info {
    margin-top: 50rem;
  }
}
.map_faq .container .map_div .info .s_txt {
  color: white;
}
.map_faq .container .map_div .info .g_map {
  width: 560px;
  height: 235px;
  border-radius: 30px;
  overflow: hidden;
  margin-top: 50px;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .map_div .info .g_map {
    width: 560rem;
    height: 235rem;
    border-radius: 30rem;
    margin-top: 50rem;
  }
}
@media screen and (max-width: 768px) {
  .map_faq .container .map_div .info .g_map {
    width: 100%;
    height: 400rem;
  }
}
.map_faq .container .map_div .info .g_map iframe {
  width: 100%;
  height: 100%;
}
.map_faq .container .faq_div {
  color: white;
  margin-top: 290px;
  position: relative;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .faq_div {
    margin-top: 290rem;
  }
}
@media screen and (max-width: 768px) {
  .map_faq .container .faq_div {
    margin-top: 150rem;
  }
}
.map_faq .container .faq_div .ttl_wrap .en {
  color: white;
}
.map_faq .container .faq_div .faq-main .faq-item {
  margin-top: 30px;
  border-radius: 20px;
  background-color: white;
  padding: 30px;
  width: 100%;
  height: auto;
  cursor: pointer;
  position: relative;
  z-index: 10;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .faq_div .faq-main .faq-item {
    margin-top: 30rem;
    border-radius: 20rem;
    padding: 30rem;
    gap: 30rem;
  }
}
@media screen and (max-width: 768px) {
  .map_faq .container .faq_div .faq-main .faq-item {
    margin-top: 35rem;
  }
}
.map_faq .container .faq_div .faq-main .faq-item .arrow {
  position: absolute;
  right: 30px;
  top: 30px;
  width: 20px;
  height: 20px;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .faq_div .faq-main .faq-item .arrow {
    right: 30rem;
    top: 30rem;
    width: 20rem;
    height: 20rem;
  }
}
@media screen and (max-width: 768px) {
  .map_faq .container .faq_div .faq-main .faq-item .arrow {
    width: 30rem;
    height: 30rem;
  }
}
.map_faq .container .faq_div .faq-main .faq-item .arrow .bar1,
.map_faq .container .faq_div .faq-main .faq-item .arrow .bar2 {
  width: 100%;
  height: 3px;
  background-color: black;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  transition: all 0.3s ease-in-out;
}
.map_faq .container .faq_div .faq-main .faq-item .arrow .bar1 {
  transform: rotate(90deg);
}
.map_faq .container .faq_div .faq-main .faq-item .arrow.is_open .bar1 {
  transform: rotate(360deg);
}
.map_faq .container .faq_div .faq-main .faq-item .q_div,
.map_faq .container .faq_div .faq-main .faq-item .a_div {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
@media screen and (max-width: 768px) {
  .map_faq .container .faq_div .faq-main .faq-item .q_div,
  .map_faq .container .faq_div .faq-main .faq-item .a_div {
    align-items: flex-start;
  }
}
.map_faq .container .faq_div .faq-main .faq-item .q_div .sign,
.map_faq .container .faq_div .faq-main .faq-item .a_div .sign {
  font-size: 28px;
  font-weight: bold;
  line-height: 1;
  color: #2FB1EA;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .faq_div .faq-main .faq-item .q_div .sign,
  .map_faq .container .faq_div .faq-main .faq-item .a_div .sign {
    font-size: 28rem;
  }
}
@media screen and (max-width: 768px) {
  .map_faq .container .faq_div .faq-main .faq-item .q_div .sign,
  .map_faq .container .faq_div .faq-main .faq-item .a_div .sign {
    margin-top: 5rem;
  }
}
.map_faq .container .faq_div .faq-main .faq-item .q_div .q_txt,
.map_faq .container .faq_div .faq-main .faq-item .a_div .q_txt {
  margin-left: 5px;
  font-size: 21px;
  line-height: 1.5;
  font-weight: bold;
  color: #000000;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .faq_div .faq-main .faq-item .q_div .q_txt,
  .map_faq .container .faq_div .faq-main .faq-item .a_div .q_txt {
    font-size: 21rem;
    margin-left: 5rem;
  }
}
@media screen and (max-width: 768px) {
  .map_faq .container .faq_div .faq-main .faq-item .q_div .q_txt,
  .map_faq .container .faq_div .faq-main .faq-item .a_div .q_txt {
    font-size: 26rem;
    width: 91%;
  }
}
.map_faq .container .faq_div .faq-main .faq-item .a_div {
  align-items: flex-start;
  overflow: hidden;
  transition: height 0.3s ease-out;
  height: 0;
  padding-top: 20px;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .faq_div .faq-main .faq-item .a_div {
    padding-top: 20rem;
  }
}
.map_faq .container .faq_div .faq-main .faq-item .a_div .sign {
  color: #F77171;
}
.map_faq .container .faq_div .faq-main .faq-item .a_div .a_txt {
  font-size: 18px;
  line-height: 2;
  font-weight: bold;
  margin-left: 5px;
  color: #000000;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .faq_div .faq-main .faq-item .a_div .a_txt {
    font-size: 18rem;
    margin-left: 5rem;
  }
}
@media screen and (max-width: 768px) {
  .map_faq .container .faq_div .faq-main .faq-item .a_div .a_txt {
    font-size: 24rem;
    width: 92%;
  }
}
.map_faq .container .faq_div .shapes {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.map_faq .container .faq_div .shapes .shape_starfish-white {
  position: absolute;
  width: 152px;
  height: 158px;
  top: 40px;
  right: -150px;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .faq_div .shapes .shape_starfish-white {
    width: 152rem;
    height: 158rem;
    top: 40rem;
    right: -150rem;
  }
}
@media screen and (max-width: 768px) {
  .map_faq .container .faq_div .shapes .shape_starfish-white {
    right: unset;
    left: -30rem;
  }
}
.map_faq .container .faq_div .shapes .shape_conch-white {
  position: absolute;
  width: 108px;
  height: 85px;
  right: -210px;
  top: 195px;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .faq_div .shapes .shape_conch-white {
    width: 108rem;
    height: 85rem;
    right: -210rem;
    top: 195rem;
  }
}
@media screen and (max-width: 768px) {
  .map_faq .container .faq_div .shapes .shape_conch-white {
    right: -30rem;
    top: 120rem;
  }
}
.map_faq .container .insta_div {
  margin-top: 154px;
  background-color: #fff;
  border-radius: 30px;
  padding: 60px 40px;
  display: flex;
  position: relative;
  justify-content: space-between;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .insta_div {
    margin-top: 154rem;
    border-radius: 30rem;
    padding: 60rem 40rem;
  }
}
@media screen and (max-width: 768px) {
  .map_faq .container .insta_div {
    display: block;
    margin-top: 50rem;
  }
}
.map_faq .container .insta_div .insta {
  width: 520px;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .insta_div .insta {
    width: 520rem;
  }
}
@media screen and (max-width: 768px) {
  .map_faq .container .insta_div .insta {
    width: 100%;
  }
}
.map_faq .container .insta_div .insta .insta-info {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  padding: 0 20px;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .insta_div .insta .insta-info {
    padding: 0 20rem;
  }
}
.map_faq .container .insta_div .insta .insta-info .txt-div p.red {
  color: #F77171;
  font-size: 18px;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .insta_div .insta .insta-info .txt-div p.red {
    font-size: 18rem;
  }
}
@media screen and (max-width: 768px) {
  .map_faq .container .insta_div .insta .insta-info .txt-div p.red {
    font-size: 24rem;
  }
}
.map_faq .container .insta_div .insta .insta-info .txt-div h3 {
  font-size: 32px;
  font-weight: bold;
  line-height: 1;
  margin-top: 10px;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .insta_div .insta .insta-info .txt-div h3 {
    font-size: 32rem;
    margin-top: 10rem;
  }
}
@media screen and (max-width: 768px) {
  .map_faq .container .insta_div .insta .insta-info .txt-div h3 {
    font-size: 36rem;
    margin-top: 15rem;
  }
}
.map_faq .container .insta_div .insta .insta-info .btn-div {
  display: flex;
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .insta_div .insta .insta-info .btn-div {
    font-size: 16rem;
  }
}
@media screen and (max-width: 768px) {
  .map_faq .container .insta_div .insta .insta-info .btn-div {
    font-size: 24rem;
  }
}
.map_faq .container .insta_div .insta .insta-info .btn-div svg {
  width: 18px;
  height: 17px;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .insta_div .insta .insta-info .btn-div svg {
    width: 18rem;
    height: 17rem;
  }
}
@media screen and (max-width: 768px) {
  .map_faq .container .insta_div .insta .insta-info .btn-div svg {
    width: 24rem;
    height: 24rem;
  }
}
.map_faq .container .insta_div .insta .img-div {
  display: flex;
  flex-wrap: wrap;
  gap: 25px;
  margin-top: 40px;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .insta_div .insta .img-div {
    gap: 25rem;
    margin-top: 40rem;
  }
}
.map_faq .container .insta_div .insta .img-div img {
  width: calc((100% - 50px) / 3);
  height: auto;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .insta_div .insta .img-div img {
    width: calc((100% - 50rem) / 3);
  }
}
.map_faq .container .insta_div .shapes {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}
.map_faq .container .insta_div .shapes .shape_lighthouse {
  position: absolute;
  width: 103px;
  height: 226px;
  bottom: 0;
  left: -170px;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .insta_div .shapes .shape_lighthouse {
    width: 103rem;
    height: 226rem;
    left: -170rem;
  }
}
@media screen and (max-width: 768px) {
  .map_faq .container .insta_div .shapes .shape_lighthouse {
    left: 150rem;
    bottom: -250rem;
  }
}
.map_faq .container .insta_div .shapes .shape_sailboat {
  position: absolute;
  width: 155px;
  height: 162px;
  bottom: -50px;
  right: -235px;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .insta_div .shapes .shape_sailboat {
    width: 155rem;
    height: 162rem;
    bottom: -50rem;
    right: -235rem;
  }
}
@media screen and (max-width: 768px) {
  .map_faq .container .insta_div .shapes .shape_sailboat {
    bottom: -250rem;
    right: 100rem;
  }
}
.map_faq .container .insta_div .news_blog {
  width: 400px;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .insta_div .news_blog {
    width: 400rem;
  }
}
@media screen and (max-width: 768px) {
  .map_faq .container .insta_div .news_blog {
    width: 100%;
    margin-top: 50rem;
  }
}
.map_faq .container .insta_div .news_blog .ttl_div {
  display: flex;
}
.map_faq .container .insta_div .news_blog .ttl_div .alert {
  width: 55px;
  height: 50px;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .insta_div .news_blog .ttl_div .alert {
    width: 55rem;
    height: 50rem;
  }
}
.map_faq .container .insta_div .news_blog .ttl_div span.ttl {
  font-size: 24px;
  font-weight: bold;
  display: block;
  line-height: 1;
  margin-bottom: -5px;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .insta_div .news_blog .ttl_div span.ttl {
    font-size: 24rem;
    margin-bottom: -5rem;
  }
}
@media screen and (max-width: 768px) {
  .map_faq .container .insta_div .news_blog .ttl_div span.ttl {
    font-size: 32rem;
  }
}
.map_faq .container .insta_div .news_blog .ttl_div .btn-div {
  display: flex;
  font-size: 16px;
  font-weight: bold;
  line-height: 1;
  align-items: center;
  margin-left: 65px;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .insta_div .news_blog .ttl_div .btn-div {
    font-size: 16rem;
    margin-left: 65rem;
  }
}
@media screen and (max-width: 768px) {
  .map_faq .container .insta_div .news_blog .ttl_div .btn-div {
    font-size: 24rem;
    margin-left: 170rem;
  }
}
.map_faq .container .insta_div .news_blog .ttl_div .btn-div:hover span {
  color: #2FB1EA;
}
.map_faq .container .insta_div .news_blog .ttl_div .btn-div:hover svg path {
  transform: translateX(0.5vw);
}
.map_faq .container .insta_div .news_blog .ttl_div .btn-div svg {
  width: 43px;
  height: 43px;
  margin-left: 10px;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .insta_div .news_blog .ttl_div .btn-div svg {
    width: 43rem;
    height: 43rem;
    margin-left: 10rem;
  }
}
.map_faq .container .insta_div .news_blog .blog_main .item {
  padding: 34px 5px;
  border-bottom: 1px solid #A0B3C1;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .insta_div .news_blog .blog_main .item {
    padding: 34rem 5rem;
  }
}
.map_faq .container .insta_div .news_blog .blog_main .item:hover .item_ttl {
  color: #2FB1EA;
  text-decoration: underline;
}
.map_faq .container .insta_div .news_blog .blog_main .item .date {
  color: #2FB1EA;
  font-size: 16px;
  line-height: 1;
  font-weight: 500;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .insta_div .news_blog .blog_main .item .date {
    font-size: 16rem;
  }
}
@media screen and (max-width: 768px) {
  .map_faq .container .insta_div .news_blog .blog_main .item .date {
    font-size: 24rem;
  }
}
.map_faq .container .insta_div .news_blog .blog_main .item .item_ttl {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
  margin-top: 10px;
}
@media screen and (max-width: 1900px) {
  .map_faq .container .insta_div .news_blog .blog_main .item .item_ttl {
    font-size: 18rem;
    margin-top: 10rem;
  }
}
@media screen and (max-width: 768px) {
  .map_faq .container .insta_div .news_blog .blog_main .item .item_ttl {
    font-size: 30rem;
  }
}

.t_cta {
  background-color: #2CCEB7;
  color: #FFFFFF;
}
.t_cta::before {
  content: "";
  width: 100%;
  height: 21px;
  background: url("../img/frame_cta.svg") no-repeat center center;
  background-size: cover;
  background-position: center;
  position: absolute;
  top: -21px;
  left: 0;
}
@media screen and (max-width: 1900px) {
  .t_cta::before {
    height: 21rem;
    top: -21rem;
  }
}
.t_cta .container .sec_ttl {
  text-align: center;
}
.t_cta .container .desc {
  text-align: center;
  margin-top: 20px;
}
@media screen and (max-width: 1900px) {
  .t_cta .container .desc {
    margin-top: 20rem;
  }
}
.t_cta .container .btn_div {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 107px;
  padding: 0 75px;
  margin-top: 40px;
}
@media screen and (max-width: 1900px) {
  .t_cta .container .btn_div {
    gap: 107rem;
    padding: 0 75rem;
    margin-top: 40rem;
  }
}
@media screen and (max-width: 768px) {
  .t_cta .container .btn_div {
    padding: 0;
    grid-template-columns: 1fr;
    gap: 30rem;
  }
}
.t_cta .container .btn_div .btn {
  width: 100%;
  border-radius: 999px;
  border: 3px solid white;
  padding: 10px;
}
@media screen and (max-width: 1900px) {
  .t_cta .container .btn_div .btn {
    padding: 10rem;
  }
}
@media screen and (max-width: 768px) {
  .t_cta .container .btn_div .btn {
    padding: 15rem;
  }
}
.t_cta .container .btn_div .btn.btn-tel {
  background: #fff;
}
.t_cta .container .btn_div .btn.btn-tel:hover {
  background: #2FB1EA;
  color: white;
}
.t_cta .container .btn_div .btn.btn-tel:hover .number svg path {
  stroke: #fff;
}
.t_cta .container .btn_div .btn.btn-tel .number {
  text-align: center;
  font-size: 45px;
  font-weight: bold;
  line-height: 1;
}
@media screen and (max-width: 1900px) {
  .t_cta .container .btn_div .btn.btn-tel .number {
    font-size: 45rem;
  }
}
@media screen and (max-width: 768px) {
  .t_cta .container .btn_div .btn.btn-tel .number {
    font-size: 54rem;
  }
}
.t_cta .container .btn_div .btn.btn-tel .number svg {
  width: 27px;
  height: 36px;
}
@media screen and (max-width: 1900px) {
  .t_cta .container .btn_div .btn.btn-tel .number svg {
    width: 27rem;
    height: 36rem;
  }
}
@media screen and (max-width: 768px) {
  .t_cta .container .btn_div .btn.btn-tel .number svg {
    width: 40rem;
    height: 40rem;
  }
}
.t_cta .container .btn_div .btn.btn-tel .sub {
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  text-align: center;
  margin-top: 10px;
}
@media screen and (max-width: 1900px) {
  .t_cta .container .btn_div .btn.btn-tel .sub {
    font-size: 14rem;
    margin-top: 10rem;
  }
}
@media screen and (max-width: 768px) {
  .t_cta .container .btn_div .btn.btn-tel .sub {
    font-size: 24rem;
    margin-top: 15rem;
  }
}
.t_cta .container .btn_div .btn.btn-mail {
  font-size: 20px;
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #F77171;
}
.t_cta .container .btn_div .btn.btn-mail:hover {
  background-color: #FFFFFF;
  color: #F77171;
}
.t_cta .container .btn_div .btn.btn-mail:hover svg#icon_line path[fill="#06C755"] {
  fill: #F77171;
}
.t_cta .container .btn_div .btn.btn-mail:hover svg#icon_line path[fill=white] {
  fill: #fff;
}
.t_cta .container .btn_div .btn.btn-mail:hover svg#icon_next-coral path {
  transform: translateX(1vw);
}
@media screen and (max-width: 1900px) {
  .t_cta .container .btn_div .btn.btn-mail {
    font-size: 20rem;
  }
}
@media screen and (max-width: 768px) {
  .t_cta .container .btn_div .btn.btn-mail {
    font-size: 36rem;
    padding: 45rem 15rem;
  }
}
.t_cta .container .btn_div .btn.btn-mail svg#icon_line {
  width: 43px;
  height: 43px;
  margin-right: 10px;
}
@media screen and (max-width: 1900px) {
  .t_cta .container .btn_div .btn.btn-mail svg#icon_line {
    width: 43rem;
    height: 43rem;
    margin-right: 10rem;
  }
}
@media screen and (max-width: 768px) {
  .t_cta .container .btn_div .btn.btn-mail svg#icon_line {
    width: 60rem;
    height: 60rem;
  }
}
.t_cta .container .btn_div .btn.btn-mail svg#icon_next-coral {
  width: 43px;
  height: 43px;
  margin-left: 30px;
  margin-right: -20px;
  border-radius: 999px;
  border: 1px solid #F77171;
}
@media screen and (max-width: 1900px) {
  .t_cta .container .btn_div .btn.btn-mail svg#icon_next-coral {
    width: 43rem;
    height: 43rem;
    margin-left: 30rem;
    margin-right: -20rem;
  }
}
@media screen and (max-width: 768px) {
  .t_cta .container .btn_div .btn.btn-mail svg#icon_next-coral {
    width: 55rem;
    height: 55rem;
  }
}
.t_cta .shapes {
  position: absolute;
  z-index: 50;
  top: 0;
  left: 0;
  right: 0;
}
.t_cta .shapes .shape_coral-white {
  width: 93px;
  height: 74px;
  position: absolute;
  top: 170px;
  left: 440px;
}
@media screen and (max-width: 1900px) {
  .t_cta .shapes .shape_coral-white {
    width: 93rem;
    height: 74rem;
    left: 440rem;
    top: 170rem;
  }
}
@media screen and (max-width: 768px) {
  .t_cta .shapes .shape_coral-white {
    top: 50rem;
    left: 20rem;
  }
}
.t_cta .shapes .shape_fish-white {
  position: absolute;
  width: 140px;
  height: 40px;
  top: 80px;
  right: 455px;
}
@media screen and (max-width: 1900px) {
  .t_cta .shapes .shape_fish-white {
    width: 140rem;
    height: 40rem;
    top: 80rem;
    right: 455rem;
  }
}
@media screen and (max-width: 768px) {
  .t_cta .shapes .shape_fish-white {
    top: 30rem;
    right: 30rem;
  }
}

footer {
  position: relative;
  background-color: #E9FAFF;
  padding-top: 100px;
}
@media screen and (max-width: 1900px) {
  footer {
    padding-top: 100rem;
  }
}
footer::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: url("../img/frame_footer.svg") no-repeat center center;
  background-size: cover;
  background-position: center;
  width: 100%;
  height: 37px;
}
@media screen and (max-width: 1900px) {
  footer::before {
    height: 37rem;
  }
}
footer .container .footer_main {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  footer .container .footer_main {
    display: block;
    padding: 0 40rem;
  }
}
footer .container .footer_main nav li a {
  font-size: 18px;
  font-weight: 500;
  line-height: 1;
  padding: 10px 0;
}
@media screen and (max-width: 1900px) {
  footer .container .footer_main nav li a {
    font-size: 18rem;
    padding: 10rem 0;
  }
}
@media screen and (max-width: 768px) {
  footer .container .footer_main nav li a {
    font-size: 24rem;
    text-align: center;
  }
}
footer .container .footer_main nav li a:hover {
  text-decoration: underline;
}
@media screen and (max-width: 768px) {
  footer .container .footer_main .site_info {
    margin-top: 50rem;
  }
}
footer .container .footer_main .site_info .map {
  width: 400px;
  height: 168px;
}
@media screen and (max-width: 1900px) {
  footer .container .footer_main .site_info .map {
    width: 400rem;
    height: 168rem;
  }
}
@media screen and (max-width: 768px) {
  footer .container .footer_main .site_info .map {
    width: 100%;
    height: 400rem;
  }
}
footer .container .footer_main .site_info .map iframe {
  width: 100%;
  height: 100%;
}
footer .container .footer_main .site_info .info {
  font-size: 18px;
  font-weight: 500;
  line-height: 2;
  margin-top: 20px;
}
@media screen and (max-width: 1900px) {
  footer .container .footer_main .site_info .info {
    font-size: 18rem;
    margin-top: 20rem;
  }
}
@media screen and (max-width: 768px) {
  footer .container .footer_main .site_info .info {
    font-size: 24rem;
  }
}
footer .container .copyright {
  margin-top: 100px;
  padding: 20px;
  border-top: 1px solid #B3B3B3;
  font-size: 16px;
  line-height: 1.5;
  font-weight: 500;
  color: #B3B3B3;
  text-align: center;
}
@media screen and (max-width: 1900px) {
  footer .container .copyright {
    margin-top: 100rem;
    padding: 20rem;
    font-size: 16rem;
  }
}
@media screen and (max-width: 768px) {
  footer .container .copyright {
    font-size: 24rem;
  }
}/*# sourceMappingURL=top.css.map */