@charset "UTF-8";
/* フォント定設
-----------------------------------------------------------------*/
@font-face {
  font-family: "sweet-sans-pro";
  src: url("https://use.typekit.net/af/b65d74/00000000000000007735c62d/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("woff2"), url("https://use.typekit.net/af/b65d74/00000000000000007735c62d/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("woff"), url("https://use.typekit.net/af/b65d74/00000000000000007735c62d/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("opentype");
  font-display: auto;
  font-style: normal;
  font-stretch: normal; }

/* イージング
-----------------------------------------------------------------*/
/* デュレーション
-----------------------------------------------------------------*/
/* フォント定設
-----------------------------------------------------------------*/
@font-face {
  font-family: "sweet-sans-pro";
  src: url("https://use.typekit.net/af/b65d74/00000000000000007735c62d/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("woff2"), url("https://use.typekit.net/af/b65d74/00000000000000007735c62d/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("woff"), url("https://use.typekit.net/af/b65d74/00000000000000007735c62d/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("opentype");
  font-display: auto;
  font-style: normal;
  font-stretch: normal; }

/* イージング
-----------------------------------------------------------------*/
/* デュレーション
-----------------------------------------------------------------*/
/*=============================================

	ボタンパーツ

==============================================*/
.slick-slider * {
  outline: 0; }

.slick-dots {
  display: block;
  width: 100%;
  padding: 0;
  list-style: none;
  text-align: center;
  margin: 24px 0 0;
  font-size: 0px; }
  .slick-dots li {
    position: relative;
    display: inline-block;
    margin: 0 4px;
    padding: 0;
    cursor: pointer; }
    .slick-dots li button {
      font-size: 0;
      line-height: 0;
      display: block;
      padding: 5px;
      cursor: pointer;
      color: transparent;
      border: 0;
      outline: 0;
      background: transparent; }
      .slick-dots li button:before {
        font-size: 6px;
        line-height: 6px;
        position: absolute;
        top: 0;
        left: 0;
        content: '';
        border-radius: 6px;
        text-align: center;
        color: black;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }

.slick-list {
  overflow: hidden; }

.slick-track {
  overflow: hidden; }

.slick-slide {
  float: left; }

.slick-prev, .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  z-index: 100;
  display: block;
  padding: 0;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: 0;
  background: transparent; }

.slick-prev:hover, .slick-prev:focus {
  color: transparent;
  outline: 0; }

.slick-next:hover, .slick-next:focus {
  color: transparent;
  outline: 0; }

.slick-prev:hover:before, .slick-prev:focus:before {
  opacity: 1; }

.slick-next:hover:before, .slick-next:focus:before {
  opacity: 1; }

.slick-prev.slick-disabled:before, .slick-next.slick-disabled:before {
  opacity: .25; }

.slick-prev:before, .slick-next:before {
  content: '';
  line-height: 1;
  display: block;
  color: white;
  background-repeat: no-repeat;
  background-position: center;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

/*
  CUSTOM
———————————————–*/
/*! PhotoSwipe main CSS by Dmitry Semenov | photoswipe.com | MIT license */
.pswp, .pswp__bg, .pswp__scroll-wrap {
  height: 100%;
  width: 100%; }

.pswp, .pswp__item, .pswp__scroll-wrap {
  overflow: hidden;
  top: 0;
  position: absolute;
  left: 0; }

.pswp, .pswp__bg, .pswp__container, .pswp__img--placeholder, .pswp__zoom-wrap {
  -webkit-backface-visibility: hidden; }

.pswp, .pswp__bg, .pswp__error-msg, .pswp__img, .pswp__item, .pswp__scroll-wrap, .pswp__zoom-wrap {
  position: absolute; }

.pswp {
  display: none;
  -ms-touch-action: none;
  touch-action: none;
  z-index: 1500;
  -webkit-text-size-adjust: 100%;
  outline: 0; }

.pswp * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

.pswp img {
  max-width: none; }

.pswp--animate_opacity {
  opacity: .001;
  will-change: opacity;
  -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1); }

.pswp--open {
  display: block; }

.pswp--zoom-allowed .pswp__img {
  cursor: -webkit-zoom-in;
  cursor: zoom-in; }

.pswp--zoomed-in .pswp__img {
  cursor: -webkit-grab;
  cursor: grab; }

.pswp--dragging .pswp__img {
  cursor: -webkit-grabbing;
  cursor: grabbing; }

.pswp__bg {
  left: 0;
  top: 0;
  background: #000;
  opacity: 0;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  will-change: opacity; }

.pswp__container, .pswp__zoom-wrap {
  -ms-touch-action: none;
  touch-action: none;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0; }

.pswp__container, .pswp__img {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none; }

.pswp__zoom-wrap {
  width: 100%;
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  -webkit-transition: -webkit-transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: -webkit-transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: transform 333ms cubic-bezier(0.4, 0, 0.22, 1), -webkit-transform 333ms cubic-bezier(0.4, 0, 0.22, 1); }

.pswp__bg {
  -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1); }

.pswp--animated-in .pswp__bg, .pswp--animated-in .pswp__zoom-wrap {
  -webkit-transition: none;
  transition: none; }

.pswp__item {
  right: 0;
  bottom: 0; }

.pswp__img {
  width: auto;
  height: auto;
  top: 0;
  left: 0; }

.pswp__img--placeholder--blank {
  background: #222; }

.pswp--ie .pswp__img {
  width: 100% !important;
  height: auto !important;
  left: 0;
  top: 0; }

.pswp__error-msg {
  left: 0;
  top: 50%;
  width: 100%;
  text-align: center;
  font-size: 14px;
  line-height: 16px;
  margin-top: -8px;
  color: #CCC; }

.pswp__error-msg a {
  color: #CCC;
  text-decoration: underline; }

.btn-order-v4 {
  display: none !important; }

@media print, screen and (min-width: 768px) {
  .page-contents {
    overflow: unset; } }

#main-wrapper {
  min-height: auto; }

i {
  font-style: normal; }

/*=============================================

	common

==============================================*/
.page-contents {
  /* 共通スタイル定設
-----------------------------------------------------------------*/
  font-size: 14px;
  letter-spacing: 0.08em;
  line-height: 1;
  font-family: "fot-cezanne-pron", sans-serif;
  color: #000; }
  .page-contents html, .page-contents body {
    font-size: 14px;
    letter-spacing: 0.08em;
    line-height: 1;
    font-family: "fot-cezanne-pron", sans-serif; }
  .page-contents body {
    width: 100%; }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      .page-contents body {
        content: "portrait"; } }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      .page-contents body {
        content: "landscape"; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      .scrollLock .page-contents body {
        overflow: hidden; } }
  .page-contents a {
    text-decoration: none;
    color: inherit; }
  .page-contents button,
  .page-contents input[type="button"] {
    cursor: pointer; }
  .page-contents button {
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none; }
  .page-contents .defs {
    height: 0;
    width: 0;
    overflow: hidden;
    position: absolute; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .page-contents .dn-portrait {
      display: none !important; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .page-contents .dn-landscape {
      display: none !important; } }
  @media print, screen and (max-width: 767px) {
    .page-contents .dn-sp {
      display: none !important; } }
  @media print, screen and (min-width: 1025px) {
    .page-contents .dn-pc {
      display: none !important; } }
  @media print, screen and (min-width: 768px) {
    .page-contents .dn-tab-pc {
      display: none !important; } }
  @media print, screen and (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
    .page-contents .dn-tab-landscape {
      display: none !important; } }
  @media print, screen and (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {
    .page-contents .dn-tab-portrait {
      display: none !important; } }

.c-kvPrice_fukidashi, .c-setTitle, .t-kvPrice_fukidashi {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content; }
  .c-kvPrice_fukidashi::after, .c-setTitle::after, .t-kvPrice_fukidashi::after {
    content: "";
    position: absolute;
    bottom: -6px;
    left: calc(50% - 6px);
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 6px solid transparent;
    border-left: 6px solid transparent;
    border-bottom: 0; }

.c-kvPrice_beforePrice_inner .num, .c-kvPrice_beforeIntax .num, .t-kvPrice_beforePrice_inner, .t-kvPrice_beforeIntax .num {
  position: relative; }
  .c-kvPrice_beforePrice_inner .num::after, .c-kvPrice_beforeIntax .num::after, .t-kvPrice_beforePrice_inner::after, .t-kvPrice_beforeIntax .num::after {
    position: absolute;
    top: 57%;
    left: 0;
    content: "";
    width: 100%;
    height: 1px; }
    @media print, screen and (min-width: 768px) {
      .c-kvPrice_beforePrice_inner .num::after, .c-kvPrice_beforeIntax .num::after, .t-kvPrice_beforePrice_inner::after, .t-kvPrice_beforeIntax .num::after {
        background-color: #fff; } }
    @media print, screen and (max-width: 767px) {
      .c-kvPrice_beforePrice_inner .num::after, .c-kvPrice_beforeIntax .num::after, .t-kvPrice_beforePrice_inner::after, .t-kvPrice_beforeIntax .num::after {
        background-color: #000; } }

.c-singleAnchor_node {
  position: relative; }
  .c-singleAnchor_node::after {
    content: "";
    position: absolute;
    left: calc(50% - 16px / 2);
    -webkit-transition: translate .3s ease;
    transition: translate .3s ease;
    background-image: url(../svg/arrow_index.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat; }
    @media print, screen and (min-width: 768px) {
      .c-singleAnchor_node::after {
        width: 16px;
        height: 8px;
        bottom: -28px; } }
    @media print, screen and (max-width: 767px) {
      .c-singleAnchor_node::after {
        width: 10px;
        height: 6px;
        bottom: -16px; } }
  @media (hover: hover) {
    .c-singleAnchor_node:hover::after {
      translate: 0 5px; } }

.c-registerButton, .c-howtoBlock_link, .c-styleBlock_contentButton, .c-basicList_link {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  max-width: 400px;
  font-size: 16px;
  letter-spacing: 0.16em;
  line-height: 1.5;
  border: 1px solid #141B29;
  border-radius: 50px;
  text-align: center;
  -webkit-transition: background-color .3s ease, border-color .3s ease, color .3s ease;
  transition: background-color .3s ease, border-color .3s ease, color .3s ease;
  color: #141B29; }
  @media print, screen and (min-width: 768px) {
    .c-registerButton, .c-howtoBlock_link, .c-styleBlock_contentButton, .c-basicList_link {
      padding: 19px 0; } }
  @media print, screen and (max-width: 767px) {
    .c-registerButton, .c-howtoBlock_link, .c-styleBlock_contentButton, .c-basicList_link {
      padding: 17px 0; } }
  .c-registerButton::after, .c-howtoBlock_link::after, .c-styleBlock_contentButton::after, .c-basicList_link::after {
    content: "";
    position: absolute;
    inset: 0;
    width: 6px;
    height: 6px;
    margin: auto 30px auto auto;
    border-right: 1px solid #141B29;
    border-bottom: 1px solid #141B29;
    rotate: -45deg;
    -webkit-transition: border-color .3s ease;
    transition: border-color .3s ease; }
  @media (hover: hover) {
    [data-category="job"] .c-registerButton:hover, [data-category="job"] .c-howtoBlock_link:hover, [data-category="job"] .c-styleBlock_contentButton:hover, [data-category="job"] .c-basicList_link:hover {
      background-color: #D5DFE1;
      border-color: #D5DFE1; } }
  @media (hover: hover) {
    [data-category="ceremony"] .c-registerButton:hover, [data-category="ceremony"] .c-howtoBlock_link:hover, [data-category="ceremony"] .c-styleBlock_contentButton:hover, [data-category="ceremony"] .c-basicList_link:hover {
      background-color: #DDBABD;
      border-color: #DDBABD; } }

.inview {
  -webkit-transition: translate .7s, opacity .7s;
  transition: translate .7s, opacity .7s; }
  .inview.is-hide {
    translate: 0 50px;
    opacity: 0; }

/*
	メインビジュアル
------------------------------------*/
.c-kv {
  position: relative;
  width: 100%;
  overflow: hidden; }

.c-kvImg {
  width: 100%; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-kvImg {
      min-height: 740px;
      height: calc(100svh - 60px); } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-kvImg {
      margin-top: 23px;
      aspect-ratio: 1/1; } }
  .c-kvImg img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover; }

.c-kvContents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-kvContents {
      color: #fff;
      inset: 0;
      position: absolute;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      width: 50%;
      height: 100%;
      padding: 0 min(80 / 1280 * 100vw, 80px) 0 0;
      margin: auto 0 auto auto;
      background: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.1)), to(transparent));
      background: -webkit-linear-gradient(right, rgba(0, 0, 0, 0.1) 0%, transparent 100%);
      background: linear-gradient(to left, rgba(0, 0, 0, 0.1) 0%, transparent 100%); } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-kvContents {
      width: 100%;
      padding: 32px 0;
      background-color: #EFEFEF; } }

.c-kvCatch {
  letter-spacing: 0.16em; }
  @media print, screen and (min-width: 768px) {
    .c-kvCatch {
      font-size: 20px; } }
  @media print, screen and (max-width: 767px) {
    .c-kvCatch {
      font-size: 15px; } }

.c-kvTitle_head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-kvTitle_head {
      gap: 12px;
      font-size: 24px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-kvTitle_head {
      gap: 10px;
      font-size: 19px; } }

.c-kvTitle_logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-kvTitle_logo {
      width: 202px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-kvTitle_logo {
      width: 162px; } }
  .c-kvTitle_logo img {
    width: 100%; }

.c-kvTitle_main {
  margin-top: 34px; }

.c-kvTitle_mainTop {
  font-size: 80px; }

.c-kvTitle_mainBottom {
  font-size: 48px; }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .c-kvTitle {
    border-top: 1px solid #fff;
    padding: 32px 0 0;
    margin-top: 36px; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .c-kvTitle {
    margin-top: 26px; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .c-kvTitle_img {
    width: 554px;
    margin-top: 36px; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .c-kvTitle_img {
    width: 321px;
    margin-top: 22px; } }

.c-kvTitle_img img {
  width: 100%; }

.c-kvCategory {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  margin-top: 30px; }
  .c-kvCategory p {
    position: relative;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    font-family: "sweet-sans-pro", sans-serif;
    letter-spacing: 0.12em; }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      .c-kvCategory p {
        padding: 0 44px;
        font-size: 24px; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      .c-kvCategory p {
        padding: 0 34px;
        font-size: 16px; } }
    .c-kvCategory p::before, .c-kvCategory p::after {
      content: "";
      position: absolute;
      top: 50%;
      translate: 0 -50%;
      width: 1px;
      height: 18px;
      rotate: 45deg; }
      @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
        .c-kvCategory p::before, .c-kvCategory p::after {
          background-color: #fff; } }
      @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
        .c-kvCategory p::before, .c-kvCategory p::after {
          background-color: #000; } }
    .c-kvCategory p::before {
      left: 0; }
    .c-kvCategory p::after {
      right: 0; }

.c-kvCategory_line {
  width: 100%;
  height: 1px; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-kvCategory_line {
      background-color: #fff; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-kvCategory_line {
      background-color: #000; } }

.c-kvPrice_fukidashi {
  padding: 8px 22px;
  letter-spacing: 0.2em; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-kvPrice_fukidashi {
      margin: auto;
      background-color: #fff;
      color: #A7B2B7;
      font-size: 18px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-kvPrice_fukidashi {
      background-color: #000;
      color: #fff; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-kvPrice_fukidashi::after {
      border-top: 6px solid #ffffff; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-kvPrice_fukidashi::after {
      border-top: 6px solid #000000; } }

.c-kvPrice {
  letter-spacing: .04em; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-kvPrice {
      padding-right: 20px;
      margin-top: 40px;
      text-align: center; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-kvPrice {
      background-color: #EFEFEF;
      padding: 24px 0 0; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-kvPrice.c-kvPrice_top {
      margin-top: 35px; } }

.c-kvPrice_index {
  padding: 24px 25px 25px;
  overflow: hidden; }

.c-kvPrice_inner {
  max-width: 325px;
  margin: 0 auto; }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .c-kvPrice_before {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 2px;
    margin-top: 11px; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .c-kvPrice_before {
    display: -ms-grid;
    display: grid;
    gap: 0 11px;
    grid-template-areas: "ruby wotax" "ruby intax";
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-top: 12px; }
    .c-kvPrice_before.c-kvPrice_before_index {
      margin-left: 5px; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .c-kvPrice_beforeRuby {
    grid-area: ruby;
    font-size: 20px;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl; } }

.c-kvPrice_after > .c-kvPrice_beforeRuby {
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  -ms-grid-column: 1; }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .c-kvPrice_beforeRuby .combine {
    -webkit-text-combine: horizontal;
    -ms-text-combine-horizontal: all;
    text-combine-upright: all; } }

.c-kvPrice_beforePrice {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  gap: 2px; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-kvPrice_beforePrice {
      grid-area: wotax;
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
      opacity: .5; }
      .c-kvPrice_beforePrice.c-kvPrice_beforePrice_index {
        margin-bottom: -2px;
        margin-top: -5px; } }
  .c-kvPrice_after > .c-kvPrice_beforePrice {
  -ms-grid-row: 1;
  -ms-grid-column: 2; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-kvPrice_beforePrice:after {
      background-color: #000 !important;
      opacity: .5; } }
  .c-kvPrice_beforePrice i {
    font-size: 12px; }

.c-kvPrice_beforePrice_inner .num, .c-kvPrice_beforePrice_inner .yen {
  font-family: "sweet-sans-pro", sans-serif;
  font-size: 26px;
  letter-spacing: 0.04em; }

.c-kvPrice_beforePrice_inner .num::after {
  top: 56% !important; }

.c-kvPrice_beforePrice_inner.c-kvPrice_beforePrice_inner_index .num {
  letter-spacing: 0.12em; }

.c-kvPrice_beforeIntax,
.c-kvPrice_afterIntax {
  letter-spacing: 0.08em;
  white-space: nowrap; }
  .c-kvPrice_beforeIntax .num, .c-kvPrice_beforeIntax .yen,
  .c-kvPrice_afterIntax .num,
  .c-kvPrice_afterIntax .yen {
    font-family: "sweet-sans-pro", sans-serif;
    letter-spacing: 0.04em; }

.c-kvPrice_beforeIntax {
  padding-top: 4px;
  font-size: 12px; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-kvPrice_beforeIntax {
      grid-area: intax;
      opacity: .5; } }
  .c-kvPrice_after > .c-kvPrice_beforeIntax {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2; }
  .c-kvPrice_beforeIntax .num, .c-kvPrice_beforeIntax .yen {
    font-size: 18px; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-kvPrice_beforeIntax .num::after {
      background-color: #000 !important;
      opacity: .5; } }
  .c-kvPrice_beforeIntax i {
    font-size: 10px; }

.c-kvPrice_after_arrow {
  width: 170px;
  height: 10px;
  position: relative;
  margin-top: 9px;
  margin-bottom: -10px; }
  .c-kvPrice_after_arrow::after {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 7px solid transparent;
    border-left: 7px solid transparent;
    border-top: 9px solid #141B29;
    border-bottom: 0;
    left: 50%;
    translate: calc(-50% + 20px) 0; }

.c-kvPrice_after {
  display: -ms-grid;
  display: grid;
  grid-template-areas: "ruby wotax" "intax intax";
  -ms-grid-columns: auto 1fr;
  grid-template-columns: auto 1fr;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  margin-top: 12px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: auto; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-kvPrice_after {
      gap: 10px 10px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-kvPrice_after {
      gap: 10px 0; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-kvPrice_after.c-kvPrice_after_index {
      margin-left: 0; } }

.c-kvPrice_afterCircle {
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  letter-spacing: 0.08em; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-kvPrice_afterCircle {
      top: -51px;
      right: -30px;
      width: 88px;
      height: 88px;
      font-size: 26px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-kvPrice_afterCircle {
      top: -81px;
      right: 0;
      width: 100px;
      height: 100px;
      font-size: 30px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-kvPrice_afterCircle.c-kvPrice_afterCircle {
      top: -53px;
      right: -52px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-kvPrice_afterCircle.c-kvPrice_afterCircle_index {
      top: -82px;
      right: -27px; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .c-kvPrice_afterCircle_text {
    width: 54px; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .c-kvPrice_afterCircle_text {
    width: 62px; } }

.c-kvPrice_afterCircle_text img {
  width: 100%; }

.c-kvPrice_afterCircle_bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  rotate: 90deg;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-kvPrice_afterCircle_bg {
      background-image: url(../svg/circle-w.svg); } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-kvPrice_afterCircle_bg {
      rotate: 50deg;
      background-image: url(../svg/circle-b.svg); } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-kvPrice_afterCircle_bg.c-kvPrice_afterCircle_bg_index {
      rotate: 57deg;
      scale: 1.2; } }

.c-kvPrice_afterRuby {
  grid-area: ruby;
  font-size: 26px;
  padding-top: 15px;
  letter-spacing: 0.08em; }

.c-kvPrice_after > .c-kvPrice_afterRuby {
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  -ms-grid-column: 1; }

.c-kvPrice_afterPrice {
  grid-area: wotax;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline; }

.c-kvPrice_after > .c-kvPrice_afterPrice {
  -ms-grid-row: 1;
  -ms-grid-column: 2; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-kvPrice_afterPrice i {
      font-size: 18px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-kvPrice_afterPrice i {
      font-size: 15px; } }

.c-kvPrice_afterPrice_inner {
  font-family: "sweet-sans-pro", sans-serif;
  letter-spacing: 0.04em; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-kvPrice_afterPrice_inner {
      font-size: 70px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-kvPrice_afterPrice_inner {
      font-size: 60px; } }

.c-kvPrice_afterPrice_inner_index {
  font-family: "sweet-sans-pro", sans-serif;
  letter-spacing: 0.04em; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-kvPrice_afterPrice_inner_index {
      font-size: 64px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-kvPrice_afterPrice_inner_index {
      font-size: 60px; } }

.c-kvPrice_afterIntax {
  grid-area: intax;
  font-size: 15px; }

.c-kvPrice_after > .c-kvPrice_afterIntax {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2; }
  .c-kvPrice_afterIntax .num, .c-kvPrice_afterIntax .yen {
    font-size: 22px; }
  .c-kvPrice_afterIntax i {
    font-size: 13px; }
  .c-kvPrice_afterIntax.c-kvPrice_afterIntax_index {
    margin-top: -5px; }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  [data-kv-category="ceremony"] .c-kvContents {
    margin: auto auto auto 0;
    background: none; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  [data-kv-category="ceremony"] .c-kvContents {
    background-color: #fff;
    border-bottom: 1px solid #000; } }

[data-kv-category="ceremony"] .c-kvCatch {
  color: #000; }

[data-kv-category="ceremony"] .c-kvCard {
  position: relative;
  margin-top: 30px;
  background: -webkit-linear-gradient(45deg, transparent 14px, #DDBABD 14px), -webkit-linear-gradient(315deg, transparent 14px, #DDBABD 14px), -webkit-linear-gradient(225deg, transparent 14px, #DDBABD 14px), -webkit-linear-gradient(135deg, transparent 14px, #DDBABD 14px);
  background: linear-gradient(45deg, transparent 14px, #DDBABD 14px), linear-gradient(135deg, transparent 14px, #DDBABD 14px), linear-gradient(225deg, transparent 14px, #DDBABD 14px), linear-gradient(315deg, transparent 14px, #DDBABD 14px);
  background-position: top right, top left, bottom left, bottom right;
  background-size: 54% 50%;
  background-repeat: no-repeat; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    [data-kv-category="ceremony"] .c-kvCard {
      padding: 30px 40px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    [data-kv-category="ceremony"] .c-kvCard {
      padding: 28px;
      color: #fff; } }
  [data-kv-category="ceremony"] .c-kvCard::before, [data-kv-category="ceremony"] .c-kvCard::after {
    content: "";
    position: absolute;
    width: 40px;
    height: 1px;
    background-color: #DDBABD;
    rotate: -45deg; }
  [data-kv-category="ceremony"] .c-kvCard::before {
    top: 9px;
    left: -10px; }
  [data-kv-category="ceremony"] .c-kvCard::after {
    bottom: 9px;
    right: -10px; }

[data-kv-category="ceremony"] .c-kvTitle {
  border-top: none;
  margin-top: 0;
  padding-top: 0; }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  [data-kv-category="ceremony"] .c-kvImg {
    width: 57.8%;
    margin: auto min(40 / 1280 * 100vw, 40px) auto auto; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  [data-kv-category="ceremony"] .c-kvTitle_img {
    width: 481px; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  [data-kv-category="ceremony"] .c-kvTitle_img {
    width: 298px; } }

[data-kv-category="ceremony"] .c-kvPrice_fukidashi {
  background-color: #000;
  color: #fff; }
  [data-kv-category="ceremony"] .c-kvPrice_fukidashi::after {
    border-top: 6px solid #000; }

[data-kv-category="ceremony"] .c-kvPrice_afterCircle_bg {
  background-image: url(../svg/circle-b.svg); }

[data-kv-category="ceremony"] .c-kvPrice {
  color: #000;
  background-color: transparent; }

[data-kv-category="ceremony"] .c-kvPrice_beforePrice_inner::after,
[data-kv-category="ceremony"] .c-kvPrice_beforeIntax .num::after {
  background-color: #000; }

[data-kv-category="ceremony"] .c-kvCategory p::before, [data-kv-category="ceremony"] .c-kvCategory p::after {
  content: none; }

[data-kv-category="ceremony"] .c-kvCategory_line {
  display: none; }

/*
	イントロテキスト
------------------------------------*/
.c-intro {
  padding: 0 30px; }
  @media print, screen and (min-width: 768px) {
    .c-intro {
      margin-top: 120px;
      text-align: center; } }
  @media print, screen and (max-width: 767px) {
    .c-intro {
      margin-top: 36px; } }

.c-introCatch {
  letter-spacing: 0.2em;
  line-height: 1.6; }
  @media print, screen and (min-width: 768px) {
    .c-introCatch {
      font-size: 24px; } }
  @media print, screen and (max-width: 767px) {
    .c-introCatch {
      padding-top: 36px;
      border-top: 1px solid #bbb;
      font-size: 20px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-introCatch.c-introCatch_index {
      border-top: none; } }

.c-introLead {
  font-size: 16px;
  letter-spacing: 0.08em;
  line-height: 1.8; }
  @media print, screen and (min-width: 768px) {
    .c-introLead {
      margin-top: 38px; } }
  @media print, screen and (max-width: 767px) {
    .c-introLead {
      margin-top: 28px; } }

/*
	事前登録
------------------------------------*/
.c-register {
  max-width: 960px;
  margin-left: auto;
  margin-right: auto; }
  @media print, screen and (min-width: 768px) {
    .c-register {
      margin-top: 108px; } }
  @media print, screen and (max-width: 767px) {
    .c-register {
      margin-top: 64px;
      padding: 0 30px; } }
  @media print, screen and (min-width: 768px) {
    .c-intro + .c-register {
      margin-top: 78px; } }
  @media print, screen and (max-width: 767px) {
    .c-intro + .c-register {
      margin-top: 36px; } }

.c-intro + .c-register .c-registerInner {
  border-top: 1px solid #BBBBBB; }
  @media print, screen and (min-width: 768px) {
    .c-intro + .c-register .c-registerInner {
      padding-top: 78px; } }
  @media print, screen and (max-width: 767px) {
    .c-intro + .c-register .c-registerInner {
      padding-top: 36px; } }

.c-registerText {
  letter-spacing: 0.16em;
  line-height: 1.8;
  text-align: center; }
  @media print, screen and (min-width: 768px) {
    .c-registerText {
      font-size: 18px; } }
  @media print, screen and (max-width: 767px) {
    .c-registerText {
      font-size: 16px; } }

.c-registerNotice {
  text-align: center; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-registerNotice {
      margin-top: 22px;
      font-size: 16px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-registerNotice {
      margin-top: 18px; } }

@media print, screen and (min-width: 768px) {
  .c-registerButton {
    margin: 36px auto 0; } }

@media print, screen and (max-width: 767px) {
  .c-registerButton {
    margin: 24px auto 0; } }

@media (hover: hover) {
  .c-registerButton:hover {
    background-color: #C2CACD;
    border-color: #C2CACD; } }

/*
  就活・新社会人ジェンダーページリンク
------------------------------------*/
@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .c-shuukatsu_index {
    margin-top: 50px;
    padding: 0 20px;
    margin-bottom: -24px; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .c-shuukatsu_index {
    margin-top: 120px; } }

.c-shuukatsu_index_content {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2, 1fr); }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-shuukatsu_index_content {
      gap: 5px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-shuukatsu_index_content {
      gap: 20px;
      max-width: 942px;
      margin: 0 auto; } }

@media (hover: hover) {
  .c-shuukatsu_index_item:hover .c-shuukatsu_index_item_image {
    opacity: 0.65; }
  .c-shuukatsu_index_item:hover .c-shuukatsu_index_item_link_icon {
    background-color: #D5DFE1; } }

.c-shuukatsu_index_item_image {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease; }
  .c-shuukatsu_index_item_image img {
    width: 100%;
    max-width: 100%;
    -o-object-fit: cover;
    object-fit: cover; }

.c-shuukatsu_index_item_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-shuukatsu_index_item_link {
      padding: 0 8px;
      margin-top: 10px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-shuukatsu_index_item_link {
      margin-top: 14px;
      padding: 0 24px; } }

.c-shuukatsu_index_item_link_text {
  font-family: "sweet-sans-pro", sans-serif;
  letter-spacing: 0.24em; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-shuukatsu_index_item_link_text {
      font-size: 12px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-shuukatsu_index_item_link_text {
      font-size: 22px; } }

.c-shuukatsu_index_item_link_icon {
  background-color: #EFEFEF;
  border-radius: 50%;
  position: relative;
  -webkit-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-shuukatsu_index_item_link_icon {
      width: 18px;
      height: 18px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-shuukatsu_index_item_link_icon {
      width: 36px;
      height: 36px; } }

.c-shuukatsu_index_item_link_icon_bar {
  background-color: #141B29;
  height: 1px;
  position: absolute;
  top: 50%;
  left: 50%;
  border-radius: 10px; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-shuukatsu_index_item_link_icon_bar {
      width: 5px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-shuukatsu_index_item_link_icon_bar {
      width: 8px; } }
  .c-shuukatsu_index_item_link_icon_bar:nth-child(1) {
    rotate: 45deg; }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      .c-shuukatsu_index_item_link_icon_bar:nth-child(1) {
        translate: calc(-50% + 1px) calc(-50% - 1.5px); } }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      .c-shuukatsu_index_item_link_icon_bar:nth-child(1) {
        translate: calc(-50% + 1px) calc(-50% - 3px); } }
  .c-shuukatsu_index_item_link_icon_bar:nth-child(2) {
    rotate: -45deg; }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      .c-shuukatsu_index_item_link_icon_bar:nth-child(2) {
        translate: calc(-50% + 1px) calc(50% + 0.5px); } }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      .c-shuukatsu_index_item_link_icon_bar:nth-child(2) {
        translate: calc(-50% + 1px) calc(50% + 1px); } }

/*
	個別ページアンカーリンク
------------------------------------*/
@media print, screen and (min-width: 768px) {
  .c-singleAnchor {
    padding: 120px 30px 148px; } }

@media print, screen and (max-width: 767px) {
  .c-singleAnchor {
    padding: 64px 20px 84px; } }

.c-singleAnchor_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: auto; }
  @media print, screen and (min-width: 768px) {
    .c-singleAnchor_list {
      max-width: 1040px;
      gap: min(40 / 1280 * 100vw, 40px); } }
  @media print, screen and (max-width: 767px) {
    .c-singleAnchor_list {
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      gap: 45px 15px;
      max-width: 375px; } }

.c-singleAnchor_node {
  cursor: pointer; }
  @media print, screen and (min-width: 768px) {
    .c-singleAnchor_node {
      -webkit-box-flex: 1;
      -ms-flex: 1;
      flex: 1; } }
  @media print, screen and (max-width: 767px) {
    .c-singleAnchor_node {
      width: calc((100% - 15px) / 2); } }

.c-singleAnchor_img {
  aspect-ratio: 1;
  overflow: hidden;
  width: 100%;
  border-radius: 50%;
  overflow: hidden; }
  .c-singleAnchor_img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover; }
  .c-singleAnchor_img img {
    translate: 0 0 0;
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
    -webkit-transition: scale .3s ease;
    transition: scale .3s ease; }
  @media (hover: hover) {
    .c-singleAnchor_node:hover .c-singleAnchor_img img {
      scale: 1.1; } }

.c-singleAnchor_title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  min-height: 48px;
  letter-spacing: 0.2em;
  line-height: 1.5;
  text-align: center; }
  @media print, screen and (min-width: 768px) {
    .c-singleAnchor_title {
      margin-top: 22px;
      font-size: 16px; } }
  @media print, screen and (max-width: 767px) {
    .c-singleAnchor_title {
      margin-top: 16px; } }

/*
	特徴
------------------------------------*/
.c-feature {
  background-color: #EFEFEF; }
  @media print, screen and (min-width: 768px) {
    .c-feature {
      padding: 60px 30px;
      margin-top: 80px; } }
  @media print, screen and (max-width: 767px) {
    .c-feature {
      padding: 46px 30px;
      margin-top: 64px; } }

.c-featureInner {
  max-width: 1040px;
  margin: auto; }

.c-featureTitle {
  letter-spacing: 0.2em;
  line-height: 1.6; }
  @media print, screen and (min-width: 768px) {
    .c-featureTitle {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      font-size: 24px; } }
  @media print, screen and (max-width: 767px) {
    .c-featureTitle {
      text-align: center;
      font-size: 18px; } }

.c-featureTitle_logo {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex; }
  @media print, screen and (min-width: 768px) {
    .c-featureTitle_logo {
      width: 192px;
      margin: 0 10px 0 15px; } }
  @media print, screen and (max-width: 767px) {
    .c-featureTitle_logo {
      width: 144px;
      margin-right: 10px; } }
  .c-featureTitle_logo img {
    width: 100%; }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px), print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .c-featureList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 46px; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .c-featureList {
    gap: min(16 / 1040 * 100vw, 16px); } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .c-featureList {
    gap: 30px;
    margin-right: -30px; } }

@media print, screen and (max-width: 767px) {
  .c-featureList {
    gap: 30px;
    margin-top: 38px; } }

.c-featureList_node {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px), print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-featureList_node {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      padding-left: min(20 / 1040 * 100vw, 20px);
      border-left: 1px solid #000; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-featureList_node {
      -webkit-box-flex: 1;
      -ms-flex: 1;
      flex: 1; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-featureList_node {
      width: calc((100% - 30px) / 2); } }
  @media print, screen and (max-width: 767px) {
    .c-featureList_node {
      -webkit-box-align: start;
      -ms-flex-align: start;
      align-items: flex-start;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-direction: row;
      flex-direction: row;
      width: 100%;
      border-left: none; } }

.c-featureList_Point {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  font-family: "sweet-sans-pro", sans-serif;
  letter-spacing: 0.2em; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-featureList_Point {
      font-size: 12px; } }
  @media print, screen and (max-width: 767px) {
    .c-featureList_Point {
      gap: 0;
      font-size: 10px;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column; } }
  @media print, screen and (min-width: 768px) {
    .c-featureList_Point .num {
      font-size: 26px; } }
  @media print, screen and (max-width: 767px) {
    .c-featureList_Point .num {
      font-size: 28px; } }

.c-featureList_info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  @media print, screen and (min-width: 768px) {
    .c-featureList_info {
      min-height: 140px;
      height: 100%;
      margin-top: 42px; } }
  @media print, screen and (max-width: 767px) {
    .c-featureList_info {
      padding-left: 20px;
      margin-left: 20px;
      border-left: 1px solid #000; } }

.c-featureList_catch {
  font-size: 20px;
  letter-spacing: 0.08em;
  line-height: 1.6; }
  .c-featureList_catch > i {
    font-size: 13px; }
  .c-featureList_catch .notice {
    display: inline-block;
    font-size: 12px;
    letter-spacing: 0.08em; }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      .c-featureList_catch .notice i {
        font-size: 10px; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      .c-featureList_catch .notice i {
        font-size: 11px; } }

.c-featureList_lead {
  letter-spacing: 0.08em;
  line-height: 1.7; }
  @media print, screen and (max-width: 767px) {
    .c-featureList_lead {
      margin-top: 22px; } }

@media print, screen and (min-width: 1025px) {
  .c-index + .c-index {
    padding-top: 120px; } }

@media print, screen and (max-width: 1024px) {
  .c-index + .c-index {
    padding-top: 64px; } }

@media print, screen and (min-width: 768px) {
  .c-register + .c-index,
  .c-feature + .c-index {
    padding-top: 120px; } }

@media print, screen and (max-width: 767px) {
  .c-register + .c-index,
  .c-feature + .c-index {
    padding-top: 64px; } }

.c-indexSectitle {
  letter-spacing: 0.16em;
  text-align: center; }
  @media print, screen and (min-width: 768px) {
    .c-indexSectitle {
      margin-bottom: 64px;
      font-size: 42px; } }
  @media print, screen and (max-width: 767px) {
    .c-indexSectitle {
      margin-bottom: 46px;
      font-size: 26px; } }

.c-indexTitle, .c-colorLineupTitle, .c-styleBlock_headTitle {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border-bottom: 1px solid #bbb;
  margin: auto;
  letter-spacing: 0.16em; }
  @media print, screen and (min-width: 768px) {
    .c-indexTitle, .c-colorLineupTitle, .c-styleBlock_headTitle {
      padding: 0 20px 12px;
      font-size: 28px; } }
  @media print, screen and (max-width: 767px) {
    .c-indexTitle, .c-colorLineupTitle, .c-styleBlock_headTitle {
      padding: 0 0 12px;
      font-size: 24px; } }

.c-indexList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media print, screen and (min-width: 1025px) {
    .c-indexList {
      gap: min(40 / 1280 * 100vw, 40px);
      width: min(942 / 1280 * 100vw, 942px);
      margin: 40px auto 0; } }
  @media print, screen and (max-width: 1024px) {
    .c-indexList {
      gap: 5px;
      padding: 0 30px;
      margin: 32px auto 0; } }

.c-indexList_node {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  display: block; }

.c-indexList_img {
  aspect-ratio: 0.73214;
  overflow: hidden;
  width: 100%;
  -webkit-transition: opacity .3s ease, border-color .3s ease;
  transition: opacity .3s ease, border-color .3s ease; }
  .c-indexList_img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover; }
  @media (hover: hover) {
    .c-indexList_node:hover .c-indexList_img {
      opacity: .65; } }

.c-indexList_title {
  position: relative;
  font-family: "sweet-sans-pro", sans-serif;
  letter-spacing: 0.24em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  @media print, screen and (min-width: 768px) {
    .c-indexList_title {
      padding: 15px 24px;
      font-size: 16px; } }
  @media print, screen and (max-width: 767px) {
    .c-indexList_title {
      padding: 7px;
      font-size: 12px; } }

.c-indexList_titleArrow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-radius: 50%;
  background-color: #EFEFEF;
  -webkit-transition: background-color .3s ease;
  transition: background-color .3s ease; }
  @media print, screen and (min-width: 768px) {
    .c-indexList_titleArrow {
      width: 30px;
      height: 30px; } }
  @media print, screen and (max-width: 767px) {
    .c-indexList_titleArrow {
      width: 18px;
      height: 18px; } }
  .c-indexList_titleArrow img {
    display: block;
    translate: -1px 0; }
    @media print, screen and (min-width: 768px) {
      .c-indexList_titleArrow img {
        width: 10px;
        height: 10px; } }
    @media print, screen and (max-width: 767px) {
      .c-indexList_titleArrow img {
        width: 7px;
        height: 7px; } }
  @media (hover: hover) {
    #job .c-indexList_node:hover .c-indexList_titleArrow, [data-type="job"] .c-indexList_node:hover .c-indexList_titleArrow {
      background-color: #D5DFE1; } }
  @media (hover: hover) {
    #ceremony .c-indexList_node:hover .c-indexList_titleArrow, [data-type="ceremony"] .c-indexList_node:hover .c-indexList_titleArrow {
      background-color: #DDBABD; } }
  @media print, screen and (max-width: 767px) {
    [data-page="indexByGender"] .c-indexList_titleArrow {
      width: 24px;
      height: 24px; } }

/*
	おすすめの理由
------------------------------------*/
.c-reason {
  padding: 0 30px; }
  @media print, screen and (min-width: 768px) {
    .c-reason {
      margin-top: 120px; } }
  @media print, screen and (max-width: 767px) {
    .c-reason {
      margin-top: 44px; } }

.c-reasonInner {
  max-width: 880px;
  width: 100%;
  margin: auto; }
  @media print, screen and (min-width: 768px) {
    .c-reasonInner {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; } }
  @media print, screen and (min-width: 768px) and (max-width: 1024px) {
    .c-reasonInner {
      padding: 0 30px; } }

.c-reasonTitle {
  line-height: 1.6; }
  @media print, screen and (min-width: 768px) {
    .c-reasonTitle {
      font-size: min(40 / 1280 * 100vw, 40px);
      letter-spacing: 0.16em; } }
  @media print, screen and (max-width: 767px) {
    .c-reasonTitle {
      font-size: 25px;
      letter-spacing: 0.14em; } }

@media print, screen and (max-width: 767px) {
  .c-reasonList {
    margin-top: 26px; } }

.c-reasonList_node {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  letter-spacing: 0.2em; }
  @media print, screen and (min-width: 768px) {
    .c-reasonList_node {
      gap: 20px;
      font-size: 20px; } }
  @media print, screen and (max-width: 767px) {
    .c-reasonList_node {
      gap: 14px;
      font-size: 16px; } }
  .c-reasonList_node::before {
    content: '';
    width: 11px;
    height: 10px;
    background-image: url("../svg/arrow_reason.svg");
    background-size: cover;
    background-repeat: no-repeat; }
  @media print, screen and (min-width: 768px) {
    .c-reasonList_node + .c-reasonList_node {
      margin-top: 28px; } }
  @media print, screen and (max-width: 767px) {
    .c-reasonList_node + .c-reasonList_node {
      margin-top: 18px; } }

/*
	驚きの価格とラインナップ
------------------------------------*/
.c-lineup {
  color: #141B29; }
  [data-category="job"] .c-lineup {
    background-color: #D5DFE1; }
  [data-category="ceremony"] .c-lineup {
    background-color: #DDBABD; }
  @media print, screen and (min-width: 768px) {
    .c-lineup {
      padding: 120px 20px; } }
  @media print, screen and (max-width: 767px) {
    .c-lineup {
      padding: 64px 15px; } }

.c-lineupInner {
  max-width: 884px;
  margin: auto; }
  .c-lineupInner .num {
    line-height: .8; }
    @media print, screen and (min-width: 768px) {
      .c-lineupInner .num {
        letter-spacing: 0.04em; } }
    @media print, screen and (max-width: 767px) {
      .c-lineupInner .num {
        letter-spacing: 0.02em; } }

.c-lineupTitle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 14px;
  letter-spacing: 0.16em;
  color: #141B29; }
  @media print, screen and (min-width: 768px) {
    .c-lineupTitle {
      font-size: 34px; } }
  @media print, screen and (max-width: 767px) {
    .c-lineupTitle {
      font-size: 20px; } }
  .c-lineupTitle span {
    display: inline-block;
    padding: 6px 10px;
    background-color: #fff;
    color: #141B29; }
    @media print, screen and (min-width: 768px) {
      .c-lineupTitle span {
        font-size: 40px; } }
    @media print, screen and (max-width: 767px) {
      .c-lineupTitle span {
        font-size: 22px; } }

.c-lineupLead {
  letter-spacing: 0.16em;
  text-align: center; }
  @media print, screen and (min-width: 768px) {
    .c-lineupLead {
      margin-top: 38px;
      font-size: 20px;
      line-height: 1.6; } }
  @media print, screen and (max-width: 767px) {
    .c-lineupLead {
      margin-top: 38px;
      font-size: 18px;
      line-height: 1.5; } }

.c-lineupLead_price {
  font-family: "sweet-sans-pro", sans-serif;
  letter-spacing: 0.036em;
  font-size: 42px; }
  .c-lineupLead_price + i {
    font-size: 28px; }

.c-lineupFeature {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 64px auto 0; }
  @media print, screen and (min-width: 768px) {
    .c-lineupFeature {
      padding-left: 100px; } }

.c-lineupFeature_circle {
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  translate: -50% 0;
  letter-spacing: 0.08em; }
  @media print, screen and (min-width: 768px) {
    .c-lineupFeature_circle {
      top: -27px;
      left: 57px;
      width: 120px;
      height: 121px;
      font-size: 32px; } }
  @media print, screen and (max-width: 767px) {
    .c-lineupFeature_circle {
      top: -30px;
      left: 72px;
      width: 140px;
      height: 142px;
      font-size: 37px; } }

.c-lineupFeature_circleBg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("../svg/circle-b.svg");
  background-size: contain;
  background-repeat: no-repeat; }
  @media print, screen and (max-width: 767px) {
    .c-lineupFeature_circleBg {
      rotate: 45deg; } }

.c-lineupFeature_circleRuby {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 8px; }
  @media print, screen and (min-width: 768px) {
    .c-lineupFeature_circleRuby {
      width: 74px; } }
  @media print, screen and (max-width: 767px) {
    .c-lineupFeature_circleRuby {
      width: 85px; } }
  .c-lineupFeature_circleRuby img {
    width: 100%; }

.c-lineupFeature_catch {
  letter-spacing: 0.08em; }
  @media print, screen and (min-width: 768px) {
    .c-lineupFeature_catch {
      font-size: 16px;
      text-align: center; } }
  @media print, screen and (max-width: 767px) {
    .c-lineupFeature_catch {
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
      margin-left: auto;
      margin-right: 24px;
      line-height: 1.4; } }
  .c-lineupFeature_catch .beforePrice {
    font-family: "sweet-sans-pro", sans-serif;
    letter-spacing: 0.04em; }
    @media print, screen and (min-width: 768px) {
      .c-lineupFeature_catch .beforePrice {
        display: inline-block;
        padding-left: 12px;
        font-size: 23px; } }
    @media print, screen and (max-width: 767px) {
      .c-lineupFeature_catch .beforePrice {
        display: block;
        font-size: 24px; } }
    .c-lineupFeature_catch .beforePrice i {
      font-family: "fot-cezanne-pron", sans-serif; }
      @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
        .c-lineupFeature_catch .beforePrice i {
          font-size: 13px; } }
      @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
        .c-lineupFeature_catch .beforePrice i {
          font-size: 11px; } }
  .c-lineupFeature_catch .intax {
    font-size: 11px;
    letter-spacing: 0.08em; }
    @media print, screen and (min-width: 768px) {
      .c-lineupFeature_catch .intax {
        display: inline-block;
        padding: 0 2px; } }
    @media print, screen and (max-width: 767px) {
      .c-lineupFeature_catch .intax {
        display: block;
        margin-top: 7px; } }
    .c-lineupFeature_catch .intax .intaxPrice {
      font-family: "sweet-sans-pro", sans-serif;
      letter-spacing: 0.04em; }
      @media print, screen and (min-width: 768px) {
        .c-lineupFeature_catch .intax .intaxPrice {
          font-size: 16px; } }
      @media print, screen and (max-width: 767px) {
        .c-lineupFeature_catch .intax .intaxPrice {
          font-size: 15px; } }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      .c-lineupFeature_catch .intax i {
        font-size: 11px; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      .c-lineupFeature_catch .intax i {
        font-size: 10px; } }
  @media print, screen and (max-width: 767px) {
    .c-lineupFeature_catch .bottomText {
      display: block;
      margin-top: 10px;
      font-size: 18px; } }
  .c-lineupFeature_catch i {
    font-size: 14px; }

.c-lineupFeature_main {
  letter-spacing: 0.16em;
  text-align: center; }
  @media print, screen and (min-width: 768px) {
    .c-lineupFeature_main {
      margin-top: 20px; } }
  @media print, screen and (max-width: 767px) {
    .c-lineupFeature_main {
      display: -ms-grid;
      display: grid;
      grid-template-areas: 'ruby wotax' 'intax intax';
      margin-top: 6px; }
    .c-lineupFeature_main > .c-kvPrice_beforeRuby {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1; }
    .c-lineupFeature_main > .c-kvPrice_beforePrice {
    -ms-grid-row: 1;
    -ms-grid-column: 2; }
    .c-lineupFeature_main > .c-kvPrice_beforeIntax {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2; }
    .c-lineupFeature_main > .c-kvPrice_afterRuby {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1; }
    .c-lineupFeature_main > .c-kvPrice_afterPrice {
    -ms-grid-row: 1;
    -ms-grid-column: 2; }
    .c-lineupFeature_main > .c-kvPrice_afterIntax {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2; } }
  @media print, screen and (min-width: 768px) {
    .c-lineupFeature_main .ruby {
      font-size: 32px; } }
  @media print, screen and (max-width: 767px) {
    .c-lineupFeature_main .ruby {
      grid-area: ruby;
      font-size: 20px;
      -ms-writing-mode: tb-rl;
      -webkit-writing-mode: vertical-rl;
      writing-mode: vertical-rl;
      align-self: flex-end; } }
  @media print, screen and (max-width: 767px) {
    .c-lineupFeature_main .ruby .combine {
      -webkit-text-combine: horizontal;
      -ms-text-combine-horizontal: all;
      text-combine-upright: all; } }
  .c-lineupFeature_main .wotax {
    font-family: "sweet-sans-pro", sans-serif;
    letter-spacing: 0.03em; }
    @media print, screen and (min-width: 768px) {
      .c-lineupFeature_main .wotax {
        font-size: 68px; } }
    @media print, screen and (max-width: 767px) {
      .c-lineupFeature_main .wotax {
        grid-area: wotax;
        font-size: 60px; } }
    .c-lineupFeature_main .wotax i {
      font-family: "fot-cezanne-pron", sans-serif; }
      @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
        .c-lineupFeature_main .wotax i {
          font-size: 18px; } }
      @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
        .c-lineupFeature_main .wotax i {
          font-size: 13px; } }
  .c-lineupFeature_main .intax {
    display: inline-block;
    letter-spacing: 0.08em; }
    @media print, screen and (min-width: 768px) {
      .c-lineupFeature_main .intax {
        font-size: 12px; } }
    @media print, screen and (max-width: 767px) {
      .c-lineupFeature_main .intax {
        grid-area: intax;
        margin-top: 20px;
        font-size: 15px; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait){
  .c-kvPrice_beforeRuby {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1; }
  .c-kvPrice_beforePrice {
    -ms-grid-row: 1;
    -ms-grid-column: 3; }
  .c-kvPrice_beforeIntax {
    -ms-grid-row: 3;
    -ms-grid-column: 3; }
  .c-kvPrice_afterRuby {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1; }
  .c-kvPrice_afterPrice {
    -ms-grid-row: 1;
    -ms-grid-column: 3; }
  .c-kvPrice_afterIntax {
    -ms-grid-row: 3;
    -ms-grid-column: 3; }
  .c-lineupFeature_main .ruby {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1; }
  .c-lineupFeature_main .wotax {
    -ms-grid-row: 1;
    -ms-grid-column: 3; }
  .c-lineupFeature_main .intax {
    -ms-grid-row: 3;
    -ms-grid-column: 3; } }
    @media print, screen and (max-width: 767px){
    .c-lineupFeature_main > .ruby {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1; }
    .c-lineupFeature_main > .wotax {
    -ms-grid-row: 1;
    -ms-grid-column: 2; }
    .c-lineupFeature_main > .intax {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2; } }
    .c-lineupFeature_main .intax .intaxPrice {
      font-family: "sweet-sans-pro", sans-serif; }
      @media print, screen and (min-width: 768px) {
        .c-lineupFeature_main .intax .intaxPrice {
          font-size: 18px; } }
      @media print, screen and (max-width: 767px) {
        .c-lineupFeature_main .intax .intaxPrice {
          font-size: 22px; } }
    .c-lineupFeature_main .intax i {
      font-size: 10px; }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .c-lineupPrice {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto 32px auto;
    grid-template-areas: 'beforeHead beforeList' 'afterHead afterList';
    -ms-grid-columns: 120px 0 auto;
    grid-template-columns: 120px auto;
    gap: 32px 0;
    max-width: 566px;
    margin: 64px auto 0; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .c-lineupPrice {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto 12px auto;
    grid-template-areas: 'beforeHead afterHead' 'beforeList afterList';
    -ms-grid-columns: 50% 0 50%;
    grid-template-columns: repeat(2, 50%);
    gap: 12px 0;
    max-width: 460px;
    padding: 0 15px;
    margin: 48px auto 0; } }

@media print, screen and (min-width: 768px) and (max-width: 1024px) {
  .c-lineupPrice {
    -ms-grid-columns: auto auto;
    grid-template-columns: auto auto;
    gap: 24px 118px;
    max-width: 460px; } }

.c-lineupPrice_befreHead,
.c-lineupPrice_afterHead {
  letter-spacing: 0.08em; }
  @media print, screen and (min-width: 768px) {
    .c-lineupPrice_befreHead,
    .c-lineupPrice_afterHead {
      font-size: 18px; } }
  @media print, screen and (max-width: 767px) {
    .c-lineupPrice_befreHead,
    .c-lineupPrice_afterHead {
      font-size: 15px; } }

.c-lineupPrice_befreHead {
  grid-area: beforeHead;
  color: #fff; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-lineupPrice_befreHead {
      padding-top: 6px; } }

.c-lineupPrice_afterHead {
  grid-area: afterHead; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-lineupPrice_afterHead {
      padding-top: 12px; } }

.c-lineupPrice_beforeList,
.c-lineupPrice_afterList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-lineupPrice_beforeList,
    .c-lineupPrice_afterList {
      gap: min(45 / 1280 * 100vw, 45px); } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-lineupPrice_beforeList,
    .c-lineupPrice_afterList {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      gap: 20px; } }
  .c-lineupPrice_beforeList li,
  .c-lineupPrice_afterList li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    position: relative;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    text-align: right; }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      .c-lineupPrice_beforeList li,
      .c-lineupPrice_afterList li {
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end; } }
    @media print, screen and (max-width: 767px) {
      .c-lineupPrice_beforeList li,
      .c-lineupPrice_afterList li {
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content; } }
  .c-lineupPrice_beforeList .tax,
  .c-lineupPrice_afterList .tax {
    display: inline-block;
    padding-left: 3px;
    letter-spacing: 0.08em; }
    @media print, screen and (min-width: 768px) {
      .c-lineupPrice_beforeList .tax,
      .c-lineupPrice_afterList .tax {
        font-size: 12px; } }
    @media print, screen and (max-width: 767px) {
      .c-lineupPrice_beforeList .tax,
      .c-lineupPrice_afterList .tax {
        font-size: 10px; } }
  .c-lineupPrice_beforeList .c-lineupPrice_intax,
  .c-lineupPrice_afterList .c-lineupPrice_intax {
    letter-spacing: 0.08em; }
    @media print, screen and (min-width: 768px) {
      .c-lineupPrice_beforeList .c-lineupPrice_intax,
      .c-lineupPrice_afterList .c-lineupPrice_intax {
        font-size: 12px; } }
    @media print, screen and (max-width: 767px) {
      .c-lineupPrice_beforeList .c-lineupPrice_intax,
      .c-lineupPrice_afterList .c-lineupPrice_intax {
        font-size: 10px; } }

.c-lineupPrice_beforeList {
  grid-area: beforeList;
  color: #fff; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-lineupPrice_beforeList li {
      padding-top: 5px; } }
  .c-lineupPrice_beforeList li::after {
    content: "";
    position: absolute;
    translate: -50% 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-bottom: 0; }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      .c-lineupPrice_beforeList li::after {
        bottom: -25px;
        right: 20%;
        border-right: 7px solid transparent;
        border-left: 7px solid transparent;
        border-top: 9px solid #000; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      .c-lineupPrice_beforeList li::after {
        top: 50%;
        right: -18px;
        translate: 0 -50%;
        rotate: -90deg;
        border-right: 5px solid transparent;
        border-left: 5px solid transparent;
        border-top: 7px solid #000; } }
    @media print, screen and (min-width: 768px) and (max-width: 1024px) {
      .c-lineupPrice_beforeList li::after {
        right: -73px; } }
    @media print, screen and (max-width: 767px) {
      .c-lineupPrice_beforeList li::after {
        right: -38%; } }

.c-lineupPrice_afterList {
  grid-area: afterList; }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px){
  .c-lineupPrice_befreHead {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
  .c-lineupPrice_afterHead {
    -ms-grid-row: 3;
    -ms-grid-column: 1; }
  .c-lineupPrice_beforeList {
    -ms-grid-row: 1;
    -ms-grid-column: 3; }
  .c-lineupPrice_afterList {
    -ms-grid-row: 3;
    -ms-grid-column: 3; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait){
  .c-lineupPrice_befreHead {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
  .c-lineupPrice_afterHead {
    -ms-grid-row: 1;
    -ms-grid-column: 3; }
  .c-lineupPrice_beforeList {
    -ms-grid-row: 3;
    -ms-grid-column: 1; }
  .c-lineupPrice_afterList {
    -ms-grid-row: 3;
    -ms-grid-column: 3; } }

.c-lineupPrice_wotax {
  font-family: "sweet-sans-pro", sans-serif;
  letter-spacing: 0.02em; }
  @media print, screen and (min-width: 768px) {
    .c-lineupPrice_beforeList .c-lineupPrice_wotax {
      font-size: 24px; } }
  @media print, screen and (max-width: 767px) {
    .c-lineupPrice_beforeList .c-lineupPrice_wotax {
      font-size: 20px; } }
  @media print, screen and (min-width: 768px) {
    .c-lineupPrice_afterList .c-lineupPrice_wotax {
      font-size: 36px; } }
  @media print, screen and (max-width: 767px) {
    .c-lineupPrice_afterList .c-lineupPrice_wotax {
      font-size: 30px; } }
  .c-lineupPrice_wotax i {
    font-family: "fot-cezanne-pron", sans-serif; }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      .c-lineupPrice_wotax i {
        font-size: 12px; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      .c-lineupPrice_wotax i {
        font-size: 10px; } }

.c-lineupPrice_intax {
  margin-top: 6px; }
  .c-lineupPrice_intax i {
    font-size: 10px; }
  .c-lineupPrice_intax .num {
    font-family: "sweet-sans-pro", sans-serif;
    letter-spacing: 0.08em; }
    @media print, screen and (min-width: 768px) {
      .c-lineupPrice_intax .num {
        font-size: 16px; } }
    @media print, screen and (max-width: 767px) {
      .c-lineupPrice_intax .num {
        font-size: 13px; } }

.c-sectionTitle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  letter-spacing: 0.16em; }
  @media print, screen and (min-width: 768px) {
    .c-sectionTitle {
      gap: 22px;
      font-size: 32px; } }
  @media print, screen and (max-width: 767px) {
    .c-sectionTitle {
      gap: 16px;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      font-size: 24px; } }

.c-sectionTitile_box {
  position: relative;
  padding: 13px 21px 13px 30px;
  border: 1px solid #000; }
  @media print, screen and (max-width: 767px) {
    .c-sectionTitile_box {
      font-size: 32px; } }
  .c-sectionTitile_box:after {
    content: "";
    position: absolute;
    bottom: -6px;
    right: -6px;
    width: 100%;
    height: 100%;
    border-right: 1px solid #000;
    border-bottom: 1px solid #000; }

.c-sectionSubtitle {
  font-family: "sweet-sans-pro", sans-serif;
  text-align: center; }
  @media print, screen and (min-width: 768px) {
    .c-sectionSubtitle {
      font-size: 24px;
      letter-spacing: 0.24em; } }
  @media print, screen and (max-width: 767px) {
    .c-sectionSubtitle {
      font-size: 18px;
      letter-spacing: 0.2em; } }

.c-sectionLead {
  font-size: 16px;
  letter-spacing: 0.08em;
  line-height: 1.8; }
  @media print, screen and (min-width: 768px) {
    .c-sectionLead {
      margin: 38px 0 64px;
      text-align: center; } }
  @media print, screen and (max-width: 767px) {
    .c-sectionLead {
      margin: 29px 30px 44px; } }

/*
	驚きの価格とラインナップ
------------------------------------*/
@media print, screen and (min-width: 768px) {
  .c-colorLineup {
    margin-top: 120px; } }

@media print, screen and (max-width: 767px) {
  .c-colorLineup {
    margin-top: 64px; } }

.c-colorLineup_list {
  max-width: 880px; }
  @media print, screen and (min-width: 768px) {
    .c-colorLineup_list {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      gap: 40px 80px;
      padding: 0 30px;
      margin: 64px auto 0; } }
  @media print, screen and (max-width: 767px) {
    .c-colorLineup_list {
      padding: 0 30px 0 60px;
      margin: 40px auto 0; } }

.c-colorLineup_listNode {
  display: -ms-grid;
  display: grid;
  grid-template-areas: 'img title' 'info title';
  -ms-grid-columns: auto auto;
  grid-template-columns: auto auto;
  -ms-grid-rows: auto 1fr;
  grid-template-rows: auto 1fr; }
  @media print, screen and (min-width: 768px) {
    .c-colorLineup_listNode {
      width: calc(50% - 40px);
      gap: 22px 16px; } }
  @media print, screen and (max-width: 767px) {
    .c-colorLineup_listNode {
      gap: 22px 14px; } }
  @media print, screen and (max-width: 767px) {
    .c-colorLineup_listNode + .c-colorLineup_listNode {
      margin-top: 36px; } }

.c-colorLineup_listTitle {
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  -ms-grid-column: 2;
  grid-area: title;
  font-family: "sweet-sans-pro", sans-serif;
  letter-spacing: 0.16em;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-orientation: mixed; }
  @media print, screen and (min-width: 768px) {
    .c-colorLineup_listTitle {
      font-size: 18px; } }
  @media print, screen and (max-width: 767px) {
    .c-colorLineup_listTitle {
      font-size: 16px; } }

.c-colorLineup_listImg {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: img;
  aspect-ratio: 1;
  overflow: hidden;
  width: 100%; }
  .c-colorLineup_listImg img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover; }

.c-colorLineup_listInfo {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  grid-area: info; }

.c-colorLineup_listCatch {
  font-size: 20px;
  letter-spacing: 0.16em;
  line-height: 1.6; }

.c-colorLineup_listText {
  margin-top: 20px;
  letter-spacing: 0.1em;
  line-height: 1.8; }

.c-colorLineup_listNotice {
  width: 100%;
  font-size: 12px;
  letter-spacing: 0.1em;
  line-height: 1.8; }
  @media print, screen and (min-width: 768px) {
    .c-colorLineup_listNotice {
      text-align: center; } }
  @media print, screen and (max-width: 767px) {
    .c-colorLineup_listNotice {
      margin-top: 38px; } }

/*
	HOW TO
------------------------------------*/
.c-howto {
  background-color: #EFEFEF; }
  @media print, screen and (min-width: 768px) {
    .c-howto {
      padding: 95px 0 120px;
      margin-top: 120px; } }
  @media print, screen and (max-width: 767px) {
    .c-howto {
      padding: 48px 0 48px;
      margin-top: 48px; } }

.c-howtoTitle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 12px; }
  @media print, screen and (min-width: 768px) {
    .c-howtoTitle {
      margin-bottom: 56px; } }
  @media print, screen and (max-width: 767px) {
    .c-howtoTitle {
      margin-bottom: 40px; } }
  .c-howtoTitle span:nth-child(1) {
    letter-spacing: 0.12em; }
    @media print, screen and (min-width: 768px) {
      .c-howtoTitle span:nth-child(1) {
        padding-top: 10px;
        font-size: 32px; } }
    @media print, screen and (max-width: 767px) {
      .c-howtoTitle span:nth-child(1) {
        padding-top: 6px;
        font-size: 24px; } }
  .c-howtoTitle span:nth-child(2) {
    font-family: "sweet-sans-pro", sans-serif;
    letter-spacing: 0.04em; }
    @media print, screen and (min-width: 768px) {
      .c-howtoTitle span:nth-child(2) {
        font-size: 64px; } }
    @media print, screen and (max-width: 767px) {
      .c-howtoTitle span:nth-child(2) {
        font-size: 40px; } }

.c-howtoBlock {
  max-width: 1020px; }
  @media print, screen and (min-width: 768px) {
    .c-howtoBlock {
      margin: auto;
      padding: 0 30px; } }
  @media print, screen and (max-width: 767px) {
    .c-howtoBlock {
      padding: 0 10px; } }
  @media print, screen and (min-width: 768px) {
    .c-howtoBlock + .c-howtoBlock {
      margin-top: 30px; } }
  @media print, screen and (max-width: 767px) {
    .c-howtoBlock + .c-howtoBlock {
      margin-top: 10px; } }
  @media print, screen and (min-width: 768px) {
    .c-sectionTitle + .c-howtoBlock {
      margin-top: 64px; } }
  @media print, screen and (max-width: 767px) {
    .c-sectionTitle + .c-howtoBlock {
      margin-top: 44px; } }

.c-howtoBlock_head {
  position: relative;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-color: #fff; }
  @media print, screen and (min-width: 768px) {
    .c-howtoBlock_head {
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      height: 80px;
      padding: 0 36px; } }
  @media print, screen and (max-width: 767px) {
    .c-howtoBlock_head {
      gap: 12px;
      -webkit-box-align: baseline;
      -ms-flex-align: baseline;
      align-items: baseline;
      padding: 20px 60px 20px 20px; } }
  .c-howtoBlock_head .q {
    font-family: "sweet-sans-pro", sans-serif;
    letter-spacing: 0.02em; }
    @media print, screen and (min-width: 768px) {
      .c-howtoBlock_head .q {
        margin-right: 18px;
        font-size: 26px; } }
    @media print, screen and (max-width: 767px) {
      .c-howtoBlock_head .q {
        display: block;
        margin-bottom: 10px;
        font-size: 18px; } }

.c-howtoBlock_headText {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  letter-spacing: 0.12em;
  line-height: 1.5; }
  @media print, screen and (min-width: 768px) {
    .c-howtoBlock_headText {
      font-size: 20px; } }
  @media print, screen and (max-width: 767px) {
    .c-howtoBlock_headText {
      font-size: 18px; } }

.c-howtoBlock_headPlus {
  display: block; }
  @media print, screen and (min-width: 768px) {
    .c-howtoBlock_headPlus {
      position: relative;
      width: 18px;
      height: 18px; } }
  @media print, screen and (max-width: 767px) {
    .c-howtoBlock_headPlus {
      position: absolute;
      top: 50%;
      translate: 0 -50%;
      right: 30px;
      width: 12px;
      height: 12px; } }
  .c-howtoBlock_headPlus::before, .c-howtoBlock_headPlus::after {
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    width: 100%;
    height: 1px;
    background-color: #999999;
    -webkit-transition: rotate .3s ease;
    transition: rotate .3s ease; }
  .is-close .c-howtoBlock_headPlus::before {
    rotate: 90deg; }

.c-howtoBlock_body {
  display: none;
  border-top: 1px solid #EFEFEF;
  background-color: #fff; }

@media print, screen and (min-width: 768px) {
  .c-howtoBlock_bodyInner {
    padding: 40px 36px 50px; } }

@media print, screen and (max-width: 767px) {
  .c-howtoBlock_bodyInner {
    padding: 0 20px 20px; } }

.c-howtoBlock_bodyInner:has(.c-howtoBlock_imgCol) {
  display: block; }

@media print, screen and (min-width: 768px) {
  .c-howtoPoint_node {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: min(58 / 1280 * 100vw, 58px); } }

.c-howtoPoint_node:nth-child(odd) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse; }

@media print, screen and (min-width: 768px) {
  .c-howtoPoint_node + .c-howtoPoint_node {
    margin-top: 50px; } }

@media print, screen and (max-width: 767px) {
  .c-howtoPoint_node + .c-howtoPoint_node {
    margin-top: 46px; } }

.c-howtoBlock_img, .c-howtoPoint_nodeImg {
  -ms-flex-negative: 0;
  flex-shrink: 0; }
  @media print, screen and (min-width: 768px) {
    .c-howtoBlock_img, .c-howtoPoint_nodeImg {
      width: min(413 / 960 * 100vw, 413px); } }
  @media print, screen and (max-width: 767px) {
    .c-howtoBlock_img, .c-howtoPoint_nodeImg {
      width: 100%; } }
  @media print, screen and (max-width: 767px) {
    .c-howtoBlock_img + .c-howtoBlock_img, .c-howtoPoint_nodeImg + .c-howtoBlock_img, .c-howtoBlock_img + .c-howtoPoint_nodeImg, .c-howtoPoint_nodeImg + .c-howtoPoint_nodeImg {
      margin-top: 38px; } }
  .c-howtoBlock_img img, .c-howtoPoint_nodeImg img {
    width: 100%; }

.c-howtoBlock_imgRuby {
  margin-top: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.c-howtoBlock_imgRuby_node {
  width: 50%;
  text-align: center;
  font-size: 20px;
  letter-spacing: 0.2em; }

@media print, screen and (min-width: 768px) {
  .c-howtoBlock_imgCol {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: min(30 / 1280 * 100vw, 30px);
    margin-top: 38px; } }

@media print, screen and (min-width: 768px) {
  .c-howtoBlock_imgCol .c-howtoBlock_img, .c-howtoBlock_imgCol .c-howtoPoint_nodeImg {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    width: 100%; } }

.c-howtoBlock_imgCaption {
  display: block;
  margin-top: 18px;
  font-size: 16px;
  letter-spacing: 0.08em;
  text-align: center; }

.c-howtoBlock_link {
  width: 100%; }
  @media print, screen and (min-width: 768px) {
    .c-howtoBlock_link {
      margin-top: 28px; } }
  @media print, screen and (max-width: 767px) {
    .c-howtoBlock_link {
      margin: 24px auto 0; } }

.c-howtoBlock_info {
  width: 100%; }
  @media print, screen and (min-width: 768px) {
    .c-howtoBlock_info {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      gap: min(100 / 1280 * 100vw, 100px); } }
  @media print, screen and (max-width: 767px) {
    .c-howtoBlock_info {
      margin-top: 20px; } }

.c-howtoPoint_nodeInfo {
  width: 100%; }
  @media print, screen and (max-width: 767px) {
    .c-howtoPoint_nodeInfo {
      margin-top: 16px; } }

.c-howtoBlock_catch, .c-howtoPoint_nodeInfo_catch {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  letter-spacing: 0.12em;
  line-height: 1.5; }
  @media print, screen and (min-width: 768px) {
    .c-howtoBlock_catch, .c-howtoPoint_nodeInfo_catch {
      font-size: 20px; } }
  @media print, screen and (max-width: 767px) {
    .c-howtoBlock_catch, .c-howtoPoint_nodeInfo_catch {
      -webkit-box-align: start;
      -ms-flex-align: start;
      align-items: start;
      gap: 12px;
      font-size: 18px; } }
  .c-howtoBlock_catch .a, .c-howtoPoint_nodeInfo_catch .a {
    font-family: "sweet-sans-pro", sans-serif;
    letter-spacing: 0.02em; }
    @media print, screen and (min-width: 768px) {
      .c-howtoBlock_catch .a, .c-howtoPoint_nodeInfo_catch .a {
        margin-right: 18px;
        font-size: 26px;
        line-height: 1.3; } }
    @media print, screen and (max-width: 767px) {
      .c-howtoBlock_catch .a, .c-howtoPoint_nodeInfo_catch .a {
        display: block;
        margin-bottom: 2px;
        font-size: 18px; } }

@media print, screen and (min-width: 768px) {
  .c-howtoPoint_nodeInfo_catch {
    margin-top: 30px; } }

@media print, screen and (max-width: 767px) {
  .c-howtoPoint_nodeInfo_catch {
    margin-top: 10px; } }

.c-howtoBlock_caption, .c-howtoPoint_nodeInfo_caption {
  letter-spacing: 0.12em;
  line-height: 1.8; }
  @media print, screen and (min-width: 768px) {
    .c-howtoBlock_caption, .c-howtoPoint_nodeInfo_caption {
      -ms-flex-negative: 0;
      flex-shrink: 0;
      width: 334px; } }
  @media print, screen and (max-width: 767px) {
    .c-howtoBlock_caption, .c-howtoPoint_nodeInfo_caption {
      margin-top: 22px; } }

/*
	JOB STYLE
------------------------------------*/
@media print, screen and (min-width: 768px) {
  .c-style {
    padding-top: 120px; } }

@media print, screen and (max-width: 767px) {
  .c-style {
    padding-top: 48px; } }

@media print, screen and (min-width: 768px) {
  .c-styleTitle {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 10px;
    margin-bottom: 60px; } }

@media print, screen and (max-width: 767px) {
  .c-styleTitle {
    margin-bottom: 30px; } }

.c-styleTitle span {
  display: block;
  letter-spacing: 0.12em; }
  @media print, screen and (max-width: 767px) {
    .c-styleTitle span {
      text-align: center; } }
  @media print, screen and (min-width: 768px) {
    .c-styleTitle span:nth-child(1) {
      padding-top: 4px;
      font-size: 25px; } }
  @media print, screen and (max-width: 767px) {
    .c-styleTitle span:nth-child(1) {
      font-size: 20px; } }
  @media print, screen and (min-width: 768px) {
    .c-styleTitle span:nth-child(2) {
      font-size: 40px; } }
  @media print, screen and (max-width: 767px) {
    .c-styleTitle span:nth-child(2) {
      margin-top: 10px;
      font-size: 27px; } }

.c-styleBlock {
  position: relative;
  max-width: 1020px;
  margin: auto;
  padding: 0 30px; }
  @media print, screen and (min-width: 768px) {
    .c-styleBlock {
      gap: 0 min(40 / 1280 * 100vw, 40px); } }
  @media print, screen and (max-width: 767px) {
    .c-styleBlock {
      gap: 0 18px; } }
  @media print, screen and (min-width: 768px) {
    .c-sectionTitle + .c-styleBlock {
      margin-top: 64px; } }
  @media print, screen and (max-width: 767px) {
    .c-sectionTitle + .c-styleBlock {
      margin-top: 44px; } }
  @media print, screen and (min-width: 768px) {
    .c-styleBlock + .c-styleBlock {
      margin-top: 107px; } }
  @media print, screen and (max-width: 767px) {
    .c-styleBlock + .c-styleBlock {
      margin-top: 64px; } }

.c-styleBlock_headTitle {
  margin-bottom: 44px; }

.c-styleBlock_contentNotapplicable {
  margin-bottom: 14px;
  letter-spacing: 0.1em; }

.c-styleBlock_contentNode {
  display: -ms-grid;
  display: grid; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-styleBlock_contentNode {
      grid-template-areas: 'img info' 'img point';
      gap: min(60 / 1280 * 100vw, 60px) min(80 / 1280 * 100vw, 80px);
      -ms-grid-columns: 50% min(80 / 1280 * 100vw, 80px) 1fr;
      grid-template-columns: 50% 1fr;
      -ms-grid-rows: 1fr min(60 / 1280 * 100vw, 60px) auto;
      grid-template-rows: 1fr auto;
      -webkit-box-align: end;
      -ms-flex-align: end;
      align-items: flex-end; }
    .c-styleBlock_contentNode > .c-colorLineup_listImg {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1; }
    .c-styleBlock_contentNode > .c-colorLineup_listInfo {
    -ms-grid-row: 1;
    -ms-grid-column: 3; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-styleBlock_contentNode {
      grid-template-areas: 'img' 'info' 'point';
      -ms-grid-columns: auto;
      grid-template-columns: auto;
      -ms-grid-rows: auto 28px auto 28px auto;
      grid-template-rows: repeat(3, auto);
      -webkit-box-align: end;
      -ms-flex-align: end;
      align-items: flex-end;
      gap: 28px; }
    .c-styleBlock_contentNode > .c-colorLineup_listImg {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1; }
    .c-styleBlock_contentNode > .c-colorLineup_listInfo {
    -ms-grid-row: 3;
    -ms-grid-column: 1; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-styleBlock_contentNode:nth-child(even) {
      grid-template-areas: 'info img' 'point img';
      -ms-grid-columns: 1fr 50%;
      grid-template-columns: 1fr 50%; }
    .c-styleBlock_contentNode:nth-child(even) > .c-colorLineup_listImg {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 2; }
    .c-styleBlock_contentNode:nth-child(even) > .c-colorLineup_listInfo {
    -ms-grid-row: 1;
    -ms-grid-column: 1; } }
  @media print, screen and (min-width: 768px) {
    .c-styleBlock_contentNode + .c-styleBlock_contentNode {
      margin-top: 60px; } }
  @media print, screen and (max-width: 767px) {
    .c-styleBlock_contentNode + .c-styleBlock_contentNode {
      margin-top: 63px; } }

.c-styleBlock_contentName {
  letter-spacing: .16em;
  line-height: 1.5; }
  @media print, screen and (min-width: 768px) {
    .c-styleBlock_contentName {
      font-size: 26px; } }
  @media print, screen and (max-width: 767px) {
    .c-styleBlock_contentName {
      font-size: 22px; } }

.c-styleBlock_contentCatch {
  line-height: 1.8; }
  @media print, screen and (min-width: 768px) {
    .c-styleBlock_contentCatch {
      margin-top: min(38 / 1280 * 100vw, 38px);
      font-size: 20px;
      letter-spacing: 0.16em; } }
  @media print, screen and (max-width: 767px) {
    .c-styleBlock_contentCatch {
      margin-top: 22px;
      font-size: 18px;
      letter-spacing: 0.1em; } }

.c-styleBlock_contentCaption {
  letter-spacing: 0.1em;
  line-height: 1.8; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-styleBlock_contentCaption {
      max-width: min(401 / 1280 * 100vw, 401px);
      margin-top: min(28 / 1280 * 100vw, 28px); } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-styleBlock_contentCaption {
      margin-top: 22px; } }

.c-styleBlock_contentImg {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: img; }
  @media print, screen and (min-width: 768px) {
    .c-styleBlock_contentImg {
      width: 100%; } }
  @media print, screen and (max-width: 767px) {
    .c-styleBlock_contentImg {
      margin-left: -30px;
      margin-right: -30px; } }
  .c-styleBlock_contentImg img {
    width: 100%; }

.c-styleBlock_contentInfo {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  grid-area: info; }

.c-styleBlock_contentPoint {
  grid-area: point; }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px){
    .c-styleBlock_contentNode > .c-styleBlock_contentImg {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1; }
    .c-styleBlock_contentNode:nth-child(even) > .c-styleBlock_contentImg {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 2; }
    .c-styleBlock_contentNode > .c-styleBlock_contentInfo {
    -ms-grid-row: 1;
    -ms-grid-column: 3; }
    .c-styleBlock_contentNode:nth-child(even) > .c-styleBlock_contentInfo {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
    .c-styleBlock_contentPoint {
    -ms-grid-row: 3;
    -ms-grid-column: 3; }
    .c-styleBlock_contentNode:nth-child(even) > .c-styleBlock_contentPoint {
    -ms-grid-row: 2;
    -ms-grid-column: 1; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait){
    .c-styleBlock_contentNode > .c-styleBlock_contentImg {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1; }
    .c-styleBlock_contentNode > .c-styleBlock_contentInfo {
    -ms-grid-row: 3;
    -ms-grid-column: 1; }
    .c-styleBlock_contentNode > .c-styleBlock_contentPoint {
    -ms-grid-row: 5;
    -ms-grid-column: 1; } }

.c-styleBlock_contentPointTitle {
  font-family: "sweet-sans-pro", sans-serif;
  letter-spacing: 0.08em;
  padding-bottom: 12px;
  border-bottom: 1px solid #000; }

@media print, screen and (min-width: 768px) {
  .c-styleBlock_contentPoint_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: min(20 / 1280 * 100vw, 20px);
    margin-top: min(24 / 1280 * 100vw, 24px); } }

@media print, screen and (max-width: 767px) {
  .c-styleBlock_contentPoint_list {
    margin-top: 20px; } }

@media print, screen and (min-width: 768px) {
  .c-styleBlock_contentPoint_node {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1; } }

@media print, screen and (max-width: 767px) {
  .c-styleBlock_contentPoint_node {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 16px; } }

@media print, screen and (max-width: 767px) {
  .c-styleBlock_contentPoint_node + .c-styleBlock_contentPoint_node {
    margin-top: 16px; } }

@media print, screen and (max-width: 767px) {
  .c-styleBlock_contentPoint_img {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    max-width: 140px; } }

.c-styleBlock_contentPoint_img img {
  width: 100%; }

.c-styleBlock_contentPoint_text {
  letter-spacing: 0.1em;
  line-height: 1.6; }
  @media print, screen and (min-width: 768px) {
    .c-styleBlock_contentPoint_text {
      margin-top: min(10 / 1280 * 100vw, 10px);
      font-size: 12px; } }

.c-styleBlock_contentButton {
  grid-area: button;
  width: 100%; }
  @media print, screen and (min-width: 768px) {
    .c-styleBlock_contentButton {
      margin: 120px auto 0; } }
  @media print, screen and (max-width: 767px) {
    .c-styleBlock_contentButton {
      margin: 46px auto 0; } }

[data-style-category="ceremony"] .c-styleBlock {
  max-width: 1100px; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    [data-style-category="ceremony"] .c-styleBlock {
      margin-top: 130px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    [data-style-category="ceremony"] .c-styleBlock {
      margin-top: 64px; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  [data-style-category="ceremony"] .c-styleBlock_contentNode {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: min(40 / 1280 * 100vw, 40px) min(60 / 1280 * 100vw, 60px); } }

@media print, screen and (max-width: 767px) {
  [data-style-category="ceremony"] .c-styleBlock_contentNode {
    gap: 0; } }

@media print, screen and (min-width: 768px) {
  [data-style-category="ceremony"] .c-styleBlock_contentNode + .c-styleBlock_contentNode {
    margin-top: 170px; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  [data-style-category="ceremony"] .c-styleBlock_contentNode:nth-child(odd) .c-styleBlock_contentInfo {
    padding-right: min(100 / 1280 * 100vw, 100px); } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  [data-style-category="ceremony"] .c-styleBlock_contentNode:nth-child(odd) .c-styleBlock_contentInfo::before {
    right: 0; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  [data-style-category="ceremony"] .c-styleBlock_contentNode:nth-child(odd) .c-styleBlock_contentPoint {
    margin-right: min(54 / 1280 * 100vw, 54px); } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  [data-style-category="ceremony"] .c-styleBlock_contentNode:nth-child(even) .c-styleBlock_contentInfo {
    padding-left: min(100 / 1280 * 100vw, 100px); } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  [data-style-category="ceremony"] .c-styleBlock_contentNode:nth-child(even) .c-styleBlock_contentInfo::before {
    left: 0; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  [data-style-category="ceremony"] .c-styleBlock_contentNode:nth-child(even) .c-styleBlock_contentPoint {
    margin-left: min(54 / 1280 * 100vw, 54px); } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  [data-style-category="ceremony"] .c-styleBlock_contentPoint {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: min(19 / 1280 * 100vw, 19px); } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  [data-style-category="ceremony"] .c-styleBlock_contentPoint {
    margin-top: 40px; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  [data-style-category="ceremony"] .c-styleBlock_contentImg {
    max-width: 480px; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  [data-style-category="ceremony"] .c-styleBlock_contentImg {
    margin-left: -30px;
    margin-right: 0; } }

@media print, screen and (max-width: 767px) {
  [data-style-category="ceremony"] .c-styleBlock_contentImg {
    margin-right: 0; } }

[data-style-category="ceremony"] .c-styleBlock_contentInfo {
  position: relative;
  color: #fff;
  margin-top: 38px; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    [data-style-category="ceremony"] .c-styleBlock_contentInfo {
      padding: 0 0 60px 0; } }
  @media print, screen and (max-width: 767px) {
    [data-style-category="ceremony"] .c-styleBlock_contentInfo {
      padding: 40px 30px 40px 20px;
      margin: 0 -30px; } }
  [data-style-category="ceremony"] .c-styleBlock_contentInfo::before {
    content: "";
    position: absolute;
    background-color: #DDBABD;
    z-index: -1;
    width: 100%;
    bottom: 0; }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      [data-style-category="ceremony"] .c-styleBlock_contentInfo::before {
        width: 180%;
        height: calc(100% + 90px); } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      [data-style-category="ceremony"] .c-styleBlock_contentInfo::before {
        right: -30px;
        bottom: -30px;
        height: calc(100% + 323px);
        width: 150%; } }
    @media print, screen and (max-width: 767px) {
      [data-style-category="ceremony"] .c-styleBlock_contentInfo::before {
        height: calc(100% + 323px);
        right: 0;
        bottom: 0; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  [data-style-category="ceremony"] .c-styleBlock_contentPointTitle {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 6px;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    padding-bottom: 0;
    border-bottom: none; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  [data-style-category="ceremony"] .c-styleBlock_contentPointTitle::after {
    display: block;
    content: "";
    width: 1px;
    height: 100%;
    margin-right: 4px;
    background-color: #000; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  [data-style-category="ceremony"] .c-styleBlock_contentPoint_list {
    margin-top: 0; } }

/*
	おすすめのオプション
------------------------------------*/
@media print, screen and (min-width: 768px) {
  .c-recommendOption {
    margin-top: 120px; } }

@media print, screen and (max-width: 767px) {
  .c-recommendOption {
    margin-top: 64px; } }

.c-recommendOption_inner {
  background-color: #EFEFEF; }
  @media print, screen and (min-width: 768px) {
    .c-recommendOption_inner {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      gap: 0 80px;
      max-width: 960px;
      padding: min(80 / 1280 * 100vw, 80px);
      margin: 48px auto 0; } }
  @media print, screen and (max-width: 767px) {
    .c-recommendOption_inner {
      padding: 48px 70px;
      margin: 42px auto 0; } }

@media print, screen and (min-width: 768px) {
  .c-recommendOption_node {
    width: calc((100% - 80px) / 2); } }

@media print, screen and (max-width: 767px) {
  .c-recommendOption_node + .c-recommendOption_node {
    margin-top: 30px; } }

.c-recommendOption_nodeImg {
  aspect-ratio: 1;
  overflow: hidden;
  width: 100%; }
  .c-recommendOption_nodeImg img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover; }

.c-recommendOption_nodeTitle {
  font-size: 20px;
  letter-spacing: 0.16em;
  text-align: center; }
  @media print, screen and (min-width: 768px) {
    .c-recommendOption_nodeTitle {
      margin-top: 22px; } }
  @media print, screen and (max-width: 767px) {
    .c-recommendOption_nodeTitle {
      margin-top: 16px; } }

.c-recommendOption_caption {
  margin-top: 30px;
  letter-spacing: 0.04em;
  line-height: 1.8;
  text-align: center; }
  @media print, screen and (min-width: 768px) {
    .c-recommendOption_caption {
      margin-top: 30px;
      margin-left: -15px;
      margin-right: -15px; } }
  @media print, screen and (max-width: 767px) {
    .c-recommendOption_caption {
      margin-top: 12px;
      font-size: 12px;
      margin-left: -25px;
      margin-right: -25px; } }

/*
	セット買いがお得！
------------------------------------*/
@media print, screen and (min-width: 768px) {
  .c-set {
    padding: 0 30px;
    margin-top: 120px; } }

@media print, screen and (max-width: 767px) {
  .c-set {
    padding: 0 20px;
    margin-top: 98px; } }

.c-setInner {
  max-width: 1040px;
  margin: auto;
  border: 1px solid #bbb; }
  @media print, screen and (min-width: 768px) {
    .c-setInner {
      padding: 60px; } }
  @media print, screen and (max-width: 767px) {
    .c-setInner {
      padding: 40px 20px; } }

.c-setTitle {
  padding: 15px 38px;
  margin: auto;
  background-color: #141B29 !important;
  color: #fff !important;
  letter-spacing: 0.2em; }
  @media print, screen and (min-width: 768px) {
    .c-setTitle {
      font-size: 24px; } }
  @media print, screen and (max-width: 767px) {
    .c-setTitle {
      font-size: 20px; } }
  .c-setTitle::after {
    border-top: 6px solid #141B29; }

.c-setList {
  margin-top: 34px;
  border-bottom: 1px solid #bbb;
  padding-bottom: 32px; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-setList {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-setList:has(> .c-setList_node:nth-child(2)) {
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .c-setList_node {
    text-align: center; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .c-setList_node + .c-setList_node {
    margin-top: 24px;
    padding-top: 24px;
    border-top: 1px solid #bbb; } }

.c-setList_head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }
  @media print, screen and (min-width: 768px) {
    .c-setList_head {
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      gap: 16px; } }
  @media print, screen and (max-width: 767px) {
    .c-setList_head {
      gap: 13px; } }

.c-setList_count {
  letter-spacing: 0.16em; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-setList_count {
      font-size: 20px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-setList_count {
      font-size: 18px; } }

.c-setList_off {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 6px;
  width: 166px;
  padding: 4px 0 8px;
  border: 1px solid #000;
  font-family: "sweet-sans-pro", sans-serif;
  font-size: 26px;
  letter-spacing: 0.02em; }
  .c-setList_off .off {
    font-size: 14px;
    padding-top: 3px; }

.c-setList_text {
  margin-top: 22px;
  letter-spacing: 0.16em;
  line-height: 1.5; }
  @media print, screen and (min-width: 768px) {
    .c-setList_text {
      font-size: 20px;
      text-align: center; } }
  @media print, screen and (max-width: 767px) {
    .c-setList_text {
      font-size: 18px; } }

.c-setList_price {
  margin-top: 10px; }
  @media print, screen and (min-width: 768px) {
    .c-setList_price {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      gap: 5px;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center; } }

.c-setList_priceHead {
  font-family: "sweet-sans-pro", sans-serif;
  font-size: 12px;
  letter-spacing: 0.02em;
  padding-top: 9px; }

.c-setList_priceWotax {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-family: "sweet-sans-pro", sans-serif;
  gap: 4px;
  letter-spacing: 0.02em; }
  @media print, screen and (min-width: 768px) {
    .c-setList_priceWotax {
      font-size: 42px; } }
  @media print, screen and (max-width: 767px) {
    .c-setList_priceWotax {
      font-size: 40px; } }
  .c-setList_priceWotax .tax {
    font-family: "fot-cezanne-pron", sans-serif;
    font-size: 12px;
    letter-spacing: 0.08em;
    padding-top: 8px; }
  .c-setList_priceWotax .wave {
    font-size: 22px;
    letter-spacing: 0.08em; }

.c-setList_priceIntax {
  margin-top: 6px;
  font-size: 12px;
  letter-spacing: 0.08em; }
  .c-setList_priceIntax .num {
    font-family: "sweet-sans-pro", sans-serif;
    font-size: 16px; }
  @media print, screen and (max-width: 767px) {
    .c-setList_priceIntax i {
      font-size: 10px; } }

.c-setList_notice {
  letter-spacing: 0.06em;
  text-align: center; }
  @media print, screen and (min-width: 768px) {
    .c-setList_notice {
      margin-top: 40px;
      font-size: 18px; } }
  @media print, screen and (max-width: 767px) {
    .c-setList_notice {
      margin-top: 26px; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .c-setList_detail {
    margin-top: 80px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: min(60 / 1280 * 100vw, 60px); } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .c-setList_detail {
    margin-top: 40px; } }

.c-setList_detailImg_slider {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  position: relative; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-setList_detailImg_slider {
      width: min(460 / 1280 * 100vw, 460px); } }

.c-setList_detailImg_sliderArrows .slick-arrow {
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  width: 30px;
  height: 5px;
  background-image: url(../images/job/arrow_slider.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat; }

@media print, screen and (min-width: 768px) {
  .c-setList_detailImg_sliderArrows .slick-prev {
    left: -15px; } }

@media print, screen and (max-width: 767px) {
  .c-setList_detailImg_sliderArrows .slick-prev {
    left: -12px; } }

.c-setList_detailImg_sliderArrows .slick-next {
  scale: -1 1; }
  @media print, screen and (min-width: 768px) {
    .c-setList_detailImg_sliderArrows .slick-next {
      right: -15px; } }
  @media print, screen and (max-width: 767px) {
    .c-setList_detailImg_sliderArrows .slick-next {
      right: -12px; } }

.c-setList_detailImg_sliderInner {
  white-space: nowrap;
  font-size: 0;
  width: 100%;
  overflow: hidden; }
  .c-setList_detailImg_sliderInner .slick-dots {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    margin-top: 12px; }
    .c-setList_detailImg_sliderInner .slick-dots button, .c-setList_detailImg_sliderInner .slick-dots li {
      padding: 0;
      margin: 0; }
    .c-setList_detailImg_sliderInner .slick-dots li {
      width: 8px;
      height: 8px;
      border-radius: 50%;
      border: 1px solid #bbb; }
    .c-setList_detailImg_sliderInner .slick-dots .slick-active {
      background-color: #bbb; }

.c-setList_detailImg_sliderNode {
  aspect-ratio: 1;
  overflow: hidden;
  display: inline-block;
  width: 100%; }
  .c-setList_detailImg_sliderNode img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover; }

.c-setList_detailInfo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-setList_detailInfo {
      gap: 40px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-setList_detailInfo {
      margin-top: 40px;
      gap: 40px; } }
  @media print, screen and (max-width: 767px) {
    .c-setList_detailInfo {
      gap: 28px; } }

.c-setList_detailInfo_node {
  display: -ms-grid;
  display: grid;
  grid-template-areas: 'name price' 'caption caption';
  grid-auto-columns: auto 1fr; }
  @media print, screen and (min-width: 768px) {
    .c-setList_detailInfo_node {
      gap: 24px 12px; } }
  @media print, screen and (max-width: 767px) {
    .c-setList_detailInfo_node {
      gap: 12px 0; } }

.c-setList_detailInfo_name {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: name;
  letter-spacing: 0.16em; }
  @media print, screen and (min-width: 768px) {
    .c-setList_detailInfo_name {
      font-size: 24px; } }
  @media print, screen and (max-width: 767px) {
    .c-setList_detailInfo_name {
      font-size: 18px; } }

.c-setList_detailInfo_price {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
  grid-area: price;
  text-align: right; }
  .c-setList_detailInfo_price .price {
    font-family: "sweet-sans-pro", sans-serif;
    letter-spacing: 0.02em; }
    @media print, screen and (min-width: 768px) {
      .c-setList_detailInfo_price .price {
        font-size: 20px; } }
    @media print, screen and (max-width: 767px) {
      .c-setList_detailInfo_price .price {
        font-size: 18px; } }
    .c-setList_detailInfo_price .price > span {
      font-family: "fot-cezanne-pron", sans-serif; }
      @media print, screen and (min-width: 768px) {
        .c-setList_detailInfo_price .price > span {
          font-size: 12px; } }
      @media print, screen and (max-width: 767px) {
        .c-setList_detailInfo_price .price > span {
          font-size: 11px; } }
  .c-setList_detailInfo_price .tax {
    padding-left: 4px;
    letter-spacing: 0.08em; }
    @media print, screen and (min-width: 768px) {
      .c-setList_detailInfo_price .tax {
        font-size: 12px; } }
    @media print, screen and (max-width: 767px) {
      .c-setList_detailInfo_price .tax {
        font-size: 11px; } }
    .c-setList_detailInfo_price .tax > span {
      font-family: "sweet-sans-pro", sans-serif;
      font-size: 12px; }

.c-setList_detailInfo_caption {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-area: caption;
  line-height: 1.8; }

/*
	リクルートスーツの基本
------------------------------------*/
@media print, screen and (min-width: 768px) {
  .c-basic {
    padding-top: 120px; } }

@media print, screen and (max-width: 767px) {
  .c-basic {
    padding-top: 64px; } }

@media print, screen and (min-width: 768px) {
  .c-sectionTitle + .c-basicContents {
    margin-top: 64px; } }

@media print, screen and (max-width: 767px) {
  .c-sectionTitle + .c-basicContents {
    margin-top: 44px; } }

.c-basicList {
  max-width: 1000px;
  padding: 0 20px;
  margin: auto; }

.c-basicList_node {
  position: relative; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-basicList_node {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: start;
      -ms-flex-align: start;
      align-items: flex-start;
      gap: min(80 / 1280 * 100vw, 80px); } }
  .c-basicList_node:nth-child(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-basicList_node + .c-basicList_node {
      margin-top: 120px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-basicList_node + .c-basicList_node {
      margin-top: 64px; } }

.c-basicList_img {
  aspect-ratio: 1;
  overflow: hidden;
  position: relative;
  z-index: 1; }
  .c-basicList_img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-basicList_img {
      -ms-flex-negative: 0;
      flex-shrink: 0;
      width: 440px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-basicList_img {
      width: 83.6%;
      margin-left: -20px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-basicList_node:nth-child(even) .c-basicList_img {
      margin-left: auto;
      margin-right: -20px; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .c-basicList_info {
    position: relative;
    width: 100%;
    padding-bottom: min(50 / 1280 * 100vw, 50px);
    margin-top: 90px;
    min-height: 400px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .c-basicList_info {
    padding: 30px 30px 40px 40px; } }

.c-basicList_info::before {
  content: "";
  position: absolute;
  border: 10px solid #EFEFEF;
  z-index: -1; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-basicList_info::before {
      top: 0;
      width: min(840 / 1024 * 100vw, 840px);
      height: 100%; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-basicList_info::before {
      bottom: 0;
      width: 100%;
      height: 78%; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .c-basicList_node:nth-child(odd) .c-basicList_info {
    padding: 64px min(108 / 1280 * 100vw, 108px) 82px 0; } }

.c-basicList_node:nth-child(odd) .c-basicList_info::before {
  right: 0; }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .c-basicList_node:nth-child(even) .c-basicList_info {
    padding: 64px 0 82px min(108 / 1280 * 100vw, 108px); } }

.c-basicList_node:nth-child(even) .c-basicList_info::before {
  left: 0; }

.c-basicList_infoInner {
  position: relative;
  z-index: 2; }

.c-basicList_count {
  font-family: "sweet-sans-pro", sans-serif;
  letter-spacing: 0.08em;
  position: absolute;
  right: 30px; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-basicList_count {
      top: 25px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-basicList_count {
      top: 30%;
      -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
      text-orientation: mixed; } }
  .c-basicList_node:nth-child(even) .c-basicList_count {
    right: auto;
    left: 30px; }

.c-basicList_catch {
  letter-spacing: 0.14em;
  line-height: 1.5; }
  @media print, screen and (min-width: 768px) {
    .c-basicList_catch {
      font-size: 24px; } }
  @media print, screen and (max-width: 767px) {
    .c-basicList_catch {
      font-size: 18px; } }

.c-basicList_caption {
  margin-top: 26px;
  letter-spacing: 0.12em;
  line-height: 1.8; }

.c-basicList_link {
  max-width: 370px;
  margin: 28px auto 0; }

[data-basic-category="ceremony"] .c-basicContents {
  padding: 80px 0;
  background-color: #EFEFEF; }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  [data-basic-category="ceremony"] .c-basicList_node {
    gap: min(54 / 1280 * 100vw, 54px); } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  [data-basic-category="ceremony"] .c-basicList_node:nth-child(odd) .c-basicList_info {
    padding: 64px min(55 / 1280 * 100vw, 55px) 82px 0; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  [data-basic-category="ceremony"] .c-basicList_node:nth-child(odd) .c-basicList_count {
    right: 43%; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  [data-basic-category="ceremony"] .c-basicList_node:nth-child(odd) .c-basicList_count {
    right: 10px; } }

[data-basic-category="ceremony"] .c-basicList_node:nth-child(odd) .c-basicList_countBg {
  rotate: 90deg; }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  [data-basic-category="ceremony"] .c-basicList_node:nth-child(odd)::before {
    left: auto;
    right: -20px; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  [data-basic-category="ceremony"] .c-basicList_node:nth-child(even) .c-basicList_info {
    padding: 64px 0 82px min(55 / 1280 * 100vw, 55px); } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  [data-basic-category="ceremony"] .c-basicList_node:nth-child(even) .c-basicList_count {
    left: 43%; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  [data-basic-category="ceremony"] .c-basicList_node:nth-child(even) .c-basicList_count {
    left: 10px; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  [data-basic-category="ceremony"] .c-basicList_node:nth-child(even)::before {
    right: auto;
    left: -20px; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  [data-basic-category="ceremony"] .c-basicList_img {
    width: 74.3%; } }

[data-basic-category="ceremony"] .c-basicList_info::before {
  border: none;
  background-color: #fff;
  z-index: 0; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    [data-basic-category="ceremony"] .c-basicList_info::before {
      width: calc(100% + 20px); } }

[data-basic-category="ceremony"] .c-basicList_count {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-writing-mode: horizontal-tb;
  -ms-writing-mode: lr-tb;
  writing-mode: horizontal-tb; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    [data-basic-category="ceremony"] .c-basicList_count {
      top: -90px;
      width: 121px;
      height: 121px;
      font-size: 26px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    [data-basic-category="ceremony"] .c-basicList_count {
      top: auto;
      bottom: 75.5%;
      width: 81px;
      height: 81px;
      font-size: 20px; } }

[data-basic-category="ceremony"] .c-basicList_countBg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(../svg/circle-b.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat; }

/*
	レンジ
------------------------------------*/
.c-range {
  padding: 0 30px;
  text-align: center;
  border-top: 6px solid #EFEFEF; }
  @media print, screen and (min-width: 768px) {
    .c-range {
      padding-top: 124px;
      margin-top: 124px; } }
  @media print, screen and (max-width: 767px) {
    .c-range {
      padding-top: 80px;
      margin-top: 68px; } }

.c-rangeCatch {
  font-size: 20px;
  letter-spacing: 0.08em;
  line-height: 1.6;
  text-align: center; }
  @media print, screen and (min-width: 768px) {
    .c-rangeCatch {
      margin-top: 50px; } }
  @media print, screen and (max-width: 767px) {
    .c-rangeCatch {
      margin-top: 24px; } }

.c-rangeCatch_num {
  display: inline-block;
  padding: 0 3px;
  font-family: "sweet-sans-pro", sans-serif;
  font-size: 32px;
  letter-spacing: 0.02em; }

.c-rangeLead {
  letter-spacing: 0.08em;
  line-height: 1.8; }
  @media print, screen and (min-width: 768px) {
    .c-rangeLead {
      margin-top: 26px;
      text-align: center; } }
  @media print, screen and (max-width: 767px) {
    .c-rangeLead {
      margin-top: 20px;
      text-align: left; } }

.c-rangeImg {
  max-width: 880px; }
  @media print, screen and (min-width: 768px) {
    .c-rangeImg {
      margin: 56px auto 0; } }
  @media print, screen and (max-width: 767px) {
    .c-rangeImg {
      margin: 26px auto 0; } }
  .c-rangeImg img {
    width: 100%; }

/*
	order
------------------------------------*/
@media print, screen and (min-width: 768px) {
  .c-order {
    margin-top: 110px; } }

@media print, screen and (max-width: 767px) {
  .c-order {
    margin-top: 70px; } }

.c-orderList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 1040px;
  padding: 0 30px; }
  @media print, screen and (min-width: 768px) {
    .c-orderList {
      gap: 40px;
      margin: 70px auto 0; } }
  @media print, screen and (max-width: 767px) {
    .c-orderList {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      gap: 28px;
      margin-top: 44px; } }

@media print, screen and (min-width: 768px) {
  .c-orderList_node {
    width: calc((100% - 40px * 2) / 3); } }

.c-orderList_img img {
  width: 100%; }

.c-orderList_head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 22px; }
  @media print, screen and (min-width: 768px) {
    .c-orderList_head {
      margin-top: 18px; } }
  @media print, screen and (max-width: 767px) {
    .c-orderList_head {
      margin-top: 14px; } }

.c-orderList_num {
  font-family: "sweet-sans-pro", sans-serif;
  font-size: 32px;
  letter-spacing: 0.24em; }

.c-orderList_title {
  padding-top: 5px;
  font-size: 20px;
  letter-spacing: 0.08em;
  line-height: 1.6; }

.c-orderList_text {
  letter-spacing: 0.18em;
  line-height: 1.8; }
  @media print, screen and (min-width: 768px) {
    .c-orderList_text {
      margin-top: 23px; } }
  @media print, screen and (max-width: 767px) {
    .c-orderList_text {
      margin-top: 10px; } }

.c-orderOnline {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  max-width: 1040px;
  padding: 46px 20px;
  background-color: #EFEFEF; }
  @media print, screen and (min-width: 768px) {
    .c-orderOnline {
      gap: 60px;
      margin: 56px auto 0; } }
  @media print, screen and (max-width: 767px) {
    .c-orderOnline {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      gap: 12px;
      margin: 26px auto 0; } }

.c-orderOnline_img {
  -ms-flex-negative: 0;
  flex-shrink: 0; }
  @media print, screen and (min-width: 768px) {
    .c-orderOnline_img {
      width: 228px; } }
  .c-orderOnline_img img {
    width: 100%; }

.c-orderOnline_title {
  font-size: 20px;
  letter-spacing: 0.08em;
  line-height: 1.6; }

.c-orderOnline_text {
  letter-spacing: 0.08em;
  line-height: 1.8; }
  @media print, screen and (min-width: 768px) {
    .c-orderOnline_text {
      margin-top: 22px; } }
  @media print, screen and (max-width: 767px) {
    .c-orderOnline_text {
      margin-top: 12px; } }

.c-orderOnline_link {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #fff;
  border: 1px solid;
  border-radius: 32px;
  font-size: 16px;
  letter-spacing: .16em;
  -webkit-transition: color .3s ease, background-color .3s ease;
  transition: color .3s ease, background-color .3s ease; }
  @media print, screen and (min-width: 768px) {
    .c-orderOnline_link {
      width: 296px;
      height: 64px;
      margin-top: 36px; } }
  @media print, screen and (max-width: 767px) {
    .c-orderOnline_link {
      max-width: 315px;
      width: 100%;
      height: 60px;
      margin: 24px auto 0; } }
  .c-orderOnline_link::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 26px;
    translate: 0 -50%;
    rotate: 45deg;
    width: 6px;
    height: 6px;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    -webkit-transition: border-color .3s ease;
    transition: border-color .3s ease; }
  @media (hover: hover) {
    .c-orderOnline_link:hover {
      background-color: #000;
      color: #fff; } }
  .c-orderOnline_link:hover::after {
    border-color: #fff; }

/*
	f2c
------------------------------------*/
@media print, screen and (min-width: 768px) {
  .c-f2c {
    margin-top: 110px; } }

@media print, screen and (max-width: 767px) {
  .c-f2c {
    margin-top: 68px; } }

.c-f2cContent {
  max-width: 1040px;
  background-color: #EFEFEF;
  text-align: center; }
  @media print, screen and (min-width: 768px) {
    .c-f2cContent {
      padding: 80px 30px;
      margin: 70px auto 0; } }
  @media print, screen and (max-width: 767px) {
    .c-f2cContent {
      padding: 50px 30px;
      margin: 44px auto 0; } }

.c-f2cContent_step {
  max-width: 880px; }
  @media print, screen and (min-width: 768px) {
    .c-f2cContent_step {
      margin: 56px auto 0; } }
  @media print, screen and (max-width: 767px) {
    .c-f2cContent_step {
      margin: 46px auto 0; } }
  .c-f2cContent_step img {
    width: 100%; }

.c-f2cContent_title {
  letter-spacing: 0.1em; }
  @media print, screen and (min-width: 768px) {
    .c-f2cContent_title {
      font-size: 24px;
      line-height: 2; } }
  @media print, screen and (max-width: 767px) {
    .c-f2cContent_title {
      font-size: 20px;
      line-height: 1.5; } }

.c-f2cContent_titleLower .head {
  display: inline-block;
  position: relative;
  top: 4px;
  font-family: "sweet-sans-pro", sans-serif;
  letter-spacing: 0.08em; }
  @media print, screen and (min-width: 768px) {
    .c-f2cContent_titleLower .head {
      margin-top: -28px;
      font-size: 32px; } }
  @media print, screen and (max-width: 767px) {
    .c-f2cContent_titleLower .head {
      margin-top: -14px;
      font-size: 28px; } }
  .c-f2cContent_titleLower .head i {
    font-style: normal; }
    @media print, screen and (min-width: 768px) {
      .c-f2cContent_titleLower .head i {
        font-size: 36px; } }
    @media print, screen and (max-width: 767px) {
      .c-f2cContent_titleLower .head i {
        font-size: 32px; } }

.c-f2cContent_titleLower .sub {
  position: relative;
  display: inline-block;
  font-family: "sweet-sans-pro", sans-serif;
  letter-spacing: 0.04em; }
  @media print, screen and (min-width: 768px) {
    .c-f2cContent_titleLower .sub {
      font-size: 24px;
      padding: 0 36px; } }
  @media print, screen and (max-width: 767px) {
    .c-f2cContent_titleLower .sub {
      position: relative;
      top: -2px;
      font-size: 14px;
      padding: 0 26px; } }
  .c-f2cContent_titleLower .sub::before, .c-f2cContent_titleLower .sub::after {
    position: absolute;
    content: "";
    top: 54%;
    height: 1px;
    background-color: #000; }
    @media print, screen and (min-width: 768px) {
      .c-f2cContent_titleLower .sub::before, .c-f2cContent_titleLower .sub::after {
        width: 20px; } }
    @media print, screen and (max-width: 767px) {
      .c-f2cContent_titleLower .sub::before, .c-f2cContent_titleLower .sub::after {
        width: 15px; } }
  .c-f2cContent_titleLower .sub::before {
    left: 8px; }
  .c-f2cContent_titleLower .sub::after {
    right: 8px; }

.c-f2cContent_lead {
  margin-top: 20px;
  letter-spacing: 0.08em;
  line-height: 1.8; }

/*
	aftercare
------------------------------------*/
@media print, screen and (min-width: 768px) {
  .c-aftercare {
    margin-top: 110px; } }

@media print, screen and (max-width: 767px) {
  .c-aftercare {
    margin-top: 68px; } }

.c-aftercareContent {
  max-width: 1040px;
  color: #fff;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover; }
  @media print, screen and (min-width: 768px) {
    .c-aftercareContent {
      padding: 80px 30px;
      margin: 70px auto 0;
      background-image: url(../images/aftercare_bg-pc.jpg); } }
  @media print, screen and (max-width: 767px) {
    .c-aftercareContent {
      padding: 56px 30px;
      margin: 44px auto 0;
      background-image: url(../images/aftercare_bg-sp.jpg); } }

.c-aftercareCatch {
  letter-spacing: 0.1em;
  line-height: 1.5;
  text-align: center; }
  @media print, screen and (min-width: 768px) {
    .c-aftercareCatch {
      font-size: 24px; } }
  @media print, screen and (max-width: 767px) {
    .c-aftercareCatch {
      font-size: 20px; } }

.c-aftercareText {
  letter-spacing: 0.08em;
  line-height: 1.8; }
  @media print, screen and (min-width: 768px) {
    .c-aftercareText {
      margin-top: 56px;
      text-align: center; } }
  @media print, screen and (max-width: 767px) {
    .c-aftercareText {
      margin-top: 26px; } }

.c-aftercareNote {
  font-size: 12px;
  letter-spacing: 0.08em;
  line-height: 2; }
  @media print, screen and (min-width: 768px) {
    .c-aftercareNote {
      margin-top: 26px;
      text-align: center; } }
  @media print, screen and (max-width: 767px) {
    .c-aftercareNote {
      margin-top: 18px; } }

.pageNotice {
  margin: 80px 0;
  text-align: center;
  font-size: 12px;
  letter-spacing: 0.08em;
  line-height: 2; }

/*=============================================

	トップページ

==============================================*/
.t-kv {
  position: relative;
  width: 100%; }

.t-kvImg {
  width: 100%;
  display: block; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .t-kvImg {
      min-height: 740px;
      height: calc(100svh - 60px); } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .t-kvImg {
      aspect-ratio: 375/670;
      max-height: 964px; } }
  .t-kvImg img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .t-kvImg.t-kvImg_index {
      aspect-ratio: 432/670; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .t-kvImg.t-kvImg_index img {
      -o-object-position: bottom;
      object-position: bottom; } }

.t-kvContents {
  inset: 0;
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  color: #fff; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .t-kvContents {
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      width: 50%;
      height: 100%;
      margin: auto 0 auto auto;
      background: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.1)), to(transparent));
      background: -webkit-linear-gradient(right, rgba(0, 0, 0, 0.1) 0%, transparent 100%);
      background: linear-gradient(to left, rgba(0, 0, 0, 0.1) 0%, transparent 100%); } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .t-kvContents {
      margin: 20px auto auto; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .t-kvContents.t-kvContents_index {
      margin-top: 30px; } }

.t-kvCatch_main {
  letter-spacing: 0.2em; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .t-kvCatch_main {
      font-size: 32px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .t-kvCatch_main {
      font-size: 26px; } }

.t-kvCatch_main_index {
  letter-spacing: 0.16em;
  display: block;
  border-bottom: 1px solid #fff;
  text-align: center; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .t-kvCatch_main_index {
      font-size: 18px;
      padding-bottom: 15px;
      width: 315px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .t-kvCatch_main_index {
      font-size: 20px;
      width: 480px;
      padding-bottom: 20px; } }

.t-kvCatch_sub {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 7px;
  letter-spacing: 0.2em;
  text-align: center; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .t-kvCatch_sub {
      margin-top: 22px;
      font-size: 23px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .t-kvCatch_sub {
      margin-top: 16px;
      font-size: 24px; } }

.t-kvCatch_sub_index {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  letter-spacing: 0.2em;
  text-align: center; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .t-kvCatch_sub_index {
      margin-top: 38px;
      font-size: 23px;
      gap: 13px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .t-kvCatch_sub_index {
      margin-top: 16px;
      font-size: 24px;
      gap: 11px; } }

.t-kvCatch_subLogo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 202px;
  text-align: center; }
  .t-kvCatch_subLogo img {
    width: 100%; }
  .t-kvCatch_subLogo.t-kvCatch_subLogo {
    width: 190px; }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .t-kvTitle {
    margin-top: 26px;
    width: 390px; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .t-kvTitle {
    margin-top: 12px;
    width: 312px; } }

@media print, screen and (max-width: 320px) {
  .t-kvTitle {
    width: 245px; } }

.t-kvTitle img {
  width: 100%; }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .t-kvTitle_index {
    width: 480px;
    margin-top: 20px; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .t-kvTitle_index {
    width: 324px;
    margin-top: 23px; } }

.t-kvTitle_index img {
  width: 100%; }

.t-kvGender {
  position: relative;
  font-family: "sweet-sans-pro", sans-serif;
  text-align: center; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .t-kvGender {
      width: 390px;
      margin-top: 15px;
      font-size: 24px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .t-kvGender {
      width: 100%;
      margin-top: 7px;
      font-size: 20px; } }
  .t-kvGender:before, .t-kvGender:after {
    content: "";
    position: absolute;
    top: 50%;
    height: 1px;
    background-color: #fff; }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      [data-category="men"] .t-kvGender:before, [data-category="men"] .t-kvGender:after {
        width: 100px; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      [data-category="men"] .t-kvGender:before, [data-category="men"] .t-kvGender:after {
        width: 80px; } }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      [data-category="women"] .t-kvGender:before, [data-category="women"] .t-kvGender:after {
        width: 80px; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      [data-category="women"] .t-kvGender:before, [data-category="women"] .t-kvGender:after {
        width: 60px; } }
  .t-kvGender:before {
    left: 0; }
  .t-kvGender:after {
    right: 0; }

.t-kvCategory {
  letter-spacing: 0.2em;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .t-kvCategory {
      padding: 16px 13px;
      margin-top: 30px;
      font-size: 20px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .t-kvCategory {
      padding: 13px;
      margin-top: 10px;
      font-size: 18px; } }

.t-kvCategory-gender {
  letter-spacing: 0.3em; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .t-kvCategory-gender {
      margin-top: 20px;
      font-size: 20px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .t-kvCategory-gender {
      margin-top: 12px;
      font-size: 18px; } }
  @media print, screen and (max-width: 320px) {
    .t-kvCategory-gender {
      font-size: 16px; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .t-kvPrice {
    background-color: #EFEFEF; } }

.t-kvPrice_fukidashi {
  padding: 8px 22px;
  margin: auto;
  font-size: 18px;
  letter-spacing: 0.2em; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .t-kvPrice_fukidashi {
      background-color: #fff;
      color: #A7B2B7; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .t-kvPrice_fukidashi {
      background-color: #000;
      color: #fff; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .t-kvPrice_fukidashi::after {
      border-top: 6px solid #ffffff; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .t-kvPrice_fukidashi::after {
      border-top: 6px solid #000000; } }

.t-kvPrice {
  text-align: center;
  letter-spacing: .04em; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .t-kvPrice {
      margin-top: 40px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .t-kvPrice {
      padding: 24px 0; } }

.t-kvPrice_before {
  margin-top: 18px; }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .t-kvPrice_before_index {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; } }

.c-kvPrice_beforePrice_inner .num, .c-kvPrice_beforeIntax .num, .t-kvPrice_beforePrice_inner, .t-kvPrice_beforeIntax .num {
  position: relative; }
  .c-kvPrice_beforePrice_inner .num::after, .c-kvPrice_beforeIntax .num::after, .t-kvPrice_beforePrice_inner::after, .t-kvPrice_beforeIntax .num::after {
    position: absolute;
    top: 57%;
    left: 0;
    content: "";
    width: 100%;
    height: 1px; }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      .c-kvPrice_beforePrice_inner .num::after, .c-kvPrice_beforeIntax .num::after, .t-kvPrice_beforePrice_inner::after, .t-kvPrice_beforeIntax .num::after {
        background-color: #fff; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      .c-kvPrice_beforePrice_inner .num::after, .c-kvPrice_beforeIntax .num::after, .t-kvPrice_beforePrice_inner::after, .t-kvPrice_beforeIntax .num::after {
        background-color: #000; } }
  [data-category="ceremony"] .c-kvPrice_beforePrice_inner .num::after, .c-kvPrice_beforePrice_inner [data-category="ceremony"] .num::after, [data-category="ceremony"] .c-kvPrice_beforeIntax .num::after, .c-kvPrice_beforeIntax [data-category="ceremony"] .num::after, [data-category="ceremony"] .t-kvPrice_beforePrice_inner::after, [data-category="ceremony"] .t-kvPrice_beforeIntax .num::after, .t-kvPrice_beforeIntax [data-category="ceremony"] .num::after {
    background-color: #000; }

.t-kvPrice_beforePrice {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: auto; }
  .t-kvPrice_beforePrice i {
    font-size: 12px; }
  .t-kvPrice_beforePrice .yen {
    font-family: "sweet-sans-pro", sans-serif;
    font-size: 26px; }

.t-kvPrice_beforePrice_index {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content; }
  .t-kvPrice_beforePrice_index i {
    font-size: 12px; }
  .t-kvPrice_beforePrice_index .yen {
    font-family: "sweet-sans-pro", sans-serif;
    font-size: 26px; }

.t-kvPrice_beforePrice_inner {
  font-family: "sweet-sans-pro", sans-serif;
  font-size: 26px; }

.t-kvPrice_beforeIntax,
.t-kvPrice_afterIntax {
  letter-spacing: 0.08em; }
  .t-kvPrice_beforeIntax .num, .t-kvPrice_beforeIntax .yen,
  .t-kvPrice_afterIntax .num,
  .t-kvPrice_afterIntax .yen {
    font-family: "sweet-sans-pro", sans-serif;
    letter-spacing: 0.04em; }

.t-kvPrice_beforeIntax {
  margin-top: 8px;
  font-size: 12px; }
  .t-kvPrice_beforeIntax .num, .t-kvPrice_beforeIntax .yen {
    font-size: 18px; }
  .t-kvPrice_beforeIntax i {
    font-size: 10px; }

.t-kvPrice_after {
  position: relative;
  margin-top: 12px; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .t-kvPrice_after {
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
      margin: auto;
      translate: 14px 0; } }

.t-kvPrice_afterCircle {
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  letter-spacing: 0.08em; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .t-kvPrice_afterCircle {
      top: -33px;
      left: -53px;
      background-image: url(../svg/circle-w.svg);
      width: 75px;
      height: 75px;
      font-size: 26px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .t-kvPrice_afterCircle {
      top: -19px;
      left: -35px;
      background-image: url(../svg/circle-b.svg);
      width: 46px;
      height: 46px;
      font-size: 16px; } }

.t-kvPrice_afterPrice {
  font-family: "sweet-sans-pro", sans-serif; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .t-kvPrice_afterPrice {
      font-size: 70px;
      letter-spacing: 0.04em; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .t-kvPrice_afterPrice {
      font-size: 60px;
      letter-spacing: 0.02em; } }
  .t-kvPrice_afterPrice i {
    font-family: "fot-cezanne-pron", sans-serif; }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      .t-kvPrice_afterPrice i {
        font-size: 18px; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      .t-kvPrice_afterPrice i {
        font-size: 15px; } }

.t-kvPrice_afterIntax {
  margin-top: 12px;
  font-size: 15px; }
  .t-kvPrice_afterIntax .num, .t-kvPrice_afterIntax .yen {
    font-size: 22px; }
  .t-kvPrice_afterIntax i {
    font-size: 13px; }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .t-index_wrap {
    max-width: 960px;
    margin-inline: auto;
    padding-bottom: 90px;
    border-bottom: 1px solid #BBBBBB; } }

@media print, screen and (min-width: 768px) {
  .t-index {
    margin-top: 120px; } }

@media print, screen and (max-width: 767px) {
  .t-index {
    margin-top: 60px; } }

.t-indexCatch {
  max-width: 874px;
  padding: 0 30px;
  margin: auto;
  letter-spacing: 0.2em;
  line-height: 1.37;
  text-align: center; }
  @media print, screen and (min-width: 768px) {
    .t-indexCatch {
      font-size: 28px; } }
  @media print, screen and (max-width: 767px) {
    .t-indexCatch {
      font-size: 24px; } }

.t-indexLead {
  max-width: 700px;
  padding: 0 30px;
  margin: 36px auto 0;
  font-size: 16px;
  letter-spacing: 0.16em;
  line-height: 1.8; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .t-indexLead {
      text-align: center; } }

@media print, screen and (min-width: 1025px) {
  .t-indexWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: min(40 / 1280 * 100vw, 40px);
    width: min(1110 / 1280 * 100vw, 1110px);
    margin: 120px auto 0; } }

@media print, screen and (max-width: 1024px) {
  .t-indexWrap {
    margin: 60px auto 0; } }

@media print, screen and (min-width: 1025px) {
  [data-page="indexByGender"] .t-indexWrap {
    gap: min(80 / 1280 * 100vw, 80px); } }

@media print, screen and (min-width: 1025px) {
  .t-indexWrap .c-index {
    padding-top: 0;
    margin-top: 0; } }

@media print, screen and (min-width: 1025px) {
  .t-indexWrap .c-indexList {
    width: auto;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    gap: min(10 / 1280 * 100vw, 10px); } }

@media print, screen and (min-width: 1025px) {
  [data-page="indexByGender"] .t-indexWrap .c-indexList {
    margin-top: 0; } }

@media print, screen and (max-width: 1024px) {
  [data-page="indexByGender"] .t-indexWrap .c-indexList {
    margin-top: 50px; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .t-indexWrap .c-indexList_title {
    padding: 9px; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  [data-page="indexByGender"] .t-indexWrap .c-indexList_title {
    padding: 20px 0 0;
    font-size: 28px; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  [data-page="indexByGender"] .t-indexWrap .c-indexList_title {
    padding: 17px 0 0;
    font-size: 20px; } }

/*
	追従ナビ
------------------------------------*/
@-webkit-keyframes fadeUpAnime {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@keyframes fadeUpAnime {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

.reservationFixed {
  -webkit-transition: .5s;
  transition: .5s;
  text-align: center;
  z-index: -1;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 999;
  background-color: #141B29;
  opacity: 0;
  visibility: hidden; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .reservationFixed {
      padding: 18px 0; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .reservationFixed {
      padding: 16px; } }
  [data-category="job"] .reservationFixed {
    background-color: #D5DFE1; }
  [data-category="ceremony"] .reservationFixed {
    background-color: #DDBABD; }

.reservationFixed_inner {
  color: #fff; }
  [data-category="job"] .reservationFixed_inner,
  [data-category="ceremony"] .reservationFixed_inner {
    color: #141B29; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .reservationFixed_inner {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center; } }

.reservationTitle {
  font-family: "sweet-sans-pro", sans-serif; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .reservationTitle {
      font-size: 10px;
      letter-spacing: .16em;
      display: inline-block; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .reservationTitle {
      position: relative;
      margin-right: 40px;
      padding-right: 40px;
      font-size: 12px;
      letter-spacing: .24em;
      line-height: 2; }
      .reservationTitle:after {
        content: '';
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        right: 0;
        border-right: 1px solid #fff;
        width: 1px;
        height: 60px; } }
  [data-category="job"] .reservationTitle::after,
  [data-category="ceremony"] .reservationTitle::after {
    border-right: 1px solid #141B29; }

.reservationText {
  font-family: "fot-cezanne-pron", sans-serif;
  letter-spacing: .14em; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .reservationText {
      margin-left: 10px;
      font-size: 12px;
      display: inline-block; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .reservationText {
      font-size: 18px; } }

.reservationButton {
  font-family: "fot-cezanne-pron", sans-serif;
  letter-spacing: .08em; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .reservationButton {
      font-size: 15px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .reservationButton {
      font-size: 18px; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .reservationDetail {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; } }

.reservationText_caution {
  display: block;
  text-align: left;
  margin-top: 10px;
  font-size: 14px;
  letter-spacing: .14em; }

a.reservationButton_link {
  position: relative;
  display: block;
  color: #141B29;
  background: #fff;
  letter-spacing: .08em;
  border-radius: 4px;
  border: 1px solid #fff;
  text-align: center; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    a.reservationButton_link {
      padding: 0 30px;
      margin: 15px auto 0;
      width: 315px;
      font-size: 15px;
      padding: 11.5px 0; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    a.reservationButton_link {
      width: 360px;
      font-size: 18px;
      padding: 20px 0;
      margin-left: 40px;
      -webkit-transition: all .5s;
      transition: all .5s; } }
  @media (hover: hover) {
    a.reservationButton_link:hover {
      background-color: #141B29;
      color: #fff; } }
  @media (hover: hover) {
    [data-category="job"] a.reservationButton_link:hover {
      background-color: #D5DFE1;
      color: #fff; } }
  @media (hover: hover) {
    [data-category="ceremony"] a.reservationButton_link:hover {
      background-color: #DDBABD;
      color: #fff; } }
  a.reservationButton_link:after {
    content: '';
    width: 8px;
    height: 8px;
    border-top: solid 1px;
    border-right: solid 1px;
    position: absolute;
    right: 35px;
    top: 50%;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -4px; }
    @media print, screen and (max-width: 767px) {
      a.reservationButton_link:after {
        width: 0.38em;
        height: 0.38em;
        right: 25px; } }

/*
	おすすめのオプション
------------------------------------*/
@media print, screen and (min-width: 768px) {
  .ceremony-option {
    margin-top: 120px; } }

@media print, screen and (max-width: 767px) {
  .ceremony-option {
    margin-top: 60px; } }

.ceremony-optionContent {
  max-width: 1040px;
  background-color: #EFEFEF; }
  @media print, screen and (min-width: 768px) {
    .ceremony-optionContent {
      width: calc(100% - 40px);
      padding: 80px;
      margin: 72px auto 0; } }
  @media print, screen and (max-width: 767px) {
    .ceremony-optionContent {
      padding: 50px 30px;
      margin-top: 40px; } }

.ceremony-optionBlock {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media print, screen and (min-width: 768px) {
    .ceremony-optionBlock {
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      gap: 20px; } }
  @media print, screen and (max-width: 767px) {
    .ceremony-optionBlock {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      gap: 30px; } }
  @media print, screen and (min-width: 768px) {
    .ceremony-optionBlock + .ceremony-optionBlock {
      margin-top: 60px; } }
  @media print, screen and (max-width: 767px) {
    .ceremony-optionBlock + .ceremony-optionBlock {
      margin-top: 50px; } }

.ceremony-optionBlock_head {
  -ms-flex-negative: 0;
  flex-shrink: 0; }
  @media print, screen and (min-width: 768px) {
    .ceremony-optionBlock_head {
      width: 120px;
      padding-left: 20px;
      border-left: 1px solid #BBBBBB; } }
  @media print, screen and (max-width: 767px) {
    .ceremony-optionBlock_head {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-box-align: end;
      -ms-flex-align: end;
      align-items: flex-end;
      padding-bottom: 12px;
      border-bottom: 1px solid #BBBBBB; } }

.ceremony-optionBlock_jp {
  font-size: 24px;
  letter-spacing: 0.08em; }

.ceremony-optionBlock_en {
  margin-top: 10px;
  font-family: "sweet-sans-pro", sans-serif;
  font-size: 12px;
  letter-spacing: 0.24em; }

.ceremony-optionBlock_img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  @media print, screen and (min-width: 768px) {
    .ceremony-optionBlock_img {
      width: min(677 / 1040 * 100vw, 677px); } }
  @media print, screen and (min-width: 768px) {
    [data-option="linning"] .ceremony-optionBlock_img,
    [data-option="button"] .ceremony-optionBlock_img {
      gap: 10px; } }
  @media print, screen and (max-width: 767px) {
    [data-option="linning"] .ceremony-optionBlock_img,
    [data-option="button"] .ceremony-optionBlock_img {
      gap: 5px; } }
  @media print, screen and (min-width: 768px) {
    [data-option="design"] .ceremony-optionBlock_img {
      gap: 12px; } }
  @media print, screen and (max-width: 767px) {
    [data-option="design"] .ceremony-optionBlock_img {
      gap: 5px; } }

.ceremony-optionBlock_imgNode {
  aspect-ratio: 1 / 1; }
  .ceremony-optionBlock_imgNode img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain; }
  @media print, screen and (min-width: 768px) {
    [data-option="linning"] .ceremony-optionBlock_imgNode,
    [data-option="button"] .ceremony-optionBlock_imgNode {
      width: calc((100% - 10px * 6) / 7); } }
  @media print, screen and (max-width: 767px) {
    [data-option="linning"] .ceremony-optionBlock_imgNode,
    [data-option="button"] .ceremony-optionBlock_imgNode {
      width: calc((100% - 5px * 3) / 4); } }
  @media print, screen and (min-width: 768px) {
    [data-option="design"] .ceremony-optionBlock_imgNode {
      width: calc((100% - 12px * 3) / 4); } }
  @media print, screen and (max-width: 767px) {
    [data-option="design"] .ceremony-optionBlock_imgNode {
      width: calc((100% - 5px) / 2); } }
