@charset "UTF-8";
/* ==========================================================================
    Base
========================================================================== */
/*reset*/
*, *:after, *:before {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
}

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

html {
  font-size: 100%;
}

body {
  overflow-x: hidden;
  line-height: 2;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

a {
  display: block;
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none;
  outline: none !important;
  transition: 0.3s;
}

img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: middle;
  background: transparent;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: 700;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

dfn {
  font-weight: 400;
  font-style: normal;
}

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

input, select {
  vertical-align: middle;
}

li {
  list-style: none;
}

button {
  padding: 0;
  border: none;
  background-color: transparent;
  cursor: pointer;
  outline: none;
  appearance: none;
}

:root {
  --width-ratio: 1px/1;
  --width-wide-ratio: 100vw / 1440;
  --font-base-family: "Zen Kaku Gothic New", sans-serif;
  --font-base-family-en: "Stint Ultra Condensed", sans-serif;
  --font-base-size: 1rem; /* 16px */
  --regular: 400;
  --medium: 500;
  --semibold: 600;
  --bold: 700;
  --black: 900;
  --line-height: 1.9;
  --letter-spacing: 0.05em;
  --bg-main: #FFFFFF;
  --bg-brown: #3F3631;
  --white: #FFFFFF;
  --black: #000000;
  --beige: #FFF0D8;
  --brown: #5C5044;
  --orange: #E76E2F;
  --border: #B29D87;
}

@media screen and (max-width: 1440) {
  :root {
    --width-ratio: 100vw / 1440;
  }
}
@media screen and (max-width: 768px) {
  :root {
    --width-ratio: 100vw / 390;
    --width-wide-ratio: 100vw / 390;
  }
}
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
*:before, *:after {
  box-sizing: inherit;
}

html {
  background: var(--white-color);
  color: var(--brown);
  font-family: var(--font-base-family);
  font-size: var(--font-base-size);
  font-weight: var(--bold);
  line-height: var(--line-height);
  letter-spacing: var(--letter-spacing);
  overflow-x: hidden;
  box-sizing: border-box;
}

/* ==========================================================================
    Layout
========================================================================== */
/**
 * #Header
 */
.l-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  transition: 0.3s;
}
.l-header.is-scroll {
  background: var(--bg-brown);
}
.l-header.is-scroll .c-hamburger__line {
  background: var(--white);
}
.l-header.is-scroll .c-hamburger__line.is-active {
  background: var(--brown);
}

.l-header__inner {
  padding: calc(22 * var(--width-ratio)) calc(40 * var(--width-ratio)) calc(15 * var(--width-ratio));
}
@media (max-width: 768px) {
  .l-header__inner {
    padding: calc(16 * var(--width-ratio)) calc(18 * var(--width-ratio));
  }
}

.l-header-logo__link {
  display: block;
  max-width: calc(248 * var(--width-ratio));
  width: 100%;
}
@media (max-width: 768px) {
  .l-header-logo__link {
    max-width: calc(222 * var(--width-ratio));
  }
}

/**
 * #Footer
 */
.l-footer {
  background: var(--white);
}

.l-footer__inner {
  max-width: calc(770 * var(--width-ratio));
  width: 100%;
  margin: 0 auto;
  padding: calc(38 * var(--width-ratio)) calc(25 * var(--width-ratio)) calc(14 * var(--width-ratio));
}
@media (max-width: 768px) {
  .l-footer__inner {
    padding: calc(70 * var(--width-ratio)) calc(25 * var(--width-ratio)) calc(20 * var(--width-ratio));
  }
}

.l-footer__text {
  color: var(--black);
  font-size: calc(10 * var(--width-ratio));
  font-weight: 400;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.3;
  letter-spacing: normal;
  text-align: center;
}

.l-footer-logo {
  max-width: calc(412 * var(--width-ratio));
  width: 100%;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .l-footer-logo {
    max-width: calc(275 * var(--width-ratio));
  }
}

.l-footer-nav {
  margin-top: calc(28 * var(--width-ratio));
}
@media (max-width: 768px) {
  .l-footer-nav {
    margin-top: calc(33 * var(--width-ratio));
  }
}

.l-footer__list {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media (max-width: 768px) {
  .l-footer__list {
    flex-direction: column;
    gap: calc(12 * var(--width-ratio));
  }
}

.l-footer__link {
  color: var(--black);
  font-size: calc(13 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 2.1;
  letter-spacing: 0.04em;
}

.l-footer__link--blank {
  display: flex;
  align-items: baseline;
  gap: calc(8 * var(--width-ratio));
  text-decoration: underline;
}
.l-footer__link--blank::after {
  content: "";
  display: block;
  width: calc(10 * var(--width-ratio));
  height: calc(10 * var(--width-ratio));
  background-image: url(../images/common/icon_blank.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.l-footer__link--insta {
  display: flex;
  align-items: center;
  gap: calc(15 * var(--width-ratio));
  text-decoration: underline;
}
.l-footer__link--insta::before {
  content: "";
  display: block;
  width: calc(18 * var(--width-ratio));
  height: calc(18 * var(--width-ratio));
  background-image: url(../images/common/icon_insta.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.l-footer__copy {
  margin-top: calc(40 * var(--width-ratio));
  color: var(--black);
  font-size: calc(14 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 2.1;
  letter-spacing: 0.04em;
  text-align: center;
}
@media (max-width: 768px) {
  .l-footer__copy {
    font-size: calc(10 * var(--width-ratio));
    line-height: 1.2;
  }
}

/**
 * #Main
 */
.l-main-page {
  padding-top: calc(115 * var(--width-ratio));
}
@media (max-width: 768px) {
  .l-main-page {
    padding-top: calc(85 * var(--width-ratio));
  }
}

/**
 * #Section
 */
.l-section {
  position: relative;
  z-index: 1;
}

/* ==========================================================================
    Component
========================================================================== */
/**
 * #Inner
 */
.c-inner {
  width: 100%;
  margin: 0 auto;
}

/**
 * #Fade
 */
/* フェードイン(初期値) */
.js-fadeUp {
  opacity: 0;
  visibility: hidden;
  transform: translateY(50px);
  transition: opacity 1s, visibility 1s, transform 1s;
}
.js-fadeUp.is-inview {
  opacity: 1;
  visibility: visible;
  transform: translateY(0px);
}

/**
 * #Scroll
 */
.c-scroll {
  position: fixed;
  bottom: 30px;
  right: 60px;
  display: block;
  max-width: 81px;
  width: 100%;
  z-index: 100;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s ease;
}
.c-scroll.is-active {
  opacity: 1;
  pointer-events: auto;
}
@media (max-width: 768px) {
  .c-scroll {
    bottom: 50px;
    right: 23px;
    max-width: 44px;
  }
}
.c-scroll:hover {
  opacity: 0.8;
}

/**
 * #Hamburger
 */
.c-hamburger {
  position: absolute;
  top: 50%;
  right: calc(34 * var(--width-ratio));
  width: calc(50 * var(--width-ratio));
  height: calc(20 * var(--width-ratio));
  cursor: pointer;
  transform: translateY(-50%);
  z-index: 200;
}
@media (max-width: 768px) {
  .c-hamburger {
    right: calc(20 * var(--width-ratio));
    width: calc(40 * var(--width-ratio));
    height: calc(15 * var(--width-ratio));
  }
}

.c-hamburger__line {
  position: absolute;
  left: 0;
  display: block;
  width: calc(50 * var(--width-ratio));
  height: calc(2 * var(--width-ratio));
  background: #5C5044;
  transition: 0.3s;
}
@media (max-width: 768px) {
  .c-hamburger__line {
    width: calc(40 * var(--width-ratio));
  }
}
.c-hamburger__line.is-active {
  left: 50%;
  width: calc(35 * var(--width-ratio));
  height: calc(1 * var(--width-ratio));
  background: var(--brown);
}

.c-hamburger__line--top {
  top: 0;
}
.c-hamburger__line--top.is-active {
  transform: translate(-50%, -50%) rotate(45deg);
  top: calc(50% - 0px);
}

.c-hamburger__line--bottom {
  bottom: 0;
}
.c-hamburger__line--bottom.is-active {
  transform: translate(-50%, -50%) rotate(-45deg);
  top: calc(50% + 0px);
}

/**
 * #Slide
 */
.c-slide__arrows {
  position: absolute;
  top: 35%;
  left: 0;
  width: 100%;
  height: calc(45 * var(--width-ratio));
}
@media (max-width: 768px) {
  .c-slide__arrows {
    top: unset;
    bottom: calc(-10 * var(--width-ratio));
    height: calc(35 * var(--width-ratio));
  }
}

.c-slide__arrow {
  position: absolute;
  width: calc(45 * var(--width-ratio));
  height: calc(45 * var(--width-ratio));
  background-size: contain;
  background-repeat: no-repeat;
}
@media (max-width: 768px) {
  .c-slide__arrow {
    width: calc(35 * var(--width-ratio));
    height: calc(35 * var(--width-ratio));
  }
}

.c-slide__arrow--prev {
  left: 0;
  background-image: url(../images/plans/icon_arrow_prev.svg);
}
@media (max-width: 768px) {
  .c-slide__arrow--prev {
    left: calc(35 * var(--width-ratio));
  }
}

.c-slide__arrow--next {
  right: 0;
  background-image: url(../images/plans/icon_arrow_next.svg);
}
@media (max-width: 768px) {
  .c-slide__arrow--next {
    right: calc(35 * var(--width-ratio));
  }
}

/**
 * #Kv
 */
.c-kv__inner {
  position: relative;
  width: 100%;
}

.c-kv-catch {
  height: 100vh;
  background-image: url(../images/main/img_kv_pc.webp);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media (max-width: 768px) {
  .c-kv-catch {
    background-image: url(../images/main/img_kv_sp.webp);
  }
}

.c-kv__title {
  position: absolute;
  top: calc(130 * var(--width-ratio));
  right: calc(44 * var(--width-ratio));
  display: flex;
  align-items: flex-end;
  flex-direction: column;
}
@media (max-width: 768px) {
  .c-kv__title {
    top: calc(100 * var(--width-ratio));
    right: calc(14 * var(--width-ratio));
  }
}
.c-kv__title span {
  display: inline-block;
  margin-top: calc(3 * var(--width-ratio));
  padding: 0 calc(10 * var(--width-ratio));
  border-radius: calc(8 * var(--width-ratio));
  background: var(--white);
  color: var(--brawn);
  font-size: calc(20 * var(--width-ratio));
  font-weight: var(--bold);
  letter-spacing: 0.05em;
  text-align: center;
}
@media (max-width: 768px) {
  .c-kv__title span {
    margin-top: calc(2 * var(--width-ratio));
    padding: 0 calc(7 * var(--width-ratio));
    font-size: calc(14 * var(--width-ratio));
  }
}
.c-kv__title span:first-child {
  margin-top: 0;
}
.c-kv__title span.c-kv__lead {
  font-size: calc(32 * var(--width-ratio));
}
@media (max-width: 768px) {
  .c-kv__title span.c-kv__lead {
    font-size: calc(24 * var(--width-ratio));
  }
}

.c-kv__text {
  position: absolute;
  right: calc(50 * var(--width-ratio));
  bottom: calc(67 * var(--width-ratio));
  max-width: calc(491 * var(--width-ratio));
  width: 100%;
}
@media (max-width: 768px) {
  .c-kv__text {
    right: 50%;
    bottom: calc(26 * var(--width-ratio));
    max-width: calc(200 * var(--width-ratio));
    transform: translateX(50%);
  }
}
@media (max-width: 390px) {
  .c-kv__text {
    max-width: calc(360 * var(--width-ratio));
  }
}

/**
 * #Link
 */
.c-link {
  display: flex;
  align-items: stretch;
  gap: calc(5 * var(--width-ratio));
}
.c-link:hover .c-link-arrow {
  border: 1px solid #FEFEFE;
  background: url(../images/common/bg_brown.webp);
}
.c-link:hover .c-link-arrow::after {
  background-image: url(../images/common/icon_arrow_btn_hover.svg);
}

.c-link__text {
  padding: calc(15 * var(--width-ratio)) calc(20 * var(--width-ratio));
  border-radius: calc(5 * var(--width-ratio));
  border: 1px solid var(--brown);
  background: var(--white);
  color: var(--brown);
  font-size: calc(16 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.6;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .c-link__text {
    padding: calc(7 * var(--width-ratio)) calc(15 * var(--width-ratio));
    font-size: calc(14 * var(--width-ratio));
  }
}

.c-link-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(40 * var(--width-ratio));
  padding: calc(5 * var(--width-ratio));
  border-radius: calc(5 * var(--width-ratio));
  border: 1px solid var(--brown);
  background: url(../images/common/bg_orange.webp);
  transition: 0.3s;
}
.c-link-arrow::after {
  content: "";
  display: block;
  width: calc(10 * var(--width-ratio));
  height: calc(16 * var(--width-ratio));
  background-image: url(../images/common/icon_arrow_btn.svg);
  background-size: contain;
  background-repeat: no-repeat;
  transition: 0.3s;
}
@media (max-width: 768px) {
  .c-link-arrow::after {
    width: calc(6 * var(--width-ratio));
    height: calc(11 * var(--width-ratio));
  }
}

/**
 * #Town
 */
.c-town {
  padding-bottom: calc(94 * var(--width-ratio));
  border-bottom: 1px solid var(--beige);
  background: #3F3631;
}
@media (max-width: 768px) {
  .c-town {
    padding-bottom: calc(60 * var(--width-ratio));
  }
}

.c-town-top {
  position: relative;
  padding-top: calc(30 * var(--width-ratio));
}
@media (max-width: 768px) {
  .c-town-top {
    padding-top: calc(40 * var(--width-ratio));
  }
}
.c-town-top::before, .c-town-top::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 36%;
  height: calc(2 * var(--width-ratio));
  background: var(--beige);
  transform: translateY(-50%);
}
@media (max-width: 768px) {
  .c-town-top::before, .c-town-top::after {
    width: 16%;
  }
}
.c-town-top::before {
  left: 0;
}
.c-town-top::after {
  right: 0;
}

.c-town__title {
  position: relative;
  color: var(--beige);
  font-size: calc(70 * var(--width-ratio));
  font-weight: var(--regular);
  font-family: var(--font-base-family-en);
  line-height: 1.2;
  letter-spacing: 0.04em;
  text-align: center;
  text-transform: uppercase;
}
@media (max-width: 768px) {
  .c-town__title {
    font-size: calc(58 * var(--width-ratio));
  }
}
.c-town__title::before, .c-town__title::after {
  content: "";
  position: absolute;
  top: 45%;
  width: 36%;
  height: calc(1 * var(--width-ratio));
  background: var(--beige);
  transform: translateY(-50%);
}
@media (max-width: 768px) {
  .c-town__title::before, .c-town__title::after {
    top: 40%;
    width: 16%;
  }
}
.c-town__title::before {
  left: 0;
}
.c-town__title::after {
  right: 0;
}

.c-town__lead {
  display: block;
  font-size: calc(16 * var(--width-ratio));
  font-weight: var(--medium);
  font-family: var(--font-base-family);
  line-height: 1.3;
  letter-spacing: normal;
  text-align: center;
}
@media (max-width: 768px) {
  .c-town__lead {
    font-size: calc(14 * var(--width-ratio));
  }
}

.c-town__tag {
  display: block;
  margin-top: calc(5 * var(--width-ratio));
  font-size: calc(33 * var(--width-ratio));
  font-weight: var(--regular);
  font-family: var(--font-base-family-en);
  line-height: 1.3;
  letter-spacing: 0.04em;
  text-align: center;
}

.c-town-content {
  max-width: calc(1150 * var(--width-ratio));
  width: 100%;
  margin: calc(36 * var(--width-ratio)) auto 0;
  padding: 0 calc(20 * var(--width-ratio));
}
@media (max-width: 768px) {
  .c-town-content {
    margin: calc(32 * var(--width-ratio)) auto 0;
  }
}

.c-town__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-column-gap: 10px;
  grid-row-gap: 20px;
}
@media (max-width: 768px) {
  .c-town__list {
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 5px;
    grid-row-gap: 14px;
    max-width: calc(330 * var(--width-ratio));
    width: 100%;
    margin: 0 auto;
  }
}

.c-town__link {
  display: block;
}
.c-town__link:hover .c-town__thumb::before {
  opacity: 0.2;
}

.c-town__thumb {
  position: relative;
  display: block;
}
.c-town__thumb::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  border-radius: calc(10 * var(--width-ratio));
  background: var(--black);
  opacity: 0;
  transition: 0.3s;
}
.c-town__thumb picture,
.c-town__thumb img {
  border-radius: calc(10 * var(--width-ratio));
}

.c-town__text {
  display: flex;
  align-items: center;
  gap: calc(26 * var(--width-ratio));
  margin-top: calc(5 * var(--width-ratio));
  color: var(--beige);
  font-size: calc(20 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 1.3;
  letter-spacing: normal;
}
@media (max-width: 768px) {
  .c-town__text {
    gap: 0;
    justify-content: space-between;
    padding: 0 calc(6 * var(--width-ratio));
    font-size: calc(14 * var(--width-ratio));
    line-height: 2;
    letter-spacing: 0.04em;
  }
}
.c-town__text::after {
  content: "";
  display: block;
  width: calc(10 * var(--width-ratio));
  height: calc(17 * var(--width-ratio));
  background-image: url(../images/common/icon_arrow_beige.svg);
  background-size: contain;
  background-repeat: no-repeat;
}
@media (max-width: 768px) {
  .c-town__text::after {
    width: calc(7 * var(--width-ratio));
    height: calc(15 * var(--width-ratio));
  }
}

.c-town-bottom {
  position: relative;
  margin-top: calc(50 * var(--width-ratio));
  border-bottom: 1px solid var(--beige);
  z-index: 1;
}
@media (max-width: 768px) {
  .c-town-bottom {
    margin-top: calc(38 * var(--width-ratio));
    border: none;
  }
}
.c-town-bottom::before {
  content: "";
  position: absolute;
  top: calc(50 * var(--width-ratio));
  left: 50%;
  width: 100%;
  height: calc(1 * var(--width-ratio));
  background: var(--beige);
  transform: translateX(-50%);
  z-index: -1;
}
@media (max-width: 768px) {
  .c-town-bottom::before {
    content: none;
  }
}

.c-town__wrap {
  position: relative;
  display: flex;
  align-items: stretch;
  justify-content: center;
  padding: 0 calc(20px * var(--width-ratio));
}
@media (max-width: 768px) {
  .c-town__wrap {
    flex-direction: column;
    gap: calc(24 * var(--width-ratio));
  }
}

.c-town__unit {
  position: relative;
  max-width: 35.2083333333vw;
  width: 100%;
  padding: calc(20 * var(--width-ratio)) 0 calc(35 * var(--width-ratio));
}
@media (max-width: 1024px) {
  .c-town__unit {
    max-width: 45.208333vw;
  }
}
@media (max-width: 768px) {
  .c-town__unit {
    max-width: calc(326 * var(--width-ratio));
    margin: 0 auto;
    padding: 0 0 calc(35 * var(--width-ratio));
    border-left: 1px solid var(--beige);
    border-right: 1px solid var(--beige);
  }
}
.c-town__unit:hover .c-town-bottom__name,
.c-town__unit:hover .c-town-bottom__name--en,
.c-town__unit:hover .c-town-bottom__lead {
  color: #EF8851;
}
.c-town__unit:hover.c-town__unit--first .c-town-bottom__lead::before {
  background-image: url(../images/common/icon_pdf_hover.svg);
}
.c-town__unit:hover.c-town__unit--second .c-town-bottom__lead::before {
  background-image: url(../images/common/icon_mail_hover.svg);
}

.c-town__unit--first::before {
  content: "";
  position: absolute;
  top: 2.4vw;
  left: 0;
  width: calc(1 * var(--width-ratio));
  height: calc(195 * var(--width-ratio));
  background: var(--beige);
}
@media (max-width: 768px) {
  .c-town__unit--first::before {
    top: calc(10 * var(--width-ratio));
    left: 50%;
    width: calc(355 * var(--width-ratio));
    height: calc(1 * var(--width-ratio));
    transform: translateX(-50%);
    z-index: -1;
  }
}
.c-town__unit--first::after {
  content: none;
  position: absolute;
  bottom: calc(10 * var(--width-ratio));
  left: 50%;
  display: block;
  width: calc(355 * var(--width-ratio));
  height: calc(1 * var(--width-ratio));
  background: var(--beige);
  transform: translateX(-50%);
  z-index: -1;
}
@media (max-width: 768px) {
  .c-town__unit--first::after {
    content: "";
  }
}
.c-town__unit--first .c-town-bottom__lead::before {
  width: 3.4027777778vw;
  height: 3.75vw;
  background-image: url(../images/common/icon_pdf.svg);
}
@media (max-width: 768px) {
  .c-town__unit--first .c-town-bottom__lead::before {
    width: calc(38 * var(--width-ratio));
    height: calc(43 * var(--width-ratio));
  }
}

.c-town-bar {
  position: absolute;
  top: 33%;
  right: 0;
  width: 1px;
  height: 60%;
  border-right: 1px dotted var(--beige);
}
@media (max-width: 768px) {
  .c-town-bar {
    display: none;
  }
}

.c-town__unit--second::before {
  content: none;
  position: absolute;
  top: calc(10 * var(--width-ratio));
  left: 50%;
  display: block;
  width: calc(355 * var(--width-ratio));
  height: calc(1 * var(--width-ratio));
  background: var(--beige);
  transform: translateX(-50%);
  z-index: -1;
}
@media (max-width: 768px) {
  .c-town__unit--second::before {
    content: "";
  }
}
.c-town__unit--second::after {
  content: "";
  position: absolute;
  top: 2.4vw;
  right: 0;
  width: calc(1 * var(--width-ratio));
  height: calc(195 * var(--width-ratio));
  background: var(--beige);
}
@media (max-width: 768px) {
  .c-town__unit--second::after {
    position: absolute;
    top: unset;
    bottom: calc(10 * var(--width-ratio));
    left: 50%;
    display: block;
    width: calc(355 * var(--width-ratio));
    height: calc(1 * var(--width-ratio));
    transform: translateX(-50%);
    z-index: -1;
  }
}
.c-town__unit--second .c-town-bottom__lead::before {
  width: 3.6805555556vw;
  height: 2.4305555556vw;
  background-image: url(../images/common/icon_mail.svg);
}
@media (max-width: 768px) {
  .c-town__unit--second .c-town-bottom__lead::before {
    width: calc(38 * var(--width-ratio));
    height: calc(25 * var(--width-ratio));
  }
}

.c-town-bottom__title {
  text-align: center;
}
@media (max-width: 768px) {
  .c-town-bottom__title {
    margin-top: calc(-15 * var(--width-ratio));
  }
}

.c-town-bottom__name {
  display: inline-block;
  padding: 0 calc(20 * var(--width-ratio));
  background: #3F3631;
  color: var(--beige);
  font-size: calc(50 * var(--width-ratio));
  font-weight: var(--regular);
  font-family: var(--font-base-family-en);
  line-height: 1.3;
  letter-spacing: 0.04em;
  text-align: center;
  text-transform: uppercase;
  transition: 0.3s;
}
@media (max-width: 768px) {
  .c-town-bottom__name {
    font-size: calc(40 * var(--width-ratio));
  }
}

.c-town-bottom__name--en {
  display: block;
  color: var(--beige);
  font-size: calc(18 * var(--width-ratio));
  font-weight: var(--medium);
  font-family: var(--font-base-family);
  line-height: 1.3;
  letter-spacing: normal;
  text-align: center;
  transition: 0.3s;
}
@media (max-width: 768px) {
  .c-town-bottom__name--en {
    font-size: calc(14 * var(--width-ratio));
  }
}

.c-town-bottom__lead {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(20 * var(--width-ratio));
  height: calc(52 * var(--width-ratio));
  margin-top: calc(15 * var(--width-ratio));
  color: var(--beige);
  font-size: calc(14 * var(--width-ratio));
  font-weight: var(--medium);
  font-family: var(--font-base-family);
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-decoration: underline;
  transition: 0.3s;
}
@media (max-width: 768px) {
  .c-town-bottom__lead {
    font-size: calc(11 * var(--width-ratio));
  }
}
.c-town-bottom__lead::before {
  content: "";
  display: block;
  background-size: contain;
  background-repeat: no-repeat;
  transition: 0.3s;
}

/**
 * #Breadcrumbs
 */
.c-breadcrumbs {
  margin-top: calc(10 * var(--width-ratio));
  list-style-type: none;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  line-height: 1;
}
@media (max-width: 768px) {
  .c-breadcrumbs {
    margin-top: calc(4 * var(--width-ratio));
  }
}

.c-breadcrumbs__list {
  text-align: left;
}

.c-breadcrumbs__item {
  display: inline-block;
  color: var(--beige);
  font-size: calc(12 * var(--width-ratio));
  font-weight: var(--regular);
}
@media (max-width: 768px) {
  .c-breadcrumbs__item {
    font-size: calc(10 * var(--width-ratio));
  }
}
.c-breadcrumbs__item + .c-breadcrumbs__item::before {
  content: "〉";
  margin-left: calc(12 * var(--width-ratio));
  color: var(--beige);
}
@media (max-width: 768px) {
  .c-breadcrumbs__item + .c-breadcrumbs__item::before {
    margin-left: calc(5 * var(--width-ratio));
  }
}
.c-breadcrumbs__item:last-child {
  display: inline;
}

.c-breadcrumbs__link {
  display: inline-block;
  color: var(--beige);
}

/* ==========================================================================
    Project
========================================================================== */
/**
 * #Nav
 */
.p-nav {
  position: fixed;
  top: 0;
  right: 0;
  max-width: calc(562 * var(--width-ratio));
  width: 100%;
  border-radius: calc(10 * var(--width-ratio)) 0 0 calc(10 * var(--width-ratio));
  background: url(../images/common/bg_beige.webp);
  background-size: contain;
  transition: 0.3s;
  transform: translateX(100%);
  z-index: 150;
}
@media (max-width: 768px) {
  .p-nav {
    height: 100vh;
    border-radius: 0;
  }
}
.p-nav.is-active {
  transform: translateX(0);
}

.p-nav__inner {
  padding: calc(78 * var(--width-ratio)) calc(37 * var(--width-ratio)) calc(38 * var(--width-ratio)) calc(54 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-nav__inner {
    height: 100%;
    padding: calc(78 * var(--width-ratio)) calc(35 * var(--width-ratio)) calc(26 * var(--width-ratio));
    overflow: scroll;
  }
}

.p-nav__head {
  display: block;
  max-width: calc(426 * var(--width-ratio));
  width: 100%;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .p-nav__head {
    max-width: calc(290 * var(--width-ratio));
  }
}

.p-nav__list {
  max-width: calc(434 * var(--width-ratio));
  width: 100%;
  margin: calc(20 * var(--width-ratio)) auto 0;
}
@media (max-width: 768px) {
  .p-nav__list {
    max-width: calc(287 * var(--width-ratio));
  }
}

.p-nav__item {
  border-top: 1px solid var(--brown);
}
.p-nav__item:last-child {
  border-bottom: 1px solid var(--brown);
}

.p-nav__link {
  position: relative;
  padding: calc(22 * var(--width-ratio)) calc(20 * var(--width-ratio)) calc(20 * var(--width-ratio)) calc(40 * var(--width-ratio));
  color: var(--brown);
  font-size: calc(16 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 1.375;
  letter-spacing: normal;
}
@media (max-width: 768px) {
  .p-nav__link {
    padding: calc(22 * var(--width-ratio)) calc(16 * var(--width-ratio));
    font-size: 4.1025641026vw;
  }
}
.p-nav__link::after {
  content: "";
  position: absolute;
  top: 50%;
  right: calc(20 * var(--width-ratio));
  display: block;
  width: calc(7 * var(--width-ratio));
  height: calc(15 * var(--width-ratio));
  background-image: url(../images/common/icon_arrow_nav.svg);
  background-size: contain;
  background-repeat: no-repeat;
  transform: translateY(-50%);
}
@media (max-width: 768px) {
  .p-nav__link::after {
    width: calc(9 * var(--width-ratio));
    height: calc(17 * var(--width-ratio));
  }
}

.p-nav-area {
  max-width: calc(470 * var(--width-ratio));
  width: 100%;
  margin: calc(47 * var(--width-ratio)) auto 0;
  border-top: 1px solid var(--brown);
  border-bottom: 1px solid var(--brown);
}
@media (max-width: 768px) {
  .p-nav-area {
    max-width: calc(320 * var(--width-ratio));
  }
}

.p-nav-area__wrap {
  position: relative;
  display: flex;
  align-items: stretch;
  max-width: calc(430 * var(--width-ratio));
  width: 100%;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .p-nav-area__wrap {
    flex-direction: column;
    max-width: calc(287 * var(--width-ratio));
  }
}
.p-nav-area__wrap::before, .p-nav-area__wrap::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 1px;
  height: calc(127 * var(--width-ratio));
  background: var(--brown);
  transform: translateY(-50%);
}
@media (max-width: 768px) {
  .p-nav-area__wrap::before, .p-nav-area__wrap::after {
    height: calc(229 * var(--width-ratio));
  }
}
.p-nav-area__wrap::before {
  left: 0;
}
.p-nav-area__wrap::after {
  right: 0;
}

.p-nav-area__link {
  position: relative;
  max-width: calc(216 * var(--width-ratio));
  width: 100%;
  padding: calc(20 * var(--width-ratio));
  color: var(--white);
  background-image: url(../images/common/bg_orange.webp);
  background-size: contain;
  font-size: calc(38 * var(--width-ratio));
  font-weight: var(--regular);
  font-family: var(--font-base-family-en);
  line-height: 1.3;
  text-align: center;
  text-transform: uppercase;
}
@media (max-width: 768px) {
  .p-nav-area__link {
    max-width: calc(287 * var(--width-ratio));
    margin: 0 auto;
    font-size: calc(45 * var(--width-ratio));
    letter-spacing: 0.04em;
  }
}
.p-nav-area__link:first-child {
  padding: calc(20 * var(--width-ratio)) calc(40 * var(--width-ratio)) calc(20 * var(--width-ratio)) calc(40 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-nav-area__link:first-child {
    padding: calc(11 * var(--width-ratio)) calc(60 * var(--width-ratio));
  }
}
.p-nav-area__link:first-child::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  width: 1px;
  height: calc(130 * var(--width-ratio));
  border-right: 1px dotted var(--brown);
  transform: translateY(-50%);
}
@media (max-width: 768px) {
  .p-nav-area__link:first-child::after {
    top: unset;
    bottom: 0;
    right: 50%;
    width: calc(320 * var(--width-ratio));
    height: 1px;
    border-right: none;
    border-top: 1px dotted var(--brown);
    transform: translateX(50%);
  }
}
.p-nav-area__link:last-child {
  padding: calc(20 * var(--width-ratio)) calc(58 * var(--width-ratio)) calc(20 * var(--width-ratio)) calc(48 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-nav-area__link:last-child {
    padding: calc(11 * var(--width-ratio)) calc(80 * var(--width-ratio));
  }
}
.p-nav-area__link span {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: calc(13 * var(--width-ratio));
  font-weight: var(--medium);
  font-family: var(--font-base-family);
  line-height: 1.3;
}
@media (max-width: 768px) {
  .p-nav-area__link span {
    font-size: calc(18 * var(--width-ratio));
  }
}
.p-nav-area__link span::after {
  content: "";
  display: block;
  width: calc(7 * var(--width-ratio));
  height: calc(13 * var(--width-ratio));
  background-image: url(../images/common/icon_arrow_white.svg);
  background-size: contain;
  background-repeat: no-repeat;
  transition: 0.3s;
}
@media (max-width: 768px) {
  .p-nav-area__link span::after {
    width: calc(8 * var(--width-ratio));
    height: calc(14 * var(--width-ratio));
  }
}
.p-nav-area__link:hover {
  color: var(--brown);
}
.p-nav-area__link:hover span {
  color: var(--brown);
}
.p-nav-area__link:hover span::after {
  background-image: url(../images/common/icon_arrow_brown.svg);
}

/**
 * #News
 */
.p-news {
  border-top: 1px solid var(--black);
  border-bottom: 1px solid var(--black);
  background: var(--brown);
}

.p-news__inner {
  display: flex;
  align-items: center;
  max-width: calc(1640 * var(--width-ratio));
  padding: calc(4 * var(--width-ratio)) calc(100 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-news__inner {
    padding: calc(18 * var(--width-ratio)) calc(20 * var(--width-ratio));
  }
}

.p-news-catch {
  position: relative;
  padding-right: calc(36 * var(--width-ratio));
  color: var(--beige);
  font-size: calc(35 * var(--width-ratio));
  font-weight: var(--regular);
  font-family: var(--font-base-family-en);
  line-height: 1.6;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}
@media (max-width: 768px) {
  .p-news-catch {
    display: none;
  }
}
.p-news-catch::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: calc(2 * var(--width-ratio));
  height: calc(30 * var(--width-ratio));
  background: var(--beige);
  transform: translateY(-50%);
}

.p-news-detail {
  display: flex;
  align-items: center;
  gap: calc(46 * var(--width-ratio));
  padding-left: calc(44 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-news-detail {
    gap: 0;
    padding: 0;
  }
}

.p-news__date,
.p-news__title {
  color: var(--beige);
  font-size: calc(16 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.6;
  letter-spacing: 0.05em;
}

@media (max-width: 768px) {
  .p-news__date {
    position: relative;
    padding-right: calc(10 * var(--width-ratio));
    font-size: calc(14 * var(--width-ratio));
  }
  .p-news__date::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    width: calc(1 * var(--width-ratio));
    height: calc(26 * var(--width-ratio));
    background: #FFFFDC;
    transform: translateY(-50%);
  }
}

@media (max-width: 768px) {
  .p-news__title {
    padding-left: calc(10 * var(--width-ratio));
    font-size: calc(14 * var(--width-ratio));
    line-height: 1.3;
  }
}

/**
 * #Intro
 */
.p-intro {
  position: relative;
  background: #3F3631;
  z-index: 1;
}
.p-intro::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  max-width: calc(1424 * var(--width-ratio));
  width: 100%;
  height: calc(1110 * var(--width-ratio));
  background-image: url(../images/main/img_base_pc.webp);
  background-size: contain;
  background-repeat: no-repeat;
  z-index: -1;
}
@media (max-width: 768px) {
  .p-intro::before {
    top: unset;
    bottom: 0;
    right: calc(-10 * var(--width-ratio));
    max-width: calc(425 * var(--width-ratio));
    width: calc(425 * var(--width-ratio));
    height: calc(463 * var(--width-ratio));
    background-image: url(../images/main/img_base_sp.webp);
  }
}

.p-intro__inner {
  max-width: calc(1640 * var(--width-ratio));
  padding: calc(60 * var(--width-ratio)) calc(100 * var(--width-ratio)) calc(260 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-intro__inner {
    padding: calc(32 * var(--width-ratio)) 0 calc(166 * var(--width-ratio)) calc(36 * var(--width-ratio));
  }
}

.p-intro__title {
  max-width: calc(290 * var(--width-ratio));
  width: 100%;
  padding-bottom: calc(15 * var(--width-ratio));
  border-bottom: 1px dotted var(--beige);
  color: var(--beige);
  font-size: calc(60 * var(--width-ratio));
  font-weight: var(--regular);
  font-family: var(--font-base-family-en);
  line-height: 1.4;
  letter-spacing: 0.02em;
}
@media (max-width: 768px) {
  .p-intro__title {
    max-width: calc(283 * var(--width-ratio));
    font-size: calc(40 * var(--width-ratio));
  }
}
.p-intro__title span {
  display: block;
  color: var(--orange);
  font-size: calc(16 * var(--width-ratio));
  font-weight: var(--bold);
  font-family: var(--font-base-family);
  line-height: 1.4;
  letter-spacing: 0.2em;
}
@media (max-width: 768px) {
  .p-intro__title span {
    font-size: calc(14 * var(--width-ratio));
  }
}

.p-intro__text {
  margin-top: calc(15 * var(--width-ratio));
  color: var(--beige);
  font-size: calc(15 * var(--width-ratio));
  font-weight: var(--bold);
}
@media (max-width: 768px) {
  .p-intro__text {
    font-size: calc(14 * var(--width-ratio));
    line-height: 2;
    letter-spacing: normal;
  }
}

/**
 * #Land
 */
.p-land {
  position: relative;
  background-image: url(../images/common/bg_beige.webp);
  z-index: 2;
}
.p-land::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  display: block;
  width: 100vw;
  height: calc(448 * var(--width-ratio));
  background-image: url(../images/main/img_design.png);
  background-size: cover;
  background-repeat: no-repeat;
  transform: translateX(-50%);
  z-index: -1;
}
@media (max-width: 768px) {
  .p-land::before {
    background-position: center;
  }
}

.p-land__inner {
  max-width: calc(1640 * var(--width-ratio));
  padding: calc(70 * var(--width-ratio)) calc(100 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-land__inner {
    padding: calc(70 * var(--width-ratio)) calc(24 * var(--width-ratio)) calc(56 * var(--width-ratio));
  }
}

.p-land__lead {
  color: #E76E2F;
  font-size: calc(28 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.75;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-land__lead {
    font-size: calc(22 * var(--width-ratio));
    line-height: 1.7;
  }
}

.p-land__flex {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
}
@media (max-width: 768px) {
  .p-land__flex {
    flex-direction: column;
  }
}

.p-land__text {
  margin-top: calc(30 * var(--width-ratio));
  color: var(--brown);
  font-size: calc(15 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-land__text {
    margin-top: calc(35 * var(--width-ratio));
    font-size: calc(14 * var(--width-ratio));
    line-height: 2;
    letter-spacing: normal;
  }
}

@media (max-width: 768px) {
  .p-land__link {
    margin-top: calc(46 * var(--width-ratio));
  }
}

.p-land-note {
  margin-top: calc(366 * var(--width-ratio));
  color: #C1C1C1;
  font-size: calc(11 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 1.6;
  letter-spacing: normal;
}
@media (max-width: 768px) {
  .p-land-note {
    margin-top: calc(290 * var(--width-ratio));
    font-size: calc(10 * var(--width-ratio));
  }
}

/**
 * #Our
 */
.p-our .splide.is-initialized:not(.is-active) .splide__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
@media (max-width: 1024px) {
  .p-our .splide.is-initialized:not(.is-active) .splide__list {
    display: block;
  }
}

.p-our__title.u-title {
  justify-content: space-between;
}
@media (max-width: 768px) {
  .p-our__title.u-title {
    align-items: flex-start;
    flex-direction: column;
    gap: calc(10 * var(--width-ratio));
    padding: calc(35 * var(--width-ratio)) calc(18 * var(--width-ratio)) calc(20 * var(--width-ratio)) calc(24 * var(--width-ratio));
    font-size: calc(58 * var(--width-ratio));
    line-height: 1.1;
  }
}
.p-our__title.u-title span {
  font-size: calc(15 * var(--width-ratio));
  line-height: 1.9;
  letter-spacing: 0.05em;
  text-align: right;
}
@media (max-width: 768px) {
  .p-our__title.u-title span {
    font-size: calc(14 * var(--width-ratio));
    line-height: 2;
    letter-spacing: 0.04em;
    text-align: left;
  }
}

.p-our__unit {
  display: flex;
  align-items: stretch;
  border-bottom: 1px solid var(--beige);
}
@media (max-width: 768px) {
  .p-our__unit {
    flex-direction: column-reverse;
  }
}
.p-our__unit:first-child {
  grid-area: 1/1/2/3;
}
.p-our__unit:nth-child(2) {
  grid-area: 2/1/3/2;
}
@media (max-width: 1024px) {
  .p-our__unit:nth-child(2) {
    grid-area: 1/1/2/3;
  }
}
.p-our__unit:last-child {
  grid-area: 2/2/3/3;
}
@media (max-width: 1024px) {
  .p-our__unit:last-child {
    grid-area: 1/1/2/3;
  }
}

.p-our-catch {
  max-width: 25%;
  width: 100%;
  padding: calc(50 * var(--width-ratio)) calc(40 * var(--width-ratio)) calc(32 * var(--width-ratio));
  border-right: 1px solid var(--beige);
}
@media (max-width: 1024px) {
  .p-our-catch {
    max-width: 45%;
  }
}
@media (max-width: 768px) {
  .p-our-catch {
    max-width: 100%;
    padding: calc(30 * var(--width-ratio)) calc(40 * var(--width-ratio)) calc(35 * var(--width-ratio));
    border: none;
  }
}

.p-our-catch--first {
  background-image: url(../images/common/bg_orange.webp);
}
.p-our-catch--first:hover .p-our__link {
  color: #5C5044;
  transition: 0.3s;
}
.p-our-catch--first:hover .p-our__link::after {
  background-image: url(../images/common/icon_arrow_brown.svg);
}

.p-our-catch--second {
  background-image: url(../images/common/bg_brown.webp);
}
.p-our-catch--second:hover .p-our__link {
  color: #EF8851;
  transition: 0.3s;
}
.p-our-catch--second:hover .p-our__link::after {
  background-image: url(../images/common/icon_arrow_orange.svg);
}

.p-our__head {
  position: relative;
  display: flex;
  align-items: baseline;
  justify-content: space-between;
}
.p-our__head span {
  display: block;
  margin-top: calc(10 * var(--width-ratio));
  color: var(--beige);
  font-size: calc(18 * var(--width-ratio));
  font-weight: var(--medium);
  font-family: var(--font-base-family);
  line-height: 1.5;
  letter-spacing: 0.06em;
}
@media (max-width: 768px) {
  .p-our__head span {
    margin-top: 0;
    font-size: calc(18 * var(--width-ratio));
    line-height: 1.5;
  }
}
.p-our__head img {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: calc(28 * var(--width-ratio));
}

.p-our__head--first::after {
  content: "";
  position: absolute;
  top: 0;
  left: calc(110 * var(--width-ratio));
  display: block;
  width: calc(30 * var(--width-ratio));
  height: calc(28 * var(--width-ratio));
  background-image: url(../images/main/icon_cafe.svg);
  background-size: contain;
  background-repeat: no-repeat;
}
@media (max-width: 768px) {
  .p-our__head--first::after {
    content: none;
  }
}

.p-our__lead {
  color: var(--beige);
  font-size: calc(90 * var(--width-ratio));
  font-weight: var(--regular);
  font-family: var(--font-base-family-en);
  line-height: 1.1;
  letter-spacing: 0.04em;
}
@media (max-width: 768px) {
  .p-our__lead {
    font-size: calc(70 * var(--width-ratio));
    line-height: 1.4;
  }
}

.p-our__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: calc(100 * var(--width-ratio));
  width: 100%;
  margin-top: calc(150 * var(--width-ratio));
  color: var(--beige);
  font-size: calc(23 * var(--width-ratio));
  font-weight: var(--regular);
  font-family: var(--font-base-family-en);
  line-height: 1.4;
  letter-spacing: 0.04em;
  text-decoration: underline;
}
@media (max-width: 768px) {
  .p-our__link {
    max-width: calc(85 * var(--width-ratio));
    margin-top: calc(32 * var(--width-ratio));
    font-size: calc(20 * var(--width-ratio));
  }
}
.p-our__link::after {
  content: "";
  display: block;
  width: calc(9 * var(--width-ratio));
  height: calc(16 * var(--width-ratio));
  background-image: url(../images/common/icon_arrow_beige.svg);
  background-size: contain;
  background-repeat: no-repeat;
  transition: 0.3s;
}
@media (max-width: 768px) {
  .p-our__link::after {
    width: calc(7 * var(--width-ratio));
    height: calc(11 * var(--width-ratio));
  }
}

@media (max-width: 1024px) {
  .p-our-img {
    width: 100%;
  }
}
@media (max-width: 768px) {
  .p-our-img {
    max-width: 100%;
    height: calc(405 * var(--width-ratio));
    object-fit: cover;
  }
}
.p-our-img picture,
.p-our-img img {
  display: block;
  height: 100%;
  object-fit: cover;
}

.p-our-bottom {
  display: flex;
  align-items: stretch;
}

.p-our__unit--first .p-our-catch,
.p-our__unit--second .p-our-catch {
  max-width: 50%;
  width: 100%;
}
@media (max-width: 1024px) {
  .p-our__unit--first .p-our-catch,
  .p-our__unit--second .p-our-catch {
    max-width: 45%;
  }
}
@media (max-width: 768px) {
  .p-our__unit--first .p-our-catch,
  .p-our__unit--second .p-our-catch {
    max-width: 100%;
  }
}

.p-our__unit--first .p-our-catch {
  background-image: url(../images/common/bg_brown.webp);
}

.p-our__unit--second .p-our-catch {
  background-image: url(../images/common/bg_orange.webp);
}

.p-our__arrows {
  position: absolute;
  bottom: calc(28 * var(--width-ratio));
  right: calc(38 * var(--width-ratio));
}

.p-our__arrow {
  width: calc(28 * var(--width-ratio));
  height: calc(28 * var(--width-ratio));
  background-size: contain;
  background-repeat: no-repeat;
}

.p-our__arrow--prev {
  background-image: url(../images/common/icon_arrow_prev.svg);
}

.p-our__arrow--next {
  background-image: url(../images/common/icon_arrow_next.svg);
}

/**
 * #About
 */
.p-about-top {
  position: relative;
  background-image: url(../images/common/bg_beige.webp);
}
.p-about-top::before, .p-about-top::after {
  content: "";
  position: absolute;
  top: 0;
  display: block;
  width: calc(120 * var(--width-ratio));
  height: 100%;
  background-size: contain;
  background-repeat: repeat-y;
}
@media (max-width: 1024px) {
  .p-about-top::before, .p-about-top::after {
    width: calc(60 * var(--width-ratio));
  }
}
.p-about-top::before {
  left: 0;
  background-image: url(../images/main/deco_about_before.webp);
}
@media (max-width: 768px) {
  .p-about-top::before {
    background-image: url(../images/main/deco_about_sp.webp);
  }
}
.p-about-top::after {
  right: 0;
  background-image: url(../images/main/deco_about_after.webp);
}
@media (max-width: 768px) {
  .p-about-top::after {
    content: none;
  }
}

.p-about-top__inner {
  max-width: calc(1852 * var(--width-ratio));
  padding: calc(62 * var(--width-ratio)) calc(206 * var(--width-ratio));
}
@media (max-width: 1024px) {
  .p-about-top__inner {
    padding: calc(62 * var(--width-ratio)) calc(116 * var(--width-ratio));
  }
}
@media (max-width: 768px) {
  .p-about-top__inner {
    padding: calc(22 * var(--width-ratio)) calc(30 * var(--width-ratio)) calc(64 * var(--width-ratio)) calc(90 * var(--width-ratio));
  }
}

.p-about-area {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(115 * var(--width-ratio));
}
@media (max-width: 1024px) {
  .p-about-area {
    gap: calc(30 * var(--width-ratio));
  }
}
@media (max-width: 768px) {
  .p-about-area {
    flex-direction: column;
  }
}

.p-about-catch {
  max-width: calc(433 * var(--width-ratio));
  width: 100%;
  border-top: 2px solid var(--brown);
  border-bottom: 2px solid var(--brown);
}
@media (max-width: 768px) {
  .p-about-catch {
    border-bottom: none;
  }
}

.p-about__head {
  padding: calc(27 * var(--width-ratio)) 0 calc(14 * var(--width-ratio));
  border-bottom: 1px double var(--brown);
}
@media (max-width: 768px) {
  .p-about__head {
    padding: calc(22 * var(--width-ratio)) 0 calc(14 * var(--width-ratio));
  }
}

.p-about__tag {
  display: block;
  color: var(--brown);
  font-size: calc(30 * var(--width-ratio));
  font-weight: var(--regular);
  font-family: "Parisienne", cursive;
  line-height: 1.4;
  letter-spacing: 0.04em;
  text-align: center;
}

.p-about__title {
  margin-top: calc(10 * var(--width-ratio));
  color: var(--brown);
  font-size: calc(60 * var(--width-ratio));
  font-weight: var(--regular);
  font-family: var(--font-base-family-en);
  line-height: 1.4;
  letter-spacing: 0.04em;
  text-align: center;
  text-transform: uppercase;
}
@media (max-width: 768px) {
  .p-about__title {
    font-size: calc(58 * var(--width-ratio));
    line-height: 1.2;
    letter-spacing: 0.04em;
  }
}

.p-about__lead {
  display: block;
  color: var(--brown);
  font-size: calc(16 * var(--width-ratio));
  font-weight: var(--bold);
  font-family: var(--font-base-family);
  line-height: 1.6;
  letter-spacing: 0.05em;
  text-align: center;
}
@media (max-width: 768px) {
  .p-about__lead {
    font-size: calc(14 * var(--width-ratio));
  }
}

.p-about__body {
  margin-top: calc(5 * var(--width-ratio));
  padding: calc(33 * var(--width-ratio)) calc(24 * var(--width-ratio)) calc(32 * var(--width-ratio));
  border-top: 1px double var(--brown);
}
@media (max-width: 768px) {
  .p-about__body {
    padding: calc(30 * var(--width-ratio)) 0 0;
  }
}

.p-about-img {
  max-width: calc(476 * var(--width-ratio));
  width: 100%;
}
.p-about__link {
  margin-top: calc(18 * var(--width-ratio));
}
/**
 * #Page
 */
.p-page-lower {
  background: #3F3631;
}
.p-page-lower .c-hamburger__line {
  background: var(--white);
}
.p-page-lower .c-hamburger__line.is-active {
  background: var(--brown);
}

.p-page-equipment .c-town {
  margin-top: calc(114 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-page-equipment .c-town {
    margin-top: calc(60 * var(--width-ratio));
  }
}

.p-page-top {
  width: 100%;
  margin: 0 auto;
  padding: 0 calc(42 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-page-top {
    padding: 0 calc(15 * var(--width-ratio));
  }
}

.p-page-mv {
  position: relative;
}

.p-page-img {
  display: block;
  border-radius: calc(10 * var(--width-ratio));
}
.p-page-img img {
  border-radius: calc(10 * var(--width-ratio));
}

.p-page__title {
  position: absolute;
  top: 50%;
  left: calc(80 * var(--width-ratio));
  color: var(--white);
  font-size: calc(40 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 1.2;
  letter-spacing: 0.1em;
  transform: translateY(-50%);
}
@media (max-width: 768px) {
  .p-page__title {
    left: calc(20 * var(--width-ratio));
    font-size: calc(26 * var(--width-ratio));
  }
}
.p-page__title span {
  display: block;
  margin-top: calc(15 * var(--width-ratio));
  font-size: calc(24 * var(--width-ratio));
  font-weight: var(--regular);
  font-family: "Bebas Neue", sans-serif;
  text-transform: uppercase;
}
@media (max-width: 768px) {
  .p-page__title span {
    font-size: calc(20 * var(--width-ratio));
  }
}

.p-page-content--land {
  margin-top: calc(30 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-page-content--land {
    margin-top: calc(40 * var(--width-ratio));
  }
}

.p-page-content--plans {
  margin-top: calc(30 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-page-content--plans {
    margin-top: calc(40 * var(--width-ratio));
  }
}

.p-page-content--equipment {
  margin-top: calc(48 * var(--width-ratio));
  padding: 0 calc(42 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-page-content--equipment {
    margin-top: calc(40 * var(--width-ratio));
    padding: 0;
  }
}

.p-page-content--structure {
  margin-top: calc(48 * var(--width-ratio));
  padding: 0 calc(42 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-page-content--structure {
    margin-top: calc(40 * var(--width-ratio));
    padding: 0;
  }
}

.p-page-content--location {
  margin-top: calc(30 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-page-content--location {
    margin-top: calc(40 * var(--width-ratio));
  }
}

.p-page-content--about {
  margin-top: calc(60 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-page-content--about {
    margin-top: calc(40 * var(--width-ratio));
  }
}

.p-page-content--download {
  margin-top: calc(60 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-page-content--download {
    margin-top: calc(40 * var(--width-ratio));
  }
}

/**
 * #Design
 */
.p-design {
  position: relative;
  padding-bottom: 24.8611111111vw;
  background-image: url(../images/common/bg_beige.webp);
}
@media (max-width: 768px) {
  .p-design {
    padding-bottom: 92.8205128205vw;
  }
}
.p-design::before, .p-design::after {
  content: "";
  position: absolute;
  left: 50%;
  display: block;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  transform: translateX(-50%);
}
.p-design::before {
  bottom: calc(164 * var(--width-ratio));
  width: 100vw;
  height: 9.7222222222vw;
  background-image: url(../images/design/text_design_pc.svg);
}
@media (max-width: 768px) {
  .p-design::before {
    bottom: calc(184 * var(--width-ratio));
    height: calc(132 * var(--width-ratio));
    background-image: url(../images/design/text_design_sp.svg);
  }
}
.p-design::after {
  bottom: 0;
  width: 100vw;
  height: calc(280 * var(--width-ratio));
  background-image: url(../images/design/img_design.webp);
}

.p-design__heading.u-title {
  padding: calc(10 * var(--width-ratio)) 6.9444444444vw;
}

.p-design-content {
  padding: calc(48 * var(--width-ratio)) calc(25 * var(--width-ratio)) 0;
}
@media (max-width: 768px) {
  .p-design-content {
    padding: calc(40 * var(--width-ratio)) calc(25 * var(--width-ratio)) 0;
  }
}

.p-design-intro {
  display: flex;
  align-items: center;
  gap: calc(120 * var(--width-ratio));
}
@media (max-width: 1024px) {
  .p-design-intro {
    gap: calc(60 * var(--width-ratio));
  }
}

.p-design__thumb {
  max-width: 50vw;
  width: 100%;
  transform: translateX(calc(-25 * var(--width-ratio)));
}
@media (max-width: 768px) {
  .p-design__thumb {
    display: none;
  }
}

.p-design__feature {
  display: flex;
  align-items: baseline;
  flex-direction: column;
  gap: calc(18 * var(--width-ratio));
  max-width: 33.75vw;
  width: 100%;
}
@media (max-width: 768px) {
  .p-design__feature {
    max-width: 100%;
    gap: calc(10 * var(--width-ratio));
  }
}
.p-design__feature span {
  display: inline-block;
  padding: calc(2 * var(--width-ratio)) calc(20 * var(--width-ratio));
  border-radius: calc(5 * var(--width-ratio));
  background: var(--white);
  color: var(--orange);
  font-size: calc(32 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.4;
  letter-spacing: 0.07em;
}
@media (max-width: 1024px) {
  .p-design__feature span {
    font-size: calc(21 * var(--width-ratio));
  }
}
@media (max-width: 768px) {
  .p-design__feature span {
    padding: calc(2 * var(--width-ratio)) calc(12 * var(--width-ratio));
    font-size: calc(22 * var(--width-ratio));
  }
}

.p-design-detail {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: calc(50 * var(--width-ratio));
  margin-top: calc(86 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-design-detail {
    flex-direction: column;
    margin-top: calc(52 * var(--width-ratio));
  }
}

.p-design__summary {
  max-width: calc(441 * var(--width-ratio));
  width: 100%;
  color: var(--brown);
}

.p-design__lead {
  padding-left: calc(30 * var(--width-ratio));
  font-size: calc(20 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 2.1;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-design__lead {
    padding-left: 0;
    font-size: calc(17 * var(--width-ratio));
    line-height: 1.9;
  }
}

.p-design__title {
  font-size: calc(50 * var(--width-ratio));
  font-weight: var(--regular);
  font-family: var(--font-base-family-en);
  line-height: 2;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-design__title {
    font-size: calc(40 * var(--width-ratio));
    line-height: 2;
    transform: translateX(calc(-25 * var(--width-ratio)));
  }
}

.p-design__text {
  margin-top: calc(44 * var(--width-ratio));
  padding-left: calc(30 * var(--width-ratio));
  font-size: calc(17 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 2.6;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-design__text {
    padding-left: 0;
    font-size: calc(14 * var(--width-ratio));
    line-height: 2.2;
  }
}

.p-design__figure {
  max-width: calc(448 * var(--width-ratio));
  width: 100%;
  margin-top: calc(88 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-design__figure {
    max-width: calc(340 * var(--width-ratio));
    margin: calc(45 * var(--width-ratio)) auto 0;
  }
}

.p-design__desc {
  max-width: 53.125vw;
  width: 100%;
}
@media (max-width: 768px) {
  .p-design__desc {
    max-width: 100%;
  }
}

@media (max-width: 768px) {
  .p-design__scroll {
    width: 100vw;
    padding-right: calc(70 * var(--width-ratio));
    padding-bottom: calc(20 * var(--width-ratio));
    overflow-x: scroll;
  }
}

.p-design__map {
  display: block;
  max-width: 53.125vw;
  width: 100%;
}
@media (max-width: 768px) {
  .p-design__map {
    max-width: 537px;
    width: 537px;
  }
}

.p-design__menu {
  display: none;
  margin-top: calc(35 * var(--width-ratio));
  padding: calc(14 * var(--width-ratio)) calc(40 * var(--width-ratio)) calc(4 * var(--width-ratio));
  border-top: 2px dotted var(--border);
}
@media (max-width: 768px) {
  .p-design__menu {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
}

.p-design__caption {
  width: 100%;
  margin: 0 auto;
}
.p-design__caption:first-child {
  position: relative;
  max-width: calc(67 * var(--width-ratio));
}
.p-design__caption:first-child::after {
  content: "";
  position: absolute;
  top: 0;
  right: calc(-30 * var(--width-ratio));
  width: 1px;
  height: 100%;
  border-right: 2px dotted var(--border);
}
.p-design__caption:last-child {
  max-width: calc(91 * var(--width-ratio));
}

/**
 * #House
 */
.p-house {
  max-width: 90.2777777778vw;
  width: 100%;
  margin: 4.8611111111vw auto 0;
  padding: 0 calc(25 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-house {
    max-width: 100%;
    margin: calc(45 * var(--width-ratio)) auto;
  }
}

.p-house__heading.u-title {
  padding: calc(10 * var(--width-ratio)) 4.1666666667vw;
  border-radius: calc(10 * var(--width-ratio)) calc(10 * var(--width-ratio)) 0 0;
}

.p-house-content {
  position: relative;
  padding: calc(55 * var(--width-ratio)) 5.5555555556vw calc(60 * var(--width-ratio));
  border-radius: 0 0 calc(10 * var(--width-ratio)) calc(10 * var(--width-ratio));
  background: url(../images/design/bg_house.webp);
}
@media (max-width: 768px) {
  .p-house-content {
    padding: calc(28 * var(--width-ratio)) calc(20 * var(--width-ratio)) calc(60 * var(--width-ratio));
  }
}

.p-house-img {
  position: absolute;
  top: -12.7777777778vw;
  right: 4.5833333333vw;
  max-width: calc(574 * var(--width-ratio));
  width: 100%;
}
@media (max-width: 1024px) {
  .p-house-img {
    top: -4.777778vw;
    max-width: calc(374 * var(--width-ratio));
  }
}
@media (max-width: 768px) {
  .p-house-img {
    position: unset;
    max-width: 100%;
    margin: 0 auto;
  }
}

.p-house__feature {
  position: relative;
  display: flex;
  align-items: baseline;
  flex-direction: column;
  gap: calc(7 * var(--width-ratio));
  max-width: 29.6527777778vw;
  width: 100%;
  padding-bottom: calc(50 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-house__feature {
    max-width: 100%;
    gap: calc(10 * var(--width-ratio));
    margin-top: calc(40 * var(--width-ratio));
    padding-bottom: calc(28 * var(--width-ratio));
  }
}
.p-house__feature::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  max-width: calc(450 * var(--width-ratio));
  width: 100%;
  height: 1px;
  border-bottom: 2px dotted var(--border);
}
.p-house__feature span {
  display: inline-block;
  padding: calc(2 * var(--width-ratio)) calc(18 * var(--width-ratio));
  border-radius: calc(5 * var(--width-ratio));
  background: var(--white);
  color: var(--orange);
  font-size: calc(30 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.4;
  letter-spacing: 0.07em;
}
@media (max-width: 1024px) {
  .p-house__feature span {
    font-size: calc(21 * var(--width-ratio));
  }
}
@media (max-width: 768px) {
  .p-house__feature span {
    padding: calc(10 * var(--width-ratio)) calc(12 * var(--width-ratio));
    font-size: calc(22 * var(--width-ratio));
  }
}

.p-house-area {
  display: flex;
  align-items: flex-start;
  gap: 5.9027777778vw;
  margin-top: calc(50 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-house-area {
    flex-direction: column;
    gap: calc(34 * var(--width-ratio));
    margin-top: calc(28 * var(--width-ratio));
  }
}

.p-house__text {
  max-width: 31.0416666667vw;
  width: 100%;
  color: var(--brown);
  font-size: calc(18 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 2;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-house__text {
    max-width: 100%;
    font-size: calc(14 * var(--width-ratio));
  }
}

.p-house-example {
  display: flex;
  align-items: flex-start;
  gap: 1.8055555556vw;
}
@media (max-width: 768px) {
  .p-house-example {
    flex-direction: column;
    gap: calc(20 * var(--width-ratio));
  }
}

.p-house__title {
  padding: calc(54 * var(--width-ratio)) calc(5 * var(--width-ratio));
  border-radius: calc(3 * var(--width-ratio));
  background-image: url(../images/common/bg_brown.webp);
  color: var(--white);
  font-size: calc(16 * var(--width-ratio));
  font-weight: var(--bold);
  letter-spacing: normal;
  writing-mode: vertical-rl;
}
@media (max-width: 768px) {
  .p-house__title {
    padding: calc(5 * var(--width-ratio)) calc(14 * var(--width-ratio));
    font-size: calc(15 * var(--width-ratio));
    writing-mode: unset;
  }
}

.p-house__list {
  display: flex;
  align-items: flex-start;
  gap: calc(22 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-house__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 10px;
    grid-row-gap: 20px;
  }
}

.p-house__item {
  max-width: 7.9861111111vw;
  width: 100%;
}
@media (max-width: 768px) {
  .p-house__item {
    max-width: calc(145 * var(--width-ratio));
  }
}

.p-house__name {
  margin-top: calc(15 * var(--width-ratio));
  color: var(--brown);
  font-size: calc(12 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.5;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-house__name {
    margin-top: calc(10 * var(--width-ratio));
  }
}

.p-house__alert {
  margin-top: calc(24 * var(--width-ratio));
  color: var(--brown);
  font-size: calc(11 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 1.6;
  letter-spacing: normal;
}
@media (max-width: 768px) {
  .p-house__alert {
    display: none;
  }
}

.p-house-group {
  display: flex;
  align-items: center;
  gap: 4.5138888889vw;
  margin-top: calc(40 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-house-group {
    flex-direction: column;
    align-items: flex-start;
    gap: calc(10 * var(--width-ratio));
    margin-top: calc(70 * var(--width-ratio));
  }
}

.p-house-block {
  max-width: 70.0694444444vw;
  width: 100%;
}

.p-house__lead {
  color: var(--brown);
  font-size: calc(16 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 2;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-house__lead {
    display: none;
  }
}

.p-house__detail {
  display: flex;
  align-items: flex-start;
  margin-top: calc(23 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-house__detail {
    flex-direction: column;
    margin-top: 0;
  }
}

.p-house__unit {
  margin-right: calc(50 * var(--width-ratio));
  padding-right: calc(50 * var(--width-ratio));
  border-right: 2px dotted var(--border);
}
@media (max-width: 768px) {
  .p-house__unit {
    margin-right: 0;
    padding-right: 0;
    padding-bottom: calc(20 * var(--width-ratio));
    border-right: none;
    border-bottom: 2px dotted var(--border);
  }
}
.p-house__unit:first-child .p-house__menu {
  grid-template-columns: repeat(2, 1fr);
}
@media (max-width: 768px) {
  .p-house__unit:first-child .p-house__menu {
    grid-template-columns: repeat(3, 1fr);
  }
}
.p-house__unit:nth-child(2) .p-house__menu {
  grid-template-columns: repeat(3, 1fr);
}
.p-house__unit:last-child {
  margin-right: 0;
  padding-right: 0;
  border: none;
}
.p-house__unit:last-child .p-house__menu {
  grid-template-columns: repeat(3, 1fr);
}

.p-house__color {
  color: var(--brown);
  font-size: calc(15 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 2;
  letter-spacing: 0.05em;
}

.p-house__menu {
  display: grid;
  grid-column-gap: 12px;
  grid-row-gap: 20px;
}
@media (max-width: 768px) {
  .p-house__menu {
    gap: 10px;
  }
}

.p-house__lineup img {
  border-radius: calc(5 * var(--width-ratio));
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
}

/**
 * #Safety
 */
.p-safety__heading.u-title {
  padding: calc(10 * var(--width-ratio)) 6.9444444444vw;
  background: url(../images/common/bg_safety.webp);
}
.p-safety__heading.u-title span {
  font-size: 3.8194444444vw;
  font-weight: var(--regular);
  font-family: var(--font-base-family-en);
  line-height: 1.4;
  letter-spacing: 0.04em;
}
@media (max-width: 768px) {
  .p-safety__heading.u-title span {
    font-size: calc(35 * var(--width-ratio));
  }
}
.p-safety__heading.u-title span.p-safety__heading--small {
  font-size: calc(20 * var(--width-ratio));
  font-weight: var(--bold);
  font-family: var(--font-base-family);
  line-height: 1.6;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-safety__heading.u-title span.p-safety__heading--small {
    font-size: calc(13 * var(--width-ratio));
  }
}

.p-safety__inner {
  max-width: 99.7222222222vw;
  padding: calc(65 * var(--width-ratio)) 6.6666666667vw calc(43 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-safety__inner {
    max-width: 100vw;
    padding: calc(38 * var(--width-ratio)) 6.4102564103vw;
  }
}

.p-safety-area {
  display: flex;
  align-items: stretch;
  border: 3px solid #EF8851;
  border-radius: 0.6944444444vw;
  background: url(../images/common/bg_beige.webp);
}
@media (max-width: 768px) {
  .p-safety-area {
    flex-direction: column;
  }
}

.p-safety__feature {
  max-width: 28.8194444444vw;
  width: 100%;
  padding: 4.5138888889vw 6.3888888889vw 5.7638888889vw 4.0277777778vw;
  border-radius: 0.4166666667vw 0 0 0.4166666667vw;
}
@media (max-width: 768px) {
  .p-safety__feature {
    max-width: 100%;
    padding: calc(35 * var(--width-ratio)) calc(35 * var(--width-ratio)) calc(39 * var(--width-ratio));
  }
}

.p-safety__title {
  color: var(--brown);
  font-size: calc(32 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.8;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-safety__title {
    font-size: calc(22 * var(--width-ratio));
    line-height: 2.5;
    letter-spacing: 0.07em;
  }
}

.p-safety__text {
  margin-top: calc(25 * var(--width-ratio));
  padding-top: calc(27 * var(--width-ratio));
  border-top: 2px dotted var(--border);
  color: var(--brown);
  font-size: calc(15 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.9;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-safety__text {
    margin-top: calc(30 * var(--width-ratio));
    padding-top: calc(30 * var(--width-ratio));
    font-size: calc(14 * var(--width-ratio));
    line-height: 2;
    letter-spacing: normal;
  }
}

.p-safety__thumb {
  max-width: 59.0277777778vw;
  width: 100%;
  border-radius: 0.6944444444vw;
}
@media (max-width: 768px) {
  .p-safety__thumb {
    max-width: 100%;
  }
}
.p-safety__thumb img {
  height: 100%;
  object-fit: cover;
  border: 3px solid #EF8851;
  border-radius: 0.6944444444vw 0.4166666667vw 0.4166666667vw 0.6944444444vw;
}
@media (max-width: 768px) {
  .p-safety__thumb img {
    border-radius: 0.6944444444vw 0.6944444444vw 0.4166666667vw 0.4166666667vw;
  }
}

.p-safety__list {
  display: flex;
  align-items: stretch;
  justify-content: center;
  padding: calc(18 * var(--width-ratio)) 8.0555555556vw;
  border-top: 3px solid #EF8851;
  border-bottom: 3px solid #EF8851;
  background: url(../images/common/bg_beige.webp);
}
@media (max-width: 768px) {
  .p-safety__list {
    flex-direction: column;
    padding: calc(28 * var(--width-ratio)) calc(72 * var(--width-ratio)) calc(34 * var(--width-ratio));
  }
}

.p-safety__item {
  width: 100%;
}
.p-safety__item:first-child {
  max-width: calc(325 * var(--width-ratio));
  margin-right: calc(52 * var(--width-ratio));
  padding-right: calc(52 * var(--width-ratio));
  border-right: 3px solid #EF8851;
}
@media (max-width: 768px) {
  .p-safety__item:first-child {
    max-width: 100%;
    margin: 0 0 calc(23 * var(--width-ratio)) 0;
    padding: 0 0 calc(23 * var(--width-ratio)) 0;
    border-right: none;
    border-bottom: 3px solid #EF8851;
  }
}
@media (max-width: 768px) {
  .p-safety__item:first-child img {
    max-width: calc(228 * var(--width-ratio));
  }
}
.p-safety__item:nth-child(2) {
  max-width: calc(330 * var(--width-ratio));
  margin-right: calc(52 * var(--width-ratio));
  padding-right: calc(52 * var(--width-ratio));
  border-right: 3px solid #EF8851;
}
@media (max-width: 768px) {
  .p-safety__item:nth-child(2) {
    max-width: 100%;
    margin: 0 0 calc(23 * var(--width-ratio)) 0;
    padding: 0 0 calc(23 * var(--width-ratio)) 0;
    border-right: none;
    border-bottom: 3px solid #EF8851;
  }
}
@media (max-width: 768px) {
  .p-safety__item:nth-child(2) img {
    max-width: 100%;
  }
}
.p-safety__item:last-child {
  max-width: calc(353 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-safety__item:last-child {
    max-width: calc(261 * var(--width-ratio));
  }
}
@media (max-width: 768px) {
  .p-safety__item:last-child img {
    max-width: calc(261 * var(--width-ratio));
  }
}

.p-safety__note {
  max-width: 114.5833333333vw;
  width: 100%;
  margin: 0 auto;
  padding: calc(52 * var(--width-ratio)) 7.2916666667vw calc(82 * var(--width-ratio));
  color: var(--beige);
  font-size: calc(11 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 1.6;
  letter-spacing: normal;
}
@media (max-width: 768px) {
  .p-safety__note {
    padding: calc(30 * var(--width-ratio)) 6.4102564103vw calc(85 * var(--width-ratio));
    font-size: calc(10 * var(--width-ratio));
  }
}

/**
 * #Plans
 */
.p-plans {
  background: url(../images/common/bg_beige.webp);
}

.p-plans__inner {
  max-width: 99.7916666667vw;
  padding: calc(50 * var(--width-ratio)) 6.6666666667vw calc(115 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-plans__inner {
    padding: calc(40 * var(--width-ratio)) calc(25 * var(--width-ratio)) calc(132 * var(--width-ratio));
  }
}

.p-plans__lead {
  font-size: calc(24 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.6;
  letter-spacing: 0.07em;
  text-align: center;
}
@media (max-width: 768px) {
  .p-plans__lead {
    font-size: calc(20 * var(--width-ratio));
    line-height: 1.5;
    letter-spacing: 0.05em;
  }
}
.p-plans__lead span {
  color: var(--orange);
  font-weight: var(--bold);
}

.p-plans-group--first {
  margin-top: calc(48 * var(--width-ratio));
  padding-bottom: calc(68 * var(--width-ratio));
  border-bottom: 2px solid var(--border);
}
@media (max-width: 768px) {
  .p-plans-group--first {
    margin-top: calc(40 * var(--width-ratio));
    padding-bottom: calc(102 * var(--width-ratio));
    border-bottom: 2px dotted var(--border);
  }
}

.p-plans-group--second {
  margin-top: calc(55 * var(--width-ratio));
}

.p-plans__title {
  font-size: calc(45 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 1.6;
  letter-spacing: 0.04em;
}
@media (max-width: 768px) {
  .p-plans__title {
    font-size: calc(35 * var(--width-ratio));
  }
}
.p-plans__title span {
  display: inline-block;
  margin-left: calc(10 * var(--width-ratio));
  font-size: calc(30 * var(--width-ratio));
  font-weight: var(--medium);
}
@media (max-width: 768px) {
  .p-plans__title span {
    margin-left: calc(5 * var(--width-ratio));
    font-size: calc(20 * var(--width-ratio));
  }
}

.p-plans__feature {
  position: relative;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: calc(70 * var(--width-ratio));
  margin-top: calc(10 * var(--width-ratio));
  padding: calc(25 * var(--width-ratio));
  border-radius: calc(10 * var(--width-ratio));
  border: 1px solid var(--brown);
  background: var(--white);
}
@media (max-width: 768px) {
  .p-plans__feature {
    flex-direction: column-reverse;
    gap: calc(3 * var(--width-ratio));
    margin-top: calc(16 * var(--width-ratio));
    padding: calc(20 * var(--width-ratio));
  }
}
.p-plans__feature::before {
  content: "";
  position: absolute;
  bottom: calc(38 * var(--width-ratio));
  left: calc(48 * var(--width-ratio));
  display: block;
  width: calc(40 * var(--width-ratio));
  height: calc(51 * var(--width-ratio));
  background-image: url(../images/plans/img_direction.webp);
  background-size: contain;
  background-repeat: no-repeat;
}
@media (max-width: 768px) {
  .p-plans__feature::before {
    bottom: calc(20 * var(--width-ratio));
    left: calc(20 * var(--width-ratio));
    width: calc(30 * var(--width-ratio));
    height: calc(38 * var(--width-ratio));
  }
}

.p-plans__thumb {
  width: 100%;
  margin: 0 auto;
}

.p-plans__thumb--first {
  max-width: calc(574 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-plans__thumb--first {
    max-width: calc(178 * var(--width-ratio));
  }
}

.p-plans__thumb--second {
  max-width: calc(722 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-plans__thumb--second {
    max-width: calc(231 * var(--width-ratio));
  }
}

.p-plans__unit {
  padding: calc(34 * var(--width-ratio)) calc(16 * var(--width-ratio)) calc(30 * var(--width-ratio));
  border-radius: calc(10 * var(--width-ratio));
  border: 1px solid var(--brown);
  background: var(--white);
}
@media (max-width: 1024px) {
  .p-plans__unit {
    padding: calc(34 * var(--width-ratio)) calc(14 * var(--width-ratio)) calc(30 * var(--width-ratio));
  }
}
@media (max-width: 768px) {
  .p-plans__unit {
    padding: calc(24 * var(--width-ratio)) calc(20 * var(--width-ratio)) calc(47 * var(--width-ratio));
  }
}

.p-plans-number {
  position: absolute;
  top: calc(-1 * var(--width-ratio));
  right: calc(17 * var(--width-ratio));
  max-width: calc(60 * var(--width-ratio));
  width: 100%;
  padding: calc(7 * var(--width-ratio)) 0;
  border-radius: 0 0 calc(5 * var(--width-ratio)) calc(5 * var(--width-ratio));
  background: var(--border);
  color: var(--white);
  font-size: calc(13 * var(--width-ratio));
  font-weight: var(--bold);
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  text-align: center;
}

.p-plans__head {
  position: relative;
  display: flex;
  align-items: center;
  gap: calc(20 * var(--width-ratio));
  height: calc(60 * var(--width-ratio));
}

.p-plans-icon {
  max-width: calc(60 * var(--width-ratio));
  width: 100%;
}

.p-plans__name {
  color: var(--orange);
  font-size: 1.6666666667vw;
  font-weight: var(--bold);
  line-height: 1.5;
  letter-spacing: 0.04em;
}
@media (min-width: 1440px) {
  .p-plans__name {
    font-size: calc(24 * var(--width-ratio));
  }
}
@media (max-width: 1024px) {
  .p-plans__name {
    font-size: calc(20 * var(--width-ratio));
  }
}

.p-plans__body {
  margin-top: calc(30 * var(--width-ratio));
  padding-top: calc(16 * var(--width-ratio));
  border-top: 2px dotted var(--border);
}

.p-plans__text {
  font-size: calc(15 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.7;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-plans__text {
    font-size: calc(13 * var(--width-ratio));
  }
}

.p-plans__slide {
  position: relative;
  max-width: calc(1246 * var(--width-ratio));
  width: 100%;
  margin: calc(24 * var(--width-ratio)) auto calc(56 * var(--width-ratio));
  padding: 0 calc(70 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-plans__slide {
    margin: calc(10 * var(--width-ratio)) auto calc(58 * var(--width-ratio));
    padding: 0;
  }
}
.p-plans__slide .splide__pagination {
  display: flex;
  justify-content: center;
  gap: calc(15 * var(--width-ratio));
  margin-top: calc(32 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-plans__slide .splide__pagination {
    gap: calc(12 * var(--width-ratio));
    margin-top: calc(20 * var(--width-ratio));
  }
}
.p-plans__slide .splide__pagination button {
  width: calc(10 * var(--width-ratio));
  height: calc(10 * var(--width-ratio));
  border-radius: 50%;
  background: var(--border);
}
@media (max-width: 768px) {
  .p-plans__slide .splide__pagination button {
    width: calc(8 * var(--width-ratio));
    height: calc(8 * var(--width-ratio));
  }
}
.p-plans__slide .splide__pagination button.is-active {
  background: var(--orange);
}

.p-plans__arrows {
  position: absolute;
  top: 35%;
  left: 0;
  width: 100%;
  height: calc(45 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-plans__arrows {
    top: unset;
    bottom: calc(-10 * var(--width-ratio));
    height: calc(35 * var(--width-ratio));
  }
}

.p-plans__arrow {
  position: absolute;
  width: calc(45 * var(--width-ratio));
  height: calc(45 * var(--width-ratio));
  background-size: contain;
  background-repeat: no-repeat;
}
@media (max-width: 768px) {
  .p-plans__arrow {
    width: calc(35 * var(--width-ratio));
    height: calc(35 * var(--width-ratio));
  }
}

.p-plans__arrow--prev {
  left: 0;
  background-image: url(../images/plans/icon_arrow_prev.svg);
}
@media (max-width: 768px) {
  .p-plans__arrow--prev {
    left: calc(25 * var(--width-ratio));
  }
}

.p-plans__arrow--next {
  right: 0;
  background-image: url(../images/plans/icon_arrow_next.svg);
}
@media (max-width: 768px) {
  .p-plans__arrow--next {
    right: calc(25 * var(--width-ratio));
  }
}

.p-plans__link {
  position: relative;
  max-width: calc(424 * var(--width-ratio));
  width: 100%;
  margin: 0 auto;
  padding: 0 calc(16 * var(--width-ratio));
  border-top: 1px solid var(--brown);
  border-bottom: 1px solid var(--brown);
}
@media (max-width: 768px) {
  .p-plans__link {
    max-width: calc(340 * var(--width-ratio));
    padding: 0 calc(12 * var(--width-ratio));
  }
}
.p-plans__link::before, .p-plans__link::after {
  content: "";
  position: absolute;
  top: 50%;
  display: block;
  width: 1px;
  height: 125%;
  background: var(--brown);
  transform: translateY(-50%);
}
.p-plans__link::before {
  left: calc(16 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-plans__link::before {
    left: calc(12 * var(--width-ratio));
  }
}
.p-plans__link::after {
  right: calc(16 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-plans__link::after {
    right: calc(12 * var(--width-ratio));
  }
}

.p-plans__outer {
  display: flex;
  align-items: center;
  gap: calc(18 * var(--width-ratio));
  padding: calc(14 * var(--width-ratio)) calc(32 * var(--width-ratio));
  color: var(--white);
  background-image: url(../images/common/bg_orange.webp);
  background-size: contain;
  font-size: calc(40 * var(--width-ratio));
  font-weight: var(--regular);
  font-family: var(--font-base-family-en);
  line-height: 1.3;
  text-transform: uppercase;
}
@media (max-width: 768px) {
  .p-plans__outer {
    gap: calc(14 * var(--width-ratio));
    padding: calc(14 * var(--width-ratio)) calc(23 * var(--width-ratio));
    font-size: calc(32 * var(--width-ratio));
  }
}
.p-plans__outer::before {
  content: "";
  display: block;
  width: calc(56 * var(--width-ratio));
  height: calc(56 * var(--width-ratio));
  background-image: url(../images/plans/icon_pdf.svg);
  background-size: contain;
  background-repeat: no-repeat;
  transition: 0.3s;
}
@media (max-width: 768px) {
  .p-plans__outer::before {
    width: calc(44 * var(--width-ratio));
    height: calc(44 * var(--width-ratio));
  }
}
.p-plans__outer:hover {
  color: var(--brown);
}
.p-plans__outer:hover::before {
  background-image: url(../images/plans/icon_pdf_brown.svg);
}

.p-plans__wrap span {
  display: block;
  font-size: calc(14 * var(--width-ratio));
  font-weight: var(--bold);
  font-family: var(--font-base-family);
  letter-spacing: 0.05em;
  text-decoration: underline;
}
@media (max-width: 768px) {
  .p-plans__wrap span {
    font-size: calc(12 * var(--width-ratio));
    letter-spacing: 0.04em;
  }
}

/**
 * #Inside
 */
.p-inside__inner {
  max-width: 100vw;
  padding: calc(58 * var(--width-ratio)) 5.9027777778vw calc(44 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-inside__inner {
    padding: calc(40 * var(--width-ratio)) 6.4102564103vw calc(44 * var(--width-ratio));
  }
}

.p-inside-section--first {
  padding-bottom: calc(78 * var(--width-ratio));
  border-bottom: 2px dotted var(--beige);
}
@media (max-width: 768px) {
  .p-inside-section--first {
    padding-bottom: calc(40 * var(--width-ratio));
  }
}

.p-inside-section--second {
  margin-top: calc(48 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-inside-section--second {
    margin-top: calc(40 * var(--width-ratio));
    padding-bottom: calc(40 * var(--width-ratio));
    border-bottom: 2px dotted var(--beige);
  }
}

.p-inside-intro {
  text-align: center;
}

.p-inside__title {
  color: var(--beige);
  font-size: calc(24 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.6;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-inside__title {
    font-size: calc(20 * var(--width-ratio));
    line-height: 1.5;
    letter-spacing: 0.05em;
    text-align: center;
  }
}

.p-inside__lead {
  margin-top: calc(30 * var(--width-ratio));
  color: var(--beige);
  font-size: calc(15 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 1.9;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-inside__lead {
    margin-top: calc(30 * var(--width-ratio));
    font-size: calc(14 * var(--width-ratio));
    line-height: 2;
    letter-spacing: normal;
    text-align: center;
  }
}

.p-inside-area {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: calc(50 * var(--width-ratio));
  margin-top: calc(52 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-inside-area {
    display: block;
    margin-top: calc(30 * var(--width-ratio));
  }
}

.p-inside__feature {
  max-width: calc(765 * var(--width-ratio));
  width: 100%;
}
@media (max-width: 768px) {
  .p-inside__feature {
    display: none;
  }
}

.p-inside__figure {
  display: none;
}
.p-inside__figure img {
  border-radius: calc(10 * var(--width-ratio));
}
.p-inside__figure.is-active {
  display: block;
}

.p-inside__detail {
  max-width: calc(466 * var(--width-ratio));
  width: 100%;
}
@media (max-width: 768px) {
  .p-inside__detail {
    margin: 0 auto;
  }
}

.p-inside__list {
  border-top: 2px solid var(--beige);
  border-right: 2px solid var(--beige);
  border-left: 2px solid var(--beige);
  background: url(../images/common/bg_inside.webp);
  cursor: pointer;
}
.p-inside__list:first-child {
  border-radius: calc(10 * var(--width-ratio)) calc(10 * var(--width-ratio)) 0 0;
}
.p-inside__list:last-child {
  border-radius: 0 0 calc(10 * var(--width-ratio)) calc(10 * var(--width-ratio));
  border-bottom: 2px solid var(--beige);
}
.p-inside__list.is-active {
  background: var(--white);
}
@media (max-width: 768px) {
  .p-inside__list.is-active .p-inside__figure {
    display: block;
  }
}
@media (max-width: 768px) {
  .p-inside__list.is-active .p-inside__term {
    padding: calc(10 * var(--width-ratio)) calc(20 * var(--width-ratio)) calc(24 * var(--width-ratio));
  }
}
.p-inside__list.is-active .p-inside-icon {
  display: none;
}
.p-inside__list .p-inside__figure {
  display: none;
}

.p-inside__term {
  position: relative;
  padding: calc(23 * var(--width-ratio)) calc(27 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-inside__term {
    padding: calc(14 * var(--width-ratio)) calc(20 * var(--width-ratio));
  }
}

.p-inside__name {
  color: var(--white);
  font-size: calc(18 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.6;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-inside__name {
    font-size: calc(15 * var(--width-ratio));
  }
}
.p-inside__name .is-hidden {
  display: none;
}

.p-inside__head {
  display: none;
  color: var(--orange);
  font-size: calc(24 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.6;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-inside__head {
    font-size: calc(20 * var(--width-ratio));
    line-height: 1.5;
    letter-spacing: 0.05em;
  }
}
.p-inside__head.is-active {
  display: block;
}
.p-inside__head span {
  display: block;
  margin-bottom: calc(10 * var(--width-ratio));
  color: #555555;
  font-size: calc(18 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.35;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-inside__head span {
    font-size: calc(15 * var(--width-ratio));
    line-height: 1.75;
  }
}

.p-inside-icon {
  position: absolute;
  top: 50%;
  right: calc(25 * var(--width-ratio));
  width: calc(26 * var(--width-ratio));
  height: calc(26 * var(--width-ratio));
  border-radius: 50%;
  border: 1px solid var(--brown);
  background: var(--beige);
  transition: 0.3s;
  transform: translateY(-50%);
}
@media (max-width: 768px) {
  .p-inside-icon {
    right: calc(20 * var(--width-ratio));
  }
}
.p-inside-icon::before, .p-inside-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: calc(10 * var(--width-ratio));
  height: calc(1 * var(--width-ratio));
  background: var(--brown);
  transition: 0.3s;
  transform: translate(-50%, -50%);
}
.p-inside-icon::before {
  transform: translate(-50%, -50%) rotate(90deg);
}

.p-inside__desc {
  position: relative;
  display: none;
  padding: calc(25 * var(--width-ratio)) calc(27 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-inside__desc {
    padding: calc(30 * var(--width-ratio)) calc(20 * var(--width-ratio));
  }
}
.p-inside__desc::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  max-width: 28.1944444444vw;
  width: 100%;
  height: 1px;
  border-top: 1px dotted var(--border);
  transform: translateX(-50%);
}
@media (max-width: 768px) {
  .p-inside__desc::before {
    max-width: 76.9230769231vw;
  }
}
.p-inside__desc.is-active {
  display: block;
}

.p-inside__text {
  margin-bottom: calc(24 * var(--width-ratio));
  color: #555555;
  font-size: calc(14 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.75;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-inside__text {
    font-size: 3.5897435897vw;
  }
}

.p-inside-applicable {
  display: flex;
  align-items: baseline;
}
.p-inside-applicable + .p-inside-applicable {
  margin-top: calc(3 * var(--width-ratio));
}
.p-inside-applicable + .p-inside-applicable:first-child {
  margin-top: 0;
}

.p-inside-applicable__text {
  color: #555555;
  font-size: calc(14 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.75;
  letter-spacing: 0.05em;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .p-inside-applicable__text {
    font-size: 3.5897435897vw;
  }
}

.p-inside-applicable__list {
  display: flex;
  align-items: center;
  flex-flow: row wrap;
  gap: calc(5 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-inside-applicable__list {
    gap: calc(3 * var(--width-ratio));
  }
}

.p-inside-applicable__item {
  display: inline-block;
  width: calc(34 * var(--width-ratio));
  padding: calc(4 * var(--width-ratio));
  border-radius: calc(3 * var(--width-ratio));
  background: var(--orange);
  color: var(--white);
  font-size: calc(14 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 1;
  letter-spacing: normal;
  text-align: center;
}
@media (max-width: 768px) {
  .p-inside-applicable__item {
    font-size: 3.5897435897vw;
  }
}

.p-inside-note {
  margin-top: calc(25 * var(--width-ratio));
  color: var(--border);
  font-size: calc(11 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 1.6;
  letter-spacing: normal;
}
@media (max-width: 768px) {
  .p-inside-note {
    margin-top: calc(24 * var(--width-ratio));
    font-size: calc(10 * var(--width-ratio));
  }
}

/**
 * #Ideas
 */
.p-ideas {
  margin-top: calc(66 * var(--width-ratio));
  padding: 0 calc(42 * var(--width-ratio));
  border-radius: calc(10 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-ideas {
    padding: 0;
  }
}

.p-ideas__inner {
  border-radius: calc(10 * var(--width-ratio));
  background: url(../images/common/bg_beige.webp);
}

.p-ideas-intro {
  position: relative;
}

.p-ideas__heading {
  position: absolute;
  top: 0;
  right: calc(-40 * var(--width-ratio));
  display: flex;
  align-items: center;
  gap: calc(30 * var(--width-ratio));
  max-width: 38.75vw;
  width: 100%;
  padding: calc(25 * var(--width-ratio)) 4.8611111111vw;
  border-top: 2px solid var(--beige);
  border-bottom: 2px solid var(--beige);
  background: url(../images/common/bg_brown.webp);
  color: var(--beige);
  font-size: 5.4166666667vw;
  font-weight: var(--regular);
  font-family: var(--font-base-family-en);
  line-height: 1;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
@media (max-width: 768px) {
  .p-ideas__heading {
    position: unset;
    gap: calc(15 * var(--width-ratio));
    max-width: 100%;
    padding: calc(10 * var(--width-ratio)) calc(26 * var(--width-ratio));
    border-top: 1px solid var(--beige);
    border-bottom: 1px solid var(--beige);
    font-size: calc(35 * var(--width-ratio));
  }
}
.p-ideas__heading span {
  font-size: calc(18 * var(--width-ratio));
  font-weight: var(--bold);
  font-family: var(--font-base-family);
  line-height: 1.6;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-ideas__heading span {
    font-size: calc(13 * var(--width-ratio));
  }
}

.p-ideas__thumb {
  position: relative;
  display: flex;
  align-items: stretch;
  gap: calc(6 * var(--width-ratio));
  max-width: 58.1944444444vw;
  width: 100%;
  z-index: 1;
}
@media (max-width: 768px) {
  .p-ideas__thumb {
    gap: calc(3 * var(--width-ratio));
    max-width: 100%;
  }
}
.p-ideas__thumb div {
  max-width: 28.8888888889vw;
  width: 100%;
}
@media (max-width: 768px) {
  .p-ideas__thumb div {
    max-width: 49.4871794872vw;
  }
}
.p-ideas__thumb div:first-child img {
  border-radius: calc(10 * var(--width-ratio)) 0 0 calc(10 * var(--width-ratio));
}
.p-ideas__thumb div:last-child img {
  border-radius: 0 calc(10 * var(--width-ratio)) calc(10 * var(--width-ratio)) 0;
}

.p-ideas-note {
  display: block;
  margin-top: calc(5 * var(--width-ratio));
  color: var(--brown);
  font-size: calc(15 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.7;
  letter-spacing: 0.07em;
  text-align: right;
}
@media (max-width: 768px) {
  .p-ideas-note {
    margin-top: calc(2 * var(--width-ratio));
    font-size: calc(12 * var(--width-ratio));
    line-height: 1.6;
    letter-spacing: normal;
  }
}

.p-ideas__summary {
  position: absolute;
  top: calc(170 * var(--width-ratio));
  right: 5.8333333333vw;
  max-width: 25.0694444444vw;
  width: 100%;
}
@media (max-width: 1024px) {
  .p-ideas__summary {
    position: unset;
    max-width: 100%;
    margin-top: calc(26 * var(--width-ratio));
    padding: 0 calc(14 * var(--width-ratio));
  }
}

.p-ideas__feature {
  display: flex;
  align-items: baseline;
  flex-direction: column;
  gap: calc(7 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-ideas__feature {
    flex-direction: column;
    gap: calc(11 * var(--width-ratio));
  }
}
.p-ideas__feature span {
  display: inline-block;
  max-width: 25.0694444444vw;
  width: 100%;
  padding: 0 calc(18 * var(--width-ratio));
  border-radius: calc(5 * var(--width-ratio));
  background: var(--white);
  color: var(--orange);
  font-size: 2.0833333333vw;
  font-weight: var(--bold);
  line-height: 1.4;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-ideas__feature span {
    max-width: 86.1538461538vw;
    padding: 0 calc(12 * var(--width-ratio));
    font-size: calc(22 * var(--width-ratio));
  }
}
.p-ideas__feature span.pc {
  display: block;
}
@media (max-width: 768px) {
  .p-ideas__feature span.pc {
    display: none;
  }
}
.p-ideas__feature span.sp {
  display: none;
}
@media (max-width: 768px) {
  .p-ideas__feature span.sp {
    display: block;
  }
}
.p-ideas__feature span:first-child {
  max-width: 21.9444444444vw;
}
@media (max-width: 768px) {
  .p-ideas__feature span:first-child {
    max-width: 55.1282051282vw;
  }
}

.p-ideas-section {
  position: relative;
}
.p-ideas-section::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  max-width: 86.4583333333vw;
  width: 100%;
  height: 1px;
  border-top: 2px dotted var(--border);
  transform: translateX(-50%);
}
@media (max-width: 768px) {
  .p-ideas-section::before {
    max-width: 87.1794871795vw;
  }
}

.p-ideas-section--first {
  margin-top: calc(60 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-ideas-section--first {
    margin-top: calc(30 * var(--width-ratio));
  }
}
.p-ideas-section--first::before {
  content: none;
}
.p-ideas-section--first .p-ideas__detail {
  max-width: 39.1666666667vw;
  padding-left: 2.2222222222vw;
}
@media (max-width: 768px) {
  .p-ideas-section--first .p-ideas__detail {
    max-width: 100%;
    padding: 0;
  }
}
.p-ideas-section--first .p-ideas__text {
  margin-top: calc(60 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-ideas-section--first .p-ideas__text {
    margin-top: calc(15 * var(--width-ratio));
  }
}
.p-ideas-section--first .p-ideas__photo {
  max-width: 41.5277777778vw;
}
@media (max-width: 768px) {
  .p-ideas-section--first .p-ideas__photo {
    max-width: 87.1794871795vw;
    margin-top: calc(30 * var(--width-ratio));
  }
}
.p-ideas-section--first .p-ideas__photo div:first-child img {
  border-radius: calc(10 * var(--width-ratio)) 0 0 calc(10 * var(--width-ratio));
}
.p-ideas-section--first .p-ideas__photo div:last-child img {
  border-radius: 0 calc(10 * var(--width-ratio)) calc(10 * var(--width-ratio)) 0;
}
.p-ideas-section--first .p-ideas__photo div img {
  max-width: 20.0694444444vw;
}
@media (max-width: 768px) {
  .p-ideas-section--first .p-ideas__photo div img {
    max-width: 42.0512820513vw;
  }
}
.p-ideas-section--first .p-ideas-note {
  text-align: left;
}

.p-ideas-section--second {
  margin-top: calc(50 * var(--width-ratio));
  padding-top: calc(45 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-ideas-section--second {
    margin-top: calc(30 * var(--width-ratio));
    padding-top: calc(30 * var(--width-ratio));
  }
}
.p-ideas-section--second .p-ideas__detail {
  max-width: 41.5277777778vw;
}
@media (max-width: 768px) {
  .p-ideas-section--second .p-ideas__detail {
    max-width: 90vw;
    margin-top: calc(28 * var(--width-ratio));
  }
}
.p-ideas-section--second .p-ideas-area .p-ideas__title {
  margin-top: calc(13 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-ideas-section--second .p-ideas-area .p-ideas__title {
    margin-top: calc(3 * var(--width-ratio));
  }
}
.p-ideas-section--second .p-ideas-area .p-ideas__text {
  margin-top: calc(24 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-ideas-section--second .p-ideas-area .p-ideas__text {
    margin-top: calc(15 * var(--width-ratio));
  }
}
.p-ideas-section--second .p-ideas__desc .p-ideas__title {
  margin-top: calc(15 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-ideas-section--second .p-ideas__desc .p-ideas__title {
    margin-top: calc(3 * var(--width-ratio));
  }
}
.p-ideas-section--second .p-ideas__desc .p-ideas__text {
  margin-top: calc(15 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-ideas-section--second .p-ideas__desc .p-ideas__text {
    margin-top: calc(15 * var(--width-ratio));
  }
}

.p-ideas-section--third {
  margin-top: calc(60 * var(--width-ratio));
  padding-top: calc(40 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-ideas-section--third {
    margin-top: calc(35 * var(--width-ratio));
  }
}
.p-ideas-section--third .p-ideas__wrap {
  align-items: center;
}
.p-ideas-section--third .p-ideas__detail {
  max-width: 35.9722222222vw;
  padding-left: 2.2222222222vw;
}
@media (max-width: 768px) {
  .p-ideas-section--third .p-ideas__detail {
    max-width: 100%;
    padding: 0;
  }
}
.p-ideas-section--third .p-ideas__title {
  margin-top: calc(13 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-ideas-section--third .p-ideas__title {
    margin-top: calc(3 * var(--width-ratio));
  }
}
.p-ideas-section--third .p-ideas__text {
  margin-top: calc(43 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-ideas-section--third .p-ideas__text {
    margin-top: calc(15 * var(--width-ratio));
  }
}
.p-ideas-section--third .p-ideas__photo {
  align-items: flex-end;
  max-width: 44.0277777778vw;
}
@media (max-width: 768px) {
  .p-ideas-section--third .p-ideas__photo {
    max-width: 100%;
  }
}
.p-ideas-section--third .p-ideas__photo div:first-child {
  max-width: 13.6805555556vw;
}
@media (max-width: 768px) {
  .p-ideas-section--third .p-ideas__photo div:first-child {
    max-width: 27.1794871795vw;
  }
}
.p-ideas-section--third .p-ideas__photo div:last-child {
  max-width: 28.8888888889vw;
}
@media (max-width: 768px) {
  .p-ideas-section--third .p-ideas__photo div:last-child {
    max-width: 56.9230769231vw;
  }
}
.p-ideas-section--third .p-ideas-note {
  text-align: left;
}

.p-ideas__wrap {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 0 3.8194444444vw;
}
@media (max-width: 768px) {
  .p-ideas__wrap {
    flex-direction: column;
    padding: 0 6.4102564103vw;
  }
}

.p-ideas__detail {
  width: 100%;
}

.p-ideas__title {
  color: var(--orange);
  font-size: 1.6666666667vw;
  font-weight: var(--bold);
  line-height: 1.6;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-ideas__title {
    font-size: 4.1025641026vw;
    line-height: 1.1;
  }
}

.p-ideas__lead {
  color: var(--brown);
  font-size: 1.25vw;
  font-weight: var(--bold);
  line-height: 1.6;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-ideas__lead {
    font-size: 3.3333333333vw;
  }
}

.p-ideas__text {
  color: var(--brown);
  font-size: 1.0416666667vw;
  font-weight: var(--bold);
  line-height: 1.7;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-ideas__text {
    font-size: 3.5897435897vw;
    line-height: 1.8;
    letter-spacing: normal;
  }
}

.p-ideas__photo {
  display: flex;
  align-items: stretch;
  gap: calc(20 * var(--width-ratio));
  width: 100%;
}
@media (max-width: 768px) {
  .p-ideas__photo {
    gap: calc(10 * var(--width-ratio));
  }
}
.p-ideas__photo div img {
  width: 100%;
  border-radius: calc(10 * var(--width-ratio));
}

.p-ideas-img {
  max-width: 40.9027777778vw;
  width: 100%;
}
@media (max-width: 768px) {
  .p-ideas-img {
    max-width: 90vw;
  }
}

.p-ideas-area {
  padding: calc(10 * var(--width-ratio));
  border-radius: calc(10 * var(--width-ratio));
  border: 2px solid var(--border);
  background: url(../images/common/bg_ideas.webp);
}

.p-ideas__outer {
  padding: calc(20 * var(--width-ratio)) calc(30 * var(--width-ratio));
  border: 2px dotted var(--border);
}

.p-ideas__desc {
  margin-top: calc(40 * var(--width-ratio));
  padding-left: calc(40 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-ideas__desc {
    margin-top: calc(30 * var(--width-ratio));
    padding: 0;
  }
}

.p-ideas-alert {
  margin-top: calc(53 * var(--width-ratio));
  padding: 0 6.25vw calc(50 * var(--width-ratio));
  color: #6E6358;
  font-size: 0.7638888889vw;
  font-weight: var(--medium);
  line-height: 1.6;
  letter-spacing: normal;
}
@media (max-width: 768px) {
  .p-ideas-alert {
    margin-top: calc(40 * var(--width-ratio));
    padding: 0 6.4102564103vw calc(50 * var(--width-ratio));
    font-size: 2.5641025641vw;
  }
}

/**
 * #Equipment
 */
.p-equipment {
  margin-top: calc(48 * var(--width-ratio));
  padding: 0 calc(40 * var(--width-ratio));
}

.p-equipment-section {
  position: relative;
  width: 100%;
  margin: calc(40 * var(--width-ratio)) auto 0;
  border-radius: calc(10 * var(--width-ratio));
  background: url(../images/common/bg_beige.webp);
}
@media (max-width: 768px) {
  .p-equipment-section {
    margin-top: calc(20 * var(--width-ratio));
    border-radius: 0;
  }
}

.p-equipment-section--first {
  margin-top: 0;
}
.p-equipment-section--first .p-equipment__thumb img {
  border-radius: calc(10 * var(--width-ratio)) calc(10 * var(--width-ratio)) calc(10 * var(--width-ratio)) 0;
}
.p-equipment-section--first .p-equipment-note {
  margin-left: calc(55 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-equipment-section--first .p-equipment-note {
    margin-left: calc(14 * var(--width-ratio));
  }
}
.p-equipment-section--first .p-equipment__summary {
  max-width: 30.625vw;
  width: 100%;
}
@media (max-width: 1024px) {
  .p-equipment-section--first .p-equipment__summary {
    max-width: 100%;
    padding: 0 calc(55 * var(--width-ratio));
  }
}
@media (max-width: 768px) {
  .p-equipment-section--first .p-equipment__summary {
    padding: 0 calc(14 * var(--width-ratio));
  }
}

.p-equipment-section--second .p-equipment__heading {
  right: unset;
  left: calc(-40 * var(--width-ratio));
  padding: calc(25 * var(--width-ratio)) 6.9444444444vw;
}
@media (max-width: 768px) {
  .p-equipment-section--second .p-equipment__heading {
    padding: calc(10 * var(--width-ratio)) 6.9230769231vw;
  }
}
.p-equipment-section--second .p-equipment__thumb {
  margin-left: auto;
}
.p-equipment-section--second .p-equipment__thumb img {
  border-radius: calc(10 * var(--width-ratio)) calc(10 * var(--width-ratio)) 0 calc(10 * var(--width-ratio));
}
.p-equipment-section--second .p-equipment-note {
  margin-right: calc(55 * var(--width-ratio));
  text-align: right;
}
@media (max-width: 768px) {
  .p-equipment-section--second .p-equipment-note {
    margin: 0 0 0 calc(14 * var(--width-ratio));
    text-align: left;
  }
}
.p-equipment-section--second .p-equipment__summary {
  right: unset;
  left: 4.1666666667vw;
}
@media (max-width: 1024px) {
  .p-equipment-section--second .p-equipment__summary {
    padding: 0 calc(55 * var(--width-ratio));
  }
}
@media (max-width: 768px) {
  .p-equipment-section--second .p-equipment__summary {
    padding: 0 calc(14 * var(--width-ratio));
  }
}
.p-equipment-section--second .p-equipment__caption {
  max-width: 100%;
  margin-top: calc(12 * var(--width-ratio));
  margin-left: calc(65 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-equipment-section--second .p-equipment__caption {
    margin-top: calc(16 * var(--width-ratio));
    margin-left: 0;
    padding: 0 calc(25 * var(--width-ratio));
  }
}

.p-equipment-section--third .p-equipment__thumb img {
  border-radius: calc(10 * var(--width-ratio)) calc(10 * var(--width-ratio)) calc(10 * var(--width-ratio)) 0;
}
.p-equipment-section--third .p-equipment-note {
  margin-left: calc(55 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-equipment-section--third .p-equipment-note {
    margin-left: calc(14 * var(--width-ratio));
  }
}
.p-equipment-section--third .p-equipment__summary {
  right: 9.7222222222vw;
}
@media (max-width: 1024px) {
  .p-equipment-section--third .p-equipment__summary {
    max-width: 100%;
    padding: 0 calc(55 * var(--width-ratio));
  }
}
@media (max-width: 768px) {
  .p-equipment-section--third .p-equipment__summary {
    padding: 0 calc(14 * var(--width-ratio));
  }
}
.p-equipment-section--third .p-equipment__caption {
  max-width: 100%;
  margin-top: calc(40 * var(--width-ratio));
  margin-left: calc(65 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-equipment-section--third .p-equipment__caption {
    margin-top: calc(16 * var(--width-ratio));
    margin-left: 0;
    padding: 0 calc(25 * var(--width-ratio));
  }
}

.p-equipment-section--four .p-equipment__heading {
  right: unset;
  left: calc(-40 * var(--width-ratio));
  padding: calc(25 * var(--width-ratio)) calc(25 * var(--width-ratio)) calc(25 * var(--width-ratio)) 7.6388888889vw;
}
.p-equipment-section--four .p-equipment__thumb {
  margin-left: auto;
}
.p-equipment-section--four .p-equipment__thumb img {
  border-radius: calc(10 * var(--width-ratio)) calc(10 * var(--width-ratio)) 0 calc(10 * var(--width-ratio));
}
.p-equipment-section--four .p-equipment-note {
  margin-right: calc(55 * var(--width-ratio));
  text-align: right;
}
@media (max-width: 768px) {
  .p-equipment-section--four .p-equipment-note {
    margin: 0 0 0 calc(14 * var(--width-ratio));
    text-align: left;
  }
}
.p-equipment-section--four .p-equipment__summary {
  right: unset;
  left: 5.2083333333vw;
}
@media (max-width: 1024px) {
  .p-equipment-section--four .p-equipment__summary {
    padding: 0 calc(55 * var(--width-ratio));
  }
}
@media (max-width: 768px) {
  .p-equipment-section--four .p-equipment__summary {
    padding: 0 calc(14 * var(--width-ratio));
  }
}

.p-equipment-section--five .p-equipment__heading {
  max-width: 47.9166666667vw;
  padding: calc(26 * var(--width-ratio)) 3.4722222222vw;
}
@media (max-width: 768px) {
  .p-equipment-section--five .p-equipment__heading {
    max-width: 100%;
    padding: calc(10 * var(--width-ratio)) 6.9230769231vw;
  }
}
.p-equipment-section--five .p-equipment__thumb {
  max-width: 49.0972222222vw;
}
@media (max-width: 768px) {
  .p-equipment-section--five .p-equipment__thumb {
    max-width: 100%;
  }
}
.p-equipment-section--five .p-equipment__thumb img {
  border-radius: calc(10 * var(--width-ratio)) calc(10 * var(--width-ratio)) calc(10 * var(--width-ratio)) 0;
}
.p-equipment-section--five .p-equipment__summary {
  top: 14.2361111111vw;
  right: 3.125vw;
}
@media (max-width: 1024px) {
  .p-equipment-section--five .p-equipment__summary {
    max-width: 100%;
    padding: 0 calc(55 * var(--width-ratio));
  }
}
@media (max-width: 768px) {
  .p-equipment-section--five .p-equipment__summary {
    padding: 0 calc(14 * var(--width-ratio));
  }
}
.p-equipment-section--five .p-equipment-note {
  margin-left: calc(55 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-equipment-section--five .p-equipment-note {
    margin-left: calc(14 * var(--width-ratio));
  }
}

.p-equipment-intro {
  position: relative;
}

.p-equipment__heading {
  position: absolute;
  top: 0;
  right: calc(-40 * var(--width-ratio));
  display: flex;
  align-items: center;
  gap: calc(30 * var(--width-ratio));
  max-width: 41.6666666667vw;
  width: 100%;
  padding: calc(25 * var(--width-ratio)) 4.8611111111vw;
  border-top: 2px solid var(--beige);
  border-bottom: 2px solid var(--beige);
  background: url(../images/common/bg_brown.webp);
  color: var(--beige);
  font-size: 5.4166666667vw;
  font-weight: var(--regular);
  font-family: var(--font-base-family-en);
  line-height: 1;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
@media (max-width: 768px) {
  .p-equipment__heading {
    position: unset;
    gap: calc(15 * var(--width-ratio));
    max-width: 100%;
    padding: calc(10 * var(--width-ratio)) calc(26 * var(--width-ratio));
    border-top: 1px solid var(--beige);
    border-bottom: 1px solid var(--beige);
    font-size: 8.9743589744vw;
  }
}
.p-equipment__heading span {
  font-size: 1.25vw;
  font-weight: var(--bold);
  font-family: var(--font-base-family);
  line-height: 1.6;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-equipment__heading span {
    font-size: 3.3333333333vw;
  }
}

.p-equipment__thumb {
  position: relative;
  max-width: 55.5555555556vw;
  width: 100%;
  z-index: 2;
}
@media (max-width: 768px) {
  .p-equipment__thumb {
    max-width: 100%;
  }
}

.p-equipment-note {
  display: block;
  margin-top: calc(7 * var(--width-ratio));
  color: var(--brown);
  font-size: calc(14 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 1.6;
  letter-spacing: normal;
}
@media (max-width: 768px) {
  .p-equipment-note {
    margin-top: 0;
  }
}

.p-equipment__summary {
  position: absolute;
  top: 11.1111111111vw;
  right: 3.0555555556vw;
}
@media (max-width: 1024px) {
  .p-equipment__summary {
    position: unset;
    margin-top: calc(22 * var(--width-ratio));
  }
}

.p-equipment__feature {
  display: flex;
  align-items: baseline;
  flex-direction: column;
  gap: calc(7 * var(--width-ratio));
}
.p-equipment__feature span {
  display: inline-block;
  padding: 0 calc(18 * var(--width-ratio));
  border-radius: calc(5 * var(--width-ratio));
  background: var(--white);
  color: var(--orange);
  font-size: calc(30 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.4;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-equipment__feature span {
    padding: 0 calc(12 * var(--width-ratio));
    font-size: calc(22 * var(--width-ratio));
  }
}
.p-equipment__feature span.pc {
  display: block;
}
@media (max-width: 768px) {
  .p-equipment__feature span.pc {
    display: none;
  }
}
.p-equipment__feature span.sp {
  display: none;
}
@media (max-width: 768px) {
  .p-equipment__feature span.sp {
    display: block;
  }
}

.p-equipment__caption {
  max-width: calc(375 * var(--width-ratio));
  width: 100%;
  margin-top: calc(28 * var(--width-ratio));
  margin-left: calc(18 * var(--width-ratio));
  color: var(--brown);
  font-size: calc(15 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.9;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-equipment__caption {
    margin-top: calc(22 * var(--width-ratio));
    margin-left: calc(10 * var(--width-ratio));
  }
}

.p-equipment__lead {
  color: var(--brown);
  font-size: calc(18 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.6;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-equipment__lead {
    font-size: calc(13 * var(--width-ratio));
  }
}

.p-equipment__title {
  margin-top: calc(3 * var(--width-ratio));
  color: var(--orange);
  font-size: calc(24 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.6;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-equipment__title {
    font-size: calc(18 * var(--width-ratio));
    line-height: 1.1;
  }
}

.p-equipment__text {
  margin-top: calc(24 * var(--width-ratio));
  color: var(--brown);
  font-size: calc(15 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.7;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-equipment__text {
    margin-top: calc(15 * var(--width-ratio));
    font-size: calc(14 * var(--width-ratio));
    line-height: 1.8;
  }
}

.p-equipment-alert {
  margin-top: calc(26 * var(--width-ratio));
  color: #6E6358;
  font-size: calc(11 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 1.6;
  letter-spacing: normal;
}
@media (max-width: 768px) {
  .p-equipment-alert {
    margin-top: calc(20 * var(--width-ratio));
    font-size: calc(10 * var(--width-ratio));
  }
}

/**
 * #Kitchen
 */
.p-kitchen {
  margin-top: calc(45 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-kitchen {
    margin-top: calc(40 * var(--width-ratio));
  }
}

.p-kitchen__inner {
  max-width: 94.1666666667vw;
  padding: 0 calc(55 * var(--width-ratio)) calc(50 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-kitchen__inner {
    max-width: 87.1794871795vw;
    padding: 0 0 calc(40 * var(--width-ratio));
  }
}

.p-kitchen-top {
  display: flex;
  align-items: flex-start;
  padding-top: calc(20 * var(--width-ratio));
  border-top: 2px dotted var(--border);
}
@media (max-width: 768px) {
  .p-kitchen-top {
    flex-direction: column;
  }
}

.p-kitchen__feature {
  max-width: 56.5277777778vw;
  width: 100%;
  margin-right: calc(48 * var(--width-ratio));
  padding: calc(43 * var(--width-ratio)) calc(48 * var(--width-ratio)) calc(54 * var(--width-ratio)) 0;
  border-right: 2px dotted var(--border);
}
@media (max-width: 768px) {
  .p-kitchen__feature {
    max-width: 100%;
    margin: 0 auto;
    padding: 0 0 calc(33 * var(--width-ratio));
    border-right: none;
    border-bottom: 2px dotted var(--border);
  }
}

.p-kitchen__heading {
  color: var(--brown);
  font-size: calc(24 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.6;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-kitchen__heading {
    font-size: calc(20 * var(--width-ratio));
    line-height: 1.5;
    letter-spacing: 0.05em;
  }
}

.p-kitchen__thumb {
  max-width: 49.7916666667vw;
  width: 100%;
  margin-top: calc(40 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-kitchen__thumb {
    max-width: 100%;
    margin: calc(13 * var(--width-ratio)) auto 0;
  }
}

.p-kitchen__desc {
  max-width: 26.5277777778vw;
  width: 100%;
  padding-top: calc(30 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-kitchen__desc {
    display: flex;
    gap: calc(20 * var(--width-ratio));
    max-width: 100%;
    margin: calc(33 * var(--width-ratio)) auto 0;
    padding-top: 0;
  }
  .p-kitchen__desc .p-kitchen__lead {
    margin-top: 0;
  }
  .p-kitchen__desc .p-kitchen__detail {
    max-width: 42.8205128205vw;
    width: 100%;
  }
}

.p-kitchen__figure {
  max-width: 19.5833333333vw;
  width: 100%;
}
@media (max-width: 768px) {
  .p-kitchen__figure {
    max-width: 38.4615384615vw;
  }
}

.p-kitchen__lead {
  margin-top: calc(40 * var(--width-ratio));
}

.p-kitchen__text {
  margin-top: calc(26 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-kitchen__text {
    margin-top: calc(15 * var(--width-ratio));
  }
}

.p-kitchen-bottom {
  display: flex;
  align-items: center;
  gap: calc(110 * var(--width-ratio));
  margin-top: calc(20 * var(--width-ratio));
  padding-top: calc(34 * var(--width-ratio));
  padding-bottom: calc(34 * var(--width-ratio));
  border-top: 2px dotted var(--border);
  border-bottom: 2px dotted var(--border);
}
@media (max-width: 768px) {
  .p-kitchen-bottom {
    gap: calc(40 * var(--width-ratio));
    margin-top: calc(40 * var(--width-ratio));
    padding-bottom: calc(40 * var(--width-ratio));
  }
}

.p-kitchen__unit {
  position: relative;
  display: flex;
  align-items: center;
  gap: calc(34 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-kitchen__unit {
    flex-direction: column;
    gap: calc(24 * var(--width-ratio));
  }
}
.p-kitchen__unit:first-child {
  max-width: 39.0277777778vw;
  width: 100%;
}
@media (max-width: 768px) {
  .p-kitchen__unit:first-child {
    max-width: 38.4615384615vw;
  }
}
.p-kitchen__unit:first-child::after {
  content: "";
  position: absolute;
  top: 0;
  right: calc(-45 * var(--width-ratio));
  display: block;
  width: 2px;
  height: 100%;
  border-right: 2px dotted var(--border);
}
@media (max-width: 768px) {
  .p-kitchen__unit:first-child::after {
    right: calc(-20 * var(--width-ratio));
  }
}
.p-kitchen__unit:last-child {
  max-width: 38.75vw;
  width: 100%;
}
@media (max-width: 768px) {
  .p-kitchen__unit:last-child {
    max-width: 38.4615384615vw;
  }
}
.p-kitchen__unit .p-kitchen__lead {
  margin-top: 0;
}

.p-kitchen-img {
  max-width: 17.3611111111vw;
  width: 100%;
}
@media (max-width: 768px) {
  .p-kitchen-img {
    max-width: 38.4615384615vw;
  }
}

/**
 * #Bath
 */
.p-bath {
  margin-top: calc(38 * var(--width-ratio));
}
@media (max-width: 1024px) {
  .p-bath {
    margin-top: 3vw;
  }
}
@media (max-width: 768px) {
  .p-bath {
    margin-top: calc(40 * var(--width-ratio));
  }
}
.p-bath .p-equipment__lead {
  letter-spacing: 0.02em;
}

.p-bath__inner {
  max-width: 94.1666666667vw;
  padding: 0 calc(55 * var(--width-ratio)) calc(45 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-bath__inner {
    max-width: 87.1794871795vw;
    padding: 0 0 calc(40 * var(--width-ratio));
  }
}

.p-bath__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 7.9861111111vw;
  padding-top: calc(40 * var(--width-ratio));
  padding-bottom: calc(40 * var(--width-ratio));
  border-top: 2px dotted var(--border);
  border-bottom: 2px dotted var(--border);
}
@media (max-width: 768px) {
  .p-bath__list {
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 40px;
    grid-row-gap: 28px;
  }
}

.p-bath__item {
  position: relative;
}
@media (max-width: 768px) {
  .p-bath__item:first-child {
    grid-area: 1/1/2/2;
  }
  .p-bath__item:first-child::after {
    content: "";
    position: absolute;
    top: 0;
    right: calc(-5 * var(--width-ratio));
    display: block;
    width: 1px;
    height: 100%;
    border-right: 2px dotted var(--border);
  }
}
@media (max-width: 390px) {
  .p-bath__item:first-child::after {
    right: calc(-20 * var(--width-ratio));
  }
}
@media (max-width: 768px) {
  .p-bath__item:nth-child(2) {
    grid-area: 1/2/2/3;
  }
}
.p-bath__item:nth-child(2)::before, .p-bath__item:nth-child(2)::after {
  content: "";
  position: absolute;
  top: 0;
  display: block;
  width: 1px;
  height: 100%;
  border-right: 2px dotted var(--border);
}
@media (max-width: 768px) {
  .p-bath__item:nth-child(2)::before, .p-bath__item:nth-child(2)::after {
    content: none;
  }
}
.p-bath__item:nth-child(2)::before {
  left: calc(-60 * var(--width-ratio));
}
.p-bath__item:nth-child(2)::after {
  right: calc(-60 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-bath__item:last-child {
    display: flex;
    align-items: flex-start;
    gap: calc(42 * var(--width-ratio));
    grid-area: 2/1/3/3;
    padding-top: calc(40 * var(--width-ratio));
  }
  .p-bath__item:last-child::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    display: block;
    width: 100%;
    height: 1px;
    border-top: 2px dotted var(--border);
    transform: translateX(-50%);
  }
  .p-bath__item:last-child .p-bath__desc {
    max-width: calc(150 * var(--width-ratio));
    margin-top: 0;
  }
}

.p-bath__thumb {
  max-width: calc(321 * var(--width-ratio));
  width: 100%;
}
@media (max-width: 768px) {
  .p-bath__thumb {
    max-width: calc(150 * var(--width-ratio));
  }
}

.p-bath__desc {
  margin-top: calc(28 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-bath__desc {
    margin-top: calc(24 * var(--width-ratio));
  }
}

/**
 * #Sanitary
 */
.p-sanitary {
  margin-top: calc(38 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-sanitary {
    margin-top: calc(40 * var(--width-ratio));
  }
}

.p-sanitary__inner {
  max-width: 94.1666666667vw;
  padding: 0 calc(55 * var(--width-ratio)) calc(45 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-sanitary__inner {
    max-width: 87.1794871795vw;
    padding: 0 0 calc(40 * var(--width-ratio));
  }
}

.p-sanitary-top {
  display: flex;
  align-items: flex-start;
  padding-top: calc(35 * var(--width-ratio));
  border-top: 2px dotted var(--border);
}
@media (max-width: 768px) {
  .p-sanitary-top {
    flex-direction: column;
    gap: calc(40 * var(--width-ratio));
    padding-top: calc(45 * var(--width-ratio));
  }
}

.p-sanitary-top__unit:first-child {
  max-width: 53.4722222222vw;
  width: 100%;
  margin-right: 4.5138888889vw;
  padding-right: 4.5138888889vw;
  border-right: 2px dotted var(--border);
}
@media (max-width: 768px) {
  .p-sanitary-top__unit:first-child {
    max-width: 100%;
    margin: 0 auto;
    padding: 0 0 calc(45 * var(--width-ratio));
    border-right: none;
    border-bottom: 2px dotted var(--border);
  }
}
.p-sanitary-top__unit:first-child .p-sanitary__detail {
  margin-top: calc(28 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-sanitary-top__unit:first-child .p-sanitary__detail {
    margin-top: calc(22 * var(--width-ratio));
  }
}
.p-sanitary-top__unit:last-child {
  max-width: 26.1805555556vw;
  width: 100%;
}
@media (max-width: 768px) {
  .p-sanitary-top__unit:last-child {
    display: flex;
    align-items: flex-start;
    gap: calc(35 * var(--width-ratio));
    max-width: 100%;
  }
}
.p-sanitary-top__unit:last-child .p-sanitary__detail {
  margin-top: calc(28 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-sanitary-top__unit:last-child .p-sanitary__detail {
    margin-top: 0;
  }
}

@media (max-width: 768px) {
  .p-sanitary__text {
    letter-spacing: normal;
  }
}

.p-sanitary-bottom {
  display: flex;
  align-items: stretch;
  margin-top: calc(46 * var(--width-ratio));
  padding-top: calc(40 * var(--width-ratio));
  padding-bottom: calc(30 * var(--width-ratio));
  border-top: 2px dotted var(--border);
  border-bottom: 2px dotted var(--border);
}
@media (max-width: 768px) {
  .p-sanitary-bottom {
    flex-direction: column;
    margin-top: calc(40 * var(--width-ratio));
    padding-top: calc(30 * var(--width-ratio));
  }
}

.p-sanitary-img {
  max-width: 28.75vw;
  width: 100%;
  margin-right: 4.4444444444vw;
  padding-right: 4.4444444444vw;
  border-right: 2px dotted var(--border);
}
@media (max-width: 768px) {
  .p-sanitary-img {
    max-width: 48.2051282051vw;
    margin: 0 auto;
    padding: 0;
    border: none;
  }
}

.p-sanitary-bottom__detail {
  width: 100%;
}
@media (max-width: 768px) {
  .p-sanitary-bottom__detail {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-top: calc(30 * var(--width-ratio));
    padding-top: calc(40 * var(--width-ratio));
    border-top: 2px dotted var(--border);
  }
}

.p-sanitary-bottom__unit {
  display: flex;
  align-items: center;
  gap: 3.8888888889vw;
}
@media (max-width: 768px) {
  .p-sanitary-bottom__unit {
    flex-direction: column;
    gap: calc(25 * var(--width-ratio));
  }
}
.p-sanitary-bottom__unit:first-child {
  margin-bottom: 2.4305555556vw;
  padding-bottom: 2.4305555556vw;
  border-bottom: 2px dotted var(--border);
}
@media (max-width: 768px) {
  .p-sanitary-bottom__unit:first-child {
    max-width: 42.5641025641vw;
    width: 100%;
    margin-bottom: 0;
    margin-right: calc(16 * var(--width-ratio));
    padding-bottom: 0;
    padding-right: calc(16 * var(--width-ratio));
    border-right: 2px dotted var(--border);
    border-bottom: none;
  }
}
@media (max-width: 768px) {
  .p-sanitary-bottom__unit:last-child {
    max-width: 38.4615384615vw;
    width: 100%;
  }
}

.p-sanitary__picture {
  max-width: 24.5833333333vw;
  width: 100%;
}
@media (max-width: 768px) {
  .p-sanitary__picture {
    max-width: 38.4615384615vw;
  }
}

/**
 * #Exterior
 */
.p-exterior {
  margin-top: calc(30 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-exterior {
    margin-top: calc(33 * var(--width-ratio));
  }
}

.p-exterior__inner {
  max-width: 94.1666666667vw;
  padding: 0 calc(55 * var(--width-ratio)) calc(50 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-exterior__inner {
    max-width: 87.1794871795vw;
    padding: 0 0 calc(40 * var(--width-ratio));
  }
}

.p-exterior__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  padding-top: calc(40 * var(--width-ratio));
  border-top: 2px dotted var(--border);
}
@media (max-width: 768px) {
  .p-exterior__list {
    display: block;
  }
}

.p-exterior__item {
  position: relative;
}
.p-exterior__item:first-child {
  grid-area: 1/1/2/2;
  width: 54.5138888889vw;
  padding: calc(20 * var(--width-ratio)) 0 0 calc(30 * var(--width-ratio));
  border-bottom: 2px dotted var(--border);
}
@media (max-width: 768px) {
  .p-exterior__item:first-child {
    max-width: 87.1794871795vw;
    width: 100%;
    margin: 0 auto;
    padding: 0 calc(10 * var(--width-ratio)) calc(34 * var(--width-ratio));
  }
  .p-exterior__item:first-child .p-equipment__lead {
    letter-spacing: normal;
  }
  .p-exterior__item:first-child .p-equipment__text {
    letter-spacing: normal;
  }
}
.p-exterior__item:nth-child(2) {
  grid-area: 1/2/3/3;
  margin-left: calc(46 * var(--width-ratio));
  padding: calc(10 * var(--width-ratio)) 0 calc(10 * var(--width-ratio)) calc(55 * var(--width-ratio));
  border-left: 2px dotted var(--border);
}
@media (max-width: 768px) {
  .p-exterior__item:nth-child(2) {
    display: flex;
    align-items: flex-start;
    gap: calc(40 * var(--width-ratio));
    max-width: 87.1794871795vw;
    width: 100%;
    margin: 0 auto;
    padding: calc(60 * var(--width-ratio)) 0 calc(34 * var(--width-ratio)) calc(10 * var(--width-ratio));
    border-left: none;
  }
}
.p-exterior__item:nth-child(2) .p-exterior__detail {
  margin-top: calc(60 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-exterior__item:nth-child(2) .p-exterior__detail {
    max-width: 36.6666666667vw;
    width: 100%;
    margin-top: 0;
  }
}
@media (max-width: 768px) {
  .p-exterior__item:nth-child(2) .p-equipment__text {
    letter-spacing: normal;
  }
}
@media (max-width: 768px) {
  .p-exterior__item:nth-child(2) .p-exterior-alert {
    margin-top: calc(60 * var(--width-ratio));
  }
}
.p-exterior__item:last-child {
  grid-area: 2/1/3/2;
  padding-top: calc(54 * var(--width-ratio));
  padding-left: calc(30 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-exterior__item:last-child {
    max-width: 87.1794871795vw;
    width: 100%;
    margin: 0 auto;
    padding: calc(50 * var(--width-ratio)) 0 calc(34 * var(--width-ratio));
    border-top: 2px dotted var(--border);
  }
}
.p-exterior__item:last-child .p-exterior__detail {
  max-width: 24.7222222222vw;
  width: 100%;
}
@media (max-width: 768px) {
  .p-exterior__item:last-child .p-exterior__detail {
    max-width: 100%;
  }
}
.p-exterior__item:last-child .p-exterior-img {
  max-width: 22.1527777778vw;
  width: 100%;
}
@media (max-width: 768px) {
  .p-exterior__item:last-child .p-exterior-img {
    max-width: 71.7948717949vw;
  }
}
.p-exterior__item:last-child .p-equipment-alert {
  margin-top: calc(82 * var(--width-ratio));
  padding-left: 1em;
  text-indent: -1em;
}
@media (max-width: 768px) {
  .p-exterior__item:last-child .p-equipment-alert {
    margin-top: calc(58 * var(--width-ratio));
    padding: 0;
    text-indent: unset;
  }
}

.p-exterior__wrap {
  display: flex;
  align-items: center;
  flex-flow: row wrap;
  gap: 4.5138888889vw;
}
@media (max-width: 768px) {
  .p-exterior__wrap {
    flex-direction: column;
    gap: calc(38 * var(--width-ratio));
  }
}

.p-exterior__title {
  font-size: calc(28 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-exterior__title {
    font-size: calc(18 * var(--width-ratio));
    line-height: 1.1;
  }
}

.p-exterior__figure {
  max-width: 14.7222222222vw;
  margin: 0 auto;
  box-shadow: 0px 0px 25px 0px rgba(45, 45, 45, 0.5);
}
@media (max-width: 768px) {
  .p-exterior__figure {
    max-width: 38.4615384615vw;
  }
}

.p-exterior-alert {
  margin-top: calc(38 * var(--width-ratio));
  color: #6E6358;
  font-size: calc(11 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 1.6;
  letter-spacing: normal;
}
@media (max-width: 768px) {
  .p-exterior-alert {
    margin-top: calc(20 * var(--width-ratio));
    font-size: calc(10 * var(--width-ratio));
  }
}

/**
 * #Energy
 */
.p-energy-intro {
  display: flex;
  align-items: center;
  gap: 4.7222222222vw;
  max-width: 94.1666666667vw;
  width: 100%;
  margin: calc(42 * var(--width-ratio)) auto 0;
  padding: 0 calc(55 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-energy-intro {
    flex-direction: column;
    gap: calc(24 * var(--width-ratio));
    max-width: 87.1794871795vw;
    margin: calc(32 * var(--width-ratio)) auto 0;
    padding: calc(33 * var(--width-ratio)) 0 calc(40 * var(--width-ratio));
    border-top: 2px dotted var(--border);
  }
}

.p-energy-intro__title {
  max-width: 28.8194444444vw;
  width: 100%;
  color: var(--brown);
  font-size: calc(24 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.6;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-energy-intro__title {
    max-width: 100%;
    font-size: calc(20 * var(--width-ratio));
    line-height: 1.5;
    letter-spacing: 0.05em;
  }
}

.p-energy-intro__text {
  max-width: 52.0833333333vw;
  width: 100%;
}
@media (max-width: 768px) {
  .p-energy-intro__text {
    max-width: 100%;
  }
}
.p-energy-intro__text span {
  display: block;
  margin-top: calc(22 * var(--width-ratio));
  color: #6E6358;
  font-size: calc(11 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 1.6;
  letter-spacing: normal;
}
@media (max-width: 768px) {
  .p-energy-intro__text span {
    display: none;
  }
}

.p-energy {
  margin-top: calc(60 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-energy {
    margin-top: 0;
  }
}

.p-energy__inner {
  max-width: 94.1666666667vw;
  padding: 0 calc(55 * var(--width-ratio)) calc(77 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-energy__inner {
    max-width: 87.1794871795vw;
    padding: 0 0 calc(40 * var(--width-ratio));
  }
}

.p-energy-flex {
  display: flex;
  align-items: center;
  gap: 3.4722222222vw;
  padding-top: calc(58 * var(--width-ratio));
  border-top: 2px dotted var(--border);
}
@media (max-width: 768px) {
  .p-energy-flex {
    flex-direction: column;
    gap: calc(50 * var(--width-ratio));
  }
}

.p-energy__feature {
  max-width: 44.5833333333vw;
  width: 100%;
}
@media (max-width: 768px) {
  .p-energy__feature {
    max-width: 100%;
  }
}

.p-energy__title {
  color: var(--orange);
  font-size: calc(28 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.6;
  letter-spacing: 0.07em;
}

.p-energy__lead {
  margin-top: calc(48 * var(--width-ratio));
  color: var(--brown);
  font-size: calc(15 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.7;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-energy__lead {
    margin-top: calc(34 * var(--width-ratio));
  }
}

.p-energy__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-column-gap: 15px;
  grid-row-gap: 12px;
  max-width: calc(415 * var(--width-ratio));
  width: 100%;
  margin-top: calc(44 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-energy__list {
    gap: calc(8 * var(--width-ratio));
    max-width: calc(340 * var(--width-ratio));
    margin-top: calc(44 * var(--width-ratio));
  }
}

.p-energy__item {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2px;
  height: calc(60 * var(--width-ratio));
  border-radius: calc(5 * var(--width-ratio));
  background: var(--orange);
}
@media (max-width: 768px) {
  .p-energy__item {
    height: calc(50 * var(--width-ratio));
  }
}

.p-energy__wrap {
  display: flex;
  align-items: baseline;
  justify-content: center;
}

.p-energy__caption {
  color: var(--white);
  font-size: calc(20 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1;
  letter-spacing: normal;
}
@media (max-width: 768px) {
  .p-energy__caption {
    font-size: calc(14 * var(--width-ratio));
  }
}

.p-energy__number {
  color: var(--white);
  font-size: calc(36 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 1;
  letter-spacing: 0.04em;
}
@media (max-width: 768px) {
  .p-energy__number {
    font-size: calc(30 * var(--width-ratio));
  }
}

.p-energy__text {
  color: var(--white);
  font-size: calc(17 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1;
  letter-spacing: normal;
}
@media (max-width: 768px) {
  .p-energy__text {
    font-size: calc(14 * var(--width-ratio));
  }
}

.p-energy__figure {
  max-width: 37.2222222222vw;
  width: 100%;
}
@media (max-width: 768px) {
  .p-energy__figure {
    max-width: 87.1794871795vw;
  }
}

/**
 * #Structure
 */
.p-structure__heading {
  position: absolute;
  top: 0;
  right: calc(-40 * var(--width-ratio));
  display: flex;
  align-items: center;
  gap: calc(30 * var(--width-ratio));
  max-width: 41.6666666667vw;
  width: 100%;
  padding: calc(25 * var(--width-ratio)) 4.8611111111vw;
  border-top: 2px solid var(--beige);
  border-bottom: 2px solid var(--beige);
  background: url(../images/common/bg_brown.webp);
  color: var(--beige);
}
@media (max-width: 768px) {
  .p-structure__heading {
    position: unset;
    gap: calc(15 * var(--width-ratio));
    max-width: 100%;
    padding: calc(10 * var(--width-ratio)) calc(26 * var(--width-ratio));
    border-top: 1px solid var(--beige);
    border-bottom: 1px solid var(--beige);
    font-size: calc(35 * var(--width-ratio));
  }
}
.p-structure__heading h2 {
  font-size: 5.4166666667vw;
  font-weight: var(--regular);
  font-family: var(--font-base-family-en);
  line-height: 1;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
@media (max-width: 768px) {
  .p-structure__heading h2 {
    font-size: 8.9743589744vw;
  }
}
.p-structure__heading h2 span.p-structure__heading--small {
  display: inline-block;
  margin-left: calc(15 * var(--width-ratio));
  font-size: 3.8194444444vw;
  font-weight: var(--regular);
  font-family: var(--font-base-family-en);
}
@media (max-width: 768px) {
  .p-structure__heading h2 span.p-structure__heading--small {
    font-size: 8.9743589744vw;
  }
}
.p-structure__heading span {
  font-size: 1.25vw;
  font-weight: var(--bold);
  font-family: var(--font-base-family);
  line-height: 1.6;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-structure__heading span {
    font-size: calc(13 * var(--width-ratio));
  }
}

.p-structure-section--first .p-equipment__thumb img {
  border-radius: calc(10 * var(--width-ratio)) calc(10 * var(--width-ratio)) calc(10 * var(--width-ratio)) 0;
}
.p-structure-section--first .p-equipment__summary {
  top: 16.875vw;
}
@media (max-width: 1024px) {
  .p-structure-section--first .p-equipment__summary {
    max-width: 100%;
    padding: 0 calc(55 * var(--width-ratio));
  }
}
@media (max-width: 768px) {
  .p-structure-section--first .p-equipment__summary {
    margin-top: calc(43 * var(--width-ratio));
    padding: 0 calc(14 * var(--width-ratio));
  }
}

.p-structure-section--second .p-structure__heading {
  right: unset;
  left: calc(-40 * var(--width-ratio));
  padding: calc(37 * var(--width-ratio)) 3.6111111111vw;
}
@media (max-width: 768px) {
  .p-structure-section--second .p-structure__heading {
    padding: calc(10 * var(--width-ratio)) 6.9230769231vw;
  }
}
.p-structure-section--second .p-equipment__thumb {
  margin-left: auto;
}
.p-structure-section--second .p-equipment__thumb img {
  border-radius: calc(10 * var(--width-ratio));
}
.p-structure-section--second .p-equipment__summary {
  top: 19.4444444444vw;
  right: unset;
  left: 4.8611111111vw;
}
@media (max-width: 1024px) {
  .p-structure-section--second .p-equipment__summary {
    max-width: 100%;
    padding: 0 calc(55 * var(--width-ratio));
  }
}
@media (max-width: 768px) {
  .p-structure-section--second .p-equipment__summary {
    margin-top: calc(43 * var(--width-ratio));
    padding: 0 calc(14 * var(--width-ratio));
  }
}

.p-structure-section--third .p-equipment__thumb img {
  border-radius: calc(10 * var(--width-ratio)) calc(10 * var(--width-ratio)) calc(10 * var(--width-ratio)) 0;
}
.p-structure-section--third .p-equipment__summary {
  top: 17.8472222222vw;
  right: 8.8888888889vw;
}
@media (max-width: 1024px) {
  .p-structure-section--third .p-equipment__summary {
    max-width: 100%;
    padding: 0 calc(55 * var(--width-ratio));
  }
}
@media (max-width: 768px) {
  .p-structure-section--third .p-equipment__summary {
    margin-top: calc(43 * var(--width-ratio));
    padding: 0 calc(14 * var(--width-ratio));
  }
}

.p-structure-section--four .p-structure__heading {
  right: unset;
  left: calc(-40 * var(--width-ratio));
  padding: calc(37 * var(--width-ratio)) 3.6111111111vw;
}
@media (max-width: 768px) {
  .p-structure-section--four .p-structure__heading {
    padding: calc(10 * var(--width-ratio)) 6.9230769231vw;
  }
}
.p-structure-section--four .p-equipment__thumb {
  margin-left: auto;
}
.p-structure-section--four .p-equipment__thumb img {
  border-radius: calc(10 * var(--width-ratio)) calc(10 * var(--width-ratio)) 0 calc(10 * var(--width-ratio));
}
.p-structure-section--four .p-equipment__summary {
  top: 17.7083333333vw;
  right: unset;
  left: 4.8611111111vw;
}
@media (max-width: 1024px) {
  .p-structure-section--four .p-equipment__summary {
    max-width: 100%;
    padding: 0 calc(55 * var(--width-ratio));
  }
}
@media (max-width: 768px) {
  .p-structure-section--four .p-equipment__summary {
    margin-top: calc(43 * var(--width-ratio));
    padding: 0 calc(14 * var(--width-ratio));
  }
}

/**
 * #Damping
 */
.p-damping {
  margin-top: calc(54 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-damping {
    margin-top: calc(28 * var(--width-ratio));
  }
}

.p-damping__inner {
  max-width: 94.0277777778vw;
  padding: 0 calc(78 * var(--width-ratio)) calc(70 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-damping__inner {
    max-width: 100%;
    padding: 0 calc(26 * var(--width-ratio)) calc(70 * var(--width-ratio));
  }
}

.p-damping__thumb {
  display: block;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .p-damping__thumb {
    max-width: 87.1794871795vw;
    width: 100%;
  }
}

.p-damping-area {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: calc(1176 * var(--width-ratio));
  width: 100%;
  margin: calc(30 * var(--width-ratio)) auto 0;
}
@media (max-width: 768px) {
  .p-damping-area {
    flex-direction: column;
    margin: calc(40 * var(--width-ratio)) auto 0;
  }
}

.p-damping__desc {
  margin-right: calc(14 * var(--width-ratio));
  padding-right: calc(18 * var(--width-ratio));
  border-right: 2px dotted var(--border);
}
@media (max-width: 768px) {
  .p-damping__desc {
    margin: 0 0 calc(45 * var(--width-ratio)) 0;
    padding: 0 0 calc(45 * var(--width-ratio)) 0;
    border-right: none;
    border-bottom: 2px dotted var(--border);
  }
}

.p-damping__category {
  font-size: calc(18 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.6;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-damping__category {
    font-size: calc(14 * var(--width-ratio));
  }
}

.p-damping__title {
  margin-top: calc(7 * var(--width-ratio));
  font-size: calc(32 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 1.55;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-damping__title {
    margin-top: calc(8 * var(--width-ratio));
    font-size: calc(20 * var(--width-ratio));
    font-weight: var(--bold);
    line-height: 1.5;
    letter-spacing: 0.05em;
  }
}

.p-damping__text {
  font-size: calc(15 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.9;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-damping__text {
    font-size: calc(14 * var(--width-ratio));
    line-height: 1.6;
    letter-spacing: normal;
  }
}

.p-damping-middle {
  margin-top: calc(18 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-damping-middle {
    margin-top: calc(8 * var(--width-ratio));
  }
}
.p-damping-middle .p-damping__figure {
  max-width: calc(697 * var(--width-ratio));
  width: 100%;
}
@media (max-width: 768px) {
  .p-damping-middle .p-damping__figure {
    max-width: calc(335 * var(--width-ratio));
    margin: 0 auto;
  }
}
.p-damping-middle .p-damping-note {
  max-width: calc(647 * var(--width-ratio));
  width: 100%;
  margin-top: calc(18 * var(--width-ratio));
  letter-spacing: normal;
}
@media (max-width: 768px) {
  .p-damping-middle .p-damping-note {
    margin-top: calc(24 * var(--width-ratio));
    font-size: calc(10 * var(--width-ratio));
    letter-spacing: 0.04em;
  }
}

.p-damping__figure {
  display: block;
}

.p-damping-note {
  font-size: calc(11 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 1.3;
  letter-spacing: 0.04em;
}
@media (max-width: 768px) {
  .p-damping-note.sp {
    margin-top: calc(36 * var(--width-ratio));
    font-size: calc(10 * var(--width-ratio));
    line-height: 1.6;
    letter-spacing: normal;
  }
}

.p-damping-bottom {
  margin-top: calc(26 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-damping-bottom {
    margin-top: calc(40 * var(--width-ratio));
  }
}
.p-damping-bottom .p-damping__figure {
  max-width: calc(369 * var(--width-ratio));
  width: 100%;
}
@media (max-width: 768px) {
  .p-damping-bottom .p-damping__figure {
    max-width: calc(299 * var(--width-ratio));
    margin: 0 auto;
  }
}
.p-damping-bottom .p-damping-note {
  margin-top: calc(38 * var(--width-ratio));
}

.p-damping__detail {
  display: flex;
  align-items: center;
  gap: calc(16 * var(--width-ratio));
  max-width: 47.9166666667vw;
  width: 100%;
  padding: calc(11 * var(--width-ratio));
  border: 1px solid #5C5044;
}
@media (max-width: 768px) {
  .p-damping__detail {
    flex-direction: column;
    max-width: 86.4102564103vw;
    margin: 0 auto;
    padding: calc(19 * var(--width-ratio));
  }
}

.p-damping__summary {
  max-width: 18.9583333333vw;
  width: 100%;
}
@media (max-width: 768px) {
  .p-damping__summary {
    max-width: 100%;
  }
}

.p-damping__lead {
  color: var(--brown);
  font-size: calc(20 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 1.3;
  letter-spacing: 0.04em;
}
@media (max-width: 768px) {
  .p-damping__lead {
    font-weight: var(--bold);
    line-height: 1.5;
    letter-spacing: 0.05em;
  }
}

.p-damping__caption {
  margin-top: calc(12 * var(--width-ratio));
  color: var(--brown);
  font-size: calc(12 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 1.25;
  letter-spacing: 0.04em;
}
@media (max-width: 768px) {
  .p-damping__caption {
    margin-top: calc(16 * var(--width-ratio));
    font-size: calc(13 * var(--width-ratio));
    line-height: 1.6;
    letter-spacing: normal;
  }
}

.p-damping-reason {
  max-width: 28.2638888889vw;
  width: 100%;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .p-damping-reason {
    max-width: 76.6666666667vw;
  }
}

.p-damping-reason__figure {
  max-width: 23.2638888889vw;
  width: 100%;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .p-damping-reason__figure {
    max-width: 100%;
  }
}

/**
 * #Performance
 */
.p-performance {
  margin-top: calc(80 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-performance {
    margin-top: calc(45 * var(--width-ratio));
  }
}

.p-performance__inner {
  max-width: 94.0972222222vw;
  padding: 0 calc(46 * var(--width-ratio)) calc(60 * var(--width-ratio)) calc(69 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-performance__inner {
    padding: 0 calc(25 * var(--width-ratio)) calc(60 * var(--width-ratio));
  }
}

.p-performance-top .p-performance__title {
  display: flex;
  align-items: center;
  gap: calc(24 * var(--width-ratio));
  font-size: calc(23 * var(--width-ratio));
  font-weight: var(--medium);
  letter-spacing: normal;
}
@media (max-width: 768px) {
  .p-performance-top .p-performance__title {
    font-size: calc(18 * var(--width-ratio));
  }
}
.p-performance-top .p-performance__title img {
  display: block;
  width: calc(44 * var(--width-ratio));
}
.p-performance-top .p-performance__text {
  margin-top: calc(27 * var(--width-ratio));
  line-height: 2;
  letter-spacing: 0.05em;
}
.p-performance-top .p-performance__figure {
  display: flex;
  align-items: flex-start;
  gap: 4.9305555556vw;
  max-width: 51.1111111111vw;
  width: 100%;
}
@media (max-width: 768px) {
  .p-performance-top .p-performance__figure {
    flex-direction: column;
    gap: 3.8461538462vw;
  }
}
.p-performance-top .p-performance__figure img:first-child {
  max-width: 23.0555555556vw;
}
@media (max-width: 768px) {
  .p-performance-top .p-performance__figure img:first-child {
    max-width: 100%;
  }
}
.p-performance-top .p-performance__figure img:last-child {
  max-width: 23.125vw;
}
@media (max-width: 768px) {
  .p-performance-top .p-performance__figure img:last-child {
    max-width: 100%;
  }
}

.p-performance__heading {
  font-size: calc(24 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.6;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-performance__heading {
    font-size: calc(18 * var(--width-ratio));
  }
}

.p-performance__text {
  font-size: calc(15 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.9;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-performance__text {
    line-height: 2;
    letter-spacing: normal;
  }
}

.p-performance-area {
  display: flex;
  align-items: center;
  gap: 5vw;
  flex-flow: row wrap;
  margin-top: calc(20 * var(--width-ratio));
  padding: 3.1944444444vw 3.75vw 2.2916666667vw 2.9166666667vw;
  border-radius: calc(10 * var(--width-ratio));
  background: var(--white);
}
@media (max-width: 768px) {
  .p-performance-area {
    justify-content: center;
    padding: 5.1282051282vw;
  }
}

.p-performance__summary {
  max-width: 23.125vw;
  width: 100%;
}
@media (max-width: 1024px) {
  .p-performance__summary {
    max-width: 100%;
  }
}

.p-performance__title {
  font-size: calc(24 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.6;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-performance__title {
    font-size: calc(18 * var(--width-ratio));
  }
}

.p-performance-middle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: calc(50 * var(--width-ratio));
  padding-top: calc(50 * var(--width-ratio));
  border-top: 2px dotted var(--border);
}
@media (max-width: 768px) {
  .p-performance-middle {
    flex-direction: column;
  }
}
.p-performance-middle .p-performance__text {
  margin-top: calc(34 * var(--width-ratio));
}
.p-performance-middle .p-performance__figure {
  max-width: 20.8333333333vw;
  width: 100%;
  margin-top: calc(32 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-performance-middle .p-performance__figure {
    max-width: 51.2820512821vw;
  }
}

.p-performance__desc {
  max-width: 39.7222222222vw;
  width: 100%;
}
@media (max-width: 768px) {
  .p-performance__desc {
    max-width: 100%;
  }
}

.p-performance__thumb {
  max-width: 34.8611111111vw;
  width: 100%;
}
@media (max-width: 768px) {
  .p-performance__thumb {
    max-width: 100%;
    margin-top: calc(32 * var(--width-ratio));
  }
}

.p-performance-bottom {
  margin-top: calc(50 * var(--width-ratio));
  padding-top: calc(50 * var(--width-ratio));
  border-top: 2px dotted var(--border);
}
.p-performance-bottom .p-performance__text {
  margin-top: calc(20 * var(--width-ratio));
}
.p-performance-bottom .p-performance__figure {
  margin-top: calc(25 * var(--width-ratio));
}

.p-performance__list {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-top: calc(44 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-performance__list {
    flex-direction: column;
    gap: calc(18 * var(--width-ratio));
  }
}

.p-performance__item {
  width: 100%;
}
.p-performance__item:first-child {
  max-width: 35.1388888889vw;
}
@media (max-width: 768px) {
  .p-performance__item:first-child {
    max-width: 100%;
  }
}
.p-performance__item:nth-child(2) {
  max-width: 21.1805555556vw;
}
@media (max-width: 768px) {
  .p-performance__item:nth-child(2) {
    max-width: 100%;
  }
}
.p-performance__item:last-child {
  max-width: 21.1805555556vw;
}
@media (max-width: 768px) {
  .p-performance__item:last-child {
    max-width: 100%;
  }
}

/**
 * #Warranty
 */
.p-warranty {
  margin-top: calc(48 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-warranty {
    margin-top: calc(33 * var(--width-ratio));
  }
}

.p-warranty__inner {
  max-width: 94.0972222222vw;
  padding: 0 calc(55 * var(--width-ratio)) calc(57 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-warranty__inner {
    max-width: 100%;
    padding: 0 calc(25 * var(--width-ratio)) calc(60 * var(--width-ratio));
  }
}

.p-warranty-note {
  padding-right: calc(26 * var(--width-ratio));
  font-size: calc(15 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.9;
  letter-spacing: 0.05em;
  text-align: right;
}
@media (max-width: 768px) {
  .p-warranty-note {
    padding: 0;
    font-size: calc(14 * var(--width-ratio));
    line-height: 2;
    letter-spacing: normal;
    text-align: left;
  }
}

.p-warranty-content {
  margin-top: calc(48 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-warranty-content {
    margin-top: calc(40 * var(--width-ratio));
  }
}

.p-warranty-top,
.p-warranty-bottom {
  display: flex;
  align-items: stretch;
  padding-top: calc(16 * var(--width-ratio));
  border-top: 2px dotted var(--border);
}
@media (max-width: 768px) {
  .p-warranty-top,
  .p-warranty-bottom {
    flex-direction: column;
    padding-top: calc(25 * var(--width-ratio));
  }
}

.p-warranty-top {
  padding-bottom: calc(30 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-warranty-top {
    padding-top: calc(25 * var(--width-ratio));
  }
}
.p-warranty-top .p-warranty__text {
  margin-top: calc(20 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-warranty-top .p-warranty__text {
    margin-top: calc(24 * var(--width-ratio));
  }
}

.p-warranty-bottom .p-warranty__unit:first-child .p-warranty__figure {
  max-width: 46.875vw;
}
@media (max-width: 768px) {
  .p-warranty-bottom .p-warranty__unit:first-child .p-warranty__figure {
    max-width: 100%;
  }
}
.p-warranty-bottom .p-warranty__unit:last-child .p-warranty__figure {
  max-width: 30.4166666667vw;
}
@media (max-width: 768px) {
  .p-warranty-bottom .p-warranty__unit:last-child .p-warranty__figure {
    max-width: 100%;
  }
}
.p-warranty__unit {
  width: 100%;
}
.p-warranty__unit:first-child {
  max-width: 51.0416666667vw;
  margin-right: 5vw;
  padding-right: 4.1666666667vw;
  border-right: 2px dotted var(--border);
}
@media (max-width: 768px) {
  .p-warranty__unit:first-child {
    max-width: 100%;
    margin: 0;
    padding: 0;
    border: none;
  }
}
.p-warranty__unit:last-child {
  max-width: 30.4166666667vw;
}
@media (max-width: 768px) {
  .p-warranty__unit:last-child {
    max-width: 100%;
    margin-top: calc(25 * var(--width-ratio));
    padding-top: calc(25 * var(--width-ratio));
    border-top: 2px dotted var(--border);
  }
}

.p-warranty__title {
  font-size: calc(24 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.6;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-warranty__title {
    font-size: calc(18 * var(--width-ratio));
    line-height: 1.5;
  }
}

.p-warranty__text {
  font-size: calc(15 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.6;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-warranty__text {
    font-size: calc(14 * var(--width-ratio));
    line-height: 2;
    letter-spacing: normal;
  }
}

.p-warranty__lead {
  font-size: calc(18 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.6;
  letter-spacing: 0.07em;
}
.p-warranty__figure {
  width: 100%;
  margin-top: calc(15 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-warranty__figure {
    margin-top: calc(10 * var(--width-ratio));
  }
}

/**
 * #After
 */
.p-after {
  margin-top: calc(78 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-after {
    margin-top: calc(39 * var(--width-ratio));
  }
}

.p-after__inner {
  max-width: 94.0972222222vw;
  padding: 0 calc(55 * var(--width-ratio)) calc(57 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-after__inner {
    max-width: 100%;
    padding: 0 calc(25 * var(--width-ratio)) calc(50 * var(--width-ratio));
  }
}

.p-after-note {
  font-size: calc(15 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.9;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-after-note {
    padding: 0;
    font-size: calc(14 * var(--width-ratio));
    line-height: 2;
    letter-spacing: normal;
  }
}

.p-after-content {
  margin-top: calc(50 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-after-content {
    margin-top: calc(40 * var(--width-ratio));
  }
}

.p-after__unit {
  display: flex;
  align-items: center;
  gap: calc(50 * var(--width-ratio));
  padding: calc(50 * var(--width-ratio)) 0 calc(35 * var(--width-ratio));
  border-top: 2px dotted var(--border);
}
@media (max-width: 768px) {
  .p-after__unit {
    flex-direction: column;
    gap: calc(18 * var(--width-ratio));
    padding: calc(40 * var(--width-ratio)) 0;
  }
}

.p-after__thumb {
  max-width: 27.0833333333vw;
  width: 100%;
}
@media (max-width: 768px) {
  .p-after__thumb {
    max-width: 76.9230769231vw;
    margin: 0 auto;
  }
}

.p-after__title {
  font-size: calc(24 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.6;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-after__title {
    font-size: calc(18 * var(--width-ratio));
    line-height: 1.7;
  }
}

.p-after__text {
  margin-top: calc(34 * var(--width-ratio));
  font-size: calc(15 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.6;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-after__text {
    margin-top: calc(15 * var(--width-ratio));
    font-size: calc(14 * var(--width-ratio));
    font-weight: var(--medium);
    line-height: 2;
    letter-spacing: normal;
  }
}

/**
 * #Location
 */
.p-location__inner {
  max-width: 99.7222222222vw;
  padding: calc(80 * var(--width-ratio)) 6.1111111111vw calc(68 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-location__inner {
    max-width: 100%;
    padding: calc(58 * var(--width-ratio)) 0 calc(70 * var(--width-ratio));
  }
}

.p-location__wrap {
  max-width: 87.4305555556vw;
  padding: 0 5vw calc(100 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-location__wrap {
    max-width: 100%;
    padding: 0 calc(25 * var(--width-ratio)) calc(55 * var(--width-ratio));
  }
}

.p-location-top {
  display: grid;
  align-items: flex-end;
  grid-template-columns: repeat(2, 1fr);
}
@media (max-width: 768px) {
  .p-location-top {
    display: block;
  }
}
.p-location-top .p-location__thumb {
  grid-area: 1/1/3/2;
  max-width: 36.25vw;
}
@media (max-width: 768px) {
  .p-location-top .p-location__thumb {
    max-width: 100%;
  }
}
.p-location-top .p-location__title {
  grid-area: 1/2/2/3;
}
.p-location-top .p-location__desc {
  grid-area: 2/2/3/3;
}

.p-location__thumb {
  max-width: 23.4722222222vw;
  width: 100%;
  margin-bottom: calc(15 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-location__thumb {
    max-width: 42.0512820513vw;
    margin-bottom: calc(7 * var(--width-ratio));
  }
}

.p-location__title {
  color: var(--beige);
  font-size: calc(24 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.6;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-location__title {
    margin-bottom: calc(20 * var(--width-ratio));
    font-size: calc(20 * var(--width-ratio));
    line-height: 1.5;
    letter-spacing: 0.05em;
  }
}

.p-location__lead {
  color: var(--beige);
  font-size: calc(18 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.6;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-location__lead {
    font-size: calc(16 * var(--width-ratio));
    line-height: 1.1;
  }
}

.p-location__text {
  color: var(--beige);
  font-size: calc(14 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 2;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-location__text {
    font-size: calc(10 * var(--width-ratio));
    line-height: 2;
    letter-spacing: normal;
  }
}

.p-location-area {
  margin-top: calc(80 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-location-area {
    margin-top: calc(40 * var(--width-ratio));
  }
}
@media (max-width: 768px) {
  .p-location-area + .p-location-area {
    margin-top: calc(45 * var(--width-ratio));
  }
}

.p-location__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-column-gap: 50px;
  grid-row-gap: 72px;
}
@media (max-width: 768px) {
  .p-location__list {
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 10px;
    grid-row-gap: 25px;
  }
}

.p-location-note {
  margin-top: calc(100 * var(--width-ratio));
  color: var(--beige);
  font-size: calc(11 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 1.6;
  letter-spacing: normal;
}
@media (max-width: 768px) {
  .p-location-note {
    margin-top: calc(45 * var(--width-ratio));
  }
}

/**
 * #Spot
 */
.p-spot {
  position: relative;
  border-radius: calc(10 * var(--width-ratio));
  background: url(../images/common/bg_beige.webp);
}
.p-spot::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: calc(80 * var(--width-ratio));
  background-image: url(../images/location/deco_spot_after.webp);
  background-size: cover;
}
@media (max-width: 768px) {
  .p-spot::after {
    height: calc(55 * var(--width-ratio));
  }
}
.p-spot .splide.is-initialized:not(.is-active) .splide__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-column-gap: 36px;
  grid-row-gap: 24px;
}
@media (max-width: 1024px) {
  .p-spot .splide.is-initialized:not(.is-active) .splide__list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 768px) {
  .p-spot .splide.is-initialized:not(.is-active) .splide__list {
    display: block;
  }
}
.p-spot .splide__pagination {
  display: flex;
  justify-content: center;
  gap: calc(12 * var(--width-ratio));
  margin-top: calc(10 * var(--width-ratio));
}
.p-spot .splide__pagination button {
  width: calc(8 * var(--width-ratio));
  height: calc(8 * var(--width-ratio));
  border-radius: 50%;
  background: var(--border);
}
.p-spot .splide__pagination button.is-active {
  background: var(--orange);
}
.p-spot .p-about-area {
  margin-top: calc(10 * var(--width-ratio));
  padding-top: calc(68 * var(--width-ratio));
  border-top: 2px dotted var(--border);
}
@media (max-width: 768px) {
  .p-spot .p-about-area {
    padding: calc(50 * var(--width-ratio)) calc(25 * var(--width-ratio)) 0;
  }
}
.p-spot .p-about-catch {
  padding: 0;
  border: none;
}
.p-spot .p-about__head {
  border-bottom: 1px solid var(--border);
}
.p-spot .p-about__body {
  margin-top: calc(5 * var(--width-ratio));
  padding: calc(38 * var(--width-ratio)) 0 0;
  border-top: 1px double var(--border);
}
@media (max-width: 768px) {
  .p-spot .p-about__body {
    padding: calc(20 * var(--width-ratio)) 0 0;
  }
}
.p-spot .p-about-img {
  max-width: calc(380 * var(--width-ratio));
}

.p-spot__heading {
  border-radius: calc(10 * var(--width-ratio)) calc(10 * var(--width-ratio)) 0 0;
}

.p-spot-content {
  max-width: 87.2222222222vw;
  width: 100%;
  margin: 0 auto;
  padding: calc(40 * var(--width-ratio)) calc(60 * var(--width-ratio)) calc(190 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-spot-content {
    max-width: 100%;
    padding: calc(40 * var(--width-ratio)) 0 calc(125 * var(--width-ratio));
  }
}

.p-spot-intro {
  font-size: calc(24 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.6;
  letter-spacing: 0.07em;
  text-align: center;
}
@media (max-width: 768px) {
  .p-spot-intro {
    padding: 0 calc(44 * var(--width-ratio));
    font-size: calc(20 * var(--width-ratio));
    line-height: 1.5;
    letter-spacing: 0.05em;
  }
}
.p-spot-intro span {
  display: block;
  color: var(--orange);
  font-weight: var(--bold);
}

.p-spot-area {
  position: relative;
  margin-top: calc(56 * var(--width-ratio));
  padding-top: calc(40 * var(--width-ratio));
  padding-bottom: calc(65 * var(--width-ratio));
  border-bottom: 2px solid var(--border);
}
.p-spot-area::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  max-width: 78.8888888889vw;
  width: 100%;
  height: calc(1 * var(--width-ratio));
  border-top: 2px dotted var(--border);
  transform: translateX(-50%);
}
@media (max-width: 768px) {
  .p-spot-area::before {
    max-width: 76.9230769231vw;
  }
}
@media (max-width: 768px) {
  .p-spot-area {
    margin-top: calc(40 * var(--width-ratio));
    padding-top: calc(30 * var(--width-ratio));
    padding-bottom: calc(100 * var(--width-ratio));
  }
}

.p-spot-catch {
  text-align: center;
}
@media (max-width: 768px) {
  .p-spot-catch {
    padding: 0 calc(45 * var(--width-ratio));
  }
}

.p-spot__slide {
  margin-top: calc(55 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-spot__slide {
    margin-top: calc(33 * var(--width-ratio));
  }
}

.p-spot__item {
  min-height: calc(420 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-spot__item {
    min-height: calc(355 * var(--width-ratio));
  }
}
.p-spot__item:nth-child(odd) .p-spot__desc {
  background: url(../images/common/bg_orange.webp);
}
.p-spot__item:nth-child(even) .p-spot__desc {
  background: url(../images/common/bg_brown.webp);
}
.p-spot__item:nth-child(8) .p-spot__text {
  margin-top: calc(8 * var(--width-ratio));
}

.p-spot__desc {
  position: relative;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  min-height: calc(180 * var(--width-ratio));
  padding: calc(30 * var(--width-ratio)) calc(25 * var(--width-ratio)) calc(26 * var(--width-ratio));
  border-radius: 0 0 calc(10 * var(--width-ratio)) calc(10 * var(--width-ratio));
  color: var(--white);
  transform: translateY(-10px);
  z-index: -1;
}
@media (max-width: 768px) {
  .p-spot__desc {
    min-height: calc(152 * var(--width-ratio));
    padding: calc(30 * var(--width-ratio)) calc(20 * var(--width-ratio)) calc(22 * var(--width-ratio));
  }
}

.p-spot__title {
  font-size: calc(24 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-spot__title {
    letter-spacing: 0.05em;
  }
}
.p-spot__title span {
  display: block;
  font-size: calc(20 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.2;
  letter-spacing: 0.04em;
}
@media (max-width: 768px) {
  .p-spot__title span {
    font-size: calc(12 * var(--width-ratio));
  }
}

.p-spot__lead {
  font-size: calc(14 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 2;
  letter-spacing: 0.04em;
}
@media (max-width: 768px) {
  .p-spot__lead {
    font-size: calc(12 * var(--width-ratio));
  }
}

.p-spot__text {
  margin-top: calc(33 * var(--width-ratio));
  font-size: calc(14 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.5;
  letter-spacing: 0.04em;
}
@media (max-width: 768px) {
  .p-spot__text {
    margin-top: calc(28 * var(--width-ratio));
    font-size: calc(12 * var(--width-ratio));
  }
}

.p-spot-category {
  max-width: calc(24 * var(--width-ratio));
  width: 100%;
}
@media (max-width: 768px) {
  .p-spot-category {
    max-width: calc(20 * var(--width-ratio));
  }
}

/**
 * #Access
 */
.p-access__inner {
  max-width: 99.8611111111vw;
  padding: calc(66 * var(--width-ratio)) 8.6805555556vw calc(100 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-access__inner {
    max-width: 100%;
    padding: calc(50 * var(--width-ratio)) 0 calc(80 * var(--width-ratio));
  }
}

.p-access-top {
  color: var(--beige);
}
@media (max-width: 768px) {
  .p-access-top {
    padding: 0 calc(25 * var(--width-ratio));
  }
}

.p-access-catch {
  font-size: calc(24 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.6;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-access-catch {
    font-size: calc(20 * var(--width-ratio));
    line-height: 1.5;
    letter-spacing: 0.05em;
  }
}

.p-access__summary {
  margin-top: calc(38 * var(--width-ratio));
  font-size: calc(15 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 1.9;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-access__summary {
    margin-top: calc(10 * var(--width-ratio));
    font-size: calc(14 * var(--width-ratio));
    line-height: 2;
    letter-spacing: normal;
  }
}

.p-access__scroll {
  margin-top: calc(74 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-access__scroll {
    width: 100vw;
    margin-top: calc(10 * var(--width-ratio));
    padding-right: calc(70 * var(--width-ratio));
    padding-bottom: calc(25 * var(--width-ratio));
    overflow-x: scroll;
  }
  .p-access__scroll::-webkit-scrollbar {
    border-radius: calc(10 * var(--width-ratio));
    border: 1px solid var(--brown);
    background: var(--beige);
    height: 5px;
  }
  .p-access__scroll::-webkit-scrollbar-thumb {
    border-radius: calc(10 * var(--width-ratio));
    border: 1px solid var(--brown);
    background-color: var(--orange);
  }
}
@media (max-width: 768px) {
  .p-access__scroll img {
    width: calc(691 * var(--width-ratio));
  }
}

.p-access__link {
  position: relative;
  max-width: calc(424 * var(--width-ratio));
  width: 100%;
  margin: calc(53 * var(--width-ratio)) auto 0;
  padding: 0 calc(16 * var(--width-ratio));
  border-top: 1px solid var(--white);
  border-bottom: 1px solid var(--white);
}
@media (max-width: 768px) {
  .p-access__link {
    max-width: calc(340 * var(--width-ratio));
    margin: calc(64 * var(--width-ratio)) auto 0;
    padding: 0 calc(12 * var(--width-ratio));
  }
}
.p-access__link::before, .p-access__link::after {
  content: "";
  position: absolute;
  top: 50%;
  display: block;
  width: 1px;
  height: 125%;
  background: var(--white);
  transform: translateY(-50%);
}
.p-access__link::before {
  left: calc(16 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-access__link::before {
    left: calc(12 * var(--width-ratio));
  }
}
.p-access__link::after {
  right: calc(16 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-access__link::after {
    right: calc(12 * var(--width-ratio));
  }
}

.p-access__outer {
  padding: calc(31 * var(--width-ratio)) calc(32 * var(--width-ratio));
  background: url(../images/common/bg_orange.webp);
}
@media (max-width: 768px) {
  .p-access__outer {
    padding: calc(20 * var(--width-ratio)) calc(37 * var(--width-ratio)) calc(23 * var(--width-ratio));
  }
}
.p-access__outer:hover .p-access__wrap {
  color: var(--brown);
}

.p-access__wrap {
  color: var(--white);
  font-size: calc(24 * var(--width-ratio));
  font-weight: var(--regular);
  font-family: var(--font-base-family);
  line-height: 1.6;
  text-align: center;
  text-decoration: underline;
  transition: 0.3s;
}
@media (max-width: 768px) {
  .p-access__wrap {
    font-size: calc(18 * var(--width-ratio));
  }
}

.p-access-area {
  margin-top: calc(134 * var(--width-ratio));
}

.p-access__thumb {
  max-width: calc(1107 * var(--width-ratio));
  width: 100%;
  margin: 0 auto;
  padding: calc(45 * var(--width-ratio)) calc(82 * var(--width-ratio)) calc(30 * var(--width-ratio)) calc(65 * var(--width-ratio));
  border: 5px solid var(--border);
  background: #FFF9EF;
}
@media (max-width: 768px) {
  .p-access__thumb {
    padding: calc(34 * var(--width-ratio)) calc(25 * var(--width-ratio)) calc(30 * var(--width-ratio));
    border: 1px solid var(--border);
  }
}
.p-access__thumb img {
  width: 100%;
}

.p-access__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: calc(50 * var(--width-ratio));
  max-width: 71.3194444444vw;
  width: 100%;
  margin: calc(68 * var(--width-ratio)) auto 0;
}
@media (max-width: 1024px) {
  .p-access__list {
    max-width: 100%;
  }
}
@media (max-width: 768px) {
  .p-access__list {
    display: flex;
    flex-direction: column;
    gap: calc(20 * var(--width-ratio));
    margin: calc(38 * var(--width-ratio)) auto 0;
    padding: 0 calc(40 * var(--width-ratio));
  }
}

.p-access__desc {
  margin-top: calc(8 * var(--width-ratio));
  color: var(--beige);
}

.p-access__title {
  font-size: calc(20 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 1.6;
  letter-spacing: 0.04em;
  text-align: center;
}
@media (max-width: 1024px) {
  .p-access__title {
    font-size: calc(16 * var(--width-ratio));
  }
}
.p-access__lead {
  font-size: calc(32 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 1;
  letter-spacing: 0.04em;
}
@media (max-width: 1024px) {
  .p-access__lead {
    font-size: calc(28 * var(--width-ratio));
  }
}
.p-access__number {
  font-size: calc(48 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 1;
}
@media (max-width: 1024px) {
  .p-access__number {
    font-size: calc(44 * var(--width-ratio));
  }
}
.p-access__text {
  margin-top: calc(9 * var(--width-ratio));
  padding-left: calc(40 * var(--width-ratio));
  font-size: calc(13 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 1.5;
}
.p-access-note {
  max-width: 71.3194444444vw;
  width: 100%;
  margin: calc(68 * var(--width-ratio)) auto 0;
  color: var(--beige);
  font-size: calc(11 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 1.6;
  letter-spacing: normal;
}
@media (max-width: 768px) {
  .p-access-note {
    max-width: 100%;
    margin: calc(80 * var(--width-ratio)) auto 0;
    padding: 0 calc(25 * var(--width-ratio));
    font-size: calc(10 * var(--width-ratio));
  }
}

/**
 * #Overview
 */
.p-overview {
  max-width: calc(1186 * var(--width-ratio));
  width: 100%;
  margin: 0 auto;
  padding: 0;
  border-radius: calc(10 * var(--width-ratio));
  background: url(../images/common/bg_beige.webp);
}

.p-overview__title {
  padding: calc(34 * var(--width-ratio));
  border-radius: calc(10 * var(--width-ratio)) calc(10 * var(--width-ratio)) 0 0;
  border-top: 2px solid var(--beige);
  border-bottom: 2px solid var(--beige);
  background: url(../images/common/bg_orange.webp);
  color: var(--beige);
  font-size: calc(32 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 1.6;
  letter-spacing: 0.07em;
  text-align: center;
}
@media (max-width: 768px) {
  .p-overview__title {
    padding: calc(21 * var(--width-ratio));
    border-top: 1px solid var(--beige);
    border-bottom: 1px solid var(--beige);
    font-size: calc(18 * var(--width-ratio));
  }
}
.p-overview__title span {
  font-size: calc(22 * var(--width-ratio));
  font-weight: var(--medium);
}
@media (max-width: 768px) {
  .p-overview__title span {
    font-size: calc(15 * var(--width-ratio));
  }
}

.p-overview__inner {
  max-width: 82.3611111111vw;
  padding: calc(106 * var(--width-ratio)) calc(95 * var(--width-ratio)) calc(67 * var(--width-ratio));
}
@media (max-width: 1024px) {
  .p-overview__inner {
    padding: calc(106 * var(--width-ratio)) calc(35 * var(--width-ratio)) calc(67 * var(--width-ratio));
  }
}
@media (max-width: 768px) {
  .p-overview__inner {
    max-width: 100%;
    padding: calc(78 * var(--width-ratio)) calc(25 * var(--width-ratio)) calc(80 * var(--width-ratio));
  }
}

.p-overview__list {
  display: flex;
  gap: 3.4722222222vw;
  padding: calc(15 * var(--width-ratio)) 0;
  border-bottom: 1px solid var(--brown);
  font-size: calc(15 * var(--width-ratio));
  font-weight: var(--medium);
  line-height: 2.1;
  letter-spacing: 0.05em;
}
@media (min-width: 1440px) {
  .p-overview__list {
    gap: calc(50 * var(--width-ratio));
  }
}
@media (max-width: 768px) {
  .p-overview__list {
    gap: 0;
    padding: 0;
    font-size: calc(14 * var(--width-ratio));
    line-height: 1.7;
    letter-spacing: normal;
  }
}
.p-overview__list:first-child {
  padding-top: 0;
}
@media (max-width: 768px) {
  .p-overview__list:first-child {
    border-top: 1px solid var(--brown);
  }
}

.p-overview__term {
  width: calc(145 * var(--width-ratio));
}
@media (max-width: 1024px) {
  .p-overview__term {
    width: calc(160 * var(--width-ratio));
  }
}
@media (max-width: 768px) {
  .p-overview__term {
    padding: calc(15 * var(--width-ratio)) calc(5 * var(--width-ratio));
  }
}

.p-overview__desc {
  width: 82%;
  font-family: var(--font-base-family);
}
@media (max-width: 768px) {
  .p-overview__desc {
    width: 66.6666666667vw;
    padding: calc(15 * var(--width-ratio)) calc(10 * var(--width-ratio));
  }
}

/**
 * #Download
 */
.p-download {
  max-width: calc(1440 * var(--width-ratio));
  width: 100%;
  margin: 0 auto;
  padding: 0 calc(90 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-download {
    padding: 0 calc(25 * var(--width-ratio));
  }
}

.p-download__menu {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: calc(20 * var(--width-ratio));
}
@media (max-width: 1024px) {
  .p-download__menu {
    flex-flow: row wrap;
  }
}
@media (max-width: 768px) {
  .p-download__menu {
    flex-direction: column;
  }
}

.p-download__unit {
  max-width: calc(300 * var(--width-ratio));
  width: 100%;
  border-radius: calc(10 * var(--width-ratio));
  background: url(../images/common/bg_beige.webp);
}
@media (max-width: 768px) {
  .p-download__unit {
    max-width: 100%;
    margin: 0 auto;
  }
}
.p-download__unit:nth-child(3) .p-download__figure {
  max-width: calc(240 * var(--width-ratio));
}
.p-download__unit:nth-child(4) .p-download__figure {
  max-width: calc(240 * var(--width-ratio));
}
.p-download__unit .p-download__link {
  align-items: flex-start;
  margin-top: calc(30 * var(--width-ratio));
  font-size: calc(15 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-download__unit .p-download__link {
    margin-top: calc(15 * var(--width-ratio));
  }
}
.p-download__unit .p-download__link img {
  width: calc(42 * var(--width-ratio));
  height: calc(47 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-download__unit .p-download__link img {
    width: calc(34 * var(--width-ratio));
    height: calc(38 * var(--width-ratio));
  }
}

.p-download__head {
  padding: calc(18 * var(--width-ratio));
  border-radius: calc(10 * var(--width-ratio)) calc(10 * var(--width-ratio)) 0 0;
  border-top: 1px solid var(--beige);
  border-bottom: 1px solid var(--beige);
  background: url(../images/common/bg_orange.webp);
  color: var(--beige);
  font-size: calc(20 * var(--width-ratio));
  line-height: 1.6;
  letter-spacing: 0.07em;
  text-align: center;
}
@media (max-width: 768px) {
  .p-download__head {
    padding: calc(12 * var(--width-ratio));
    font-size: calc(18 * var(--width-ratio));
  }
}

.p-download__body {
  min-height: calc(410 * var(--width-ratio));
  height: 100%;
  padding: calc(24 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-download__body {
    min-height: 100%;
    padding: calc(20 * var(--width-ratio));
  }
}

.p-download__figure {
  display: flex;
  align-items: center;
  max-width: calc(176 * var(--width-ratio));
  width: 100%;
  min-height: calc(250 * var(--width-ratio));
  height: 100%;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .p-download__figure {
    max-width: calc(120 * var(--width-ratio));
    min-height: calc(100 * var(--width-ratio));
  }
}
.p-download__figure img {
  box-shadow: 2px 2px 2px 0px rgba(0, 0, 0, 0.35);
}

.p-download__link {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(10 * var(--width-ratio));
  color: var(--brown);
  font-size: calc(16 * var(--width-ratio));
  line-height: 1.6;
  letter-spacing: 0.07em;
  text-decoration: underline;
}
.p-download__link img {
  content: "";
  display: block;
  width: calc(34 * var(--width-ratio));
  height: calc(38 * var(--width-ratio));
  background-image: url(../images/common/icon_pdf_brown.svg);
  background-size: contain;
  background-repeat: no-repeat;
  transition: 0.3s;
}
.p-download__link:hover {
  opacity: 0.8;
}
.p-download__link:hover img {
  opacity: 0.8;
}

.p-download-content {
  margin-top: calc(54 * var(--width-ratio));
  border-radius: calc(10 * var(--width-ratio));
  background: url(../images/common/bg_beige.webp);
}

.p-download-catch {
  padding: calc(16 * var(--width-ratio));
  border-radius: calc(10 * var(--width-ratio)) calc(10 * var(--width-ratio)) 0 0;
  border-top: 1px solid var(--beige);
  border-bottom: 1px solid var(--beige);
  background: url(../images/common/bg_orange.webp);
  color: var(--beige);
  font-size: calc(24 * var(--width-ratio));
  line-height: 1.6;
  letter-spacing: 0.07em;
  text-align: center;
}
@media (max-width: 768px) {
  .p-download-catch {
    padding: calc(12 * var(--width-ratio));
    font-size: calc(18 * var(--width-ratio));
  }
}

.p-download-area {
  max-width: calc(1256 * var(--width-ratio));
  width: 100%;
  margin: 0 auto;
  padding: calc(48 * var(--width-ratio)) calc(60 * var(--width-ratio)) calc(110 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-download-area {
    padding: calc(25 * var(--width-ratio));
  }
}

.p-download-intro {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(76 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-download-intro {
    flex-direction: column;
    gap: calc(25 * var(--width-ratio));
  }
}
.p-download-intro .p-download__link {
  font-size: calc(16 * var(--width-ratio));
}
.p-download-intro .p-download__link img {
  width: calc(42 * var(--width-ratio));
  height: calc(47 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-download-intro .p-download__link img {
    width: calc(34 * var(--width-ratio));
    height: calc(38 * var(--width-ratio));
  }
}

.p-download__thumb {
  max-width: calc(176 * var(--width-ratio));
  width: 100%;
}
.p-download__thumb img {
  box-shadow: 2px 2px 2px 0px rgba(0, 0, 0, 0.35);
}

.p-download-group {
  margin-top: calc(40 * var(--width-ratio));
  padding-top: calc(48 * var(--width-ratio));
  border-top: 2px dotted var(--border);
}
@media (max-width: 768px) {
  .p-download-group {
    margin-top: calc(20 * var(--width-ratio));
    padding-top: calc(28 * var(--width-ratio));
  }
}

.p-download__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-column-gap: 90px;
  grid-row-gap: 40px;
}
@media (max-width: 768px) {
  .p-download__list {
    grid-template-columns: repeat(1, 1fr);
    grid-column-gap: 15px;
    grid-row-gap: 20px;
  }
}

/* ==========================================================================
    Utility
========================================================================== */
/**
 * #Display
 */
.pc {
  display: block;
}
@media (max-width: 768px) {
  .pc {
    display: none;
  }
}

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

/**
 * #Title
 */
.u-title {
  display: flex;
  align-items: center;
  gap: calc(30 * var(--width-ratio));
  padding: calc(10 * var(--width-ratio)) calc(100 * var(--width-ratio));
  border-top: 2px solid var(--beige);
  border-bottom: 2px solid var(--beige);
  color: var(--beige);
  font-size: 5.4166666667vw;
  font-weight: var(--regular);
  font-family: var(--font-base-family-en);
  line-height: 1.4;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
@media (max-width: 768px) {
  .u-title {
    gap: calc(15 * var(--width-ratio));
    padding: calc(10 * var(--width-ratio)) calc(28 * var(--width-ratio));
    border-top: 1px solid var(--beige);
    border-bottom: 1px solid var(--beige);
    font-size: 8.9743589744vw;
  }
}
.u-title span {
  color: var(--beige);
  font-size: 1.3888888889vw;
  font-weight: var(--bold);
  font-family: var(--font-base-family);
  line-height: 1.6;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .u-title span {
    font-size: 3.3333333333vw;
  }
}

.u-title--first {
  background-image: url(../images/common/bg_orange.webp);
}

.u-title--second {
  background-image: url(../images/common/bg_brown.webp);
}

/**
 * #Text
 */
.u-text {
  color: var(--brown);
  font-size: calc(15 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.9;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .u-text {
    font-size: calc(14 * var(--width-ratio));
    line-height: 2;
    letter-spacing: normal;
  }
} * var(--width-ratio));
  width: 100%;
  margin: 0 auto;
  padding: 0 calc(90 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-download {
    padding: 0 calc(25 * var(--width-ratio));
  }
}

.p-download__menu {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: calc(20 * var(--width-ratio));
}
@media (max-width: 1024px) {
  .p-download__menu {
    flex-flow: row wrap;
  }
}
@media (max-width: 768px) {
  .p-download__menu {
    flex-direction: column;
  }
}

.p-download__unit {
  max-width: calc(300 * var(--width-ratio));
  width: 100%;
  border-radius: calc(10 * var(--width-ratio));
  background: url(../images/common/bg_beige.webp);
}
@media (max-width: 768px) {
  .p-download__unit {
    max-width: 100%;
    margin: 0 auto;
  }
}
.p-download__unit:nth-child(3) .p-download__figure {
  max-width: calc(240 * var(--width-ratio));
}
.p-download__unit:nth-child(4) .p-download__figure {
  max-width: calc(240 * var(--width-ratio));
}
.p-download__unit .p-download__link {
  align-items: flex-start;
  margin-top: calc(30 * var(--width-ratio));
  font-size: calc(15 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-download__unit .p-download__link {
    margin-top: calc(15 * var(--width-ratio));
  }
}
.p-download__unit .p-download__link img {
  width: calc(42 * var(--width-ratio));
  height: calc(47 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-download__unit .p-download__link img {
    width: calc(34 * var(--width-ratio));
    height: calc(38 * var(--width-ratio));
  }
}

.p-download__head {
  padding: calc(18 * var(--width-ratio));
  border-radius: calc(10 * var(--width-ratio)) calc(10 * var(--width-ratio)) 0 0;
  border-top: 1px solid var(--beige);
  border-bottom: 1px solid var(--beige);
  background: url(../images/common/bg_orange.webp);
  color: var(--beige);
  font-size: calc(20 * var(--width-ratio));
  line-height: 1.6;
  letter-spacing: 0.07em;
  text-align: center;
}
@media (max-width: 768px) {
  .p-download__head {
    padding: calc(12 * var(--width-ratio));
    font-size: calc(18 * var(--width-ratio));
  }
}

.p-download__body {
  min-height: calc(410 * var(--width-ratio));
  height: 100%;
  padding: calc(24 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-download__body {
    min-height: 100%;
    padding: calc(20 * var(--width-ratio));
  }
}

.p-download__figure {
  display: flex;
  align-items: center;
  max-width: calc(176 * var(--width-ratio));
  width: 100%;
  min-height: calc(250 * var(--width-ratio));
  height: 100%;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .p-download__figure {
    max-width: calc(120 * var(--width-ratio));
    min-height: calc(100 * var(--width-ratio));
  }
}
.p-download__figure img {
  box-shadow: 2px 2px 2px 0px rgba(0, 0, 0, 0.35);
}

.p-download__link {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(10 * var(--width-ratio));
  color: var(--brown);
  font-size: calc(16 * var(--width-ratio));
  line-height: 1.6;
  letter-spacing: 0.07em;
  text-decoration: underline;
}
.p-download__link img {
  content: "";
  display: block;
  width: calc(34 * var(--width-ratio));
  height: calc(38 * var(--width-ratio));
  background-image: url(../images/common/icon_pdf_brown.svg);
  background-size: contain;
  background-repeat: no-repeat;
  transition: 0.3s;
}
.p-download__link:hover {
  opacity: 0.8;
}
.p-download__link:hover img {
  opacity: 0.8;
}

.p-download-content {
  margin-top: calc(54 * var(--width-ratio));
  border-radius: calc(10 * var(--width-ratio));
  background: url(../images/common/bg_beige.webp);
}

.p-download-catch {
  padding: calc(16 * var(--width-ratio));
  border-radius: calc(10 * var(--width-ratio)) calc(10 * var(--width-ratio)) 0 0;
  border-top: 1px solid var(--beige);
  border-bottom: 1px solid var(--beige);
  background: url(../images/common/bg_orange.webp);
  color: var(--beige);
  font-size: calc(24 * var(--width-ratio));
  line-height: 1.6;
  letter-spacing: 0.07em;
  text-align: center;
}
@media (max-width: 768px) {
  .p-download-catch {
    padding: calc(12 * var(--width-ratio));
    font-size: calc(18 * var(--width-ratio));
  }
}

.p-download-area {
  max-width: calc(1256 * var(--width-ratio));
  width: 100%;
  margin: 0 auto;
  padding: calc(48 * var(--width-ratio)) calc(60 * var(--width-ratio)) calc(110 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-download-area {
    padding: calc(25 * var(--width-ratio));
  }
}

.p-download-intro {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(76 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-download-intro {
    flex-direction: column;
    gap: calc(25 * var(--width-ratio));
  }
}
.p-download-intro .p-download__link {
  font-size: calc(16 * var(--width-ratio));
}
.p-download-intro .p-download__link img {
  width: calc(42 * var(--width-ratio));
  height: calc(47 * var(--width-ratio));
}
@media (max-width: 768px) {
  .p-download-intro .p-download__link img {
    width: calc(34 * var(--width-ratio));
    height: calc(38 * var(--width-ratio));
  }
}

.p-download__thumb {
  max-width: calc(176 * var(--width-ratio));
  width: 100%;
}
.p-download__thumb img {
  box-shadow: 2px 2px 2px 0px rgba(0, 0, 0, 0.35);
}

.p-download-group {
  margin-top: calc(40 * var(--width-ratio));
  padding-top: calc(48 * var(--width-ratio));
  border-top: 2px dotted var(--border);
}
@media (max-width: 768px) {
  .p-download-group {
    margin-top: calc(20 * var(--width-ratio));
    padding-top: calc(28 * var(--width-ratio));
  }
}

.p-download__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-column-gap: 90px;
  grid-row-gap: 40px;
}
@media (max-width: 768px) {
  .p-download__list {
    grid-template-columns: repeat(1, 1fr);
    grid-column-gap: 15px;
    grid-row-gap: 20px;
  }
}

/* ==========================================================================
    Utility
========================================================================== */
/**
 * #Display
 */
.pc {
  display: block;
}
@media (max-width: 768px) {
  .pc {
    display: none;
  }
}

.sp {
  display: none;
}
@media (max-width: 768px) {
  .sp {
    display: block;
  }
}

/**
 * #Title
 */
.u-title {
  display: flex;
  align-items: center;
  gap: calc(30 * var(--width-ratio));
  padding: calc(10 * var(--width-ratio)) calc(100 * var(--width-ratio));
  border-top: 2px solid var(--beige);
  border-bottom: 2px solid var(--beige);
  color: var(--beige);
  font-size: 5.4166666667vw;
  font-weight: var(--regular);
  font-family: var(--font-base-family-en);
  line-height: 1.4;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
@media (max-width: 768px) {
  .u-title {
    gap: calc(15 * var(--width-ratio));
    padding: calc(10 * var(--width-ratio)) calc(28 * var(--width-ratio));
    border-top: 1px solid var(--beige);
    border-bottom: 1px solid var(--beige);
    font-size: 8.9743589744vw;
  }
}
.u-title span {
  color: var(--beige);
  font-size: 1.3888888889vw;
  font-weight: var(--bold);
  font-family: var(--font-base-family);
  line-height: 1.6;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .u-title span {
    font-size: 3.3333333333vw;
  }
}

.u-title--first {
  background-image: url(../images/common/bg_orange.webp);
}

.u-title--second {
  background-image: url(../images/common/bg_brown.webp);
}

/**
 * #Text
 */
.u-text {
  color: var(--brown);
  font-size: calc(15 * var(--width-ratio));
  font-weight: var(--bold);
  line-height: 1.9;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .u-text {
    font-size: calc(14 * var(--width-ratio));
    line-height: 2;
    letter-spacing: normal;
  }
}