@charset "UTF-8";

/* fonts */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&family=Noto+Serif+JP:wght@400;500;700&display=swap');

.product-frame {
  position: relative;
  line-height: 1.5;
  color: #333;
  font-size: 1.6rem;
  font-weight: 400;
  font-style: normal;
  font-family: 'Noto Sans JP', YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
  -webkit-font-smoothing: antialiased;
}
.mincho {
  font-family: 'Noto Serif JP', "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
}
.product-frame a {
  color: inherit;
  text-decoration: underline;
  transition: all 0.3s ease 0s;
}
.product-frame a:hover {
  color: inherit;
  text-decoration: none;
  opacity: 0.5;
}
img[src$=".svg"] {
  width: 100%;
}
.product-frame img {
  max-width: 100%;
}
/* common custom */
#productSection {
  max-width: none;
  padding-right: 0;
  padding-left: 0;
}
#productSection .productDetail {
  max-width: 1120px;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 767px) {
  #productSection .productDetail {
    padding-right: 3%;
    padding-left: 3%;
  }
}

/*
 *  utility
 * ------------------------------------------------------------------- */
 .product-frame .wrap {
  max-width: 120rem;
  margin: 0 auto;
  padding: 0 3.5rem;
}
.product-frame .inner {
  padding-left: 22.8rem;
}
.product-frame .inner.both {
  padding-right: 22.8rem;
}
@media screen and (min-width: 768px) and (max-width: 1088px) {
}
/* display */
@media screen and (min-width:1280px) {
  .hide-pc-l {
    display: none;
  }
}
@media screen and (min-width:960px) {
  .hide-pc.show-tb {
    display: none;
  }
}
@media screen and (max-width:959px) {
  .hide-pc.show-tb {
    display: inline-block;
  }
}
@media screen and (min-width:768px) {
  .hide-pc {
    display: none;
  }
}
@media screen and (max-width:767px) {
  .hide-sp {
    display: none;
  }
}
/* btn */
.order__btn {
  display: inline-block;
  position: relative;
  min-width: 36rem;
  padding: 0.75em 1em 0.85em;
  border-radius: 2em;
  color: #fff !important;
  font-weight: bold;
  font-size: 2.4rem;
  text-align: center;
  text-decoration: none !important;
  background-color: #444444;
}
.order__btn::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  right: 2.8rem;
  bottom: 0;
  margin: auto;
  width: 1.8rem;
  height: 1.8rem;
  border-top: 0.2rem solid #fff;
  border-right: 0.2rem solid #fff;
  transform: rotate(45deg);
}
.border__btn {
  display: inline-block;
  position: relative;
  min-width: 25.3rem;
  padding: 0.95em 3.0em 1.1em 2.6em;
  border-radius: 2em;
  border: 1px solid #333;
  text-align: center;
  text-decoration: none !important;
}
.border__btn::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  right: 1.4rem;
  bottom: 0;
  margin: auto;
  width: 1.2rem;
  height: 1.2rem;
  border-top: 1px solid #333;
  border-right: 1px solid #333;
  transform: rotate(45deg);
}
.link {
  display: inline-block;
  position: relative;
  padding-left: 1.8em;
}
.link::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0.2em;
  margin: auto;
  width: 0.9rem;
  height: 0.9rem;
  border-top: 1px solid #666;
  border-right: 1px solid #666;
  transform: rotate(45deg);
}
/* heading */
.heading-a {
  margin-bottom: 6rem;
  line-height: 1.3;
  font-size: 6.8rem;
  font-weight: 500;
  font-feature-settings: "palt";
  letter-spacing: 0.1em;
}
.heading-b {
  margin-bottom: 7rem;
  line-height: 1.53;
  font-size: 6rem;
  font-weight: 500;
  font-feature-settings: "palt";
  letter-spacing: 0.1em;
}
.heading-c {
  margin-top: 10rem;
  margin-bottom: 8.4rem;
  font-size: 4.8rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  white-space: nowrap;
}
.heading-c.mb-s {
  margin-bottom: 4.5rem;
}
/* notes */
.notes {
  margin-top: 2.5em;
  padding-left: 1em;
  text-indent: -1em;
  font-size: 1.2rem;
}
.notes__list > div {
  display: flex;
  width: 100%;
  text-align: left;
}
.notes__list > div:not(:first-child) {
  margin-top: 1em;
}
.notes__list dt {
  flex-shrink: 0;
  margin-right: 0.5em;
}
@keyframes fadeInDown {
  0% {
    transform: translate3d(0, -3rem, 0);
    opacity: 0;
  }
  100% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@keyframes arrowmove{
  0%{ transform: translate3d(0, 0, 0); }
  33%{ transform: translate3d(0, 1rem, 0); }
  66%{ transform: translate3d(0, 0, 0); }
}


/* main
* ------------------------------------------------------------------- */
.main__contents {
  position: relative;
  padding: 0 0 21rem;
}

/* mv
* ------------------------------------------------------------------- */
.mv {
  background-color: #fff;
}
.mv .wrap {
  position: relative;
  max-width: 160rem;
  padding: 0;
  overflow: hidden;
}
.mv .wrap::before {
  content: '';
  display: block;
  padding-top: 49.78%;
}
.mv__img__wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.mv .mv__img {
  opacity: 0;
}
.mv .mv__box {
  position: absolute;
  top: 35%;
  left: 8.93%;
  z-index: 2;
  width: 42.75%;
}
.mv .mv__box .mv__title {
  opacity: 0;
}
.mv .mv__box p {
  margin-top: 1.5em;
  color: #fff;
  line-height: 1.68;
  font-size: 2.34vw;
  letter-spacing: 0.1em;
  text-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.2);
  opacity: 0;
}
@media screen and (min-width: 1600px) {
  .mv .mv__box p {
    font-size: 3.2rem;
  }
}

/* message
* ------------------------------------------------------------------- */
.message {
  padding-top: 10.8rem;
  padding-bottom: 12.2rem;
  overflow: hidden;
  text-align: center;
}
.message .wrap {
  padding-right: 0;
  padding-left: 0;
}
.message__title {
  margin-bottom: 5.4rem;
  font-weight: 400;
  font-size: 4rem;
  letter-spacing: 0.1em;
}
.message__copy {
  line-height: 2.29;
  font-size: 2.4rem;
  letter-spacing: 0.1em;
}

/* product
* ------------------------------------------------------------------- */
.product {
  padding-top: 10.8rem;
  padding-bottom: 12.2rem;
  background-color: #F4F0EC;
}
.product__name {
  max-width: 40.8rem;
  margin: 0 auto 6.2rem;
  aspect-ratio: 408 / 60;
}
.product__img {
  max-width: 48rem;
  margin: 0 auto;
  aspect-ratio: 480 / 480;
}
.product__detail {
  margin-top: 7rem;
  text-align: center;
}

/* features
* ------------------------------------------------------------------- */
.features__block {
  padding-top: 10.8rem;
  padding-bottom: 12.2rem;
}
.features__block.-beige {
  background-color: #F4F0EC;
}
/* horizontal__block */
.horizontal__block {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
.horizontal__block.-reverse {
  flex-direction: row-reverse;
}
.horizontal__block .features__detail {
  width: 53.98%;
}
.horizontal__block .features__img {
  width: 38.93%;
}
.horizontal__block.-img-l .features__detail {
  width: 46.81%;
}
.horizontal__block.-img-l .features__img {
  width: 44.24%;
}
.features1__img__box {
  aspect-ratio: 500 / 557;
}
.features3__img__box {
  aspect-ratio: 440 / 440;
}
.features__title {
  max-width: 38.1rem;
  margin-bottom: 2.8rem;
  margin-left: -4%;
  aspect-ratio: 381 / 163;
}
.features__topics {
  margin-bottom: 0.7em;
  font-family: 'Noto Serif JP', "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
  font-size: 1.2rem;
}
.features__hd {
  margin-bottom: 1.1em;
  font-family: 'Noto Serif JP', "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
  font-size: 4rem;
  font-weight: 400;
  letter-spacing: 0.1em;
}
.features__hd.offset {
  margin-right: -1em;
}
.features__text {
  line-height: 2;
  letter-spacing: 0.15em;
}
.features__text + .features__text {
  margin-top: 1em;
}
.onecopy__example {
  margin-top: 6rem;
}
.onecopy__example .example__img:not(:first-child) {
  margin-top: 5.3rem;
}
.product-frame .onecopy__happiness {
  max-width: 29rem;
}
.product-frame .onecopy__day {
  max-width: 14.9rem;
}
.onecopy__example p {
  margin-top: 0.7em;
}
/* gold-embossing__block */
.gold-embossing__wrap {
  display: flex;
  width: 100%;
  margin-top: 11rem;
  overflow-y: hidden;
  overflow-x: auto;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.gold-embossing__wrap + .gold-embossing__wrap {
  margin-top: 4.5rem;
}
.gold-embossing__wrap::-webkit-scrollbar {
  display:none;
}
.gold-embossing__block {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  min-width: 76.8rem;
  margin: 0 auto;
}
.gold-embossing__item {
  width: 29%;
  margin-left: 6.5%;
  text-align: center;
}
.gold-embossing__item:nth-of-type(3n+1) {
  margin-left: 0;
}
.gold-embossing__item p {
  margin-top: 1em;
  font-size: 1.4rem;
}
/* swiper */
.img-slider .swiper-slide {
  position: relative;
}
.img-slider .swiper-slide::before {
  content: '';
  display: block;
  padding-top: 100%;
}
.img-slider .swiper-slide img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.swiper-controll {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  margin-top: 3.2rem;
}
.swiper-controll .swiper-pagination {
  display: flex;
  position: relative;
  bottom: auto;
  width: auto;
  margin-right: 2.4rem;
  margin-left: 2.4rem;
}
.swiper-controll .swiper-pagination-bullet {
  width: 1rem;
  height: 1rem;
  background-color: #ccc;
  opacity: 1;
  margin: 0 0.8rem;
}
.swiper-controll .swiper-pagination-bullet-active {
  background-color: #444;
}
.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 0.8rem;
}
.swiper-controll .swiper-button-prev,
.swiper-controll .swiper-button-next {
  position: relative;
  top: auto;
  right: auto;
  left: auto;
  width: 1.3rem;
  height: 2.5rem;
  margin-top: 0;
  color: #333;
}
.swiper-controll .swiper-button-prev::after,
.swiper-controll .swiper-button-next::after {
  width: 1.3rem;
  height: 2.5rem;
  color: #333;
  font-size: 3rem;
}
.swiper-controll .swiper-button-prev::after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 1.8rem;
  height: 1.8rem;
  border-top: 1px solid #333;
  border-right: 1px solid #333;
  font-size: inherit;
  transform: rotate(-135deg);
}
.swiper-controll .swiper-button-next::after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 1.8rem;
  height: 1.8rem;
  border-top: 1px solid #333;
  border-right: 1px solid #333;
  font-size: inherit;
  transform: rotate(45deg);
}

/* spec
* ------------------------------------------------------------------- */
.spec__mv {
  position: relative;
}
.spec__mv .wrap {
  position: relative;
  max-width: 160rem;
  padding: 0;
}
.spec__mv .wrap::before {
  content: '';
  display: block;
  padding-top: 54.02%;
}
.spec__mv .mv__img__wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.spec__mv .mv__title {
  position: absolute;
  top: 72.22%;
  left: 8.41%;
  z-index: 2;
  width: 19.25%;
}
.spec__info {
  padding-top: 7.2rem;
  padding-bottom: 2rem;
}
.spec__block:not(:first-child) {
  margin-top: 7.2rem;
  padding-top: 7.2rem;
  border-top: 1px dotted #666;
}
.spec__hd {
  margin-bottom: 0.5em;
  font-size: 2.1rem;
  font-weight: bold;
}
.spec__sub__hd {
  font-family: 'Noto Serif JP', "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
  line-height: 1.4;
  font-size: 4rem;
  font-weight: 400;
  letter-spacing: 0.1em;
  white-space: nowrap;
  min-width: 30rem;
}
.spec__color__text {
  display: flex;
}
.spec__color__text.marginTop{
  margin-top: 4rem;
}
.spec__color__text p {
  margin-top: 0.4em;
  margin-left: 10rem;
  line-height: 2;
  letter-spacing: 0.1em;
}
.spec__color__wrap {
  display: flex;
  margin-top: 2rem;
  overflow-x: auto;
  overflow-y: hidden;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.spec__color__wrap::-webkit-scrollbar {
  display:none;
}
.spec__color {
  display: flex;
  min-width: 76.8rem;
}
.spec__color > li {
  display: flex;
  flex: 1 1 0;
}
.spec__color > li:not(:first-child) {
  margin-left: 6.63%;
}
/* spec__size__info */
.spec__size__info {
  display: flex;
  justify-content: space-between;
}
.spec__size__info .spec__size__block {
  width: 46.01%;
}
.spec__size__block .spec__sub__hd {
  margin-bottom: 0.5em;
}
.spec__size__block p {
  margin-bottom: 1em;
  letter-spacing: 0.1em;
}
.spec__size__detail {
  display: flex;
  justify-content: center;
  width: 100%;
  margin-top: 5rem;
}
.spec__size__detail dl > div {
  display: flex;
}
.spec__size__detail dl > div:not(:first-child) {
  margin-top: 0.5em;
}
.spec__size__detail dl dt {
  width: 7em;
  font-weight: bold;
}
/* spec__print__block */
.spec__print__block {
  display: flex;
}
.spec__print__block--left {
  width: 27.8rem;
}
.spec__print__block--right {
  flex: 1;
}



/* フェードイン・アップ */
.fade-in-up {
  opacity: 0;
}
.fade-in-up.active {
  animation: fadeInUp 1.6s ease-out forwards;
}
@keyframes fadeInUp {
  0% {
    transform: translate3d(0, 3rem, 0);
    opacity: 0;
  }
  100% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
/* ブラー */
.blur {
  opacity: 0;
}
.blur.active {
  animation: blurAnime 1.5s ease forwards;
}

@keyframes blurAnime{
  0% {
    filter: blur(2rem);
    opacity: 0;
  }
  100% {
    filter: blur(0);
    opacity: 1;
  }
}

/* modal
* ------------------------------------------------------------------- */
.iziModal {
  box-shadow: none;
}
.iziModal-content {
  position: relative;
}
.iziModal-content::before {
  content: '';
  display: block;
  padding-top: 56.25%;
}
.iziModal .iziModal-iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
.modal-close {
  display: none;
  position: fixed;
  top: -13rem;
  right: -8.4rem;
  z-index: 1000;
  top: 1rem;
  right: 1rem;
  width: 6rem;
  height: 6rem;
  background-color: rgba(255, 255, 255, 0.5);
}
.modal-close.is-active {
  display: block;
}
.modal-close::before,
.modal-close::after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 5rem;
  height: 1px;
  background-color: #000;
}
.modal-close::before {
  transform: rotate(45deg);
}
.modal-close::after {
  transform: rotate(-45deg);
}
body.is-pop-opend {
  position: fixed;
  width: 100%;
}
/* vismo */
.vismo-block {
  max-width: 100rem;
  margin: 0 auto;
}

/* -----------------------------------------
 レスポンシブ
------------------------------------------- */
/* small pc size */
@media screen and (min-width: 768px) and (max-width: 959px) {
  .header__logo {
    width: 12.2rem;
  }
  .header__brand__logo {
    width: 16.3rem;
    margin-left: 3rem;
    padding-top: 0.2em;
  }
  .header__brand__menu li a {
    font-size: 1.6rem;
  }
}
/* tablet size */
@media screen and (max-width: 767px) {
  html {
    font-size: calc(100vw/39);
  }
  .product-frame {
    font-size: 1.4rem;
  }
  .product-frame a:hover {
    opacity: 1;
  }
  /* heading */
  .heading-a {
    margin-bottom: 3.5rem;
    font-size: 2.9rem;
  }
  .heading-b {
    margin-bottom: 4.3rem;
    line-height: 1.5;
    font-size: 2.4rem;
  }
  .heading-c {
    margin-top: 4.3rem;
    margin-bottom: 3.5rem;
    font-size: 2.1rem;
  }
  .heading-c.mb-s {
    margin-bottom: 3rem;
  }
  /* button */
  .order__btn {
    min-width: 29rem;
    padding: 0.7em 1em 0.8em;
    font-size: 2.1rem;
  }
  .order__btn::before {
    right: 2rem;
    width: 1.6rem;
    height: 1.6rem;
  }
  .border__btn {
    min-width: 21.5rem;
    padding: 0.95em 2.6em 1em 2.2em;
  }
  .border__btn::before {
    right: 1.6rem;
  }
  .border__btn:hover {
    opacity: 1;
  }
  .button__wrap {
    margin-top: 3rem;
    padding-right: 5rem;
  }
  /* scroll-top */
  .scroll-top {
    position: fixed;
    right: 1rem;
    bottom: 2rem;
    width: 3.3rem;
  }
  /* header */
  .l-header .wrap {
    flex-wrap: wrap;
    padding: 2.2rem 2.2rem 0;
    height: auto;
    min-height: 9rem;
  }
  .header__logo {
    width: 6.6rem;
    padding-top: 0.2em;
  }
  .header__logo img {
    display: block;
  }
  .header__brand__logo {
    width: 13.1rem;
    margin-left: 2rem;
    padding-top: 0;
  }
  .header__brand__logo img {
    display: block;
  }
  .header__brand__menu {
    width: 100%;
    height: auto;
    margin-left: 0;
    transition: all 0.3s;
  }
  .is-pop-opend .header__brand__menu {
    opacity: 0;
    visibility: hidden;
  }
  .header__brand__menu li {
    display: flex;
  }
  .header__brand__menu li:not(:first-child) {
    margin-left: 3em;
  }
  .header__brand__menu li a {
    padding: 1em 0;
    font-size: 1.2rem;
  }
  .header__menu {
    top: 1.5rem;
    right: 2.3rem;
    width: 4.8rem;
    height: 4.8rem;
  }
  .header__menu:hover {
    opacity: 1;
  }
  .header__menu span{
    left: 1.4rem;
    width: 2rem;
  }
  .header__menu span:nth-of-type(1) {
    top: 1.6rem;
  }
  .header__menu span:nth-of-type(2) {
    top: 2.3rem;
  }
  .header__menu span:nth-of-type(3) {
    top: 3.0rem;
  }
  .header__menu.is-active span:nth-of-type(1),
  .header__menu.is-active span:nth-of-type(3){
    top: 2.4rem;
    left: 1.1rem;
    width: 2.6rem;
  }
  /* l-nav */
  .l-nav {
    padding-top: 4.6rem;
  }
  .l-nav .l-nav-inner {
    min-height: 0;
    padding-top: 1.5rem;
  }
  .l-nav__list li:not(:first-child) {
    margin-top: 1.5em;
  }
  .l-nav .site__logo {
    width: 16.3rem;
    margin-bottom: 4rem;
  }
  .l-nav__list a {
    font-size: 1.8rem;
  }
  .l-nav__share {
    margin-top: 5rem;
  }
  .l-nav__share .share__heading {
    margin-bottom: 3.2rem;
    font-size: 1.8rem;
    text-align: center;
  }
  .l-nav__share .share__links li {
    width: 4rem;
  }
  .l-nav__share .share__links li:not(:first-child) {
    margin-left: 4rem;
  }
  
  /* footer
   * ------------------------------------------------------------------- */
  .l-footer{
    padding-top: 0;
    padding-bottom: 6rem;
  }
  .l-footer .wrap{
    padding: 0 2.2rem;
  }
  .l-footer__bottom{
    display: block;
    padding-top: 4rem;
  }
  .l-footer__logo{
    display: block;
    margin-right: 0;
    margin-bottom: 4rem;
    text-align: center;
  }
  .l-footer__logo img{
    width: 15.2rem;
  }
  .l-footer__bottom__body{
    display: flex;
    flex-wrap: wrap;
  }
  .l-footer__nav{
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin-top: 0;
    margin-bottom: 1.6rem;
    gap: 8px 1.4rem;
    font-size: 1.4rem;
  }
  .l-footer__nav a:not(:last-child){
    margin-right: 1.4rem;
  }
  .l-footer__nav a:not(:last-child)::after {
      right: -1.4rem;
    }
  .l-footer__copyright{
    margin-top: 0;
    font-size: 1.2rem;
  }
  /* main */
  .main__contents {
    position: relative;
    padding: 0 0 15.7rem;
  }
  /* mv */
  .mv .wrap::before {
    padding-top: 76.92%;
  }
  .mv .mv__box {
    position: absolute;
    top: 41%;
    left: 10%;
    width: 80%;
  }
  .mv .mv__box p {
    margin-top: 2.2em;
    font-size: 3.84vw;
    font-weight: 700;
    text-align: center;
  }

  /* message
  * ------------------------------------------------------------------- */
  .message {
    padding-top: 3.6rem;
    padding-bottom: 5.5rem;
  }
  .message__title {
    margin-bottom: 3rem;
    padding-left: 0.5em;
    font-size: 3.2rem;
  }
  .message__copy {
    padding-left: 0.5em;
    font-size: 1.6rem;
  }

  /* product
  * ------------------------------------------------------------------- */
  .product {
    padding-top: 6rem;
    padding-bottom: 6.4rem;
  }
  .product__name {
    max-width: 20.3rem;
    margin: 0 auto 3.6rem;
  }
  .product__detail {
    margin-top: 4rem;
  }

  /* features
  * ------------------------------------------------------------------- */
  .features__block {
    padding-top: 4.2rem;
    padding-bottom: 5.5rem;
  }
  /* horizontal__block */
  .horizontal__block {
    display: flex;
    flex-direction: column;
    width: 100%;
  }
  .horizontal__block.-reverse {
    flex-direction: column;
  }
  .horizontal__block .features__detail {
    width: 100%;
  }
  .horizontal__block .features__img {
    width: 100%;
    order: 2;
  }
  .horizontal__block.-img-l .features__detail {
    width: 100%;
  }
  .horizontal__block.-img-l .features__img {
    width: 100%;
  }
  .features__title {
    width: 76.25%;
    margin: 0 auto 2.5rem;
  }
  .features__topics {
    margin-bottom: 0.6em;
  }
  .features__hd {
    margin-bottom: 0.8em;
    font-size: 3.2rem;
  }
  .features__text {
    margin-top: 2.2em;
    letter-spacing: 0.1em;
  }
  .swiper__wrap + .features__text {
    margin-top: 3em;
  }
  .onecopy__example {
    margin-top: 4rem;
  }
  .onecopy__example .example__img:not(:first-child) {
    margin-top: 5rem;
  }
  .onecopy__example p {
    margin-top: 0.7em;
    line-height: 2;
  }
  /* gold-embossing__block */
  .gold-embossing__wrap {
    width: auto;
    margin-top: 5.5rem;
    margin-right: -3.5rem;
  }
  .gold-embossing__wrap + .gold-embossing__wrap {
    margin-top: 4.5rem;
  }
  .gold-embossing__block {
    margin-right: 3.5rem;
  }
  .gold-embossing__item {
    width: calc((100% - 6rem) / 3);
    margin-left: 3rem;
  }
  .gold-embossing__item p {
    font-size: 1.2rem;
  }
  /* swiper */
  .swiper-controll {
    margin-top: 2rem;
  }
  .swiper-controll .swiper-pagination {
    margin-right: 2rem;
    margin-left: 2rem;
  }
  .swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 0.7rem;
  }
  .swiper-controll .swiper-button-prev,
  .swiper-controll .swiper-button-next {
    width: 1.2rem;
    height: 2.2rem;
  }
  .swiper-controll .swiper-button-prev::after,
  .swiper-controll .swiper-button-next::after {
    width: 1.2rem;
    height: 2.2rem;
  }
  .swiper-controll .swiper-button-prev::after {
    width: 1.6rem;
    height: 1.6rem;
  }
  .swiper-controll .swiper-button-next::after {
    width: 1.6rem;
    height: 1.6rem;
  }

  /* spec
  * ------------------------------------------------------------------- */
  .spec__mv .wrap {
    padding: 0;
  }
  .spec__mv .wrap::before {
    padding-top: 93.84%;
  }
  .spec__mv .mv__title {
    top: 83.87%;
    left: 22.05%;
    width: 52.56%;
  }
  .spec__info {
    padding-top: 8.6rem;
    padding-bottom: 1rem;
  }
  .spec__block:not(:first-child) {
    margin-top: 4.2rem;
    padding-top: 4.2rem;
  }
  .spec__hd {
    margin-bottom: 1.3em;
    font-size: 1.6rem;
  }
  .spec__sub__hd {
    font-size: 2.8rem;
  }
  .spec__color__text {
    display: block;
  }
  .spec__color__text p {
    margin-top: 2.0em;
    margin-left: 0;
    line-height: 2;
  }
  .spec__color__wrap {
    margin-top: 2.5rem;
    margin-right: -3.5rem;
  }
  .spec__color {
    margin-right: 3.5rem;
  }
  .spec__color > li:not(:first-child) {
    margin-left: 3rem;
  }
  /* spec__size__info */
  .spec__size__info {
    display: block;
  }
  .spec__size__info .spec__size__block {
    width: auto;
  }
  .spec__size__info .spec__size__block:not(:first-child) {
    margin-top: 5.5rem;
  }
  .spec__size__block .spec__sub__hd {
    margin-bottom: 1em;
  }
  .spec__size__block p {
    margin-bottom: 1.5em;
    line-height: 2;
  }
  .spec__size__detail {
    display: block;
    width: 100%;
    margin-top: 3.2rem;
  }
  .spec__size__detail dl > div {
    display: flex;
  }
  .spec__size__detail dl > div:not(:first-child) {
    margin-top: 0.5em;
  }
  .spec__size__detail dl dt {
    width: 7em;
    font-weight: bold;
  }
  /* spec__print__block */
  .spec__print__block {
    display: block;
  }
  .spec__print__block--left {
    width: auto;
  }
  .spec__print__block .btn__wrap {
    text-align: center;
  }

  /* package
  * ------------------------------------------------------------------- */
  .package__mv .wrap {
    padding-top: 12.5rem;
  }
  .package__mv .mv__title {
    position: absolute;
    top: 8.3%;
    left: 20.51%;
    width: 58.97%;
  }
  .package__mv .mv__box {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    padding: 2.8rem 2.5rem 5.5rem 3.5rem;
  }
  .package__mv .mv__sub__title {
    font-size: 3.2rem;
  }
  .package__mv .mv__box p {
    margin-top: 1.5em;
    font-size: 1.4rem;
    letter-spacing: 0.1em;
  }

  /* price
  * ------------------------------------------------------------------- */
  .product-frame .price {
    padding-top: 5rem;
    padding-bottom: 5.5rem;
  }
  .price__title {
    max-width: 30.8rem;
    margin-bottom: 5.2rem;
  }
  .price__block {
    display: block;
  }
  .price__block:not(:first-of-type) {
    margin-top: 3.8rem;
    padding-top: 3.8rem;
  }
  .price__block p {
    letter-spacing: 0.1em;
  }
  .price__block .price__block--left {
    width: auto;
  }
  .price__block .price__block--right {
    flex: 1;
  }
  .price__block .price__block--right p:first-child {
    margin-top: 0.2em;
  }
  .price__hd {
    margin-bottom: 1.3em;
    font-size: 1.6rem;
  }
  .price__sub__hd {
    margin-top: 0;
    margin-bottom: 0.7em;
    font-size: 2.8rem;
  }
  .size__block {
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 3rem;
  }
  .size__block .size__block--left {
    width: 47%;
  }
  .size__block .size__block--right {
    width: 47%;
    flex: 0 0 auto;
  }
  .size__block p {
    font-size: 1.6rem;
  }

  /* order
  * ------------------------------------------------------------------- */
  .order {
    padding-top: 4.2rem;
    padding-bottom: 7.6rem;
  }
  .order__title {
    max-width: 19.7rem;
    margin: 0 auto 3.8rem;
  }
  .order__block {
    margin: 0 auto;
    text-align: center;
  }
  .order__hd {
    margin-bottom: 1.6em;
    line-height: 1.75;
    font-size: 1.6rem;
  }
  .order .btn__wrap {
    margin-top: 3.4rem;
  }
  .order .notes__list {
    margin-top: 4.8rem;
  }

  /* guide
  * ------------------------------------------------------------------- */
  .guide {
    padding-top: 6.2rem;
    padding-bottom: 6rem;
  }
  .guide__title {
    max-width: 21.1rem;
    margin: 0 auto 5.6rem;
  }
  .guide__block:not(:first-of-type) {
    margin-top: 5.2rem;
    padding-top: 5.2rem;
  }
  .guide__hd {
    font-size: 1.6rem;
  }
  .guide__inner {
    margin-left: 0;
  }
  .faq__list {
    margin-top: 4rem;
  }
  .faq__list > div:not(:first-of-type) {
    margin-top: 4.2rem;
  }
  .faq__list dt {
    font-size: 2.8rem;
  }
  .faq__list dd {
    margin-top: 1em;
    line-height: 2;
    font-size: 1.4rem;
  }
  /* inquiry__info */
  .inquiry__info {
    margin-top: 4.4rem;
  }
  .inquiry__hd {
    margin-bottom: 1.1em;
    line-height: 1.75;
    font-size: 1.6rem;
  }
  .inquiry__info p {
    font-size: 1.2rem;
  }
  .inquiry__info .inquiry__tel {
    margin-bottom: 0.5em;
    font-size: 2.8rem;
  }
  .inquiry__info .notes__list {
    margin-top: 2rem;
    font-size: 1.2rem;
  }
  .inquiry__info .btn__wrap {
    margin-top: 4rem;
  }
  /* kofukuron__block */
  .kofukuron__block {
    margin: 4.3rem auto 0;
  }
  .kofukuron__hd {
    display: flex;
    justify-content: center;
    margin-bottom: 5rem;
    padding-left: 1em;
    font-size: 3.2rem;
  }
  .kofukuron__img {
    position: relative;
    text-align: center;
  }
  .kofukuron__img img {
    width: 56.87%;
    margin-left: 10.6%;
  }
  .kofukuron__block .btn__wrap {
    margin-top: 5.3rem;
    font-size: 1.4rem;
  }
  .kofukuron__block .border__btn {
    padding: 0.95em 2.6em 1em 2.2em;
  }
  /* page__bottom */
  .page__bottom {
    margin-top: 7rem;
  }
  .share__heading {
    font-size: 1.8rem;
  }

  /* about
  * ------------------------------------------------------------------- */
  .about {
    padding-top: 6.2rem;
    padding-bottom: 6rem;
  }
  .about__title {
    max-width: 24rem;
    margin: 0 auto 5rem;
  }
  .about__hd {
    width: 68%;
    margin: 0 auto 3.8rem;
    padding-right: 9%;
  }
  .about__text {
    margin-bottom: 3.8rem;
    font-size: 1.6rem;
  }
  .about__img {
    max-width: 52rem;
    margin: 0 auto 3.4rem;
  }
  .about__item__block {
    display: block;
    margin: 6rem 2.5rem 0;
  }
  .about__item__block .about__item {
    width: auto;
  }
  .about__item__block .about__item:not(:first-of-type) {
    margin-top: 3rem;
  }
} /* query end */