@charset "UTF-8";
/* -----------------------------------------------------------------------
## base ##################################################
----------------------------------------------------------------------- */
@import url("https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,700;1,700&display=swap");
.pane-contents > .container {
  width: auto; }

.pane-contents .container .pane-right-menu {
  width: auto;
  display: flex;
  margin: auto;
  justify-content: center; }

/* -----------------------------------------------------------------------
## media ##################################################
----------------------------------------------------------------------- */
.pc {
  display: block; }
  @media screen and (max-width: 767px) {
    .pc {
      display: none; } }

.sp {
  display: none; }
  @media screen and (max-width: 767px) {
    .sp {
      display: block; } }

/* -----------------------------------------------------------------------
## Font  Padding##################################################
---------------------------------------------------------



// SP用：
$fs-sp-12: 1.274rem;
$fs-sp-14: 1.486rem;
$fs-sp-15: 1.500rem; 
$fs-sp-16: 1.699rem;
$fs-sp-18: 1.911rem;
$fs-sp-20: 2.123rem;
$fs-sp-24: 2.548rem;
$fs-sp-28: 2.972rem;
$fs-sp-32: 3.397rem;
$fs-sp-40: 4.246rem;
$fs-sp-48: 5.096rem;


/* ============================================
   Base
=============================================== */
.gunze-selection {
  font-weight: bold;
  font-style: normal;
  font-size: 18px;
  color: #333333;
  letter-spacing: 0.08em;
  line-height: 1.5;
  overflow-x: hidden;
  width: 100%; }

.roboto {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal; }

.lp-wrapper {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto; }
  @media screen and (max-width: 767px) {
    .lp-wrapper {
      width: 92%; } }

.lp-wrapper1200 {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto; }
  @media screen and (max-width: 767px) {
    .lp-wrapper1200 {
      width: 92%; } }

.section {
  padding: 100px 0; }

.page-Campaign_PriceNormal span[id^="goods_discount_rate_"]:before {
  display: none; }

.page-Campaign_PriceNormal span[id^="goods_discount_rate_"] {
  display: none; }

/* -----------------------------------------------------------------------
## main ##################################################
----------------------------------------------------------------------- */
#main .mv {
  position: relative;
  height: 400px;
  background: url(/lp/gunze-selection/images/mv_bg.jpg) 50% 0/1920px 400px no-repeat; }
  @media screen and (max-width: 767px) {
    #main .mv {
      background: none;
      max-width: 100%;
      height: 100%;
      border: none; } }
  #main .mv picture {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    left: -700px;
    width: 533px;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    margin-top: 110px; }
    @media screen and (max-width: 767px) {
      #main .mv picture {
        position: static;
        margin: 0; } }

#cart {
  padding: 60px 0 100px; }
  #cart .cart-ttl {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 32px;
    margin: 0 0 40px;
    color: #003f98;
    font-size: 32px;
    text-align: center; }
    #cart .cart-ttl::before, #cart .cart-ttl:after {
      content: "";
      display: block;
      height: 2px;
      background-color: #003f98; }
  #cart .cart-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 45px; }
    #cart .cart-list li {
      position: relative;
      padding: 30px 25px;
      border-radius: 10px;
      background-color: #f4f4f4; }
      #cart .cart-list li:not(:last-child)::after {
        content: "";
        position: absolute;
        top: 50%;
        right: calc(60px / -2 - 6px);
        width: 0;
        height: 0;
        border-top: 18px solid transparent;
        border-bottom: 18px solid transparent;
        border-left: 26px solid #003f98;
        transform: translateY(-50%); }
      #cart .cart-list li:last-child {
        background-color: #eaf4ff; }
      #cart .cart-list li .cart-list-txt {
        margin-top: 18px;
        text-align: center; }
        #cart .cart-list li .cart-list-txt .cart-list-step {
          padding: 5px 20px;
          border-radius: 999px;
          background-color: #003f98;
          color: #fff;
          line-height: 1;
          margin-bottom: 20px; }
        #cart .cart-list li .cart-list-txt p {
          margin-top: 15px; }
  #cart .cart-notes {
    margin-top: 20px;
    font-size: 18px;
    text-align: center;
    font-weight: bold; }
  #cart .cart-btn {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 440px;
    min-height: 75px;
    margin: 30px auto 0;
    padding: 15px 40px;
    border-radius: 5px;
    background-color: #333333;
    color: #fff;
    font-size: 18px;
    line-height: 1.5;
    text-align: center; }
    #cart .cart-btn::after {
      content: "";
      position: absolute;
      top: 50%;
      right: 18px;
      width: 0;
      height: 0;
      border-top: 7px solid transparent;
      border-bottom: 7px solid transparent;
      border-left: 14px solid #fff;
      transform: translateY(-50%); }
  @media screen and (max-width: 767px) {
    #cart {
      padding: 3rem 0 5rem; }
      #cart .cart-ttl {
        gap: 1.5rem;
        margin: 0 0 2rem;
        font-size: 2.548rem; }
      #cart .cart-list {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 4rem; }
        #cart .cart-list li {
          position: relative;
          display: flex;
          flex-direction: row-reverse;
          align-items: center;
          justify-content: space-between;
          padding: 2rem 1.5rem;
          overflow: visible; }
          #cart .cart-list li > picture {
            display: block;
            flex: 0 0 40%; }
            #cart .cart-list li > picture img {
              display: block;
              width: 100%;
              height: auto; }
          #cart .cart-list li .cart-list-txt {
            width: 55%;
            margin-top: 0;
            text-align: left; }
            #cart .cart-list li .cart-list-txt .cart-list-step {
              display: inline-block;
              margin-bottom: 0rem; }
            #cart .cart-list li .cart-list-txt p {
              margin-top: 1rem; }
          #cart .cart-list li:not(:last-child)::after {
            top: calc(100% + 2rem);
            right: auto;
            left: 50%;
            border: 0;
            border-right: 14px solid transparent;
            border-left: 14px solid transparent;
            border-top: 21px solid #003f98;
            transform: translate(-50%, -50%); }
      #cart .cart-notes {
        margin-top: 1.5rem;
        font-size: 1.699rem; }
      #cart .cart-btn {
        max-width: 100%;
        min-height: 75px;
        margin: 3rem auto 0;
        padding: 1.5rem;
        font-size: 1.699rem; }
        #cart .cart-btn::after {
          right: 15px;
          border-top: 5px solid transparent;
          border-bottom: 5px solid transparent;
          border-left: 10px solid #fff; } }

#contents {
  background-color: #f4f4f4;
  padding: 60px 0; }
  #contents .contents-ttl {
    margin: 0 0 40px;
    color: #003f98;
    font-size: 32px;
    line-height: 1.4;
    text-align: center; }
  #contents .contents-nav {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px 20px; }
    #contents .contents-nav .contents-nav-btn {
      position: relative;
      display: flex;
      align-items: center;
      min-height: 80px;
      padding: 8px 70px 8px 30px;
      border: 3px solid #003f98;
      border-radius: 10px;
      background-color: #ffffff;
      font-size: 22px; }
      #contents .contents-nav .contents-nav-btn::after {
        content: "▼";
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        display: grid;
        place-items: center;
        width: 60px;
        background-color: #003f98;
        color: #fff;
        font-size: 14px;
        line-height: 1; }
  @media screen and (max-width: 767px) {
    #contents {
      padding: 5rem 0; }
      #contents .contents-ttl {
        margin: 0 0 3rem;
        font-size: 2.972rem; }
      #contents .contents-nav {
        grid-template-columns: 1fr;
        gap: 2.5rem; }
        #contents .contents-nav .contents-nav-btn {
          min-height: 80px;
          padding: 1rem 70px 1rem 20px;
          font-size: 2.011rem; }
          #contents .contents-nav .contents-nav-btn::after {
            width: 50px; } }

.product-section {
  margin-top: 80px; }
  @media screen and (max-width: 767px) {
    .product-section {
      margin-top: 5rem; } }
  .product-section .product-section-ttl {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100px;
    margin: 0 0 40px;
    padding: 7px 20px;
    font-size: 32px; }
    .product-section .product-section-ttl-inner {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 40px;
      min-width: 0;
      position: relative; }
    .product-section .product-section-ttl-logo {
      display: block;
      height: 70px; }
    .product-section .product-section-ttl-package {
      display: block;
      flex: 0 0 auto;
      width: auto;
      height: 100px;
      object-fit: contain;
      transform: translateY(-20px); }
    .product-section .product-section-ttl--kaiteki-women {
      border-top: 2px solid #d35772;
      background-color: #ffeff2;
      color: #d35772; }
    .product-section .product-section-ttl--kaiteki-men {
      border-top: 2px solid #44577f;
      background-color: #fff4cd;
      color: #44577f; }
    .product-section .product-section-ttl--aijyorakuraku {
      border-top: 2px solid #44577f;
      background-color: #fff4cd;
      color: #44577f; }
    .product-section .product-section-ttl--kireilabo {
      border-top: 2px solid #d35772;
      background-color: #ffeff2;
      color: #d35772; }
    @media screen and (max-width: 767px) {
      .product-section .product-section-ttl {
        width: 100vw;
        margin-left: calc(50% - 50vw);
        box-sizing: border-box;
        height: auto;
        max-height: 8.0rem;
        margin-bottom: 2rem;
        padding: 1rem;
        font-size: 2.548rem; }
        .product-section .product-section-ttl-inner {
          gap: 2.0rem;
          max-width: 100%;
          justify-content: flex-start; }
        .product-section .product-section-ttl-logo {
          flex-shrink: 0;
          width: auto;
          height: 5.5rem; }
        .product-section .product-section-ttl-package {
          height: 8rem;
          transform: translateY(-2rem);
          margin-left: auto; }
        .product-section .product-section-ttl--aijyorakuraku, .product-section .product-section-ttl--kireilabo {
          padding: 1.7rem 1rem;
          max-height: none; }
        .product-section .product-section-ttl--aijyorakuraku {
          border-top: 2px solid #44577f;
          background-color: #fff4cd;
          color: #44577f; }
          .product-section .product-section-ttl--aijyorakuraku .product-section-ttl-inner .product-section-ttl-logo {
            height: 6.5rem; }
          .product-section .product-section-ttl--aijyorakuraku .product-section-ttl-inner .product-section-ttl-text {
            line-height: 1.3; }
        .product-section .product-section-ttl--kireilabo .product-section-ttl-inner .product-section-ttl-logo {
          height: 5.0rem; } }
  .product-section .product-section-block {
    display: flex;
    flex-direction: column;
    gap: 15px; }
    .product-section .product-section-block .product-list {
      display: grid;
      align-items: stretch;
      justify-content: center;
      direction: rtl;
      gap: 15px; }
      .product-section .product-section-block .product-list.list--2 {
        grid-template-columns: repeat(2, 230px); }
      .product-section .product-section-block .product-list.list--3 {
        grid-template-columns: repeat(3, 230px); }
      .product-section .product-section-block .product-list.list--4 {
        grid-template-columns: repeat(4, 230px); }
      .product-section .product-section-block .product-list.list--5 {
        grid-template-columns: repeat(5, 230px); }
      @media screen and (max-width: 767px) {
        .product-section .product-section-block .product-list {
          width: 100%;
          direction: ltr;
          gap: 2rem; }
          .product-section .product-section-block .product-list.list--2, .product-section .product-section-block .product-list.list--3, .product-section .product-section-block .product-list.list--4, .product-section .product-section-block .product-list.list--5 {
            grid-template-columns: minmax(0, 1fr); } }
      .product-section .product-section-block .product-list .product-card {
        direction: ltr;
        position: relative;
        display: flex;
        flex-direction: column;
        min-width: 0;
        overflow: hidden;
        border: 1px solid #cccccc;
        border-radius: 4px; }
        .product-section .product-section-block .product-list .product-card::before {
          content: attr(data-number);
          position: absolute;
          top: 8px;
          left: 8px;
          z-index: 2;
          display: grid;
          place-items: center;
          width: 40px;
          height: 40px;
          letter-spacing: 0;
          background-color: #003f98;
          color: #fff;
          font-family: "Roboto", sans-serif;
          font-size: 22px;
          line-height: 1; }
          @media screen and (max-width: 767px) {
            .product-section .product-section-block .product-list .product-card::before {
              width: 50px;
              height: 50px;
              top: 15px;
              left: 15px;
              font-size: 2.548rem; } }
        .product-section .product-section-block .product-list .product-card .product-card-img {
          display: grid;
          place-items: center;
          width: 100%;
          aspect-ratio: 1 / 1;
          padding-top: 8px;
          position: relative; }
          .product-section .product-section-block .product-list .product-card .product-card-img > img {
            display: block;
            width: 100%;
            height: auto; }
          .product-section .product-section-block .product-list .product-card .product-card-img .product-card-icons {
            position: absolute;
            top: 53px;
            left: 8px;
            z-index: 2;
            display: flex;
            flex-direction: column;
            align-items: stretch;
            gap: 5px;
            width: 38px; }
            @media screen and (max-width: 767px) {
              .product-section .product-section-block .product-list .product-card .product-card-img .product-card-icons {
                top: 80px;
                left: 15px; } }
            .product-section .product-section-block .product-list .product-card .product-card-img .product-card-icons .product-card-icon {
              display: flex;
              align-items: center;
              justify-content: center;
              min-width: 60px;
              min-height: 25px;
              padding: 0px 2px;
              border: 1px solid #003f98;
              background-color: #fff;
              color: #003f98;
              font-size: 14px;
              text-align: center; }
              @media screen and (max-width: 767px) {
                .product-section .product-section-block .product-list .product-card .product-card-img .product-card-icons .product-card-icon {
                  min-width: 80px;
                  min-height: 30px;
                  font-size: 2.123rem; } }
              .product-section .product-section-block .product-list .product-card .product-card-img .product-card-icons .product-card-icon--full {
                min-width: 70px;
                height: 70px;
                padding: 2px;
                line-height: 1.3; }
                @media screen and (max-width: 767px) {
                  .product-section .product-section-block .product-list .product-card .product-card-img .product-card-icons .product-card-icon--full {
                    height: 90px;
                    min-width: 90px; } }
              .product-section .product-section-block .product-list .product-card .product-card-img .product-card-icons .product-card-icon--women {
                background-color: #db4e70;
                color: #ffffff;
                border: 1px solid #db4e70; }
              .product-section .product-section-block .product-list .product-card .product-card-img .product-card-icons .product-card-icon--men {
                background-color: #3d62ad;
                color: #ffffff;
                border: 1px solid #3d62ad; }
              .product-section .product-section-block .product-list .product-card .product-card-img .product-card-icons .product-card-icon--img {
                display: block;
                min-height: 0;
                padding: 0;
                border: 0;
                background-color: transparent; }
                .product-section .product-section-block .product-list .product-card .product-card-img .product-card-icons .product-card-icon--img img {
                  width: 80%; }
        .product-section .product-section-block .product-list .product-card .product-card-body {
          display: flex;
          flex: 1;
          flex-direction: column;
          padding: 20px 15px 30px; }
          .product-section .product-section-block .product-list .product-card .product-card-body .product-card-name {
            margin-bottom: 10px;
            font-size: 16px; }
          .product-section .product-section-block .product-list .product-card .product-card-body .product-card-detail {
            font-size: 0.73em; }
            .product-section .product-section-block .product-list .product-card .product-card-body .product-card-detail > div {
              display: grid;
              grid-template-columns: 47px minmax(0, 1fr);
              gap: 6px;
              align-items: start;
              padding: 10px 0;
              border-top: 1px solid #cccccc; }
              .product-section .product-section-block .product-list .product-card .product-card-body .product-card-detail > div:last-child {
                border-bottom: 1px solid #cccccc; }
            .product-section .product-section-block .product-list .product-card .product-card-body .product-card-detail dt {
              margin: 0;
              color: #003f98;
              font-weight: 700; }
            .product-section .product-section-block .product-list .product-card .product-card-body .product-card-detail .product-card-colors {
              display: flex;
              flex-direction: column;
              gap: 0px; }
              .product-section .product-section-block .product-list .product-card .product-card-body .product-card-detail .product-card-colors .product-card-color {
                display: flex;
                align-items: center;
                gap: 6px; }
                .product-section .product-section-block .product-list .product-card .product-card-body .product-card-detail .product-card-colors .product-card-color::before {
                  content: "";
                  flex: 0 0 auto;
                  width: 12px;
                  height: 12px;
                  border: 1px solid #cccccc;
                  border-radius: 50%;
                  background-color: var(--swatch-color); }
          .product-section .product-section-block .product-list .product-card .product-card-body .product-card-tag {
            align-self: flex-start;
            margin-top: 10px;
            padding: 8px 12px;
            border-radius: 999px;
            background-color: #eaf4fb;
            color: #003f98;
            font-size: 11px;
            line-height: 1.0; }
          .product-section .product-section-block .product-list .product-card .product-card-body .product-card-notes {
            font-size: 10px;
            margin-top: 10px; }
          .product-section .product-section-block .product-list .product-card .product-card-body .product-card-btn-wrap {
            margin-top: auto;
            padding-top: 20px; }
            .product-section .product-section-block .product-list .product-card .product-card-body .product-card-btn-wrap .product-card-btn .block-add-cart {
              margin-bottom: 0; }
              .product-section .product-section-block .product-list .product-card .product-card-body .product-card-btn-wrap .product-card-btn .block-add-cart .block-add-cart--btn {
                font-size: 16px;
                display: flex;
                align-items: center;
                justify-content: center;
                border-radius: 5px;
                line-height: 1.3;
                gap: 10px;
                height: 45px; }
                .product-section .product-section-block .product-list .product-card .product-card-body .product-card-btn-wrap .product-card-btn .block-add-cart .block-add-cart--btn::before {
                  content: "";
                  flex: 0 0 auto;
                  width: 20px;
                  height: 20px;
                  background: url("/lp/gunze-selection/images/ico_cart.png") center/contain no-repeat; }
          @media screen and (max-width: 767px) {
            .product-section .product-section-block .product-list .product-card .product-card-body {
              padding: 3rem 3rem 4rem; }
              .product-section .product-section-block .product-list .product-card .product-card-body .product-card-name {
                margin-bottom: 2rem;
                font-size: 2.323rem; }
              .product-section .product-section-block .product-list .product-card .product-card-body .product-card-detail {
                font-size: 1.911rem; }
                .product-section .product-section-block .product-list .product-card .product-card-body .product-card-detail > div {
                  grid-template-columns: 4em minmax(0, 1fr);
                  gap: 1rem; }
                .product-section .product-section-block .product-list .product-card .product-card-body .product-card-detail .product-card-colors .product-card-color {
                  gap: 1rem; }
                  .product-section .product-section-block .product-list .product-card .product-card-body .product-card-detail .product-card-colors .product-card-color::before {
                    width: 18px;
                    height: 18px; }
              .product-section .product-section-block .product-list .product-card .product-card-body .product-card-tag {
                margin-top: 1rem;
                padding: 1rem 1.5rem;
                font-size: 1.699rem; }
              .product-section .product-section-block .product-list .product-card .product-card-body .product-card-notes {
                font-size: 1.486rem;
                margin-top: 1rem; }
              .product-section .product-section-block .product-list .product-card .product-card-body .product-card-btn-wrap {
                margin-top: 0;
                padding-top: 3rem; }
                .product-section .product-section-block .product-list .product-card .product-card-body .product-card-btn-wrap .product-card-btn .block-add-cart .block-add-cart--btn {
                  font-size: 2.323rem;
                  gap: 20px;
                  height: 55px; }
                  .product-section .product-section-block .product-list .product-card .product-card-body .product-card-btn-wrap .product-card-btn .block-add-cart .block-add-cart--btn::before {
                    width: 30px;
                    height: 30px; } }

.fixed-nav {
  position: fixed;
  top: 50%;
  right: 0;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  gap: 15px;
  transform: translateY(-50%);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.5s ease, visibility 0.5s; }

.fixed-nav.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto; }

.fixed-nav a {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 15px;
  width: 60px;
  padding: 30px 10px;
  border-radius: 5px 0 0 5px;
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  letter-spacing: 0.08em; }

.fixed-nav a span {
  writing-mode: vertical-rl; }

.fixed-nav__contents {
  background-color: #003f98; }

.fixed-nav__guide {
  background-color: #333333; }

.fixed-nav a img {
  width: 25px;
  height: auto; }

@media screen and (max-width: 767px) {
  .fixed-nav {
    top: auto;
    right: calc(5.4rem + 10px);
    bottom: 0;
    left: 10px;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
    gap: 5px;
    transform: none; }

  .fixed-nav a {
    box-sizing: border-box;
    display: flex;
    flex: 0 0 calc((100% - 5px) / 2);
    width: calc((100% - 5px) / 2);
    min-width: 0;
    min-height: 60px;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    padding: 12px 6px;
    padding-bottom: calc(12px + env(safe-area-inset-bottom, 0px));
    font-size: 2.123rem;
    line-height: 1.4;
    white-space: nowrap;
    border-radius: 5px 5px 0 0; }

  .fixed-nav a span {
    writing-mode: horizontal-tb; } }
