@charset "UTF-8";
/* ========================================
Foundation
======================================== */
/* Mixin
----------------- */
html {
  overflow-y: auto;
  overflow-x: hidden;
}

body {
  font-family: "Noto Sans JP", sans-serif;
  color: #282429;
  font-size: 3.46667vw;
  font-weight: 400;
  letter-spacing: 0.08em;
  text-align: left;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
}

@media print, screen and (min-width: 768px) {
  body {
    font-size: clamp(18px, 1.75695vw, 28px);
  }
}

a {
  color: #282429;
  text-decoration: none;
}

/* リセット
/* -------------------- 
img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

p {
  -webkit-margin-before: 0;
  margin-block-start: 0;
  -webkit-margin-after: 0;
  margin-block-end: 0;
  font-weight:500;
}

ul, ol {
  -webkit-margin-before: 0;
  margin-block-start: 0;
  -webkit-margin-after: 0;
  margin-block-end: 0;
  -webkit-padding-start: 0;
  padding-inline-start: 0;
}

li {
  list-style-type: none;
}

figure {
  margin: 0;
}

h1, h2, h3, h4, h5 {
  margin: 0;
}

dl {
  margin: 0;
}

dd {
  margin: 0;
}

button {
  background-color: transparent;
  border: none;
  padding: 0;
  display: block;
  cursor: pointer;
}

@media print, screen and (min-width: 481px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}*/

table, td, th {
  border-collapse: collapse;
}

.js-fadeInUp {
  opacity: 0;
  -webkit-transform: translateY(15px);
          transform: translateY(15px);
  -webkit-transition: 1s;
  transition: 1s;
}
.lp-content{
  position: relative;
}
/* ========================================
Object
======================================== */
/* utility
----------------- */
.u-br-tb-pc {
  display: none;
}

@media print, screen and (min-width: 768px) {
  .u-br-tb-pc {
    display: block;
  }
}

.u-br-sp-only {
  display: block;
}

@media print, screen and (min-width: 481px) {
  .u-br-sp-only {
    display: none;
  }
}

.u-br-sp {
  display: block;
}

@media print, screen and (min-width: 768px) {
  .u-br-sp {
    display: none;
  }
}

.u-br-sp-tb {
  display: block;
}

@media print, screen and (min-width: 1024px) {
  .u-br-sp-tb {
    display: none;
  }
}

.u-br-tb {
  display: none;
}

@media print, screen and (min-width: 768px) {
  .u-br-tb {
    display: none;
  }
}

@media print, screen and (min-width: 1024px) {
  .u-br-tb {
    display: block;
  }
}

@media print, screen and (min-width: 1366px) {
  .u-br-tb {
    display: none;
  }
}

.u-br-tb-only {
  display: none;
}

@media print, screen and (min-width: 768px) {
  .u-br-sp-only {
    display: block;
  }
}

@media print, screen and (min-width: 768px) {
  .u-br-tb-only {
    display: none;
  }
}

@media print, screen and (min-width: 1024px) {
  .u-br-tb-only {
    display: none;
  }
}

@media print, screen and (min-width: 1366px) {
  .u-br-tb-only {
    display: none;
  }
}

.u-br-pc {
  display: none;
}

@media print, screen and (min-width: 1024px) {
  .u-br-pc {
    display: block;
  }
}

.u-br-pc-large {
  display: none;
}

@media print, screen and (min-width: 1366px) {
  .u-br-pc-large {
    display: block;
  }
}

.u-br-pc-wide {
  display: none;
}

@media print, screen and (min-width: 1920px) {
  .u-br-pc-wide {
    display: block;
  }
}

.u-br-sp-pcWide {
  display: none;
}

@media print, screen and (min-width: 768px) {
  .u-br-sp-pcWide {
    display: block;
  }
}

@media print, screen and (min-width: 1366px) {
  .u-br-sp-pcWide {
    display: none;
  }
}

.u-clearfix:after {
  content: "";
  clear: both;
  display: block;
}

/* component
----------------- */
.c-ttl_style01Wrap {
  margin-bottom: 8vw;
}

@media print, screen and (min-width: 768px) {
  .c-ttl_style01Wrap {
    margin-bottom: 5vw;
  }
}

.c-ttl_style01 {
  font-size: 6.93333vw;
  font-weight: 600;
  text-align: center;
}

@media print, screen and (min-width: 768px) {
  .c-ttl_style01 {
    font-size: clamp(24px, 3.66032vw, 70px);
  }
}

.c-ttl_style01Sub {
  display: block;
  font-size: 3.2vw;
  font-weight: 500;
  margin-top: -5px;
  text-align: center;
}

@media print, screen and (min-width: 768px) {
  .c-ttl_style01Sub {
    font-size: clamp(12px, 1.1713vw, 30px);
  }
}

.c-btn_store {
  display: block;
  background-color: #D76A88;
  color: #fff;
  text-align: center;
  border-radius: 100px;
  overflow: hidden;
  border: 1px solid #D76A88;
  -webkit-transition: all 0.35s;
  transition: all 0.35s;
  -webkit-transition-timing-function: cubic-bezier(0.31, -0.105, 0.43, 1.59);
          transition-timing-function: cubic-bezier(0.31, -0.105, 0.43, 1.59);
  position: relative;
  padding: 4vmin 10%;
  width: 80%;
  margin-right: auto;
  margin-left: auto;
}

.c-btn_store::before {
  content: "";
  top: 90%;
  left: -150%;
  background-color: #fff;
  width: 200%;
  height: 740%;
  position: absolute;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

@media print, screen and (min-width: 768px) {
  .c-btn_store {
    width: 50%;
    max-width: 460px;
    padding: 3.6vmin 3%;
    border: 2px solid #D76A88;
  }
  .c-btn_store:hover {
    color: #D76A88;
  }
  .c-btn_store:hover::before {
    top: -310%;
    left: -50%;
  }
}

@media print, screen and (min-width: 1024px) {
  .c-btn_store {
    width: 38%;
    max-width: 520px;
  }
}

.c-btn_store,
.c-btn_store::before {
  -webkit-transition: all 0.35s;
  transition: all 0.35s;
  -webkit-transition-timing-function: cubic-bezier(0.31, -0.105, 0.43, 1.59);
          transition-timing-function: cubic-bezier(0.31, -0.105, 0.43, 1.59);
}

.c-btn_storeText {
  position: relative;
  z-index: 100;
  font-size: 3.73333vw;
}

@media print, screen and (min-width: 768px) {
  .c-btn_storeText {
    font-size: clamp(14px, 1.31772vw, 22px);
  }
}

.mincyo{
  font-family: "BIZ UDPMincho", serif;
  font-style: normal;
}

.black{
  border:solid 1.5vw #A8B0B6;
}

@media print, screen and (min-width: 768px) {
.black{
  border:solid 1vw #A8B0B6;
}
}

.gray{
  border:solid 1.5vw #008DBD;
}

@media print, screen and (min-width: 768px) {
.gray{
  border:solid 1vw #008DBD;
}
}

.navy{
  border:solid 1.5vw #24004B;
}

@media print, screen and (min-width: 768px) {
.navy{
  border:solid 1vw #24004B;
}
}

.red{
  border:solid 1.5vw #D76A88;
}

@media print, screen and (min-width: 768px) {
.red{
  border:solid 1vw #D76A88;
}
}

.yellow{
  border:solid 3vw #F4EC81;
}

@media print, screen and (min-width: 768px) {
.yellow{
  border:solid 1vw #F4EC81;
}
}

.border{
  border-bottom: 1px solid #FFFFFF;
  padding: 0px 5px 5px 5px;
  color: #fff !important;
}

.dli-arrow-right {
  display: inline-block;
  vertical-align: middle;
  color: #fff;
  line-height: 1;
  position: relative;
  width: 1em;
  height: 0.1em;
  background: currentColor;
  margin-left: 10px;

}

.dli-arrow-right::before {
  content: '';
  width: 0.65em;
  height: 0.65em;
  border: 0.1em solid currentColor;
  border-left: 0;
  border-bottom: 0;
  transform: rotate(45deg);
  transform-origin: top right;
  position: absolute;
  top: 50%;
  right: -0.05em;
  box-sizing: border-box;
      margin-left: 5px;

}

@media print, screen and (min-width: 768px) {
.sp{
display:none;
}
}

.pc{
  display:none;
}

@media print, screen and (min-width: 768px) {
.pc{
  display:block;
}
}







/* ========================================
layout
======================================== */

.subheader {
  top: 0;
  position: fixed;
  width: 100%;
  left: 0;
  z-index: 10001;
}

.l-header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10000;
}

.l-header.is-fixed {
  position: fixed;
  top: 52px;
  background-color: #008DBD;
}

.l-footer {
  background-color: #fff;
  position: relative;
  z-index: 100;
}

.l-comingsoon {
  min-height: 100svh;
}

.l-feature {
  position: relative;
}

.p-feature-box {
  position: relative;
  content: "";
  display: block;
  top: 0;
  left: 0;
  background: url(../../images/tough-armour/dungeon_bg.webp) center/cover no-repeat;
  z-index: 2;
}


.l-story1 {
  position: relative;

  }

  .p-story1 {
      content: "";
      display: block;
      top: 0;
      left: 0;
      padding-bottom: 11vw;
      padding-right: 6%;
      padding-left: 6%;
      padding-top: 16vw;
      background: url(../../images/tough-armour/story1.webp) center/cover no-repeat;
      z-index: 2;
    }
  
  @media print, screen and (min-width: 768px) {
    .p-story1 {
      padding-right: 8.7%;
      padding-left: 8.7%;
      margin-left: auto;
      margin-right: auto;
      margin-top: 0;
      padding-bottom: 6vw;
      padding-top: 6vw;
    }
  }

.p-story2 {
  content: "";
  display: block;
  top: 0;
  left: 0;
  padding-bottom: 11vw;
  padding-right: 6%;
  padding-left: 6%;
  padding-top: 16vw;
  background: url(../../images/tough-armour/story2.webp) center/cover no-repeat;
  z-index: 2;
}

@media print, screen and (min-width: 768px) {
.p-story2 {
  padding-right: 8.7%;
  padding-left: 8.7%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0;
  padding-bottom: 6vw;
  padding-top: 6vw;
}
}

.p-story3 {
  content: "";
  display: block;
  top: 0;
  left: 0;
  padding-bottom: 11vw;
  padding-right: 6%;
  padding-left: 6%;
  padding-top: 16vw;
  background: url(../../images/tough-armour/story3.webp) center/cover no-repeat;
  z-index: 2;
}

@media print, screen and (min-width: 768px) {
.p-story3 {
  padding-right: 8.7%;
  padding-left: 8.7%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0;
  padding-bottom: 6vw;
  padding-top: 6vw;
}
}


.l-product {
  position: relative;
}

.l-procuct_bg {
  content: "";
  display: block;
  top: 0;
  left: 0;
  background: url(../../images/tough-armour/shop_bg_sp.jpg)  center/cover no-repeat;
}


@media print, screen and (min-width: 768px) {
.l-procuct_bg {
  background: url(../../images/tough-armour/shop_bg.webp)no-repeat;
  background-size:cover;
  background-position: center;
  background-attachment: fixed;
}
}



.l-about{
position:relative;
}

.p-about-box {
  content: "";
  display: block;
  top: 0;
  left: 0;
  background: url(../../images/tough-armour/paper_bg.webp)  center/cover no-repeat;
  z-index:-1;
}

.l-story {
  position: relative;
  margin-bottom: 16vmin;
}

@media print, screen and (min-width: 768px) {
  .l-story {
    margin-bottom: 12vw;
  }
}

.l-wrap {
  position: relative;
}


.l-cta {
  background-color: #fff;
  position: relative;
  z-index: 102;
  padding-bottom: 14vw;
}

@media print, screen and (min-width: 768px) {
  .l-cta {
    padding-bottom: 10vw;
  }
}

.l-following {
  opacity: 0;
  position: fixed;
  bottom: 10px;
  left: 0;
  z-index: 99999;
  width: 100%;
}

.l-following.is-slideDown {
  opacity: 1;
  -webkit-animation: following-btn 0.8s cubic-bezier(0.25, 1, 0.5, 1) 1 forwards;
  animation: following-btn 0.8s cubic-bezier(0.25, 1, 0.5, 1) 1 forwards;
}

.l-following.is-none {
  -webkit-animation: following-btn-none 0.8s cubic-bezier(0.25, 1, 0.5, 1) 1 forwards;
  animation: following-btn-none 0.8s cubic-bezier(0.25, 1, 0.5, 1) 1 forwards;
}

@-webkit-keyframes following-btn {
  0% {
    -webkit-transform: translateY(20px);
            transform: translateY(20px);
    opacity: 0;
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes following-btn {
  0% {
    -webkit-transform: translateY(20px);
            transform: translateY(20px);
    opacity: 0;
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@-webkit-keyframes following-btn-none {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(20px);
            transform: translateY(20px);
  }
}

@keyframes following-btn-none {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(20px);
            transform: translateY(20px);
  }
}

.l-staff {
  position: relative;
  z-index: 102;
  padding-bottom: 10vmin;
  background-color: #fff;
}

.l-news {
  background: #EDE8DB;
  padding-top: 8vmin;
}

@media print, screen and (min-width: 768px) {
  .l-news {
    padding-top: 6vw;
  }
}

.shopbord{
  margin: 0 auto 10vw;
}

@media print, screen and (min-width: 768px) {
.shopbord{
  width:90%;
  margin-bottom:6vw;
}
}

@media print, screen and (min-width: 1024px) {
  .shopbord{
    width:60%;
  }
  }

.video{
  width:100%;
  max-width: 100%;
}

/* ========================================
Object
======================================== */
/* Project
----------------- */
.p-footer {
  padding-right: 6%;
  padding-left: 6%;
  padding-top: 6vw;
  padding-bottom: 6vw;
  background-color: #24004B;
}

@media print, screen and (min-width: 768px) {
  .p-footer {
    padding-right: 8.7%;
    padding-left: 8.7%;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (min-width: 1366px) {
  .p-footer {
    padding-right: 0;
    padding-left: 0;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    max-width: none;
    padding-bottom: 6vw;
  }
}

@media print, screen and (min-width: 1366px) {
  .p-footer {
    padding-right: 8.7%;
    padding-left: 8.7%;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-footer_info {
    width: 33.1%;
    margin-right: 2.5%;
    padding-top: 14px;
  }
}

.p-footer_infoLogo {
  width: 55%;
  max-width: 300px;
  margin-right: auto;
  margin-left: auto;
  display: block;
  margin-bottom: 4vw;
}

@media print, screen and (min-width: 1024px) {
  .p-footer_infoLogo {
    margin-right: 0;
    margin-left: 0;
    width: 64.6%;
    max-width: 320px;
    margin-bottom: 2vw;
  }
}

.p-footer_infoList {
  margin-bottom: 4vw;
  width: 60%;
  margin-right: auto;
  margin-left: auto;
}

@media print, screen and (min-width: 768px) {
  .p-footer_infoList {
    width: 30%;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-footer_infoList {
    margin-right: 0;
    margin-left: 0;
    width: 100%;
    margin-bottom: 3vw;
  }
}

.p-footer_infoListItemLink {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 4px 0;
  position: relative;
  font-size: 3.2vw;
}

@media print, screen and (min-width: 768px) {
  .p-footer_infoListItemLink {
    font-size: clamp(14px, 1.02489vw, 18px);
  }
}

@media print, screen and (min-width: 1024px) {
  .p-footer_infoListItemLink {
    padding: 7px 0;
  }
}

.p-footer_infoListItemLink::before {
  content: "";
  display: block;
  width: 7px;
  height: 1px;
  background-color: #fff;
  margin-right: 6px;
}

@media print, screen and (min-width: 768px) {
  .p-footer_infoListItemLink:hover {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-decoration: underline;
  }
}

.p-footer_btnWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 8vw;
}

@media print, screen and (min-width: 1024px) {
  .p-footer_btnWrap {
    width: 64.4%;
    margin-bottom: 0;
  }
}

.p-footer_btn {
  width: 48%;
  background-color: #fff;
}

.p-footer_btn:not(:last-child) {
  margin-right: 4%;
}

.p-footer_btn,
.p-footer_btnLink {
  border-radius: 6vw;
}

@media print, screen and (min-width: 768px) {
  .p-footer_btn,
  .p-footer_btnLink {
    border-radius: 60px;
  }
}

.p-footer_btnLink {
  position: relative;
  width: 100%;
  height: 100%;
  display: block;
  padding: 20px 10px;
}

@media print, screen and (min-width: 768px) {
  .p-footer_btnLink {
    padding: 5vw 3vw;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-footer_btnLink {
    padding: 11% 5%;
  }
}

.p-footer_btnLink::after {
  content: "";
  position: absolute;
  bottom: 3.5vw;
  right: 3.5vw;
  width: 8px;
  height: 8px;
  display: block;
  background: url(../../images/tough-armour/icon_another_link01.svg) no-repeat center center/contain;
}

@media print, screen and (min-width: 1024px) {
  .p-footer_btnLink::after {
    bottom: 35px;
    right: 35px;
    width: 16px;
    height: 16px;
  }
}

.p-footer_btnLogo {
  width: 80%;
  max-width: 220px;
  height: 6vw;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 10px;
}

@media print, screen and (min-width: 1024px) {
  .p-footer_btnLogo {
    width: 13.1vw;
    height: 2.8vw;
    margin-bottom: 1.5vw;
  }
}

.p-footer_btnText {
  text-align: center;
  font-size: 2.66667vw;
  font-weight: 900;
}

@media print, screen and (min-width: 768px) {
  .p-footer_btnText {
    font-size: clamp(14px, 1.31772vw, 22px);
    line-height: 1.6;
  }
}

.p-footer_infoCopy {
  color: #ACA9A2;
  font-size: 2.66667vw;
  text-align: center;
}

@media print, screen and (min-width: 768px) {
  .p-footer_infoCopy {
    font-size: 12px;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-footer_infoCopy {
    text-align: left;
    letter-spacing: 0.05em;
  }
}

.p-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  padding: 10px 2.6%;
}

@media print, screen and (min-width: 768px) {
  .p-header {
    padding: 1.4vw 1.4%;
  }
}

@media screen and (max-width: 959px) {
  .l-header.is-fixed .p-header {
    padding-top: 3vmin;
    padding-bottom: 3vmin;
  }
}

@media print, screen and (min-width: 960px) {
  .l-header.is-fixed .p-header {
    padding-top: 1vw;
    padding-bottom: 1vw;
  }
}

.p-header_logo {
  width: 45vmin;
  max-width: 180px;
  font-size: 0;
  position: relative;
  z-index: 1000000;
}

@media print, screen and (min-width: 768px) {
  .p-header_logo {
    width: 100%;
    max-width: 200px;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-header_logo {
    width: 100%;
    max-width: 250px;
  }
}


@media print, screen and (min-width: 960px) {
  .l-header.is-fixed .p-header_logo {
    width: 20vw;
    top: -1px;
  }
}

.p-header_nav {
  width: 10vmin;
}

@media print, screen and (min-width: 768px) {
  .l-header.is-fixed{
    top: 104px
  }
  .p-header_nav {
    width: 38px;
  }
}

@media print, screen and (max-width: 1200px) {
  .l-header.is-fixed{
    top: 53px
  }
}
@media print, screen and (min-width: 960px) {
  .p-header_nav {
    width: 80%;
  }
}

@media screen and (max-width: 959px) {
  .l-header.is-fixed .p-header_nav {
    width: 10vmin;
  }
}

.p-header_navInput {
  display: none;
}

@media screen and (max-width: 959px) {
  .p-header_navBtn {
    -webkit-transition: all 0.36s;
    transition: all 0.36s;
    position: relative;
    z-index: 10000000;
    border-radius: 100%;
    cursor: pointer;
    width: 38px;
    height: 38px;
  }
}

@media print, screen and (min-width: 960px) {
  .p-header_navBtn {
    display: none;
  }
}

@media screen and (max-width: 959px) {
  .l-header.is-fixed .p-header_navBtn {
    width: 38px;
    height: 38px;
    top: 2px;
  }
}

@media screen and (max-width: 959px) {
  .p-header_navBtnBar {
    width: 22px;
    height: 2px;
    position: absolute;
    background: #24004B;
    right: 0;
    margin: auto;
    left: 0;
    border-radius: 2px;
    -webkit-transition: all 0.36s cubic-bezier(0.5, 0.1, 0.2, 1.3);
    transition: all 0.36s cubic-bezier(0.5, 0.1, 0.2, 1.3);
  }
  .p-header_navBtnBar:nth-of-type(1) {
    top: calc(50% - ((4px)) + -3px);
    width: 22px;
  }
  .p-header_navBtnBar:nth-of-type(2) {
    top: calc(50% - ((4px)) + 4px);
    width: 22px;
  }
}

@media screen and (max-width: 959px) {
  .p-header_navInput:checked + label .p-header_navBtn {
    -webkit-transform: scale(1.19) rotate(0deg);
            transform: scale(1.19) rotate(0deg);
  }
  .p-header_navInput:checked + label .p-header_navBtn .p-header_navBtnBar:nth-of-type(1) {
    -webkit-transform: rotate(225deg);
            transform: rotate(225deg);
    top: calc(50% - (1px));
    width: 18px;
  }
  input.p-header_navInput:checked + label .p-header_navBtn .p-header_navBtnBar:nth-of-type(2) {
    -webkit-transform: rotate(-225deg);
            transform: rotate(-225deg);
    top: calc(50% - (1px));
    width: 18px;
  }
  input.p-header_navInput:checked + label .p-header_navBtn {
    -webkit-transform: scale(1.19) rotate(0deg);
            transform: scale(1.19) rotate(0deg);
    border: 1.5px solid #24004B;
  }
  .l-header.is-fixed .p-header_navInput:checked + label .p-header_navBtn .p-header_navBtnBar:nth-of-type(1) {
    width: 12px;
  }
  .l-header.is-fixed input.p-header_navInput:checked + label .p-header_navBtn .p-header_navBtnBar:nth-of-type(2) {
    width: 12px;
  }
}

@media screen and (max-width: 959px) {
  .p-header_navOpen {
    height: 100vh;
    right: -100%;
    position: fixed;
    top: 0;
    -webkit-transition: all 0.6s;
    transition: all 0.6s;
    width: 100%;
    z-index: 2;
    background-color: #008DBD;
  }
  .p-header_navOpen.is-fade {
    right: 0;
  }
}

.p-header_navOpenInner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (max-width: 959px) {
  .p-header_navOpenInner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 100vh;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    overflow-y: scroll;
    padding-right: 12%;
    padding-left: 12%;
    padding-top: 40vw;
    padding-bottom: 40vw;
  }
}

@media print, screen and (min-width: 960px) {
  .p-header_navOpenInner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}



@media screen and (max-width: 959px) {
  .p-header_navList {
    margin-bottom: 10vmin;
    width: 100%;
  }
}

@media print, screen and (min-width: 960px) {
  .p-header_navList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    margin-right: 2%;
  }
}

.p-header_navListItem {
  color: #24004B;
}

.p-header_navListItem a {
  color: #24004B;
}

@media screen and (max-width: 959px) {
  .p-header_navListItem {
    text-align: center;
  }
}

@media screen and (max-width: 959px) {
  .p-header_navListItem:not(:last-child) {
    margin-bottom: 8vmin;
  }
}

@media print, screen and (min-width: 960px) {
  .p-header_navListItem:not(:last-child) {
    margin-bottom: 0;
    margin-right: 5px;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-header_navListItem:not(:last-child) {
    margin-right: 15px;
  }
}

.p-header_navListLink {
  padding: 10px;
  font-size: 4.26667vmin;
  font-weight: 900;
  position: relative;
}

@media print, screen and (min-width: 960px) {
  .p-header_navListLink {
    font-size: clamp(14px, 1.1713vw, 18px);
    font-weight: 500;
    letter-spacing: 0.06em;
    display: inline-block;
  }
  .p-header_navListLink::after {
    position: absolute;
    bottom: 0.1vw;
    left: 5%;
    content: "";
    width: 90%;
    height: 1.5px;
    background: #24004B;
    -webkit-transform: scale(0, 1);
            transform: scale(0, 1);
    -webkit-transform-origin: right top;
            transform-origin: right top;
    -webkit-transition: -webkit-transform .3s;
    transition: -webkit-transform .3s;
    transition: transform .3s;
    transition: transform .3s, -webkit-transform .3s;
    border-radius: 10px;
  }
  .p-header_navListLink:hover::after {
    -webkit-transform-origin: left top;
            transform-origin: left top;
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
}

.p-header_navStoreBtn {
  padding: 4vmin 10%;
  width: 100%;
  margin-right: 0;
  margin-left: 0;
}

@media print, screen and (min-width: 960px) {
  .p-header_navStoreBtn {
    width: auto;
    padding: 11px 30px 11px 30px;
  }
}

.p-header_navStoreBtnText {
  font-size: 4.26667vmin;
}

@media print, screen and (min-width: 960px) {
  .p-header_navStoreBtnText {
    font-size: clamp(12px, 1.02489vw, 16px);
  }
}

.p-comingsoon {
  background-color: #9ED0C1;
}

.p-comingsoon,
.p-comingsoon_inner {
  min-height: 91svh;
}

@media print, screen and (min-width: 768px) {
  .p-comingsoon,
  .p-comingsoon_inner {
    height: 91vh;
  }
}

.p-comingsoon_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-bottom: 6vmin;
}

@media print, screen and (min-width: 768px) {
  .p-comingsoon_inner {
    padding-bottom: 4vmin;
  }
}

.p-comingsoon_ttl {
  width: 45%;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 8vmin;
}

@media print, screen and (min-width: 768px) {
  .p-comingsoon_ttl {
    width: 32.5%;
    margin-right: 0;
    margin-left: 0;
    margin-right: 4.6%;
    margin-bottom: 0;
  }
}

.p-comingsoon_ttlArea {
  margin-bottom: 16vmin;
}

@media print, screen and (min-width: 768px) {
  .p-comingsoon_ttlArea {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 79.5%;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 8vmin;
  }
}

.p-comingsoon_ttlText {
  width: 78%;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 3vmin;
}

@media print, screen and (min-width: 768px) {
  .p-comingsoon_ttlText {
    width: 100%;
    margin-right: 0;
    margin-left: 0;
  }
}

@media print, screen and (min-width: 768px) {
  .p-comingsoon_ttlTextArea {
    width: 62.9%;
  }
}

.p-comingsoon_ttlTextSub {
  font-weight: 900;
  font-size: 4.26667vw;
  text-align: center;
}

@media print, screen and (min-width: 768px) {
  .p-comingsoon_ttlTextSub {
    font-size: 2.63543vw;
    text-align: left;
  }
}

@media print, screen and (min-width: 768px) {
  .p-comingsoon_info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.p-comingsoon_infoText {
  font-weight: 900;
  text-align: center;
  margin-bottom: 2px;
  font-size: 3.73333vw;
}

@media print, screen and (min-width: 768px) {
  .p-comingsoon_infoText {
    font-size: 2.34261vw;
    margin-right: 25px;
    margin-bottom: 0;
  }
}

.p-comingsoon_infoDateWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.p-comingsoon_infoTextBrandName {
  display: inline-block;
  margin-left: 10px;
  position: relative;
  bottom: -1px;
  font-size: 4.8vw;
}

@media print, screen and (min-width: 768px) {
  .p-comingsoon_infoTextBrandName {
    font-size: 2.92826vw;
    bottom: -2px;
  }
}

.p-comingsoon_infoDate {
  color: #D76A88;
  font-weight: 600;
  font-size: 7.46667vw;
}

@media print, screen and (min-width: 768px) {
  .p-comingsoon_infoDate {
    font-size: 3.22108vw;
  }
}

.p-comingsoon_infoDebut {
  color: #D76A88;
  margin-left: 10px;
  letter-spacing: 0;
  font-size: 4.8vw;
}

@media print, screen and (min-width: 768px) {
  .p-comingsoon_infoDebut {
    font-size: 2.34261vw;
    margin-left: 15px;
  }
}

.p-comingsoon_infoDebut::before, .p-comingsoon_infoDebut::after {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background-color: #D76A88;
  border-radius: 100px;
  position: relative;
}

@media print, screen and (min-width: 768px) {
  .p-comingsoon_infoDebut::before, .p-comingsoon_infoDebut::after {
    height: 3px;
  }
}

.p-comingsoon_infoDebut::before {
  top: 3px;
}

@media print, screen and (min-width: 768px) {
  .p-comingsoon_infoDebut::before {
    top: 7px;
  }
}

.p-comingsoon_infoDebut::after {
  top: -3px;
}

@media print, screen and (min-width: 768px) {
  .p-comingsoon_infoDebut::after {
    top: -7px;
  }
}

.p-comingsoon_movingTextArea {
  overflow: hidden;
  width: 100%;
  min-height: 9svh;
  height: 9svh;
  background-color: #EDE8DB;
}

@media print, screen and (min-width: 768px) {
  .p-comingsoon_movingTextArea {
    height: 9vh;
  }
}

.p-comingsoon_movingTextAreaInner {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: inherit;
}

.p-comingsoon_movingTextWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  position: absolute;
  left: 0%;
  top: 50%;
  z-index: 1;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: inherit;
  height: inherit;
  -webkit-animation-duration: 10s;
  animation-duration: 10s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

@media print, screen and (min-width: 768px) {
  .p-comingsoon_movingTextWrap {
    -webkit-animation-duration: 15s;
    animation-duration: 15s;
  }
}

.p-comingsoon_movingTextWrap:nth-child(1) {
  -webkit-animation-name: first;
  animation-name: first;
}

.p-comingsoon_movingTextWrap:nth-child(2) {
  -webkit-animation-name: second;
  animation-name: second;
}

@-webkit-keyframes first {
  from {
    left: 0%;
  }
  to {
    left: -100%;
  }
}

@keyframes first {
  from {
    left: 0%;
  }
  to {
    left: -100%;
  }
}

@-webkit-keyframes second {
  from {
    left: 100%;
  }
  to {
    left: 0%;
  }
}

@keyframes second {
  from {
    left: 100%;
  }
  to {
    left: 0%;
  }
}

.p-comingsoon_movingText {
  text-transform: uppercase;
  letter-spacing: 0.03em;
  white-space: nowrap;
  font-size: 5.33333vw;
  color: #282429;
}

@media print, screen and (min-width: 768px) {
  .p-comingsoon_movingText {
    font-size: 1.90337vw;
  }
}

@media screen and (max-width: 767px) {
  .p-comingsoon_movingText:nth-child(n + 4) {
    display: none;
  }
}

.p-mv {
  position: relative;
  z-index: 100;
}



.p-mv_icon {
  position: absolute;
  z-index: 101;
}

.p-mv_iconCopy {
    width: 70vw;
    top: 20vmin;
    left: 15%;
}

@media print, screen and (min-width: 768px) {
  .p-mv_iconCopy{
    width: 75%;
    left: 13%;
    top: 15vw;
  }
}
@media print, screen and (min-width: 1024px) {
  .p-mv_iconCopy  {
    display:none;
    width: 38%;
    left: 07%;
    top: 10vw;
  }
}

@media print, screen and (min-width: 1025px) {
  .p-mv_iconCopy  {
        width: 38%;
        left: 07%;
        top: 10vw;
      }
}

.p-mv_iconCopy_pc {
  display:none;
  width: 70vw;
  top: 20vmin;
  left: 15%;
}

@media print, screen and (min-width: 768px) {
.p-mv_iconCopy_pc{

  width: 70%;
  left: -5%;
  top: 23vw;
}
}
@media print, screen and (min-width: 1024px) {
.p-mv_iconCopy_pc  {
  display:block;
  width: 35%;
  left: 07%;
  top: 27%;
}
}



.p-mv_iconGlasses{
  width: 60vw;
  top: 100vmin;
  left: 20%;
}
@media print, screen and (min-width: 768px) {
  .p-mv_iconGlasses {
    width: 55%;
    left: 25%;
    top: 90vw;
  }
}
@media print, screen and (min-width: 1024px) {
  .p-mv_iconGlasses  {
    width: 30%;
    left: 7%;
    top: 57%;
  }
}






.p-mv_iconNew {
  width: 95%;
  top: 50vmin;
 
}

@media print, screen and (min-width: 768px) {
  .p-mv_iconNew {
    width: 85%;
    left: 7%;
    top: 47vw;
  }
}
@media print, screen and (min-width: 1024px) {
  .p-mv_iconNew {
    width: 45%;
    left: 35%;
    top: 20%;
  }
}



.p-mv_iconNewColor {
  width: 45%;
  top: 24.8vmin;
  left: 3%;
}

@media print, screen and (min-width: 768px) {
  .p-mv_iconNewColor {
    width: 22.7%;
    max-width: 311px;
    min-width: 200px;
    left: 4.39%;
    top: 10.9vw;
  }
}

.p-mv,
.p-mv_sliderItemBg {
  width: 100%;
  height: 138vw;
}

@media print, screen and (min-width: 768px) {
.p-mv,
.p-mv_sliderItemBg {
  height: 91vh;
}}



@media print, screen and (min-width: 1024px) {
  .p-mv,
  .p-mv_sliderItemBg {
    height: 500px;
  }
}

@media print, screen and (min-width: 1200px) {
  .p-mv,
  .p-mv_sliderItemBg {
    height: 91vh;
  }
}


.p-mv_sliderItemBg-img01 {
  background: url(../../images/tough-armour/mv_bg_img01_sp.jpg) no-repeat center center/cover;
}

@media print, screen and (min-width: 768px) {
  .p-mv_sliderItemBg-img01 {
    background: url(../../images/tough-armour/mv_bg_img01.jpg) no-repeat center center/120%;
  }
}

@media print, screen and (min-width: 1366px) {
  .p-mv_sliderItemBg-img01 {
    background: url(../../images/tough-armour/mv_bg_img01.jpg) no-repeat center center/cover;
  }
}

.p-mv_sliderItemBg-img02 {
  background: url(../../images/tough-armour/mv_bg_img02_sp.webp) no-repeat center center/cover;
}

@media print, screen and (min-width: 768px) {
  .p-mv_sliderItemBg-img02 {
    background: url(../../images/tough-armour/mv_bg_img02.webp) no-repeat center center/cover;
  }
}

.p-mv_sliderItemBg-img03 {
  background: url(../../images/tough-armour/mv_bg_img03_sp.jpg) no-repeat center center/cover;
}

@media print, screen and (min-width: 768px) {
  .p-mv_sliderItemBg-img03 {
    background: url(../../images/tough-armour/mv_bg_img03.jpg) no-repeat center center/cover;
  }
}

.p-mv_sliderItemBg-img04 {
  background: url(../../images/tough-armour/mv_bg_img04_sp.jpg) no-repeat center center/cover;
}

@media print, screen and (min-width: 768px) {
  .p-mv_sliderItemBg-img04 {
    background: url(../../images/tough-armour/mv_bg_img04.jpg) no-repeat center center/cover;
  }
}

@-webkit-keyframes mv-zoomUp {
  0% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@keyframes mv-zoomUp {
  0% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

.swiper-slide-active .p-mv_sliderItemBg,
.swiper-slide-duplicate-active .p-mv_sliderItemBg,
.swiper-slide-prev .p-mv_sliderItemBg {
  -webkit-animation: mv-zoomUp 4s linear 0s 1 normal both;
  animation: mv-zoomUp 4s linear 0s 1 normal both;
}

.p-mv_sliderItemBg img {
  display: block;
}

.p-mv_textReleasedDate {
  color: #fff;
  position: absolute;
  bottom: 10vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 101;
  white-space: nowrap;
}

@media print, screen and (min-width: 768px) {
  .p-mv_textReleasedDate {
    bottom: 7vw;
  }
}

.p-mv_textReleasedDate::after {
  content: "";
  display: inline-block;
  width: 100%;
  border-radius: 10px;
  background-color: #fff;
  height: 2px;
  position: absolute;
  bottom: 5px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

@media print, screen and (min-width: 768px) {
  .p-mv_textReleasedDate::after {
    bottom: 10px;
  }
}

.p-mv_textReleasedDate-year {
  font-size: 5.86667vw;
}

@media print, screen and (min-width: 768px) {
  .p-mv_textReleasedDate-year {
    font-size: clamp(27px, 2.34261vw, 42px);
  }
}

.p-mv_textReleasedDate-date {
  font-size: 9.6vw;
}

@media print, screen and (min-width: 768px) {
  .p-mv_textReleasedDate-date {
    font-size: clamp(45px, 3.66032vw, 60px);
  }
}

.p-mv_textReleasedDate-week {
  font-size: 4vw;
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
  text-transform: uppercase;
  display: inline-block;
  position: relative;
  bottom: 2.4vmin;
  letter-spacing: 0.2em;
  margin-right: -4px;
  margin-left: -4px;
}

@media print, screen and (min-width: 768px) {
  .p-mv_textReleasedDate-week {
    font-size: clamp(18px, 1.61054vw, 27px);
    margin-right: -6px;
    margin-left: -6px;
    bottom: 12px;
    letter-spacing: 0.15em;
  }
}

.p-mv_textReleasedDate-text {
  font-size: 8vw;
  position: relative;
  bottom: 2px;
}

@media print, screen and (min-width: 768px) {
  .p-mv_textReleasedDate-text {
    font-size: clamp(35px, 2.92826vw, 50px);
    bottom: 4px;
  }
}

.p-mv_moveTextArea {
  background-color: #24004B;
  padding-top: 4vw;
  padding-bottom: 4vw;
}

@media print, screen and (min-width: 768px) {
  .p-mv_moveTextArea {
    height: 9vh;
    padding-top: 0;
    padding-bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-mv_moveTextArea {
    height: 80px!important;
}
}

@media print, screen and (min-width: 1200px) {
  .p-mv_moveTextArea {
    height: 9vh;
}
}

.p-mv_moveTextAreaInner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  overflow: hidden;
}

.p-mv_moveTextWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-mv_moveTextWrap:nth-child(odd) {
  -webkit-animation: mv-loop 40s -20s linear infinite;
  animation: mv-loop 40s -20s linear infinite;
}

.p-mv_moveTextWrap:nth-child(even) {
  -webkit-animation: mv-loop2 40s linear infinite;
  animation: mv-loop2 40s linear infinite;
}

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

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

@-webkit-keyframes mv-loop2 {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-200%);
            transform: translateX(-200%);
  }
}

@keyframes mv-loop2 {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-200%);
            transform: translateX(-200%);
  }
}

.p-mv_moveTextImg {
  width: 64vw;
  padding-right: 10px;
}


@media print, screen and (min-width: 768px) {
.p-mv_moveTextImg {
  padding-right: 0px;
  width: 45vw;
  margin-right: 15px;
}
}

@media print, screen and (min-width: 1024px) {
.p-mv_moveTextImg {
  width: 30vw;
}
}


.p-mv_moveSubTextImg {
  width: 80vw;
  padding-right: 10px;
  text-align: center;
  padding-bottom: 0.3vh
}

@media print, screen and (min-width: 768px) {
  .p-mv_moveSubTextImg {
    width: 54vw;
    padding-right: 20px;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-mv_moveSubTextImg {
    width: 35vw;
    padding-right: 20px;
    margin-bottom: 1vh;
  }
}


.p-mv_moveTextJp {
  letter-spacing: 0.03em;
  white-space: nowrap;
  font-size: 3.73333vw;
  padding-right: 10px;
  font-weight: 900;
}

@media print, screen and (min-width: 768px) {
  .p-mv_moveTextJp {
    font-size: 1.90337vw;
    font-size: clamp(16px, 1.90337vw, 30px);
  }
}

.p-about {
  padding-top: 16vw;
  padding-bottom: 40vw;
  padding-right: 6%;
  padding-left: 6%;
}

@media print, screen and (min-width: 768px) {
  .p-about {
    padding-right: 8.7%;
    padding-left: 8.7%;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (min-width: 1366px) {
  .p-about {
    padding-right: 0;
    padding-left: 0;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-about {
    padding-right: 0;
    padding-left: 0;
    max-width: 1020px;
    margin-right: auto;
    margin-left: auto;
  }
}

@media print, screen and (min-width: 768px) {
  .p-about {
    padding-top: 6vw;
    padding-bottom: 25vw;
  }
}

.p-about_ttl {
  width: 93%;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 5vw;
}

@media print, screen and (min-width: 768px) {
  .p-about_ttl {
    width: 44.6vw;
    max-width: 820px;
    margin-bottom: 3vw;
  }
}

.p-about_heading {
  font-size: 4.26667vw;
  text-align: center;
  margin-bottom: 6vw;
  line-height: 1.8;
}

@media print, screen and (min-width: 768px) {
  .p-about_heading {
    font-size: clamp(20px, 2.48902vw, 40px);
    margin-bottom: 4vw;
  }
}

.p-about_textWrap {
  margin-bottom: 15vw;
}

@media print, screen and (min-width: 768px) {
  .p-about_textWrap {
    margin-bottom: 8vw;
  }
}

.p-about_text {
  line-height: 2.0;
  text-align: center;
}

.p-about_text:not(:last-of-type) {
  margin-bottom: 3vw;
}

.p-about_logoWrap {
  position: relative;
  margin-bottom: 12vw;
}

@media print, screen and (min-width: 768px) {
  .p-about_logoWrap {
    margin-bottom: 6vw;
  }
}

.p-about_logoNew {
  width: 23%;
  position: absolute;
  left: 20%;
  top: 1px;
}

@media print, screen and (min-width: 768px) {
  .p-about_logoNew {
    width: 13vw;
    left: 18%;
    top: -9px;
    max-width: 210px;
  }
}

.p-about_logo {
  width: 84%;
  margin-right: auto;
  margin-left: auto;
}

@media print, screen and (min-width: 768px) {
  .p-about_logo {
    width: 44.6vw;
    max-width: 820px;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-about_logo {
    width: 35vw;
    max-width: 700px;
  }
}


.p-about_logoMeaningText {
  width: 50%;
  margin-right: auto;
  margin-left: auto;
}

@media print, screen and (min-width: 768px) {
  .p-about_logoMeaningText {
    width: 25vw;
    max-width: 500px;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-about_logoMeaningText {
    width: 20vw;
    max-width: 700px;
  }
}



.p-feature_moveImgArea {
  position: absolute;
  width: 100%;
  top: -25vw;
  left: 0;
  overflow: hidden;
}

@media print, screen and (min-width: 768px) {
.p-feature_moveImgArea {
  position: absolute;
  width: 100%;
  top: -18vw;
  left: 0;
  overflow: hidden;
}
}

@-webkit-keyframes moving-img-products {
  from {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  to {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}

@keyframes moving-img-products {
  from {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  to {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}

.p-feature_moveImgWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.p-feature_moveImgList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.p-feature_moveImgList {
  -webkit-animation: moving-img-products 40s infinite linear 0.5s both;
  animation: moving-img-products 40s infinite linear 0.5s both;
}

@media print, screen and (min-width: 768px) {
  .p-feature_moveImgList {
    -webkit-animation: moving-img-products 60s infinite linear 0.5s both;
    animation: moving-img-products 60s infinite linear 0.5s both;
  }
}

.p-feature_moveImg {
  width: 44vmin;
  padding-right: 20px;
}

@media print, screen and (min-width: 768px) {
  .p-feature_moveImg {
    width: 37vw;
    margin-right: 4vw;
  }
}

.p-feature_moveImg > img {
  width: 100%;
}

.p-feature {
  padding-bottom: 11vw;
  padding-right: 6%;
  padding-left: 6%;
  padding-top: 16vw;
}

@media print, screen and (min-width: 768px) {
  .p-feature {
    padding-right: 8.7%;
    padding-left: 8.7%;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0;
    padding-bottom: 6vw;
    padding-top: 8vw;
  }
}

@media print, screen and (min-width: 1366px) {
  .p-feature {
    padding-right: 0;
    padding-left: 0;
  }
}

.p-feature_ttlWrap {
  margin-bottom: 6vw;
}

@media print, screen and (min-width: 768px) {
  .p-feature_ttlWrap {
    margin-bottom: 5vw;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-feature_ttlWrap {
    margin:0 auto;
    width:65%;
    margin-bottom: 3vw;
  }
}

.p-feature_ttl {
  text-align: center;
  font-weight: 500;
  font-size: 6.4vw;
}

@media print, screen and (min-width: 768px) {
  .p-feature_ttl {
    font-size: clamp(40px, 4.39239vw, 70px);
  }
}

.p-feature_ttlSub {
  text-align: center;
  font-size: 3.73333vw;
  color: #B59242;
  display: block;
  text-align: center;
}

@media print, screen and (min-width: 768px) {
  .p-feature_ttlSub {
    font-size: clamp(18px, 1.61054vw, 30px);
    margin-bottom: -0.5vw;
  }
}

.p-feature_ttlSubText {
  display: inline-block;
}

.p-feature_ttlSubText::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 2px;
  background-color: #B59242;
  position: relative;
  bottom: 10px;
}

@media print, screen and (min-width: 768px) {
  .p-feature_ttlSubText::after {
    bottom: 1.5vw;
  }
}

.p-feature_imgWrap {
  margin-bottom: 10vw;
}

@media print, screen and (min-width: 768px) {
  .p-feature_imgWrap {
    margin-bottom: 8vw;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-feature_imgWrap {
    width:100%;
    max-width:1000px;
    margin:0 auto;
  }
}

.p-feature_detailHeading {
  font-size: 4.8vw;
  text-align: center;
  margin-bottom: 4vw;
  line-height: 1.6;
}

@media print, screen and (min-width: 768px) {
  .p-feature_detailHeading {
    font-size: clamp(20px, 2.63543vw, 48px);
    margin-bottom: 3vw;
  }
}

.p-feature_detailText {
  line-height: 2.0;
  text-align: left;
  font-weight: 900;
  color:#fff;
}

.smallText{
  font-size:10px;
  color:#fff;
}

.p-feature_detailText:not(:last-child) {
  margin-bottom: 4vw;
}

@media print, screen and (min-width: 768px) {
  .p-feature_detailText:not(:last-child) {
    margin-bottom: 3vw;
  }
}



@media print, screen and (min-width: 768px) {
  .p-feature_obsession {
    max-width: 1200px;
  }
}

@media print, screen and (min-width: 1366px) {
  .p-feature_obsession {
    padding-right: 0;
    padding-left: 0;
  }
}

@media print, screen and (min-width: 768px) {
  .p-feature_obsession {
    padding-bottom: 0vw;
    margin:0 auto;
  }
}

@media print, screen and (min-width: 768px) {
  .p-feature_obsessionInner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
  }
}

@media print, screen and (min-width: 768px) {
.p-feature_obsessionItemDouble .p-feature_obsessionItemWrap{
  width: 100%;
}
}

@media print, screen and (min-width: 1024px) {
  .p-feature_obsessionItemDouble .p-feature_obsessionItem {
    width: 100%;
  }
}

.p-feature_obsessionItem:not(:last-child) {
  margin-bottom: 8vw;
}

@media print, screen and (min-width: 1024px) {
  .p-feature_obsessionItem:not(:last-child) {
    margin-bottom: 0;
  }
}

.p-feature_obsessionItemHeaing {
  text-align: center;
  font-size: 4.26667vw;
  margin: 0 auto 10vw;
  width:55%;
}

@media print, screen and (min-width: 768px) {
  .p-feature_obsessionItemHeaing {
    font-size: clamp(20px, 2.04978vw, 32px);
    margin-bottom: 8vw;
    width:65%;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-feature_obsessionItemHeaing {
    margin-bottom: 4vw;
    width:55%;
  }
}


@media print, screen and (min-width: 1024px) {
  .p-feature_obsessionItemHeaing::after {
    bottom: -1vw;
  }
}



@media print, screen and (min-width: 1024px) {
  .p-feature_obsessionItemSingle {
    width: 28.6%;
    margin-right: 7.2%;
  }
}

.p-feature_obsessionItemImg {
  width: 80%;
  max-width:100%;
  border-radius: 6vw;
  margin:0 auto;
}

@media print, screen and (min-width: 768px) {
  .p-feature_obsessionItemImg {
    width: 100%;
    margin-right: 5%;
 
  }
}

@media print, screen and (min-width: 1024px) {
  .p-feature_obsessionItemImg {
    width: 100%;
    margin-right: 0;
    margin-bottom: 1.5vw;
  }
}

.p-feature_obsessionItemImg img {
  border-radius: 6vw;
}

@media print, screen and (min-width: 768px) {
  .p-feature_obsessionItemImg img {
    border-radius: 60px;
  }
}

.p-feature_obsessionItemWrap:not(:last-child) {
  margin-bottom: 10vw;
  width:100%;
}

@media print, screen and (min-width: 768px) {
  .p-feature_obsessionItemWrap:not(:last-child) {
    margin-bottom: 0;
  }
}

.p-feature_obsessionItemDetail {
  width: 100%;
}

@media print, screen and (min-width: 1024px) {
  .p-feature_obsessionItemDetail {
    width: 100%;
  }
}

.p-feature_obsessionItemDetailHeading {
  font-size: 6vw;
  font-weight: 900;
  margin-bottom: 5vw;
  color:#fff;
  text-align: center;
}

@media print, screen and (min-width: 768px) {
  .p-feature_obsessionItemDetailHeading {
    font-size: clamp(24px, 1.75695vw, 32px);
  }
}

@media print, screen and (min-width: 1024px) {
  .p-feature_obsessionItemDetailHeading {
    text-align: center;
    margin-bottom: 4vw;
    font-size: clamp(28px, 1.75695vw, 36px);
  }
}

.p-feature_obsessionItemDetailText {
  line-height: 1.8;
  color:#fff;
  font-weight:600;
  text-align:center;
}

@media print, screen and (min-width: 1024px) {
  .p-feature_obsessionItemDetailText {
    text-align: center;
    font-size: clamp(16px, 1.46413vw, 24px);
  }
}

@media print, screen and (min-width: 1024px) {
  .p-feature_obsessionItemDouble {
    width: 64.2%;
  }
}

@media print, screen and (min-width: 768px) {
p-feature_obsessionItemDoubleInner{
  width: 100%;
}
}

@media print, screen and (min-width: 1024px) {
  .p-feature_obsessionItemDoubleInner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.p-product {
  padding-right: 6%;
  padding-left: 6%;
  padding-bottom: 30vw;
}

@media print, screen and (min-width: 768px) {
  .p-product {
    padding-right: 8.7%;
    padding-left: 8.7%;
    max-width: 1400px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (min-width: 1500px) {
  .p-product {
    padding-right: 0;
    padding-left: 0;
  }
}

@media print, screen and (min-width: 768px) {
  .p-product {
    padding-bottom: 20vw;
  }
}


.p-product_headingWrap {
  margin-bottom: 10vw;
}

@media print, screen and (min-width: 768px) {
  .p-product_headingWrap {
    margin-bottom: 8vw;
  }
}

@media print, screen and (min-width: 1366px) {
  .p-product_headingWrap {
    margin-bottom: 7vw;
  }
}

.p-product_heading {
  color: #fff;
  text-align: center;
  font-weight: 500;
  font-size: 6.93333vw;
}

@media print, screen and (min-width: 768px) {
  .p-product_heading {
    font-size: clamp(30px, 6.44217vw, 92px);
  }
}

.p-product_headingSub {
  font-weight: 900;
  font-size: 3.2vw;
  margin-top: 2px;
  text-align: center;
  color: #fff;
}

@media print, screen and (min-width: 768px) {
  .p-product_headingSub {
    font-size: clamp(12px, 1.46413vw, 26px);
  }
}

.p-product_list {
  margin-bottom: 10vmin;
  background: rgba(255,255,255, 0.7);
  padding: 5%;
}

.p-product_listItem:not(:last-child) {
  margin-bottom: 17vw;
}

@media print, screen and (min-width: 768px) {
  .p-product_listItem:not(:last-child) {
    margin-bottom: 10vw;
  }
}

.p-product_listItemImg {
  margin-bottom: 4vw;
}

@media print, screen and (min-width: 768px) {
  .p-product_listItemImg {
    width: 68.6%;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 1vw;
  }
}

.p-product_listItemHeading {
  font-weight: 900;
  text-align: center;
  font-size: 4.26667vw;
  margin-right:auto;
  margin-left:auto;
  margin-bottom: 3vw;
}

@media print, screen and (min-width: 768px) {
  .p-product_listItemHeading {
    font-size: clamp(20px, 2.63543vw, 40px);
    width:90%;
    margin-bottom: 0vw;
  }
}


@media print, screen and (min-width: 1024px) {
  .p-product_listItemHeading {
    width: 65%;
  }
}

.p-product_listItemColor {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .p-product_listItemColor {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.p-product_listItemColorGlasses,
.p-product_listItemColorGlassesImg img {
  border-radius: 6vw;
}

@media print, screen and (min-width: 768px) {
  .p-product_listItemColorGlasses,
  .p-product_listItemColorGlassesImg img {
    border-radius: 60px;
  }
}

.p-product_listItemColorGlasses {
  background-color: #FFF;
  width: 46%;
  position: relative;
  cursor: pointer;
  box-shadow: 6px 6px 6px 0px rgba(0, 0, 0, 0.4);
}

@media print, screen and (min-width: 768px) {
  .p-product_listItemColorGlasses {
    width: 30%;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
}

.p-product_listItemColorGlasses.is-list-fadein, .p-product_listItemColorGlasses.is-list-fadein02 {
  opacity: 0;
  -webkit-transition: all 1s;
  transition: all 1s;
}

.p-product_listItemColorGlasses.is-list-fadein.is-active, .p-product_listItemColorGlasses.is-list-fadein02.is-active {
  opacity: 1;
}

@media print, screen and (min-width: 768px) {
  .p-product_listItemColorGlasses:hover {
    -webkit-transform: scale(1.08);
            transform: scale(1.08);
  }
}

@media screen and (max-width: 767px) {
  .p-product_listItemColorGlasses:not(:nth-child(2n)) {
    margin-right: 8%;
  }
  .p-product_listItemColorGlasses:not(:nth-of-type(-n+2)) {
    margin-top: 8%;
  }
}

.p-product_listItemIconNewColor {
  position: absolute;
  width: 72%;
  left: -6vmin;
  top: -3vmin;
}

@media print, screen and (min-width: 768px) {
  .p-product_listItemIconNewColor {
    max-width: 190px;
    width: 70%;
    left: -3vmin;
    top: -2vmin;
  }
}

.p-product_listItemIconRelease {
  position: absolute;
  right: 6%;
  top: -2vw;
  color: #fff;
  text-align: center;
}

@media print, screen and (min-width: 768px) {
  .p-product_listItemIconRelease {
    right: 6%;
    top: 0;
  }
}

.p-product_listItemIconReleaseText {
  display: block;
  position: relative;
}

.p-product_listItemIconReleaseText.date {
  font-size: 3.2vw;
}

@media print, screen and (min-width: 768px) {
  .p-product_listItemIconReleaseText.date {
    font-size: clamp(14px, 1.46413vw, 24px);
  }
}

.p-product_listItemIconReleaseText.release {
  font-size: 3.73333vw;
}

@media print, screen and (min-width: 768px) {
  .p-product_listItemIconReleaseText.release {
    font-size: clamp(16px, 1.53734vw, 25px);
  }
}

.p-product_listItemIconReleaseText::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #fff;
  border-radius: 100px;
  bottom: 0px;
  left: 0;
}

@media print, screen and (min-width: 768px) {
  .p-product_listItemIconReleaseText::after {
    height: 2px;
  }
}

.p-product_listItemBtn {
  position: absolute;
  width: 10px;
  height: 10px;
  right: 1.5vmin;
  bottom: 4.4vmin;
}

@media print, screen and (min-width: 768px) {
  .p-product_listItemBtn {
    width: 1vw;
    height: 1vw;
    right: 30px;
    bottom: 40px;
  }
}

.p-product_listItemBtn::before, .p-product_listItemBtn::after {
  content: '';
  display: block;
  position: absolute;
  width: 1px;
  height: 2.5vmin;
  background-color: #282429;
  left: 0;
  top: 0;
}

@media print, screen and (min-width: 768px) {
  .p-product_listItemBtn::before, .p-product_listItemBtn::after {
    width: 2px;
    height: 1vw;
  }
}

.p-product_listItemBtn::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}

.p-product_listItemColorGlassesHeading {
  text-align: center;
  width: 100%;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-size: 3vw;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  bottom: 4vmin;
  line-height: 1.2;
}

@media print, screen and (min-width: 768px) {
.p-product_listItemColorGlassesHeading {
  text-align: center;
  width: 100%;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-size: 3.46667vw;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  bottom: 4vmin;
  line-height: 1.0;
}
}


@media print, screen and (min-width: 768px) {
  .p-product_listItemColorGlassesHeading {
    font-size: clamp(12px, 1.46413vw, 23px);
    bottom: 35px;
    margin-left: -0.3em;
    line-height: 1.3;
  }
}

.p-product_listItemColorGlassesHeading.line-2 {
  bottom: 2vmin;
}

@media print, screen and (min-width: 768px) {
  .p-product_listItemColorGlassesHeading.line-2 {
    bottom: 22px;
  }
}

.p-product_modal {
  background-color: #fff;
  width: 80%;
  border-radius: 6vw;
  padding: 8vmin 8%;
  z-index: 100000000;
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-animation: modal-fade 1s ease;
  animation: modal-fade 1s ease;
}

@media print, screen and (min-width: 768px) {
  .p-product_modal {
    border-radius: 60px;
  }
}

@media print, screen and (min-width: 768px) {
  .p-product_modal {
    width: 80%;
    padding: 6vmin 10%;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-product_modal {
    width: 58.5%;
    min-width: 800px;
    max-width: 1100px;
    padding: 7vmin 7%;
  }
}

.p-product_modal_yellow {
  background-color: #fff;
  width: 80%;
  border-radius: 6vw;
  padding: 8vmin 8%;
  z-index: 100000000;
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-animation: modal-fade 1s ease;
  animation: modal-fade 1s ease;
  border:solid 3vw #F4EC81;
}

@media print, screen and (min-width: 768px) {
  .p-product_modal_yellow {
    border-radius: 60px;
    border:solid 1vw #F4EC81;
  }
}

.p-product_modal_black{
  background-color: #fff;
  width: 80%;
  border-radius: 6vw;
  padding: 8vmin 8%;
  z-index: 100000000;
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-animation: modal-fade 1s ease;
  animation: modal-fade 1s ease;
  border:solid 3vw #A8B0B6;
}

@media print, screen and (min-width: 768px) {
  .p-product_modal_black{
    border-radius: 60px;
    border:solid 1vw #A8B0B6;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-product_modal_black{
    width: 58.5%;
    min-width: 800px;
    max-width: 1100px;
    padding: 7vmin 7%;
  }
}

.p-product_modal_red{
  background-color: #fff;
  width: 80%;
  border-radius: 6vw;
  padding: 8vmin 8%;
  z-index: 100000000;
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-animation: modal-fade 1s ease;
  animation: modal-fade 1s ease;
  border:solid 3vw #D76A88;
}

@media print, screen and (min-width: 768px) {
  .p-product_modal_red{
    border-radius: 60px;
    border:solid 1vw #D76A88;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-product_modal_red{
    width: 58.5%;
    min-width: 800px;
    max-width: 1100px;
    padding: 7vmin 7%;
  }
}

.p-product_modal_navy{
  background-color: #fff;
  width: 80%;
  border-radius: 6vw;
  padding: 8vmin 8%;
  z-index: 100000000;
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-animation: modal-fade 1s ease;
  animation: modal-fade 1s ease;
  border:solid 3vw #24004B;
}

@media print, screen and (min-width: 768px) {
  .p-product_modal_navy{
    border-radius: 60px;
    border:solid 1vw #24004B;
  }
}
@media print, screen and (min-width: 1024px) {
  .p-product_modal_navy {
    width: 58.5%;
    min-width: 800px;
    max-width: 1100px;
    padding: 7vmin 7%;
  }
}


.p-product_modal_gray{
  background-color: #fff;
  width: 80%;
  border-radius: 6vw;
  padding: 8vmin 8%;
  z-index: 100000000;
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-animation: modal-fade 1s ease;
  animation: modal-fade 1s ease;
  border:solid 3vw #008DBD;
}

@media print, screen and (min-width: 768px) {
  .p-product_modal_gray{
    border-radius: 60px;
    border:solid 1vw #008DBD;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-product_modal_gray {
    width: 58.5%;
    min-width: 800px;
    max-width: 1100px;
    padding: 7vmin 7%;
  }
}


@media print, screen and (min-width: 768px) {
  .p-product_modal_yellow {
    width: 80%;
    padding: 6vmin 10%;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-product_modal_yellow {
    width: 50%;
    min-width: 650px;
    max-width: 1100px;

  }
}

@-webkit-keyframes modal-fade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@-webkit-keyframes modal-fade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes modal-fade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.p-product_modalBtnClose {
  position: absolute;
  cursor: pointer;
  top: -10vmin;
  right: -10vmin;
  width: 8vmin;
  height: 8vmin;
  z-index: 100000000;
}

@media print, screen and (min-width: 768px) {
  .p-product_modalBtnClose {
    width: 50px;
    height: 50px;
    top: -40px;
    right: -60px;
  }
}

.p-product_modalBtnClose::before, .p-product_modalBtnClose::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 3px;
  height: 100%;
  border-radius: 100px;
  background: #fff;
}

@media print, screen and (min-width: 768px) {
  .p-product_modalBtnClose::before, .p-product_modalBtnClose::after {
    width: 5px;
  }
}

.p-product_modalBtnClose::before {
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
}

.p-product_modalBtnClose::after {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}

.p-product_modalOverlay {
  position: fixed;
  left: 0;
  top: 0;
  background-color: rgba(0, 0, 0, 0.6);
  z-index: 99999999;
  width: 100vw;
  height: 100vh;
  display: none;
}

.p-product_modalHeading {
  text-align: center;
  margin-bottom: 6vmin;
  font-size: 4.8vw;
}

@media print, screen and (min-width: 768px) {
  .p-product_modalHeading {
    font-size: clamp(24px, 2.04978vw, 36px);
  }
}

.p-product_modalLabel{
  width:70%;
margin:0 auto;
margin-bottom: 6vmin;
}

@media print, screen and (min-width: 768px) {
.p-product_modalLabel{
  width:60%;
margin:0 auto;
margin-bottom: 6vmin;
}
}

@media print, screen and (min-width: 1024px) {
  .p-product_modalLabel{
    width:45%;
  margin:0 auto;
  margin-bottom: 6vmin;
  }
  }

.p-product_modalImg {
  margin-bottom: 6vmin;
  width: 90%;
  margin-right: auto;
  margin-left: auto;
}

@media print, screen and (min-width: 768px) {
  .p-product_modalImg {
    width: 90%;
  }
}

@media print, screen and (min-width: 1366px) {
  .p-product_modalImg {
    width: 80%;
  }
}

.madal_Img_Powerpoint{
  width:100%!important;
}

.p-product_modalDetail {
  width: 90%;
  margin-right: auto;
  margin-left: auto;
}

@media print, screen and (min-width: 768px) {
  .p-product_modalDetail {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
  }
}

.p-product_modalDetailItem {
  border-top: 1px solid #CEC6B6;
  width: 100%;
}

@media print, screen and (min-width: 768px) {
  .p-product_modalDetailItem {
    width: 47.2%;
    border-bottom: 1px solid #CEC6B6 !important;
  }
}

.p-product_modalDetailItem:last-child {
  border-bottom: 1px solid #CEC6B6;
}

@media print, screen and (min-width: 768px) {
  .p-product_modalDetailItem:last-child {
    border-bottom: none;
  }
}

.p-product_modalDetailItem:not(:nth-child(2n)) {
  margin-right: 5.6%;
}

.p-product_modalDetailItemInner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-right: 2%;
  padding-left: 2%;
  padding-top: 3.5vmin;
  padding-bottom: 3.5vmin;
}

@media print, screen and (min-width: 768px) {
  .p-product_modalDetailItemInner {
    padding-top: 18px;
    padding-bottom: 18px;
    padding-right: 3%;
    padding-left: 3%;
  }
}

.p-product_modalDetailItemHeading {
  font-size: 3.2vw;
  width: 23%;
  margin-right: 3%;
}

.p-product_modalDetailItemPoint {
  font-size: 3.2vw;
  width: 100%;
  margin-right: 3%;
}

@media print, screen and (min-width: 768px) {
.p-product_modalDetailItemPoint {
font-size:16px;
}
}

@media print, screen and (min-width: 768px) {
  .p-product_modalDetailItemHeading {
    width: 26%;
    margin-right: 2%;
    font-size: clamp(16px, 1.1713vw, 24px);
  }
}

.p-product_modalDetailItemText {
  font-size: 3.5vw;
  width: 74%;
  text-transform: uppercase;
  white-space: nowrap;
}

@media print, screen and (min-width: 768px) {
  .p-product_modalDetailItemText {
    width: 72%;
    font-size: clamp(16px, 1.61054vw, 20px);
  }
}

.p-product_modalDetailItemTextPrice {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  white-space: nowrap;
}

.p-product_modalDetailItemTextTax {
  font-size: 2.66667vw;
  margin-left: 5px;
}

@media print, screen and (min-width: 768px) {
  .p-product_modalDetailItemTextTax {
    font-size: clamp(10px, 0.87848vw, 14px);
  }
}

.p-story_link {
  margin-top: -30vw;
  padding-top: 30vw;
}

.p-story_bg {
  background-color: #fff;
  position: relative;
  margin-top: -12vw;
}

.p-story {
  padding-right: 6%;
  padding-left: 6%;
  padding-top: 6vw;
}

@media print, screen and (min-width: 768px) {
  .p-story {
    padding-right: 8.7%;
    padding-left: 8.7%;
    max-width: 1400px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (min-width: 1500px) {
  .p-story {
    padding-right: 0;
    padding-left: 0;
  }
}

@media print, screen and (min-width: 768px) {
  .p-story {
    padding-top: 5vw;
  }
}

.p-story_heading {
  font-weight: 500;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-size: 6.4vw;
  margin-right: auto;
  margin-left: auto;
  text-align: center;
  position: absolute;
  top: -15vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  letter-spacing: 0.15em;
  z-index: 100;
  color:#fff;
  font-weight:400;
}

@media print, screen and (min-width: 768px) {
  .p-story_heading {
    font-size: clamp(30px, 3.66032vw, 60px);
    top: -8vw;
  }
}

.p-story_mv {
  width: 100%;
  height: 69vw;
  position: relative;
}

@media print, screen and (min-width: 768px) {
  .p-story_mv {
    height: 56.2vw;
  }
}

.p-story_mvBg {
  background: url(../../images/tough-armour/story_ep01_mv01.jpg) no-repeat center center/cover;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
}

@media print, screen and (min-width: 768px) {
  .p-story_mvBg {
    background-position: center center;
    background-attachment: fixed;
    height: 100%;
  }
}

.p-story_mvBg::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 80%;
  bottom: 0;
  mix-blend-mode: multiply;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(40, 36, 41, 0)), to(#6f6c70));
  background: linear-gradient(180deg, rgba(40, 36, 41, 0) 0%, #6f6c70 100%);
  opacity: 0.7;
}

.p-story_mvHeadingWrap {
  position: absolute;
  -webkit-transform: translate(-50%, -75%);
          transform: translate(-50%, -75%);
  z-index: 100;
  top: 50%;
  left: 50%;
}

@media print, screen and (min-width: 768px) {
  .p-story_mvHeadingWrap {
    -webkit-transform: translate(-50%, -100%);
            transform: translate(-50%, -100%);
  }
}

.p-story_mvHeading {
  color: #fff;
  text-align: center;
  font-size: 9.6vw;
  width: 100%;
  white-space: nowrap;
}

@media print, screen and (min-width: 768px) {
  .p-story_mvHeading {
    font-size: clamp(60px, 6.58858vw, 100px);
  }
}

.p-story_mvHeadingSub {
  display: block;
  font-size: 3.2vw;
  font-weight: 900;
  color: #fff;
  text-align: center;
  white-space: nowrap;
}

@media print, screen and (min-width: 768px) {
  .p-story_mvHeadingSub {
    font-size: clamp(16px, 1.46413vw, 28px);
  }
}

.p-story_member {
  padding-bottom: 10vw;
  background-color: #fff;
}

@media print, screen and (min-width: 768px) {
  .p-story_member {
    padding-bottom: 8vw;
  }
}

.p-story_memberInner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.p-story_memberImg {
  width: 36%;
  margin-right: 6%;
}

@media print, screen and (min-width: 768px) {
  .p-story_memberImg {
    width: 17.5vw;
    margin-right: 2.9vw;
  }
}

.p-story_memberImg img {
  border-radius: 6vw;
}

@media print, screen and (min-width: 768px) {
  .p-story_memberImg img {
    border-radius: 60px;
  }
}

.p-story_memberDetail {
  margin-top: -2vw;
}

.p-story_memberDetailRep {
  font-size: 3.2vw;
  display: inline-block;
}

@media print, screen and (min-width: 768px) {
  .p-story_memberDetailRep {
    font-size: clamp(14px, 1.46413vw, 24px);
    margin-bottom: 1vw;
  }
}

.p-story_memberDetailRep::after {
  content: "";
  width: 100%;
  height: 1px;
  background-color: #282429;
  display: block;
  position: relative;
  margin-bottom: 10px;
  bottom: -3px;
}

@media print, screen and (min-width: 768px) {
  .p-story_memberDetailRep::after {
    height: 2px;
    bottom: -0.3vw;
  }
}

.p-story_memberDetailName {
  font-size: 5.33333vw;
  font-weight: 500;
}

@media print, screen and (min-width: 768px) {
  .p-story_memberDetailName {
    font-size: clamp(20px, 2.63543vw, 50px);
  }
}

.p-story_memberDetailArea {
  font-size: 2.66667vw;
}

@media print, screen and (min-width: 768px) {
  .p-story_memberDetailArea {
    font-size: clamp(10px, 1.1713vw, 20px);
  }
}

.p-story_ep {
  background-color: #fff;
}

.p-story_ep.ep02 {
  height: 0;
  overflow: hidden;
}

.p-story_ep:not(:last-of-type) {
  margin-bottom: 16vw;
}

@media print, screen and (min-width: 768px) {
  .p-story_ep:not(:last-of-type) {
    margin-bottom: 10vw;
  }
}

.p-story_epTtlArea {
  margin-bottom: 5vw;
  position: relative;
  z-index: 100;
}

@media print, screen and (min-width: 768px) {
  .p-story_epTtlArea {
    margin-bottom: 3vw;
  }
}

.p-story_epTtlSub {
  color: #B59242;
  display: block;
  text-align: center;
  margin-bottom: 1vw;
}

@media print, screen and (min-width: 768px) {
  .p-story_epTtlSub {
    margin-bottom: 1.5vw;
  }
}

.p-story_epTtlSubText {
  display: inline-block;
  font-size: 3.73333vw;
  letter-spacing: 0.06em;
}

@media print, screen and (min-width: 768px) {
  .p-story_epTtlSubText {
    font-size: clamp(18px, 1.75695vw, 30px);
  }
}

.p-story_epTtlSubText::after {
  content: "";
  width: 100%;
  height: 1px;
  background-color: #B59242;
  display: block;
  position: relative;
  margin-bottom: 10px;
  bottom: -1px;
}

@media print, screen and (min-width: 768px) {
  .p-story_epTtlSubText::after {
    height: 2px;
    bottom: -3px;
  }
}

.p-story_epTtl {
  font-size: 5vw;
  font-weight: 500;
  text-align: center;
  line-height: 1.3;
}

@media print, screen and (min-width: 768px) {
  .p-story_epTtl {
    font-size: clamp(30px, 5.12445vw, 40px);
    line-height: 1.4;
  }
}

.p-story_epMv {
  width: 100%;
  height: 60vmin;
  position: relative;
  margin-bottom: 12vw;
}

@media print, screen and (min-width: 768px) {
  .p-story_epMv {
    height: 36.5vw;
    margin-bottom: 7vw;
  }
}

.p-story_epMvBg {
  width: 100%;
  height: 100%;
  border-radius: 6vw;
}

@media print, screen and (min-width: 768px) {
  .p-story_epMvBg {
    border-radius: 60px;
  }
}

.p-story_epMvBg-mv01 {
  background: url(../../images/tough-armour/story_ep01_mv01.jpg) no-repeat right 25% center/cover;
}

.p-story_epMvBg-mv02 {
  background: url(../../images/tough-armour/story_ep02_mv01.jpg) no-repeat right 25% center/cover;
}

.p-story_epMvBgFilter::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 80%;
  background: -webkit-gradient(linear, left bottom, left top, from(black), to(rgba(0, 0, 0, 0)));
  background: linear-gradient(0deg, black 0%, rgba(0, 0, 0, 0) 100%);
  border-radius: 0 0 6vw 6vw;
  opacity: 0.65;
  z-index: 1;
}

@media print, screen and (min-width: 768px) {
  .p-story_epMvBgFilter::after {
    border-radius: 0 0 60px 60px;
  }
}

/*背景色が伸びて出現 共通*/
.js-bg-anime {
  -webkit-animation-name: bgextendAnimeBase;
  animation-name: bgextendAnimeBase;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  position: relative;
  overflow: hidden;
  opacity: 0;
  border-radius: 6vw;
}

@media print, screen and (min-width: 768px) {
  .js-bg-anime {
    border-radius: 60px;
  }
}

@-webkit-keyframes bgextendAnimeBase {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes bgextendAnimeBase {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/*--------- 左から --------*/
.js-bg-anime-left::before {
  -webkit-animation-name: bgLRextendAnime;
  animation-name: bgLRextendAnime;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  content: "";
  position: absolute;
  z-index: 10;
  width: 100%;
  height: 100%;
  background-color: #9ED0C1;
  /*伸びる背景色の設定*/
}

@-webkit-keyframes bgLRextendAnime {
  0% {
    -webkit-transform-origin: left;
            transform-origin: left;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  50% {
    -webkit-transform-origin: left;
            transform-origin: left;
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
  50.001% {
    -webkit-transform-origin: right;
            transform-origin: right;
  }
  100% {
    -webkit-transform-origin: right;
            transform-origin: right;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
}

@keyframes bgLRextendAnime {
  0% {
    -webkit-transform-origin: left;
            transform-origin: left;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  50% {
    -webkit-transform-origin: left;
            transform-origin: left;
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
  50.001% {
    -webkit-transform-origin: right;
            transform-origin: right;
  }
  100% {
    -webkit-transform-origin: right;
            transform-origin: right;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
}

.p-story_epFill {
  position: absolute;
  bottom: 0px;
  left: 0px;
  width: 100%;
}

.p-story_epFill::before {
  content: "";
  display: block;
  background: white;
  background: -webkit-gradient(linear, left bottom, left top, from(white), to(rgba(255, 255, 255, 0)));
  background: linear-gradient(0deg, white 0%, rgba(255, 255, 255, 0) 100%);
  width: 100%;
  height: 30vmin;
  position: absolute;
  bottom: 18vmin;
  left: 0;
}

@media print, screen and (min-width: 768px) {
  .p-story_epFill::before {
    height: 22vw;
    bottom: 10vw;
  }
}

.p-story_epFill::after {
  content: "";
  display: block;
  background-color: #fff;
  position: absolute;
  width: 100%;
  height: 30vmin;
  z-index: 100;
  top: -18vmin;
  left: 0;
}

@media print, screen and (min-width: 768px) {
  .p-story_epFill::after {
    height: 15vw;
    top: -10vw;
  }
}

.p-story_epBtnMore {
  display: block;
  background-color: #D76A88;
  z-index: 101;
  position: absolute;
  top: -14vmin;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  cursor: pointer;
  background-color: #fff;
  text-align: center;
  border-radius: 100px;
  overflow: hidden;
  border: 1px solid #B59242;
  -webkit-transition: all 0.35s;
  transition: all 0.35s;
  -webkit-transition-timing-function: cubic-bezier(0.31, -0.105, 0.43, 1.59);
          transition-timing-function: cubic-bezier(0.31, -0.105, 0.43, 1.59);
  padding: 16px 30px;
  width: 70%;
}

.p-story_epBtnMore::before {
  content: "";
  top: 90%;
  left: -150%;
  background-color: #B59242;
  width: 200%;
  height: 740%;
  position: absolute;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

@media print, screen and (min-width: 768px) {
  .p-story_epBtnMore {
    width: 50%;
    top: -4vw;
    max-width: 380px;
    padding: 26px 30px;
    border: 2px solid #B59242;
  }
  .p-story_epBtnMore:hover {
    color: #D76A88;
  }
  .p-story_epBtnMore:hover::before {
    top: -310%;
    left: -50%;
  }
}

.p-story_epBtnMore,
.p-story_epBtnMore::before {
  -webkit-transition: all 0.35s;
  transition: all 0.35s;
  -webkit-transition-timing-function: cubic-bezier(0.31, -0.105, 0.43, 1.59);
          transition-timing-function: cubic-bezier(0.31, -0.105, 0.43, 1.59);
}

.p-story_epBtnMoreText {
  color: #B59242;
  position: relative;
  z-index: 100;
  font-size: 3.73333vw;
}

@media print, screen and (min-width: 768px) {
  .p-story_epBtnMoreText {
    font-size: clamp(14px, 1.31772vw, 22px);
  }
}

@media print, screen and (min-width: 768px) {
  .p-story_epBtnMore:hover .p-story_epBtnMoreText {
    color: #fff;
  }
}

.p-story_epMvProf {
  position: absolute;
  right: 15px;
  bottom: 15px;
  z-index: 2;
}

@media print, screen and (min-width: 768px) {
  .p-story_epMvProf {
    width: 47%;
    right: 40px;
    bottom: 40px;
  }
}

@media print, screen and (min-width: 1500px) {
  .p-story_epMvProf {
    width: 42%;
  }
}

.p-story_epMvProfTeamsName {
  color: #fff;
  position: relative;
  text-align: center;
  font-size: 3.2vw;
  font-weight: 900;
}

@media print, screen and (min-width: 768px) {
  .p-story_epMvProfTeamsName {
    font-size: clamp(12px, 1.46413vw, 24px);
    margin-bottom: 20px;
  }
}

.p-story_epMvProfTeamsName::after {
  content: "";
  width: 100%;
  height: 1px;
  background-color: #fff;
  display: block;
  position: relative;
  margin-bottom: 13px;
  bottom: -5px;
}

@media print, screen and (min-width: 768px) {
  .p-story_epMvProfTeamsName::after {
    bottom: -0.5vw;
    margin-bottom: 1.5vw;
  }
}

@media print, screen and (min-width: 768px) {
  .p-story_epMvProfDetailList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

@media print, screen and (min-width: 768px) {
  .p-story_epMvProfDetailListItem {
    width: 49%;
  }
}

.p-story_epMvProfDetailListItem:not(:last-child) {
  margin-bottom: 1.5vw;
}

@media print, screen and (min-width: 768px) {
  .p-story_epMvProfDetailListItem:not(:last-child) {
    margin-bottom: 0;
    margin-right: 2%;
  }
}

.p-story_epMvProfDetailListItemName {
  color: #fff;
  text-align: left;
  font-size: 4.26667vw;
  margin-bottom: -2px;
}

@media print, screen and (min-width: 768px) {
  .p-story_epMvProfDetailListItemName {
    font-size: clamp(18px, 2.34261vw, 40px);
    margin-bottom: 0;
  }
}

.p-story_epMvProfDetailListItemRep {
  color: #fff;
  font-size: 2.66667vw;
  letter-spacing: 0.06em;
}

@media print, screen and (min-width: 768px) {
  .p-story_epMvProfDetailListItemRep {
    font-size: clamp(10px, 1.02489vw, 16px);
  }
}

.p-story_epInterviewInner {
  position: relative;
}

@media print, screen and (min-width: 1024px) {
  .p-story_epInterviewInner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.p-story_epInterviewImgWrap {
  width: 60%;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 6vw;
  position: relative;
}

@media print, screen and (min-width: 1024px) {
  .p-story_epInterviewImgWrap {
    width: 39.4%;
    margin-right: 8.2%;
    margin-left: 0;
    margin-bottom: 0;
  }
}

.p-story_epInterviewImgWrap img {
  border-radius: 6vw;
}

@media print, screen and (min-width: 768px) {
  .p-story_epInterviewImgWrap img {
    border-radius: 60px;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-story_epInterviewTextArea {
    width: 52.4%;
  }
}

.p-story_epInterviewFaq:not(:last-of-type) {
  margin-bottom: 7vw;
}

@media print, screen and (min-width: 1024px) {
  .p-story_epInterviewFaq:not(:last-of-type) {
    margin-bottom: 4.3vw;
  }
}

.p-story_epInterviewFaqQuestion {
  color: #B59242;
  position: relative;
  margin-bottom: 3vw;
}

@media print, screen and (min-width: 1024px) {
  .p-story_epInterviewFaqQuestion {
    margin-bottom: 1.5vw;
  }
}

.p-story_epInterviewFaqQuestion::before {
  content: "";
  display: block;
  width: 2em;
  height: 1px;
  border-radius: 10px;
  background-color: #B59242;
  position: absolute;
  top: 0.8em;
}

.p-story_epInterviewFaqQuestion p {
  text-indent: 2.5em;
}

@media print, screen and (min-width: 1024px) {
  .p-story_epInterviewFaqQuestion p {
    text-indent: 3em;
  }
}

.p-story_epInterviewFaqQuestion p,
.p-story_epInterviewFaqAnswer {
  line-height: 1.8;
}

@media print, screen and (min-width: 1024px) {
  .p-story_epInterviewFaqQuestion p,
  .p-story_epInterviewFaqAnswer {
    line-height: 1.9;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-story_epInterviewFaqQuestion p,
  .p-story_epInterviewFaqAnswer {
    font-size: clamp(16px, 1.46413vw, 26px);
  }
}

.p-story_epInterviewFaqAnswerName {
  font-weight: 900;
  display: inline-block;
  margin-right: 10px;
}

.p-story_epInterviewFaqAnswer + .p-story_epInterviewFaqAnswer {
  margin-top: 15px;
}

.p-story_epInterviewFaqImg {
  margin-top: 6vw;
  margin-bottom: 6vw;
}

@media print, screen and (min-width: 1024px) {
  .p-story_epInterviewFaqImg {
    margin-top: 3vw;
    margin-bottom: 3vw;
  }
}

.p-story_epInterviewInner:not(:last-of-type) {
  margin-bottom: 12vw;
}

@media print, screen and (min-width: 1024px) {
  .p-story_epInterviewInner:not(:last-of-type) {
    margin-bottom: 8vw;
  }
}

.p-cta {
  padding-right: 6%;
  padding-left: 6%;
}

@media print, screen and (min-width: 768px) {
  .p-cta {
    padding-right: 8.7%;
    padding-left: 8.7%;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (min-width: 1366px) {
  .p-cta {
    padding-right: 0;
    padding-left: 0;
  }
}


@media print, screen and (min-width: 1024px) {
.p-following {
  display:none;
}
}

.p-staff_link {
  margin-top: -20vw;
  padding-top: 20vw;
}

@media print, screen and (min-width: 768px) {
  .p-staff_link {
    margin-top: -10vw;
    padding-top: 10vw;
  }
}

.p-staff {
  padding-right: 6%;
  padding-left: 6%;
}

@media print, screen and (min-width: 768px) {
  .p-staff {
    padding-right: 8.7%;
    padding-left: 8.7%;
    max-width: 1400px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (min-width: 1500px) {
  .p-staff {
    padding-right: 0;
    padding-left: 0;
  }
}

@media print, screen and (min-width: 768px) {
  .p-staff_ttlWrap {
    margin-bottom: 4vw;
  }
}

.p-staff_listItem {
  border-top: 1px solid rgba(206, 198, 182, 0.6);
  padding-top: 8vmin;
  padding-bottom: 8vmin;
}

@media print, screen and (min-width: 1024px) {
  .p-staff_listItem {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media print, screen and (min-width: 1500px) {
  .p-staff_listItem {
    padding-right: 5%;
    padding-left: 5%;
  }
}

.p-staff_listItem:nth-child(2n) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.p-staff_listItem:last-child {
  border-bottom: 1px solid rgba(206, 198, 182, 0.6);
}

.p-staff_listItemImg {
  width: 44%;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 5vmin;
}

@media print, screen and (min-width: 1024px) {
  .p-staff_listItemImg {
    width: 30.9%;
    margin-right: 6.2%;
    margin-left: 0;
    margin-bottom: 0;
  }
}

.p-staff_listItemImg img {
  border-radius: 6vw;
}

@media print, screen and (min-width: 768px) {
  .p-staff_listItemImg img {
    border-radius: 60px;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-staff_listItem:nth-child(2n) .p-staff_listItemImg {
    margin-left: 6.2%;
    margin-right: 0;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-staff_listItemDetail {
    width: 62.9%;
  }
}

.p-staff_listItemDetailText {
  line-height: 2.0;
  margin-bottom: 3vmin;
}

@media print, screen and (min-width: 1024px) {
  .p-staff_listItemDetailText {
    font-size: clamp(16px, 1.31772vw, 24px);
    margin-bottom: 2vmin;
  }
}

.p-staff_listItemDetailName {
  color: #B59242;
}

@media print, screen and (min-width: 768px) {
  .p-staff_listItemDetailName {
    font-size: clamp(16px, 1.31772vw, 24px);
  }
}

.p-news {
  padding-right: 6%;
  padding-left: 6%;
}

@media print, screen and (min-width: 768px) {
  .p-news {
    padding-right: 8.7%;
    padding-left: 8.7%;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (min-width: 1366px) {
  .p-news {
    padding-right: 0;
    padding-left: 0;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-news {
    padding-right: 0;
    padding-left: 0;
    max-width: 1020px;
    margin-right: auto;
    margin-left: auto;
  }
}

.p-news_inner {
  position: relative;
  border-radius: 5vw;
  padding: 6vmin 6% 5vmin;
  background: #DFD7C5;
}

@media print, screen and (min-width: 768px) {
  .p-news_inner {
    padding: 6% 5.2% 5%;
    border-radius: 2vw;
  }
}

.p-news_heading {
  font-family: "Noto Sans JP", sans-serif;
  text-transform: uppercase;
  font-weight: 600;
  font-size: 4.8vw;
  color: #B59242;
  text-align: center;
  display: block;
  position: absolute;
  top: -3vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

@media print, screen and (min-width: 768px) {
  .p-news_heading {
    font-size: clamp(26px, 2.34261vw, 38px);
    width: 15%;
    top: -1.5vw;
  }
}

.p-news_headingText {
  display: inline-block;
}

.p-news_headingText::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 2px;
  background-color: #B59242;
  position: relative;
  bottom: 5.5vmin;
}

@media print, screen and (min-width: 768px) {
  .p-news_headingText::after {
    bottom: 2.5vw;
  }
}

@media print, screen and (min-width: 1366px) {
  .p-news_headingText::after {
    bottom: 45px;
  }
}

.p-news_articleFlex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.p-news_articleDate {
  font-size: 3.2vw;
  display: block;
  margin-bottom: 5px;
}

@media print, screen and (min-width: 768px) {
  .p-news_articleDate {
    font-size: clamp(14px, 1.1713vw, 18px);
    margin-bottom: 7px;
  }
}

@media print, screen and (min-width: 768px) {
  .p-news_articleDetail {
    font-size: clamp(16px, 1.46413vw, 24px);
  }
}

.p-news_articleDetail,
.p-news_articleDate {
  padding-left: 6px;
}

@media print, screen and (min-width: 768px) {
  .p-news_articleDetail,
  .p-news_articleDate {
    padding-left: 10px;
  }
}

.p-news_articleFlexInner {
  width: 66%;
}

@media print, screen and (min-width: 768px) {
  .p-news_articleFlexInner {
    width: 75.5%;
  }
}

@media print, screen and (min-width: 768px) {
  .p-news_articleDetailText {
    line-height: 1.6;
  }
}

@media print, screen and (min-width: 768px) {
  .p-news_articleDetailTextLinkWrap {
    text-align: right;
  }
}

.p-news_articleDetailTextLink {
  background-color: #B59242;
  color: #fff;
  border-radius: 100px;
  padding: 10px 35px 12px;
  display: inline-block;
  margin-top: 2.5vmin;
  text-align: center;
  overflow: hidden;
  border: 1px solid #B59242;
  -webkit-transition: all 0.35s;
  transition: all 0.35s;
  -webkit-transition-timing-function: cubic-bezier(0.31, -0.105, 0.43, 1.59);
          transition-timing-function: cubic-bezier(0.31, -0.105, 0.43, 1.59);
  position: relative;
}

.p-news_articleDetailTextLink::before {
  content: "";
  top: 90%;
  left: -150%;
  background-color: #fff;
  width: 200%;
  height: 740%;
  position: absolute;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

@media print, screen and (min-width: 768px) {
  .p-news_articleDetailTextLink {
    min-width: 230px;
    padding: 12px 30px 15px;
    border: 2px solid #B59242;
    margin-top: 2vmin;
  }
  .p-news_articleDetailTextLink:hover {
    color: #B59242;
  }
  .p-news_articleDetailTextLink:hover::before {
    top: -310%;
    left: -50%;
  }
}

.p-news_articleDetailTextLink,
.p-news_articleDetailTextLink::before {
  -webkit-transition: all 0.35s;
  transition: all 0.35s;
  -webkit-transition-timing-function: cubic-bezier(0.31, -0.105, 0.43, 1.59);
          transition-timing-function: cubic-bezier(0.31, -0.105, 0.43, 1.59);
}

.p-news_articleDetailTextLinkInner {
  position: relative;
  z-index: 100;
  font-size: 3.2vw;
}

@media print, screen and (min-width: 768px) {
  .p-news_articleDetailTextLinkInner {
    font-size: clamp(12px, 1.1713vw, 20px);
  }
}

.p-news_articleDetailImg {
  width: 30%;
}

@media print, screen and (min-width: 768px) {
  .p-news_articleDetailImg {
    width: 19.7%;
  }
}

.p-news_articleDetailImg img {
  border-radius: 10px;
}

@media print, screen and (min-width: 768px) {
  .p-news_articleDetailImg img {
    border-radius: 30px;
  }
}

/* Sticky Sidebar - library handles positioning via inline styles */
.sidebar {
  will-change: min-height;
}

.sidebar__inner {
  transform: translate(0, 0);
  transform: translate3d(0, 0, 0);
  will-change: position, transform;
}

@media print, screen and (min-width: 1024px) {
  /* Fix for flexbox layout - prevent sidebar from stretching */
  .p-story_epInterviewImgWrap.sidebar {
    align-self: flex-start;
  }
}

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