@charset "UTF-8";
@font-face {
  font-family: "Fann Doren Condensed";
  src: url("../fonts/FannDorenCondensed-Regular.woff2") format("woff2"), url("../fonts/FannDorenCondensed-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Fann Doren Condensed";
  src: url("../fonts/FannDorenCondensed-Italic.woff2") format("woff2"), url("../fonts/FannDorenCondensed-Italic.woff") format("woff");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Fann Doren Condensed";
  src: url("../fonts/FannDorenCondensed-Medium.woff2") format("woff2"), url("../fonts/FannDorenCondensed-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Fann Doren Condensed";
  src: url("../fonts/FannDorenCondensed-MediumItalic.woff2") format("woff2"), url("../fonts/FannDorenCondensed-MediumItalic.woff") format("woff");
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Fann Doren Condensed";
  src: url("../fonts/FannDorenCondensed-Bold.woff2") format("woff2"), url("../fonts/FannDorenCondensed-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Fann Doren Condensed";
  src: url("../fonts/FannDorenCondensed-BoldItalic.woff2") format("woff2"), url("../fonts/FannDorenCondensed-BoldItalic.woff") format("woff");
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Fann Doren Grotesque";
  src: url("../fonts/FannDorenGrotesque-Regular.woff2") format("woff2"), url("../fonts/FannDorenGrotesque-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Fann Doren Grotesque";
  src: url("../fonts/FannDorenGrotesque-Italic.woff2") format("woff2"), url("../fonts/FannDorenGrotesque-Italic.woff") format("woff");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Fann Doren Grotesque";
  src: url("../fonts/FannDorenGrotesque-Medium.woff2") format("woff2"), url("../fonts/FannDorenGrotesque-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Fann Doren Grotesque";
  src: url("../fonts/FannDorenGrotesque-MediumItalic.woff2") format("woff2"), url("../fonts/FannDorenGrotesque-MediumItalic.woff") format("woff");
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Fann Doren Grotesque";
  src: url("../fonts/FannDorenGrotesque-Bold.woff2") format("woff2"), url("../fonts/FannDorenGrotesque-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Fann Doren Grotesque";
  src: url("../fonts/FannDorenGrotesque-BoldItalic.woff2") format("woff2"), url("../fonts/FannDorenGrotesque-BoldItalic.woff") format("woff");
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

ul {
  list-style: none;
}

img {
  max-width: 100%;
  height: auto;
}

a {
  text-decoration: none;
  transition: all 0.3s ease;
}
a:hover {
  opacity: 0.7;
}

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

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

.buy-group {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
.buy-group .buy-row {
  display: flex;
}
@media (max-width: 768px) {
  .buy-group .buy-row {
    flex-direction: column;
  }
}
.buy-group .buy-txt {
  padding: 11px 10px 0;
  font-family: "Fann Doren Grotesque", sans-serif;
  font-size: clamp(8px, 1.3333px + 0.8681vw, 18px);
  font-weight: 400;
  font-style: italic;
  line-height: 1.5;
  color: #707070;
}
@media (max-width: 768px) {
  .buy-group .buy-txt {
    padding: 0;
    padding-top: 4px;
    font-size: 9px;
  }
}
.buy-group .buy-txt a {
  font-weight: 500;
  font-style: normal;
  color: #707070;
}

.center {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}

.fadein {
  opacity: 0;
  transition: opacity 1s ease;
}
.fadein.active {
  opacity: 1;
}

#main-visual .fv {
  margin-bottom: 8.85vw;
}
@media (max-width: 768px) {
  #main-visual .fv {
    margin-bottom: 52px;
  }
}
#main-visual .lead {
  padding: 0 20px;
}
@media (max-width: 768px) {
  #main-visual .lead {
    margin: 0 auto;
    padding: 0 15px;
  }
}
#main-visual .lead .lead-txt {
  width: 100%;
  max-width: 72vw;
  margin: 0 auto;
  text-align: center;
  font-family: "DNP秀英角ゴシック銀 Std", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
  font-size: clamp(8px, 2.6667px + 0.6944vw, 16px);
  font-size: 0.833vw;
  font-weight: 400;
  line-height: 2;
  color: #969696;
  word-break: auto-phrase;
}
@media (max-width: 768px) {
  #main-visual .lead .lead-txt {
    max-width: 100%;
    font-size: 9px;
    word-break: break-all;
  }
}
@media (max-width: 768px) {
  #main-visual .lead .lead-txt span {
    display: block;
    margin: 0 -10px;
    white-space: nowrap;
    letter-spacing: -0.5px;
  }
}

#mens-1 {
  padding: 13.07vw 0 0;
}
@media (max-width: 768px) {
  #mens-1 {
    padding-top: 60px;
  }
}
#mens-1 .mens-top {
  max-width: 73.8vw;
  margin-bottom: 27.44vw;
}
@media (max-width: 768px) {
  #mens-1 .mens-top {
    max-width: 100%;
    margin-bottom: 235px;
    padding-right: 20%;
  }
}
#mens-1 .mens-top .mens-row {
  margin-bottom: 6px;
  flex-direction: row-reverse;
}
@media (max-width: 768px) {
  #mens-1 .mens-top .mens-row {
    flex-direction: column;
  }
}
#mens-1 .mens-bottom {
  max-width: 36.87vw;
}
@media (max-width: 768px) {
  #mens-1 .mens-bottom {
    max-width: 100%;
  }
}

#womens-1 {
  padding: 29.63vw 0 0;
}
@media (max-width: 768px) {
  #womens-1 {
    padding-top: 250px;
  }
}
#womens-1 .womens-top {
  max-width: 73.54vw;
  margin-bottom: 29.63vw;
}
@media (max-width: 768px) {
  #womens-1 .womens-top {
    max-width: 100%;
    margin-bottom: 250px;
    padding-left: 20%;
    text-align: center;
  }
}
#womens-1 .womens-bottom {
  max-width: 36.77vw;
}
@media (max-width: 768px) {
  #womens-1 .womens-bottom {
    max-width: 100%;
  }
}

#couple {
  padding: 29.63vw 0 0;
}
@media (max-width: 768px) {
  #couple {
    padding-top: 250px;
  }
}
#couple .couple-top {
  max-width: 65.31vw;
  margin-bottom: 25.98vw;
}
@media (max-width: 768px) {
  #couple .couple-top {
    max-width: 100%;
    margin-bottom: 225px;
  }
}
#couple .couple-bottom.p-r {
  max-width: 46.66vw;
  padding-right: 9.79vw;
}
@media (max-width: 768px) {
  #couple .couple-bottom.p-r {
    max-width: 100%;
    padding-right: 0;
  }
}
#couple .couple-bottom.p-l {
  max-width: 46.66vw;
  padding-left: 9.79vw;
}
@media (max-width: 768px) {
  #couple .couple-bottom.p-l {
    max-width: 100%;
    padding-left: 0;
  }
}
#couple .couple-bottom:not(:last-child) {
  margin-bottom: 29.63vw;
}
@media (max-width: 768px) {
  #couple .couple-bottom:not(:last-child) {
    margin-bottom: 250px;
  }
}

#womens-2 {
  padding: 29.63vw 0 0;
}
@media (max-width: 768px) {
  #womens-2 {
    padding-top: 318px;
  }
}
#womens-2 .womens-top {
  max-width: 73.8vw;
  margin-bottom: 27.44vw;
}
@media (max-width: 768px) {
  #womens-2 .womens-top {
    max-width: 100%;
    margin-bottom: 167px;
    padding-right: 20%;
  }
}
#womens-2 .womens-top .womens-row {
  margin-bottom: 6px;
}

#mens-2 {
  padding: 0 0 40.88vw;
}
@media (max-width: 768px) {
  #mens-2 {
    padding-bottom: 126px;
  }
}
#mens-2 .mens-top {
  max-width: 73.8vw;
}
@media (max-width: 768px) {
  #mens-2 .mens-top {
    max-width: 100%;
    padding-left: 20%;
  }
}
#mens-2 .mens-top .mens-row {
  margin-bottom: 6px;
}

section:not(#main-visual) {
  padding-right: 45px;
  padding-left: 45px;
}

footer {
  position: relative;
  width: 100%;
  overflow: hidden;
}
@media (max-width: 768px) {
  footer {
    padding: 0 20px;
  }
}
footer .footer-staff {
  position: absolute;
  left: 3.125vw;
  top: 3.125vw;
  font-family: "Fann Doren Grotesque", sans-serif;
  font-size: clamp(12px, 10.6667px + 0.1736vw, 14px);
  font-weight: 400;
  line-height: 2;
  color: #ffffff;
}
@media (max-width: 768px) {
  footer .footer-staff {
    left: unset;
    right: calc(3.125vw + 20px);
    text-align: right;
  }
}
footer .footer-content {
  position: absolute;
  left: 50%;
  bottom: 2.6vw;
  transform: translateX(-50%);
  display: flex;
  width: 100%;
  align-items: flex-end;
  justify-content: space-between;
  padding: 0 3.125vw;
}
@media (max-width: 768px) {
  footer .footer-content {
    position: relative;
    left: unset;
    bottom: unset;
    transform: unset;
    display: block;
    margin-top: 48px;
    padding: 30px 0;
    border-top: 2px solid #8f8f8f;
  }
}
footer .footer-content .footer-left {
  display: flex;
  align-items: flex-end;
  gap: 5.72vw;
}
@media (max-width: 768px) {
  footer .footer-content .footer-left {
    display: block;
    margin-bottom: 30px;
  }
}
footer .footer-content .footer-left .footer-logo {
  width: 9.89vw;
}
@media (max-width: 768px) {
  footer .footer-content .footer-left .footer-logo {
    display: none;
  }
}
footer .footer-content .footer-left .footer-nav .footer-menu-list {
  display: flex;
  align-items: center;
  gap: 1.04vw;
}
@media (max-width: 768px) {
  footer .footer-content .footer-left .footer-nav .footer-menu-list {
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
  }
}
footer .footer-content .footer-left .footer-nav .footer-menu-list .footer-menu-item a {
  text-decoration: underline;
  text-underline-offset: 0px;
  text-decoration-color: #ffffff;
}
@media (max-width: 768px) {
  footer .footer-content .footer-left .footer-nav .footer-menu-list .footer-menu-item a {
    text-decoration: none;
  }
}
footer .footer-content .footer-left .footer-nav .footer-menu-list .footer-menu-item a span {
  font-family: "Fann Doren Grotesque", sans-serif;
  font-size: clamp(8px, 5.3333px + 0.3472vw, 12px);
  font-weight: 400;
  line-height: 1;
  color: #ffffff;
}
@media (max-width: 768px) {
  footer .footer-content .footer-left .footer-nav .footer-menu-list .footer-menu-item a span {
    font-size: 12px;
    color: #2d2d2d;
  }
}
footer .footer-content .footer-right {
  position: relative;
}
footer .footer-content .footer-right .copyright {
  font-family: "Fann Doren Grotesque", sans-serif;
  font-size: 0.572vw;
  font-weight: 400;
  line-height: 1;
  color: #ffffff;
}
@media (max-width: 768px) {
  footer .footer-content .footer-right .copyright {
    font-size: 11px;
    color: #2d2d2d;
  }
}
footer .footer-content .footer-right .back-to-top {
  position: absolute;
  right: 0;
  bottom: 2.6vw;
  font-family: "Fann Doren Grotesque", sans-serif;
  font-size: 0.677vw;
  font-weight: 700;
  line-height: 1;
  color: #ffffff;
  text-decoration: underline;
  text-underline-offset: 0px;
  text-decoration-color: #ffffff;
}
@media (max-width: 768px) {
  footer .footer-content .footer-right .back-to-top {
    bottom: 0;
    font-weight: 400;
    color: #2d2d2d;
    text-decoration: none;
    writing-mode: vertical-lr;
    white-space: nowrap;
  }
}