/*
Theme Name: 
Theme URI: 
Author: 
Author URI: 
Description: 
*/

html {
  scroll-padding-top: 76px;
  font-size: 62.5%;
}

@media screen and (min-width: 769px) {
  html {
    scroll-padding-top: 72px;
  }
}

body {
  width: 100%;
  height: 100%;
  background-color: #fff;
  -webkit-text-size-adjust: 100%;
  font-family: 'Zen Kaku Gothic Antique', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'Meiryo', 'メイリオ', 'ＭＳ Ｐゴシック', 'MS P Gothic', Osaka, Arial, Helvetica, Verdana, sans-serif;
  font-size: 1rem;
  line-height: 1.6;
  font-weight: 400;
  color: #222;
}

.f-Poppins { font-family: 'Poppins', sans-serif; font-weight: 400; }
.f-Marcellus { font-family: 'Marcellus', serif; font-weight: 400; }
.f-Futura { font-family: 'futura-pt', sans-serif; font-weight: 400; }

*,
*:before,
*:after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }
* { letter-spacing: 0.05em; }

a,
button { color: #222; }
img { width: auto; height: auto; max-width: 100%; border: none; vertical-align: top; }
picture { display: block; position: relative; width: 100%; }
.object-fit-img { width: 100%; height: 100%; max-width: inherit; object-fit: cover; font-family: 'object-fit: cover;'; }

/* utility
------------------------------------------------ */
.u-device-click a { transition: opacity 0.4s ease; }
.u-device-click a:hover { opacity: 0.6; }
.u-reset-btn { appearance: none; -moz-appearance: none; -ms-appearance: none; position: relative; padding: 0; background: none; border: none; border-radius: 0; box-shadow: none; text-align: left; font-family: inherit; font-weight: 400; cursor: pointer; }
.u-reset-input { appearance: none; -moz-appearance: none; -ms-appearance: none; position: relative; padding: 0; background: none; border: none; border-radius: 0; box-shadow: none; text-align: left; font-family: inherit; font-weight: 400; }
.u-reset-lists { position: relative; margin: 0; padding: 0; list-style: none; }

@media screen and (max-width: 768px) {
  .u-show-mobile { display: inherit !important; }
  .u-show-desktop { display: none !important; }
}

@media screen and (min-width: 769px) {
  .u-show-mobile { display: none !important; }
  .u-show-desktop { display: inherit !important; }
}

/* container
------------------------------------------------ */
.l-container { position: relative; }
.l-main { position: relative; padding-top: 76px; }
.l-wrap { position: relative; padding: 0 30px; }

@media screen and (min-width: 769px) {
  .l-wrap { margin: 0 auto; padding: 0 20px; max-width: 1250px; }
  .l-main { padding-top: 72px; }
}

/* component
------------------------------------------------ */
/* lazy */
.lazy { transition: opacity 0.8s ease; opacity: 0; }
.lazy.is-show { opacity: 1; }

/* page */
.page-title-1 { display: flex; flex-flow: column; justify-content: center; position: relative; margin-bottom: 18px; width: 100%; height: 258px; background: url(./_assets/img/share/bg2.webp) repeat center center; background-size: cover; }
.page-title-1--en,
.page-title-1--ja { margin: 0; text-align: center; line-height: 1.2; color: #fff; }
.page-title-1--en { font-family: 'Marcellus', serif; font-size: 3.6rem; font-weight: 400; }
.page-title-1--ja { margin-top: 8px; font-size: 1.6rem; letter-spacing: 0.1em; }
.page-title-2 { position: relative; margin-bottom: 26px; padding-top: 92px; }
.page-title-2--en,
.page-title-2--ja { margin: 0; line-height: 1.2; }
.page-title-2--en { font-family: 'Marcellus', serif; font-size: 3.4rem; font-weight: 400; }
.page-title-2--ja { margin-top: 10px; font-size: 1.6rem; letter-spacing: 0.1em; }

@media screen and (min-width: 769px) {
  .page-title-1 { margin-bottom: 35px; height: 310px; }
  .page-title-1--en { font-size: 4rem; }
  .page-title-1--ja { margin-top: 8px; font-size: 1.8rem; }
  .page-title-2 { margin-bottom: -16px; padding-top: 118px; }
  .page-title-2--en { font-size: 4rem; }
  .page-title-2--ja { margin-top: 8px; font-size: 1.8rem; }
}

/* topicpath */
.topicpath { display: flex; margin-bottom: 60px; }
.topicpath.is-align-right { justify-content: flex-end; }
.topicpath.is-position-bottom { margin: 100px 0 0; }
.topicpath-item { font-family: 'futura-pt', 'Zen Kaku Gothic Antique', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'Meiryo', 'メイリオ', 'ＭＳ Ｐゴシック', 'MS P Gothic', Osaka, Arial, Helvetica, Verdana, sans-serif; font-size: 1.4rem; font-weight: 400; line-height: 1.2; }
.topicpath-item > a { display: inline-block; text-decoration: none; vertical-align: top; }
.topicpath-item > a::after { content: '>'; padding: 0 8px; }

@media screen and (max-width: 768px) {
  .topicpath { justify-content: flex-end; }
  .topicpath.is-align-left { justify-content: flex-start; }
}

@media screen and (min-width: 769px) {
  .topicpath { margin-bottom: 70px; }
}

/* title */
.title-1 { margin: 0 0 20px; font-family: 'Marcellus', serif; font-size: 3.2rem; font-weight: 400; line-height: 1.2; }
.title-2 { margin: 0 0 40px; white-space: nowrap; font-size: 1.4rem; font-weight: 400; line-height: 1.2; }
.title-2.has-line { display: flex; align-items: center; }
.title-2.has-line::after { content: ''; margin-left: 10px; width: 100%; height: 1px; background-color: #222; }
.title-block-1 { position: relative; margin-bottom: 60px; text-align: center; }
.title-block-1--en { margin: 0; font-family: 'Marcellus', serif; font-size: 1.6rem; font-weight: 400; line-height: 1.2; }
.title-block-1--ja { margin: 14px 0 0; font-size: 2.4rem; font-weight: 400; letter-spacing: 0.01em; line-height: 1.2; }
.title-block-2 { position: relative; margin-bottom: 42px; }
.title-block-2__name { margin: 0; font-family: 'Marcellus', serif; font-size: 3.2rem; font-weight: 400; line-height: 1.2; }
.title-block-2__text { margin: 8px 0 0; font-size: 1.4rem; letter-spacing: 0.1em; line-height: 1.8; }
.title-block-3 { position: relative; margin-bottom: 60px; }
.title-block-3--en { margin: 0; font-family: 'Marcellus', serif; font-size: 1.4rem; font-weight: 400; line-height: 1.2; }
.title-block-3--ja { margin: 26px 0 0; font-size: 2.4rem; font-weight: 400; letter-spacing: 0.01em; line-height: 1.8; }
.title-block-3--en.has-line { display: flex; align-items: center; }
.title-block-3--en.has-line::after { content: ''; margin-left: 10px; width: 100%; height: 1px; background-color: #222; }

@media screen and (min-width: 769px) {
  .title-1 { margin-bottom: 70px; font-size: 3.4rem; }
  .title-2 { margin-bottom: 30px; }
  .title-2.has-line::after { margin-left: 18px; }
  .title-block-1 { margin-bottom: 40px; }
  .title-block-1--en { font-size: 1.8rem; }
  .title-block-1--ja { margin-top: 18px; font-size: 2.8rem; }
  .title-block-2__name { font-size: 3.6rem; }
  .title-block-2__text { margin-top: 6px; font-size: 1.4rem; }
  .title-block-3 { margin-bottom: 40px; }
  .title-block-3--en { font-size: 1.4rem; }
  .title-block-3--ja { margin-top: 36px; font-size: 2.4rem; }
  .title-block-3--en.has-line::after { margin-left: 18px; }
}

/* link */
.link-skipcontent { position: absolute; margin: -1px; width: 1px; height: 1px; overflow: hidden; }
.link-1 { margin: 0; }
.link-1 > a,
.link-1 > span { display: block; position: relative; padding: 8px 8px 18px; border-bottom: 1px solid #222; text-decoration: none; font-size: 1.6rem; line-height: 1.2; color: #222; }
.link-1 > a::after,
.link-1 > span::after { content: ''; position: absolute; top: 16px; right: 8px; width: 8px; height: 7px; background: url(./_assets/img/icon/arrow1.svg) no-repeat center center; background-size: 100% 100%; }
.link-1.is-c-white > a,
.link-1.is-c-white > span { border-bottom-color: #fff; color: #fff; }
.link-1.is-c-white > a::after,
.link-1.is-c-white > span::after { background-image: url(./_assets/img/icon/arrow1-white.svg); }

@media screen and (min-width: 769px) {
  .link-1 { max-width: 255px; }
  .link-1 > a,
  .link-1 > span { padding: 16px 10px; font-size: 1.6rem; }
  .link-1 > a::after,
  .link-1 > span::after { top: 22px; right: 10px; width: 11px; height: 10px; }
}

/* btn */
.btn-1 { margin: 50px 0 0; }
.btn-1 > a { display: block; padding: 20px 10px; border: 1px solid #222; text-align: center; text-decoration: none; font-size: 1.4rem; line-height: 1.2; }
.btn-1.is-c-gray > a { background-color: #7D8291; border-color: #7D8291; color: #fff; }
.btn-2 { margin: 8px 0 0; }
.btn-2 > a { display: block; padding: 18px 10px; background-color: #fff; border: 1px solid #222; text-align: center; text-decoration: none; font-size: 1.6rem; line-height: 1.2; }
.btn-2 > a[target=_blank]::after { content: ''; display: inline-block; margin: 4px 0 0 10px; width: 11px; height: 11px; vertical-align: top; background: url(./_assets/img/icon/external1.svg) no-repeat center center; background-size: 100% 100%; }
.btn-2.is-c-gray > a { background-color: #7D8291; border-color: #7D8291; color: #fff; }
.btn-2.is-c-gray > a::after { background-image: url(./_assets/img/icon/external1-white.svg); }
.btn-2.is-f-en > a { font-family: 'futura-pt', sans-serif; font-weight: 400; }
.btn-onlinestore-item { position: relative; }
.btn-onlinestore-item > a { display: flex; justify-content: center; align-items: center; height: 52px; border-radius: 1px; text-align: center; text-decoration: none; font-size: 1.4rem; line-height: 1.2; color: #fff; }
.btn-onlinestore-item.is-onlinestore > a { background-color: #7D8291; }
.btn-onlinestore-item.is-onlinestore > a::after { content: ''; margin-left: 3px; width: 10px; height: 10px; background: url(./_assets/img/icon/external1-white.svg) no-repeat center center; background-size: 100% 100%; }
.btn-onlinestore-item.is-onlinestore .sup { display: inline-block; vertical-align: top; font-size: 1.2rem; }
.btn-onlinestore-item.is-onlinestore-amazon > a { background-color: #F8991D; }
.btn-onlinestore-item.is-onlinestore-rakuten > a { background-color: #C11A20; }
.btn-onlinestore-item.is-onlinestore-yahoo > a { background-color: #FF0033; }
.btn-onlinestore-item.is-onlinestore-amazon > a::before,
.btn-onlinestore-item.is-onlinestore-rakuten > a::before,
.btn-onlinestore-item.is-onlinestore-yahoo > a::before { content: ''; margin-right: 5px; width: 12px; height: 12px; background-repeat: no-repeat; background-position: center center; background-size: 100% 100%; }
.btn-onlinestore-item.is-onlinestore-amazon > a::before { background-image: url(./_assets/img/icon/onlinestore_amazon1.png); }
.btn-onlinestore-item.is-onlinestore-rakuten > a::before { background-image: url(./_assets/img/icon/onlinestore_rakuten1.png); }
.btn-onlinestore-item.is-onlinestore-yahoo > a::before { background-image: url(./_assets/img/icon/onlinestore_yahoo1.png); }

@media screen and (min-width: 769px) {
  .btn-1 { margin-top: 70px; text-align: center; }
  .btn-1 > a { display: inline-block; padding: 16px 10px; vertical-align: top; min-width: 250px; }
  .btn-2 > a { display: inline-block; padding: 6px 10px; min-width: 138px; vertical-align: top; font-size: 1.4rem; }
  .btn-2 > a[target=_blank]::after { margin: 3px 0 0 8px; }
  .btn-onlinestore-item > a { height: 50px; }
  .btn-onlinestore-item.is-onlinestore a { font-size: 1.2rem; }
  .btn-onlinestore-item.is-onlinestore-amazon > a::before,
  .btn-onlinestore-item.is-onlinestore-rakuten > a::before,
  .btn-onlinestore-item.is-onlinestore-yahoo > a::before { margin-right: 5px; width: 15px; height: 15px; }
}

/* btns */
.btns-1-item:not(:first-child) { margin-top: 20px; }
.btns-1-item > a { display: block; border: 1px solid #bbb; text-decoration: none; }
.btns-1-info { position: relative; padding: 22px 20px; }
.btns-1-info::after { content: ''; position: absolute; top: 50%; right: 20px; transform: translateY(-50%); width: 8px; height: 7px; background: url(./_assets/img/icon/arrow1.svg) no-repeat center center; background-size: 100% 100%; }
.btns-1-en,
.btns-1-ja { margin: 0; }
.btns-1-en { font-family: 'Marcellus', serif; font-size: 1.4rem; font-weight: 400; }
.btns-1-ja { margin-top: 8px; font-size: 2rem; font-weight: 400; }

@media screen and (min-width: 769px) {
  .btns-1 { margin: 0 auto; max-width: 815px; }
  .btns-1-item > a { display: flex; align-items: center; }
  .btns-1-photo { width: 39.8773006135%; }
  .btns-1-info { padding: 20px 35px; width: 60.1226993865%; }
  .btns-1-info::after { right: 35px; width: 10px; height: 9px; }
  .btns-1-ja { margin-top: 10px; font-size: 2.4rem; }
}

/* archive */
.archive-top { position: relative; padding-bottom: 30px; background-color: #fff; z-index: 10; }
.archive-content { padding-top: 30px; }
.archive-mid { position: relative; margin-bottom: 40px; }
.archive-mid-title { margin: 0; font-size: 2.4rem; font-weight: 400; line-height: 1.8; }
.archive-mid-sort { display: flex; justify-content: flex-end; position: relative; margin: 0; z-index: 5; }
.archive-mid-sort__title > button { display: flex; align-items: center; font-size: 1.2rem; }
.archive-mid-sort__title > button::before { content: ''; margin-right: 10px; width: 18px; height: 18px; background: url(./_assets/img/icon/sort.svg) no-repeat center center; background-size: 100% 100%; }
.archive-mid-sort__content { pointer-events: none; position: absolute; top: 18px; right: 0; transition: opacity 0.4s ease; margin: 0; padding: 10px 26px; min-width: 128px; background-color: rgba(255,255,255,0.8); opacity: 0; }
.archive-mid-sort__content[aria-hidden=false] { pointer-events: inherit; opacity: 1; }
.archive-mid-sort__links__item > a { display: inline-block; text-decoration: none; vertical-align: top; font-size: 1.2rem; line-height: 1.8; }
.archive-mid-sort__links__item:not(:first-child) { margin-top: 5px; }
.archive-none { margin: 0; text-align: center; font-size: 1.2rem; line-height: 1.5; }

@media screen and (max-width: 768px) {
  .archive-mid-sort { display: none; }
}

@media screen and (min-width: 769px) {
  .archive-top { padding-bottom: 28px; }
  .archive-mid { margin-bottom: 30px; }
  .archive-none { font-size: 1.6rem; }
}

/* pagination */
.pagination { display: flex; justify-content: center; flex-wrap: wrap; margin: 60px 0 0 -20px; }
.pagination > a,
.pagination > span { display: flex; justify-content: center; align-items: center; position: relative; margin: 20px 0 0 20px; width: 50px; height: 50px; border: 1px solid #bbb; text-decoration: none; font-size: 1.4rem; }
.pagination > span { background-color: #7D8291; border-color: #7D8291; color: #fff; }
.pagination-prev,
.pagination-next { text-indent: -9999px; white-space: nowrap; overflow: hidden; }
.pagination-prev::after,
.pagination-next::after { content: ''; position: absolute; top: 50%; left: 50%; transform-origin: left top; width: 8px; height: 7px; background: url(./_assets/img/icon/arrow1.svg) no-repeat center center; background-size: 100% 100%; }
.pagination-prev::after { transform: rotate(180deg) translate(-50%,-50%); }
.pagination-next::after { transform: translate(-50%,-50%); }

@media screen and (min-width: 769px) {
}

/* category */
/*
.is-cat-beginner::before { background-color: #21AA93; }
.is-cat-example::before { background-color: #00028C; }
.is-cat-construction::before { background-color: #D9419C; }
.is-cat-carknowledge::before { background-color: #F2B11A; }
*/

/* lists */
.lists-topics-item { display: grid; grid-template-rows: subgrid; grid-row: span 4; position: relative; }
.lists-topics-item .post-edit-link { position: absolute; top: 10px; left: 10px; z-index: 2; }
.lists-topics-photo { position: relative; margin-bottom: 16px; aspect-ratio: 1 / 1; width: 100%; overflow: hidden; }
.lists-topics-photo img { position: absolute; top: 0; left: 0; }
.lists-topics-info { position: relative; }
.lists-topics-top { display: flex; flex-wrap: wrap; margin-bottom: 10px; }
.lists-topics-cat { margin: 0 8px 0 0; font-size: 1.2rem; line-height: 1.2; }
.lists-topics-cat::before { content: ''; display: inline-block; margin: 5px 5px 0 0; width: 6px; height: 6px; border-radius: 50%; vertical-align: top; }
.lists-topics-date { margin: 0; font-family: 'futura-pt', sans-serif; font-size: 1.2rem; font-weight: 400; line-height: 1.2; }
.lists-topics-title { margin: 0; font-size: 1.4rem; font-weight: 400; line-height: 1.5; }
.lists-topics-title > a { display: inline-block; text-decoration: none; vertical-align: top; }
.lists-topics-keywords { margin-top: 15px; }
.lists-topics-keywords__content { display: flex; flex-wrap: wrap; align-items: flex-start; margin: -5px 0 0 -5px; }
.lists-topics-keywords a { margin: 5px 0 0 5px; padding: 3px 6px; background-color: #F5F5F5; border-radius: 20px; text-decoration: none; font-size: 1rem; line-height: 1.2; }

.lists-products-item { display: grid; grid-template-rows: subgrid; grid-row: span 3; position: relative; }
.lists-products-item.has-onlinestore { grid-row: span 4; }
.lists-products-item .post-edit-link { position: absolute; top: 10px; right: 10px; z-index: 2; }
.lists-products-photo { position: relative; margin-bottom: 10px; }
.lists-products-photo > a { display: block; position: relative; aspect-ratio: 1 / 0.6369047619; width: 100%; height: 100%; overflow: hidden; }
.lists-products-photo img { position: absolute; top: 0; left: 0; z-index: 1; }
.lists-products-icons { position: absolute; top: 8px; left: 8px; z-index: 2; }
.lists-products-icons i { display: block; font-style: normal; }
.lists-products-icons i + i { margin-top: 8px; }
.lists-products-icons span { display: inline-block; padding: 5px 3px; background-color: #fff; vertical-align: top; font-size: 1.1rem; line-height: 1.2; color: #7D8291; }
.lists-products-title { margin: 0; font-size: 1.6rem; font-weight: 400; line-height: 1.5; }
.lists-products-title > a { display: inline-block; text-decoration: none; vertical-align: top; }
.lists-products-categories { margin-top: 15px; }
.lists-products-categories__content { display: flex; flex-wrap: wrap; align-items: flex-start; margin: -5px 0 0 -5px; }
.lists-products-categories a { margin: 5px 0 0 5px; padding: 4px 6px; border: 1px solid #bbb; text-decoration: none; font-size: 1rem; line-height: 1.2; }
.lists-products .btn-onlinestore { display: flex; flex-wrap: wrap; margin-top: 15px; }
.lists-products .btn-onlinestore-item { margin: 8px 8px 0 0; width: calc(50% - 4px); }
.lists-products .btn-onlinestore-item:nth-of-type(-n+2) { margin-top: 0; }
.lists-products .btn-onlinestore-item:nth-of-type(2n) { margin-right: 0; }

@media screen and (min-width: 769px) {
  .lists-topics-photo { margin-bottom: 16px; }
  .lists-topics-top { margin-bottom: 18px; }
  .lists-topics-cat { margin-right: 10px; }
  .lists-topics-date { font-size: 1.4rem; }

  .lists-products-photo { margin-bottom: 16px; }
  .lists-products-icons { top: 10px; left: 10px; }
  .lists-products-icons span { padding: 6px 5px; font-size: 1rem; }
  .lists-products-title { font-size: 1.8rem; }
}

@media screen and (min-width: 769px) and (max-width: 1000px) {
  .lists-products .btn-onlinestore { display: block; margin-right: 0; }
  .lists-products .btn-onlinestore-item { margin: 14px 0 0; width: 100%; }
  .lists-products .btn-onlinestore-item:nth-of-type(-n+2) { margin-top: 14px; }
  .lists-products .btn-onlinestore-item:first-child { margin-top: 0; }
}

/* splide */
.splide__list.lists-topics,
.splide__list.lists-products { display: grid; }
.splide__arrows { display: flex; justify-content: center; }
.splide__arrow { position: relative; top: auto; transform: none; width: 55px; height: 55px; background-color: #fff; border: 1px solid #bbb; border-radius: 0; opacity: 1; }
.splide__arrow::after { content: ''; position: absolute; top: 50%; left: 50%; transform-origin: left top; transform: translate(-50%,-50%); width: 10px; height: 9px; background: url(./_assets/img/icon/arrow1.svg) no-repeat center center; background-size: 100% 100%; }
.splide__arrow svg { display: none; }
.splide__arrow--prev { left: auto; }
.splide__arrow--prev::after { transform: rotate(180deg) translate(-50%,-50%); }
.splide__arrow--next { right: auto; margin-left: 20px; }

@media screen and (max-width: 768px) {
  .splide { display: flex; flex-flow: column; }
  .splide__arrows { order: 2; margin-top: 50px; }
  .splide__track { order: 1; }

  .splide__slide .btn-onlinestore-item > a { height: 48px; font-size: 1.2rem; }
  .splide__slide .btn-onlinestore-item.is-onlinestore > a,
  .splide__slide .btn-onlinestore-item.is-onlinestore .sup { font-size: 1rem; }
  .splide__slide .btn-onlinestore-item.is-onlinestore > a::after { width: 8px; height: 8px; }
}

@media screen and (min-width: 769px) {
  .splide__arrows { position: absolute; top: -94px; right: calc((100vw - 1210px) / 2); }
  .splide__arrow { width: 46px; height: 46px; }
  .splide__arrow--next { margin-left: 10px; }
}

@media screen and (min-width: 769px) and (max-width: 1250px) {
  .splide__arrows { right: 20px; }
}

/* block editor
------------------------------------------------ */
.wp-block-heading { margin: 40px 0; font-size: 1.8rem; font-weight: 400; letter-spacing: 0.1em; line-height: 1.5; }
.wp-block-heading:first-child { margin-top: 0; }
h1.wp-block-heading { margin-top: 60px; padding-bottom: 8px; border-bottom: 1px solid #222; font-size: 2.2rem; }
h1.wp-block-heading:first-child { margin-top: 0; }
.wp-block-image:not(:first-child) { margin-top: 50px; }
ul.wp-block-list { margin: 0; padding: 0; list-style: none; }
ul.wp-block-list li { position: relative; padding-left: 20px; line-height: 1.5; }
ul.wp-block-list li + li { margin-top: 14px; }
ul.wp-block-list li::before { content: ''; position: absolute; top: 7px; left: 0; width: 11px; height: 9px; background: url(./_assets/img/icon/check1.svg) no-repeat center center; background-size: 100% 100%; }
ol.wp-block-list { padding: 0 0 0 26px; }
ol.wp-block-list li { position: relative; padding: 12px 0 12px 6px; }
ol.wp-block-list li::after { content: ''; position: absolute; bottom: 0; left: -26px; width: calc(100% + 26px); height: 1px; background-color: #F0F0F0; }
ol.wp-block-list li::marker { font-family: 'futura-pt', sans-serif; font-weight: 400; }
.wp-block-cover { margin: 60px 0; padding: 30px 0; min-height: inherit; color: #222; }
.wp-block-cover__inner-container { margin: 0 auto; padding: 0 20px; max-width: 410px; }
.wp-block-cover .has-background-dim:not([class*=-background-color]) { background-color: #F0F0F0; opacity: 1; }
.wp-block-cover:first-child { margin-top: 0; }
.wp-block-cover .wp-block-heading { margin-bottom: 20px; }
.wp-block-table { margin: 60px 0; }
.wp-block-table table { display: block; }
.wp-block-table table tbody,
.wp-block-table table tr,
.wp-block-table table th,
.wp-block-table table td { display: block; width: 100%; }
.wp-block-table table tr { border-bottom: 1px solid #F0F0F0; }
.wp-block-table table th,
.wp-block-table table td { padding: 0; border: none; }
.wp-block-buttons { margin-top: 60px; }
.wp-block-button__link { display: block; margin: 0 auto; padding: 16px 10px; width: 100%; background-color: #7D8291; border-radius: 0; color: #fff; }
.wp-block-button__link[target=_blank]::after { content: ''; display: inline-block; margin: 10px 0 0 8px; width: 10px; height: 10px; background: url(./_assets/img/icon/external1-white.svg) no-repeat center center; background-size: 100% 100%; vertical-align: top; }
.wp-block-aioseo-faq { position: relative; border-top: 1px solid #222; border-bottom: 1px solid #222; }
.wp-block-aioseo-faq::before,
.wp-block-aioseo-faq::after { content: ''; position: absolute; top: 30px; right: 5px; width: 12px; height: 2px; background-color: #222; }
.wp-block-aioseo-faq::after { transition: transform 0.4s ease; transform: rotate(90deg); }
.wp-block-aioseo-faq.is-active::after { transform: rotate(0); }
.wp-block-aioseo-faq + .wp-block-aioseo-faq { border-top: none; }
.wp-block-heading + .wp-block-aioseo-faq { margin-top: -21px; }
.aioseo-faq-block-question { position: relative; margin: 0; padding: 18px 32px; font-size: 1.4rem; font-weight: 400; letter-spacing: 0.1em; line-height: 1.8; cursor: pointer; }
.aioseo-faq-block-question::before { content: 'Q.'; position: absolute; top: 18px; left: 5px; font-family: 'Marcellus', serif; font-size: 1.6rem; font-weight: 400; }
.aioseo-faq-block-answer { display: none; position: relative; padding: 0 0 18px 32px; }
.aioseo-faq-block-answer::before { content: 'A.'; position: absolute; top: 0; left: 5px; font-family: 'Marcellus', serif; font-size: 1.6rem; font-weight: 400; }
.wp-block-group.is-vertical h1.wp-block-heading { margin: 0 0 20px; padding: 0; border-bottom: none; font-family: 'futura-pt', 'Zen Kaku Gothic Antique', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'Meiryo', 'メイリオ', 'ＭＳ Ｐゴシック', 'MS P Gothic', Osaka, Arial, Helvetica, Verdana, sans-serif; font-size: 1.6rem; font-weight: 400; }
.wp-block-group.is-vertical .wp-block-group { padding: 40px 0; }
.wp-block-group.is-vertical .wp-block-group + .wp-block-group { border-top: 1px solid #bbb; }
.block-topics { position: relative; margin-top: 48px; }
.block-topics + .block-topics { margin-top: 20px; }
.block-topics > a { display: flex; align-items: center; padding: 15px 13px; border: 1px solid #bbb; text-decoration: none; }
.block-topics-photo { position: relative; aspect-ratio: 1 / 1; width: 95px; overflow: hidden; }
.block-topics-photo img { position: absolute; top: 0; left: 0; }
.block-topics-photo + .block-topics-info { margin-left: 17px; width: calc(100% - (95px + 17px)); }
.block-topics-cat { position: relative; margin: 0 0 8px !important; font-size: 1.2rem; font-weight: 400; line-height: 1.2; }
.block-topics-cat::before { content: ''; display: inline-block; margin: 5px 5px 0 0; width: 6px; height: 6px; border-radius: 50%; vertical-align: top; }
.block-topics-title { margin: 0 !important; font-size: 1.4rem; font-weight: 400; line-height: 1.5; }
.block-product { position: relative; margin-top: 48px; }
.block-product + .block-product { margin-top: 60px; }
.block-product-photo { position: relative; aspect-ratio: 1 / 0.63689189189; width: 100%; overflow: hidden; }
.block-product-icons { position: absolute; top: 8px; left: 8px; }
.block-product-icons i { display: block; font-style: normal; }
.block-product-icons i + i { margin-top: 8px; }
.block-product-icons span { display: inline-block; padding: 5px 3px; background-color: #fff; vertical-align: top; font-size: 1.1rem; line-height: 1.2; color: #7D8291; }
.block-product-photo img { position: absolute; top: 0; left: 0; }
.block-product-title { margin: 0; font-size: 1.6rem; font-weight: 400; line-height: 1.5; }
.block-product-title { margin: 0; font-size: 1.6rem; font-weight: 400; line-height: 1.5; }
.block-product-categories { display: flex; flex-wrap: wrap; align-items: flex-start; margin: 15px 0 0 -5px; }
.block-product-categories a { margin: 5px 0 0 5px; padding: 4px 6px; border: 1px solid #bbb; text-decoration: none; font-size: 1rem; line-height: 1.2; }
.block-product-link { margin: 32px 0 0 !important; }
.block-product-link > a { display: inline-block; position: relative; padding-right: 26px; text-decoration: none; vertical-align: top; font-size: 1.4rem; font-weight: 400; line-height: 1.8; }
.block-product-link > a::after { content: ''; position: absolute; top: 50%; right: 0; transform: translateY(-50%); width: 8px; height: 7px; background: url(./_assets/img/icon/arrow1.svg) no-repeat center center; background-size: 100% 100%; }

@media screen and (max-width: 768px) {
  .wp-block-table table tr { padding: 6px 0; }
  .wp-block-table table td { padding: 6px 0; }
  .wp-block-buttons > .wp-block-button { display: block; width: 100%; }
  .block-product-info { margin-top: 20px; }
  .block-product .btn-onlinestore { display: flex; flex-wrap: wrap; margin-top: 25px; }
  .block-product .btn-onlinestore-item { margin: 8px 8px 0 0; width: calc(50% - 4px); }
  .block-product .btn-onlinestore-item:nth-of-type(-n+2) { margin-top: 0; }
  .block-product .btn-onlinestore-item:nth-of-type(2n) { margin-right: 0; }
  .block-product-link { text-align: right; }
}

@media screen and (min-width: 769px) {
  .wp-block-heading { margin: 40px 0; font-size: 2rem; }
  h1.wp-block-heading { margin-top: 80px; padding-bottom: 12px; font-size: 2.4rem; }
  ol.wp-block-list li { padding: 14px 0 14px 6px; }
  .wp-block-image:not(:first-child) { margin-top: 60px; }
  .wp-block-cover { margin: 70px 65px; padding: 30px 0; }
  .wp-block-cover .wp-block-heading { margin-bottom: 26px; font-size: 1.8rem; }
  .wp-block-table { margin: 80px 0; }
  .wp-block-table table tr { display: flex; padding: 12px 0; }
  .wp-block-table table tr td { width: calc(100% - 120px); }
  .wp-block-table table tr td:first-child { padding-right: 12px; width: 120px; }
  .wp-block-buttons > .wp-block-button { min-width: 274px; }
  .wp-block-button__link { padding: 12px 10px; }
  .wp-block-group.is-vertical .wp-block-group { padding: 60px 0; }
  .wp-block-heading + .wp-block-aioseo-faq { margin-top: -51px; }

  .block-topics { margin: 80px auto 0; max-width: 495px; }
  .block-topics > a { padding: 17px; }
  .block-topics-photo { width: 100px; }
  .block-topics-photo + .block-topics-info { margin-left: 18px; width: calc(100% - (100px + 18px)); }
  .block-topics-title { font-size: 1.6rem; }
  .block-product { display: flex; flex-wrap: wrap; align-items: flex-start; margin-top: 60px; }
  .block-product + .block-product { margin-top: 32px; }
  .block-product-photo { width: 34.625%; }
  .block-product-icons { position: absolute; top: 8px; left: 8px; }
  .block-product-icons i { display: block; font-style: normal; }
  .block-product-icons i + i { margin-top: 8px; }
  .block-product-icons span { display: inline-block; padding: 5px 3px; background-color: #fff; vertical-align: top; font-size: 1.1rem; line-height: 1.2; color: #7D8291; }
  .block-product-photo img { position: absolute; top: 0; left: 0; }
  .block-product-title { margin: 0; font-size: 1.6rem; font-weight: 400; line-height: 1.5; }
  .block-product-info { margin-left: 30px; width: calc((100% - 34.625%) - (140px + 30px + 30px)); }
  .block-product .btn-onlinestore { margin-left: 30px; width: 140px; }
  .block-product .btn-onlinestore-item:not(:first-child) { margin-top: 9px; }
  .block-product .btn-onlinestore-item > a { height: 37px; font-size: 1.2rem;}
  .block-product .btn-onlinestore-item.is-onlinestore .sup { font-size: 1rem;}
  .block-product-link { margin-top: 20px !important; width: 100%; }
  .block-product-link > a { font-size: 1.2rem; }
}

/* header
------------------------------------------------ */
.l-header { position: fixed; top: 0; left: 0; transition: transform 0.4s ease, opacity 0.4s ease; transform: translateY(-100%); width: 100%; opacity: 0; z-index: 20; }
.l-header-top { position: relative; width: 100%; height: 76px; background-color: #fff; z-index: 2; }
.l-header-logo { position: absolute; top: 25px; left: 30px; margin: 0; width: 152px; height: 26px; }
.l-header-logo > a { display: block; width: 100%; height: 100%; }
.l-header-links { display: flex; position: absolute; top: 26px; right: 146px; }
.l-header-links__item:not(:first-child) { margin-left: 40px; }
.l-header-links__item > a { display: inline-block; text-decoration: none; font-family: 'futura-pt', sans-serif; font-size: 1.6rem; line-height: 1.2; }
.l-header-links__item > a[target=_blank]::after { content: ''; display: inline-block; margin: 5px 0 0 5px; width: 12px; height: 12px; background: url(./_assets/img/icon/external1.svg) no-repeat center center; background-size: 100% 100%; vertical-align: top; }

.is-loaded .l-header { transform: translateY(0); opacity: 1; }
.is-header-hide:not(.is-gnav-open) .l-header { transform: translateY(-100%); }

/* gnav */
.l-header-nav { position: absolute; top: 0; left: 0; width: 100%; }
.l-header-nav__trigger { position: absolute; top: 24px; right: 30px; width: 26px; height: 26px; z-index: 2; }
.l-header-nav__trigger > span { display: block; position: relative; width: 100%; height: 100%; text-indent: -9999px; white-space: nowrap; overflow: hidden; }
.l-header-nav__trigger::after,
.l-header-nav__trigger > span::before,
.l-header-nav__trigger > span::after { content: ''; position: absolute; left: 0; transition: 0.4s ease; width: 100%; height: 1px; background-color: #222; }
.l-header-nav__trigger::after { top: 7px; }
.l-header-nav__trigger > span::before { top: 13px; }
.l-header-nav__trigger > span::after { top: 19px; }
.l-header-nav__trigger[aria-expanded=true]::after { opacity: 0; }
.l-header-nav__trigger[aria-expanded=true] > span::before,
.l-header-nav__trigger[aria-expanded=true] > span::after { top: 13px; }
.l-header-nav__trigger[aria-expanded=true] > span::before { transform: rotate(45deg); }
.l-header-nav__trigger[aria-expanded=true] > span::after { transform: rotate(-45deg); }
.l-header-nav__overlay { pointer-events: none; position: absolute; top: 0; left: 0; transition: opacity 0.4s ease; width: 100%; height: 100dvh; background-color: rgba(34,34,34,0.6); opacity: 0; z-index: 1; }
.l-header-nav__overlay[aria-expanded=true] { pointer-events: inherit; opacity: 1; }
.l-gnav { pointer-events: none; position: absolute; top: 76px; transition: opacity 0.4s ease; width: 100%; height: calc(100dvh - 76px); background-color: #fff; opacity: 0; z-index: 2; }
.l-gnav[aria-hidden=false] { pointer-events: inherit; opacity: 1; }
.l-gnav-frame { position: relative; padding: 48px 30px 42px; width: 100%; height: 100%; overflow-y: auto; }
.l-gnav-onlinestore { margin: 0; }
.l-gnav-onlinestore__title { display: flex; align-items: center; margin-bottom: 20px; font-family: 'futura-pt', sans-serif; font-size: 1.8rem; font-weight: 400; line-height: 1.2; }
.l-gnav-onlinestore__title::before { content: ''; display: inline-block; margin-right: 8px; width: 16px; height: 15px; background: url(./_assets/img/icon/cart1.svg) no-repeat center center; background-size: 100% 100%; }
.l-gnav-onlinestore__content { margin: 0; }
.l-gnav-onlinestore .btn-onlinestore { display: flex; flex-wrap: wrap; }
.l-gnav-onlinestore .btn-onlinestore-item { margin: 8px 8px 0 0; width: calc(50% - 4px); }
.l-gnav-onlinestore .btn-onlinestore-item:nth-of-type(-n+2) { margin-top: 0; }
.l-gnav-onlinestore .btn-onlinestore-item:nth-of-type(2n) { margin-right: 0; }
.l-gnav-sitemap { position: relative; margin-top: 62px; }
.l-gnav-sitemap__box { margin: 0; }
.l-gnav-sitemap__box:not(:first-child) { margin-top: 52px; }
.l-gnav-sitemap__box__title { margin-bottom: 28px; border-bottom: 1px solid #BBB; }
.l-gnav-sitemap__box__title > a { display: block; position: relative; padding: 0 5px 12px; text-decoration: none; font-family: 'futura-pt', sans-serif; font-size: 2rem; font-weight: 400; line-height: 1.2; }
.l-gnav-sitemap__box__title > a::after { content: ''; position: absolute; top: 8px; right: 5px; width: 10px; height: 9px; background: url(./_assets/img/icon/arrow1.svg) no-repeat center center; background-size: 100% 100%; }
.l-gnav-sitemap__box__content { margin: 0; }
.l-gnav-sitemap__links { display: flex; flex-wrap: wrap; padding: 0 12px; }
.l-gnav-sitemap__links__item { margin: 18px 4px 0 0; width: calc(50% - 2px); }
.l-gnav-sitemap__links__item:nth-of-type(-n+2) { margin-top: 0; }
.l-gnav-sitemap__links__item:nth-of-type(2n) { margin-right: 0; }
.l-gnav-sitemap__links__item > a { display: inline-block; position: relative; padding: 4px 0 4px 16px; text-decoration: none; vertical-align: top; font-size: 1.4rem; line-height: 1.2; }
.l-gnav-sitemap__links__item > a::before { content: ''; position: absolute; top: 9px; left: 0; width: 8px; height: 7px; background: url(./_assets/img/icon/arrow1.svg) no-repeat center center; background-size: 100% 100%; vertical-align: top; }
.l-gnav-sitemap__products__item { padding: 0 5px; }
.l-gnav-sitemap__products__item:not(:first-child) { margin-top: 30px; }
.l-gnav-sitemap__products__item > button { display: block; padding: 4px 0; width: 100%; font-size: 1.6rem; line-height: 1.2; }
.l-gnav-sitemap__products__item > button::before,
.l-gnav-sitemap__products__item > button::after { content: ''; position: absolute; top: 50%; right: 0; width: 12px; height: 2px; background-color: #222; }
.l-gnav-sitemap__products__item > button::after { transition: transform 0.4s ease; transform: rotate(90deg); }
.l-gnav-sitemap__products__item > button[aria-expanded=true]::after { transform: rotate(0); }
.l-gnav-sitemap__products__sub { display: none; padding-top: 28px; }
.l-gnav-business { margin: 60px 0 0; }
.l-gnav-business > a { display: block; position: relative; padding: 32px 30px; background-color: #7D8291; text-decoration: none; color: #fff; }
.l-gnav-business > a::after { content: ''; position: absolute; top: 50%; right: 28px; transform: translateY(-50%); width: 15px; height: 15px; background: url(./_assets/img/icon/external1-white.svg) no-repeat center center; background-size: 100% 100%; }
.l-gnav-business span,
.l-gnav-business strong { display: block; line-height: 1.2; }
.l-gnav-business span { font-family: 'futura-pt', sans-serif; font-size: 1.4rem; font-weight: 400; }
.l-gnav-business strong { margin-top: 16px; font-size: 1.6rem; font-weight: 400; }

.is-gnav-open { position: fixed; top: 0; left: 0; }

@media screen and (max-width: 768px) {
  .l-header-links { display: none; }

  /* gnav */
  .l-header-nav__overlay { display: none; }
  .l-gnav { left: 0; }
}

@media screen and (min-width: 769px) {
  .l-header-top { height: 72px; }
  .l-header-logo { top: 22px; left: 40px; margin: 0; width: 182px; height: 32px; }

  /* gnav */
  .l-header-nav__trigger { top: 24px; right: 60px; width: 26px; height: 26px; }
  .l-header-nav__trigger::after,
  .l-header-nav__trigger > span::before,
  .l-header-nav__trigger > span::after { height: 2px; }
  .l-header-nav__trigger::after { top: 6px; }
  .l-header-nav__trigger > span::before { top: 12px; }
  .l-header-nav__trigger > span::after { top: 18px; }
  .l-header-nav__trigger[aria-expanded=true] > span::before,
  .l-header-nav__trigger[aria-expanded=true] > span::after { top: 12px; }

  .l-gnav { top: 72px; right: 0; width: 470px; height: calc(100dvh - 72px); }
  .l-gnav-frame { padding: 42px 50px 52px; }
  .l-gnav-onlinestore .btn-onlinestore-item { margin: 10px 10px 0 0; width: calc(50% - 5px); }
  .l-gnav-onlinestore .btn-onlinestore-item > a { height: 50px; }
  .l-gnav-sitemap { margin-top: 42px; }
  .l-gnav-sitemap__box:not(:first-child) { margin-top: 40px; }
  .l-gnav-sitemap__box__title { margin-bottom: 16px; }
  .l-gnav-sitemap__box__title > a { font-size: 1.8rem; }
  .l-gnav-sitemap__links__item > a { font-size: 1.2rem; }
  .l-gnav-sitemap__products__item:not(:first-child) { margin-top: 16px; }
  .l-gnav-sitemap__products__item > button { font-size: 1.4rem; }
  .l-gnav-sitemap__products__sub { padding-top: 16px; }
  .l-gnav-business { margin-top: 50px; }
  .l-gnav-business > a { padding: 34px 30px; }
  .l-gnav-business span { font-size: 1.2rem; }
  .l-gnav-business strong { margin-top: 8px; }
}

@media screen and (min-width: 769px) and (max-width: 1000px) {
  .l-header-logo { top: 50%; left: 4vw; transform: translateY(-50%); width: 18.2vw; height: 3.2vw; }
  .l-header-links { top: 50%; right: 14.6vw; transform: translateY(-50%); }
  .l-header-links__item:not(:first-child) { margin-left: 4vw; }
  .l-header-nav__trigger { right: 6vw; }
}

/* page
------------------------------------------------ */
.page-main { padding-top: 20px; }
.page-title { margin: 0 0 20px; font-size: 2.4rem; font-weight: 400; letter-spacing: 0.1em; line-height: 1.5; }
.page-content { position: relative; font-size: 1.4rem; letter-spacing: 0.1em; line-height: 1.8; }

@media screen and (min-width: 769px) {
  .page-main { padding-top: 40px; }
  .page-title { margin-bottom: 32px; font-size: 2.8rem; }
}

/* top page
------------------------------------------------ */
/* parallax */
.top-parallax { position: relative; z-index: 1; }
.top-parallax-bg { position: fixed; top: 0; left: 0; width: 100%; height: 100dvh; z-index: -2; }
.top-parallax-bg::after { content: ''; position: absolute; top: 0; left: 0; transition: background-color 0.8s ease; width: 100%; height: 100%; background-color: rgba(49,49,49,0.5); z-index: 1; }

.is-parallax-hide .top-parallax-bg { opacity: 0; }
.is-over-whhalf .top-parallax-bg::after { background-color: rgba(49,49,49,0.8); }

@media screen and (min-width: 769px) {
}

/* visual */
.top-visual { position: relative; width: 100%; height: calc(100dvh - 76px); color: #fff; }
.top-visual a { color: #fff; }
.top-visual-copy { position: absolute; top: 50%; left: 0; transform: translateY(-50%); margin-top: -60px; width: 100%; text-align: center; z-index: 1; }
.top-visual-copy--ja { position: relative; top: -12px; margin: 0 0 -12px; font-size: 3.8rem; letter-spacing: 0.1em; line-height: 1.5; }
.top-visual-copy--en { display: inline-block; margin: 18px 0 0 -26px; vertical-align: top; font-family: 'Marcellus', serif; font-size: 1.4rem; line-height: 1.2; }
.top-visual-product { position: absolute; bottom: 74px; right: 30px; width: calc(100% - 60px); background-color: #7D8291; z-index: 3; }
.top-visual-product > a { display: flex; align-items: center; position: relative; text-decoration: none; color: #fff; }
.top-visual-product > a::after { content: ''; position: absolute; top: 50%; right: 26px; transform: translateY(-50%); width: 10px; height: 10px; background: url(./_assets/img/icon/external1-white.svg) no-repeat center center; background-size: 100% 100%; }
.top-visual-product__photo { position: relative; aspect-ratio: 1 / 1; width: 27.027027027%; overflow: hidden; }
.top-visual-product__photo img { position: absolute; top: 0; left: 0; }
.top-visual-product__title { padding: 10px 26px; width: calc(100% - 27.027027027%); }
.top-visual-product__title--en,
.top-visual-product__title--ja { margin: 0; line-height: 1.8; }
.top-visual-product__title--en { margin-bottom: 6px; font-family: 'futura-pt', sans-serif; font-size: 1.2rem; font-weight: 400; }
.top-visual-product__title--ja { font-size: 1.4rem; font-weight: 400; letter-spacing: 0.1em; }
.top-visual-down { position: absolute; bottom: 28px; margin: 0; line-height: 1.2; z-index: 2; }
.top-visual-down > a { display: inline-block; text-decoration: none; vertical-align: top; font-family: 'futura-pt', sans-serif; font-size: 1.2rem; font-weight: 400; }

.top-visual-copy--ja,
.top-visual-copy--en,
.top-visual-product,
.top-visual-down { transition: opacity 1.2s ease; opacity: 0; }

.is-loaded .top-visual-copy--ja,
.is-loaded .top-visual-copy--en,
.is-loaded .top-visual-product,
.is-loaded .top-visual-down { transition-delay: 0.6s; opacity: 1; }

@media screen and (max-width: 768px) {
  .top-visual-down { right: 28px; }
}

@media screen and (min-width: 769px) {
  .top-visual { height: calc(100dvh - 72px); }
  .top-visual-copy { margin-top: -40px; }
  .top-visual-copy--ja { top: -20px; margin-bottom: -20px; font-size: 5.2rem; line-height: 1.6; }
  .top-visual-copy--en { margin: 22px 0 0 -32px; font-size: 1.8rem; }
  .top-visual-product { bottom: 50px; right: 50px; width: 416px; }
  .top-visual-product > a::after { right: 30px; width: 12px; height: 12px; }
  .top-visual-product__photo { width: 27.6442307692%; }
  .top-visual-product__title { padding: 12px 30px; width: calc(100% - 27.6442307692%); }
  .top-visual-product__title--en { margin-bottom: 8px; }
  .top-visual-down { bottom: 34px; left: 68px; }
  .top-visual-down > a { font-size: 1.4rem; }
}

/* introduce */
.top-introduce { position: relative; padding: 100px 0 180px; color: #fff; }
.top-introduce a { color: #fff; }
.top-introduce-copy { margin: 0; font-size: 2.4rem; font-weight: 400; line-height: 1.8; }
.top-introduce-text { margin: 60px 0 0; font-size: 1.4rem; line-height: 2.3; }

@media screen and (max-width: 768px) {
}

@media screen and (min-width: 769px) {
  .top-introduce { padding: 130px 0 100px; }
  .top-introduce > .l-wrap { padding: 0 54px; }
  .top-introduce-content { max-width: 648px; }
  .top-introduce-copy { font-size: 2.8rem; }
  .top-introduce-text { font-size: 1.4rem; }
}

/* content */
.top-content { position: relative; padding-top: 110px; background-color: #fff; z-index: 2; }

/* why */
.top-why-lead { margin: 0; text-align: center; font-size: 1.4rem; line-height: 2.1; }
.top-why-reason { margin: 46px 0; }
.top-why-reason__box { margin: 0; padding: 18px 30px; background-color: #F5F5F5; }
.top-why-reason__box__title { display: flex; justify-content: center; align-items: center; position: relative; text-align: center; font-size: 1.8rem; }
.top-why-reason__box__title i { display: inline-block; margin-right: 7px; width: 21px; vertical-align: top; line-height: 1.2; }
.top-why-reason__box__text { margin: 0; padding-top: 26px; font-size: 1.4rem; line-height: 2.1; }
.top-why-text { margin: 0; text-align: center; font-size: 1.4rem; line-height: 2.1; }

@media screen and (max-width: 768px) {
  .top-why-reason__box:not(:first-child) { margin-top: 23px; }
  .top-why-reason__box__title { cursor: pointer; }
  .top-why-reason__box__title::before,
  .top-why-reason__box__title::after { content: ''; position: absolute; top: 50%; right: 0; transition: transform 0.4s ease; width: 12px; height: 2px; background-color: #222; }
  .top-why-reason__box__title::after { transform: rotate(90deg); }
  .top-why-reason__box__title.is-active::after { transform: rotate(0); }
  .top-why-reason__box__text { display: none; }
}

@media screen and (min-width: 769px) {
  .top-why-reason { display: flex; flex-wrap: wrap; }
  .top-why-reason__box { margin: 20px 20px 0 0; padding: 36px 30px; width: calc(50% - 20px); }
  .top-why-reason__box:nth-of-type(-n+2) { margin-top: 0; }
  .top-why-reason__box:nth-of-type(2n) { margin-right: 0; }
  .top-why-reason__box__title { font-size: 2rem; }
  .top-why-reason__box__title i { width: 25px; }
  .top-why-reason__box__text { display: block !important; padding-top: 18px !important; height: auto !important; font-size: 1.2rem; }
}

/* feature */
.top-feature { margin-top: 110px; }
.top-feature-lists__box { margin: 0; }
.top-feature-lists__box__title { margin-bottom: 26px; text-align: center; font-size: 1.8rem; line-height: 1.5; }
.top-feature-lists__box__title i { display: block; margin: 0 auto 26px; height: 70px; }
.top-feature-lists__box__title i img { height: 100%; }
.top-feature-lists__box__text { margin: 0; font-size: 1.4rem; line-height: 1.8; }
.top-feature-attention { margin: 0; font-size: 1rem; line-height: 1.2; color: #bbb; }

@media screen and (max-width: 768px) {
  .top-feature-lists__item { padding: 0 30px 46px; }
  .top-feature-lists__item:not(:first-child) { padding-top: 50px; border-top: 1px solid #bbb; }
}

@media screen and (min-width: 769px) {
  .top-feature-lists { display: flex; flex-wrap: wrap; margin: 50px auto 0; max-width: 1020px; }
  .top-feature-lists__item { padding: 0 40px; border-right: 1px solid #bbb; width: calc(100% / 4); }
  .top-feature-lists__item:nth-of-type(-n+4) { margin-top: 0; }
  .top-feature-lists__item:nth-of-type(4n) { margin-right: 0; border-right: none; }
  .top-feature-lists__box__title { margin-bottom: 22px; font-size: 1.6rem; }
  .top-feature-lists__box__title i { margin-bottom: 25px; height: 55px; }
  .top-feature-lists__box__text { font-size: 1.2rem; }
  .top-feature-attention { margin: 26px auto 0; max-width: 1020px; text-align: right; }
}

/* example */
.top-example { margin-top: 120px; }
.top-example-frame { display: block; position: relative; padding: 36px 28px; background: url(./_assets/img/top/example_bg.webp) repeat center center; background-size: cover; text-decoration: none; color: #fff; }
.top-example .title-block-1 { margin-bottom: 26px; text-align: left; }
.top-example-lead { margin: 0; font-size: 1.4rem; line-height: 1.8; }
.top-example-lists { display: flex; flex-wrap: wrap; }
.top-example-lists__item { position: relative; padding: 10px 10px 28px; }
.top-example-lists__item::before,
.top-example-lists__item::after { content: ''; position: absolute; background-repeat: no-repeat; background-position: left top; background-size: 100% 100%; }
.top-example-lists__item::before { top: 1px; right: 1px; width: calc(100% + 2px); height: calc(100% + 2px); background-image: url(./_assets/img/top/example_balloon1.png); z-index: 2; }
.top-example-lists__item::after { top: 0; left: 0; width: 100%; height: 100%; background-image: url(./_assets/img/top/example_balloon2.png); z-index: 1; }
.top-example-lists__box { position: relative; margin: 0; z-index: 3; }
.top-example-lists__box__title { display: flex; justify-content: center; align-items: center; margin-bottom: 5px; text-align: center; font-family: 'futura-pt', sans-serif; font-size: 1rem; font-weight: 400; }
.top-example-lists__box__title::before { content: ''; display: inline-block; margin-right: 2px; width: 6px; height: 5px; background: url(./_assets/img/icon/check1-white.svg) no-repeat center center; background-size: 100% 100%; }
.top-example-lists__box__text { margin: 0; text-align: center; font-size: 1.2rem; line-height: 1.5; }

@media screen and (max-width: 768px) {
  .top-example-lists { margin-top: 36px; }
  .top-example-lists__item { margin: 10px 6px 0 0; width: calc(50% - 3px); }
  .top-example-lists__item:nth-of-type(-n+2) { margin-top: 0; }
  .top-example-lists__item:nth-of-type(2n) { margin-right: 0; }
  .top-example .link-1 { margin-top: 40px; }
}

@media screen and (min-width: 769px) {
  .top-example-frame { display: flex; justify-content: space-between; align-items: flex-start; padding: 56px 60px; }
  .top-example .title-block-1--ja { font-size: 4.2rem; }
  .top-example-top { width: 36.2385321101%; }
  .top-example-lists { width: 56.880733945%; }
  .top-example-lists__item { margin: 20px 32px 0 0; padding: 18px 18px 40px; width: calc(50% - 16px); }
  .top-example-lists__item:nth-of-type(-n+2) { margin-top: 0; }
  .top-example-lists__item:nth-of-type(2n) { margin-right: 0; }
  .top-example-lists__item::before { top: 4px; right: 4px; width: calc(100% + 8px); height: calc(100% + 8px); }
  .top-example-lists__box__title { margin-bottom: 10px; font-size: 1.2rem; }
  .top-example-lists__box__title::before { margin-right: 3px; width: 11px; height: 9px; }
  .top-example-lists__box__text { font-size: 1.4rem; }
  .top-example .link-1 { position: absolute; bottom: 60px; left: 60px; width: 100%; }
}

@media screen and (min-width: 769px) and (max-width: 1000px) {
  .top-example .link-1 { width: calc(36.2385321101% - 60px); max-width: inherit; }
}

/* pickup */
.top-pickup { margin-top: 110px; }

@media screen and (max-width: 768px) {
}

@media screen and (min-width: 769px) {
}

/* about */
.top-about { margin-top: 120px; padding: 64px 0 70px; background: url(./_assets/img/top/about_bg.webp) repeat center center; background-size: cover; color: #fff; }
.top-about-copy { margin: 0 0 26px; font-size: 2.4rem; line-height: 1.2; }
.top-about-text { margin: 0; font-size: 1.4rem; line-height: 1.8; }
.top-about-bnr { margin-top: 66px; }
.top-about-bnr__item > a { display: block; position: relative; text-decoration: none; border-radius: 4px; color: #fff; overflow: hidden; }
.top-about-bnr__title { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); margin: 0; width: 100%; text-align: center; font-size: 1.6rem; line-height: 1.2; z-index: 2; }
.top-about-bnr__title::after { content: ''; display: inline-block; margin: 7px 0 0 10px; width: 8px; height: 7px; background: url(./_assets/img/icon/arrow1-white.svg) no-repeat center center; background-size: 100% 100%; vertical-align: top; }
.top-about-bnr__photo { position: relative; z-index: 1; }

@media screen and (max-width: 768px) {
  .top-about-bnr__item:not(:first-child) { margin-top: 20px; }
}

@media screen and (min-width: 769px) {
  .top-about { padding: 70px 0 80px; }
  .top-about > .l-wrap { max-width: 1030px; }
  .top-about-copy { margin-bottom: 30px; font-size: 2.8rem; }
  .top-about-bnr { display: flex; flex-wrap: wrap; margin-top: 46px; }
  .top-about-bnr__item { margin: 30px 30px 0 0; width: calc(50% - 15px); }
  .top-about-bnr__item:nth-of-type(-n+2) { margin-top: 0; }
  .top-about-bnr__item:nth-of-type(2n) { margin-right: 0; }
  .top-about-bnr__item > a { border-radius: 6px; }
  .top-about-bnr__title { font-size: 2rem; }
  .top-about-bnr__title::after { margin-top: 11px; }
}

/* basicset */
.top-basicset { margin-top: 110px; }
.top-basicset .title-block-2 { text-align: center; }
.top-basicset-detail { position: relative; padding: 50px 20px; background-color: #F5F5F5; }
.top-basicset-detail__content { position: relative; }
.top-basicset-detail__content__top { display: flex; align-items: center; }
.top-basicset-detail__copy { display: flex; justify-content: center; align-items: center; margin: 0; width: 85px; height: 85px; background-color: #CA3558; border-radius: 50%; text-align: center; font-size: 1.2rem; line-height: 1.4; color: #fff; }
.top-basicset-detail__title { margin: 0 0 0 13px; width: calc(100% - 98px); font-size: 2.2rem; font-weight: 400; line-height: 1.5; }
.top-basicset-detail__text { margin: 26px 0 0 ; font-size: 1.4rem; line-height: 1.8; }
.top-basicset-detail__lists { display: flex; flex-wrap: wrap; }
.top-basicset-detail__lists__item { position: relative; }
.top-basicset-detail__lists__photo { position: absolute; top: 50%; left: -25.9259259259%; transform: translateY(-50%); width: 42.5925925926%; text-align: center; z-index: 2; }
.top-basicset-detail__lists__circle { position: relative; padding-bottom: calc(100% - 2px); width: 100%; height: 0; border: 1px solid #bbb; border-radius: 50%; overflow: hidden; }
.top-basicset-detail__lists__text { position: absolute; top: 50%; left: 0; transform: translateY(-50%); margin: 0; width: 100%; text-align: center; font-size: 2.79069767442vw; line-height: 1.8; z-index: 3; }
.top-basicset-detail .btn-onlinestore { display: flex; flex-wrap: wrap; margin-top: 50px; }
.top-basicset-detail .btn-onlinestore-item { margin: 8px 8px 0 0; width: calc(50% - 4px); }
.top-basicset-detail .btn-onlinestore-item:nth-of-type(-n+2) { margin-top: 0; }
.top-basicset-detail .btn-onlinestore-item:nth-of-type(2n) { margin-right: 0; }

@media screen and (max-width: 768px) {
  .top-basicset-detail { display: flex; flex-flow: column; }
  .top-basicset-detail__content { order: 2; }
  .top-basicset-detail__lists { margin: 46px 32px 0; }
  .top-basicset-detail__lists__item { margin: 30px 50px 0 0; width: calc(50% - 25px); }
  .top-basicset-detail__lists__item:nth-of-type(-n+2) { margin-top: 0; }
  .top-basicset-detail__lists__item:nth-of-type(2n) { margin-right: 0; }
  .top-basicset-detail__photo { order: 1; margin-bottom: 30px; }
  .top-basicset-detail .link-1 { order: 3; margin-top: 50px; }
}

@media screen and (min-width: 769px) {
  .top-basicset-detail { display: grid; grid-template-columns: 44.5454545455% 49.0909090909%; column-gap: 6.36363636364%; padding: 70px 40px 70px 70px; }
  .top-basicset-detail__content { grid-row: 1 / 3; }
  .top-basicset-detail__copy { display: flex; justify-content: center; align-items: center; margin: 0; width: 85px; height: 85px; background-color: #CA3558; border-radius: 50%; text-align: center; font-size: 1.2rem; line-height: 1.4; color: #fff; }
  .top-basicset-detail__title { margin: 0 0 0 13px; width: calc(100% - 98px); font-size: 3.2rem; font-weight: 400; line-height: 1.5; }
  .top-basicset-detail__text { margin: 26px 0 0 ; font-size: 1.4rem; line-height: 1.8; }
  .top-basicset-detail__lists { margin-top: 26px; padding-left: 22px; }
  .top-basicset-detail__lists__photo { left: -28%; width: 51.1111111111%; }
  .top-basicset-detail__lists__photo.is-size-full { left: -36%; }
  .top-basicset-detail__lists__text { font-size: 1rem; }
  .top-basicset-detail .btn-onlinestore { margin-right: 28px; }
  .top-basicset-detail .btn-onlinestore-item { margin: 14px 14px 0 0; width: calc(50% - 7px); }
  .top-basicset-detail__photo { grid-row: 1 / 2; }
  .top-basicset-detail .link-1 { grid-row: 2; margin: 112px 0 0 auto; width: 100%; }

}

@media screen and (min-width: 769px) and (max-width: 1000px) {
  .top-basicset-detail__lists { padding-left: 0; }
  .top-basicset-detail__lists__item { margin: 20px 60px 0 0; width: calc(50% - 30px); }
  .top-basicset-detail__lists__item:nth-of-type(-n+2) { margin-top: 0; }
  .top-basicset-detail__lists__item:nth-of-type(2n) { margin-right: 0; }
  .top-basicset-detail .btn-onlinestore { display: block; margin-right: 0; }
  .top-basicset-detail .btn-onlinestore-item { margin: 14px 0 0; width: 100%; }
  .top-basicset-detail .btn-onlinestore-item:nth-of-type(-n+2) { margin-top: 14px; }
  .top-basicset-detail .btn-onlinestore-item:first-child { margin-top: 0; }
}

@media screen and (min-width: 1001px) {
  .top-basicset-detail__lists__item { margin: 35px 35px 0 0; width: calc((100% / 4) - (35px / (4 / 3))); }
  .top-basicset-detail__lists__item:nth-of-type(-n+4) { margin-top: 0; }
  .top-basicset-detail__lists__item:nth-of-type(4n) { margin-right: 0; }
}

/* specialset */
.top-specialset { margin-top: 110px; }
.top-specialset .title-block-2 { text-align: center; }

@media screen and (max-width: 768px) {
  .top-specialset .lists-products-item:not(:first-child) { margin-top: 50px; }
}

@media screen and (min-width: 769px) {
  .top-specialset .lists-products { display: grid; grid-template-columns: repeat(3, 1fr); grid-column-gap: 20px; }
  .top-specialset .lists-products-item { margin-top: 50px; }
  .top-specialset .lists-products-item:nth-of-type(-n+3) { margin-top: 0; }
}

/* seller */
.top-seller { position: relative; margin-top: 110px; }

@media screen and (max-width: 768px) {
}

@media screen and (min-width: 769px) {
}

/* category */
.top-category { margin-top: 110px; padding: 64px 0 70px; background: url(./_assets/img/share/bg1.webp) repeat left top; background-size: 100%; }
.top-category-block:not(:first-child) { margin-top: 46px; }
.top-category-block__title { position: relative; margin: 0; line-height: 1.2; }
.top-category-block__title > button { display: block; width: 100%; font-size: 1.8rem; font-weight: 400; line-height: 1.2; }
.top-category-block__content { position: relative; }
.top-category-btns { display: flex; flex-wrap: wrap; }
.top-category-btns__item > a { display: flex; align-items: center; position: relative; padding: 13px 8px; height: 100%; background-color: #fff; text-decoration: none; }
.top-category-btns__item > a::after { content: ''; position: absolute; top: 50%; right: 8px; transform: translateY(-50%); width: 8px; height: 7px; background: url(./_assets/img/icon/arrow1.svg) repeat center center; background-size: 100% 100%; }
.top-category-btns__photo { width: 28.6585365854%; }
.top-category-btns__info { margin-left: 8px; padding-right: 18px; width: calc((100% - 28.6585365854%) - 8px); }
.top-category-btns--ja,
.top-category-btns--en { margin: 0; line-height: 1.2; }
.top-category-btns--ja { font-size: 1.4rem; }
.top-category-btns--en { margin-top: 2px; font-family: 'futura-pt', sans-serif; font-size: 1rem; font-weight: 400; }

@media screen and (max-width: 768px) {
  .top-category-block__title > button::before,
  .top-category-block__title > button::after { content: ''; position: absolute; top: 50%; right: 0; width: 12px; height: 2px; background-color: #222; }
  .top-category-block__title > button::after { transition: transform 0.4s ease; transform: rotate(90deg); }
  .top-category-block__title > button.is-active::after { transform: rotate(0); }
  .top-category-block__content { display: none; padding-top: 26px; }
  .top-category-btns__item { margin: 15px 10px 0 0; width: calc(50% - 5px); }
  .top-category-btns__item:nth-of-type(-n+2) { margin-top: 0; }
  .top-category-btns__item:nth-of-type(2n) { margin-right: 0; }
}

@media screen and (min-width: 769px) {
  .top-category { background-size: cover; }
  .top-category-block:not(:first-child) { margin-top: 56px; }
  .top-category-block__title { margin-bottom: 42px; }
  .top-category-block__title > button { pointer-events: none; font-size: 2rem; }
  .top-category-block__content { display: flex !important; height: auto !important; }
  .top-category-btns__item > a { padding: 13px 20px 13px 13px; }
  .top-category-btns__item > a::after { right: 20px; }
  .top-category-btns__photo { width: 25.1012145749%; }
  .top-category-btns__info { margin-left: 17px; width: calc((100% - 25.1012145749%) - 17px); }
  .top-category-btns--en { font-size: 1.2rem; }
}

@media screen and (min-width: 769px) and (max-width: 1000px) {
  .top-category-btns__item { margin: 20px 20px 0 0; width: calc((100% / 3) - (20px / (3 / 2))); }
  .top-category-btns__item:nth-of-type(-n+3) { margin-top: 0; }
  .top-category-btns__item:nth-of-type(3n) { margin-right: 0; }
}

@media screen and (min-width: 1001px) {
  .top-category-btns__item { margin: 20px 20px 0 0; width: calc((100% / 4) - (20px / (4 / 3))); }
  .top-category-btns__item:nth-of-type(-n+4) { margin-top: 0; }
  .top-category-btns__item:nth-of-type(4n) { margin-right: 0; }
}

/* set */
.top-set { margin-top: 110px; }

@media screen and (max-width: 768px) {
}

@media screen and (min-width: 769px) {
}

/* topics */
.top-topics { margin-top: 110px; }
.top-topics-lists__item > a { display: flex; justify-content: space-between; align-items: center; position: relative; padding: 10px 13px; min-height: 145px; background-color: #EBEDF3; text-decoration: none; color: #222; }
.top-topics-lists__photo { width: 26.1627906977%; }
.top-topics-lists__info { width: 69.476744186%; }
.top-topics-lists__title { margin: 0; font-size: 1.6rem; font-weight: 400; line-height: 1.2; }
.top-topics-lists__text { margin: 12px 0 0; font-size: 1.2rem; line-height: 1.5; }
.top-topics-lists__link { position: absolute; bottom: 18px; right: 20px; margin: 0; text-align: right; font-size: 1.2rem; line-height: 1.2; }
.top-topics-lists__link > span { display: inline-block; position: relative; padding-right: 26px; vertical-align: top; }
.top-topics-lists__link > span::after { content: ''; position: absolute; top: 50%; right: 0; transform: translateY(-50%); width: 8px; height: 6px; background: url(./_assets/img/icon/arrow1.svg) no-repeat center center; background-size: 100% 100%; }

@media screen and (max-width: 768px) {
  .top-topics .title-block-2 { text-align: center; }
  .top-topics-lists__item:not(:first-child) { margin-top: 20px; }
  .top-topics-lists__item > a::after { content: ''; position: absolute; top: 50%; right: 13px; transform: translateY(-50%); width: 7px; height: 7px; background: url(./_assets/img/icon/arrow1.svg) no-repeat center center; background-size: 100% 100%; }
  .top-topics-lists__info { padding-right: 20px; }
  .top-topics-lists__link { display: none; }
}

@media screen and (min-width: 769px) {
  .top-topics { margin-top: 140px; }
  .top-topics-lists { display: flex; flex-wrap: wrap; }
  .top-topics-lists__item { margin: 25px 25px 0 0; width: calc(50% - (25px / 2)); }
  .top-topics-lists__item > a { height: 100%; min-height: 176px; }
  .top-topics-lists__item:nth-of-type(-n+2) { margin-top: 0; }
  .top-topics-lists__item:nth-of-type(2n) { margin-right: 0; }
  .top-topics-lists__item > a { align-items: flex-start; padding: 18px 20px; }
  .top-topics-lists__photo { width: 24.3902439024%; }
  .top-topics-lists__info { margin-left: 20px; width: calc((100% - 24.3902439024%) - 20px); }
  .top-topics-lists__title { font-size: 1.8rem; }
  .top-topics-lists__text { margin-top: 18px; padding-bottom: 16px; font-size: 1.2rem; line-height: 1.8; }
}

/* sns */
.top-sns { margin-top: 110px; }
.top-sns-links { display: flex; flex-wrap: wrap; }
.top-sns-links__item { margin-top: 30px; width: 50%; }
.top-sns-links__item:nth-of-type(-n+2) { margin-top: 0; }
.top-sns-links__item > a { display: inline-flex; align-items: center; text-decoration: none; vertical-align: top; }
.top-sns-links__item i { position: relative; margin-right: 10px; width: 39px; height: 39px; background-color: #7D8291; border-radius: 50%; }
.top-sns-links__item i img { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 22px; }
.top-sns-links__item strong { font-family: 'futura-pt', 'Zen Kaku Gothic Antique', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'Meiryo', 'メイリオ', 'ＭＳ Ｐゴシック', 'MS P Gothic', Osaka, Arial, Helvetica, Verdana, sans-serif; font-size: 1.4rem; font-weight: 400; }
.top-sns-links__item span { font-size: 1.2rem; }
.top-sns-movie { position: relative; padding-bottom: 62.5%; width: 100%; height: 0; overflow: hidden; }
.top-sns-movie iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

@media screen and (max-width: 768px) {
  .top-sns .title-block-2 { text-align: center; }
  .top-sns-links { margin-top: 50px; padding: 0 35px; }
}

@media screen and (min-width: 769px) {
  .top-sns > .l-wrap { max-width: 1045px; }
  .top-sns-content { display: grid; grid-template-columns: 55.7213930348%; grid-column-gap: 80px; }
  .top-sns .title-block-2 { grid-column: 2 / 3; grid-row: 1; align-content: flex-end; }
  .top-sns-movie { grid-column: 1; grid-row: 1 / 3; }
  .top-sns-links { grid-column: 2 / 3; grid-row: 2; align-content: flex-start; }
  .top-sns-links__item { margin-top: 15px; }
}

/* page about
------------------------------------------------ */
/* nav */
.about-nav { margin-bottom: 114px; }
.about-nav-links__item > a { display: flex; align-items: center; position: relative; text-decoration: none; }
.about-nav-links__item > a::after { content: ''; position: absolute; top: 50%; right: 0; transform: translateY(-50%) rotate(90deg); width: 10px; height: 9px; background: url(./_assets/img/icon/arrow1.svg) no-repeat center center; background-size: 100% 100%; }
.about-nav-links__item i { margin-right: 12px; width: 24px; height: 24px; }
.about-nav-links__name { margin: 0; padding: 2px 10px 2px 15px; border-left: 1px solid #bbb; font-size: 1.6rem; letter-spacing: 0.1em; line-height: 1.2; }

@media screen and (max-width: 768px) {
  .about-nav-links__item:not(:first-child) { margin-top: 40px; }
}

@media screen and (min-width: 769px) {
  .about-nav { margin-bottom: 140px; }
  .about-nav > .l-wrap { max-width: 894px; }
  .about-nav-links { display: flex; flex-wrap: wrap; }
  .about-nav-links__item { margin: 40px 80px 0 0; width: calc((100% / 3) - (80px / (3 / 2))); }
  .about-nav-links__item:nth-of-type(-n+3) { margin-top: 0; }
  .about-nav-links__item:nth-of-type(3n) { margin-right: 0; }
  .about-nav-links__item i { margin-right: 10px; }
  .about-nav-links__name { font-size: 1.4rem; }
}

/* concept */
.about-concept-text { margin: 0; font-size: 1.4rem; line-height: 2.1; }
.about-concept-photo { position: relative; margin-top: 60px; padding-bottom: 86.0465116279%; width: 100%; height: 0; overflow: hidden; }
.about-concept-photo img { position: absolute; top: 0; left: 0; }

@media screen and (min-width: 769px) {
  .about-concept > .l-wrap { display: flex; justify-content: flex-start; max-width: 1080px }
  .about-concept .title-block-3 { width: 50%; }
  .about-concept-text { padding-top: 58px; width: 50%; }
  .about-concept-photo { margin-top: 130px; padding-bottom: 768px; }
}

/* btns */
.about-btns { margin-top: 120px; }

/* philosophy */
.about-philosophy { margin-top: 120px; }
.about-philosophy-text { margin: 0; font-size: 1.4rem; letter-spacing: 0.1em; line-height: 2.1; }
.about-philosophy-lists { display: flex; margin-top: 40px; }
.about-philosophy-lists__item { position: relative; margin: 14px 14px 0 0; padding-bottom: 6.97674418605vw; width: calc((100% / 3) - (14px / (3 / 2))); }
.about-philosophy-lists__item:nth-of-type(-n+3) { margin-top: 0; }
.about-philosophy-lists__item:nth-of-type(3n) { margin-right: 0; }
.about-philosophy-lists__info { position: relative; padding-bottom: 100%; width: 100%; height: 0; border: 1px solid #bbb; border-radius: 50%; overflow: hidden; }
.about-philosophy-lists__text { position: absolute; top: 50%; left: 0; transform: translateY(-50%); margin: 0; width: 100%; text-align: center; font-size: 1.2rem; line-height: 1.8; }
.about-philosophy-lists__item i { position: absolute; bottom: 0; }
.about-philosophy-lists__item:nth-of-type(1) i { left: 4.18604651163vw; width: 13.9534883721vw; }
.about-philosophy-lists__item:nth-of-type(2) i { left: 6.66744186047vw; width: 13.1790697674vw; }
.about-philosophy-lists__item:nth-of-type(3) i { left: 4.85348837209vw; width: 16.8093023256vw; }

@media screen and (max-width: 768px) {
  .about-philosophy { padding: 0 30px; }
  .about-philosophy-photo { margin-bottom: 56px; }
}

@media screen and (min-width: 769px) {
  .about-philosophy { display: flex; align-items: flex-end; }
  .about-philosophy-photo { width: 49.7222222222%; }
  .about-philosophy-content { margin-left: 6.94444444444%; width: 35.4166666667%; }
  .about-philosophy-lists { margin-top: 60px; }
  .about-philosophy-lists__item { margin: 38px 38px 0 0; padding-bottom: 7.45098039216%; width: calc((100% / 3) - (38px / (3 / 2))); }
  .about-philosophy-lists__item:nth-of-type(1) i { left: 15.1724137931%; width: 52.4137931034%; }
  .about-philosophy-lists__item:nth-of-type(2) i { left: 24.8275862069%; width: 49.6551724138%; }
  .about-philosophy-lists__item:nth-of-type(3) i { left: 17.9310344828%; width: 63.4482758621%; }
}

@media screen and (min-width: 769px) and (max-width: 1000px) {
  .about-philosophy-lists__item { margin: 3.8vw 3.8vw 0 0; width: calc((100% / 3) - (3.8vw / (3 / 2))); }
  .about-philosophy-lists__text { font-size: 1.2vw; }
}

/* thought */
.about-thought { margin-top: 150px; padding: 60px 0 70px; background: url(./_assets/img/share/bg1.webp) repeat left top; background-size: cover; }
.about-thought-copy { margin: 0; font-size: 2rem; line-height: 1.8; }
.about-thought-text { margin: 30px 0 0; font-size: 1.4rem; line-height: 2.1; }
.about-thought-lists { margin-top: 60px; }
.about-thought-lists__item:not(:first-child) { margin-top: 60px; }
.about-thought-lists__num { margin: 0 0 26px; font-family: 'Marcellus', serif; font-size: 3.2rem; font-weight: 400; line-height: 1.2; }
.about-thought-lists__title { margin: 0; font-size: 2rem; font-weight: 400; letter-spacing: 0.1em; line-height: 1.8; }
.about-thought-lists__text { margin: 22px 0 0; font-size: 1.4rem; line-height: 2.3; }

@media screen and (max-width: 768px) {
  .about-thought-lists__photo { margin-bottom: 34px; }
}

@media screen and (min-width: 769px) {
  .about-thought { padding: 70px 0 110px; }
  .about-thought > .l-wrap { max-width: 1080px; }
  .about-thought-copy { font-size: 2.2rem; }
  .about-thought-lists { margin-top: 62px; }
  .about-thought-lists__text { margin-top: 32px; }
  .about-thought-lists__item { display: flex; justify-content: space-between; align-items: center; }
  .about-thought-lists__item:not(:first-child) { margin-top: 80px; }
  .about-thought-lists__photo { width: 44.2307692308%; }
  .about-thought-lists__info { width: 50.3846153846%; }
  .about-thought-lists__num { margin-bottom: 38px; font-size: 3.2rem; }
  .about-thought-lists__text { margin-top: 38px; font-size: 1.2rem; }
}

/* manufacturer */
.about-manufacturer { margin-top: 120px; }
.about-manufacturer-block:not(:first-child) { margin-top: 60px; }
.about-manufacturer-block__title { margin: 0; font-size: 2rem; font-weight: 400; letter-spacing: 0.1em; line-height: 1.8; }
.about-manufacturer-block__text { margin: 22px 0 0; font-size: 1.4rem; letter-spacing: 0.1em; line-height: 2.1; }
.about-manufacturer-block__photos { margin-top: 30px; }

@media screen and (max-width: 768px) {
  .about-manufacturer-block__photos img:not(:first-child) { margin-top: 15px; }
}

@media screen and (min-width: 769px) {
  .about-manufacturer > .l-wrap { max-width: 1080px; }
  .about-manufacturer-block:not(:first-child) { margin-top: 65px; }
  .about-manufacturer-block__title { font-size: 2.2rem; }
  .about-manufacturer-block__text { margin-top: 32px; }
  .about-manufacturer-block__photos { display: flex; flex-wrap: wrap; margin-top: 50px; }
  .about-manufacturer-block__photos img { margin: 40px 40px 0 0; width: calc(50% - 20px); }
  .about-manufacturer-block__photos img:nth-of-type(-n+2) { margin-top: 0; }
  .about-manufacturer-block__photos img:nth-of-type(2n) { margin-right: 0; }
}

/* sdgs */
.about-sdgs { margin-top: 100px; padding: 60px 0 70px; background-color: #FBFBFB; }
.about-sdgs-text { margin: 0; font-size: 1.4rem; letter-spacing: 0.1em; line-height: 2.1; }
.about-sdgs-lists { margin-top: 35px; }
.about-sdgs-lists__item { display: flex; align-items: flex-start; }
.about-sdgs-lists__item:not(:first-child) { margin-top: 30px; }
.about-sdgs-lists__icon { width: 80px; height: 80px; }
.about-sdgs-lists__info { margin-left: 14px; width: calc(100% - 94px); }
.about-sdgs-lists__text { margin: 0; font-size: 1.4rem; line-height: 1.5; }
.about-sdgs-lists__checks { margin-top: 10px; }
.about-sdgs-lists__checks__item { position: relative; padding-left: 13px; font-size: 1.2rem; line-height: 1.5; }
.about-sdgs-lists__checks__item::before { content: ''; position: absolute; top: 6px; left: 0; width: 11px; height: 9px; background: url(./_assets/img/icon/check1.svg) no-repeat center center; background-size: 100% 100%; }
.about-sdgs-product { margin-top: 100px; }
.about-sdgs-product__lists__item:not(:first-child) { margin-top: 30px; }
.about-sdgs-product__lists__photo { position: relative; }
.about-sdgs-product__lists__photo { position: relative; }
.about-sdgs-product__lists__photo > a { display: block; position: relative; aspect-ratio: 1 / 0.63120567375; text-decoration: none; }
.about-sdgs-product__lists__photo img { position: absolute; top: 0; left: 0; z-index: 1; }
.about-sdgs-product__lists__icons { position: absolute; top: 8px; left: 8px; z-index: 2; }
.about-sdgs-product__lists__icons i { display: block; font-style: normal; }
.about-sdgs-product__lists__icons i + i { margin-top: 8px; }
.about-sdgs-product__lists__icons span { display: inline-block; padding: 5px 3px; background-color: #fff; vertical-align: top; font-size: 1.1rem; line-height: 1.2; color: #7D8291; }
.about-sdgs-product__lists__title { margin: 0; font-size: 2rem; font-weight: 400; letter-spacing: 0.1em; line-height: 1.8; }
.about-sdgs-product__lists__title > a { display: inline-block; text-decoration: none; vertical-align: top; }
.about-sdgs-product__lists .btn-onlinestore { display: flex; flex-wrap: wrap; margin-top: 10px; }
.about-sdgs-product__lists .btn-onlinestore-item { margin: 8px 8px 0 0; width: calc(50% - 4px); }
.about-sdgs-product__lists .btn-onlinestore-item:nth-of-type(-n+2) { margin-top: 0; }
.about-sdgs-product__lists .btn-onlinestore-item:nth-of-type(2n) { margin-right: 0; }
.about-sdgs-product__lists .btn-1 { margin-top: 20px; }

@media screen and (max-width: 768px) {
  .about-sdgs-lists__checks__item:not(:first-child) { margin-top: 2px; }
  .about-sdgs-product__lists__photo { margin-bottom: 8px; }
}

@media screen and (min-width: 769px) {
  .about-sdgs { padding: 80px 0 100px; }
  .about-sdgs > .l-wrap { display: flex; align-items: flex-start; max-width: 1080px; }
  .about-sdgs .title-block-3 { width: 36.0576923077%; }
  .about-sdgs-content { padding-top: 60px; width: 63.9423076923%; }
  
  .about-sdgs-lists__item { align-items: center; }
  .about-sdgs-lists__item:not(:first-child) { margin-top: 20px; }
  .about-sdgs-lists__icon { width: 76px; height: 76px; }
  .about-sdgs-lists__info { margin-left: 20px; width: calc(100% - 96px); }
  .about-sdgs-lists__text { font-size: 1.6rem; }
  .about-sdgs-lists__checks { display: flex; flex-wrap: wrap; margin: 2px 0 0 -10px; }
  .about-sdgs-lists__checks__item { margin: 10px 0 0 10px; }
  .about-sdgs-product { margin-top: 70px; }
  .about-sdgs-product__lists__item { display: flex; }
  .about-sdgs-product__lists__item:not(:first-child) { margin-top: 30px; }
  .about-sdgs-product__lists__photo { width: calc(100% - 374px); }
  .about-sdgs-product__lists__icons { top: 10px; left: 10px; }
  .about-sdgs-product__lists__icons i + i { margin-top: 10px; }
  .about-sdgs-product__lists__icons span { padding: 5px 3px; font-size: 1rem; }
  .about-sdgs-product__lists__info { margin-left: 20px; width: 354px; }
  .about-sdgs-product__lists__title { margin-top: -10px; font-size: 1.8rem; }
  .about-sdgs-product__lists .btn-onlinestore { margin-top: 18px; }
  .about-sdgs-product__lists .btn-onlinestore-item { margin: 5px 5px 0 0; width: calc(50% - (5px / 2)); }
  .about-sdgs-product__lists .btn-onlinestore-item > a { height: 33px; font-size: 1rem; }
  .about-sdgs-product__lists .btn-onlinestore-item .sup { font-size: 1rem; }
  .about-sdgs-product__lists .btn-1 { margin-top: 22px; }
  .about-sdgs-product__lists .btn-1 > a { width: 100%; }
}

@media screen and (min-width: 769px) and (max-width: 1000px) {
  .about-sdgs-product__lists__photo { width: 56%; }
  .about-sdgs-product__lists__info { margin-left: 4%; width: 40%; }
  .about-sdgs-product__lists .btn-onlinestore { display: block; }
  .about-sdgs-product__lists .btn-onlinestore-item { margin: 5px 0 0; width: 100%; }
  .about-sdgs-product__lists .btn-onlinestore-item:nth-of-type(-n+2) { margin-top: 5px; }
  .about-sdgs-product__lists .btn-onlinestore-item:first-child { margin-top: 0; }
  .about-sdgs-product__lists .btn-1 > a { min-width: inherit; }
}

/* company */
.about-company { margin-top: 110px; }
.about-company-box { margin: 0; }
.about-company-box:not(:first-child) { margin-top: 26px; }
.about-company-box__title { font-size: 1.6rem; letter-spacing: 0.1em; line-height: 1.8; }
.about-company-box__text { margin: 0; font-size: 1.4rem; letter-spacing: 0.1em; line-height: 1.8; }

@media screen and (max-width: 768px) {
  .about-company > .l-wrap { display: flex; flex-flow: column; }
  .about-company .title-block-3 { order: 1; }
  .about-company-content { order: 3; }
  .about-company-box__title { margin-bottom: 8px; }
  .about-company-photo { order: 2; margin-bottom: 62px; }
}

@media screen and (min-width: 769px) {
  .about-company { margin-top: 120px; }
  .about-company > .l-wrap { display: flex; align-items: flex-start; }
  .about-company .title-block-3 { width: 24.7933884298%; }
  .about-company-content,
  .about-company-photo { padding-top: 60px; }
  .about-company-content { width: 434px; }
  .about-company-box { display: flex; }
  .about-company-box:not(:first-child) { margin-top: 26px; }
  .about-company-box__title { width: 130px; }
  .about-company-box__text { width: calc(100% - 130px); }
  .about-company-photo { margin-left: auto; width: 34.132231405%; }
}

/* product
------------------------------------------------ */
/* nav */
.product-nav-lists__item > button { display: block; padding: 17px 0; width: 100%; font-size: 1.6rem; line-height: 1.8; }
.product-nav-lists__item > button > span { display: inline-block; position: relative; vertical-align: top; }
.product-nav-lists__item > button > span::before,
.product-nav-lists__item > button > span::after { content: ''; position: absolute; top: 50%; right: 5px; width: 12px; height: 2px; background-color: #222; }
.product-nav-lists__item > button > span::after { transition: transform 0.4s ease; transform: rotate(90deg); }
.product-nav-lists__item > button[aria-expanded=true] > span::after { transform: rotate(0); }
.product-nav-content { display: none; position: relative; }
.product-nav-title { margin: 0 0 34px; font-size: 1.6rem; line-height: 1.8; }
.product-nav-btns { display: flex; flex-wrap: wrap; }
.product-nav-btns__item > a { display: flex; align-items: center; position: relative; padding: 13px 8px; background-color: #fff; border: 1px solid #bbb; text-decoration: none; }
.product-nav-btns__item > a::after { content: ''; position: absolute; top: 50%; right: 8px; transform: translateY(-50%); width: 8px; height: 7px; background: url(./_assets/img/icon/arrow1.svg) repeat center center; background-size: 100% 100%; }
.product-nav-btns__photo { width: 28.6585365854%; }
.product-nav-btns__info { margin-left: 8px; padding-right: 18px; width: calc((100% - 28.6585365854%) - 8px); }
.product-nav-btns--ja,
.product-nav-btns--en { margin: 0; line-height: 1.2; }
.product-nav-btns--ja { font-size: 1.4rem; }
.product-nav-btns--en { margin-top: 2px; font-family: 'futura-pt', sans-serif; font-size: 1rem; font-weight: 400; }
 
@media screen and (max-width: 768px) {
  .product-nav { padding: 0 30px; }
  .product-nav-lists__item { border-bottom: 1px solid #bbb; }
  .product-nav-sort__item > a { display: block; position: relative; padding: 17px 0; width: 100%; border-bottom: 1px solid #bbb; text-decoration: none; font-size: 1.6rem; line-height: 1.8; }
  .product-nav-sort__item > a::after { content: ''; position: absolute; top: 50%; right: 5px; transform: translateY(-50%); width: 10px; height: 9px; background: url(./_assets/img/icon/arrow1.svg) no-repeat center center; background-size: 100% 100%; }
  .product-nav-lists__item > button > span { display: block; }
  .product-nav-content { padding: 6px 0 25px; }
  .product-nav-title { display: none; }
  .product-nav-content .product-nav-sort { display: none; }
  .product-nav-btns__item { margin: 15px 10px 0 0; width: calc(50% - 5px); }
  .product-nav-btns__item:nth-of-type(-n+2) { margin-top: 0; }
  .product-nav-btns__item:nth-of-type(2n) { margin-right: 0; }
}

@media screen and (min-width: 769px) {
  .product-nav > .product-nav-sort { display: none; }
  .product-nav-lists { display: flex; justify-content: center; }
  .product-nav-lists__item { min-width: 176px; }
  .product-nav-lists__item:not(:first-child) { margin-left: 50px; }
  .product-nav-lists__item > button { padding: 12px 0; border-bottom: 1px solid #bbb; text-align: center; font-size: 1.4rem; }
  .product-nav-lists__item > button > span { padding-right: 20px; }
  .product-nav-lists__item > button > span::before,
  .product-nav-lists__item > button > span::after { right: 0; width: 10px; height: 1px; }
  .product-nav-lists__item > button[aria-expanded=true] { border-bottom-color: #222; color: #222; }
  .product-nav-lists__item > button[aria-expanded=true] > span::before,
  .product-nav-lists__item > button[aria-expanded=true] > span::after { background-color: #222; }
  .product-nav-content { display: block !important; pointer-events: none; position: absolute; top: 78px; left: 50%; transition: opacity 0.4s ease; transform: translateX(-50%); width: 100%; height: auto !important; max-width: 1208px; opacity: 0; }
  .product-nav-content[aria-hidden=false] { pointer-events: inherit; opacity: 1; }
  .product-nav-multi { display: flex; }
  .product-nav-sort { padding: 34px 40px; width: 242px; background-color: #7D8291; }
  .product-nav-sort__item:not(:first-child) { margin-top: 10px; }
  .product-nav-sort__item > a { display: block; position: relative; text-decoration: none; font-size: 1.4rem; line-height: 1.8; color: #fff; }
  .product-nav-sort__item > a::after { content: ''; position: absolute; top: 50%; right: 0; transform: translateY(-50%); width: 10px; height: 9px; background: url(./_assets/img/icon/arrow1-white.svg) no-repeat center center; background-size: 100% 100%; }
  .product-nav-category { padding: 32px 40px; width: calc(100% - 242px); background-color: #fff; }
  .product-nav-btns { display: flex !important; height: auto !important; }
  .product-nav-btns__item { margin: 18px 18px 0 0; }
  .product-nav-btns__item > a { padding: 13px 20px 13px 13px; height: 100%; }
  .product-nav-btns__item > a::after { right: 20px; }
  .product-nav-btns__photo { width: 25.1012145749%; }
  .product-nav-btns__info { margin-left: 17px; width: calc((100% - 25.1012145749%) - 17px); }
  .product-nav-btns--en { font-size: 1.2rem; }
  .product-nav-overlay { pointer-events: none; position: fixed; top: 0; left: 0; transition: opacity 0.4s ease; width: 100%; height: 100%; background-color: rgba(34,34,34,0.7); opacity: 0; z-index: 5; }

  .is-nav-open .product-nav-lists__item > button[aria-expanded=false] > span::before,
  .is-nav-open .product-nav-lists__item > button[aria-expanded=false] > span::after { background-color: #bbb; }
  .is-nav-open .product-nav-lists__item > button[aria-expanded=false] { color: #bbb; }
  .is-nav-open .product-nav-overlay { pointer-events: inherit; opacity: 1; }
}

@media screen and (min-width: 769px) and (max-width: 1000px) {
  .product-nav-btns__item { width: calc(50% - 9px); }
  .product-nav-btns__item:nth-of-type(-n+2) { margin-top: 0; }
  .product-nav-btns__item:nth-of-type(2n) { margin-right: 0; }
  .product-nav-lists__item { min-width: 17.6vw; }
  .product-nav-lists__item:not(:first-child) { margin-left: 5vw; }
}

@media screen and (min-width: 1001px) {
  .product-nav-btns__item { width: calc((100% / 3) - (18px / (3 / 2))); }
  .product-nav-btns__item:nth-of-type(-n+3) { margin-top: 0; }
  .product-nav-btns__item:nth-of-type(3n) { margin-right: 0; }
}

/* seller */
.product-seller { margin-top: 140px; }
.product-seller .title-block-1 { text-align: left; }

@media screen and (max-width: 768px) {
  .product-seller .title-block-1--en { font-size: 1.4rem; }
}

@media screen and (min-width: 769px) {
}

/* recommend */
.product-recommend { margin-top: 140px; }
.product-recommend .title-block-1 { text-align: left; }

@media screen and (max-width: 768px) {
  .product-recommend .title-block-1--en { font-size: 1.4rem; }
}

@media screen and (min-width: 769px) {
  .product-recommend .lists-products .btn-onlinestore-item { margin: 8px 8px 0 0; width: calc((100% / 3) - (8px / (3 / 2))); }
  .product-recommend .lists-products .btn-onlinestore-item.is-onlinestore { margin: 0; width: 100%; }
  .product-recommend .lists-products .btn-onlinestore-item.is-onlinestore > a { height: 39px; }
  .product-recommend .lists-products .btn-onlinestore-item:nth-of-type(3n+1) { margin-right: 0; }
  .product-recommend .lists-products .btn-onlinestore-item > a { height: 33px; font-size: 1rem; }
}

@media screen and (min-width: 769px) and (max-width: 1000px) {
  .product-recommend .lists-products .btn-onlinestore-item { width: 100%; }
}

/* archive */
.product-archive .lists-products { display: grid; }

@media screen and (max-width: 768px) {
  .product-archive .lists-products { grid-template-columns: repeat(2, 1fr); grid-column-gap: 10px; }
  .product-archive .lists-products-item { margin-top: 50px; }
  .product-archive .lists-products-item:nth-of-type(-n+2) { margin-top: 0; }
  .product-archive .lists-products-item:nth-of-type(2n) { margin-right: 0; }
}

@media screen and (min-width: 769px) {
  .product-archive .lists-products { grid-column-gap: 23px; }
  .product-archive .lists-products-item { margin-top: 70px; }
}

@media screen and (min-width: 769px) and (max-width: 1000px) {
  .product-archive .lists-products { grid-template-columns: repeat(3, 1fr); }
  .product-archive .lists-products-item:nth-of-type(-n+3) { margin-top: 0; }
}

@media screen and (min-width: 1001px) {
  .product-archive .lists-products { grid-template-columns: repeat(4, 1fr); }
  .product-archive .lists-products-item:nth-of-type(-n+4) { margin-top: 0; }
}

/* detail */
.product-detail { position: relative; padding-top: 50px; }
.product-detail-title { margin: 0; font-size: 2.4rem; font-weight: 400; line-height: 1.8; }
.product-detail-subtitle { margin: 4px 0 0; font-size: 1.4rem; font-weight: 400; letter-spacing: 0.1em; line-height: 1.8; }
.product-detail-categories { display: flex; flex-wrap: wrap; align-items: flex-start; margin: 16px 0 0 -8px; }
.product-detail-categories a { margin: 8px 0 0 8px; padding: 4px 6px; border: 1px solid #bbb; text-decoration: none; font-size: 1rem; line-height: 1.2; }
.product-detail-online { position: relative; margin-top: 52px; }
.product-detail-online__title { position: relative; margin: 0 0 14px; padding-left: 22px; font-family: 'futura-pt', sans-serif; font-size: 1.6rem; font-weight: 400; line-height: 1.8; }
.product-detail-online__title::before { content: ''; position: absolute; top: 8px; left: 0; width: 22px; height: 13px; background: url(./_assets/img/icon/cart1.svg) no-repeat center center; background-size: 100% 100%; }
.product-detail-online__note { position: absolute; top: 3px; right: 0; margin: 0; font-size: 1.2rem; line-height: 1.8; }
.product-detail-online .btn-onlinestore { display: flex; flex-wrap: wrap; }
.product-detail-online .btn-onlinestore-item { margin: 8px 8px 0 0; width: calc(50% - 4px); }
.product-detail-online .btn-onlinestore-item:nth-of-type(-n+2) { margin-top: 0; }
.product-detail-online .btn-onlinestore-item:nth-of-type(2n) { margin-right: 0; }
.product-detail-gallery { position: relative; }
.product-detail-gallery__icons { position: absolute; top: 8px; left: 8px; z-index: 2; }
.product-detail-gallery__icons i { display: block; font-style: normal; }
.product-detail-gallery__icons i + i { margin-top: 8px; }
.product-detail-gallery__icons span { display: inline-block; padding: 5px 3px; background-color: #fff; vertical-align: top; font-size: 1.1rem; line-height: 1.2; color: #7D8291; }
.product-detail-gallery .splide { position: relative; z-index: 1; }
.product-detail-gallery__lists__photo { position: relative; height: 100%; }
.product-detail-gallery .splide__arrows { display: block; position: absolute; top: auto; bottom: 8px; left: 50%; transform: translateX(-50%); margin: 0; width: 138px; height: 9px; }
.product-detail-gallery .splide__arrow { position: absolute; top: 0; margin: 0; width: 10px; height: 9px; background: none; border: none; }
.product-detail-gallery .splide__arrow--prev { left: 0; }
.product-detail-gallery .splide__arrow--next { right: 0; }
.product-detail-gallery__numbering { display: flex; justify-content: center; order: 3; margin-top: 20px; }
.product-detail-gallery__numbering span { position: relative; font-family: 'futura-pt', sans-serif; font-size: 1.4rem; font-weight: 400; line-height: 1.8; }
.product-detail-gallery__numbering .total { margin-left: 12px; padding-left: 12px; }
.product-detail-gallery__numbering .total::before { content: ''; position: absolute; top: 6px; left: 0; width: 1px; height: 13px; background-color: #222; }
.product-detail-content { position: relative; font-size: 1.4rem; letter-spacing: 0.1em; line-height: 1.8; }
.product-detail-content p { margin: 0; }
.product-detail-content p:not(:first-child) { margin-top: 1.8em; }
.product-detail-content .wp-block-heading { margin: 20px 0; font-size: 2.2rem; }
.product-detail-content h1.wp-block-heading { padding-bottom: 10px; font-size: 1.6rem; }
.product-detail-content .step { display: flex; justify-content: center; margin: 20px 0; padding: 0; list-style: none; }
.product-detail-content .step li { display: flex; align-items: center; position: relative; padding: 0 14px 12px; }
.product-detail-content .step li:first-child { padding-left: 0; }
.product-detail-content .step li:last-child { padding-right: 0; }
.product-detail-content .step li::after { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 0; border-bottom: 1px dashed #bbb; }
.product-detail-content .step li:first-child::after,
.product-detail-content .step li:last-child::after { width: calc(((100% - 14px) / 2) + 14px); }
.product-detail-content .step li:first-child::after { left: calc((100% - 14px) / 2); }
.product-detail-content .step li div::before,
.product-detail-content .step li div::after { content: ''; position: absolute; left: 50%; z-index: 2; }
.product-detail-content .step li div::before { bottom: -2px; transform: translateX(-50%); width: 6px; height: 6px; background-color: #bbb; border-radius: 50%; }
.product-detail-content .step li div::after { display: none; bottom: -25px; transform-origin: left top; transform: rotate(-90deg) translateY(-50%); width: 10px; height: 9px; background: url(./_assets/img/icon/arrow1.svg) no-repeat center center; background-size: 100% 100%; }

.product-detail-content .step li:first-child div::before,
.product-detail-content .step li:first-child div::after { left: calc((100% - 14px) / 2); }
.product-detail-content .step li:last-child div::before,
.product-detail-content .step li:last-child div::after { left: calc((100% + 14px) / 2); }

.product-detail-content .step li .step-en,
.product-detail-content .step li .step-ja { display: block; position: relative; margin: 0; text-align: center; letter-spacing: 0.1em; line-height: 1.8; color: #bbb; }
.product-detail-content .step li .step-en { font-family: 'futura-pt', sans-serif; font-size: 1rem; font-weight: 400; }
.product-detail-content .step li .step-ja { font-size: 1.2rem; }

.product-detail-content .step li.is-active div::before { background-color: #222; }
.product-detail-content .step li.is-active div::after { display: block; }
.product-detail-content .step li.is-active .step-en,
.product-detail-content .step li.is-active .step-ja { color: #222; }

@media screen and (max-width: 768px) {
  .product-detail-article { display: flex; flex-flow: column; }
  .product-detail-hd { order: 2; }
  .product-detail-gallery { order: 1; margin-bottom: 54px; }
  .product-detail-content { order: 3; margin-top: 110px; }
}

@media screen and (min-width: 769px) {
  .product-detail { padding-top: 60px; }
  .product-detail-article { display: grid; grid-column-gap: 60px; grid-template-columns: calc(100% - (480px + 60px)) 480px 1fr; grid-template-rows: auto 1fr; }
  .product-detail-hd { grid-column: 2 / 3; grid-row: 1; position: sticky; top: calc(72px + 40px); }
  .product-detail-title { font-size: 2.2rem; }
  .product-detail-subtitle { margin-top: 4px; }
  .product-detail-online { margin-top: 42px; }
  .product-detail-online .btn-onlinestore-item { margin: 10px 10px 0 0; width: calc(50% - 5px); }

  .product-detail-gallery { grid-column: 1; grid-row: 1 / 3; }
  .product-detail-gallery__icons { top: 10px; left: 10px; }
  .product-detail-gallery__icons i + i { margin-top: 10px; }
  .product-detail-gallery__icons span { padding: 5px 3px; font-size: 1rem; }

  .product-detail-content { grid-column: 1; grid-row: 3 / 4; margin-top: 100px; }
  .product-detail-content .wp-block-heading { font-size: 2.4rem; }
  .product-detail-content h1.wp-block-heading { margin: 50px 0; padding-bottom: 16px; }
  .product-detail-content .wp-block-cover { margin-right: 0; margin-left: 0; }
  .product-detail-content .block-topics { max-width: inherit; }
  .product-detail-content .step { margin: 60px 0; }
  .product-detail-content .step li { padding: 0 50px 16px; }
  .product-detail-content .step li:first-child::after,
  .product-detail-content .step li:last-child::after { width: calc(((100% - 50px) / 2) + 50px); }
  .product-detail-content .step li:first-child::after { left: calc((100% - 50px) / 2); }
  .product-detail-content .step li div::before { bottom: -4px; width: 8px; height: 8px; }
  .product-detail-content .step li div::after { bottom: -28px; }
  .product-detail-content .step li:first-child div::before,
  .product-detail-content .step li:first-child div::after { left: calc((100% - 50px) / 2); }
  .product-detail-content .step li:last-child div::before,
  .product-detail-content .step li:last-child div::after { left: calc((100% + 50px) / 2); }
  .product-detail-content .step li .step-en { font-size: 1.2rem; }
}

@media screen and (min-width: 769px) and (max-width: 1000px) {
  .product-detail-article { grid-column-gap: 4%; grid-template-columns: 56% 40% 1fr; }
  .product-detail-content .step li { padding: 0 2.5vw 1.6vw; }
  .product-detail-content .step li:first-child::after,
  .product-detail-content .step li:last-child::after { width: calc(((100% - 2.5vw) / 2) + 2.5vw); }
  .product-detail-content .step li:first-child::after { left: calc((100% - 2.5vw) / 2); }
  .product-detail-content .step li div::before { bottom: -0.4vw; width: 0.8vw; height: 0.8vw; }
  .product-detail-content .step li div::after { bottom: -2.8vw; width: 1vw; height: 0.9vw; }
  .product-detail-content .step li:first-child div::before,
  .product-detail-content .step li:first-child div::after { left: calc((100% - 2.5vw) / 2); }
  .product-detail-content .step li:last-child div::before,
  .product-detail-content .step li:last-child div::after { left: calc((100% + 2.5vw) / 2); }
  .product-detail-content .step li .step-en { font-size: 1.2vw; }
}

/* topics */
.product-topics { margin-top: 120px; }
.product-topics-lists__photo { position: relative; aspect-ratio: 1 / 1; width: 100%; overflow: hidden; }
.product-topics-lists__item > a { display: block; text-decoration: none; border: 1px solid #bbb; }
.product-topics-lists__photo img { position: absolute; top: 0; left: 0; }
.product-topics-lists__title { position: relative; margin: 0; padding: 26px 44px 26px 20px; font-size: 2rem; font-weight: 400; line-height: 1.5; }
.product-topics-lists__title::after { content: ''; position: absolute; top: 50%; right: 20px; transform: translateY(-50%); width: 8px; height: 7px; background: url(./_assets/img/icon/arrow1.svg) no-repeat center center; background-size: 100% 100%; }

@media screen and (max-width: 768px) {
  .product-topics-lists__item:not(:first-child) { margin-top: 50px; }
}

@media screen and (min-width: 769px) {
  .product-topics { margin-top: 120px; max-width: 1076px; }
  .product-topics-lists { display: flex; }
  .product-topics-lists__item { margin: 30px 30px 0 0; width: calc(50% - 15px); }
  .product-topics-lists__item > a { display: flex; align-items: center; height: 100%; }
  .product-topics-lists__photo { width: 140px; }
  .product-topics-lists__title { padding: 20px 45px 20px 25px; width: calc(100% - 140px); font-size: 1.8rem; }
  .product-topics-lists__title::after { right: 25px; width: 10px; height: 9px; }
}

/* back */
.product-back { margin-top: 120px; }
.product-back .btn-1 { margin-top: 0; }

@media screen and (min-width: 769px) {
  .product-back { margin-top: 150px; }
}

/* topics
------------------------------------------------ */
/* nav */
.topics-nav-lists__item > button { display: block; padding: 17px 0; width: 100%; font-size: 1.6rem; line-height: 1.8; }
.topics-nav-lists__item > button > span { display: inline-block; position: relative; vertical-align: top; }
.topics-nav-lists__item > button > span::before,
.topics-nav-lists__item > button > span::after { content: ''; position: absolute; top: 50%; right: 5px; width: 12px; height: 2px; background-color: #222; }
.topics-nav-lists__item > button > span::after { transition: transform 0.4s ease; transform: rotate(90deg); }
.topics-nav-lists__item > button[aria-expanded=true] > span::after { transform: rotate(0); }
.topics-nav-content { display: none; position: relative; }
.topics-nav-title { margin: 0 0 34px; font-size: 1.6rem; line-height: 1.8; }

.topics-nav-categories__item > a { display: flex; justify-content: space-between; align-items: center; position: relative; padding: 20px 13px; background-color: #EBEDF3; text-decoration: none; color: #222; }
.topics-nav-categories__photo { width: 26.1627906977%; }
.topics-nav-categories__info { width: 69.476744186%; }
.topics-nav-categories__title { margin: 0; font-size: 1.6rem; font-weight: 400; line-height: 1.2; }
.topics-nav-categories__text { margin: 14px 0 0; font-size: 1.2rem; line-height: 1.5; }
.topics-nav-categories__link { position: absolute; bottom: 18px; right: 20px; margin: 0; text-align: right; font-size: 1.2rem; line-height: 1.2; }
.topics-nav-categories__link > span { display: inline-block; position: relative; padding-right: 26px; vertical-align: top; }
.topics-nav-categories__link > span::after { content: ''; position: absolute; top: 50%; right: 0; transform: translateY(-50%); width: 8px; height: 6px; background: url(./_assets/img/icon/arrow1.svg) no-repeat center center; background-size: 100% 100%; }

.topics-nav-keywords { display: flex; flex-wrap: wrap; margin: -12px 0 0 -12px; }
.topics-nav-keywords > a { display: inline-block; margin: 12px 0 0 12px; padding: 10px 15px; background-color: #F5F5F5; border-radius: 20px; text-decoration: none; vertical-align: top; font-size: 1.4rem; letter-spacing: 0.1em; line-height: 1.2; }

@media screen and (max-width: 768px) {
  .topics-nav { padding: 0 30px; }
  .topics-nav-lists__item { border-bottom: 1px solid #bbb; }
  .topics-nav-sort__item > a { display: block; position: relative; padding: 17px 0; width: 100%; border-bottom: 1px solid #bbb; text-decoration: none; font-size: 1.6rem; line-height: 1.8; }
  .topics-nav-sort__item > a::after { content: ''; position: absolute; top: 50%; right: 5px; transform: translateY(-50%); width: 10px; height: 9px; background: url(./_assets/img/icon/arrow1.svg) no-repeat center center; background-size: 100% 100%; }
  .topics-nav-lists__item > button > span { display: block; }
  .topics-nav-content { padding: 6px 0 25px; }
  .topics-nav-title { display: none; }
  .topics-nav-categories__item:not(:first-child) { margin-top: 20px; }
  .topics-nav-categories__item > a::after { content: ''; position: absolute; top: 50%; right: 13px; transform: translateY(-50%); width: 7px; height: 7px; background: url(./_assets/img/icon/arrow1.svg) no-repeat center center; background-size: 100% 100%; }
  .topics-nav-categories__info { padding-right: 20px; }
  .topics-nav-categories__link { display: none; }
}

@media screen and (min-width: 769px) {
  .topics-nav > .topics-nav-sort { display: none; }
  .topics-nav-lists { display: flex; justify-content: center; }
  .topics-nav-lists__item { min-width: 176px; }
  .topics-nav-lists__item:not(:first-child) { margin-left: 50px; }
  .topics-nav-lists__item > button { padding: 12px 0; border-bottom: 1px solid #bbb; text-align: center; font-size: 1.4rem; }
  .topics-nav-lists__item > button > span { padding-right: 20px; }
  .topics-nav-lists__item > button > span::before,
  .topics-nav-lists__item > button > span::after { right: 0; width: 10px; height: 1px; }
  .topics-nav-lists__item > button[aria-expanded=true] { border-bottom-color: #222; color: #222; }
  .topics-nav-lists__item > button[aria-expanded=true] > span::before,
  .topics-nav-lists__item > button[aria-expanded=true] > span::after { background-color: #222; }
  .topics-nav-content { display: block !important; pointer-events: none; position: absolute; top: 78px; left: 50%; transition: opacity 0.4s ease; padding: 42px 82px; transform: translateX(-50%); width: 100%; max-width: 1304px; background-color: #fff; opacity: 0; }
  .topics-nav-content[aria-hidden=false] { pointer-events: inherit; opacity: 1; }
  .topics-nav-categories { display: flex; flex-wrap: wrap; }
  .topics-nav-categories__item { margin: 25px 25px 0 0; width: calc(50% - (25px / 2)); }
  .topics-nav-categories__item:nth-of-type(-n+2) { margin-top: 0; }
  .topics-nav-categories__item:nth-of-type(2n) { margin-right: 0; }
  .topics-nav-categories__item > a { align-items: flex-start; padding: 18px 20px; height: 100%; }
  .topics-nav-categories__photo { width: 24.3902439024%; }
  .topics-nav-categories__info { margin-left: 20px; width: calc((100% - 24.3902439024%) - 20px); }
  .topics-nav-categories__title { font-size: 1.8rem; }
  .topics-nav-categories__text { margin-top: 14px; padding-bottom: 16px; font-size: 1.2rem; line-height: 1.8; }
  .topics-nav-overlay { pointer-events: none; position: fixed; top: 0; left: 0; transition: opacity 0.4s ease; width: 100%; height: 100%; background-color: rgba(34,34,34,0.7); opacity: 0; z-index: 5; }

  .is-nav-open .topics-nav-lists__item > button[aria-expanded=false] > span::before,
  .is-nav-open .topics-nav-lists__item > button[aria-expanded=false] > span::after { background-color: #bbb; }
  .is-nav-open .topics-nav-lists__item > button[aria-expanded=false] { color: #bbb; }
  .is-nav-open .topics-nav-overlay { pointer-events: inherit; opacity: 1; }
  .is-nav-open .l-footer { z-index: 1; }
}

/* archive */
.topics-archive .lists-topics { display: grid; }

@media screen and (max-width: 768px) {
  .topics-archive .lists-topics { grid-template-columns: repeat(2, 1fr); grid-column-gap: 20px; }
  .topics-archive .lists-topics-item { margin-top: 50px; }
  .topics-archive .lists-topics-item:nth-of-type(-n+2) { margin-top: 0; }
}

@media screen and (min-width: 769px) {
  .topics-archive .lists-topics { grid-template-columns: repeat(4, 1fr); grid-column-gap: 36px; }
  .topics-archive .lists-topics-item { margin-top: 65px; }
  .topics-archive .lists-topics-item:nth-of-type(-n+4) { margin-top: 0; }
}

/* detail */
.topics-detail { position: relative; padding-top: 60px; }
.topics-detail-hd { margin-bottom: 24px; padding-bottom: 26px; border-bottom: 1px solid #222; }
.topics-detail-title { margin: 0 0 20px; font-size: 2.4rem; font-weight: 400; letter-spacing: 0.1em; line-height: 1.5; }
.topics-detail-date { margin: 0; font-family: 'futura-pt', sans-serif; font-size: 1.2rem; font-weight: 400; line-height: 1.2; }
.topics-detail-section { position: relative; }
.topics-detail-info { margin-bottom: 30px; }
.topics-detail-cat { margin: 0; font-size: 1.2rem; line-height: 1.2; }
.topics-detail-cat::before { content: ''; display: inline-block; margin: 5px 5px 0 0; width: 6px; height: 6px; border-radius: 50%; vertical-align: top; }
.topics-detail-keywords { display: flex; flex-wrap: wrap; margin: 15px 0 0 -6px; }
.topics-detail-keywords:first-child { margin-top: -8px; }
.topics-detail-keywords > a { display: inline-block; margin: 8px 0 0 6px; padding: 4px 5px; background-color: #F5F5F5; border-radius: 20px; text-decoration: none; vertical-align: top; font-size: 1rem; letter-spacing: 0.1em; line-height: 1.2; }
.topics-detail-content { position: relative; font-size: 1.4rem; letter-spacing: 0.1em; line-height: 1.8; }
.topics-detail-content p { margin: 0; }
.topics-detail-content p:not(:first-child) { margin-top: 1.8em; }
.topics-detail-side__block:not(:first-child) { margin-top: 116px; }
.topics-detail-side__title { margin: 0 0 40px; padding-bottom: 16px; border-bottom: 1px solid #222; font-size: 1.8rem; font-weight: 400; line-height: 1.2; }
.topics-detail-side .lists-topics-item:not(:first-child) { margin-top: 23px; }
.topics-detail-side .lists-topics-item { display: flex; flex-flow: row; align-items: center; width: 100%; }
.topics-detail-side .lists-topics-photo { position: relative; margin: 0; width: 24.3243243243%; }
.topics-detail-side .lists-topics-info { margin-left: 15px; width: calc(100% - (24.3243243243% + 15px)); }
.topics-detail-side .lists-topics-title { font-size: 1.4rem; }

@media screen and (max-width: 768px) {
  .topics-detail > .btn-1 { margin-top: 120px; }
  .topics-detail-side { margin-top: 116px; }
}

@media screen and (min-width: 769px) {
  .topics-detail { padding-top: 120px; }
  .topics-detail-article { display: grid; grid-column-gap: 62px; grid-template-columns: 1fr; }
  .topics-detail-hd { grid-column: 1 / 2; grid-row: 1; padding-bottom: 34px; }
  .topics-detail-title { margin-bottom: 32px; font-size: 2.8rem; }
  .topics-detail-date { font-size: 1.4rem; }
  .topics-detail-section { grid-column: 1; grid-row: 2; }
  .topics-detail-keywords { margin: 18px 0 0 -5px; }
  .topics-detail-keywords > a { margin: 5px 0 0 5px; }
  .topics-detail-keywords:first-child { margin-top: -5px; }
  .topics-detail-side { grid-column: 2 / 2; grid-row: 2 / 3; margin-top: -58px; width: 348px; }
  .topics-detail-side__block:not(:first-child) { margin-top: 76px; }
  .topics-detail-side__title { margin-bottom: 50px; padding-bottom: 16px; font-size: 1.6rem; }
  .topics-detail-side .lists-topics-item:not(:first-child) { margin-top: 30px; }
  .topics-detail-side .lists-topics-photo { width: 80px; }
  .topics-detail-side .lists-topics-info { margin-left: 17px; width: calc(100% - 97px); }
  .topics-detail-side .lists-topics-top { margin-bottom: 10px; }
  .topics-detail-side .lists-topics-cat { font-size: 1rem; }
  .topics-detail-side .lists-topics-date { font-size: 1rem; }
  .topics-detail-side .lists-topics-title { font-size: 1.2rem; }
  .topics-detail-side .btn-1 { margin-top: 50px; }
  .topics-detail-side .btn-1 > a { display: block; width: 100%; }
  .topics-detail > .btn-1 { margin-top: 140px; }
  .topics-detail > .btn-1 > a { min-width: 286px; }
}

@media screen and (min-width: 769px) and (max-width: 1000px) {
  .topics-detail-article { display: block; }
  .topics-detail-side { margin-top: 60px; width: 100%; }
}

/* footer
------------------------------------------------ */
.l-footer { position: relative; margin-top: 150px; padding: 50px 0 20px; background-color: #2A2930; color: #fff; z-index: 10; }
.l-footer a { color: #fff; }
.l-footer-business { margin: 0 0 48px; }
.l-footer-business > a { display: block; position: relative; padding: 26px 30px; background-color: #7D8291; text-decoration: none; color: #fff; }
.l-footer-business > a::after { content: ''; position: absolute; top: 50%; right: 28px; transform: translateY(-50%); width: 15px; height: 15px; background: url(./_assets/img/icon/external1-white.svg) no-repeat center center; background-size: 100% 100%; }
.l-footer-business span,
.l-footer-business strong { display: block; line-height: 1.2; }
.l-footer-business span { font-family: 'futura-pt', sans-serif; font-size: 1.4rem; font-weight: 400; }
.l-footer-business strong { margin-top: 6px; font-size: 1.6rem; font-weight: 400; }
.l-footer-sns { display: flex; align-items: center; margin: 0; }
.l-footer-sns__title { font-family: 'futura-pt', sans-serif; font-size: 1.8rem; font-weight: 400; line-height: 1.2; }
.l-footer-sns__content { margin: 0 0 0 32px; }
.l-footer-sns__links { display: flex; align-items: center; }
.l-footer-sns__links__item { width: 20px; height: 20px; }
.l-footer-sns__links__item:not(:first-child) { margin-left: 30px; }
.l-footer-sns__links__item > a { display: flex; align-items: center; width: 100%; height: 100%; }
.l-footer-onlinestore { margin: 0; }
.l-footer-onlinestore__title { display: flex; align-items: center; margin-bottom: 20px; font-family: 'futura-pt', sans-serif; font-size: 1.8rem; font-weight: 400; line-height: 1.2; }
.l-footer-onlinestore__title::before { content: ''; display: inline-block; margin-right: 8px; width: 16px; height: 15px; background: url(./_assets/img/icon/cart1-white.svg) no-repeat center center; background-size: 100% 100%; }
.l-footer-onlinestore__content { margin: 0; }
.l-footer-sitemap__box { margin: 0; }
.l-footer-sitemap__box__title { margin-bottom: 20px; }
.l-footer-sitemap__box__title > a { display: inline-block; text-decoration: none; vertical-align: top; font-family: 'futura-pt', sans-serif; font-size: 2rem; font-weight: 400; line-height: 1.2; }
.l-footer-sitemap__box__content { margin: 0; }
.l-footer-sitemap__links__item:not(:first-child) { margin-top: 23px; }
.l-footer-sitemap__links__item > a { display: inline-block; text-decoration: none; vertical-align: top; font-size: 1.4rem; line-height: 1.2; }
.l-footer-btm { position: relative; margin-top: 20px; padding-top: 30px; border-top: 1px solid #919191; }
.l-footer-logo { margin: 0; width: 180px; height: 31px; }
.l-footer-logo > a { display: block; width: 100%; height: 100%; }
.l-footer-tel { margin: 0; font-family: 'futura-pt', sans-serif; font-size: 1.6rem; font-weight: 400; line-height: 1.2; }
.l-footer-email { margin: 0; font-family: 'futura-pt', sans-serif; font-size: 1.6rem; font-weight: 400; line-height: 1.2; }
.l-footer-copyright { margin: 0; font-family: 'Poppins', sans-serif; font-size: 1rem; font-weight: 400; color: #919191; }
.l-footer-copyright > small { font-size: inherit; }
.l-footer-pagetop { pointer-events: none; position: fixed; bottom: 108px; right: 30px; transition: opacity 0.4s ease; width: 60px; height: 60px; opacity: 0; z-index: 3; }
.l-footer-pagetop > a { display: block; position: relative; width: 100%; height: 100%; background-color: #7D8291; border-radius: 50%; text-indent: -9999px; white-space: nowrap; overflow: hidden; }
.l-footer-pagetop > a::after { content: ''; position: absolute; top: 50%; left: 50%; transform-origin: left top; transform: rotate(-90deg) translate(-50%,-50%); width: 14px; height: 13px; background: url(./_assets/img/icon/arrow1-white.svg) no-repeat center center; background-size: 100% 100%; }

.single .l-footer { margin-top: 20px; }
.is-over-wh .l-footer-pagetop { pointer-events: inherit; opacity: 1; }

@media screen and (max-width: 768px) {
  .l-footer-content__left { margin-top: 46px; }
  .l-footer-content__right { display: flex; flex-flow: column-reverse; }
  .l-footer-onlinestore .btn-onlinestore { display: flex; flex-wrap: wrap; }
  .l-footer-onlinestore .btn-onlinestore-item { margin: 10px 10px 0 0; width: calc(50% - 5px); }
  .l-footer-onlinestore .btn-onlinestore-item:nth-of-type(-n+2) { margin-top: 0; }
  .l-footer-onlinestore .btn-onlinestore-item:nth-of-type(2n) { margin-right: 0; }
  .l-footer-sitemap { margin-top: 46px; }
  .l-footer-sitemap__box:not(:first-child) { margin-top: 42px; }
  .l-footer-content { display: flex; flex-flow: column-reverse; }
  .l-footer-logo { margin-bottom: 26px; }
  .l-footer-email { margin-top: 12px; }
  .l-footer-copyright { margin-top: 36px; text-align: center; }
}

@media screen and (min-width: 769px) {
  .l-footer { margin-top: 180px; padding: 80px 0 30px; }
  .l-footer-content { display: flex; }
  .l-footer-content__left { width: 297px; }
  .l-footer-business { margin-bottom: 40px; }
  .l-footer-business > a { padding: 22px 30px; }
  .l-footer-business span { font-size: 1.2rem; }
  .l-footer-business strong { margin-top: 8px; }
  .l-footer-sns__title { font-size: 1.6rem; }
  .l-footer-sns__content { margin-left: 20px; }
  .l-footer-sns__links__item:not(:first-child) { margin-left: 14px; }
  .l-footer-content__right { display: flex; justify-content: flex-end; width: calc(100% - 297px); }
  .l-footer-sitemap { display: flex; }
  .l-footer-sitemap__box { min-width: 130px; }
  .l-footer-sitemap__box:not(:first-child) { margin-left: 40px; }
  .l-footer-sitemap__box__title > a { font-size: 1.8rem; }
  .l-footer-sitemap__links__item:not(:first-child) { margin-top: 10px; }
  .l-footer-sitemap__links__item > a { font-size: 1.2rem; }
  .l-footer-onlinestore { margin-left: 40px; width: 190px; }
  .l-footer-onlinestore .btn-onlinestore-item:not(:first-child) { margin-top: 15px; }
  .l-footer-onlinestore .btn-onlinestore-item > a { justify-content: flex-start; padding-left: 20px; font-size: 1.6rem; }
  .l-footer-onlinestore .btn-onlinestore-item > a::before { width: 20px; height: 20px; }
  .l-footer-btm { display: flex; align-items: center; margin-top: 80px; padding-top: 30px; }
  .l-footer-logo { margin-right: 40px; }
  .l-footer-email { margin-left: 12px; }
  .l-footer-copyright { margin-left: auto; }
  .l-footer-pagetop { display: none; }

  .is-single .l-footer { margin-top: 20px; }
}

@media screen and (min-width: 769px) and (max-width: 1000px) {
  .l-footer-content { display: block; }
  .l-footer-content__right { justify-content: space-between; margin-top: 40px; width: 100%; }
  .l-footer-btm { flex-wrap: wrap; }
}

/* fixed
------------------------------------------------ */
/* contact */
.l-fixed-contact { display: flex; justify-content: center; align-items: center; pointer-events: none; position: fixed; bottom: 20px; right: 20px; transition: opacity 0.4s ease; width: calc(100% - 40px); height: 64px; background-color: #CA3558; border-radius: 200px; opacity: 0; z-index: 15; }
.l-fixed-contact__tel { margin: 0; }
.l-fixed-contact__tel > a { display: inline-block; text-decoration: none; vertical-align: top; font-family: 'futura-pt', sans-serif; font-size: 1.8rem; font-weight: 400; line-height: 1.2; color: #fff; }
.l-fixed-contact__tel > a::before { content: ''; display: inline-block; margin: 4px 7px 0 0; width: 14px; height: 14px; background: url(./_assets/img/icon/tel1-white.svg) no-repeat center center; background-size: 100%; vertical-align: top; }
.l-fixed-contact__chat { position: relative; margin: 0 0 0 15px; padding-left: 15px; }
.l-fixed-contact__chat::after { content: ''; position: absolute; top: 1px; left: 0; width: 1px; height: 16px; background-color: #fff; }
.l-fixed-contact__chat > a { display: inline-block; text-decoration: none; vertical-align: top; font-size: 1.6rem; font-weight: 400; line-height: 1.2; color: #fff; }
.l-fixed-contact__chat > a::before { content: ''; display: inline-block; margin: 2px 7px 0 0; width: 18px; height: 18px; background: url(./_assets/img/icon/chat1-white.svg) no-repeat center center; background-size: 100%; vertical-align: top; }

.is-over-wh .l-fixed-contact { pointer-events: inherit; opacity: 1; }

@media screen and (min-width: 769px) {
  .l-fixed-contact { right: 50px; width: 344px; height: 55px; }
  .l-fixed-contact__tel > a { font-size: 1.6rem; }
  .l-fixed-contact__tel > a::before { margin: 3px 6px 0 0; width: 12px; height: 12px; }
  .l-fixed-contact__chat { margin-left: 20px; padding-left: 20px; }
  .l-fixed-contact__chat::after { height: 15px; }
  .l-fixed-contact__chat > a { font-size: 1.4rem; }
  .l-fixed-contact__chat > a::before { margin: 2px 6px 0 0; width: 14px; height: 14px; }
}

/* onlinestore */
.l-fixed-onlinestore { pointer-events: none; position: fixed; bottom: 20px; right: 20px; transition: opacity 0.4s ease; width: 138px; opacity: 0; z-index: 15; }
.l-fixed-onlinestore > a { display: block; padding: 4px 0; width: 100%; background-color: #7D8291; border-radius: 20px; text-align: center; text-decoration: none; font-size: 1.6rem; font-weight: 400; line-height: 1.8; color: #fff; }
.l-fixed-onlinestore > a::after { content: ''; display: inline-block; transform-origin: left top; transform: rotate(-90deg); margin: 20px 0 0 6px; width: 10px; height: 9px; background: url(./_assets/img/icon/arrow1-white.svg) no-repeat center center; background-size: 100% 100%; vertical-align: top; }

.is-over-wh .l-fixed-onlinestore { pointer-events: inherit; opacity: 1; }

@media screen and (min-width: 769px) {
  .l-fixed-onlinestore { display: none; }
}

/* notfound */
.notfound-title { margin: 0; text-align: center; font-family: 'futura-pt', sans-serif; font-size: 4rem; font-weight: 400; }

@media screen and (min-width: 769px) {
  .notfound-title { font-size: 12rem; }
}