@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&family=Roboto:wght@400;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Infant:wght@300;400;500;600;700&family=Noto+Sans+JP:wght@300;400;500;700&family=Shippori+Mincho:wght@400;500;600;700&display=swap");

* {
  font-size: 16px;
  font-family: "Noto Sans JP", sans-serif;
  color: #1a1818;
}

body.open {
  overflow: hidden;
}

.is_sp {
  display: none !important;
}

.flex {
  display: flex;
}

.flex_col {
  flex-direction: column;
}

.flex_r {
  flex-direction: row-reverse;
}

.po_re {
  position: relative;
}

.po_ab {
  position: absolute;
}

.roboto {
  font-family: "Roboto", sans-serif;
}

@media screen and (max-width: 767px) {
  .is_pc {
    display: none !important;
  }

  .is_sp {
    display: block !important;
  }

  .flex_sp_col {
    flex-direction: column;
  }
}

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

html {
  overflow-x: hidden;
}

* {
  margin: 0;
  padding: 0;
}

body {
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

img {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

input,
button,
textarea,
select {
  resize: none;
  font: inherit;
  outline: none;
  padding: 0;
}

p,
h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: break-word;
  color: inherit;
}

li {
  list-style-type: none;
  color: inherit;
}

a {
  text-decoration: none;
  color: inherit;
  transition: opacity 0.3s;
}

a:hover,
a:focus {
  opacity: 0.6;
}

button {
  display: inline-block;
  max-width: 100%;
  border: none;
  background-color: unset;
  cursor: pointer;
  transition: opacity 0.3s;
}

button:hover,
button:focus {
  opacity: 0.6;
}

html {
  font-size: 62.5%;
  scroll-behavior: smooth;
}

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

* {
  margin: 0;
  padding: 0;
}

body {
  font-size: 1.6rem;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  vertical-align: bottom;
}

input,
button,
textarea,
select {
  resize: none;
  font: inherit;
  outline: none;
}

p,
h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: break-word;
  color: inherit;
}

li {
  list-style-type: none;
  color: inherit;
}

a {
  text-decoration: none;
  color: inherit;
  transition: opacity 0.3s;
}

button {
  display: inline-block;
  border: none;
  background-color: unset;
  cursor: pointer;
  transition: opacity 0.3s;
}

* {
  font-family: "Cormorant Infant", serif;
  font-family: "Noto Sans JP", sans-serif;
  font-family: "Shippori Mincho", serif;
  color: #1c1d21;
}

.header {
  height: clamp(64px, 9.3704245974vw, 256px);
  display: flex;
  align-items: center;
  width: 100%;
  position: fixed;
  justify-content: center;
  left: 50%;
  transform: translateX(-50%);
  background: #ffffff;
  z-index: 9999;
}

.header .header-inner {
  display: flex;
  width: clamp(600px, 87.8477306003vw, 2400px);
  align-items: center;
  justify-content: space-between;
}

.header .header-inner .header-item {
  display: flex;
  align-items: center;
}

.header .header-inner .header-icon {
  height: -moz-fit-content;
  height: fit-content;
}

.header .header-inner .header-icon img {
  width: clamp(59.5px, 8.7115666179vw, 238px);
}

.header .header-inner nav {
  margin-left: auto;
  position: relative;
}

.header .header-inner nav ul {
  display: flex;
  gap: clamp(20px, 2.9282576867vw, 80px);
  justify-content: center;
}

.header .header-inner nav ul li a {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(7.5px, 1.0980966325vw, 30px);
  line-height: 0.46875;
  transition: 0.3s;
  color: #1c1d21;
  position: relative;
}

.header .header-inner nav .no-link {
  cursor: pointer;
}

.header .header-inner nav .no-link:hover .sub-nav {
  display: block;
}

.header .header-inner nav .no-link .sub-nav {
  display: none;
  position: absolute;
  padding-top: clamp(12px, 1.756954612vw, 48px);
  right: 0;
}

.header .header-inner nav .no-link .sub-nav .sub-nav-inner {
  background: rgba(83, 83, 83, 0.7882352941);
  padding: clamp(12px, 1.756954612vw, 48px) clamp(9px, 1.317715959vw, 36px);
  width: -moz-fit-content;
  width: fit-content;
}

.header .header-inner nav .no-link .sub-nav a {
  display: block;
  font-size: clamp(7px, 1.0248901903vw, 28px);
  transition: 0.3s;
  color: #fff;
  line-height: 1;
  padding-left: clamp(7px, 1.0248901903vw, 28px);
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  margin-bottom: clamp(7px, 1.0248901903vw, 28px);
}

.header .header-inner nav .no-link .sub-nav a::before {
  content: "";
  position: absolute;
  width: clamp(4px, 0.5856515373vw, 16px);
  height: 1px;
  background: #00d9be;
  display: block;
  left: 0;
  transform: unset;
  top: clamp(3.5px, 0.5124450952vw, 14px);
}

.header .header-inner nav .no-link .sub-nav a:last-of-type {
  margin-bottom: 0;
}

.header .header-inner nav .no-link .sub-nav a:hover {
  color: #00d9be;
}

.header .header-inner .header__hamburger {
  display: none;
  cursor: pointer;
  border: none;
  background: none;
  margin-left: auto;
}

.header .header-inner .header__hamburger span {
  display: block;
  width: clamp(10px, 1.4641288433vw, 40px);
  height: clamp(1.5px, 0.2196193265vw, 6px);
  margin-bottom: clamp(1.5px, 0.2196193265vw, 6px);
  background-color: #000;
}

.header .header-inner .menu {
  opacity: 0;
  display: none;
  transform: translateX(-50%);
}

.header .header-inner .shop-btn {
  margin: auto;
  margin-top: clamp(25px, 3.6603221083vw, 100px);
}

.header.change-color {
  background: none;
}

.header.change-color .header-inner nav ul li a {
  color: #fff;
}

@media (max-width: 768px) {
  .header .header-inner .openbtn {
    display: block;
    z-index: 9001;
  }

  .header .header-inner .header-nav {
    display: none;
  }

  .header .header-inner .menu {
    position: absolute;
    display: block;
    background: #fff;
    padding-bottom: 6.6666666667vw;
    transition: all 0.3s;
    z-index: 9000;
    height: 100vh;
    visibility: hidden;
    width: 100vw;
    left: 50%;
    top: 0;
  }

  .header .header-inner .menu .gold-btn {
    width: 89.3333333333vw;
    height: 18.6666666667vw;
  }

  .header .header-inner .menu .gold-btn a {
    font-size: 4.8vw;
  }

  .header .header-inner .menu nav ul {
    flex-wrap: wrap;
    width: 89.3333333333vw;
    gap: 8vw 0;
    margin: auto;
    margin-top: 22.6666666667vw;
  }

  .header .header-inner .menu nav ul li a {
    color: #1c1d21;
    font-weight: 700;
  }

  .header .header-inner .menu.is-active {
    opacity: 1;
    visibility: visible;
  }

  .header .header-inner .menu.is-active nav ul {
    flex-wrap: wrap;
    width: 89.3333333333vw;
    gap: 8vw 0;
    margin: auto;
    margin-top: 22.6666666667vw;
  }

  .header .header-inner .menu.is-active nav ul li a {
    color: #1c1d21;
    font-weight: 700;
  }

  .header .header-inner .openbtn.active {
    position: relative;
    height: 6.4vw;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 5.3333333333vw;
  }

  .header .header-inner .openbtn.active span:nth-of-type(1) {
    top: 5.3333333333vw;
    right: 0;
    transform: rotate(-45deg);
    position: absolute;
    width: 8.5333333333vw;
    background: #007686;
  }

  .header .header-inner .openbtn.active span:nth-of-type(2) {
    opacity: 0;
    /*真ん中の線は透過*/
  }

  .header .header-inner .openbtn.active span:nth-of-type(3) {
    top: 5.3333333333vw;
    right: 0;
    transform: rotate(45deg);
    position: absolute;
    width: 8.5333333333vw;
    background: #007686;
  }

  .header .header-inner .header__hamburger span {
    display: block;
    width: 8.5333333333vw;
    height: 0.5333333333vw;
    margin-bottom: 2.1333333333vw;
    background-color: #007686;
  }

  .header.change-color .header__hamburger span {
    background-color: #fff;
  }
}

.mv {
  position: relative;
  /* 1枚目のスライド */
  /* 2枚目のスライド */
  /* 3枚目のスライド */
}

.mv .main-title {
  position: absolute;
  z-index: 20;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
}

.mv .main-title h1 {
  font-size: clamp(29px, 4.2459736457vw, 116px);
  color: #fff;
  line-height: 1.5172413793;
}

.mv .main-title h2 {
  font-size: clamp(12px, 1.756954612vw, 48px);
  margin-top: clamp(25px, 3.6603221083vw, 100px);
  color: #fff;
  text-align: center;
}

.mv .img-box {
  width: 100%;
  height: 100vh;
  overflow: hidden;
  position: relative;
}

.mv .img-box>div {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  z-index: 10;
  opacity: 0;
  animation-name: fade;
  animation-duration: 24s;
  animation-iteration-count: infinite;
}

@keyframes fade {
  0% {
    opacity: 0;
  }

  20% {
    opacity: 7;
  }

  80% {
    opacity: 0;
    transform: scale(1.2);
  }

  100% {
    z-index: 0;
    opacity: 0;
  }
}

.mv .img-box>div:first-of-type {
  background-image: url("../assets/img/mv01.jpg");
  transition: 8s;
}

.mv .img-box>div:nth-of-type(2) {
  background-image: url("../assets/img/mv02.jpg");
  animation-delay: 8s;
  transition: 8s;
}

.mv .img-box>div:last-of-type {
  background-image: url("../assets/img/mv03.jpg");
  animation-delay: 16s;
  transition: 8s;
}

.section-inner {
  width: clamp(480px, 70.2781844802vw, 1920px);
  margin: auto;
}

.section-title {
  text-align: center;
  margin-bottom: clamp(22.5px, 3.2942898975vw, 90px);
}

.section-title p {
  font-size: clamp(13px, 1.9033674963vw, 52px);
  color: #007686;
  font-weight: 700;
  margin-bottom: clamp(8px, 1.1713030747vw, 32px);
}

.section-title h2 {
  font-size: clamp(20px, 2.9282576867vw, 80px);
  color: #007686;
  padding-bottom: clamp(7.5px, 1.0980966325vw, 30px);
  border-bottom: #007686 solid 2px;
  width: -moz-fit-content;
  width: fit-content;
  margin: auto;
}

.top-section {
  margin-top: clamp(50px, 7.3206442167vw, 200px);
}

.top-section .section-inner>p {
  font-size: clamp(9px, 1.317715959vw, 36px);
  text-align: center;
  line-height: 2.2222222222;
  font-family: "Noto Sans JP", sans-serif;
}

.top-section .section-inner .recommend {
  background: url(../assets/img/recommend-pc.png);
  background-size: 100%;
  height: clamp(186px, 27.2327964861vw, 744px);
  margin-top: clamp(30px, 4.39238653vw, 120px);
}

.top-section .section-inner .recommend h2 {
  text-align: center;
  font-size: clamp(11px, 1.6105417277vw, 44px);
  font-weight: 600;
  color: #007686;
  padding-top: clamp(22.5px, 3.2942898975vw, 90px);
}

.top-section .section-inner .recommend ul {
  width: clamp(300px, 43.9238653001vw, 1200px);
  margin: auto;
  margin-top: clamp(20px, 2.9282576867vw, 80px);
}

.top-section .section-inner .recommend ul li {
  display: flex;
  align-items: center;
  gap: clamp(5px, 0.7320644217vw, 20px);
  margin-bottom: clamp(10px, 1.4641288433vw, 40px);
  padding-bottom: clamp(10px, 1.4641288433vw, 40px);
  background-image: linear-gradient(to right, #007686 2px, transparent 2px);
  background-size: clamp(4px, 0.5856515373vw, 16px) 2px;
  background-repeat: repeat-x;
  background-position: left bottom;
}

.top-section .section-inner .recommend ul li img {
  width: clamp(16px, 2.3426061493vw, 64px);
}

.top-section .section-inner .recommend ul li p {
  color: #00343b;
  font-size: clamp(9px, 1.317715959vw, 36px);
  font-family: "Noto Sans JP", sans-serif;
}

.top-section .section-inner .recommend ul li:last-of-type {
  background: none;
}

.second-section {
  margin-top: clamp(47.5px, 6.9546120059vw, 190px);
  padding-top: clamp(50px, 7.3206442167vw, 200px);
  padding-bottom: clamp(55px, 8.0527086384vw, 220px);
  background: url(../assets/img/bg-01.jpg) no-repeat;
  background-size: cover;
}

.second-section .merit {
  margin: auto;
  margin-top: clamp(27.5px, 4.0263543192vw, 110px);
  width: clamp(480px, 70.2781844802vw, 1920px);
}

.second-section .merit div:first-of-type {
  background: #007686;
  border-radius: clamp(6px, 0.878477306vw, 24px) clamp(6px, 0.878477306vw, 24px) 0 0;
  display: flex;
  align-items: center;
  justify-content: center;
  height: clamp(30px, 4.39238653vw, 120px);
}

.second-section .merit div:first-of-type h3 {
  color: #fff;
  font-size: clamp(10px, 1.4641288433vw, 40px);
}

.second-section .merit div:last-of-type {
  border-radius: 0 0 clamp(6px, 0.878477306vw, 24px) clamp(6px, 0.878477306vw, 24px);
  background: #fff;
}

.second-section .merit div ul {
  width: clamp(300px, 43.9238653001vw, 1200px);
  margin: auto;
  padding-top: clamp(20px, 2.9282576867vw, 80px);
  padding-bottom: clamp(10px, 1.4641288433vw, 40px);
}

.second-section .merit div ul li {
  display: flex;
  align-items: center;
  gap: clamp(5px, 0.7320644217vw, 20px);
  margin-bottom: clamp(10px, 1.4641288433vw, 40px);
  padding-bottom: clamp(10px, 1.4641288433vw, 40px);
  background-image: linear-gradient(to right, #007686 2px, transparent 2px);
  background-size: clamp(4px, 0.5856515373vw, 16px) 2px;
  background-repeat: repeat-x;
  background-position: left bottom;
}

.second-section .merit div ul li img {
  width: clamp(16px, 2.3426061493vw, 64px);
}

.second-section .merit div ul li p {
  color: #00343b;
  font-size: clamp(9px, 1.317715959vw, 36px);
  font-family: "Noto Sans JP", sans-serif;
}

.second-section .merit div ul li:last-of-type {
  background: none;
}

.second-section>p {
  font-size: clamp(9px, 1.317715959vw, 36px);
  font-family: "Noto Sans JP", sans-serif;
  text-align: center;
}

.second-section .shizen {
  position: relative;
  margin-top: clamp(70px, 10.2489019034vw, 280px);
}

.second-section .shizen .shizen-img {
  width: clamp(480px, 70.2781844802vw, 1920px);
  position: relative;
  z-index: 2;
  margin: auto;
}

.second-section .shizen .shizen-img::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  background: #f4f7f7;
  width: clamp(193.5px, 28.3308931186vw, 774px);
  height: clamp(37px, 5.4172767204vw, 148px);
  border-radius: 0 clamp(10px, 1.4641288433vw, 40px) 0 0;
  z-index: 2;
}

.second-section .shizen .shizen-img img {
  border-radius: clamp(6px, 0.878477306vw, 24px);
}

.second-section .shizen .shizen-img h2 {
  position: absolute;
  z-index: 3;
  bottom: calc(-1 * clamp(11px, 1.6105417277vw, 44px));
  left: clamp(20px, 2.9282576867vw, 80px);
  font-size: clamp(25px, 3.6603221083vw, 100px);
  line-height: 1;
  color: #007686;
}

.second-section .shizen .shizen-img h2 span {
  color: #007686;
  font-size: clamp(19px, 2.7818448023vw, 76px);
}

.second-section .shizen p {
  font-size: clamp(9px, 1.317715959vw, 36px);
  font-family: "Noto Sans JP", sans-serif;
  margin-left: clamp(20px, 2.9282576867vw, 80px);
  margin-top: clamp(25px, 3.6603221083vw, 100px);
  line-height: 2.1111111111;
}

.second-section .shizen .bg-text {
  font-size: clamp(120px, 17.5695461201vw, 480px);
  position: absolute;
  top: calc(-1 * clamp(50px, 7.3206442167vw, 200px));
  color: #e6eff0;
  opacity: 0.6;
  font-family: "Cormorant Infant", serif;
  z-index: 1;
  left: calc(-1 * clamp(58.5px, 8.5651537335vw, 234px));
  line-height: 1;
}

.second-section .shizen .loop {
  animation: loop1 120s linear infinite;
}

.second-section .shizen .loop2 {
  animation: loop1 120s -60s linear infinite;
}

@keyframes loop1 {
  0% {
    transform: translateX(100%);
  }

  100% {
    transform: translateX(-100%);
  }
}

.second-section .shizen02 {
  margin-top: clamp(65px, 9.5168374817vw, 260px);
  position: relative;
}

.second-section .shizen02 .section-inner {
  position: relative;
  z-index: 3;
}

.second-section .shizen02 .section-inner>h2 {
  color: #007686;
  font-size: clamp(15px, 2.196193265vw, 60px);
  text-align: center;
}

.second-section .shizen02 .section-inner>h2 span {
  color: #007686;
  font-size: clamp(26px, 3.8067349927vw, 104px);
}

.second-section .shizen02 .section-inner>div {
  display: flex;
  gap: clamp(20px, 2.9282576867vw, 80px);
}

.second-section .shizen02 .section-inner>div .shizen {
  width: clamp(230px, 33.6749633968vw, 920px);
  margin-top: clamp(27.5px, 4.0263543192vw, 110px);
  display: grid;
  height: clamp(282.5px, 41.3616398243vw, 1130px);
}

.second-section .shizen02 .section-inner>div .shizen .shizen-img {
  width: 100%;
}

.second-section .shizen02 .section-inner>div .shizen .shizen-img::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  background: #f4f7f7;
  width: clamp(101.5px, 14.8609077599vw, 406px);
  height: clamp(25px, 3.6603221083vw, 100px);
  border-radius: 0 clamp(10px, 1.4641288433vw, 40px) 0 0;
  z-index: 2;
}

.second-section .shizen02 .section-inner>div .shizen .shizen-img img {
  width: 100%;
}

.second-section .shizen02 .section-inner>div .shizen .shizen-img h2 {
  font-size: clamp(17px, 2.4890190337vw, 68px);
  bottom: calc(-1 * clamp(8.5px, 1.2445095168vw, 34px));
  left: clamp(12px, 1.756954612vw, 48px);
}

.second-section .shizen02 .section-inner>div .shizen p {
  margin-left: clamp(12px, 1.756954612vw, 48px);
  margin-top: clamp(22.5px, 3.2942898975vw, 90px);
}

.second-section .shizen02 .section-inner>div .shizen .item-price {
  width: clamp(206px, 30.1610541728vw, 824px);
  margin-top: auto;
}

.second-section .shizen02 .section-inner>div .shizen .item-price div {
  display: flex;
  gap: clamp(8px, 1.1713030747vw, 32px);
  align-items: center;
  justify-content: end;
}

.second-section .shizen02 .section-inner>div .shizen .item-price div h2 {
  border: #007686 solid 1px;
  font-size: clamp(7.5px, 1.0980966325vw, 30px);
  color: #007686;
  width: clamp(50px, 7.3206442167vw, 200px);
  height: clamp(18.5px, 2.7086383602vw, 74px);
  display: flex;
  justify-content: center;
  align-items: center;
}

.second-section .shizen02 .section-inner>div .shizen .item-price div h3 {
  font-size: clamp(9px, 1.317715959vw, 36px);
}

.second-section .shizen02 .section-inner>div .shizen .item-price div h3 span {
  font-size: clamp(18px, 2.635431918vw, 72px);
}

.second-section .shizen02 .section-inner>div .shizen .item-price p {
  background: #eeeeee;
  margin-top: clamp(5px, 0.7320644217vw, 20px);
  font-size: clamp(5.5px, 0.8052708638vw, 22px);
  font-family: "Noto Sans JP", sans-serif;
  color: #666666;
  height: clamp(16px, 2.3426061493vw, 64px);
  display: flex;
  justify-content: center;
  align-items: center;
}

.second-section .shizen02 .bg-text {
  font-size: clamp(120px, 17.5695461201vw, 480px);
  position: absolute;
  top: clamp(30px, 4.39238653vw, 120px);
  color: #e6eff0;
  opacity: 0.6;
  font-family: "Cormorant Infant", serif;
  z-index: 1;
  left: 0;
  line-height: 1;
}

.second-section .shizen02 .loop {
  animation: loop 120s linear infinite;
}

.second-section .shizen02 .loop2 {
  animation: loop 120s -60s linear infinite;
}

@keyframes loop {
  0% {
    transform: translateX(-100%);
  }

  100% {
    transform: translateX(100%);
  }
}

.second-section .limited {
  margin-top: clamp(60px, 8.78477306vw, 240px);
}

.second-section .limited .section-inner h2 {
  color: #007686;
  font-size: clamp(15px, 2.196193265vw, 60px);
  text-align: center;
}

.second-section .limited .section-inner .shizen-img {
  width: clamp(480px, 70.2781844802vw, 1920px);
  position: relative;
  z-index: 2;
  margin: auto;
  margin-top: clamp(10px, 1.4641288433vw, 40px);
}

.second-section .limited .section-inner .shizen-img::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  background: #f4f7f7;
  right: 0;
  width: clamp(175px, 25.6222547584vw, 700px);
  height: clamp(37px, 5.4172767204vw, 148px);
  border-radius: clamp(10px, 1.4641288433vw, 40px) 0 0 0;
  z-index: 2;
}

.second-section .limited .section-inner .shizen-img img {
  border-radius: clamp(6px, 0.878477306vw, 24px);
}

.second-section .limited .section-inner .shizen-img h2 {
  position: absolute;
  z-index: 3;
  bottom: calc(-1 * clamp(11px, 1.6105417277vw, 44px));
  right: clamp(20px, 2.9282576867vw, 80px);
  font-size: clamp(25px, 3.6603221083vw, 100px);
  line-height: 1;
  color: #007686;
}

.second-section .limited .section-inner .shizen-img h2 span {
  color: #007686;
  font-size: clamp(19px, 2.7818448023vw, 76px);
}

.second-section .limited .section-inner>p {
  font-size: clamp(9px, 1.317715959vw, 36px);
  font-family: "Noto Sans JP", sans-serif;
  margin-left: clamp(20px, 2.9282576867vw, 80px);
  margin-top: clamp(25px, 3.6603221083vw, 100px);
  line-height: 2.1111111111;
}

.second-section .limited .section-inner .point {
  margin-top: clamp(30px, 4.39238653vw, 120px);
  margin-bottom: clamp(45px, 6.588579795vw, 180px);
  display: flex;
  height: clamp(48px, 7.027818448vw, 192px);
}

.second-section .limited .section-inner .point div:first-of-type {
  background: #007686;
  width: clamp(108px, 15.8125915081vw, 432px);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: clamp(6px, 0.878477306vw, 24px) 0 0 clamp(6px, 0.878477306vw, 24px);
}

.second-section .limited .section-inner .point div:first-of-type h3 {
  color: #fff;
  font-size: clamp(11px, 1.6105417277vw, 44px);
}

.second-section .limited .section-inner .point div:last-of-type {
  border-radius: 0 clamp(6px, 0.878477306vw, 24px) clamp(6px, 0.878477306vw, 24px) 0;
  background: #fff;
  width: clamp(372px, 54.4655929722vw, 1488px);
  display: flex;
  justify-content: center;
  align-items: center;
}

.second-section .limited .section-inner .point div:last-of-type p {
  font-size: clamp(8px, 1.1713030747vw, 32px);
  font-family: "Noto Sans JP", sans-serif;
  line-height: 2;
}

.second-section>p {
  font-size: clamp(10px, 1.4641288433vw, 40px);
  font-family: "Shippori Mincho", serif;
  font-weight: 600;
}

.second-section>p:first-of-type {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  line-height: 2.2222222222;
}

.gold-btn {
  width: clamp(290px, 42.4597364568vw, 1160px);
  height: clamp(56px, 8.1991215227vw, 224px);
  background-image: linear-gradient(0deg, rgb(248, 196, 22), rgb(255, 228, 136) 50%, rgb(248, 196, 22));
  border-radius: clamp(6px, 0.878477306vw, 24px);
  outline-offset: calc(-1 * clamp(5px, 0.7320644217vw, 20px));
  position: relative;
  z-index: 10;
  margin: auto;
  display: block;
  margin-top: clamp(10px, 1.4641288433vw, 40px);
}

.gold-btn::before {
  content: "";
  position: absolute;
  display: block;
  top: clamp(5px, 0.7320644217vw, 20px);
  bottom: clamp(5px, 0.7320644217vw, 20px);
  left: clamp(5px, 0.7320644217vw, 20px);
  right: clamp(5px, 0.7320644217vw, 20px);
  border: 1px solid #fff;
  border-radius: clamp(4px, 0.5856515373vw, 16px);
}

.gold-btn a {
  width: 100%;
  display: flex;
  position: relative;
  z-index: 11;
  justify-content: center;
  align-items: center;
  height: 100%;
  font-size: clamp(12px, 1.756954612vw, 48px);
  font-weight: 700;
}

.charm {
  margin-top: clamp(55px, 8.0527086384vw, 220px);
}

.charm .section-title {
  margin-bottom: clamp(40px, 5.8565153734vw, 160px);
}

.charm .section-title h2 span {
  font-size: clamp(26px, 3.8067349927vw, 104px);
  color: #007686;
}

.charm .charm-content {
  display: flex;
  gap: clamp(32px, 4.6852122987vw, 128px);
  align-items: center;
  position: relative;
  margin-bottom: clamp(60px, 8.78477306vw, 240px);
}

.charm .charm-content img {
  width: clamp(324px, 47.4377745242vw, 1296px);
  border-radius: 0 clamp(10px, 1.4641288433vw, 40px) clamp(10px, 1.4641288433vw, 40px) 0;
}

.charm .charm-content div {
  width: clamp(225px, 32.9428989751vw, 900px);
}

.charm .charm-content div h2 {
  font-size: clamp(17px, 2.4890190337vw, 68px);
  color: #007686;
}

.charm .charm-content div p {
  font-size: clamp(9px, 1.317715959vw, 36px);
  margin-top: clamp(15px, 2.196193265vw, 60px);
  font-family: "Noto Sans JP", sans-serif;
  line-height: 2.1111111111;
}

.charm .charm-content div .small-text {
  font-size: clamp(7px, 1.0248901903vw, 28px);
}

.charm .charm-content h3 {
  font-family: "Cormorant Infant", serif;
  font-size: clamp(96.5px, 14.1288433382vw, 386px);
  color: #e6eff0;
  position: absolute;
  bottom: calc(-1 * clamp(20px, 2.9282576867vw, 80px));
  line-height: 1;
  right: clamp(47px, 6.8814055637vw, 188px);
  z-index: -1;
}

.charm .charm-content:nth-child(odd) {
  flex-direction: row-reverse;
}

.charm .charm-content:nth-child(odd) img {
  border-radius: clamp(10px, 1.4641288433vw, 40px) 0 0 clamp(10px, 1.4641288433vw, 40px);
}

.charm .charm-content:nth-child(odd) h3 {
  right: unset;
  left: clamp(70px, 10.2489019034vw, 280px);
}

.document {
  background: url(../assets/img/document-bg-pc.jpg);
  height: clamp(190px, 27.8184480234vw, 760px);
  background-size: cover;
}

.document div {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: clamp(15px, 2.196193265vw, 60px);
  height: 100%;
}

.document div h2 {
  color: #fff;
  font-size: clamp(15px, 2.196193265vw, 60px);
  line-height: 1.6;
}

.document div .gold-btn {
  margin: unset;
  width: clamp(235px, 34.4070278184vw, 940px);
}

.facility {
  background: #f4f7f7;
  padding: clamp(52.5px, 7.6866764275vw, 210px) 0;
}

.facility .swiper-slide img {
  height: auto;
  width: 100%;
}

.facility .swiper-slide img {
  border-radius: clamp(10px, 1.4641288433vw, 40px);
}

.facility .swiper-slide h2 {
  font-size: clamp(14px, 2.0497803807vw, 56px);
  color: #007686;
  margin-top: clamp(15px, 2.196193265vw, 60px);
}

.facility .swiper-slide p {
  font-size: clamp(9px, 1.317715959vw, 36px);
  margin-top: clamp(10px, 1.4641288433vw, 40px);
  font-family: "Noto Sans JP", sans-serif;
  line-height: 2;
}

.facility .swiper-button-prev {
  background: #007686;
  width: clamp(32px, 4.6852122987vw, 128px);
  height: clamp(32px, 4.6852122987vw, 128px);
  border-radius: 50%;
  left: clamp(150px, 21.9619326501vw, 600px);
  top: clamp(105px, 15.3733528551vw, 420px);
}

.facility .swiper-button-next {
  background: #007686;
  width: clamp(32px, 4.6852122987vw, 128px);
  height: clamp(32px, 4.6852122987vw, 128px);
  border-radius: 50%;
  right: clamp(150px, 21.9619326501vw, 600px);
  top: clamp(105px, 15.3733528551vw, 420px);
}

.facility .swiper-button-prev::after,
.facility .swiper-button-next::after {
  bottom: 0;
  content: "←";
  font-family: "Noto Sans JP", sans-serif;
  height: 0;
  margin: auto;
  color: #fff;
  font-size: clamp(10px, 1.4641288433vw, 40px);
  font-weight: 700;
  position: absolute;
  top: 0;
  width: clamp(10px, 1.4641288433vw, 40px);
  height: clamp(10px, 1.4641288433vw, 40px);
}

.facility .swiper-button-next::after {
  transform: scale(-1, 1);
}

.customer {
  padding: clamp(50px, 7.3206442167vw, 200px) 0;
}

.customer .c-swiper {
  margin-bottom: clamp(50px, 7.3206442167vw, 200px);
}

.customer .c-swiper .swiper-wrapper {
  gap: clamp(20px, 2.9282576867vw, 80px);
}

.customer .c-swiper .swiper-slide {
  width: clamp(146.5px, 21.4494875549vw, 586px);
  height: clamp(224.5px, 32.8696925329vw, 898px);
  background: #e6eff0;
  border-radius: clamp(6px, 0.878477306vw, 24px);
  padding: clamp(12px, 1.756954612vw, 48px);
  padding-bottom: unset;
}

.customer .c-swiper .swiper-slide .customer-item {
  display: grid;
  gap: clamp(8px, 1.1713030747vw, 32px);
}

.customer .c-swiper .swiper-slide .customer-item div {
  display: flex;
  align-items: center;
  gap: clamp(8px, 1.1713030747vw, 32px);
}

.customer .c-swiper .swiper-slide .customer-item div img {
  width: clamp(28px, 4.0995607613vw, 112px);
}

.customer .c-swiper .swiper-slide .customer-item div p {
  font-size: clamp(6.5px, 0.9516837482vw, 26px);
  font-family: "Noto Sans JP", sans-serif;
  color: #666666;
  margin-top: 0;
}

.customer .c-swiper .swiper-slide .customer-item h2 {
  font-size: clamp(10px, 1.4641288433vw, 40px);
  color: #007686;
}

.customer .c-swiper .swiper-slide .customer-item p {
  font-size: clamp(7px, 1.0248901903vw, 28px);
  font-family: "Noto Sans JP", sans-serif;
  line-height: 2;
}

.customer .swiper-pagination {
  display: none;
}

.customer .accordion-container {
  margin: 50px auto 0;
  width: 100%;
}

.customer .accordion-container .accordion-list {
  background-image: linear-gradient(to right, #999999 2px, transparent 2px);
  background-size: clamp(4px, 0.5856515373vw, 16px) 2px;
  background-repeat: repeat-x;
  background-position: left bottom;
  padding-bottom: clamp(17.5px, 2.5622254758vw, 70px);
}

.customer .accordion-container .accordion-list .accordion-title {
  display: flex;
  align-items: center;
  gap: clamp(8px, 1.1713030747vw, 32px);
}

.customer .accordion-container .accordion-list .accordion-title img {
  width: clamp(28px, 4.0995607613vw, 112px);
}

.customer .accordion-container .accordion-list .accordion-title p {
  font-size: clamp(9px, 1.317715959vw, 36px);
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.7777777778;
  font-weight: 700;
  width: clamp(422.5px, 61.859443631vw, 1690px);
}

.customer .accordion-container .accordion-list .accordion-text div {
  align-items: center;
  margin-top: clamp(12px, 1.756954612vw, 48px);
  display: flex;
  gap: clamp(8px, 1.1713030747vw, 32px);
}

.customer .accordion-container .accordion-list .accordion-text div img {
  width: clamp(28px, 4.0995607613vw, 112px);
}

.customer .accordion-container .accordion-list .accordion-text div p {
  font-size: clamp(9px, 1.317715959vw, 36px);
  font-family: "Noto Sans JP", sans-serif;
  line-height: 2;
  width: clamp(422.5px, 61.859443631vw, 1690px);
}

.customer .accordion-container .accordion-list:last-child {
  background: unset;
}

.customer .accordion-container .accordion-list:not(:first-child) {
  margin-top: clamp(15px, 2.196193265vw, 60px);
}

.customer .accordion-container .accordion-title {
  cursor: pointer;
  font-size: 16px;
  position: relative;
}

.customer .accordion-container .accordion-title:before {
  position: absolute;
  content: "";
  top: 50%;
  right: 0;
  height: 2px;
  width: clamp(9px, 1.317715959vw, 36px);
  background: #007686;
  transform: rotate(90deg);
  transition: all 0.3s ease-in-out;
}

.customer .accordion-container .accordion-title:after {
  position: absolute;
  content: "";
  top: 50%;
  right: 0;
  height: 2px;
  width: clamp(9px, 1.317715959vw, 36px);
  background: #007686;
  transition: all 0.3s ease-in-out;
}

.customer .accordion-container .accordion-title.open:before {
  transform: rotate(180deg);
}

.customer .accordion-container .accordion-title.open:after {
  opacity: 0;
}

.customer .accordion-container .accordion-text {
  display: none;
}

.access {
  background: #f4f7f7;
  padding-top: clamp(45px, 6.588579795vw, 180px);
  padding-bottom: clamp(40px, 5.8565153734vw, 160px);
}

.access .map-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.access .map-content div h2 {
  font-size: clamp(16px, 2.3426061493vw, 64px);
  font-weight: 500;
}

.access .map-content div h2 span {
  font-weight: 500;
  font-size: clamp(11px, 1.6105417277vw, 44px);
  margin-right: clamp(6px, 0.878477306vw, 24px);
}

.access .map-content div p {
  margin-top: clamp(20px, 2.9282576867vw, 80px);
  font-size: clamp(9px, 1.317715959vw, 36px);
  font-family: "Noto Sans JP", sans-serif;
  line-height: 2;
}

.access .map-content div a {
  margin-top: clamp(10px, 1.4641288433vw, 40px);
  display: inline-block;
  text-decoration: underline;
  color: #007686;
  font-size: clamp(9px, 1.317715959vw, 36px);
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
}

.access .map-content iframe {
  width: clamp(240px, 35.1390922401vw, 960px);
  height: clamp(170px, 24.8901903367vw, 680px);
}

footer {
  background: #00343b;
  padding-top: clamp(45px, 6.588579795vw, 180px);
  padding-bottom: clamp(20px, 2.9282576867vw, 80px);
}

footer a {
  display: block;
  margin: auto;
  width: -moz-fit-content;
  width: fit-content;
}

footer a img {
  width: clamp(89px, 13.0307467057vw, 356px);
}

footer p {
  color: #fff;
  font-size: clamp(6.5px, 0.9516837482vw, 26px);
  font-family: "Noto Sans JP", sans-serif;
  text-align: center;
  margin-top: clamp(40px, 5.8565153734vw, 160px);
}

footer p:first-of-type {
  font-size: clamp(8px, 1.1713030747vw, 32px);
  margin-top: clamp(8px, 1.1713030747vw, 32px);
}

footer p:last-of-type {
  font-family: "Cormorant Infant", serif;
  margin-top: clamp(5px, 0.7320644217vw, 20px);
}

.follow {
  position: fixed;
  z-index: 10;
  bottom: 20px;
  width: clamp(42.5px, 6.2225475842vw, 170px);
  height: clamp(115px, 16.8374816984vw, 460px);
  right: 0;
  border-radius: clamp(6px, 0.878477306vw, 24px) 0 0 clamp(6px, 0.878477306vw, 24px);
}

.follow::before {
  border-radius: clamp(6px, 0.878477306vw, 24px) 0 0 clamp(6px, 0.878477306vw, 24px);
  right: 0;
  top: clamp(2.5px, 0.3660322108vw, 10px);
  bottom: clamp(2.5px, 0.3660322108vw, 10px);
  left: clamp(2.5px, 0.3660322108vw, 10px);
}

.follow a {
  writing-mode: vertical-rl;
}

.toMedia {
  position: absolute;
  width: 29%;
  bottom: 20px;
  right: clamp(42.5px, 6.2225475842vw, 170px);
  right: clamp(62.5px, 9.1513944223vw, 250px);
  z-index: 10;
}
@media screen and (max-width: 768px) {
  .toMedia {
    width: 40%;
    bottom: 0;
    right: unset;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
  }
}

@media (max-width: 540px) {
  .toMedia {
    width: 80%;
    bottom: 0;
    right: unset;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
  }
}


.mediaSection {
  padding: clamp(50px, 7.3206442167vw, 200px) 0;
  padding: clamp(62.5px, 9.1513944223vw, 250px) 0;

  @media screen and (max-width: 768px) {
    padding: 25vw 0;
  }
}

.mediaSection p {
  font-size: clamp(9px, 1.317715959vw, 36px);
  font-family: "Noto Sans JP", sans-serif;
  text-align: center;
  margin-bottom: clamp(20px, 2.9282576867vw, 80px);
}

.mediaSection__link {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
  width: 100%;
  margin-top: 40px;
  margin-right: auto;
  margin-left: auto;

}

.mediaSection__link a {
  width: 16%;
}

.mediaSection__link p {
  /* white-space: nowrap; */
  text-align-last: left;
}

@media (max-width: 768px) {
  .header {
    height: 21.3333333333vw;
  }

  .header .header-inner {
    width: 89.3333333333vw;
    align-items: end;
  }

  .header .header-inner .header-icon {
    z-index: 9001;
  }

  .header .header-inner .header-icon img {
    width: 21.8666666667vw;
  }

  .header .header-inner nav {
    position: relative;
    margin-top: 44vw;
  }

  .header .header-inner nav ul {
    display: block;
  }

  .header .header-inner nav ul li {
    margin-bottom: 10.6666666667vw;
  }

  .header .header-inner nav ul li a {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 4.8vw;
    line-height: 0.46875;
    transition: 0.3s;
    color: #1c1d21;
    position: relative;
  }

  .mv {
    position: relative;
    /* 1枚目のスライド */
    /* 2枚目のスライド */
    /* 3枚目のスライド */
  }

  .mv .main-title {
    position: absolute;
    z-index: 20;
    position: absolute;
    width: 89.3333333333vw;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
  }

  .mv .main-title h1 {
    font-size: 8.5333333333vw;
    line-height: 1.5625;
  }

  .mv .main-title h2 {
    font-size: 4.8vw;
    margin-top: 6.6666666667vw;
  }

  .mv .img-box {
    width: 100%;
    height: 100vh;
    overflow: hidden;
    position: relative;
  }

  .mv .img-box>div {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    z-index: 10;
    opacity: 0;
    animation-name: fade;
    animation-duration: 24s;
    animation-iteration-count: infinite;
  }

  @keyframes fade {
    0% {
      opacity: 0;
    }

    20% {
      opacity: 7;
    }

    80% {
      opacity: 0;
      transform: scale(1.2);
    }

    100% {
      z-index: 0;
      opacity: 0;
    }
  }

  .mv .img-box>div:first-of-type {
    background-image: url("../assets/img/mv01-sp.jpg");
    transition: 8s;
  }

  .mv .img-box>div:nth-of-type(2) {
    background-image: url("../assets/img/mv02-sp.jpg");
    animation-delay: 8s;
    transition: 8s;
  }

  .mv .img-box>div:last-of-type {
    background-image: url("../assets/img/mv03-sp.jpg");
    animation-delay: 16s;
    transition: 8s;
  }

  .section-inner {
    width: 89.3333333333vw;
  }

  .section-title {
    text-align: center;
    margin-bottom: 12vw;
  }

  .section-title p {
    font-size: 5.3333333333vw;
    margin-bottom: 4.2666666667vw;
  }

  .section-title h2 {
    font-size: 8vw;
    padding-bottom: 0vw;
    border-bottom: none;
    text-decoration: underline;
  }

  .top-section {
    margin-top: 22.6666666667vw;
  }

  .top-section .section-inner>p {
    font-size: 4.8vw;
  }

  .top-section .section-inner .recommend {
    background: url(../assets/img/recommend-sp.png);
    height: 112vw;
    background-size: cover;
    margin-top: 14.4vw;
  }

  .top-section .section-inner .recommend h2 {
    font-size: 5.3333333333vw;
    padding-top: 14.1333333333vw;
  }

  .top-section .section-inner .recommend ul {
    width: 78.6666666667vw;
    margin: auto;
    margin-top: 9.6vw;
  }

  .top-section .section-inner .recommend ul li {
    gap: 2.6666666667vw;
    margin-bottom: 5.3333333333vw;
    padding-bottom: 8vw;
    background-image: linear-gradient(to right, #007686 2px, transparent 2px);
    background-size: 2.1333333333vw 2px;
  }

  .top-section .section-inner .recommend ul li img {
    width: 8.5333333333vw;
  }

  .top-section .section-inner .recommend ul li p {
    font-size: 4.8vw;
  }

  .second-section {
    margin-top: 21.3333333333vw;
    padding-top: 18.6666666667vw;
    padding-bottom: 17.0666666667vw;
    background: url(../assets/img/bg-01-sp.jpg) no-repeat;
    background-size: cover;
  }

  .second-section .merit {
    margin-top: 13.3333333333vw;
    width: 89.3333333333vw;
  }

  .second-section .merit div:first-of-type {
    border-radius: 3.2vw 3.2vw 0 0;
    height: 14.4vw;
  }

  .second-section .merit div:first-of-type h3 {
    color: #fff;
    font-size: 5.3333333333vw;
  }

  .second-section .merit div:last-of-type {
    border-radius: 0 0 3.2vw 3.2vw;
    background: #fff;
  }

  .second-section .merit div ul {
    width: 78.8vw;
    padding-top: 6.4vw;
    padding-bottom: 0;
  }

  .second-section .merit div ul li {
    gap: 2.6666666667vw;
    margin-bottom: 6.4vw;
    padding-bottom: 8.5333333333vw;
    background-image: linear-gradient(to right, #007686 2px, transparent 2px);
    background-size: 2.1333333333vw 2px;
  }

  .second-section .merit div ul li img {
    width: 8.5333333333vw;
  }

  .second-section .merit div ul li p {
    font-size: 4.2666666667vw;
  }

  .second-section>p {
    font-size: 4.8vw;
    font-family: "Noto Sans JP", sans-serif;
    text-align: center;
    width: 89.3333333333vw;
    margin: auto;
  }

  .second-section .shizen {
    position: relative;
    margin-top: 29.3333333333vw;
  }

  .second-section .shizen .shizen-img {
    width: 89.3333333333vw;
  }

  .second-section .shizen .shizen-img::after {
    content: "";
    background: #f4f7f7;
    width: 61.3333333333vw;
    height: 18.1333333333vw;
    border-radius: 0 5.3333333333vw 0 0;
    bottom: -9.0666666667vw;
    z-index: 2;
  }

  .second-section .shizen .shizen-img img {
    border-radius: 3.2vw;
  }

  .second-section .shizen .shizen-img h2 {
    bottom: -4.5333333333vw;
    left: 5.3333333333vw;
    font-size: 8vw;
  }

  .second-section .shizen .shizen-img h2 span {
    font-size: 5.3333333333vw;
  }

  .second-section .shizen p {
    font-size: 4.8vw;
    margin-left: 0vw;
    margin-top: 14.4vw;
    line-height: 2.1111111111;
  }

  .second-section .shizen .bg-text {
    font-size: 30.9333333333vw;
    top: -16vw;
    left: -53.3333333333vw;
    line-height: 1;
  }

  .second-section .shizen02 {
    margin-top: 25.3333333333vw;
  }

  .second-section .shizen02 .section-inner>h2 {
    font-size: 6.4vw;
    line-height: 1.6666666667;
  }

  .second-section .shizen02 .section-inner>h2 span {
    font-size: 10.6666666667vw;
    line-height: 0;
  }

  .second-section .shizen02 .section-inner>div {
    display: block;
  }

  .second-section .shizen02 .section-inner>div .shizen {
    width: 89.3333333333vw;
    margin-top: 13.8666666667vw;
    display: block;
    height: auto;
  }

  .second-section .shizen02 .section-inner>div .shizen .shizen-img {
    width: 100%;
  }

  .second-section .shizen02 .section-inner>div .shizen .shizen-img::after {
    content: "";
    background: #f4f7f7;
    width: 48.5333333333vw;
    height: 18.1333333333vw;
    bottom: -9.0666666667vw;
    border-radius: 0 5.3333333333vw 0 0;
  }

  .second-section .shizen02 .section-inner>div .shizen .shizen-img img {
    width: 100%;
  }

  .second-section .shizen02 .section-inner>div .shizen .shizen-img h2 {
    font-size: 8vw;
    bottom: -4.5333333333vw;
    left: 5.3333333333vw;
  }

  .second-section .shizen02 .section-inner>div .shizen p {
    margin-left: 0;
    margin-top: 13.3333333333vw;
  }

  .second-section .shizen02 .section-inner>div .shizen .item-price {
    width: 89.3333333333vw;
    margin-top: 10.6666666667vw;
  }

  .second-section .shizen02 .section-inner>div .shizen .item-price div {
    gap: 4.2666666667vw;
  }

  .second-section .shizen02 .section-inner>div .shizen .item-price div h2 {
    font-size: 4vw;
    width: 26.6666666667vw;
    height: 9.8666666667vw;
  }

  .second-section .shizen02 .section-inner>div .shizen .item-price div h3 {
    font-size: 4.8vw;
  }

  .second-section .shizen02 .section-inner>div .shizen .item-price div h3 span {
    font-size: 9.6vw;
  }

  .second-section .shizen02 .section-inner>div .shizen .item-price p {
    margin-top: 2.6666666667vw;
    font-size: 2.6666666667vw;
    height: 8.5333333333vw;
  }

  .second-section .shizen02 .bg-text {
    font-size: 30.9333333333vw;
    top: 26.6666666667vw;
    left: 0;
    left: 50%;
    transform: translateX(-50%);
  }

  .second-section .limited {
    margin-top: 18.6666666667vw;
  }

  .second-section .limited .section-inner h2 {
    font-size: 6.4vw;
  }

  .second-section .limited .section-inner .shizen-img {
    width: 89.3333333333vw;
    position: relative;
    z-index: 2;
    margin: auto;
    margin-top: 9.6vw;
  }

  .second-section .limited .section-inner .shizen-img::after {
    content: "";
    bottom: -9.0666666667vw;
    width: 61.3333333333vw;
    height: 18.1333333333vw;
    border-radius: 5.3333333333vw 0 0 0;
  }

  .second-section .limited .section-inner .shizen-img img {
    border-radius: 3.2vw;
  }

  .second-section .limited .section-inner .shizen-img h2 {
    bottom: -4.5333333333vw;
    right: 5.3333333333vw;
    font-size: 8vw;
  }

  .second-section .limited .section-inner>p {
    font-size: 4.8vw;
    margin-left: 0;
    margin-top: 14.4vw;
    line-height: 2.1111111111;
  }

  .second-section .limited .section-inner .point {
    margin-top: 12vw;
    display: block;
    height: 67.7333333333vw;
    margin-bottom: 16vw;
  }

  .second-section .limited .section-inner .point div:first-of-type {
    width: 89.3333333333vw;
    border-radius: 3.2vw 3.2vw 0 0;
    height: 14.4vw;
  }

  .second-section .limited .section-inner .point div:first-of-type h3 {
    font-size: 5.3333333333vw;
  }

  .second-section .limited .section-inner .point div:last-of-type {
    border-radius: 0 0 3.2vw 3.2vw;
    width: 89.3333333333vw;
    height: 53.3333333333vw;
    padding: 5.3333333333vw;
  }

  .second-section .limited .section-inner .point div:last-of-type p {
    font-size: 4.2666666667vw;
    line-height: 2;
  }

  .second-section>p {
    font-size: 4.8vw;
    font-family: "Shippori Mincho", serif;
    margin-top: 0;
    font-weight: 600;
  }

  .gold-btn {
    width: 89.3333333333vw;
    height: 21.3333333333vw;
    border-radius: 3.2vw;
    outline-offset: -2.6666666667vw;
    margin-top: 5.3333333333vw;
  }

  .gold-btn::before {
    content: "";
    top: 1.0666666667vw;
    bottom: 1.0666666667vw;
    left: 1.0666666667vw;
    right: 1.0666666667vw;
    border-radius: 2.1333333333vw;
  }

  .gold-btn a {
    font-size: 5.3333333333vw;
  }

  .charm {
    margin-top: 24vw;
  }

  .charm .section-title h2 span {
    font-size: 11.7333333333vw;
  }

  .charm .charm-content {
    display: block;
    margin-bottom: 20vw;
  }

  .charm .charm-content img {
    width: 94.6666666667vw;
    border-radius: 0 5.3333333333vw 5.3333333333vw 0;
    margin-bottom: 10.6666666667vw;
  }

  .charm .charm-content div {
    width: 89.3333333333vw;
    margin: auto;
  }

  .charm .charm-content div h2 {
    font-size: 6.4vw;
  }

  .charm .charm-content div p {
    font-size: 4.8vw;
    margin-top: 5.3333333333vw;
    line-height: 2.1111111111;
  }

  .charm .charm-content div .small-text {
    font-size: 3.7333333333vw;
  }

  .charm .charm-content h3 {
    font-size: 37.3333333333vw;
    bottom: -10.6666666667vw;
    line-height: 1;
    right: 0;
    z-index: -1;
  }

  .charm .charm-content:nth-child(odd) {
    flex-direction: row-reverse;
  }

  .charm .charm-content:nth-child(odd) img {
    border-radius: 5.3333333333vw 0 0 5.3333333333vw;
    display: block;
    margin-left: auto;
  }

  .charm .charm-content:nth-child(odd) h3 {
    right: unset;
    left: 0;
  }

  .document {
    background: url(../assets/img/document-bg-sp.jpg);
    height: 91.7333333333vw;
    background-size: cover;
  }

  .document div {
    display: block;
    width: 89.3333333333vw;
    height: auto;
    margin: auto;
    padding-top: 21.3333333333vw;
  }

  .document div h2 {
    font-size: 5.8666666667vw;
    line-height: 1.8181818182;
    text-align: center;
  }

  .document div .gold-btn {
    margin: unset;
    width: 89.3333333333vw;
    margin-top: 10.6666666667vw;
  }

  .facility {
    padding: 18.6666666667vw 0;
  }

  .facility .swiper-slide img {
    height: auto;
    width: 100%;
  }

  .facility .swiper-slide img {
    border-radius: 5.3333333333vw;
  }

  .facility .swiper-slide h2 {
    font-size: 5.8666666667vw;
    margin-top: 8vw;
  }

  .facility .swiper-slide p {
    font-size: 4.8vw;
    margin-top: 5.3333333333vw;
    line-height: 2;
  }

  .facility .swiper-button-prev {
    width: 8.5333333333vw;
    height: 8.5333333333vw;
    left: 5.3333333333vw;
    top: 26.6666666667vw;
  }

  .facility .swiper-button-next {
    width: 8.5333333333vw;
    height: 8.5333333333vw;
    right: 5.3333333333vw;
    top: 26.6666666667vw;
  }

  .facility .swiper-button-prev::after,
  .facility .swiper-button-next::after {
    content: "←";
    font-size: 3.2vw;
    width: 3.2vw;
    height: 3.2vw;
  }

  .customer {
    padding: 24vw 0;
  }

  .customer .c-swiper {
    padding-bottom: 13.3333333333vw;
    width: 100vw;
    margin-left: -5.3333333333vw;
  }

  .customer .c-swiper .swiper-wrapper {
    gap: 0;
  }

  .customer .c-swiper .swiper-slide {
    width: 78.1333333333vw;
    height: 119.7333333333vw;
    border-radius: 3.2vw;
    padding: 6.4vw;
    padding-bottom: unset;
  }

  .customer .c-swiper .swiper-slide .customer-item {
    gap: 4.2666666667vw;
  }

  .customer .c-swiper .swiper-slide .customer-item div {
    gap: 4.2666666667vw;
  }

  .customer .c-swiper .swiper-slide .customer-item div img {
    width: 14.9333333333vw;
  }

  .customer .c-swiper .swiper-slide .customer-item div p {
    font-size: 3.4666666667vw;
  }

  .customer .c-swiper .swiper-slide .customer-item h2 {
    font-size: 5.3333333333vw;
  }

  .customer .c-swiper .swiper-slide .customer-item p {
    font-size: 3.7333333333vw;
    line-height: 2;
  }

  .customer .swiper-pagination {
    display: block;
    bottom: 0;
  }

  .customer .swiper-pagination-bullet {
    background-color: #007686;
  }

  .customer .accordion-container {
    width: 100%;
  }

  .customer .accordion-container .accordion-list {
    background-image: linear-gradient(to right, #999999 2px, transparent 2px);
    background-size: 2.6666666667vw 2px;
    background-repeat: repeat-x;
    background-position: left bottom;
    padding-bottom: 9.3333333333vw;
  }

  .customer .accordion-container .accordion-list .accordion-title {
    gap: 2.1333333333vw;
    align-items: flex-start;
  }

  .customer .accordion-container .accordion-list .accordion-title img {
    width: 10.6666666667vw;
  }

  .customer .accordion-container .accordion-list .accordion-title p {
    font-size: 4.8vw;
    line-height: 1.7777777778;
    width: 71.2vw;
  }

  .customer .accordion-container .accordion-list .accordion-text div {
    margin-top: 6.4vw;
    align-items: flex-start;
    gap: 2.1333333333vw;
  }

  .customer .accordion-container .accordion-list .accordion-text div img {
    width: 10.6666666667vw;
  }

  .customer .accordion-container .accordion-list .accordion-text div p {
    font-size: 4.8vw;
    line-height: 2;
    width: 71.2vw;
  }

  .customer .accordion-container .accordion-list:not(:first-child) {
    margin-top: 8vw;
  }

  .customer .accordion-container .accordion-title {
    cursor: pointer;
    font-size: 16px;
    position: relative;
  }

  .customer .accordion-container .accordion-title:before {
    position: absolute;
    content: "";
    top: 20%;
    right: 0;
    height: 2px;
    width: 4.8vw;
    transform: rotate(90deg);
    transition: all 0.3s ease-in-out;
  }

  .customer .accordion-container .accordion-title:after {
    position: absolute;
    content: "";
    top: 20%;
    right: 0;
    height: 2px;
    width: 4.8vw;
    transition: all 0.3s ease-in-out;
  }

  .customer .accordion-container .accordion-title.open:before {
    transform: rotate(180deg);
  }

  .customer .accordion-container .accordion-title.open:after {
    opacity: 0;
  }

  .customer .accordion-container .accordion-text {
    display: none;
  }

  .access {
    padding-top: 17.3333333333vw;
    padding-bottom: 17.3333333333vw;
  }

  .access .map-content {
    display: block;
  }

  .access .map-content div {
    text-align: center;
  }

  .access .map-content div h2 {
    font-size: 8.5333333333vw;
  }

  .access .map-content div h2 span {
    font-size: 5.8666666667vw;
    margin-right: 0;
  }

  .access .map-content div p {
    margin-top: 10.6666666667vw;
    font-size: 4.8vw;
    line-height: 2;
  }

  .access .map-content div a {
    margin-top: 5.3333333333vw;
    font-size: 4.8vw;
  }

  .access .map-content iframe {
    width: 100vw;
    margin-left: -5.3333333333vw;
    margin-top: 13.3333333333vw;
    height: 70.9333333333vw;
  }

  footer {
    padding-top: 17.0666666667vw;
    padding-bottom: 6.4vw;
  }

  footer a img {
    width: 35.7333333333vw;
  }

  footer p {
    font-size: 3.4666666667vw;
    margin-top: 13.3333333333vw;
  }

  footer p:first-of-type {
    font-size: 4.2666666667vw;
    margin-top: 4.2666666667vw;
  }

  footer p:last-of-type {
    margin-top: 2.6666666667vw;
  }

  .follow {
    position: fixed;
    z-index: 10;
    bottom: 0px;
    width: 100vw;
    height: 18.6666666667vw;
    right: 0;
    border-radius: 3.2vw 3.2vw 0 0;
  }

  .follow::before {
    border-radius: 3.2vw 3.2vw 0 0;
    right: 1.3333333333vw;
    top: 1.3333333333vw;
    bottom: 1.3333333333vw;
    left: 1.3333333333vw;
  }

  .follow a {
    writing-mode: unset;
  }
}

/*# sourceMappingURL=style.css.map */