.s-wrapper__title{
  display: block;
}

.s-wrapper__subtitle{
  display: block;
}

:root {
  --side-padding: clamp(2rem, calc(1.6rem + 1vw), 2.5rem);
  --side-padding-sp: clamp(1.0256410256410255rem, calc((0rem) + 5.12821vw), 1.25rem);
  --content-max-width: clamp(72rem, calc(57.6rem + 36vw), 90rem);
}

:root {
  --color-black: #000;
  --color-white: #fff;
  --color-bg-gray: #f1f1f1;
  --color-gray: #CCCCCC;
  --color-gray-ex-text: #828282;
  --color-gray-ex-background: #F1F1F1;
  --color-gray-ex-background-light: #FAFAFA;

  --color-gold-ex-text: #976B47;
  --color-gray-ex-border: #E2E2E2;
  --color-green: #829687;
  --color-gray-ex-button: #636363;

  --color-key: #829687;
}

:root {
  --Font-family-DNP-ShueiMinPr6N: dnp-shuei-mincho-pr6n, sans-serif;
  --Font-family-DNP-ShueiGoGinStd: dnp-shuei-gothic-gin-std,sans-serif;
}

:root{
  --leading-trim: calc((1em - 1lh) / 2);
}

:root {
  --easing-cubic-out: cubic-bezier(0.23, 1, 0.32, 1);
  --easing-cubic-in: cubic-bezier(0.42, 0, 1, 1);
  --easing-cubic-in-out: cubic-bezier(0.42, 0, 0.58, 1);
  --easing-cubic-out-in: cubic-bezier(0.23, 1, 0.32, 1);
  --easing-quad-out: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  --easing-quad-in: cubic-bezier(0.16, 1, 0.3, 1);
  --easing-quad-in-out: cubic-bezier(0.42, 0, 0.58, 1);
  --easing-quad-out-in: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  --easing-quart-out: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  --easing-quart-in: cubic-bezier(0.16, 1, 0.3, 1);
  --easing-quart-in-out: cubic-bezier(0.42, 0, 0.58, 1);
  --easing-quart-out-in: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  --easing-quint-out: cubic-bezier(0.23, 1, 0.32, 1);
  --easing-quint-in: cubic-bezier(0.64, 0, 0.78, 0);
  --easing-quint-in-out: cubic-bezier(0.86, 0, 0.07, 1);
  --easing-quint-out-in: cubic-bezier(0.77, 0, 0.17, 1);
  --easing-expo-out: cubic-bezier(0.19, 1, 0.22, 1);
  --easing-expo-in: cubic-bezier(0.95, 0.05, 0.79, 0.03);
  --easing-expo-in-out: cubic-bezier(1, 0, 0, 1);
  --easing-expo-out-in: cubic-bezier(0, 0, 0, 1);
  --easing-circ-out: cubic-bezier(0.075, 0.82, 0.165, 1);
  --easing-circ-in: cubic-bezier(0.6, 0.04, 0.98, 0.335);
  --easing-circ-in-out: cubic-bezier(0.785, 0.135, 0.15, 0.86);
  --easing-circ-out-in: cubic-bezier(0.075, 0.82, 0.165, 1);
}

:root {
  --z-index-global-logo: 80;
  --z-index-global-nav: 90;
  --z-index-global-nav-toggle: 100;
  --z-index-curtain: 200;
}

.ms-c-main{
  background-color: #f1f1f1;
}

@media (width > 840px) {

.ms-c-main{
    padding-block-start: 175px;
    padding-block-end: 90px;
}
  }

@media (width <= 840px) {

.ms-c-main{
    padding-block-start: 82px;
    padding-block-end: 25px;
}
  }

.ms-c-main__block{
  background-color: #fff;
}

@media (width > 1024px) {

.ms-c-main__block{
    margin-inline-start: 80px;
    padding-block-start: 115px;
    padding-block-end: 90px;
    padding-inline-start: calc(150 / 1440 * 100%);
}
  }

@media (width <= 1024px) {

.ms-c-main__block{
    margin-inline-start: calc(50 / 750 * 100%);;
    padding-block-start: 115px;
    padding-block-end: 80px;
    padding-inline-start: calc(50 / 750 * 100%);
}
  }

@media (width <= 840px) {

.ms-c-main__block{
    padding-block-start: 60px;
}
  }

.ms-c-main__block-inner{
  display: flex;
}

@media (width <= 1024px) {

.ms-c-main__block-inner{
    flex-direction: column;
    gap: 40px;
}
    .ms-c-main__block-inner.gap-large{
      gap: 60px;
    }
  }

.ms-c-main__block-inner--column{
  flex-direction: column;
}

@media (width > 1024px) {

.ms-c-main__block-inner--column{
    gap: 40px;
}
  }

@media (width <= 1024px) {

.ms-c-main__block-inner--column{
    gap: 32px;
}
  }

.ms-c-main__block-inner--column-small{
  flex-direction: column;
  gap: 20px;
}

.ms-c-main .s-wrapper__title.no-underline::after{
  display: none;
  
}

@media (width <= 1024px) {

.ms-c-main .s-wrapper__title.no-underline{
    margin-block-end: 0;
};
  }

.ms-c-main .s-title__area{
  padding-block-start: 0;
  margin-block-end: 0;
}

@media (width <= 1024px) {

.ms-c-main .s-title__area{
    flex: 1;
}
  }

.ms-c-main .s-wrapper__subtitle{
  margin-block-end: 0;
}

.ms-c-anchors{
  width: 100%;
  max-width: 1000px;
}

.ms-c-anchors__list{
  display: grid;
}

@media (width > 840px) {

.ms-c-anchors__list{
    grid-template-columns: repeat(2, 1fr);
    gap: 8px 20px;
}
  }

@media (width <= 840px) {

.ms-c-anchors__list{
    grid-template-columns: repeat(1, 1fr);
    gap: 16px;
}
  }

.ms-c-anchors__item{
  width: 100%;
  height: 100%;
  font-size: 13px;
  line-height: 2;
}

@media (width > 840px) {

.ms-c-anchors--single .ms-c-anchors__list{
    grid-template-columns: repeat(4, 1fr);
}
  }

.ms-c-anchor-link{
  display: flex;
  align-items: flex-start;
  gap: 8px;
  transition: opacity 0.4s;
  font-family: dnp-shuei-gothic-gin-std,sans-serif;
}

.ms-c-anchor-link:focus,
.ms-c-anchor-link:focus-visible {
  outline: 1px solid #636363;
  outline-offset: 3px;
}

.ms-c-anchor-link:focus:not(:focus-visible) {
  outline: none;
}

.ms-c-anchor-link__icon{
  height: calc(1em + 0.5lh);
  flex-shrink: 0;
}

@media (width > 840px) {

.ms-c-anchor-link__icon{
    width: 18px;
}
  }

@media (width <= 840px) {

.ms-c-anchor-link__icon{
    width: 16px;
}
  }

.ms-c-anchor-link__icon svg{
  width: 100%;
  height: 100%;
  object-fit: contain;
  fill: #CCCCCC;
}

@media (width > 840px) {

.ms-c-section.has-margin-block-start{
    margin-block-start: 80px;
}
  }

@media (width <= 840px) {

.ms-c-section.has-margin-block-start{
    margin-block-start: 60px;
}
  }

.ms-c-section.has-small-margin-block-start{
  margin-block-start: 40px;
}

@media (width > 840px) {

.ms-c-section.has-auto-margin-block-start:not(:first-child){
    margin-block-start: 80px;
}
  }

@media (width <= 840px) {

.ms-c-section.has-auto-margin-block-start:not(:first-child){
    margin-block-start: 60px;
}
  }

.ms-c-section__title{
  background: #F1F1F1;
  color: #000;
  font-feature-settings: 'pwid' on;
  font-family: dnp-shuei-mincho-pr6n, sans-serif;
  font-style: normal;
  font-weight: 500;
  line-height: 175%;
  letter-spacing: 0.15em;
}

@media (width > 840px) {

.ms-c-section__title{
    padding: 4px 16px;
    font-size: 18px;
}
  }

@media (width <= 840px) {

.ms-c-section__title{
    padding: 4px 15px;
    font-size: 16px;
}
  }

.ms-c-section__stitle{
  color: #000;
  font-feature-settings: 'pwid' on;
  font-family: dnp-shuei-mincho-pr6n, sans-serif;
  font-size: 18px;
  font-style: normal;
  font-weight: 500;
  line-height: 175%;
  letter-spacing: 2.7px;
}

@media (width > 840px) {

.ms-c-section__stitle{
    font-size: 18px;
}
  }

@media (width <= 840px) {

.ms-c-section__stitle{
    font-size: 16px;
}
  }

.ms-c-section__lead{
  color: #000;
  font-feature-settings: 'palt' on;
  font-family: dnp-shuei-gothic-gin-std,sans-serif;
  font-size: 13px;
  font-style: normal;
  font-weight: 500;
  line-height: 200%;
  letter-spacing: 0.15em;
}

.ms-c-section__lead.is-min{
    font-family: dnp-shuei-mincho-pr6n, sans-serif;
  }

@media (width > 840px) {

.ms-c-section__lead.is-min{
      font-size: 18px;
  }
    }

@media (width <= 840px) {

.ms-c-section__lead.is-min{
      font-size: 16px;
  }
    }

.ms-c-section__lead.is-min-s{
    font-family: dnp-shuei-mincho-pr6n, sans-serif;
  }

@media (width > 840px) {

.ms-c-section__lead.is-min-s{
      font-size: 16px;
  }
    }

@media (width <= 840px) {

.ms-c-section__lead.is-min-s{
      font-size: 14px;
  }
    }

@media (width > 840px) {

.ms-c-section__lead:not(:first-child){
    margin-block-start: 16px;
}
    .ms-c-section__lead.is-mbs-large:not(:first-child){
      margin-block-start: 24px;
    }
  }

@media (width <= 840px) {

.ms-c-section__lead:not(:first-child){
    margin-block-start: 12px;
}
    .ms-c-section__lead.is-mbs-large:not(:first-child){
      margin-block-start: 20px;
    }
  }

@media (width > 840px) {

.ms-c-section__content:not(:first-child){
    margin-block-start: 20px;
}
    .ms-c-section__content.has-large-margin-block-start:not(:first-child){
      margin-block-start: 24px;
    }
  }

@media (width <= 840px) {

.ms-c-section__content:not(:first-child){
    margin-block-start: 12px;
}
    .ms-c-section__content.has-large-margin-block-start:not(:first-child){
      margin-block-start: 20px;
    }
  }

@media (width > 840px) {

.ms-c-section__content-l:not(:first-child){
    margin-block-start: 20px;
}
  }

@media (width <= 840px) {

.ms-c-section__content-l:not(:first-child){
    margin-block-start: 16px;
}
  }

.ms-c-section__content.has-large-margin-block-start{
  margin-block-start: 32px;
}

.ms-c-section__dl-btn-wrappers{
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.ms-c-section__dl-btn-wrapper{
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.ms-c-section__dl-btn-title{
  color: #000;
  font-feature-settings: 'palt' on;
  font-family: dnp-shuei-mincho-pr6n, sans-serif;
  font-weight: 500;
  line-height: 175%;
}

@media (width > 840px) {

.ms-c-section__dl-btn-title{
    font-size: 16px;
}
  }

@media (width <= 840px) {

.ms-c-section__dl-btn-title{
    font-size: 14px;
}
  }

.ms-c-accordion{
  display: flex;
  flex-direction: column;
  border-bottom: 1px solid #E2E2E2;
}

.ms-c-accordion__item{
  border-top: 1px solid #E2E2E2;
}

.ms-c-accordion__trigger{
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  cursor: pointer;
  text-align: left;
}

@media (width > 840px) {

.ms-c-accordion__trigger{
    margin-block: 20px;
    gap: 20px;
}
  }

@media (width <= 840px) {

.ms-c-accordion__trigger{
    margin-block: 16px;
    gap: 15px;
}
  }

.ms-c-accordion__trigger:focus,
.ms-c-accordion__trigger:focus-visible {
  outline: 1px solid #829687;
  outline-offset: 1px;
}

.ms-c-accordion__trigger:focus:not(:focus-visible) {
  outline: none;
}

.ms-c-accordion__trigger-title{
  color: #976B47;
  font-feature-settings: 'palt' on;
  font-family: dnp-shuei-gothic-gin-std,sans-serif;
  font-size: 13px;
  font-style: normal;
  font-weight: 500;
  line-height: 200%;
  letter-spacing: 0.15em;
}

.ms-c-accordion__trigger-icon{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 12px;
  height: 12px;
  color: #976B47;
}

.ms-c-accordion__trigger-icon svg{
  fill: currentColor;
}

.ms-c-accordion__content{
  height: 0;
  overflow: hidden;
  color: #000;
  font-feature-settings: 'palt' on;
  font-family: dnp-shuei-gothic-gin-std,sans-serif;
  font-size: 13px;
  font-style: normal;
  font-weight: 500;
  line-height: 200%;
  letter-spacing: 0.15em;
  transition: height 0.3s ease-in-out;
}

.ms-c-accordion__content a{
  text-decoration: underline;
}

@media (width > 840px) {

.ms-c-accordion__content-inner{
    padding-block-end: 20px;
}
  }

@media (width <= 840px) {

.ms-c-accordion__content-inner{
    padding-block-end: 17px;
}
  }

@media (width > 840px) {

.ms-c-accordion__content-item + .ms-c-accordion__content-item{
    margin-block-start: 20px;
}
  }

@media (width <= 840px) {

.ms-c-accordion__content-item + .ms-c-accordion__content-item{
    margin-block-start: 16px;
}
  }

.ms-c-accordion__content-item .ms-c-text + .ms-c-notes{
  margin-block-start: 4px;
}

.ms-c-accordion--movie .ms-c-accordion__trigger-title{
  color: #000;
  font-family: dnp-shuei-mincho-pr6n, sans-serif;
  line-height: 150%;
}

@media (width > 840px) {

.ms-c-accordion--movie .ms-c-accordion__trigger-title{
    font-size: 16px;
}
  }

@media (width <= 840px) {

.ms-c-accordion--movie .ms-c-accordion__trigger-title{
    font-size: 14px;
}
  }

@media (width > 840px) {

.ms-c-accordion--movie .ms-c-accordion__content-inner{
    padding-block-start: 20px;
}
  }

@media (width <= 840px) {

.ms-c-accordion--movie .ms-c-accordion__content-inner{
    padding-block-start: 16px;
}
  }

.ms-c-accordion--movie .ms-c-accordion__trigger-icon svg{
  fill: #829687;
}

.ms-c-text{
  color: #000;
  font-feature-settings: 'palt' on;
  font-family: dnp-shuei-gothic-gin-std,sans-serif;
  font-size: 13px;
  font-style: normal;
  font-weight: 500;
  line-height: 200%;
  letter-spacing: 0.15em;
}

.ms-c-text small{
  color: #828282;
  font-size: 11px;
}

.ms-c-text__h{
  color: #976B47;
  font-size: 13px;
  font-style: normal;
  font-weight: 500;
  line-height: 200%;
  letter-spacing: 0.15em;
}

.ms-c-text a:focus-visible{
  outline: 2px solid #000;
  outline-offset: 2px;
}

.ms-c-notes{
  display: flex;
  flex-direction: column;
  color: #828282;
  font-feature-settings: 'palt' on;
  font-family: dnp-shuei-gothic-gin-std,sans-serif;
  font-size: 11px;
  font-style: normal;
  font-weight: 500;
  line-height: 200%;
  letter-spacing: 0.15em;
}

.ms-c-notes--large{
  font-size: 13px;
}

.ms-c-notes__item{
  display: flex;
  align-items: baseline;
  gap: 5px;
}

.ms-c-dl-section__list {
  display: flex;
  flex-direction: column;
}

@media (width > 840px) {

.ms-c-dl-section__list {
    gap: 48px;
}
  }

@media (width <= 840px) {

.ms-c-dl-section__list {
    gap: 40px;
}
  }

.ms-c-dl-section__item {
  display: flex;
  flex-direction: column;
}

@media (width > 840px) {

.ms-c-dl-section__item {
    gap: 16px;
}
  }

@media (width <= 840px) {

.ms-c-dl-section__item {
    gap: 12px;
}
  }

.ms-c-dl-section__item-title {
  color: #000;
  font-feature-settings: 'pwid' on;
  font-family: dnp-shuei-mincho-pr6n, sans-serif;
  font-style: normal;
  font-weight: 500;
  line-height: 175%;
  letter-spacing: 0.15em;
}

@media (width > 840px) {

.ms-c-dl-section__item-title {
    font-size: 16px;
}
    .ms-c-dl-section__item-title.is-large {
      font-size: 18px;
    }
  }

@media (width <= 840px) {

.ms-c-dl-section__item-title {
    font-size: 14px;
}
    .ms-c-dl-section__item-title.is-large {
      font-size: 16px;
    }
  }

.ms-c-link-list__list {
  display: flex;
  flex-direction: column;
  list-style: none;
}

.ms-c-link-list__item {
  border-block-end: 1px solid #E2E2E2;
}

.ms-c-link-list__item:first-child {
  border-block-start: 1px solid #E2E2E2;
}

.ms-c-link-list__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
  color: #000;
  font-feature-settings: 'pwid' on;
  font-family: dnp-shuei-mincho-pr6n, sans-serif;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
  letter-spacing: 0.15em;
}

@media (width > 840px) {

.ms-c-link-list__link {
    padding-block: 20px;
    font-size: 16px;
}
  }

@media (width <= 840px) {

.ms-c-link-list__link {
    padding-block: 16px;
    font-size: 14px;
}
  }

.ms-c-link-list__link:focus,
.ms-c-link-list__link:focus-visible {
  outline: 1px solid #829687;
  outline-offset: 3px;
}

.ms-c-link-list__link:focus:not(:focus-visible) {
  outline: none;
}

.ms-c-link-list__link-icon {
  flex-shrink: 0;
  display: block;
  color: #829687;
}

@media (width > 840px) {

.ms-c-link-list__link-icon {
    width: 12px;
    height: 12px;
}
  }

@media (width <= 840px) {

.ms-c-link-list__link-icon {
    width: 12px;
    height: 12px;
}
  }

.ms-c-link-list__link-icon svg {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  fill: currentColor;
}

.ms-c-search-form__inner {
  display: flex;
  justify-content: space-between;
  gap: 5px;
}

.ms-c-search-form__inner input {
  width: 100%;
  border: 1px solid #ccc;
  border-radius: 0;
  box-sizing: border-box;
  color: var(--gray-ex-text);
  font-feature-settings: 'palt' on;
  font-family: dnp-shuei-gothic-gin-std,sans-serif;
  font-size: 13px;
  font-style: normal;
  font-weight: 500;
  line-height: 200%;
  letter-spacing: 0.15em;
}

@media (width > 840px) {

.ms-c-search-form__inner input {
    padding: 7px 15px;
}
  }

@media (width <= 840px) {

.ms-c-search-form__inner input {
    padding: 7px 15px;
}
  }

.ms-c-search-form__inner input:focus {
  outline: 1px solid #829687;
  /* outline-offset: 2px; */
  border-color: #829687;
}

.ms-c-search-form__inner button {
  display: block;
  flex-shrink: 0;
  
  border: none;
  border-radius: 0;
  background-color: #829687;
  color: #fff;
  font-feature-settings: 'palt' on;
  font-family: dnp-shuei-gothic-gin-std,sans-serif;
  font-size: 13px;
  font-style: normal;
  font-weight: 500;
  line-height: 200%;
  letter-spacing: 0.15em;
}

@media (width > 840px) {

.ms-c-search-form__inner button {
    padding: 7px 46px;
}
  }

@media (width <= 840px) {

.ms-c-search-form__inner button {
    padding: 7px 15px;
}
  }

.ms-c-search-form__inner button:focus-visible{
  outline: 2px solid #829687;
  outline-offset: 2px;
}

.ms-c-button {
  display: block;
  padding: 12px 30px;
  border: 1px solid #829687;
  border-radius: 0;
  font-feature-settings: 'palt' on;
  font-family: dnp-shuei-gothic-gin-std,sans-serif;
  font-size: 13px;
  font-style: normal;
  font-weight: 500;
  line-height: 200%;
  letter-spacing: 0.15em;
  text-align: center;
  transition: opacity 0.4s;
  box-sizing: border-box;
}

.ms-c-button:focus,
.ms-c-button:focus-visible {
  outline: 1px solid #829687;
  outline-offset: 3px;
}

.ms-c-button:focus:not(:focus-visible) {
  outline: none;
}

.ms-c-button--middle {
  width: 100%;
}

@media (width > 840px) {

.ms-c-button--middle {
    max-width: 280px;
}
  }

.ms-c-button--large {
  width: 100%;
}

@media (width > 840px) {

.ms-c-button--large {
    max-width: 340px;
}
  }

.ms-c-pager{
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.ms-c-pager__link{
  display: inline-block;
  border: 1px solid #829687;
  color: #000;
  font-family: dnp-shuei-gothic-gin-std,sans-serif;
  font-style: normal;
  font-weight: 500;
  line-height: 200%;
  letter-spacing: 0.15em;
}

@media (width > 840px) {

.ms-c-pager__link{
    padding: 7px 15px;
    font-size: 13px;
}
  }

@media (width <= 840px) {

.ms-c-pager__link{
    padding: 4px 10px;
    font-size: 11px;
}
  }

.ms-c-pager__link[aria-disabled="true"] {
  visibility: hidden;
  pointer-events: none;
}

.ms-c-pager__current{
  display: inline-block;
  color: #000;
  font-family: dnp-shuei-gothic-gin-std,sans-serif;
  font-style: normal;
  font-weight: 500;
  line-height: 200%;
  letter-spacing: 0.15em;
}

@media (width > 840px) {

.ms-c-pager__current{
    font-size: 13px;
}
  }

@media (width <= 840px) {

.ms-c-pager__current{
    font-size: 11px;
}
  }

.ms-c-categories{
  border: 1px solid #E2E2E2;
  background-color: #FAFAFA;
}

@media (width > 840px) {

.ms-c-categories{
    padding: 48px;
}
  }

@media (width <= 840px) {

.ms-c-categories{
    padding: 24px 25px;
}
  }

.ms-c-categories__inner{
  width: 100%;
}

.ms-c-categories__title{
  color: #000;
  font-family: dnp-shuei-mincho-pr6n, sans-serif;
  font-style: normal;
  font-weight: 500;
  line-height: 175%;
  letter-spacing: 0.15em;
}

@media (width > 840px) {

.ms-c-categories__title{
    font-size: 18px;
}
  }

@media (width <= 840px) {

.ms-c-categories__title{
    font-size: 16px;
}
  }

.ms-c-categories__list{
  display: grid;
}

@media (width > 840px) {

.ms-c-categories__list{
    grid-template-columns: repeat(2, 1fr);
    gap: 0 24px;
    margin-block-start: 20px;
}
  }

@media (width <= 840px) {

.ms-c-categories__list{
    grid-template-columns: repeat(1, 1fr);
    margin-block-start: 16px;
}
  }

.ms-c-categories__item{
  border-bottom: 1px solid #E2E2E2;
}

@media (width <= 840px) {

.ms-c-categories__item:first-child{
    border-top: 1px solid #E2E2E2;
}
  }

@media (width > 840px) {

.ms-c-categories__item:nth-child(-n+2){
    border-top: 1px solid #E2E2E2;
}
  }

.ms-c-categories__link{
  display: flex;
  align-items: center;
  justify-content: space-between;
  
  color: #000;
  font-family: dnp-shuei-mincho-pr6n, sans-serif;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
  letter-spacing: 0.15em;
}

@media (width > 840px) {

.ms-c-categories__link{
    padding: 20px 0;
    font-size: 16px;
}
  }

@media (width <= 840px) {

.ms-c-categories__link{
    padding: 16px 0;
    font-size: 14px;
}
  }

.ms-c-categories__link-icon{
  display: block;
  color: #829687;
  flex-shrink: 0;
}

@media (width > 840px) {

.ms-c-categories__link-icon{
    width: 12px;
    height: 12px;
}
  }

@media (width <= 840px) {

.ms-c-categories__link-icon{
    width: 12px;
    height: 12px;
}
  }

.ms-c-categories__link-icon svg{
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  fill: currentColor;
}

.ms-c-single{
  width: 100%;
  padding-right: calc(150 / 1440 * 100%);
  box-sizing: border-box;
}

.ms-c-single__hgroup {
  display: flex;
  flex-direction: column-reverse;
  gap: 8px;
}

.ms-c-single__title {
  color: #000;
  font-feature-settings: 'pwid' on;
  font-family: dnp-shuei-mincho-pr6n, sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 500;
  letter-spacing: 0.15em;
}

@media (width > 840px) {

.ms-c-single__title {
    line-height: 150%;
}
  }

@media (width <= 840px) {

.ms-c-single__title {
    line-height: 175%;
}
  }

.ms-c-single__category {
  color: #000;
  font-feature-settings: 'pwid' on;
  font-family: dnp-shuei-mincho-pr6n, sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
  letter-spacing: 0.15em;
}

@media (width > 840px) {

.ms-c-single__content:not(:first-child) {
    margin-top: 40px;
}
  }

@media (width <= 840px) {

.ms-c-single__content:not(:first-child) {
    margin-top: 32px;
}
  }

@media (width > 840px) {

.ms-c-single__content-s:not(:first-child) {
    margin-top: 20px;
}
  }

@media (width <= 840px) {

.ms-c-single__content-s:not(:first-child) {
    margin-top: 16px;
}
  }

.ms-c-single__table table {
  width: 100%;
  border-collapse: collapse;
}

.ms-c-single__table table th,
.ms-c-single__table table td {
  border-bottom: 1px solid #E2E2E2;
  padding-block: 20px;
  color: #000;
  font-feature-settings: 'palt' on;
  font-family: dnp-shuei-gothic-gin-std,sans-serif;
  font-size: 13px;
  font-style: normal;
  font-weight: 500;
  line-height: 200%;
  letter-spacing: 0.15em;
  box-sizing: border-box;
}

.ms-c-single__table table tr:first-child th,
.ms-c-single__table table tr:first-child td {
  border-top: 1px solid #E2E2E2;
}

.ms-c-single__table table th{
  text-align: left;
}

.ms-c-single__table table th{
  padding-inline-end: 1em;
  white-space: nowrap;
}

@media (width > 840px) {

.ms-c-single__table table th{
    width: 180px;
}
  }

@media (width <= 840px) {

.ms-c-single__table table th{
    width: 75px;
}
  }

.ms-c-single__sizes {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.ms-c-single__size {
  text-decoration: underline;
}

.ms-c-single__size-secs {
  display: flex;
  flex-direction: column;
}

@media (width > 840px) {

.ms-c-single__size-secs {
    gap: 60px;
    margin-block-start: 60px;
}
  }

@media (width <= 840px) {

.ms-c-single__size-secs {
    gap: 40px;
    margin-block-start: 40px;
}
  }

.ms-c-single__size-sec-title {
  color: #000;
  font-feature-settings: 'pwid' on;
  font-family: dnp-shuei-mincho-pr6n, sans-serif;
  font-style: normal;
  font-weight: 500;
  line-height: 175%;
  letter-spacing: 0.15em;
}

@media (width > 840px) {

.ms-c-single__size-sec-title {
    font-size: 18px;
}
  }

@media (width <= 840px) {

.ms-c-single__size-sec-title {
    font-size: 16px;
}
  }

@media (width > 840px) {

.ms-c-single__size-sec-content:not(:first-child) {
    margin-top: 20px;
}
  }

@media (width <= 840px) {

.ms-c-single__size-sec-content:not(:first-child) {
    margin-top: 12px;
}
  }

.ms-c-single__size-sec-list {
  display: flex;
}

@media (width > 840px) {

.ms-c-single__size-sec-list {
    gap: 20px;
}
  }

@media (width <= 840px) {

.ms-c-single__size-sec-list {
    gap: 10px;
}
  }

@media (width > 840px) {

.ms-c-single__size-sec-item{ 
    max-width: 250px;
    width: 100%;
}
  }

@media (width <= 840px) {

.ms-c-single__size-sec-item{
    flex: 1;
}
  }

@media (width > 840px) {

.ms-c-single__dl-btn {
    max-width: 250px;
}
  }

.ms-c-single__note{
  color: #000;
  font-feature-settings: 'palt' on;
  font-family: dnp-shuei-gothic-gin-std,sans-serif;
  font-size: 13px;
  font-style: normal;
  font-weight: 500;
  line-height: 200%;
  letter-spacing: 0.15em;
}

.ms-c-single__note-slash{
  color: #CCCCCC;
  font-feature-settings: 'palt' on;
  font-family: dnp-shuei-gothic-gin-std,sans-serif;
  font-size: 13px;
  font-style: normal;
  font-weight: 500;
  line-height: 200%;
  letter-spacing: 0.15em;
}

@media (width > 840px) {

.ms-c-single__note-slash{ 
    padding-inline: 4px;
}
  }

@media (width <= 840px) {

.ms-c-single__note-slash{
    padding-inline: 5px;
}
  }

.ms-c-single__anchors:not(:first-child){
  margin-top: 48px;
}

.ms-c-single__video{
  max-width: 1060px;
}

@media (width > 840px) {

.ms-c-single__video-caption:not(:first-child){
    margin-top: 24px;
}
  }

@media (width <= 840px) {

.ms-c-single__video-caption:not(:first-child){
    margin-top: 12px;
}
  }

.ms-c-single__video-caption{
  display: flex;
}

@media (width > 840px) {

.ms-c-single__video-caption{
    gap: 8px;
}
  }

@media (width <= 840px) {

.ms-c-single__video-caption{
    gap: 4px;
}
  }

.ms-c-single__note-product-ids{
  word-break: break-all;
}

@media (width <= 840px) {

.ms-c-single__note-product-ids{
    display: block;
    margin-inline-start: -13px;
}
  }

.ms-c-single__video-img{
  position: relative;
  width: 100%;
}

.ms-c-single__product-ids-label{
  display: inline-block;
}

@media (width > 840px) {

.ms-c-single__product-ids-label{
    padding-inline-end: 8px;
}
  }

.ms-c-icon-button {
  position: relative;
  display: block;
  width: 100%;
  box-sizing: border-box;
  padding-block: 12px;
  padding-inline: 34px;
  background: #636363;
  color: #fff;
  text-align: center;
  font-feature-settings: 'palt' on;
  font-family: dnp-shuei-gothic-gin-std,sans-serif;
  font-size: 13px;
  font-style: normal;
  font-weight: 500;
  line-height: 200%;
  letter-spacing: 0.15em;
  transition: opacity 0.4s;
}

.ms-c-icon-button:focus,
.ms-c-icon-button:focus-visible {
  outline: 1px solid #829687;
  outline-offset: 3px;
}

.ms-c-icon-button:focus:not(:focus-visible) {
  outline: none;
}

.ms-c-icon-button__icon {
  position: absolute;
  top: 50%;
  right: 12px;
  transform: translateY(-50%);
  display: block;
  width: 12px;
  height: 12px;
}

.ms-c-icon-button__icon svg {
  fill: currentColor;
  vertical-align: top;
}

.ms-c-list li{
  position: relative;
  list-style: none;
  padding-inline-start: 13px;
}

.ms-c-list li::before{
  content: '';
  position: absolute;
  top: calc(0.5lh - 0.2em);
  left: 0;
  display: block;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background-color: #CCCCCC;
}

.ms-c-youtube-img{
  position: relative;
  width: 100%;
  max-width: 520px;
  aspect-ratio: 16 / 9;
  background-color: #000;
  cursor: pointer;
}

.ms-c-youtube-img iframe{
    width: 100%;
    height: 100%;
    object-fit: cover;
    pointer-events: none;
  }

.ms-c-youtube-img::before{
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background-color: #000;
    opacity: 0.2;
    position: absolute;
    top: 0;
    left: 0;
    transition: opacity 0.3s ease;
  }

.ms-c-youtube-img img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    pointer-events: none;
  }

.ms-c-youtube-img:hover::before{
      opacity: 0.4;
    }

.ms-c-youtube-img:focus,.ms-c-youtube-img:focus-visible{
    outline: 1px solid #829687;
    outline-offset: 3px;
  }

:is(.ms-c-youtube-img:focus,.ms-c-youtube-img:focus-visible)::before{
      opacity: 0.4;
    }

.ms-c-youtube-img:focus:not(:focus-visible){
    outline: none;
  }

.ms-c-youtube-img--full{
  max-width: 100%;
}

.ms-c-youtube-img__icon{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 60px;
  height: 60px;
  z-index: 1;
}

.ms-c-heading{
  color: #000;
  font-feature-settings: 'pwid' on;
  font-family: dnp-shuei-mincho-pr6n, sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 500;
  line-height: 175%;
  letter-spacing: 0.15em;
}

.ms-c-note {
  position: relative;
  display: flex;
  align-items: baseline;
  gap: 5px;
  font-family: dnp-shuei-gothic-gin-std,sans-serif;
  font-size: 13px;
  color: #828282;
  line-height: 200%;
}

.ms-c-twin-btns {
  display: flex;
}

@media (width > 840px) {

.ms-c-twin-btns {
    gap: 20px;
}
  }

@media (width <= 840px) {

.ms-c-twin-btns {
    flex-direction: column;
    gap: 12px;
}
  }

.ms-c-twin-btns__item {
  width: 100%;
  flex: 1;
}

@media (width > 840px) {

.ms-c-twin-btns__item {
    max-width: 340px;
}
  }

.c-link{
  text-decoration: underline;
}

.ms-c-youtube-modal{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.75);
  visibility: hidden;
  pointer-events: none;
  overflow: auto;
  padding: 20px;
  box-sizing: border-box;
  z-index: 1000;
}

.ms-c-youtube-modal.is-show{
  visibility: visible;
  pointer-events: auto;
}

.ms-c-youtube-modal-content{
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  max-width: 840px;
  /* height: 100%; を削除 */
  min-height: 0; /* フレックスアイテムの最小サイズをリセット */
}

.ms-c-youtube-modal-video-container{
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  /* 小さい画面での最大高さを制限 */
  max-height: calc(100vh - 120px); /* ヘッダーとパディング分を除く */
}

.ms-c-youtube-modal-video-container iframe{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.ms-c-youtube-modal-close-wrapper{
  display: flex;
  justify-content: flex-end;
  padding-block-end: 20px;
  flex-shrink: 0; /* 縮小を防ぐ */
}

.ms-c-youtube-modal-close{
  position: relative;
  display: block;
  width: 36px;
  height: 36px;
}

.ms-c-youtube-modal-close::before,
.ms-c-youtube-modal-close::after{
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: #f7f7f7;
  width: 1px;
  height: 50px;
}

.ms-c-youtube-modal-close::before{
  transform: translate(-50%, -50%) rotate(45deg);
}

.ms-c-youtube-modal-close::after{
  transform: translate(-50%, -50%) rotate(-45deg);
}

/* より小さい画面でのレスポンシブ対応 */

@media (max-height: 600px) {
  .ms-c-youtube-modal {
    justify-content: flex-start;
    padding: 10px;
  }
  
  .ms-c-youtube-modal-content {
    justify-content: flex-start;
  }
  
  .ms-c-youtube-modal-video-container {
    max-height: calc(100vh - 80px);
  }
}

@media (width > 840px) {

.ms-p-home__search-area{
    margin-block-start: 48px;
}
  }

@media (width <= 840px) {

.ms-p-home__search-area{
    margin-block-start: 40px;
}
  }

@media (width > 840px) {

.ms-p-result__links:not(:first-child){
    margin-block-start: 40px;
}
  }

@media (width <= 840px) {

.ms-p-result__links:not(:first-child){
    margin-block-start: 32px;
}
  }

@media (width > 840px) {

.ms-p-result__links-pager{
    margin-block-start: 32px;
}
  }

@media (width <= 840px) {

.ms-p-result__links-pager{
    margin-block-start: 24px;
}
  }

@media (width > 840px) {

.ms-p-result__categories{
    margin-block-start: 80px;
}
  }

@media (width <= 840px) {

.ms-p-result__categories{
    margin-block-start: 60px;
}
  }

.ms-p-result__no-items {
  color: #000;
  font-feature-settings: 'palt' on;
  font-family: dnp-shuei-gothic-gin-std,sans-serif;
  font-size: 13px;
  font-style: normal;
  font-weight: 500;
  line-height: 200%;
  letter-spacing: 0.15em;
}

.ms-p-result__youtube{
  display: flex;
  flex-direction: column;
  max-width: 520px;
  gap: 12px;gap: 8px;
}

.ms-p-result__youtube-caption{
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.ms-p-single__twin-btns {
  margin-block-start: 32px;
}

.ms-u-visually-hidden{
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

@media (width <= 840px) {

.ms-u-pc-only{
    display: none;
}
  }

@media (width > 840px) {

.ms-u-sp-only{
    display: none;
}
  }