@charset "UTF-8";
/* default
-------------------------------------------------------------------------- */
/* in
-------------------------------------------------------------------------- */
/* out
-------------------------------------------------------------------------- */
/* in out
-------------------------------------------------------------------------- */
/* min-width
-------------------------------------------------------------------------- */
/* max-width
-------------------------------------------------------------------------- */
@import url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.4.1/dist/css/yakuhanjp.min.css");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&family=Roboto:wght@400;500&display=swap");
@import url("https://use.typekit.net/ban0hgx.css");
@-webkit-keyframes swing1 {
  0% {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    -webkit-transform: rotate(0deg) translateY(0);
    transform: rotate(0deg) translateY(0);
  }
  35% {
    -webkit-animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transform: rotate(5deg) translateY(-10px);
    transform: rotate(5deg) translateY(-10px);
  }
  50% {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    -webkit-transform: rotate(0deg) translateY(0);
    transform: rotate(0deg) translateY(0);
  }
  85% {
    -webkit-animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transform: rotate(-5deg) translateY(-10px);
    transform: rotate(-5deg) translateY(-10px);
  }
  100% {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    -webkit-transform: rotate(0deg) translateY(0);
    transform: rotate(0deg) translateY(0);
  }
}
@keyframes swing1 {
  0% {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    -webkit-transform: rotate(0deg) translateY(0);
    transform: rotate(0deg) translateY(0);
  }
  35% {
    -webkit-animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transform: rotate(5deg) translateY(-10px);
    transform: rotate(5deg) translateY(-10px);
  }
  50% {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    -webkit-transform: rotate(0deg) translateY(0);
    transform: rotate(0deg) translateY(0);
  }
  85% {
    -webkit-animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transform: rotate(-5deg) translateY(-10px);
    transform: rotate(-5deg) translateY(-10px);
  }
  100% {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    -webkit-transform: rotate(0deg) translateY(0);
    transform: rotate(0deg) translateY(0);
  }
}
@-webkit-keyframes swing2 {
  0% {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    -webkit-transform: rotate(0deg) translateY(0);
    transform: rotate(0deg) translateY(0);
  }
  35% {
    -webkit-animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transform: rotate(-5deg) translateY(-10px);
    transform: rotate(-5deg) translateY(-10px);
  }
  50% {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    -webkit-transform: rotate(0deg) translateY(0);
    transform: rotate(0deg) translateY(0);
  }
  85% {
    -webkit-animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transform: rotate(5deg) translateY(-10px);
    transform: rotate(5deg) translateY(-10px);
  }
  100% {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    -webkit-transform: rotate(0deg) translateY(0);
    transform: rotate(0deg) translateY(0);
  }
}
@keyframes swing2 {
  0% {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    -webkit-transform: rotate(0deg) translateY(0);
    transform: rotate(0deg) translateY(0);
  }
  35% {
    -webkit-animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transform: rotate(-5deg) translateY(-10px);
    transform: rotate(-5deg) translateY(-10px);
  }
  50% {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    -webkit-transform: rotate(0deg) translateY(0);
    transform: rotate(0deg) translateY(0);
  }
  85% {
    -webkit-animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transform: rotate(5deg) translateY(-10px);
    transform: rotate(5deg) translateY(-10px);
  }
  100% {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    -webkit-transform: rotate(0deg) translateY(0);
    transform: rotate(0deg) translateY(0);
  }
}
@-webkit-keyframes bounce {
  from,
  20%,
  53%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  40%,
  43% {
    -webkit-animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }
  90% {
    -webkit-animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}
@keyframes bounce {
  from,
  20%,
  53%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  40%,
  43% {
    -webkit-animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }
  90% {
    -webkit-animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}
/* @use "../variable/0-easing" as *; */
@keyframes swing1 {
  0% {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    -webkit-transform: rotate(0deg) translateY(0);
    transform: rotate(0deg) translateY(0);
  }
  35% {
    -webkit-animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transform: rotate(5deg) translateY(-10px);
    transform: rotate(5deg) translateY(-10px);
  }
  50% {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    -webkit-transform: rotate(0deg) translateY(0);
    transform: rotate(0deg) translateY(0);
  }
  85% {
    -webkit-animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transform: rotate(-5deg) translateY(-10px);
    transform: rotate(-5deg) translateY(-10px);
  }
  100% {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    -webkit-transform: rotate(0deg) translateY(0);
    transform: rotate(0deg) translateY(0);
  }
}
@keyframes swing2 {
  0% {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    -webkit-transform: rotate(0deg) translateY(0);
    transform: rotate(0deg) translateY(0);
  }
  35% {
    -webkit-animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transform: rotate(-5deg) translateY(-10px);
    transform: rotate(-5deg) translateY(-10px);
  }
  50% {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    -webkit-transform: rotate(0deg) translateY(0);
    transform: rotate(0deg) translateY(0);
  }
  85% {
    -webkit-animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transform: rotate(5deg) translateY(-10px);
    transform: rotate(5deg) translateY(-10px);
  }
  100% {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    -webkit-transform: rotate(0deg) translateY(0);
    transform: rotate(0deg) translateY(0);
  }
}
@keyframes bounce {
  from,
  20%,
  53%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  40%,
  43% {
    -webkit-animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }
  90% {
    -webkit-animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}
/*!
 * /**
 *  * MSDropdown - dd.js
 *  * @author: Marghoob Suleman
 *  * @website: https://www.marghoobsuleman.com/
 *  * @version: 4.0.2
 *  * @date: Wed Oct 13 2021 15:19:38 GMT+0530 (India Standard Time)
 *  * msDropdown is free web component: you can redistribute it and/or modify
 *  * it under the terms of the either the MIT License or the Gnu General Public License (GPL) Version 2
 *  * /
 */

.ms-pr {
  position: relative;
}

.ms-dd:focus-visible {
  -webkit-box-shadow: 0 1px 5px #ddd;
  box-shadow: 0 1px 5px #ddd;
  outline: none;
  outline-width: 0;
}

.ms-dd {
  background: #eee;
  display: inline-block;
  font-family: Sans-Serif;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  vertical-align: top;
  width: 260px;
}

.ms-dd button:focus,
.ms-dd input:focus,
.ms-dd select:focus,
.ms-dd textarea:focus {
  outline: none;
}

.ms-dd .ms-value-input {
  border: 0;
  left: 20px;
  position: absolute;
  top: 10px;
  width: 50%;
}

.ms-dd .ms-dd-header {
  border: 1px solid #ccc;
  border-bottom: none;
  border-radius: 2px;
  cursor: pointer;
  min-height: 35px;
  position: relative;
  width: 100%;
}

.ms-dd .ms-dd-header .option-selected {
  color: #000;
  display: block;
  font-weight: 600;
  overflow: hidden;
  padding: 10px 20px 10px 10px;
  pointer-events: none;
}

.ms-dd .ms-dd-header a {
  display: block;
}

.ms-dd .ms-dd-header .ms-list-counter,
.ms-dd .ms-dd-header input[type="checkbox"] {
  display: none;
}

.ms-dd .ms-dd-header .ms-header-counter {
  color: #0e76a8;
  font-weight: 400;
}

.ms-dd .ms-dd-header .ms-filter-box {
  border-bottom: 1px solid #ccc;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  padding: 6px 10px;
}

.ms-dd .ms-dd-header .ms-filter-box input,
.ms-dd .ms-dd-header .ms-filter-box input:focus,
.ms-dd .ms-dd-header .ms-filter-box input:focus-visible {
  border: 1px solid #c3c3c3;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  height: 25px;
  padding-left: 6px;
  width: 100%;
}

.ms-dd .ms-dd-header .ms-filter-box input:focus-visible {
  outline: 1px solid transparent;
}

.ms-dd .ms-dd-option-image,
.ms-dd .ms-dd-selected-img {
  margin-right: 5px;
  max-width: 64px;
  vertical-align: middle;
}

.ms-dd .ms-dd-arrow {
  height: 0;
  margin-top: -3px;
  position: absolute;
  right: 10px;
  top: 50%;
  width: 0;
}

.ms-dd .ms-dd-arrow.ms-dd-pointer-down {
  border: 5px solid transparent;
  border-top-color: #000;
}

.ms-dd .ms-dd-arrow.ms-dd-pointer-up {
  border: 5px solid transparent;
  border-bottom-color: #000;
  margin-top: -8px;
}

.ms-dd .ms-options {
  background: #fff;
  border: 1px solid #ccc;
  border-top: none;
  -webkit-box-shadow: 0 1px 5px #ddd;
  box-shadow: 0 1px 5px #ddd;
  display: none;
  list-style: none;
  margin: 0;
  overflow: auto;
  padding: 0;
  position: absolute;
  width: 100%;
  z-index: 9999;
}

.ms-dd .ms-list-option,
.ms-dd .ms-optgroup ul .ms-list-option {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-bottom: 1px solid #ddd;
  color: #333;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  overflow: hidden;
  padding: 10px;
  position: relative;
  text-decoration: none;
}

.ms-dd .ms-list-option input[type="checkbox"],
.ms-dd .ms-optgroup ul .ms-list-option input[type="checkbox"] {
  margin-right: 5px;
  vertical-align: middle;
}

.ms-dd .ms-list-option:last-child,
.ms-dd .ms-optgroup ul .ms-list-option:last-child {
  border-bottom: none;
}

.ms-dd .ms-list-option:hover,
.ms-dd .ms-optgroup ul .ms-list-option:hover {
  background: #f3f3f3;
  color: #000;
}

.ms-dd .ms-list-option.option-selected,
.ms-dd .ms-optgroup ul .ms-list-option.option-selected {
  background: #f6f6f6;
}

.ms-dd .ms-list-option.ico-align-right .ms-dd-option-image,
.ms-dd .ms-list-option.ico-align-right .ms-dd-selected-img,
.ms-dd .ms-optgroup ul .ms-list-option.ico-align-right .ms-dd-option-image,
.ms-dd .ms-optgroup ul .ms-list-option.ico-align-right .ms-dd-selected-img {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}

.ms-dd .ms-list-option.disabled,
.ms-dd .ms-list-option:disabled,
.ms-dd .ms-optgroup ul .ms-list-option.disabled,
.ms-dd .ms-optgroup ul .ms-list-option:disabled {
  cursor: default;
  opacity: 0.4;
}

.ms-dd .ms-list-option .ms-dd-desc,
.ms-dd .ms-optgroup ul .ms-list-option .ms-dd-desc {
  color: #aaa;
  display: block;
  font-weight: 400;
  line-height: 1.5em;
  overflow: hidden;
  text-shadow: 0 1px 0.5px #fff;
}

.ms-dd .ms-header-middle-content,
.ms-dd .ms-middle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  width: 100%;
}

.ms-dd.disabled,
.ms-dd:disabled {
  cursor: default;
  opacity: 0.4;
  pointer-events: none;
}

.ms-dd .ms-optgroup-padding {
  font-weight: 700;
  padding: 10px 10px 0;
}

.ms-dd .ms-optgroup {
  display: block;
}

.ms-dd .ms-optgroup:hover {
  background: #fff;
  color: #000;
}

.ms-dd .ms-optgroup ul {
  margin: 0;
  padding: 0;
}

.ms-dd .ms-optgroup ul .ms-list-option {
  padding-left: 20px;
}

.ms-dd .ms-optgroup ul:last-child {
  border-bottom: 1px solid #ddd;
}

.ms-dd .ms-dd-option-content {
  width: 100%;
}

:focus {
  outline: none;
}

[data-simplebar] {
  position: relative;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-line-pack: start;
  align-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.simplebar-wrapper {
  overflow: hidden;
  width: inherit;
  height: inherit;
  max-width: inherit;
  max-height: inherit;
}

.simplebar-mask {
  direction: inherit;
  position: absolute;
  overflow: hidden;
  padding: 0;
  margin: 0;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  width: auto !important;
  height: auto !important;
  z-index: 0;
}

.simplebar-offset {
  direction: inherit !important;
  -webkit-box-sizing: inherit !important;
  box-sizing: inherit !important;
  resize: none !important;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  padding: 0;
  margin: 0;
  -webkit-overflow-scrolling: touch;
}

.simplebar-content-wrapper {
  direction: inherit;
  -webkit-box-sizing: border-box !important;
  box-sizing: border-box !important;
  position: relative;
  display: block;
  height: 100%; /* Required for horizontal native scrollbar to not appear if parent is taller than natural height */
  width: auto;
  max-width: 100%; /* Not required for horizontal scroll to trigger */
  max-height: 100%; /* Needed for vertical scroll to trigger */
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.simplebar-content-wrapper::-webkit-scrollbar,
.simplebar-hide-scrollbar::-webkit-scrollbar {
  width: 0;
  height: 0;
  display: none;
}

.simplebar-content:before,
.simplebar-content:after {
  content: " ";
  display: table;
}

.simplebar-placeholder {
  max-height: 100%;
  max-width: 100%;
  width: 100%;
  pointer-events: none;
}

.simplebar-height-auto-observer-wrapper {
  -webkit-box-sizing: inherit !important;
  box-sizing: inherit !important;
  height: 100%;
  width: 100%;
  max-width: 1px;
  position: relative;
  float: left;
  max-height: 1px;
  overflow: hidden;
  z-index: -1;
  padding: 0;
  margin: 0;
  pointer-events: none;
  -webkit-box-flex: inherit;
  -ms-flex-positive: inherit;
  flex-grow: inherit;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -ms-flex-preferred-size: 0;
  flex-basis: 0;
}

.simplebar-height-auto-observer {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
  display: block;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  height: 1000%;
  width: 1000%;
  min-height: 1px;
  min-width: 1px;
  overflow: hidden;
  pointer-events: none;
  z-index: -1;
}

.simplebar-track {
  z-index: 1;
  position: absolute;
  right: 0;
  bottom: 0;
  pointer-events: none;
  overflow: hidden;
}

[data-simplebar].simplebar-dragging .simplebar-content {
  pointer-events: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-user-select: none;
}

[data-simplebar].simplebar-dragging .simplebar-track {
  pointer-events: all;
}

.simplebar-scrollbar {
  position: absolute;
  left: 0;
  right: 0;
  min-height: 10px;
}

.simplebar-scrollbar:before {
  position: absolute;
  content: "";
  background: #787878;
  border-radius: 0.4rem;
  left: 0px;
  right: 0px;
  -webkit-transition: opacity 0.2s linear;
  -o-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}
@media screen and (max-width: 768px) {
  .simplebar-scrollbar:before {
    border-radius: 0.8rem;
  }
}

.simplebar-scrollbar.simplebar-visible:before {
  /* When hovered, remove all transitions from drag handle */
  opacity: 1;
  -webkit-transition: opacity 0s linear;
  -o-transition: opacity 0s linear;
  transition: opacity 0s linear;
}

.simplebar-track.simplebar-vertical {
  top: 0;
  width: 11px;
  right: 0;
  background: #dcdcdc;
}
@media screen and (max-width: 768px) {
  .simplebar-track.simplebar-vertical {
    width: 1.8rem;
  }
}

.simplebar-track.simplebar-vertical .simplebar-scrollbar:before {
  top: 0px;
  bottom: 0px;
}

.simplebar-track.simplebar-horizontal {
  left: 0;
  height: 10px;
  background-color: #ebebeb;
  border-radius: 5px;
}
@media screen and (max-width: 768px) {
  .simplebar-track.simplebar-horizontal {
    left: 3rem;
    width: 70.8rem;
    height: 1.5rem;
    border-radius: 0.75rem;
  }
}

.simplebar-track.simplebar-horizontal .simplebar-scrollbar:before {
  height: 100%;
  left: 0px;
  right: 0px;
}

.simplebar-track.simplebar-horizontal .simplebar-scrollbar {
  right: auto;
  left: 0;
  top: 0px;
  height: 10px;
  min-height: 0;
  min-width: 10px;
  width: auto;
}
@media screen and (max-width: 768px) {
  .simplebar-track.simplebar-horizontal .simplebar-scrollbar {
    height: 1.5rem;
  }
}

/* Rtl support */
[data-simplebar-direction="rtl"] .simplebar-track.simplebar-vertical {
  right: auto;
  left: 0;
}

.hs-dummy-scrollbar-size {
  direction: rtl;
  position: fixed;
  opacity: 0;
  visibility: hidden;
  height: 500px;
  width: 500px;
  overflow-y: hidden;
  overflow-x: scroll;
}

.simplebar-hide-scrollbar {
  position: fixed;
  left: 0;
  visibility: hidden;
  overflow-y: scroll;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

/* ==========================================================================
slick.js
========================================================================== */
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before,
.slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir="rtl"] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
input,
textarea,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
main,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

main,
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

img,
svg,
iframe {
  vertical-align: top;
}

button {
  font-family: inherit;
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
input,
textarea,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
main,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

main,
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

img,
svg,
iframe {
  vertical-align: top;
}

button {
  font-family: inherit;
}

html {
  font-size: 10px;
}
@media screen and (max-width: 1366px) {
  html {
    font-size: 0.7320644217vw;
  }
}
@media screen and (max-width: 768px) {
  html {
    font-size: 1.3020833333vw;
  }
}
@supports (-webkit-touch-callout: none) {
  html {
    height: -webkit-fill-available;
  }
}

body {
  text-justify: inter-ideograph;
  word-break: break-all;
  color: #000;
  background: #f0f0f0;
  font-family: YakuHanJP, "Noto Sans JP", sans-serif;
  font-size: 1.6rem;
  letter-spacing: 0.04em;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  body {
    font-size: 2.8rem;
  }
}
body.is-show-nav,
body.is-show-modal {
  overflow: hidden;
}
@supports (-webkit-touch-callout: none) {
  body {
    height: -webkit-fill-available;
  }
}

a {
  color: #05a6ef;
  outline: none;
  text-decoration: underline;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
@media screen and (min-width: 769px) {
  a:hover,
  a:active {
    text-decoration: none;
  }
}
sub {
  font-size: smaller;
}
img {
  max-width: 100%;
  height: auto;
}

::-moz-selection {
  background: #000;
  color: #fff;
}

::selection {
  background: #000;
  color: #fff;
}

.center-inline {
  text-align: center;
}

.border-gray {
  border: 1px solid #c8c8c8;
}

.slide-up-in {
  will-change: opacity, transform;
  opacity: 0;
  -webkit-transform: translateY(6rem);
  -ms-transform: translateY(6rem);
  transform: translateY(6rem);
  -webkit-transition: opacity 1s cubic-bezier(0.39, 0.575, 0.565, 1),
    -webkit-transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: opacity 1s cubic-bezier(0.39, 0.575, 0.565, 1),
    -webkit-transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition: opacity 1s cubic-bezier(0.39, 0.575, 0.565, 1),
    transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: opacity 1s cubic-bezier(0.39, 0.575, 0.565, 1),
    transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: opacity 1s cubic-bezier(0.39, 0.575, 0.565, 1),
    transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1),
    -webkit-transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
}
@media screen and (max-width: 768px) {
  .slide-up-in {
    -webkit-transform: translateY(4rem);
    -ms-transform: translateY(4rem);
    transform: translateY(4rem);
  }
}
.slide-up-in.is-inview {
  opacity: 1;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}

@media screen and (max-width: 768px) {
  .only-pc {
    display: none !important;
  }
}

@media screen and (min-width: 769px) {
  .only-sp {
    display: none !important;
  }
}

.js-fit-image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover;";
}

.js-disabled {
  pointer-events: none;
  opacity: 0.3;
}
.text-align-center {
  text-align: center;
}
.text-align-left {
  text-align: left;
}
.text-align-right {
  text-align: right;
}

.color-pink {
  color: #f02878;
}

.layout-container {
  min-height: calc(var(--vh, 1vh) * 100);
}
.layout-container__inner {
  width: 100%;
  max-width: 136.6rem;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background: #fff;
}
@media screen and (max-width: 768px) {
  .layout-container__inner {
    display: block;
  }
}

.layout-content {
  position: relative;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  padding-top: 20rem;
  z-index: 0;
}
.layout-content.front-layout {
  padding-top: 18rem;
}
@media screen and (max-width: 768px) {
  .layout-content,
  .layout-content.front-layout {
    padding-top: 10rem;
  }
}
.layout-content:after {
  width: 1rem;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  display: block;
  background: -o-linear-gradient(
    left,
    #000 0%,
    rgba(0, 0, 0, 0.3) 50%,
    rgba(0, 0, 0, 0) 100%
  );
  background: -webkit-gradient(
    linear,
    left top,
    right top,
    from(#000),
    color-stop(50%, rgba(0, 0, 0, 0.3)),
    to(rgba(0, 0, 0, 0))
  );
  background: linear-gradient(
    to right,
    #000 0%,
    rgba(0, 0, 0, 0.3) 50%,
    rgba(0, 0, 0, 0) 100%
  );
  opacity: 0.1;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .layout-content:after {
    display: none;
  }
}

.layout-footer {
  position: relative;
  padding: 5rem 0 4rem;
  color: #fff;
  background: #3c3c3c;
}
@media screen and (max-width: 768px) {
  .layout-footer {
    padding: 10rem 0 10rem;
  }
}
.layout-footer__top,
.layout-footer__middle,
.layout-footer__bottom {
  width: 100%;
  max-width: 120rem;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
@media screen and (max-width: 768px) {
  .layout-footer__top,
  .layout-footer__middle,
  .layout-footer__bottom {
    width: 100%;
    max-width: 70.8rem;
    margin-left: auto;
    margin-right: auto;
  }
}
.layout-footer__middle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 6.5rem;
}
@media screen and (max-width: 768px) {
  .layout-footer__middle {
    display: block;
    margin-top: 10.4rem;
  }
}
.layout-footer__middle-sitemap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .layout-footer__middle-sitemap {
    display: block;
    margin-top: 9.6rem;
  }
}
.layout-footer__bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 15rem;
}
@media screen and (max-width: 768px) {
  .layout-footer__bottom {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-top: 10.4rem;
  }
}

.layout-header {
  width: 24rem;
  padding-bottom: 4rem;
}
@media screen and (max-width: 768px) {
  .layout-header {
    background: #fff;
    position: fixed;
    z-index: 999;
    left: 0;
    top: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    height: 10rem;
    padding: 0 0 0 3rem;
  }
}
@media screen and (max-width: 768px) {
  .layout-header:before {
    content: "";
    background: #fff;
    position: absolute;
    z-index: -1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
  }
}
@media screen and (min-width: 769px) {
  .layout-header__overlay {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .layout-header__overlay {
    position: absolute;
    z-index: -2;
    left: 0;
    top: 0;
    background: rgba(0, 0, 0, 0.8);
    width: 100%;
    height: 100vh;
  }
}
.layout-header__top {
  width: 112.6rem;
  z-index: 9;
}
@media screen and (min-width: 769px) {
  .layout-header__top {
    position: absolute;
    top: 0;
    right: 0;
  }
}
@media screen and (max-width: 768px) {
  .layout-header__top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
  }
}
.layout-header__top-1st {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 1.5rem 3rem 0 0;
}
@media screen and (max-width: 768px) {
  .layout-header__top-1st {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    padding: 5rem 3rem;
  }
}
.layout-header__top-2nd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 1.5rem;
  padding: 0 3rem 0 0;
}
@media screen and (max-width: 768px) {
  .layout-header__top-2nd {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-top: 0;
    padding: 0;
  }
}
.layout-header__top-3rd {
  margin-top: 1.5rem;
  background: #dcdcdc;
}
@media screen and (max-width: 768px) {
  .layout-header__top-3rd {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 0;
    order: 0;
    margin-top: 0;
  }
}
@media screen and (max-width: 768px) {
  .layout-header__side {
    padding-bottom: 20rem;
  }
}

@media screen and (max-width: 768px) {
  .layout-header__overlay {
    opacity: 0;
    pointer-events: none;
    -webkit-transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
    -o-transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
    transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  }
}

@media screen and (max-width: 768px) {
  .is-show-nav .layout-header__overlay {
    opacity: 1;
    pointer-events: auto;
  }
}

.layout-loading {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  z-index: 99999;
  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;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  pointer-events: auto;
}

.is-loaded .layout-loading {
  opacity: 0;
  pointer-events: none;
}

.button-pagetop {
  opacity: 0;
  position: fixed;
  right: 1.5rem;
  bottom: 9rem;
  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;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  z-index: 99;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}

.button-pagetop.show {
  opacity: 1;
}

.button-pagetop a {
  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: #f02878;
  padding-top: 1rem;
  width: 7rem;
  height: 7rem;
  border-radius: 50%;
  text-decoration: none;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  -webkit-box-shadow: 0 0 1rem rgba(0, 0, 0, 0.2);
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.2);
}

.button-pagetop a:after {
  width: 2.2rem;
  height: 2.2rem;
  content: "";
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-top: 0.4rem solid #fff;
  border-left: 0.4rem solid #fff;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
.button-pagetop a.is-on {
  opacity: 0.7;
}

@media screen and (max-width: 768px) {
  .button-pagetop {
    bottom: 5rem;
  }
  .button-pagetop a {
    width: 10rem;
    height: 10rem;
  }
}

.footer-company__heading {
  font-size: 1.8rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .footer-company__heading {
    font-size: 3.6rem;
  }
}
.footer-company__text {
  margin-top: 1rem;
  font-size: 1.4rem;
  line-height: 1.7142857143;
}
@media screen and (max-width: 768px) {
  .footer-company__text {
    margin-top: 3rem;
    font-size: 2.8rem;
    line-height: 1.7857142857;
  }
}

.footer-copyright {
  font-size: 1.2rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .footer-copyright {
    font-size: 2.2rem;
    line-height: 1.8181818182;
    margin-top: 7rem;
  }
}

.footer-logo {
  width: 100%;
  max-width: 18rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 768px) {
  .footer-logo {
    width: 100%;
    max-width: 36rem;
    margin-left: auto;
    margin-right: auto;
  }
}

.footer-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.2rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .footer-menu {
    font-size: 2.4rem;
  }
}
.footer-menu__item:nth-of-type(n + 2) {
  margin-left: 1rem;
  padding-left: calc(1px + 1rem);
  border-left: 1px solid #fff;
}
@media screen and (max-width: 768px) {
  .footer-menu__item:nth-of-type(n + 2) {
    margin-left: 3rem;
    padding-left: calc(1px + 3rem);
  }
}
.footer-menu__item a {
  color: #fff;
  text-decoration: none;
  -webkit-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.footer-menu__item a.is-on {
  opacity: 0.7;
}

.footer-office {
  margin-top: 3rem;
  color: #dddbde;
  font-size: 1.4rem;
  line-height: 1.7142857143;
}
@media screen and (max-width: 768px) {
  .footer-office {
    margin-top: 4rem;
    font-size: 2.8rem;
    line-height: 1.7857142857;
  }
}

.footer-sitemap {
  font-size: 1.4rem;
  line-height: 1.7142857143;
}
@media screen and (max-width: 768px) {
  .footer-sitemap {
    font-size: 2.8rem;
    line-height: 2.1428571429;
  }
}
@media screen and (min-width: 769px) {
  .footer-sitemap:nth-of-type(n + 2) {
    margin-left: 14rem;
  }
}
@media screen and (min-width: 769px) {
  .footer-sitemap__item:nth-of-type(n + 2) {
    margin-top: 1.5rem;
  }
}
.footer-sitemap__item a {
  color: #fff;
  text-decoration: none;
  -webkit-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.footer-sitemap__item a.is-on {
  opacity: 0.7;
}

.button-hamburger {
  position: absolute;
  top: 0;
  right: 0;
  padding: 0;
  outline: none;
  border: none;
  background: transparent;
  cursor: pointer;
  display: none;
}
@media screen and (max-width: 768px) {
  .button-hamburger {
    background: #f02878;
    display: block;
    width: 10rem;
    height: 10rem;
  }
}
.button-hamburger__line {
  position: absolute;
  top: calc(50% - 0.2rem / 2);
  left: calc(50% - 4rem / 2);
  width: 4rem;
  height: 0.2rem;
  background: #fff;
  border-radius: 2px;
  -webkit-transition: top 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    left 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    width 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    height 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    border-radius 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1),
    -webkit-transform 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: top 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    left 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    width 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    height 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    border-radius 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1),
    -webkit-transform 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: top 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    left 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    width 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    height 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    transform 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    border-radius 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: top 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    left 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    width 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    height 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    transform 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    border-radius 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: top 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    left 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    width 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    height 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    transform 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    border-radius 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1),
    -webkit-transform 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.button-hamburger__line:nth-of-type(1) {
  top: calc(50% - 0.2rem / 2 - 1.5rem);
}
.button-hamburger__line:nth-of-type(3) {
  top: calc(50% - 0.2rem / 2 + 1.5rem);
}

.is-show-nav .button-hamburger__line {
  position: absolute;
  top: calc(50% - 0.4rem / 2);
  left: calc(50% - 5rem / 2);
  width: 5rem;
  height: 0.4rem;
  -webkit-transition: top 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    left 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    width 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    height 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    border-radius 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1),
    -webkit-transform 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s;
  transition: top 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    left 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    width 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    height 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    border-radius 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1),
    -webkit-transform 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s;
  -o-transition: top 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    left 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    width 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    height 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    transform 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    border-radius 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: top 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    left 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    width 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    height 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    transform 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    border-radius 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: top 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    left 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    width 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    height 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    transform 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    border-radius 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s,
    opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1),
    -webkit-transform 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s;
}
.is-show-nav .button-hamburger__line:nth-of-type(1) {
  top: 50%;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
.is-show-nav .button-hamburger__line:nth-of-type(2) {
  opacity: 0;
}
.is-show-nav .button-hamburger__line:nth-of-type(3) {
  top: 50%;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.button-search {
  padding: 0;
  outline: none;
  border: none;
  background: transparent;
  cursor: pointer;
  display: none;
}
@media screen and (min-width: 769px) {
  .button-search {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .button-search {
    position: absolute;
    top: 0;
    right: 10rem;
    width: 10rem;
    height: 10rem;
    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 screen and (max-width: 768px) {
  .button-search:before {
    width: 3.6rem;
    height: 3.6rem;
    content: "";
    display: block;
    background: url(../img/common/icn_search.svg) no-repeat center center;
    background-size: contain;
    pointer-events: none;
  }
}

.header-badge {
  margin-top: 1.5rem;
  padding: 0 0.7rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .header-badge {
    margin-top: 10rem;
    padding: 0 3rem;
  }
}
.header-badge__item {
  padding: 0.5rem 0;
  border-bottom: 1px solid #dcdcdc;
}
@media screen and (max-width: 768px) {
  .header-badge__item {
    padding: 0.9rem 0;
  }
}
.header-badge__item img {
  width: 20rem;
}
@media screen and (max-width: 768px) {
  .header-badge__item img {
    width: 29.2rem;
  }
}

.header-banner {
  margin-top: 4rem;
  padding: 0 0.7rem;
}
@media screen and (max-width: 768px) {
  .header-banner {
    margin-top: 12rem;
    padding: 0 3rem;
  }
}
.header-banner__heading {
  padding: 0 0.8rem;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .header-banner__heading {
    padding: 0;
    font-size: 4rem;
  }
}
.header-banner__list {
  margin-top: 1.5rem;
}
@media screen and (max-width: 768px) {
  .header-banner__list {
    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: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .header-banner__item {
    width: 31rem;
  }
}
@media screen and (min-width: 769px) {
  .header-banner__item:nth-of-type(n + 2) {
    margin-top: 0.8rem;
  }
}
@media screen and (max-width: 768px) {
  .header-banner__item:nth-of-type(n + 3) {
    margin-top: 2rem;
  }
}
.header-banner__item a {
  -webkit-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.header-banner__item a.is-on {
  opacity: 0.7;
}

.header-button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-left: 3rem;
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .header-button {
    margin-left: 0;
    margin-top: 3.4rem;
    font-size: 3rem;
  }
}
.header-button__item:nth-of-type(n + 2) {
  margin-left: 1rem;
}
@media screen and (max-width: 768px) {
  .header-button__item:nth-of-type(n + 2) {
    margin-left: 2rem;
  }
}
.header-button__item a {
  width: 14rem;
  height: 4rem;
  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;
  text-decoration: none;
  color: #fff;
  background: #3c3c3c;
  border-radius: 0.4rem;
  -webkit-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .header-button__item a {
    width: 31rem;
    height: 8rem;
    border-radius: 0.8rem;
  }
}
.header-button__item a.is-on {
  opacity: 0.7;
}
.header-button__item--primary a {
  background: #f02878;
}

.header-cta {
  font-size: 1.8rem;
  line-height: 1.3333333333;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .header-cta {
    font-size: 3.6rem;
  }
}
@media screen and (min-width: 769px) {
  .header-cta__item:nth-of-type(n + 2) {
    margin-top: 1px;
  }
}
.header-cta__item a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 7.4rem;
  padding-left: 8rem;
  color: #fff;
  text-decoration: none;
  -webkit-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .header-cta__item a {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 13rem;
    padding-left: 7rem;
  }
}
.header-cta__item a.is-on {
  opacity: 0.7;
}
.header-cta__item a:before {
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
  position: absolute;
  top: calc(50% - 2rem);
  left: 2rem;
  content: "";
  display: block;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: center center;
}
@media screen and (max-width: 768px) {
  .header-cta__item a:before {
    width: 8rem;
    height: 8rem;
    border-radius: 100%;
    position: absolute;
    top: calc(50% - 8rem / 2);
    left: 2rem;
  }
}
.header-cta__item--estimate a {
  background: #f02878;
}
.header-cta__item--estimate a:before {
  background-image: url(../img/common/icn_estimate.svg);
  background-size: 1.8rem auto;
}
@media screen and (max-width: 768px) {
  .header-cta__item--estimate a:before {
    background-size: 3.4rem auto;
  }
}
.header-cta__item--sample a {
  background: #ef4c8d;
}
.header-cta__item--sample a:before {
  background-image: url(../img/common/icn_sample.svg);
  background-size: 1.5rem auto;
}
@media screen and (max-width: 768px) {
  .header-cta__item--sample a:before {
    background-size: 2.8rem auto;
  }
}
.header-cta__item--catalog a {
  background: #ec6ea1;
}
.header-cta__item--catalog a:before {
  background-image: url(../img/common/icn_catalog.svg);
  background-size: 1.4rem auto;
}
@media screen and (max-width: 768px) {
  .header-cta__item--catalog a:before {
    background-size: 2.6rem auto;
  }
}

.header-logo {
  /* padding: 2rem 3rem; */
  padding: 2rem 10px;
  text-align: center;
}

.header-logo-link {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  text-decoration: none !important;
  gap: 5px 0;
}

.header-logo-img {
  display: block;
  width: 100%;
  height: auto;
}

.header-logo-text {
  color: #333333 !important;
  text-align: center;
  text-decoration: none !important;
  font-size: 9px;
  font-family: YakuHanJP, "Noto Sans JP", sans-serif;
  font-weight: 500;
  line-height: 1.5;
}

@media screen and (max-width: 768px) {
  .header-logo {
    width: clamp(220px, 68.75vw, 360px);
    height: auto;
    padding: 0;
  }

  .header-logo-link {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    gap: 0 10px;
    line-height: 1.5;
  }

  .header-logo-img {
    display: block;
    width: clamp(120px, 37.5vw, 220px);
    max-width: 100%;
    height: auto;
    line-height: 1.5;
  }
  .header-logo img {
    height: 8rem;
    width: auto;
  }

  .header-logo-text {
    text-align: left;
    font-size: clamp(9px, 2.8vw, 12px);
    max-width: 140px;
    line-height: 1.5;
  }
}

.header-main-menu {
  margin-top: 3rem;
}
@media screen and (max-width: 768px) {
  .header-main-menu {
    margin-top: 0;
  }
}
@media screen and (max-width: 768px) {
  .header-main-menu + .header-main-menu {
    margin-top: 11rem;
  }
}
.header-main-menu__heading {
  padding: 0 1.5rem;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .header-main-menu__heading {
    padding: 0 3rem;
    font-size: 4rem;
  }
}
.header-main-menu__1st {
  margin-top: 1.5rem;
  border-bottom: solid 1px #dcdcdc;
  font-size: 1.4rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .header-main-menu__1st {
    margin-top: 4rem;
    border-bottom-width: 0.2rem;
    font-size: 3rem;
  }
}
.header-main-menu__1st a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  line-height: 1.4;
  padding: 1rem 1rem 1rem 3.7rem;
  color: #000;
  text-decoration: none;
  -webkit-transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .header-main-menu__1st a {
    height: 10rem;
  }
}
.header-main-menu__1st a.is-on {
  color: #f02878;
}
.header-main-menu__1st-item {
  border-top: solid 1px #dcdcdc;
  -webkit-transition: background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .header-main-menu__1st-item {
    border-top-width: 0.2rem;
  }
}
.header-main-menu__1st-item.is-show {
  background: #fde9f1;
}
.header-main-menu__1st-item.is-show > .header-main-menu__toggle {
  background: #fff;
}
.header-main-menu__2nd {
  display: none;
}
.header-main-menu__2nd.is-show {
  display: block;
}
.header-main-menu__2nd-item {
  border-top: 1px solid #fff;
}
@media screen and (max-width: 768px) {
  .header-main-menu__2nd-item {
    border-top-width: 0.2rem;
  }
}
.header-main-menu__3rd {
  display: none;
  padding-bottom: 1rem;
}
@media screen and (max-width: 768px) {
  .header-main-menu__3rd {
    margin-top: -1.5rem;
  }
}
.header-main-menu__3rd.is-show {
  display: block;
}
@media screen and (max-width: 768px) {
  .header-main-menu__3rd-item:last-of-type {
    padding-bottom: 1.5rem;
  }
}
.header-main-menu__3rd a {
  padding: 1rem 1rem 1rem 3.7rem;
  line-height: 1.4;
  -webkit-transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .header-main-menu__3rd a {
    height: 6rem;
    padding-left: 15.6rem;
  }
}
.header-main-menu__3rd a.is-on {
  color: #f02878;
}
.header-main-menu__toggle {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 4rem;
  padding-left: 3.7rem;
  cursor: pointer;
  -webkit-transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .header-main-menu__toggle {
    height: 10rem;
    padding-left: 9.5rem;
  }
}
.header-main-menu__toggle.is-on {
  color: #f02878;
}
.header-main-menu__toggle:before,
.header-main-menu__toggle:after {
  width: calc(1px + 1rem);
  height: 1px;
  position: absolute;
  top: calc(50% - 1px);
  left: 1.5rem;
  content: "";
  display: block;
  background: #f02878;
}
@media screen and (max-width: 768px) {
  .header-main-menu__toggle:before,
  .header-main-menu__toggle:after {
    width: 3.2rem;
    height: 0.2rem;
    position: absolute;
    top: calc(50% - 0.2rem / 2);
    left: 3rem;
  }
}
.header-main-menu__toggle:after {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-transition: -webkit-transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: -webkit-transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1),
    -webkit-transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.header-main-menu__toggle.is-show:after {
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
}

.header-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .header-menu {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 768px) {
  .header-menu__item {
    width: 50%;
    border-bottom: 0.2rem solid #dcdcdc;
  }
}
@media screen and (min-width: 769px) {
  .header-menu__item:nth-of-type(n + 2) {
    margin-left: 7rem;
  }
}
@media screen and (max-width: 768px) {
  .header-menu__item:nth-of-type(2n) {
    border-left: 0.2rem solid #dcdcdc;
  }
}
@media screen and (max-width: 768px) {
  .header-menu__item:nth-of-type(1),
  .header-menu__item:nth-of-type(2) {
    border-top: 0.2rem solid #dcdcdc;
  }
}
.header-menu__item a {
  display: inline-block;
  padding: 1rem 0;
  color: #000;
  text-decoration: none;
  -webkit-transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  position: relative;
}
@media screen and (max-width: 768px) {
  .header-menu__item a {
    display: block;
    position: relative;
    padding: 3.4rem 3rem;
  }
}
.header-menu__item a.is-on {
  color: #f02878;
}
.header-menu__item a.current::before {
  content: "";
  width: 2rem;
  height: 0.2rem;
  background: #f02878;
  position: absolute;
  bottom: -2%;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}
@media screen and (max-width: 768px) {
  .header-menu__item a:before {
    width: 1.7rem;
    height: 1.7rem;
    position: absolute;
    top: calc(50% - 1.7rem / 2);
    right: 2.1rem;
    content: "";
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-top: solid 0.3rem #f02878;
    border-right: solid 0.3rem #f02878;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
  }
}

@media screen and (max-width: 768px) {
  .header-nav {
    position: fixed;
    right: 0;
    top: 10rem;
    background: #fff;
    width: 70rem;
    height: calc(100vh - 10rem);
    overflow: scroll;
  }
}

@media screen and (max-width: 768px) {
  .header-nav {
    -webkit-transform: translate(100%, 0);
    -ms-transform: translate(100%, 0);
    transform: translate(100%, 0);
    pointer-events: none;
    -webkit-transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1),
      -webkit-transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
    transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1),
      -webkit-transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
    -o-transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1),
      transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
    transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1),
      transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
    transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1),
      transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1),
      -webkit-transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  }
}

@media screen and (max-width: 768px) {
  .is-show-nav .header-nav {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
    pointer-events: auto;
    -webkit-transition-delay: 0.3s;
    -o-transition-delay: 0.3s;
    transition-delay: 0.3s;
  }
}

.header-search {
  padding: 1rem 8rem;
  font-size: 1.4rem;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .header-search {
    padding: 3rem 3rem;
    font-size: 2.8rem;
  }
}
.header-search__inner {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.header-search__inner:before {
  width: 1.8rem;
  height: 1.8rem;
  position: absolute;
  top: calc(50% - 0.9rem);
  left: 1.5rem;
  content: "";
  display: block;
  background: url(../img/common/icn_search.svg) no-repeat center center;
  background-size: contain;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .header-search__inner:before {
    display: none;
  }
}
.header-search__input {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  height: 4rem;
  padding: 0 0 0 4.5rem;
  outline: none;
  border: none;
  background: #fff;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-top-left-radius: 0.6rem;
  border-bottom-left-radius: 0.6rem;
  -webkit-box-shadow: 0.1rem 0.1rem 0.2rem 0 rgba(0, 0, 0, 0.25) inset;
  box-shadow: 0.1rem 0.1rem 0.2rem 0 rgba(0, 0, 0, 0.25) inset;
}
@media screen and (max-width: 768px) {
  .header-search__input {
    font-size: calc(12px + 1rem);
    width: calc(100% - 15rem);
    height: 8rem;
    padding: 0 0 0 3rem;
    border-radius: 0.8rem 0 0 0.8rem;
  }
}
.header-search__input::-webkit-input-placeholder {
  color: #a0a0a0;
}
.header-search__input::-moz-placeholder {
  color: #a0a0a0;
}
.header-search__input:-ms-input-placeholder {
  color: #a0a0a0;
}
.header-search__input::-ms-input-placeholder {
  color: #a0a0a0;
}
.header-search__input::placeholder {
  color: #a0a0a0;
}
@media screen and (max-width: 768px) {
  .header-search__input::-webkit-input-placeholder {
    color: transparent;
  }
  .header-search__input::-moz-placeholder {
    color: transparent;
  }
  .header-search__input:-ms-input-placeholder {
    color: transparent;
  }
  .header-search__input::-ms-input-placeholder {
    color: transparent;
  }
  .header-search__input::placeholder {
    color: transparent;
  }
}
.header-search__button {
  width: 10rem;
  height: 4rem;
  padding: 0;
  outline: none;
  border: none;
  color: #fff;
  background: #f02878;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-top-right-radius: 0.6rem;
  border-bottom-right-radius: 0.6rem;
  cursor: pointer;
  -webkit-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .header-search__button {
    width: 15rem;
    height: 8rem;
    border-top-right-radius: 0.8rem;
    border-bottom-right-radius: 0.8rem;
  }
}
.header-search__button.is-on {
  opacity: 0.7;
}

.header-sns {
  display: flex;
  margin-left: 3rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .header-sns {
    margin: 0;
    padding: 4.8rem 0;
  }
}
.header-sns__item:nth-of-type(n + 2) {
  margin-left: 2rem;
}
.header-sns__item a {
  display: flex;
  align-items: center;
  height: 100%;
}
.header-sns__item--movie a {
  width: 2.7rem;
}

.header-sns__item--facebook {
  width: 2.1rem;
}
@media screen and (max-width: 768px) {
  .header-sns__item--movie a {
    width: 9rem;
  }

  .header-sns__item--facebook {
    width: 7.4rem;
  }
}
.header-sns__item a {
  -webkit-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.header-sns__item a.is-on {
  opacity: 0.7;
}

.header-sub-menu {
  margin-top: 2rem;
  padding: 0 0.7rem;
  font-size: 1.5rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .header-sub-menu {
    margin: 0;
    padding: 6rem 3rem 12rem;
    font-size: 3rem;
  }
}
.header-sub-menu__item:nth-of-type(n + 2) {
  margin-top: 1rem;
}
@media screen and (max-width: 768px) {
  .header-sub-menu__item:nth-of-type(n + 2) {
    margin-top: 3rem;
  }
}
.header-sub-menu__item a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 4rem;
  padding: 1rem;
  color: #000;
  border: solid 1px #dcdcdc;
  text-decoration: none;
  -webkit-transition: border-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: border-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: border-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .header-sub-menu__item a {
    height: 10rem;
    padding: 0 0 0 3rem;
    border-width: 0.2rem;
  }
}
.header-sub-menu__item a.is-on {
  border-color: #f02878;
}
.header-sub-menu__item a:before {
  width: 0.4rem;
  height: 0.4rem;
  position: absolute;
  top: calc(50% - 0.2rem);
  right: 1rem;
  content: "";
  display: block;
  border-top: solid 1px #f02878;
  border-right: solid 1px #f02878;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
  .header-sub-menu__item a:before {
    width: 1.7rem;
    height: 1.7rem;
    position: absolute;
    top: calc(50% - 1.7rem / 2);
    right: 3rem;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-top: solid 0.3rem #f02878;
    border-right: solid 0.3rem #f02878;
  }
}

.header-tel {
  padding-left: 2.7rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .header-tel {
    padding: 0;
  }
}
.header-tel__number {
  position: relative;
  font-family: "Roboto", sans-serif;
  font-size: 3rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .header-tel__number {
    font-size: 6rem;
  }
}
.header-tel__number:before {
  width: 2.2rem;
  height: 2.2rem;
  position: absolute;
  top: calc(50% - 1.2rem);
  left: -2.7rem;
  content: "";
  display: block;
  background: url(../img/common/icn_tel.svg) no-repeat center center;
  background-size: contain;
}
@media screen and (max-width: 768px) {
  .header-tel__number:before {
    width: 4.2rem;
    height: 4.2rem;
    position: absolute;
    top: calc(50% - 2.2rem);
    left: -5.4rem;
  }
}
.header-tel__number a {
  color: #000;
  pointer-events: none;
  text-decoration: none;
}
.header-tel__notes {
  font-size: 1.1rem;
}
@media screen and (max-width: 768px) {
  .header-tel__notes {
    font-size: 2.2rem;
    margin-top: 0.2rem;
  }
}

.anchor-list {
  width: 100%;
  max-width: 136.6rem;
  margin-left: auto;
  margin-right: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 4rem;
  background: #3c3c3c;
  border-radius: 0.4rem;
  font-size: 1.4rem;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .anchor-list {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: auto;
    margin: 6rem -3rem 0;
    font-size: 2.8rem;
    line-height: 1.4285714286;
    border-radius: 0;
  }
}
.anchor-list__item {
  position: relative;
  width: 20%;
}
@media screen and (max-width: 768px) {
  .anchor-list__item {
    width: 33.3333333333%;
    text-align: center;
  }
}
@media screen and (min-width: 769px) {
  .anchor-list__item:nth-of-type(n + 2):before {
    width: 1px;
    height: 3rem;
    position: absolute;
    top: calc(50% - 1.5rem);
    left: 0;
    content: "";
    display: block;
    background: #505050;
  }
}
@media screen and (max-width: 768px) {
  .anchor-list__item:nth-of-type(3n - 1):before,
  .anchor-list__item:nth-of-type(3n - 2):before {
    width: 0.2rem;
    height: 8rem;
    position: absolute;
    top: calc(50% - 8rem / 2);
    right: -0.1rem;
    content: "";
    display: block;
    background: #505050;
  }
}
@media screen and (max-width: 768px) {
  .anchor-list__item:nth-of-type(n + 4):after {
    width: 18rem;
    height: 0.2rem;
    position: absolute;
    top: -0.1rem;
    right: calc(50% - 18rem / 2);
    content: "";
    display: block;
    background: #505050;
  }
}
.anchor-list__item a {
  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;
  height: 6rem;
  color: #fff;
  text-decoration: none;
  -webkit-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .anchor-list__item a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 15rem;
    padding-bottom: 0.8rem;
  }
}
.anchor-list__item a.is-on {
  opacity: 0.7;
}
.anchor-list__item a.is-current {
  opacity: 0.7;
}
.anchor-list__item a:after {
  width: 0.4rem;
  height: 0.4rem;
  position: absolute;
  top: calc(50% - 0.2rem);
  right: 1.5rem;
  content: "";
  display: block;
  border-bottom: solid 1px #fff;
  border-right: solid 1px #fff;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
  .anchor-list__item a:after {
    position: relative;
    top: auto;
    right: auto;
    width: 1.6rem;
    height: 1.6rem;
    border-width: 0.3rem;
    margin-top: 0.6rem;
  }
}

.article-index {
  margin-top: 2.5rem;
  padding: 3rem;
  border: solid 1px #f02878;
  border-radius: 0.6rem;
  background: #fbf8f4;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .article-index {
    margin-top: 7.4rem;
    padding: 4.8rem 4.4rem;
    border-radius: 1.6rem;
    border-width: 0.2rem;
  }
}
.article-index a {
  color: #000;
  text-decoration: none;
  -webkit-transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.article-index a.is-on {
  color: #f02878;
}
.article-index__heading {
  color: #f02878;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .article-index__heading {
    font-size: 4.6rem;
  }
}
.article-index__1st {
  counter-reset: section;
}
@media screen and (max-width: 768px) {
  .article-index__1st {
    font-size: 3.2rem;
  }
}
.article-index__1st-item {
  margin-top: 2.5rem;
  counter-increment: section;
  counter-reset: subsection;
  padding-left: 2.5rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .article-index__1st-item {
    margin-top: 5.5rem;
    padding-left: 4.5rem;
  }
}
.article-index__1st-item::before {
  content: counter(section) ".";
  position: absolute;
  top: 0;
  left: 0;
  color: #f02878;
}
.article-index__2nd {
  padding-left: 1em;
}
.article-index__2nd-item {
  counter-increment: subsection;
  margin-top: 1.5rem;
  margin-left: 0.2rem;
  padding-left: 5.5rem;
  font-size: 1.4rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .article-index__2nd-item {
    margin-top: 3rem;
    font-size: 2.8rem;
    padding-left: 8.5rem;
  }
}
.article-index__2nd-item::before {
  content: counter(section) "-" counter(subsection) ".";
  position: absolute;
  left: 1.7rem;
  color: #f02878;
}

.article {
  padding: 0 8rem 8rem 11rem;
}
@media screen and (max-width: 768px) {
  .article {
    padding: 0 3rem 8rem 6rem;
  }
}
.article .bl__common_content:first-child {
  margin-top: 0;
}
.article .bl__common_content:first-child h2 {
  margin-top: 0;
}
.article h2 {
  margin-top: 8rem;
  margin-left: -3rem;
  font-size: 3rem;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .article h2 {
    margin-top: 9rem;
    margin-left: -3rem;
    font-size: 4.6rem;
  }
}
.article h3 {
  margin-top: 4rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #dcdcdc;
  font-size: 2.4rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .article h3 {
    margin-top: 6.4rem;
    padding-bottom: 2.8rem;
    border-bottom-width: 0.2rem;
    font-size: 3.6rem;
  }
}
.article figure {
  width: 32rem;
  margin-top: 3rem;
}
.article p {
  margin-top: 2.5rem;
  line-height: 1.875;
}
@media screen and (max-width: 768px) {
  .article p {
    margin-top: 2rem;
    line-height: 1.9285714286;
  }
}
.article p.article__summary {
  margin-top: 1rem;
  font-size: 1.8rem;
  line-height: 1.6666666667;
}
@media screen and (max-width: 768px) {
  .article p.article__summary {
    margin-top: 2rem;
    margin-left: -3rem;
    font-size: 3.6rem;
    line-height: 1.6666666667;
  }
}
.article__summary {
  margin-top: 1rem;
  font-size: 1.8rem;
  line-height: 1.6666666667;
}
@media screen and (max-width: 768px) {
  .article__summary {
    margin-top: 1rem;
    margin-left: -3rem;
    font-size: 3.6rem;
    line-height: 1.6666666667;
  }
}
.article__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 3rem;
}
@media screen and (max-width: 768px) {
  .article__row {
    display: block;
    margin-top: 3.4rem;
  }
}
.article__row + .article__row {
  margin-top: 6rem;
}
.article__row figure {
  margin-top: 0;
  margin-left: 3.5rem;
}
@media screen and (max-width: 768px) {
  .article__row figure {
    margin-top: 3.4rem;
    margin-left: 0;
    width: 100%;
  }
}
.article__row p {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  margin-top: -0.8rem;
}
.article__row--rev {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}
.article__row--rev figure {
  margin-left: 0;
  margin-right: 3.5rem;
}
.article table {
  margin-top: 2.5rem;
  font-size: 1.6rem;
  line-height: 1.875;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .article table {
    margin-top: 3rem;
    font-size: 2.4rem;
    line-height: 1.6666666667;
  }
}
.article table sup {
  display: inline-block;
  font-size: 100%;
  line-height: 0.5;
  -webkit-transform-origin: left bottom;
  -ms-transform-origin: left bottom;
  transform-origin: left bottom;
  -webkit-transform: scale(0.6) translate(0, 0.1em);
  -ms-transform: scale(0.6) translate(0, 0.1em);
  transform: scale(0.6) translate(0, 0.1em);
  vertical-align: super;
}
.article table th {
  vertical-align: middle;
  background: #fde9f1;
  padding: 0.5rem 1rem;
  border: solid;
  border-width: 0 1px;
  border-color: transparent #fff transparent #fde9f1;
}
@media screen and (max-width: 768px) {
  .article table th {
    padding: 1rem 2rem;
  }
}
.article table th + th {
  border-color: transparent #fff;
}
.article table th:last-of-type {
  border-color: transparent #fde9f1 transparent #fff;
}
.article table th span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .article table th[style="width: 30%"]:first-of-type {
    width: 40% !important;
  }
}
.article table td {
  padding: 0.9rem 1rem;
  border: 1px solid #dcdcdc;
}
@media screen and (max-width: 768px) {
  .article table td {
    text-align: left;
    padding: 1.8rem 1.2rem;
    min-width: 15%;
  }
}
.article table td a {
  text-underline-offset: 0.2em;
}

#sticker p,
#label p {
  margin-top: 0;
}
#sticker figure,
#label figure {
  margin-top: 0;
}
@media screen and (max-width: 768px) {
  #sticker figure,
  #label figure {
    margin: 2rem 0;
  }
}
#sticker h3,
#label h3 {
  margin-bottom: 2.5rem;
}

.box-index-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.box-index-list__item {
  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;
  width: calc(50% - 1.5rem);
  margin-right: 3rem;
  padding: 3rem 3rem 2rem;
  border: solid 1px #dcdcdc;
  border-radius: 0.4rem;
  background: #fff;
}
@media screen and (max-width: 768px) {
  .box-index-list__item {
    width: 100%;
    padding: 3.6rem 3rem 5rem;
    margin: 0;
    border-width: 0.2rem;
    border-radius: 0.8rem;
  }
}
.box-index-list__item:nth-of-type(2n) {
  margin-right: 0;
}
@media screen and (min-width: 769px) {
  .box-index-list__item:nth-of-type(n + 3) {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .box-index-list__item:nth-of-type(n + 2) {
    margin-top: 5.5rem;
  }
}
.box-index-list__item p {
  margin-top: 0 !important;
}
.box-index-list__title {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .box-index-list__title {
    font-size: 4rem;
    line-height: 1.35;
  }
}
.box-index-list__title small {
  display: block;
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .box-index-list__title small {
    font-size: 2.4rem;
  }
}
.box-index-list__summary {
  margin-top: 1.2rem;
  line-height: 1.875;
}
@media screen and (max-width: 768px) {
  .box-index-list__summary {
    margin-top: 2.6rem;
    font-size: 2.8rem;
    line-height: 1.9285714286;
  }
}
.box-index-list__bottom {
  width: 100%;
  max-width: 28rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 2.5rem;
}
@media screen and (max-width: 768px) {
  .box-index-list__bottom {
    width: 100%;
    max-width: 54rem;
    margin-left: auto;
    margin-right: auto;
    margin-top: 5.5rem;
  }
}
.box-index-list--center {
  text-align: center;
}

.box-list {
  margin-top: 3rem;
}
@media screen and (max-width: 768px) {
  .box-list {
    margin-top: 4rem;
  }
}
.box-list__item {
  padding: 2.4rem 3rem 3rem;
  border: solid 1px #dcdcdc;
  border-radius: 0.6rem;
  background: #fff;
}
@media screen and (max-width: 768px) {
  .box-list__item {
    padding: 4.8rem 4.5rem 5rem;
    border-width: 0.2rem;
    border-radius: 1.2rem;
  }
}
.box-list__item:nth-of-type(n + 2) {
  margin-top: 3rem;
}
@media screen and (max-width: 768px) {
  .box-list__item:nth-of-type(n + 2) {
    margin-top: 4rem;
  }
}
.box-list__item > *:first-child {
  margin-top: 0;
}
.box-list__item--topics {
  border-color: #f02878;
}
.box-list__item--topics .box-list__heading-em {
  font-family: "Roboto", sans-serif;
  color: #fff;
  background: #f02878;
  font-size: 1.4rem;
  line-height: 1;
  font-weight: 500;
  vertical-align: bottom;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 8rem;
  height: 2.4rem;
  margin-right: 1.5rem;
  margin-bottom: 0.4rem;
}
@media screen and (max-width: 768px) {
  .box-list__item--topics .box-list__heading-em {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 2.8rem;
    width: 16rem;
    height: 4.8rem;
    margin-right: 1.5rem;
    margin-bottom: 2.2rem;
  }
}
@media screen and (max-width: 768px) {
  .box-list__item--topics .box-list__body {
    margin-left: -1.1rem;
    margin-right: -1.1rem;
  }
}
.box-list__heading {
  margin-top: 3rem;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.4;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .box-list__heading {
    font-size: 4.6rem;
    line-height: 1.5217391304;
  }
}
.box-list__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 2.6rem;
}
@media screen and (max-width: 768px) {
  .box-list__body {
    display: block;
    margin-top: 4.4rem;
  }
}
@media screen and (max-width: 768px) {
  .box-list__body--faq {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.box-list__body--faq .box-list__heading {
  margin-top: 0;
  width: 4.2rem;
}
@media screen and (max-width: 768px) {
  .box-list__body--faq .box-list__heading {
    width: 6.5rem;
  }
}
.box-list__body--faq .box-list__summary {
  margin-top: 0.2rem;
}
@media screen and (max-width: 768px) {
  .box-list__body--faq .box-list__summary {
    margin-top: 1rem;
  }
}
.box-list__image {
  width: 25rem;
  margin-right: 3rem;
}
@media screen and (max-width: 768px) {
  .box-list__image {
    width: 54rem;
    margin: 0 auto;
  }
}
.box-list__image span {
  display: block;
}
.box-list__image span + span {
  margin-top: 2rem;
}
.box-list__image--mark {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 24rem;
}
@media screen and (max-width: 768px) {
  .box-list__image--mark {
    width: 44rem;
  }
}
.box-list__image-center {
  width: 70rem;
  margin: 3.8rem auto 0;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .box-list__image-center {
    width: 64rem;
    margin: 4rem -1.1rem 0;
  }
}
.box-list__summary {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  margin-top: -0.6rem;
}

.box-list__hashtag {
  display: flex;
  flex-wrap: wrap;
  gap: 0 15px;
  margin-top: 2rem;
}

.box-list__hashtag li {
  line-height: 1.2;
  font-size: 1.3rem;
  color: #666666;
}
@media screen and (max-width: 768px) {
  .box-list__hashtag li {
    font-size: 2.6rem;
  }
}

@media screen and (max-width: 768px) {
  .box-list__summary {
    margin-top: 4rem;
  }
}
.box-list__summary > *:first-child {
  margin-top: 0;
}
.box-list__summary-image {
  margin-top: 1.5rem;
}
@media screen and (max-width: 768px) {
  .box-list__summary-image {
    margin-top: 4rem;
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  .box-list__summary-image + .box-list__text {
    margin-top: 4rem;
  }
}
.box-list__lead {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.6666666667;
}
@media screen and (max-width: 768px) {
  .box-list__lead {
    color: #323232;
    font-size: 3.4rem;
    line-height: 1.5882352941;
  }
}
.box-list__name {
  font-size: 2.4rem;
  line-height: 1;
  font-weight: 700;
  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: 1.8rem 0 2rem;
  border-bottom: 1px solid #dcdcdc;
}
@media screen and (max-width: 768px) {
  .box-list__name {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    color: #323232;
    font-size: 4.2rem;
    line-height: 1.9285714286;
  }
}
.box-list__name + p {
  margin-top: 1rem !important;
}
.box-list__name-career {
  font-size: 1.4rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .box-list__name-career {
    font-size: 2.8rem;
    display: block;
    width: 100%;
  }
}
.box-list__text {
  margin-top: 1rem;
  line-height: 1.875;
}
@media screen and (max-width: 768px) {
  .box-list__text {
    color: #323232;
    font-size: 2.8rem;
    line-height: 1.9285714286;
    margin-top: 1.8rem;
  }
}
.box-list__text + p {
  margin-top: 1rem !important;
}
.box-list__text + .box-list__lead {
  margin-top: 3rem;
}
@media screen and (max-width: 768px) {
  .box-list__text + .box-list__text-detail {
    margin-top: 2rem;
  }
}
.box-list__text--bg-gray {
  margin-top: 1.4rem;
  background: #fbf8f4;
  padding: 0.8rem 2rem;
}
@media screen and (max-width: 768px) {
  .box-list__text--bg-gray {
    margin-top: 2rem;
    padding: 1.8rem 2.4rem;
  }
}
.box-list__text-detail {
  padding-top: 0.8rem;
  font-size: 1.4rem;
  line-height: 1.7857142857;
}
@media screen and (max-width: 768px) {
  .box-list__text-detail {
    font-size: 2.8rem;
    line-height: 1.9285714286;
    margin: 0;
    padding: 0;
  }
}
.box-list__text-detail + .box-list__text-detail {
  padding-top: 0;
  margin-top: 3.4rem;
}
.box-list__text-detail a {
  color: #05a6ef;
  text-decoration: underline;
  text-underline-offset: 0.25em;
}
.box-list__text-detail a.is-on {
  text-decoration: none;
}
.box-list__button {
  width: 28rem;
  margin-top: 2.5rem;
}
@media screen and (max-width: 768px) {
  .box-list__button {
    width: 54rem;
    margin: 3.8rem auto 0;
  }
}
@media screen and (max-width: 768px) {
  .box-list__table-sp-scroll {
    overflow: scroll;
    margin-right: -3rem;
    padding-bottom: 5rem;
  }
}
@media screen and (max-width: 768px) {
  .box-list__table-sp-scroll .box-list__table {
    width: 110rem;
  }
}
@media screen and (max-width: 768px) {
  .box-list__table-sp-scroll + .box-list__text-detail {
    margin-top: 6rem;
  }
}
.box-list__table {
  font-size: 1.2rem;
  line-height: 1.6666666667;
  width: 100%;
  margin-top: 1.2rem;
}
@media screen and (max-width: 768px) {
  .box-list__table {
    font-size: 2.4rem;
    line-height: 1.6666666667;
    margin-top: 1.8rem;
  }
}
.box-list__table sup {
  display: inline-block;
  font-size: 100%;
  line-height: 0.5;
  -webkit-transform-origin: left bottom;
  -ms-transform-origin: left bottom;
  transform-origin: left bottom;
  -webkit-transform: scale(0.6) translate(0, 0.1em);
  -ms-transform: scale(0.6) translate(0, 0.1em);
  transform: scale(0.6) translate(0, 0.1em);
  vertical-align: super;
}
.box-list__table th {
  vertical-align: middle;
  background: #fde9f1;
  padding: 0.5rem 1rem;
  border: solid;
  border-width: 0 1px;
  border-color: transparent #fff transparent #fde9f1;
}
@media screen and (max-width: 768px) {
  .box-list__table th {
    padding: 1rem 2rem;
  }
}
.box-list__table th + th {
  border-color: transparent #fff;
}
.box-list__table th:last-of-type {
  border-color: transparent #fde9f1 transparent #fff;
}
.box-list__table th span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.box-list__table td {
  padding: 0.9rem 1rem;
  border: solid #dcdcdc;
  border-width: 0 1px 1px;
}
@media screen and (max-width: 768px) {
  .box-list__table td {
    padding: 1.8rem 2rem;
  }
}
@media screen and (max-width: 768px) {
  .box-list__table + .box-list__text-detail {
    margin-top: 6rem;
  }
}
.box-list__step {
  margin-right: 1rem;
  color: #f02878;
  font-family: "Roboto", sans-serif;
  font-size: 3rem;
  font-weight: 500;
  vertical-align: -0.2rem;
}
@media screen and (max-width: 768px) {
  .box-list__step {
    display: block;
    font-size: 5rem;
    vertical-align: 0;
    margin-top: -2rem;
  }
}
.box-list__step small {
  font-size: 1.1rem;
}
@media screen and (max-width: 768px) {
  .box-list__step small {
    font-size: 2.8rem;
    margin-right: 0.6rem;
  }
}
.box-list__notes {
  padding-left: 1em;
  text-indent: -1em;
  margin-top: 1.5rem;
  font-size: 1.2rem;
}
@media screen and (max-width: 768px) {
  .box-list__notes {
    padding-left: 0em;
    text-indent: 0em;
    margin-top: 6rem;
    font-size: 2.4rem;
    line-height: 1.6666666667;
  }
}
.box-list__notes + .box-list__notes {
  margin-top: 0.5rem;
}
@media screen and (max-width: 768px) {
  .box-list__notes + .box-list__notes {
    margin-top: 3rem;
  }
}
.box-list__download {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .box-list__download {
    display: block;
    margin-top: 4rem;
  }
}
.box-list__download-item a {
  color: #f02878;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-decoration: none;
  -webkit-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.box-list__download-item a.is-on {
  opacity: 0.7;
}
.box-list__download-item a span {
  margin-right: 1.2rem;
  margin-top: 0 !important;
}
@media screen and (max-width: 768px) {
  .box-list__download-item a span {
    width: 6.4rem;
    height: 6.4rem;
  }
}
@media screen and (min-width: 769px) {
  .box-list__download-item:nth-of-type(n + 2) {
    margin-left: 4.5rem;
  }
}
@media screen and (max-width: 768px) {
  .box-list__download-item:nth-of-type(n + 2) {
    margin-top: 3.8rem;
  }
}
.box-list__list {
  list-style-type: disc;
  margin-top: 1rem;
  padding-left: 1.5em;
}
.box-list__list li + li {
  margin-top: 0.5rem;
}
.box-list--margin-top-wide {
  margin-top: 8rem;
}
.box-list--flow .box-list__item {
  position: relative;
}
.box-list--flow .box-list__item:nth-of-type(n + 2) {
  margin-top: 6rem;
}
@media screen and (max-width: 768px) {
  .box-list--flow .box-list__item:nth-of-type(n + 2) {
    margin-top: 11rem;
  }
}
.box-list--flow .box-list__item:nth-of-type(n + 2):before {
  position: absolute;
  top: -4.4rem;
  left: calc(50% - 6rem);
  width: 0;
  height: 0;
  content: "";
  display: block;
  border-style: solid;
  border-width: 2.8rem 6rem 0 6rem;
  border-color: #c8c8c8 transparent transparent transparent;
}
@media screen and (max-width: 768px) {
  .box-list--flow .box-list__item:nth-of-type(n + 2):before {
    top: -8.2rem;
    left: calc(50% - 8rem);
    border-width: 5.6rem 8rem 0 8rem;
    border-color: #c8c8c8 transparent transparent transparent;
  }
}
@media screen and (max-width: 768px) {
  .box-list--flow .box-list__image {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .box-list--flow .box-list__body {
    margin-top: 3rem;
  }
}

.button-container {
  width: 100%;
  max-width: 28rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .button-container {
    width: 100%;
    max-width: 54rem;
    margin-left: auto;
    margin-right: auto;
    margin-top: 7rem;
  }
}

.button-container-seal {
  width: 100%;
  max-width: 28rem;
  margin-left: auto;
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .button-container-seal {
    width: 100%;
    max-width: 54rem;
    margin-left: auto;
    margin-right: auto;
    margin-top: 7rem;
  }
}

.button-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .button-list {
    margin-top: 10rem;
  }
}
.button-list__item {
  width: calc(50% - 1.5rem);
  margin-right: 3rem;
}
@media screen and (max-width: 768px) {
  .button-list__item {
    width: 100%;
    margin: 0;
  }
}
.button-list__item:nth-of-type(2n) {
  margin-right: 0;
}
@media screen and (min-width: 769px) {
  .button-list__item:nth-of-type(n + 3) {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .button-list__item:nth-of-type(n + 2) {
    margin-top: 4rem;
  }
}
.button-list__item button {
  width: 100%;
}
.button-list--center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.button-list--3column .button-list__item {
  width: calc(33.333% - 2rem);
  margin-right: 3rem;
}
@media screen and (max-width: 768px) {
  .button-list--3column .button-list__item {
    width: 100%;
    margin: 0;
  }
}
@media screen and (min-width: 769px) {
  .button-list--3column .button-list__item:nth-of-type(2n) {
    margin-right: 3rem;
  }
}
.button-list--3column .button-list__item:nth-of-type(3n) {
  margin-right: 0;
}
@media screen and (min-width: 769px) {
  .button-list--3column .button-list__item:nth-of-type(n + 3) {
    margin-top: 0;
  }
}
@media screen and (min-width: 769px) {
  .button-list--3column .button-list__item:nth-of-type(n + 4) {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .button-list--3column .button-list__item:nth-of-type(n + 2) {
    margin-top: 4rem;
  }
}
.button-list--margin-top-narrow {
  margin-top: 2.5rem;
}
@media screen and (max-width: 768px) {
  .button-list--margin-top-narrow {
    margin-top: 5.5rem;
  }
}

.button {
  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;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 100%;
  height: 5rem;
  color: #fff;
  border: none;
  border-radius: 0.4rem;
  background: #3c3c3c;
  font-size: 1.4rem;
  text-decoration: none;
  cursor: pointer;
  -webkit-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .button {
    height: 9.6rem;
    border-radius: 0.8rem;
    font-size: 3rem;
  }
}
.button.is-on {
  opacity: 0.7;
}
.button.is-active {
  background: #f02878;
}
.button__image {
  position: absolute;
  top: 50%;
  left: 2rem;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .button__image {
    left: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .button__image img {
    max-width: 6.8rem;
    height: 6rem;
  }
}
@media screen and (max-width: 768px) {
  .button__image--doc img {
    width: 4.7rem;
    height: 5.6rem;
  }
}
@media screen and (max-width: 768px) {
  .button__image--mail img {
    width: 5.9rem;
    height: 4.1rem;
  }
}
.button--bg-pink {
  background: #f02878;
}
.button--bg-white {
  color: #f02878;
  background: #fff;
}
.button--large {
  height: 6.4rem;
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  .button--large {
    height: 12rem;
    font-size: 3.6rem;
  }
}

.thanksbtn {
  width: 30rem;
  margin: 6rem auto 0;
}

.category-link-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.category-link-list__group {
  width: calc(33.333% - 2rem);
  margin-right: 3rem;
}
@media screen and (max-width: 768px) {
  .category-link-list__group {
    width: 100%;
    margin-right: 0;
  }
}
.category-link-list__group:nth-of-type(3n) {
  margin-right: 0;
}
@media screen and (min-width: 769px) {
  .category-link-list__group:nth-of-type(n + 4) {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .category-link-list__group:nth-of-type(n + 2) {
    margin-top: 9rem;
  }
}
.category-link-list__heading {
  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;
  height: 4rem;
  color: #fff;
  background: #3c3c3c;
  line-height: 1;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .category-link-list__heading {
    font-size: 3rem;
    height: 8rem;
  }
}
.category-link-list__body {
  margin-top: 2rem;
  font-size: 1.2rem;
}
@media screen and (max-width: 768px) {
  .category-link-list__body {
    margin-top: 4.4rem;
    font-size: 2.4rem;
    line-height: 1.5833333333;
  }
}
.category-link-list__item:nth-of-type(n + 2) {
  margin-top: 1rem;
}
@media screen and (max-width: 768px) {
  .category-link-list__item:nth-of-type(n + 2) {
    margin-top: 2.2rem;
  }
}
.category-link-list__item a {
  color: #000;
  text-decoration: none;
  -webkit-transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.category-link-list__item a.is-on {
  color: #f02878;
}

.contact-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .contact-list {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
.contact-list__item {
  width: 46.8rem;
  margin-right: 2.8rem;
}
@media screen and (max-width: 768px) {
  .contact-list__item {
    width: 100%;
    margin: 0;
  }
}
.contact-list__item:nth-of-type(2n) {
  margin-right: 0;
}
@media screen and (max-width: 768px) {
  .contact-list__item:nth-of-type(n + 2) {
    margin-top: 7rem;
  }
}
.contact-list__heading {
  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;
  height: 6rem;
  color: #fff;
  border: solid 0.4rem #fff;
  font-size: 2rem;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .contact-list__heading {
    height: 8rem;
    border-width: 0.4rem;
    font-size: 3.6rem;
  }
}
.contact-list__tel {
  margin-top: 2rem;
  color: #fff;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .contact-list__tel {
    margin-top: 4rem;
  }
}
.contact-list__tel-number {
  font-family: "Roboto", sans-serif;
  font-size: 4rem;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .contact-list__tel-number {
    font-size: 8rem;
  }
}
.contact-list__tel-number > span {
  position: relative;
  display: inline-block;
  padding-left: 4rem;
}
@media screen and (max-width: 768px) {
  .contact-list__tel-number > span {
    padding-left: 8rem;
  }
}
.contact-list__tel-number > span:before {
  width: 3.5rem;
  height: 3.5rem;
  position: absolute;
  top: calc(50% - 1.8rem);
  left: 0;
  content: "";
  display: block;
  background: url(../img/common/icn_tel_white.svg) no-repeat center center;
  background-size: contain;
}
@media screen and (max-width: 768px) {
  .contact-list__tel-number > span:before {
    width: 6.7rem;
    height: 6.7rem;
    top: calc(50% - 6.7rem / 2);
  }
}
.contact-list__tel-number a {
  color: #fff;
  text-decoration: none;
  pointer-events: none;
}
.contact-list__tel-notes {
  margin-top: 1.2rem;
  font-size: 1.4rem;
  line-height: 1.7142857143;
}
@media screen and (max-width: 768px) {
  .contact-list__tel-notes {
    margin-top: 1.8rem;
    font-size: 2.8rem;
    line-height: 1.7857142857;
  }
}
.contact-list__button {
  margin-top: 3.5rem;
}
@media screen and (max-width: 768px) {
  .contact-list__button {
    margin-top: 5rem;
  }
}

.designer-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.designer-list__item {
  width: calc(50% - 1.5rem);
  margin-right: 3rem;
}
@media screen and (max-width: 768px) {
  .designer-list__item {
    width: 100%;
    margin: 0;
  }
}
.designer-list__item:nth-of-type(2n) {
  margin-right: 0;
}
@media screen and (min-width: 769px) {
  .designer-list__item:nth-of-type(n + 3) {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .designer-list__item:nth-of-type(n + 2) {
    margin-top: 5.5rem;
  }
}
.designer-list__item a {
  color: #000;
  text-decoration: none;
  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;
  padding: 3rem 3rem 2rem;
  border: solid 1px #dcdcdc;
  border-radius: 0.4rem;
  background: #fff;
  -webkit-transition: border-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: border-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: border-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .designer-list__item a {
    padding: 3.4rem 3rem 5rem;
    border-width: 0.2rem;
    border-radius: 0.8rem;
  }
}
.designer-list__item a.is-on {
  border-color: #f02878;
}
.designer-list__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .designer-list__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
.designer-list__body {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  margin-top: -0.5rem;
}
@media screen and (max-width: 768px) {
  .designer-list__body {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 0;
    order: 0;
  }
}
.designer-list__image {
  width: 18rem;
  margin-right: 2rem;
}
@media screen and (max-width: 768px) {
  .designer-list__image {
    width: 100%;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    margin-top: 3rem;
  }
}
.designer-list__image span {
  display: block;
  height: 12rem;
}
@media screen and (max-width: 768px) {
  .designer-list__image span {
    height: 36rem;
  }
}
.designer-list__lead {
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 1.7142857143;
  margin-top: 0 !important;
}
@media screen and (max-width: 768px) {
  .designer-list__lead {
    font-size: 2.8rem;
    line-height: 1.7857142857;
  }
}
.designer-list__name {
  margin-top: 0.8rem;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .designer-list__name {
    font-size: 4.6rem;
  }
}
.designer-list__name small {
  display: block;
  font-size: 1.4rem;
}
.designer-list__summary {
  margin-top: 1.2rem !important;
  line-height: 1.875;
}
@media screen and (max-width: 768px) {
  .designer-list__summary {
    margin-top: 3.4rem;
    line-height: 1.9285714286;
  }
}

.faq-list__item {
  position: relative;
  padding: 1.5rem 1.5rem 1.9rem;
  border-bottom: 1px solid #dcdcdc;
  -webkit-transition: margin 0.4s cubic-bezier(0.165, 0.84, 0.44, 1),
    background-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: margin 0.4s cubic-bezier(0.165, 0.84, 0.44, 1),
    background-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: margin 0.4s cubic-bezier(0.165, 0.84, 0.44, 1),
    background-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .faq-list__item {
    padding: 1.6rem 3.6rem 1.8rem 3.2rem;
    border-bottom-width: 0.2rem;
  }
}
.faq-list__item:before,
.faq-list__item:after {
  width: calc(1px + 1.8rem);
  height: 1px;
  position: absolute;
  top: 3.2rem;
  right: 1.5rem;
  content: "";
  display: block;
  background: #f02878;
}
@media screen and (max-width: 768px) {
  .faq-list__item:before,
  .faq-list__item:after {
    width: 3.4rem;
    height: 0.2rem;
    top: 4.5rem;
    right: 3.2rem;
  }
}
.faq-list__item:after {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-transition: -webkit-transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: -webkit-transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1),
    -webkit-transform 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.faq-list__item.is-show {
  margin: 2rem 0;
  border: 1px solid #dcdcdc;
  border-radius: 0.8rem;
  background: #fff;
}
@media screen and (max-width: 768px) {
  .faq-list__item.is-show {
    margin: 5rem 0;
    border-width: 0.2rem;
    border-radius: 1.6rem;
  }
}
.faq-list__item.is-show:after {
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
}
.faq-list__q {
  position: relative;
  padding-left: 3rem;
  padding-right: 4rem;
  font-size: 1.8rem;
  font-weight: 500;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  .faq-list__q {
    font-size: 3rem;
    line-height: 2;
    padding-left: 6.2rem;
    padding-right: 6.6rem;
  }
}
.faq-list__q:before {
  position: absolute;
  top: 0.5rem;
  left: 0;
  content: "Q";
  color: #f02878;
  font-family: "Roboto", sans-serif;
  font-size: 2.4rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .faq-list__q:before {
    top: 0.6rem;
    font-size: 4.6rem;
  }
}
.faq-list__a {
  position: relative;
  padding-left: 3rem;
  margin-top: 2rem;
  display: none;
}
@media screen and (max-width: 768px) {
  .faq-list__a {
    padding-left: 6.2rem;
    padding-bottom: 1.4rem;
    margin-top: 2rem;
    font-size: 3rem;
    line-height: 2;
  }
}
.faq-list__a:before {
  position: absolute;
  top: 0.5rem;
  left: 0;
  content: "A";
  color: #3c3c3c;
  font-family: "Roboto", sans-serif;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .faq-list__a:before {
    top: 0.6rem;
    font-size: 4.6rem;
  }
}

.flow-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  text-align: center;
  padding-top: 1.2rem;
}
@media screen and (max-width: 768px) {
  .flow-list {
    padding-top: 0;
  }
}
.flow-list__item {
  position: relative;
  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;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: calc(25% - 2.25rem);
  min-height: 18rem;
  margin-right: 3rem;
  padding-top: 4rem;
  border: solid 1px #dcdcdc;
  border-radius: 0.4rem;
  background: #fff;
}
@media screen and (max-width: 768px) {
  .flow-list__item {
    width: 100%;
    min-height: 24rem;
    margin: 0;
    padding: 2rem 0 2.4rem;
    border-width: 0.2rem;
    border-radius: 0.8rem;
  }
}
.flow-list__item:nth-of-type(4n) {
  margin-right: 0;
}
@media screen and (max-width: 768px) {
  .flow-list__item:nth-of-type(n + 2) {
    margin-top: 10.5rem;
  }
}
.flow-list__item:nth-of-type(n + 2):before {
  position: absolute;
  top: calc(50% - 2rem);
  left: -1.8rem;
  width: 0;
  height: 0;
  content: "";
  display: block;
  border-style: solid;
  border-width: 2rem 0 2rem 2.8rem;
  border-color: transparent transparent transparent #c8c8c8;
}
@media screen and (max-width: 768px) {
  .flow-list__item:nth-of-type(n + 2):before {
    top: -8rem;
    left: calc(50% - 8rem);
    border-width: 5.6rem 8rem 0 8rem;
    border-color: #c8c8c8 transparent transparent transparent;
  }
}
.flow-list__number {
  position: absolute;
  top: -1.2rem;
  left: 1rem;
  width: 6rem;
  height: 6rem;
  border-radius: 100%;
  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;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding-top: 0.5rem;
  color: #fff;
  background: #f02878;
  font-family: "Roboto", sans-serif;
  font-size: 3rem;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .flow-list__number {
    position: absolute;
    top: 2rem;
    left: 2rem;
    width: 12rem;
    height: 12rem;
    border-radius: 100%;
    font-size: 6rem;
  }
}
.flow-list__number small {
  display: inline-block;
  font-size: 1.1rem;
}
@media screen and (max-width: 768px) {
  .flow-list__number small {
    font-size: 2.2rem;
  }
}
.flow-list__image {
  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;
  height: 6rem;
}
@media screen and (max-width: 768px) {
  .flow-list__image {
    height: 10.5rem;
  }
}
.flow-list__image img {
  height: 100%;
}
@media screen and (max-width: 768px) {
  .flow-list__image img {
    height: 10.5rem;
  }
}
.flow-list__heading {
  margin-top: 2rem;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .flow-list__heading {
    margin-top: 2.8rem;
    font-size: 3.6rem;
  }
}
.flow-list__text {
  margin-top: 0.5rem;
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .flow-list__text {
    margin-top: 1rem;
    font-size: 2.4rem;
  }
}

.form-content > *:first-child {
  margin-top: 0;
}
.form-content form > *:first-child {
  margin-top: 0;
}
.form-content__inner {
  margin-top: 3rem;
}
@media screen and (max-width: 768px) {
  .form-content__inner {
    margin-top: 6rem;
  }
}
.form-content__item {
  display: block;
}
.form-content__item:nth-child(n + 2) {
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .form-content__item:nth-child(n + 2) {
    margin-top: 4.2rem;
  }
}
.form-content__item--paper {
  position: relative;
  z-index: 9;
}
.form-content__heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  line-height: 1.875;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .form-content__heading {
    font-size: 3rem;
  }
}
.form-content__heading:before {
  content: "任意";
  color: #787878;
  font-size: 1.2rem;
  line-height: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 5.1rem;
  height: 2.2rem;
  border-radius: 0.4rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #787878;
  margin-top: 0.4rem;
  margin-right: 1.4rem;
}
@media screen and (max-width: 768px) {
  .form-content__heading:before {
    font-size: 2.4rem;
    width: 8rem;
    height: 3.5rem;
    border-radius: 0.6rem;
    border-width: 0.2rem;
    margin-top: 1rem;
    margin-right: 2.2rem;
  }
}
.form-content__heading.is-required:before {
  content: "必須";
  color: #f02878;
  border-color: #f02878;
}
.form-content__data {
  margin-top: 1.1rem;
}
@media screen and (max-width: 768px) {
  .form-content__data {
    margin-top: 1.2rem;
  }
}
.form-content__data > *:first-child {
  margin-top: 0;
}
.form-content__note {
  font-size: 1.4rem;
  margin-top: 0.4rem;
}
@media screen and (max-width: 768px) {
  .form-content__note {
    font-size: 2.4rem;
  }
}
.form-content input[type="text"] {
  font-family: YakuHanJP, "Noto Sans JP", sans-serif;
  padding: 0;
  border: none;
  border-radius: 0;
  outline: none;
  background: none;
}
.form-content input[type="text"].input-text {
  background: #fff;
  line-height: 1.875;
  letter-spacing: 0.06em;
  border: none;
  display: inline-block;
  width: 100%;
  height: 6rem;
  padding: 0 2rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #dcdcdc;
  border-radius: 0.4rem;
}
@media screen and (max-width: 768px) {
  .form-content input[type="text"].input-text {
    height: 10rem;
    padding: 0 2rem;
    border-radius: 0.8rem;
  }
}
.form-content input[type="text"].input-text::-webkit-input-placeholder {
  color: #c8c8c8;
}
.form-content input[type="text"].input-text::-moz-placeholder {
  color: #c8c8c8;
}
.form-content input[type="text"].input-text:-ms-input-placeholder {
  color: #c8c8c8;
}
.form-content input[type="text"].input-text::-ms-input-placeholder {
  color: #c8c8c8;
}
.form-content input[type="text"].input-text::placeholder {
  color: #c8c8c8;
}
.form-content input[type="text"].input-text--small {
  width: 48rem;
}
.form-content input[type="text"].input-text--xsmall {
  width: 15rem;
}
@media screen and (max-width: 768px) {
  .form-content input[type="text"].input-text--xsmall {
    width: 21rem;
  }
}
.form-content .select-form {
  position: relative;
  z-index: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  width: 48rem;
  height: calc(6rem - 2px);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #dcdcdc;
  border-radius: 0.4rem;
}
@media screen and (max-width: 768px) {
  .form-content .select-form {
    width: 100%;
    height: 10rem;
    border-radius: 0.8rem;
    border-width: 0.2rem;
  }
}
.form-content .select-form__arrow {
  background: #fff;
  position: absolute;
  z-index: 9;
  top: 0;
  right: 0;
  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;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 5rem;
  height: 100%;
  padding-bottom: 0.6rem;
  border-radius: 0.4rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  pointer-events: none;
  -webkit-transition: background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1),
    -webkit-box-shadow 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1),
    -webkit-box-shadow 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1),
    box-shadow 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1),
    box-shadow 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1),
    box-shadow 0.2s cubic-bezier(0.39, 0.575, 0.565, 1),
    -webkit-box-shadow 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .form-content .select-form__arrow {
    width: 8rem;
    padding-bottom: 0.6rem;
    border-radius: 0.8rem;
  }
}
.form-content .select-form__arrow:after {
  content: "";
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 0.8rem;
  height: 0.8rem;
  border: solid #f02878;
  border-width: 1px 1px 0 0;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
}
@media screen and (max-width: 768px) {
  .form-content .select-form__arrow:after {
    width: 1.7rem;
    height: 1.7rem;
    border-width: 0.3rem 0.3rem 0 0;
  }
}
.form-content .select-form__inner {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  border: none;
  border-radius: 0;
  cursor: pointer;
  font: inherit;
  font-family: YakuHanJP, "Noto Sans JP", sans-serif;
  color: #000;
  background: #fff;
  line-height: 1;
  letter-spacing: 0.06em;
  display: block;
  position: relative;
  padding: 0.5rem 5rem 0.5rem 2rem;
  width: calc(100% + 5rem);
  height: 100%;
  border-radius: 0.4rem;
  z-index: 0;
}
@media screen and (max-width: 768px) {
  .form-content .select-form__inner {
    padding: 0.5rem 8rem 0.5rem 2rem;
    width: calc(100% + 8rem);
    border-radius: 0.8rem;
  }
}
.form-content .select-form__inner:focus {
  -webkit-box-shadow: 0 0 0 1px #f02878;
  box-shadow: 0 0 0 1px #f02878;
}
.form-content .select-form--paper {
  height: calc(8rem - 2px);
  /*border: none;*/
}
.form-content .select-form--paper:has(.ms-dd) {
  border: none;
}
@media screen and (max-width: 768px) {
  .form-content .select-form--paper {
    height: 12rem;
  }
}
.form-content .select-form--paper .select-form__arrow {
  border-width: 1px 1px 1px 0;
  border-radius: 0 0.4rem 0.4rem 0;
}

.form-content .select-form--paper:has(.ms-dd) .select-form__arrow {
  border: solid #dcdcdc;
  border-width: 1px 1px 1px 0;
  border-radius: 0 0.4rem 0.4rem 0;
}
@media screen and (max-width: 768px) {
  .form-content .select-form--paper .select-form__arrow {
    border-width: 0.2rem 0.2rem 0.2rem 0;
    border-radius: 0 0.8rem 0.8rem 0;
  }
  .form-content .select-form--paper:has(.ms-dd) .select-form__arrow {
    border-width: 0.2rem 0.2rem 0.2rem 0;
    border-radius: 0 0.8rem 0.8rem 0;
  }
}
.form-content .select-form--paper .ms-dd {
  background: #fff;
  width: 100%;
  height: 100%;
  text-align: left;
}
.form-content .select-form--paper .ms-dd .ms-dd-header {
  height: 100%;
  border-radius: 0.4rem;
  overflow: hidden;
  border: 1px solid #dcdcdc;
}
@media screen and (max-width: 768px) {
  .form-content .select-form--paper .ms-dd .ms-dd-header {
    border-radius: 0.8rem;
    border-width: 0.2rem;
  }
}
.form-content .select-form--paper .ms-dd .ms-dd-header .ms-list-option {
  background: #fff;
  height: 100%;
  border: none;
}
@media screen and (max-width: 768px) {
  .form-content .select-form--paper .ms-dd .ms-dd-header .ms-list-option {
    padding: 1rem 0 1rem 1.6rem;
  }
}
.form-content
  .select-form--paper
  .ms-dd
  .ms-dd-header
  .ms-list-option
  .ms-header-middle-content {
  height: 100%;
}
@media screen and (max-width: 768px) {
  .form-content .select-form--paper .ms-dd .ms-dd-header .ms-dd-option-content {
    width: calc(100% - 12.2rem - 8rem);
  }
}
.form-content .select-form--paper .ms-dd .ms-middle {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.form-content .select-form--paper .ms-dd .ms-list-option {
  border-color: #dcdcdc;
}
.form-content .select-form--paper .ms-options {
  height: 300%;
  overflow: auto;
  border-color: #dcdcdc;
}
.form-content .select-form--paper .ms-dd-option-image {
  width: 6.1rem;
  height: 4rem;
  margin-right: 0;
}
@media screen and (max-width: 768px) {
  .form-content .select-form--paper .ms-dd-option-image {
    width: 12.2rem;
    height: 8rem;
  }
}
.form-content .select-form--paper .ms-dd-option-content {
  font-family: YakuHanJP, "Noto Sans JP", sans-serif;
  width: calc(100% - 6.1rem);
  padding-left: 1.4rem;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
}
@media screen and (max-width: 768px) {
  .form-content .select-form--paper .ms-dd-option-content {
    width: calc(100% - 12.2rem);
    padding-bottom: 1rem;
    padding-left: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .form-content .select-form--paper .ms-dd-option-content .ms-dd-label {
    line-height: 1.2;
  }
}
.form-content .select-form--paper .ms-dd-option-content .ms-dd-desc {
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .form-content .select-form--paper .ms-dd-option-content .ms-dd-desc {
    font-size: 2.4rem;
    line-height: 1.2;
  }
}
.form-content textarea {
  width: 100%;
  height: 24rem;
  margin-top: 1.5rem;
  padding: 2rem;
  outline: none;
  border: 1px solid #dcdcdc;
  border-radius: 0.4rem;
  background: #fff;
}
@media screen and (max-width: 768px) {
  .form-content textarea {
    border-radius: 0.8rem;
    border-width: 0.2rem;
    height: 34rem;
  }
}
.form-content textarea::-webkit-input-placeholder {
  color: #c8c8c8;
}
.form-content textarea::-moz-placeholder {
  color: #c8c8c8;
}
.form-content textarea:-ms-input-placeholder {
  color: #c8c8c8;
}
.form-content textarea::-ms-input-placeholder {
  color: #c8c8c8;
}
.form-content textarea::placeholder {
  color: #c8c8c8;
}
.form-content .checkbox-form {
  position: relative;
  display: inline-block;
  padding-left: 2.8rem;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  .form-content .checkbox-form {
    padding-left: 4.8rem;
  }
}
.form-content .checkbox-form + .checkbox-form {
  margin-left: 4rem;
}
@media screen and (max-width: 768px) {
  .form-content .checkbox-form + .checkbox-form {
    margin-left: 7rem;
  }
}
.form-content .checkbox-form__button {
  position: absolute;
  z-index: -1;
  opacity: 0;
}
.form-content .checkbox-form__button:checked + .checkbox-form__check {
  background: #f02878;
  border-color: #f02878;
}
.form-content .checkbox-form__button:checked + .checkbox-form__check:before {
  opacity: 1;
}
.form-content .checkbox-form__check {
  width: 1.4rem;
  height: 1.4rem;
  position: absolute;
  top: calc(50% - 0.7rem);
  left: 0;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0 0 2px 0;
  background: #fff;
  border: solid 1px #dcdcdc;
  border-radius: 0.3rem;
}
@media screen and (max-width: 768px) {
  .form-content .checkbox-form__check {
    width: 2.8rem;
    height: 2.8rem;
    position: absolute;
    top: calc(50% - 2.8rem / 2);
    left: 0;
    padding: 0 0.2rem 0.5rem 0;
    border-width: 0.2rem;
    border-radius: 0.6rem;
  }
}
.form-content .checkbox-form__check:before {
  content: "";
  display: block;
  width: 3.5px;
  height: 7px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: solid #fff;
  border-width: 0 1px 1px 0;
  pointer-events: none;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  opacity: 0;
}
@media screen and (max-width: 768px) {
  .form-content .checkbox-form__check:before {
    width: 0.77rem;
    height: 1.54rem;
    border-width: 0 0.3rem 0.3rem 0;
  }
}
.form-content .radio-form {
  position: relative;
  display: inline-block;
  padding-left: 2.8rem;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  .form-content .radio-form {
    padding-left: 4.8rem;
  }
}
.form-content .radio-form + .radio-form {
  margin-left: 4rem;
}
@media screen and (max-width: 768px) {
  .form-content .radio-form + .radio-form {
    margin-left: 7rem;
  }
}
@media screen and (max-width: 768px) {
  .form-content .radio-form + .radio-form--sp-vertical {
    display: block;
    margin-left: 0;
    margin-top: 1.8rem;
  }
}
.form-content .radio-form__button {
  position: absolute;
  z-index: -1;
  opacity: 0;
}
.form-content .radio-form__button:checked + .radio-form__check:before {
  opacity: 1;
}
.form-content .radio-form__check {
  width: 2rem;
  height: 2rem;
  border-radius: 100%;
  position: absolute;
  top: calc(50% - 1rem);
  left: 0;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border: solid 1px #dcdcdc;
}
@media screen and (max-width: 768px) {
  .form-content .radio-form__check {
    width: 4rem;
    height: 4rem;
    border-radius: 100%;
    position: absolute;
    top: calc(50% - 4rem / 2);
    left: 0;
    border-width: 0.2rem;
  }
}
.form-content .radio-form__check:before {
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 100%;
  content: "";
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background: #f02878;
  pointer-events: none;
  opacity: 0;
}
@media screen and (max-width: 768px) {
  .form-content .radio-form__check:before {
    width: 2.4rem;
    height: 2.4rem;
    border-radius: 100%;
  }
}
.form-content .checkbox-agree {
  font-size: 1.4rem;
  line-height: 1;
  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;
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .form-content .checkbox-agree {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    font-size: 3rem;
    margin-top: 7rem;
  }
}
.form-content .checkbox-agree > label:first-of-type {
  position: relative;
  display: inline-block;
  width: 14px;
  height: 14px;
  cursor: pointer;
  margin-right: 14px;
}
@media screen and (max-width: 768px) {
  .form-content .checkbox-agree > label:first-of-type {
    width: 2.8rem;
    height: 2.8rem;
    margin-right: 2.2rem;
  }
}
.form-content .checkbox-agree label[for="privacycheck"] {
  cursor: pointer;
}
.form-content .checkbox-agree__button {
  display: none;
}
.form-content .checkbox-agree__button:checked + .checkbox-agree__check {
  background: #f02878;
  border-color: #f02878;
}
.form-content .checkbox-agree__button:checked + .checkbox-agree__check:before {
  opacity: 1;
}
.form-content .checkbox-agree__check {
  background: #fff;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  padding: 0 1px 2.5px 0;
  border-radius: 3px;
  border: 1px solid #dcdcdc;
}
@media screen and (max-width: 768px) {
  .form-content .checkbox-agree__check {
    padding: 0 0.2rem 0.5rem 0;
    border-radius: 0.6rem;
  }
}
.form-content .checkbox-agree__check:before {
  content: "";
  display: block;
  width: 3.5px;
  height: 7px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: solid #fff;
  border-width: 0 1px 1px 0;
  pointer-events: none;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  opacity: 0;
}
@media screen and (max-width: 768px) {
  .form-content .checkbox-agree__check:before {
    width: 0.77rem;
    height: 1.54rem;
    border-width: 0 0.3rem 0.3rem 0;
  }
}
.form-content__name_flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 48rem;
}
@media screen and (max-width: 768px) {
  .form-content__name_flex {
    width: 100%;
  }
}
.form-content__name_flex dd:first-of-type {
  margin-right: 1rem;
}
.form-content__btn-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.form-content__btn-flex--btn {
  width: 30rem;
  height: 6rem;
  margin-left: 2rem;
}
@media screen and (max-width: 768px) {
  .form-content__btn-flex--btn {
    height: auto;
    margin-left: 1rem;
    font-size: 2.5rem;
    line-height: 1.4;
  }
}
.form-content__howto {
  position: relative;
}
.form-content__howto::before {
  content: "";
  width: 2rem;
  height: 2rem;
  border: 1px solid #f02878;
  border-radius: 50%;
  position: absolute;
  top: 0.5rem;
  right: -3.3rem;
}
@media screen and (max-width: 768px) {
  .form-content__howto::before {
    width: 4rem;
    height: 4rem;
    top: 0.8rem;
    right: -5.6rem;
  }
}
.form-content__howto::after {
  content: "?";
  color: #f02878;
  font-weight: bold;
  position: absolute;
  top: 0;
  right: -2.7rem;
}
@media screen and (max-width: 768px) {
  .form-content__howto::after {
    right: -4.2rem;
  }
}

.quick__result {
  width: 100%;
  margin-top: 6rem;
}
.quick__result tr {
  border-bottom: 1px solid #c8c8c8;
}
.quick__result tr:nth-last-of-type(2) {
  border-bottom: 2px solid #f02878;
}
.quick__result tr:last-of-type {
  font-size: 2rem;
  font-weight: 700;
  border-bottom: none;
}
@media screen and (max-width: 768px) {
  .quick__result tr:last-of-type {
    font-size: 3rem;
  }
}
.quick__result tr:last-of-type th {
  color: #f02878;
}
.quick__result th {
  font-weight: 700;
  padding: 1rem 0;
}
.quick__btnwrap {
  margin-top: 4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .quick__btnwrap {
    display: block;
  }
}
.quick__btnwrap .button {
  width: 26rem;
}
@media screen and (max-width: 768px) {
  .quick__btnwrap .button {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .quick__btnwrap .button + .button {
    margin-top: 10px;
  }
}

#pardot-form .form-group {
  display: -ms-grid;
  display: grid;
  margin-bottom: 0;
}

#pardot-form .required .formHeading:after {
  position: absolute;
  left: 15px;
  color: #f02878;
  font-size: 1.2rem;
  line-height: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 5.1rem;
  height: 2.2rem;
  border-radius: 0.4rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #f02878;
  margin-top: 0.4rem;
  margin-right: 1.4rem;
}

#pardot-form .required .formHeading:after {
  background: none;
}

#pardot-form .field-label {
  padding-left: 6.4rem;
  font-size: 1.6rem;
  line-height: 1.875;
  font-weight: 700;
}

#pardot-form .form-control {
  background: #fff;
  line-height: 1.875;
  letter-spacing: 0.06em;
  border: none;
  display: inline-block;
  width: 100%;
  height: 6rem;
  padding: 0 2rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #dcdcdc;
  border-radius: 0.4rem;
  -webkit-box-shadow: none;
  box-shadow: none;
  font-size: 1.6rem;
}

#pardot-form .col-sm-3,
#pardot-form .col-sm-9 {
  width: 100%;
}

#pardot-form .btn-primary {
  background: #3c3c3c;
}

#pardot-form .form-group:after {
  border-bottom: none;
}

#pardot-form .formInputInner.zip:before {
  content: none;
}

#contentMain .contentHeader {
  padding: 0;
}

#contentMain.container {
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
  overflow: hidden;
  padding-top: 0;
}

.hero {
  overflow: hidden;
  width: 112.6rem;
}
@media screen and (max-width: 768px) {
  .hero {
    width: 100%;
    padding-bottom: 6rem;
  }
}
.hero__carousel-item {
  vertical-align: top;
}
@media screen and (max-width: 768px) {
  .hero__carousel-item {
    padding: 0;
  }
}
.hero__carousel-item a {
  width: 100%;
  height: auto;
  display: block;
}
@media screen and (max-width: 768px) {
  .hero__carousel-item a {
    width: 76.8rem;
    height: 27.2rem;
  }
}
.hero__thumb {
  width: 100%;
  max-width: 96.6rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .hero__thumb {
    width: 100%;
    max-width: 76.8rem;
    margin-left: auto;
    margin-right: auto;
    margin-top: 3rem;
  }
}
.hero__thumb-item {
  padding: 0 0.4rem;
  vertical-align: top;
}
@media screen and (max-width: 768px) {
  .hero__thumb-item {
    padding: 0 1rem;
  }
}
.hero__thumb-item span {
  width: 18.7rem;
  height: 6.5rem;
  position: relative;
  display: block;
}
@media screen and (max-width: 768px) {
  .hero__thumb-item span {
    width: 22.4rem;
    height: 7.9rem;
  }
}
.hero__thumb .slick-slide {
  cursor: pointer;
  opacity: 0.3;
  -webkit-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.hero__thumb .slick-slide span:after {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: solid 0.2rem #f02878;
  opacity: 0;
  -webkit-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .hero__thumb .slick-slide span:after {
    border-width: 0.4rem;
  }
}
.hero__thumb .slick-current {
  opacity: 1;
}
.hero__thumb .slick-current span:after {
  opacity: 1;
}
.hero__thumb .slick-arrow {
  width: 1.4rem;
  height: 1.4rem;
  position: absolute;
  top: calc(50% - 0.7rem);
  padding: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  border: none;
  background: none;
  font-size: 0;
  line-height: 0;
  cursor: pointer;
  z-index: 9;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
  .hero__thumb .slick-arrow {
    width: 2.2rem;
    height: 2.2rem;
    top: calc(50% - 2.2rem / 2);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0;
  }
}
.hero__thumb .slick-prev {
  left: 1.5rem;
  border-bottom: solid 0.2rem #f02878;
  border-left: solid 0.2rem #f02878;
}
@media screen and (max-width: 768px) {
  .hero__thumb .slick-prev {
    left: 2.2rem;
    border-bottom-width: 0.4rem;
    border-left-width: 0.4rem;
  }
}
.hero__thumb .slick-next {
  right: 1.5rem;
  border-top: solid 0.2rem #f02878;
  border-right: solid 0.2rem #f02878;
}
@media screen and (max-width: 768px) {
  .hero__thumb .slick-next {
    right: 2.2rem;
    border-top-width: 0.4rem;
    border-right-width: 0.4rem;
  }
}

.horizontal-table {
  width: 100%;
  margin-top: 2.5rem;
}
.horizontal-table p {
  margin-top: 0 !important;
}
.horizontal-table > tbody > tr > th,
.horizontal-table > tbody > tr > td {
  padding: 1.5rem 1rem;
  border-bottom: 1px solid #dcdcdc;
}
.horizontal-table > tbody > tr > th th,
.horizontal-table > tbody > tr > td th {
  padding-right: 2rem;
}
.horizontal-table > tbody > tr > th {
  width: 20rem;
}
@media screen and (max-width: 768px) {
  .horizontal-table > tbody > tr > th {
    text-align: left;
    width: 23rem;
  }
}
.horizontal-table > tbody td strong {
  font-weight: bold;
}
.horizontal-table > tbody td small {
  font-size: 1.2rem;
}
@media screen and (max-width: 768px) {
  .horizontal-table > tbody td small {
    display: block;
    font-size: 2.2rem;
  }
}
.horizontal-table--calc > tbody > tr > th {
  width: 40rem;
}
@media screen and (max-width: 768px) {
  .horizontal-table--calc > tbody > tr > th {
    text-align: left;
    width: 26rem;
  }
}

.icon-anchor-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .icon-anchor-list {
    display: block;
  }
}
.icon-anchor-list__item {
  width: calc(33.333% - 2rem);
  margin-right: 3rem;
}
@media screen and (max-width: 768px) {
  .icon-anchor-list__item {
    width: 100%;
    margin: 0;
  }
}
.icon-anchor-list__item:nth-of-type(3n) {
  margin-right: 0;
}
@media screen and (min-width: 769px) {
  .icon-anchor-list__item:nth-of-type(n + 4) {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .icon-anchor-list__item:nth-of-type(n + 2) {
    margin-top: 3rem;
  }
}
.icon-anchor-list__item a {
  position: relative;
  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;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 23rem;
  padding-bottom: 1rem;
  color: #000;
  border: solid 1px #dcdcdc;
  border-radius: 0.4rem;
  text-decoration: none;
  text-align: center;
  -webkit-transition: border-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: border-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: border-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .icon-anchor-list__item a {
    height: 44rem;
    padding-bottom: 4rem;
    border-width: 0.2rem;
    border-radius: 0.8rem;
  }
}
.icon-anchor-list__item a.is-on {
  border-color: #f02878;
}
.icon-anchor-list__item a:before {
  width: 0.6rem;
  height: 0.6rem;
  position: absolute;
  bottom: 1.5rem;
  left: calc(50% - 0.3rem);
  content: "";
  display: block;
  border-bottom: solid 1px #f02878;
  border-right: solid 1px #f02878;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
  .icon-anchor-list__item a:before {
    bottom: 3.5rem;
    left: calc(50% - 2.4rem / 2);
    width: 2.4rem;
    height: 2.4rem;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0;
    border-width: 0.4rem;
  }
}
.icon-anchor-list__image {
  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;
  height: 7rem;
}
@media screen and (max-width: 768px) {
  .icon-anchor-list__image {
    height: 12rem;
  }
}
@media screen and (max-width: 768px) {
  .icon-anchor-list__image img {
    max-width: 24rem;
    max-height: 12rem;
  }
}
.icon-anchor-list__heading {
  margin-top: 2rem;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .icon-anchor-list__heading {
    margin-top: 3rem;
    font-size: 4rem;
    font-weight: 500;
  }
}
.icon-anchor-list__lead {
  margin-top: 0.8rem;
  font-size: 1.4rem;
  line-height: 1.8571428571;
}
@media screen and (max-width: 768px) {
  .icon-anchor-list__lead {
    margin-top: 1.2rem;
    font-size: 2.8rem;
    line-height: 1.9285714286;
  }
}

.icon-button-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 4rem;
  gap: 4rem;
}
@media screen and (max-width: 768px) {
  .icon-button-list {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 6rem;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 2rem;
  }
}
.icon-button-list__item {
  width: calc(100% / 5 - 1rem);
}
@media screen and (max-width: 768px) {
  .icon-button-list__item {
    width: 33.4rem;
  }
}

@media screen and (max-width: 768px) {
  .icon-button-list__item:nth-of-type(n + 3) {
    margin-top: 3rem;
  }
}
.icon-button-list__item a {
  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;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 18rem;
  padding-top: 1rem;
  color: #000;
  border: solid 1px #dcdcdc;
  border-radius: 0.4rem;
  background: #fff;
  text-decoration: none;
  -webkit-transition: border-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: border-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: border-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .icon-button-list__item a {
    height: 30rem;
    padding: 0;
    border-width: 0.2rem;
    border-radius: 0.8rem;
  }
}
.icon-button-list__item a.is-on {
  border: 3px solid #f02878;
}
.icon-button-list__item a.is-current {
  border: 3px solid #f02878;
  pointer-events: none;
  background: #fff7fa;
}

.icon-button-list__item a.is-current .icon-button-list__image {
  position: relative;
}

.icon-button-list__item a.is-current .icon-button-list__image::before {
  content: "";
  width: 8rem;
  height: 8rem;
  background: #fff;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  z-index: 0;
}

.icon-button-list__item a.is-current .icon-button-list__image img {
  position: relative;
}

.icon-button-list__image {
  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;
  height: 6rem;
}
@media screen and (max-width: 768px) {
  .icon-button-list__image {
    height: 12rem;
  }
}
@media screen and (max-width: 768px) {
  .icon-button-list__image img {
    max-width: 16.2rem;
    height: 100%;
  }
}
@media screen and (max-width: 768px) {
  .icon-button-list__image--data img {
    max-width: 13.7rem;
  }
}
.icon-button-list__heading {
  margin-top: 2.5rem;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .icon-button-list__heading {
    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;
    margin-top: 2.4rem;
    min-height: 2em;
    font-size: 3.6rem;
    line-height: 1.3888888889;
  }
}
.icon-button-list--center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.icon-button-list--3column .icon-button-list__item {
  width: calc(33.333% - 2rem);
}
.icon-button-list--3column .icon-button-list__item:nth-of-type(4n) {
  margin-right: 3rem;
}
.icon-button-list--3column .icon-button-list__item:nth-of-type(3n) {
  margin-right: 0;
}
.icon-button-list--3column .icon-button-list__item a {
  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;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 18rem;
  padding-top: 1rem;
  color: #000;
  border: solid 1px #dcdcdc;
  border-radius: 0.4rem;
  background: #fff;
  text-decoration: none;
  -webkit-transition: border-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: border-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: border-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.icon-button-list--3column .icon-button-list__item a.is-on {
  border-color: #f02878;
}
.icon-button-list--3column .icon-button-list__item a.is-current {
  border-color: #f02878;
  pointer-events: none;
}

.icon-index-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.icon-index-list__item {
  width: 46.8rem;
  margin-right: 2.8rem;
}
@media screen and (max-width: 768px) {
  .icon-index-list__item {
    width: 100%;
    margin: 0;
  }
}
.icon-index-list__item:nth-of-type(2n) {
  margin-right: 0;
}
@media screen and (min-width: 769px) {
  .icon-index-list__item:nth-of-type(n + 3) {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .icon-index-list__item:nth-of-type(n + 2) {
    margin-top: 3rem;
  }
}
.icon-index-list__item a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 12rem;
  padding-right: 3.5rem;
  color: #000;
  border: solid 1px #dcdcdc;
  border-radius: 0.4rem;
  text-decoration: none;
  -webkit-transition: border-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: border-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: border-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .icon-index-list__item a {
    height: 24rem;
    padding-right: 7.4rem;
    border-width: 0.2rem;
    border-radius: 0.4rem;
  }
}
.icon-index-list__item a.is-on {
  border-color: #f02878;
}
.icon-index-list__item a:before {
  width: 0.6rem;
  height: 0.6rem;
  position: absolute;
  top: calc(50% - 0.3rem);
  right: 2rem;
  content: "";
  display: block;
  border-top: solid 1px #f02878;
  border-right: solid 1px #f02878;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
  .icon-index-list__item a:before {
    width: 1.6rem;
    height: 1.6rem;
    top: calc(50% - 1.6rem / 2);
    right: 3rem;
    border-width: 0.3rem;
  }
}
.icon-index-list__image {
  width: 13.6rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .icon-index-list__image {
    width: 16.4rem;
    padding-right: 1rem;
  }
}
@media screen and (max-width: 768px) {
  .icon-index-list__image img {
    width: 10.4rem;
    height: 9.5rem;
  }
}
.icon-index-list__body {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}
@media screen and (max-width: 768px) {
  .icon-index-list__body {
    padding-top: 1rem;
  }
}
.icon-index-list__heading {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .icon-index-list__heading {
    font-size: 3.6rem;
  }
}
.icon-index-list__lead {
  margin-top: 0.8rem;
  font-size: 1.4rem;
  line-height: 1.8571428571;
}
@media screen and (max-width: 768px) {
  .icon-index-list__lead {
    margin-top: 1rem;
    font-size: 2.8rem;
    line-height: 1.9285714286;
  }
}

.index-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: solid 1px #dcdcdc;
  border-radius: 0.6rem;
  background: #fff;
}
@media screen and (max-width: 768px) {
  .index-box {
    display: block;
    border-width: 0.2rem;
    border-radius: 1.2rem;
    overflow: hidden;
  }
}
.index-box--rev {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}
.index-box + .index-box {
  margin-top: 2.5rem;
}
@media screen and (max-width: 768px) {
  .index-box + .index-box {
    margin-top: 5rem;
  }
}
.index-box__image {
  width: 24rem;
}
@media screen and (max-width: 768px) {
  .index-box__image {
    width: 100%;
    height: 30rem;
  }
}
.index-box__body {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  position: relative;
  padding: 3rem 4rem;
}
@media screen and (max-width: 768px) {
  .index-box__body {
    padding: 5rem 3rem 7rem;
  }
}
.index-box__heading {
  font-size: 3rem;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .index-box__heading {
    font-size: 4rem;
  }
}
.index-box__link {
  margin-top: 1.6rem;
}
@media screen and (max-width: 768px) {
  .index-box__link {
    margin-top: 3rem;
  }
}
.index-box__button {
  position: absolute;
  right: 4rem;
  bottom: 3rem;
  width: 23rem;
}
@media screen and (max-width: 768px) {
  .index-box__button {
    position: relative;
    bottom: auto;
    right: auto;
    width: 54rem;
    margin: 5rem auto 0;
  }
}

.keyword-search {
  margin-top: 3rem;
  padding: 1rem 3rem;
  background: #fbf8f4;
  font-size: 1.4rem;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .keyword-search {
    font-size: 2.8rem;
    margin: 9rem -3rem 0;
    padding: 3rem 3rem;
  }
}
.keyword-search__inner {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.keyword-search__inner:before {
  width: 1.8rem;
  height: 1.8rem;
  position: absolute;
  top: calc(50% - 0.9rem);
  left: 1.5rem;
  content: "";
  display: block;
  background: url(../img/common/icn_search.svg) no-repeat center center;
  background-size: contain;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .keyword-search__inner:before {
    width: 3.6rem;
    height: 3.6rem;
    position: absolute;
    top: calc(50% - 2.6rem / 2);
    left: 2rem;
  }
}
.keyword-search__input {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  height: 4rem;
  padding: 0 0 0 4.5rem;
  outline: none;
  border: none;
  background: #fff;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-top-left-radius: 0.6rem;
  border-bottom-left-radius: 0.6rem;
  -webkit-box-shadow: 0.1rem 0.1rem 0.2rem 0 rgba(0, 0, 0, 0.25) inset;
  box-shadow: 0.1rem 0.1rem 0.2rem 0 rgba(0, 0, 0, 0.25) inset;
}
@media screen and (max-width: 768px) {
  .keyword-search__input {
    height: 8rem;
    padding: 0 0 0 6.5rem;
  }
}
.keyword-search__input::-webkit-input-placeholder {
  color: #a0a0a0;
}
.keyword-search__input::-moz-placeholder {
  color: #a0a0a0;
}
.keyword-search__input:-ms-input-placeholder {
  color: #a0a0a0;
}
.keyword-search__input::-ms-input-placeholder {
  color: #a0a0a0;
}
.keyword-search__input::placeholder {
  color: #a0a0a0;
}
.keyword-search__button {
  width: 10rem;
  height: 4rem;
  padding: 0;
  outline: none;
  border: none;
  color: #fff;
  background: #f02878;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-top-right-radius: 0.6rem;
  border-bottom-right-radius: 0.6rem;
  cursor: pointer;
  -webkit-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .keyword-search__button {
    width: 14rem;
    height: 8rem;
    border-radius: 0 0.8rem 0.8rem 0;
  }
}
.keyword-search__button.is-on {
  opacity: 0.7;
}

.link-list {
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  .link-list {
    font-size: 3rem;
    line-height: 1.4;
    margin-top: 1.6rem;
  }
}
.link-list__item {
  border-bottom: 1px solid #dcdcdc;
}
@media screen and (max-width: 768px) {
  .link-list__item {
    border-bottom-width: 0.2rem;
  }
}
.link-list__item a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 1rem 3rem 1rem 1rem;
  color: #000;
  text-decoration: none;
  -webkit-transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .link-list__item a {
    padding: 1rem 4.5rem 1rem 1rem;
  }
}
.link-list__item a.is-on {
  color: #f02878;
}
.link-list__item a:before {
  width: 0.6rem;
  height: 0.6rem;
  position: absolute;
  top: calc(50% - 0.3rem);
  right: 1rem;
  content: "";
  display: block;
  border-top: solid 1px #f02878;
  border-right: solid 1px #f02878;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
  .link-list__item a:before {
    width: 1.6rem;
    height: 1.6rem;
    top: calc(50% - 1.6rem / 2);
    right: 1.4rem;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-width: 0.3rem;
  }
}
.link-list__item small {
  font-size: 1.2rem;
}
.link-list--row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .link-list--row {
    display: block;
    padding: 0 1.4rem;
  }
}
.link-list--row .link-list__item {
  width: calc(50% - 1.4rem);
  margin-right: 2.8rem;
}
@media screen and (max-width: 768px) {
  .link-list--row .link-list__item {
    width: 100%;
    margin-right: 0;
  }
}
.link-list--row .link-list__item:nth-of-type(2n) {
  margin-right: 0;
}

.news-list {
  position: relative;
  width: 46.8rem;
  margin-right: 3rem;
  padding-top: 0.4rem;
}
@media screen and (max-width: 768px) {
  .news-list {
    width: 100%;
    margin: 0;
    padding: 0;
  }
}
.news-list__heading {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .news-list__heading {
    font-size: 5rem;
  }
}
.news-list__body {
  margin-top: 2rem;
  font-size: 1.4rem;
  line-height: 1.7142857143;
}
@media screen and (max-width: 768px) {
  .news-list__body {
    margin-top: 1.6rem;
    font-size: 2.8rem;
    line-height: 1.7857142857;
  }
}
.news-list__item {
  padding: 1.5rem 0;
  border-bottom: 1px solid #dcdcdc;
}
@media screen and (max-width: 768px) {
  .news-list__item {
    padding: 2.6rem 0;
    border-bottom-width: 0.2rem;
  }
}
.news-list__date {
  color: #adadad;
}
.news-list__text a {
  color: #000;
  text-decoration: none;
  -webkit-transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.news-list__text a.is-on {
  color: #f02878;
}
.news-list__category {
  color: #f02878;
  display: inline-block;
  font-size: 1.2rem;
  padding: 0 1rem;
  border: 1px solid #f02878;
  margin-left: 1em;
}
.news-list__button {
  position: absolute;
  top: 0;
  right: 0;
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .news-list__button {
    font-size: 2.4rem;
  }
}
.news-list__button a {
  width: 9.5rem;
  height: 3.5rem;
  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: solid 1px #3c3c3c;
  border-radius: 0.4rem;
  color: #000;
  text-decoration: none;
  -webkit-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .news-list__button a {
    width: 14rem;
    height: 6rem;
    border-width: 0.2rem;
    border-radius: 0.8rem;
  }
}
.news-list__button a.is-on {
  opacity: 0.7;
}
.news-list--news {
  width: 100%;
}
.news-list--news .news-list__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .news-list--news .news-list__item {
    display: block;
  }
}
.news-list--news .news-list__date {
  width: 7.5em;
}
@media screen and (max-width: 768px) {
  .news-list--news .news-list__date {
    width: auto;
  }
}

.page-header-designer {
  padding: 4.5rem 8rem 7rem;
}
@media screen and (max-width: 768px) {
  .page-header-designer {
    padding: 4rem 3rem 7rem;
  }
}
.page-header-designer__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .page-header-designer__inner {
    -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;
  }
}
.page-header-designer__image {
  width: 34rem;
}
@media screen and (max-width: 768px) {
  .page-header-designer__image {
    width: 54rem;
  }
}
@media screen and (max-width: 768px) {
  .page-header-designer__image img {
    width: 100%;
  }
}
.page-header-designer__box {
  width: 59rem;
}
@media screen and (max-width: 768px) {
  .page-header-designer__box {
    width: 100%;
    margin-top: 4rem;
  }
}
.page-header-designer__title {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .page-header-designer__title {
    font-size: 4.6rem;
  }
}
.page-header-designer__career {
  margin-top: 0.8rem;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.7142857143;
}
@media screen and (max-width: 768px) {
  .page-header-designer__career {
    font-size: 2.8rem;
    line-height: 1.7857142857;
  }
}
.page-header-designer__summary {
  margin-top: 0.8rem;
  font-weight: 500;
  line-height: 1.875;
}
@media screen and (max-width: 768px) {
  .page-header-designer__summary {
    margin-top: 2rem;
    line-height: 1.9285714286;
  }
}

.page-header-visual {
  color: #fff;
  padding: 2rem 8rem 4.7rem;
}
@media screen and (max-width: 768px) {
  .page-header-visual {
    padding: 0 0 7rem;
  }
}
.page-header-visual__inner {
  position: relative;
}
.page-header-visual__image {
  width: 100%;
  height: 34rem;
}
@media screen and (max-width: 768px) {
  .page-header-visual__image {
    height: 27.2rem;
  }
}
.page-header-visual__box {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 0 6rem;
  height: 340px;
}
.page-header-visual__image {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .page-header-visual__box {
    min-height: 130px;
    height: auto;
    padding: 6rem;
  }
}

.page-header-visual__title {
  font-size: 4rem;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .page-header-visual__title {
    font-size: 5rem;
    text-shadow: 0 0 0.6em rgba(50, 50, 50, 0.6),
      0 0 0.6em rgba(50, 50, 50, 0.6);
  }
}
.page-header-visual__lead {
  margin-top: 2rem;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .page-header-visual__lead {
    margin-top: 3.4rem;
    font-size: 3.6rem;
    line-height: 1.6666666667;
  }
}
.page-header-visual__summary {
  margin-top: 1.5rem;
  font-weight: 500;
  line-height: 1.875;
}
@media screen and (max-width: 768px) {
  .page-header-visual__summary {
    margin-top: 2.2rem;
    font-size: 3rem;
    line-height: 2;
  }
}
.page-header-visual--color-black {
  color: #000;
}

.page-header {
  padding: 4.5rem 8rem 8rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .page-header {
    padding: 10rem 3rem 8rem;
  }
}
.page-header__title {
  font-size: 4rem;
  font-weight: 700;
  line-height: 1.4;
}
.page-header__hashtag {
  display: flex;
  flex-wrap: wrap;
  gap: 0 15px;
  margin-top: 10px;
  margin-bottom: 40px;
}
.page-header-visual .page-header__hashtag {
  margin-top: 15px;
  margin-bottom: 0;
}

@media screen and (max-width: 768px) {
  .page-header__hashtag {
    gap: 0 10px;
  }
}

.page-header__hashtag li,
.page-header__hashtag li a {
  color: #666666;
  font-size: 1.5rem;
}

.page-header-visual .page-header__hashtag li {
  text-shadow: 0 5px 12px rgba(0, 0, 0, 0.7),
    0 -5px 20px rgba(255, 255, 255, 0.4);
}
.page-header-visual .page-header__hashtag li,
.page-header-visual .page-header__hashtag li a {
  color: #fff;
}

@media screen and (max-width: 768px) {
  .page-header__hashtag li,
  .page-header__hashtag li a {
    font-size: 2.6rem;
  }
}

.page-header__title.left {
  text-align: left !important;
}
@media screen and (max-width: 768px) {
  .page-header__title {
    font-size: 5rem;
    line-height: 1.2;
  }
}
.page-header__title + .page-header__summary {
  margin-top: 3rem;
}
.page-header__lead {
  margin-top: 2rem;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .page-header__lead {
    color: #323232;
    margin-top: 3.4rem;
    font-size: 3.6rem;
    line-height: 1.6666666667;
  }
}
.page-header__summary {
  margin-top: 1.5rem;
  font-weight: 500;
  line-height: 1.875;
}
@media screen and (max-width: 768px) {
  .page-header__summary {
    color: #323232;
    margin-top: 2.2rem;
    font-size: 3rem;
    line-height: 2;
  }
}
@media screen and (max-width: 768px) {
  .page-header__summary--sp-left {
    text-align: left;
  }
}
.page-header--left {
  text-align: justify;
  text-justify: inter-ideograph;
  word-break: break-all;
}
.page-header--padding-bottom-0 {
  padding-bottom: 0;
}

.common_pager {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 8rem;
}
@media screen and (max-width: 768px) {
  .common_pager {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 11rem;
  }
}
.common_pager a {
  width: 4rem;
  height: 4rem;
  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: solid 1px #dcdcdc;
  color: #3c3c3c;
  text-decoration: none;
  -webkit-transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    border-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    background-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    border-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    background-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    border-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    background-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  margin-left: 2rem;
}
@media screen and (max-width: 768px) {
  .common_pager a {
    width: 7.2rem;
    height: 7.2rem;
    border-width: 0.2rem;
    margin-left: 0;
  }
}
.common_pager a.is-on {
  color: #fff;
  border-color: #3c3c3c;
  background-color: #3c3c3c;
}
.common_pager .prev,
.common_pager .next {
  width: 7rem;
}
@media screen and (max-width: 768px) {
  .common_pager .prev,
  .common_pager .next {
    width: 12.6rem;
  }
}
.common_pager .prev,
.common_pager .current {
  margin-left: 2rem;
}
@media screen and (max-width: 768px) {
  .common_pager .prev,
  .common_pager .current {
    margin-left: 0;
  }
}
.common_pager .current {
  width: 4rem;
  height: 4rem;
  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: solid 1px #dcdcdc;
  color: #fff;
  border-color: #3c3c3c;
  background-color: #3c3c3c;
  text-decoration: none;
  -webkit-transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    border-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    background-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    border-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    background-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    border-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1),
    background-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .common_pager .current {
    width: 7.2rem;
    height: 7.2rem;
    border-width: 0.2rem;
  }
}

.product-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.product-list__item {
  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;
  width: calc(50% - 1.5rem);
  margin-right: 3rem;
  padding: 3rem 3rem 2rem;
  border: solid 1px #dcdcdc;
  border-radius: 0.4rem;
  background: #fff;
}
@media screen and (max-width: 768px) {
  .product-list__item {
    width: 100%;
    padding: 3.6rem 3rem 5rem;
    margin: 0;
    border-width: 0.2rem;
    border-radius: 0.8rem;
  }
}
.product-list__item:nth-of-type(2n) {
  margin-right: 0;
}
@media screen and (min-width: 769px) {
  .product-list__item:nth-of-type(n + 3) {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .product-list__item:nth-of-type(n + 2) {
    margin-top: 5.5rem;
  }
}
.product-list__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .product-list__inner {
    display: block;
  }
}
.product-list__body {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  margin-top: -0.5rem;
}
.product-list__image {
  width: 18rem;
  margin-left: 2rem;
}
@media screen and (max-width: 768px) {
  .product-list__image {
    width: 54rem;
    margin: 4rem auto 0;
  }
}
.product-list__image span {
  display: block;
  height: 12rem;
}
@media screen and (max-width: 768px) {
  .product-list__image span {
    height: 30.4rem;
  }
}
.product-list__lead {
  font-weight: 500;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .product-list__lead {
    font-size: 2.8rem;
  }
}
.product-list__name {
  margin-top: 0.8rem;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .product-list__name {
    margin-top: 1rem;
    font-size: 4rem !important;
    line-height: 1.35;
  }
}
.product-list__name small {
  display: block;
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .product-list__name small {
    font-size: 2.4rem;
  }
}

.product-list__price {
  margin-top: 1rem;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .product-list__price {
    margin-top: 1.4rem;
    font-size: 2.4rem;
  }
}
.product-list__category {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 0.6rem;
  color: #f02878;
  font-size: 1.4rem;
  font-weight: 500;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .product-list__category {
    margin-top: 1rem;
    font-size: 2.4rem;
  }
}
.product-list__category-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 2.8rem;
  margin: 0.8rem 0.8rem 0 0;
  padding: 0 1.5rem;
  border: solid 1px #f02878;
  border-radius: 0.4rem;
}
@media screen and (max-width: 768px) {
  .product-list__category-item {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    min-width: 12.8rem;
    height: 4.4rem;
    margin: 1rem 2rem 0 0;
    padding: 0 3rem;
    border-width: 0.2rem;
    border-radius: 0.6rem;
  }
}

.product-list__hashtag {
  display: flex;
  flex-wrap: wrap;
  gap: 0 15px;
  margin-top: 2rem;
}

.product-list__hashtag li {
  line-height: 1.2;
  font-size: 1.3rem;
  color: #666666;
}
@media screen and (max-width: 768px) {
  .product-list__hashtag li {
    font-size: 2.6rem;
  }
}

.product-list__summary {
  margin-top: 1.2rem;
  line-height: 1.875;
}
@media screen and (max-width: 768px) {
  .product-list__summary {
    margin-top: 2.6rem;
    font-size: 2.8rem;
    line-height: 1.9285714286;
  }
}
.product-list__bottom {
  width: 100%;
  max-width: 28rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 2.5rem;
}
@media screen and (max-width: 768px) {
  .product-list__bottom {
    width: 100%;
    max-width: 54rem;
    margin-left: auto;
    margin-right: auto;
    margin-top: 7rem;
  }
}

.section {
  overflow: hidden;
  padding: 8rem 8rem;
}
@media screen and (max-width: 768px) {
  .section {
    padding: 0 3rem 12rem;
  }
}
.section > *:first-child {
  margin-top: 0;
}
.section strong {
  font-weight: bold;
}
.section__inner {
  overflow: hidden;
}
.section__header {
  text-align: center;
}
.section__header > *:first-child {
  margin-top: 0;
}
@media screen and (max-width: 768px) {
  .section__header .section__heading {
    font-size: 5rem;
    line-height: 1.4;
  }
}
@media screen and (max-width: 768px) {
  .section__header + .section__body {
    margin-top: 6rem;
  }
}
.section__heading {
  margin-top: 8rem;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .section__heading {
    font-size: 4.6rem;
    line-height: 1.4;
  }
}
.section__heading strong {
  color: #f02878;
}
.section__heading small {
  margin-left: 2rem;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  .section__heading small {
    font-size: 2.8rem;
    margin-left: 0;
  }
}
@media screen and (max-width: 768px) {
  .section__heading + .section__body > .section__sub-heading:first-child {
    margin-top: 0;
  }
}
.section__sub-heading {
  margin-top: 6rem;
  padding: 1.5rem 2rem;
  background: #fde9f1;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .section__sub-heading {
    margin-top: 10rem;
    padding: 2.2rem 3rem;
    font-size: 3.6rem;
    line-height: 1.3;
  }
}
.section__sub-heading small {
  margin-left: 2rem;
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  .section__sub-heading small {
    font-size: 2.4rem;
  }
}
.section__small-heading {
  margin-top: 4rem;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .section__small-heading {
    font-size: 3.2rem;
  }
}
.section__small-heading + .section__text,
.section__small-heading + .section__list {
  margin-top: 1rem;
}
@media screen and (max-width: 768px) {
  .section__small-heading + .section__text,
  .section__small-heading + .section__list {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .section__small-heading + .section__body-image {
    margin-top: 1.2rem;
  }
}
.section__lead {
  margin-top: 2rem;
  font-weight: 500;
  line-height: 1.875;
}
@media screen and (max-width: 768px) {
  .section__lead {
    color: #323232;
    margin-top: 2.8rem;
    line-height: 2;
  }
}
.section__image {
  width: 100%;
  margin-top: 3.2rem;
}
@media screen and (max-width: 768px) {
  .section__image {
    margin-top: 7rem;
  }
}
.section__image figcaption {
  margin-top: 0.5rem;
  font-size: 1.4rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .section__image figcaption {
    font-size: 2.6rem;
  }
}
.section__image--right {
  float: right;
  width: auto;
  margin-top: 3rem;
  margin-left: 4rem;
}
@media screen and (max-width: 768px) {
  .section__image--right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: block;
    width: 60rem;
    float: none;
    margin: 5rem auto 0;
  }
}
.section__image--center {
  text-align: center;
}
.section__lead-large {
  margin-top: 2.3rem;
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 1.6666666667;
}
@media screen and (max-width: 768px) {
  .section__lead-large {
    margin-top: 2.3rem;
    font-size: 3.4rem;
    line-height: 1.5882352941;
  }
}
.section__lead-large + .section__text {
  margin-top: 1.8rem;
}
@media screen and (max-width: 768px) {
  .section__lead-large + .section__text {
    margin-top: 2.2rem;
  }
}
.section__body {
  margin-top: 3.5rem;
}
@media screen and (max-width: 768px) {
  .section__body {
    margin-top: 4rem;
  }
}
.section__body > *:first-child {
  margin-top: 0;
}
.section__body + .section__header {
  margin-top: 8rem;
}
@media screen and (max-width: 768px) {
  .section__body + .section__header {
    margin-top: 10rem;
  }
}
.section__body::after {
  content: "";
  clear: both;
  display: block;
}
.section__body p {
  margin-top: 2.5rem;
}
.section__body .align-right {
  float: right;
  margin-left: 5rem;
  margin-bottom: 5rem;
}
@media screen and (max-width: 768px) {
  .section__body .align-right {
    float: none;
    margin-left: 0;
    margin-bottom: 0;
  }
}
@media screen and (max-width: 768px) {
  .section__body .align-right img {
    margin: 0 auto;
    display: block;
  }
}
.section__body .align-left {
  float: left;
  margin-right: 5rem;
  margin-bottom: 5rem;
}
@media screen and (max-width: 768px) {
  .section__body .align-left {
    float: none;
    margin-right: 0;
    margin-bottom: 0;
  }
}
@media screen and (max-width: 768px) {
  .section__body .align-left img {
    margin: 0 auto;
    display: block;
  }
}
.section__body-image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 1rem;
}
@media screen and (max-width: 768px) {
  .section__body-image {
    display: block;
    margin-top: 0;
  }
}
.section__body-image-inner {
  width: 55rem;
}
@media screen and (max-width: 768px) {
  .section__body-image-inner {
    width: 100%;
  }
}
.section__body-image-inner > *:first-child {
  margin-top: 0;
}
.section__body-image-image {
  width: 37rem;
}
@media screen and (max-width: 768px) {
  .section__body-image-image {
    width: 100%;
    margin-top: 6.8rem;
  }
}
@media screen and (max-width: 768px) {
  .section__body-image .section__heading {
    font-size: 4.6rem;
  }
}
.section__body-image .section__heading + h3 {
  margin: 2.3rem 0;
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 1.66667;
}
@media screen and (max-width: 768px) {
  .section__list-detail:first-of-type {
    margin-top: 7rem;
  }
}
.section__list-detail-item {
  border-bottom: 1px solid #dcdcdc;
  padding-bottom: 2.2rem;
}
@media screen and (max-width: 768px) {
  .section__list-detail-item {
    padding-bottom: 4rem;
    border-bottom-width: 0.2rem;
  }
}
.section__list-detail-item:nth-of-type(n + 2) {
  padding-top: 2.4rem;
}
@media screen and (max-width: 768px) {
  .section__list-detail-item:nth-of-type(n + 2) {
    padding-top: 3.6rem;
  }
}
.section__list-detail-heading {
  font-size: 2rem;
  line-height: 1.6;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .section__list-detail-heading {
    font-size: 4rem;
    line-height: 1.4;
    font-weight: 500;
  }
}
.section__list-detail-text {
  font-size: 1.4rem;
  line-height: 2.1428571429;
  margin-top: 0.6rem;
}
@media screen and (max-width: 768px) {
  .section__list-detail-text {
    font-size: 2.8rem;
    line-height: 1.9285714286;
    margin-top: 2.4rem;
  }
}
.section__note {
  margin-top: 2.4rem;
}
@media screen and (max-width: 768px) {
  .section__note {
    margin-top: 6.4rem;
  }
}
.section__note-heading {
  font-size: 1.6rem;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .section__note-heading {
    font-size: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .section__note-list {
    margin-top: 1.2rem;
  }
}
.section__note-list p {
  font-size: 1.2rem;
  line-height: 2.0833333333;
}
@media screen and (max-width: 768px) {
  .section__note-list p {
    font-size: 2.4rem;
    line-height: 1.8333333333;
  }
}
.section__note-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.2rem;
  line-height: 2.0833333333;
}
@media screen and (max-width: 768px) {
  .section__note-list li {
    font-size: 2.4rem;
    line-height: 1.8333333333;
  }
}
.section__note-list li em {
  display: block;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
}
.section__text {
  margin-top: 2.5rem;
}
@media screen and (max-width: 768px) {
  .section__text {
    margin-top: 2rem;
    font-size: 3rem;
    line-height: 2;
  }
}
.section__text strong {
  font-weight: 700;
}
.section__text--right {
  text-align: right;
}
.section__list {
  list-style-type: disc;
  margin-top: 2.5rem;
  padding-left: 1.5em;
}
.section__list li + li {
  margin-top: 1.5rem;
}
.section__number-list {
  list-style-type: decimal;
  margin-top: 2.5rem;
  padding-left: 1.5em;
}
@media screen and (max-width: 768px) {
  .section__number-list {
    margin-top: 3.5rem;
  }
}
.section__number-list li + li {
  margin-top: 1.5rem;
}
@media screen and (max-width: 768px) {
  .section__number-list li + li {
    margin-top: 2.5rem;
  }
}
.section__number-list--flow li {
  padding-bottom: 1.5rem;
  border-bottom: 1px solid #dcdcdc;
}
@media screen and (max-width: 768px) {
  .section__number-list--flow li {
    padding-bottom: 2.5rem;
    border-bottom-width: 0.2rem;
  }
}
.section__notes {
  padding-left: 1em;
  text-indent: -1em;
  margin-top: 2.5rem;
  font-size: 1.2rem;
}
@media screen and (max-width: 768px) {
  .section__notes {
    font-size: 2.4rem;
  }
}
.section__notes + .section__notes {
  margin-top: 0.5rem;
}
.section__notes--margin-top-narrow {
  margin-top: 1rem;
}
.section--row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .section--row {
    display: block;
  }
}
.section--padding-bottom-0 {
  padding-bottom: 0;
}
.section--padding-top-0 {
  padding-top: 0;
}
.section--bg-gray {
  padding: 8rem;
  background: #fbf8f4;
}
@media screen and (max-width: 768px) {
  .section--bg-gray {
    padding: 10rem 3rem 12rem;
  }
}
.section--bg-gray + .section {
  padding-top: 8rem;
}
@media screen and (max-width: 768px) {
  .section--bg-gray + .section--bg-pink {
    padding-top: 11rem;
  }
}
@media screen and (max-width: 768px) {
  .section--bg-gray + .section--row {
    padding-top: 9.5rem;
  }
}
.section--bg-pink_round {
  margin-top: 8rem;
  padding: 8rem;
  border: 2px solid #f02878;
  position: relative;
  overflow: visible;
}
@media screen and (max-width: 768px) {
  .section--bg-pink_round {
    padding: 10rem 3rem 12rem;
  }
}
.section--bg-pink_round::after {
  content: "";
  position: absolute;
  top: -2.6rem;
  left: 41%;
  border: 8.8rem solid transparent;
  border-top: 3.8rem solid #f02878;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .section--bg-pink_round::after {
    left: 38%;
  }
}
.section--bg-pink {
  padding: 8rem;
  background: #f02878 !important;
}
@media screen and (max-width: 768px) {
  .section--bg-pink {
    padding: 12rem 3rem 12rem;
  }
}
.section--bg-pink .section__header {
  color: #fff;
}
.section--bg-pink + .section {
  padding-top: 8rem;
}
@media screen and (max-width: 768px) {
  .section--bg-pink + .section {
    padding-top: 11rem;
  }
}
@media screen and (max-width: 768px) {
  .section--bg-pink + .section--row {
    padding-top: 9.5rem;
  }
}
.section--bg-pink .section__lead {
  color: #fff;
}
@media screen and (max-width: 768px) {
  .section--topics {
    padding-bottom: 10.4rem;
  }
}

.parts__body span {
  font-size: 1.2rem;
  display: block;
}
@media screen and (max-width: 768px) {
  .parts__body span {
    font-size: 2.4rem;
  }
}
.parts__body h3 {
  margin-top: 6rem;
  padding: 1.5rem 2rem;
  background: #fde9f1;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .parts__body h3 {
    margin-top: 10rem;
    padding: 2.2rem 3rem;
    font-size: 3.6rem;
    line-height: 1.3;
  }
}
.parts__body ul {
  list-style-type: decimal;
  margin-top: 2.5rem;
  padding-left: 1.5em;
}
@media screen and (max-width: 768px) {
  .parts__body ul {
    margin-top: 3.5rem;
  }
}
.parts__body ul li + li {
  margin-top: 1.5rem;
}
@media screen and (max-width: 768px) {
  .parts__body ul li + li {
    margin-top: 2.5rem;
  }
}
.parts__body ul li {
  padding-bottom: 1.5rem;
  border-bottom: 1px solid #dcdcdc;
}
@media screen and (max-width: 768px) {
  .parts__body ul li {
    padding-bottom: 2.5rem;
    border-bottom-width: 0.2rem;
  }
}
.parts__body ul li span {
  margin-top: 2.5rem;
}

/* .box-list__summary span {
  margin-top: 2.5rem;
  font-size: 1.2rem;
  display: block;
}
@media screen and (max-width: 768px) {
  .box-list__summary span {
    font-size: 2.4rem;
  }
} */
.box-list__summary span + span {
  margin-top: 0.5rem;
}

#designer_detail .section__body p {
  margin-top: 0;
}

.privacy__body h4 {
  margin-top: 4rem;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .privacy__body h4 {
    font-size: 3.2rem;
  }
}
.privacy__body h3 {
  margin-top: 6rem;
  padding: 1.5rem 2rem;
  background: #fde9f1;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .privacy__body h3 {
    margin-top: 10rem;
    padding: 2.2rem 3rem;
    font-size: 3.6rem;
    line-height: 1.3;
  }
}

.products_flex__cont {
  margin-top: 2.4rem;
}
.products_flex__cont img {
  margin: 2.4rem 0;
}

.search_result__item a {
  display: block;
  padding: 1rem 3rem 1rem 1rem;
  height: auto;
}
.search_result__item--text {
  font-size: 12px;
  color: #777;
}

.bl__common_content .align-right {
  float: right;
  margin-left: 5rem;
  margin-bottom: 5rem;
}
@media screen and (max-width: 768px) {
  .bl__common_content .align-right {
    float: none;
    margin-left: 0;
    margin-bottom: 0;
  }
}
.bl__common_content .align-right::after {
  content: "";
  clear: both;
  display: block;
}
@media screen and (max-width: 768px) {
  .bl__common_content .align-right img {
    margin: 0 auto;
    display: block;
  }
}
.bl__common_content .align-left {
  float: left;
  margin-right: 5rem;
  margin-bottom: 5rem;
}
@media screen and (max-width: 768px) {
  .bl__common_content .align-left {
    float: none;
    margin-right: 0;
    margin-bottom: 0;
  }
}
@media screen and (max-width: 768px) {
  .bl__common_content .align-left img {
    margin: 0 auto;
    display: block;
  }
}
.bl__common_content::after {
  content: "";
  clear: both;
  display: block;
}

.otorihiki {
  margin-top: 0;
}

.otorihiki_btn {
  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;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 30%;
  height: 5rem;
  color: #fff;
  border: none;
  border-radius: 0.4rem;
  background: #3c3c3c;
  font-size: 1.4rem;
  text-decoration: none;
  cursor: pointer;
  -webkit-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .otorihiki_btn {
    width: 100%;
    height: 9.6rem;
    border-radius: 0.8rem;
    font-size: 3rem;
    margin-top: 4rem;
  }
}

.otorihiki ol {
  list-style-type: decimal;
  margin: 2rem 0 2rem 2rem;
}
@media screen and (max-width: 768px) {
  .otorihiki ol {
    margin: 2rem 0 2rem 4rem;
  }
}

.otorihiki li {
  color: red;
  font-weight: bold;
}

.sitemapBox {
  padding-bottom: 1.5rem;
  margin-bottom: 1.5rem;
  border-bottom: 1px dotted #ccc;
}
.sitemapBox ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.sitemapBox ul li {
  margin: 0 20px 0 0;
}
.sitemapBox ul li a {
  text-decoration: none;
  position: relative;
  padding: 0 0 0 20px;
  color: inherit;
  -webkit-transition: 0.1s;
  -o-transition: 0.1s;
  transition: 0.1s;
}
@media screen and (max-width: 768px) {
  .sitemapBox ul li a {
    padding: 0 0 0 15px;
  }
}
.sitemapBox ul li a:hover {
  text-decoration: none;
  color: #f02878;
}
.sitemapBox ul li a:before {
  width: 0.6rem;
  height: 0.6rem;
  position: absolute;
  top: calc(50% - 0.3rem);
  left: 0;
  content: "";
  display: block;
  border-top: solid 1px #f02878;
  border-right: solid 1px #f02878;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
.sitemapItem {
  font-weight: bold;
}
@media screen and (min-width: 769px) {
  .sitemapItem {
    font-size: 1.8rem;
  }
}
.sitemapItem a {
  text-decoration: none;
  color: inherit;
  -webkit-transition: 0.1s;
  -o-transition: 0.1s;
  transition: 0.1s;
}
.sitemapItem a:hover {
  text-decoration: none;
  color: #f02878;
}
.sitemapTab {
  font-weight: bold;
  margin-top: 15px;
}

.guide_section ul {
  margin-bottom: 2rem;
}

#example .layout-content .section {
  padding: 8rem;
}
@media screen and (max-width: 768px) {
  #example .layout-content .section {
    padding: 12rem 3rem;
  }
}
#example .layout-content .section:nth-of-type(even) {
  background: #fbf8f4;
}
#example .layout-content .section:first-of-type {
  padding: 0 8rem 8rem;
}
@media screen and (max-width: 768px) {
  #example .layout-content .section:first-of-type {
    padding: 0 3rem 12rem;
  }
}

.text-agree {
  background: #fff;
  height: 32rem;
  border: 1px solid #dcdcdc;
  border-radius: 0.4rem;
  margin-top: 6rem;
}
@media screen and (max-width: 768px) {
  .text-agree {
    height: 42rem;
    border-radius: 0.8rem;
    margin-top: 8rem;
  }
}
.text-agree--social {
  margin-top: 1.8rem;
  height: 20rem;
}
@media screen and (max-width: 768px) {
  .text-agree--social {
    height: 32rem;
  }
}
.text-agree--social .text-agree__inner {
  padding: 2rem 3rem 2rem;
}
@media screen and (max-width: 768px) {
  .text-agree--social .text-agree__inner {
    padding: 2rem 3.6rem 2rem 3rem;
  }
}
.text-agree__inner {
  padding: 4rem 8rem 3rem;
}
@media screen and (max-width: 768px) {
  .text-agree__inner {
    padding: 4rem 3.6rem 3rem 3rem;
  }
}
.text-agree__inner > *:first-child {
  margin-top: 0;
}
.text-agree__heading {
  margin-top: 3.2rem;
  font-size: 1.95rem;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .text-agree__heading {
    font-size: 2.99rem;
    line-height: 1.4;
  }
}
.text-agree__heading strong {
  color: #f02878;
}
.text-agree__heading small {
  margin-left: 2rem;
  font-size: 1.17rem;
}
@media screen and (max-width: 768px) {
  .text-agree__heading small {
    font-size: 1.82rem;
    margin-left: 0;
  }
}
@media screen and (max-width: 768px) {
  .text-agree__heading + .section__body > .section__sub-heading:first-child {
    margin-top: 0;
  }
}
.text-agree__sub-heading {
  margin-top: 2.4rem;
  padding: 0.6rem 0.8rem;
  background: #fde9f1;
  font-size: 1.56rem;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .text-agree__sub-heading {
    margin-top: 4rem;
    padding: 0.88rem 1.2rem;
    font-size: 2.6rem;
    line-height: 1.3;
  }
}
.text-agree__sub-heading small {
  margin-left: 2rem;
  font-size: 1.04rem;
}
@media screen and (max-width: 768px) {
  .text-agree__sub-heading small {
    font-size: 1.56rem;
  }
}
.text-agree__small-heading {
  margin-top: 1.6rem;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .text-agree__small-heading {
    font-size: 2.5rem;
  }
}
.text-agree__small-heading + .text-agree__text,
.text-agree__small-heading + .text-agree__list {
  margin-top: 0.4rem;
}
@media screen and (max-width: 768px) {
  .text-agree__small-heading + .text-agree__text,
  .text-agree__small-heading + .text-agree__list {
    margin-top: 0.8rem;
  }
}
@media screen and (max-width: 768px) {
  .text-agree__small-heading + .text-agree__body-image {
    margin-top: 0.48rem;
  }
}
.text-agree__lead {
  margin-top: 0.8rem;
  font-weight: 500;
  line-height: 1.875;
}
@media screen and (max-width: 768px) {
  .text-agree__lead {
    color: #323232;
    margin-top: 1.12rem;
    line-height: 2;
  }
}
.text-agree__image {
  width: 100%;
  margin-top: 1.28rem;
}
@media screen and (max-width: 768px) {
  .text-agree__image {
    margin-top: 2.8rem;
  }
}
.text-agree__image figcaption {
  margin-top: 0.2rem;
  font-size: 0.91rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .text-agree__image figcaption {
    font-size: 1.69rem;
  }
}
.text-agree__image--right {
  float: right;
  width: auto;
  margin-top: 1.2rem;
  margin-left: 4rem;
}
@media screen and (max-width: 768px) {
  .text-agree__image--right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 60rem;
    float: none;
    margin: 5rem auto 0;
  }
}
.text-agree__image--center {
  text-align: center;
}
.text-agree__lead-large {
  margin-top: 0.92rem;
  font-weight: 500;
  font-size: 1.17rem;
  line-height: 1.6666666667;
}
@media screen and (max-width: 768px) {
  .text-agree__lead-large {
    margin-top: 0.92rem;
    font-size: 2.21rem;
    line-height: 1.5882352941;
  }
}
.text-agree__lead-large + .section__text {
  margin-top: 0.72rem;
}
@media screen and (max-width: 768px) {
  .text-agree__lead-large + .section__text {
    margin-top: 0.88rem;
  }
}
.text-agree__body {
  margin-top: 1.4rem;
}
@media screen and (max-width: 768px) {
  .text-agree__body {
    margin-top: 1.6rem;
  }
}
.text-agree__body > *:first-child {
  margin-top: 0;
}
.text-agree__body + .section__header {
  margin-top: 3.2rem;
}
@media screen and (max-width: 768px) {
  .text-agree__body + .section__header {
    margin-top: 4rem;
  }
}
.text-agree__body-image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 0.4rem;
}
@media screen and (max-width: 768px) {
  .text-agree__body-image {
    display: block;
    margin-top: 0;
  }
}
.text-agree__body-image-inner {
  width: 55rem;
}
@media screen and (max-width: 768px) {
  .text-agree__body-image-inner {
    width: 100%;
  }
}
.text-agree__body-image-inner > *:first-child {
  margin-top: 0;
}
.text-agree__body-image-image {
  width: 37rem;
}
@media screen and (max-width: 768px) {
  .text-agree__body-image-image {
    width: 100%;
    margin-top: 2.72rem;
  }
}
@media screen and (max-width: 768px) {
  .text-agree__body-image .section__heading {
    font-size: 2.99rem;
  }
}
.text-agree__list-detail {
  font-size: 1.5rem;
}
@media screen and (max-width: 768px) {
  .text-agree__list-detail:first-of-type {
    margin-top: 2.8rem;
  }
}
.text-agree__list-detail-item {
  border-bottom: 1px solid #dcdcdc;
  padding-bottom: 0.88rem;
}
@media screen and (max-width: 768px) {
  .text-agree__list-detail-item {
    padding-bottom: 1.6rem;
    border-bottom-width: 0.2rem;
  }
}
.text-agree__list-detail-item:nth-of-type(n + 2) {
  padding-top: 0.96rem;
}
@media screen and (max-width: 768px) {
  .text-agree__list-detail-item:nth-of-type(n + 2) {
    padding-top: 1.44rem;
  }
}
.text-agree__list-detail-heading {
  font-size: 1.3rem;
  line-height: 1.6;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .text-agree__list-detail-heading {
    font-size: 2.6rem;
    line-height: 1.4;
    font-weight: 500;
  }
}
.text-agree__list-detail-text {
  font-size: 0.91rem;
  line-height: 2.1428571429;
  margin-top: 0.24rem;
}
@media screen and (max-width: 768px) {
  .text-agree__list-detail-text {
    font-size: 1.82rem;
    line-height: 1.9285714286;
    margin-top: 0.96rem;
  }
}
.text-agree__note {
  font-size: 1.5rem;
  margin-top: 0.96rem;
}
@media screen and (max-width: 768px) {
  .text-agree__note {
    font-size: 2.4rem;
    margin-top: 2.56rem;
  }
}
.text-agree__note-heading {
  font-size: 1.04rem;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .text-agree__note-heading {
    font-size: 1.95rem;
  }
}
@media screen and (max-width: 768px) {
  .text-agree__note-list {
    margin-top: 0.48rem;
  }
}
.text-agree__note-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 0.78rem;
  line-height: 2.0833333333;
}
@media screen and (max-width: 768px) {
  .text-agree__note-list li {
    font-size: 1.56rem;
    line-height: 1.8333333333;
  }
}
.text-agree__note-list li em {
  display: block;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
}
.text-agree__text {
  font-size: 1.5rem;
  margin-top: 1rem;
}
@media screen and (max-width: 768px) {
  .text-agree__text {
    margin-top: 0.8rem;
    font-size: 2.4rem;
    line-height: 2;
  }
}
.text-agree__text strong {
  font-weight: 700;
}
.text-agree__text--right {
  text-align: right;
}
.text-agree__list {
  list-style-type: disc;
  margin-top: 1rem;
  padding-left: 1.5em;
  font-size: 1.5rem;
}
@media screen and (max-width: 768px) {
  .text-agree__list {
    font-size: 2.4rem;
    padding-left: 1.5em;
  }
}
.text-agree__number-list {
  list-style-type: decimal;
  margin-top: 1rem;
  padding-left: 1.5em;
}
@media screen and (max-width: 768px) {
  .text-agree__number-list {
    margin-top: 1.4rem;
  }
}
.text-agree__number-list li + li {
  margin-top: 0.6rem;
}
@media screen and (max-width: 768px) {
  .text-agree__number-list li + li {
    margin-top: 1rem;
  }
}
.text-agree__number-list--flow li {
  padding-bottom: 0.6rem;
  border-bottom: 1px solid #dcdcdc;
}
@media screen and (max-width: 768px) {
  .text-agree__number-list--flow li {
    padding-bottom: 1rem;
    border-bottom-width: 0.2rem;
  }
}
.text-agree__notes {
  padding-left: 1em;
  text-indent: -1em;
  margin-top: 1rem;
  font-size: 1.2rem;
}
@media screen and (max-width: 768px) {
  .text-agree__notes {
    font-size: 2.2rem;
  }
}
.text-agree__notes + .text-agree__notes {
  margin-top: 0.2rem;
}
.text-agree__notes--margin-top-narrow {
  margin-top: 0.4rem;
}

.thumb-button-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 3rem;
  gap: 3rem;
}
@media screen and (max-width: 768px) {
  .thumb-button-list {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 5rem;
  }
}
.thumb-button-list__item {
  width: calc(50% - 1.5rem);
  display: flex;
}
@media screen and (max-width: 768px) {
  .thumb-button-list__item {
    width: 100%;
  }
}

.thumb-button-list__image + .thumb-button-list__txt {
  width: calc(100% - 15rem);
}

.thumb-button-list__txt {
  padding: 1rem 0 1rem 3rem;
}

.thumb-button-list__txt .thumb-button-list__heading {
  padding-left: 0;
}

.thumb-button-list__hashtag {
  display: flex;
  flex-wrap: wrap;
  margin: 8px 0 0;
  gap: 0 15px;
}

.thumb-button-list__hashtag li {
  line-height: 1.2;
  font-size: 1.3rem;
  color: #666666;
}

@media screen and (max-width: 768px) {
  .thumb-button-list__hashtag li {
    font-size: 2.6rem;
  }
}

.thumb-button-list__item a {
  overflow: hidden;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  min-height: 10.2rem;
  padding-right: 4rem;
  color: #000;
  border: solid 1px #dcdcdc;
  border-radius: 0.4rem;
  background: #fff;
  text-decoration: none;
  -webkit-transition: border-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: border-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: border-color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  width: 100%;
}
@media screen and (max-width: 768px) {
  .thumb-button-list__item a {
    min-height: 15.1rem;
    padding-right: 8rem;
    border-width: 0.2rem;
    border-radius: 0.8rem;
  }
}
.thumb-button-list__item a.is-on {
  border-color: #f02878;
}
.thumb-button-list__item a:before {
  width: 0.6rem;
  height: 0.6rem;
  position: absolute;
  top: calc(50% - 0.3rem);
  right: 2rem;
  content: "";
  display: block;
  border-top: solid 1px #f02878;
  border-right: solid 1px #f02878;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
  .thumb-button-list__item a:before {
    width: 1.6rem;
    height: 1.6rem;
    top: calc(50% - 1.6rem / 2);
    right: 3rem;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-width: 0.3rem 0.3rem 0 0;
  }
}
.thumb-button-list__image {
  position: relative;
  width: 15rem;
  overflow: hidden;
  height: 100%;
}
.thumb-button-list__image img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  min-height: 100%;
  max-width: none;
  min-width: 100%;
  max-height: 110px;
}
@media screen and (max-width: 768px) {
  .thumb-button-list__image {
    width: 22.6rem;
  }
}
.thumb-button-list__caption {
  position: absolute;
  top: 0;
  left: 0;
  padding: 0.5rem 1rem;
  color: #fff;
  background: #3c3c3c;
  font-size: 1.2rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .thumb-button-list__caption {
    font-size: 2.4rem;
    padding: 1.2rem 1.8rem;
  }
}
.thumb-button-list__heading {
  padding-left: 3rem;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.3;
  margin-bottom: 0 !important;
}
@media screen and (max-width: 768px) {
  .thumb-button-list__heading {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    font-size: 3.2rem;
  }
}
.thumb-button-list__heading strong {
  color: #f02878;
}
.thumb-button-list__category {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 1rem;
  padding-left: 3rem;
  font-size: 1.2rem;
  line-height: 1;
  gap: 0.5rem;
}
@media screen and (max-width: 768px) {
  .thumb-button-list__category {
    font-size: 2.4rem;
    gap: 1rem;
  }
}
.thumb-button-list__category li {
  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;
  padding: 3px 1rem;
  border-radius: 9999px;
  background: #eee;
  word-break: auto-phrase;
}
@media screen and (max-width: 768px) {
  .thumb-button-list__category li {
    padding: 3px 2rem;
  }
}

.thumb-button-list__categoryuse {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 1rem;
  padding-left: 3rem;
  font-size: 1.2rem;
  line-height: 1;
  gap: 0.5rem;
}
@media screen and (max-width: 768px) {
  .thumb-button-list__categoryuse {
    font-size: 2.4rem;
    gap: 1rem;
  }
}
.thumb-button-list__categoryuse li {
  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;
  padding: 3px 1rem;
  border-radius: 9999px;
  background: #fff;
  border: 1px solid #b8b8b8;
  text-align: center;
  word-break: auto-phrase;
}
@media screen and (max-width: 768px) {
  .thumb-button-list__categoryuse li {
    padding: 3px 2rem;
  }
}

.thumb-button-list--column .thumb-button-list__item {
  width: calc(25% - 2.25rem);
}
@media screen and (max-width: 768px) {
  .thumb-button-list--column .thumb-button-list__item {
    width: 33.4rem;
  }
}

.thumb-button-list--column .thumb-button-list__item a {
  display: block;
  height: 100%;
  padding: 0 0 1.5rem 0;
}
@media screen and (max-width: 768px) {
  .thumb-button-list--column .thumb-button-list__item a {
    padding-bottom: 2rem;
  }
}
.thumb-button-list--column .thumb-button-list__item a:before {
  display: none;
}
.thumb-button-list--column .thumb-button-list__image {
  width: auto;
  margin-right: 0;
  height: 15rem;
  overflow: hidden;
}

.thumb-button-list--column .thumb-button-list__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.thumb-button-list--column .thumb-button-list__heading {
  margin-top: 1rem;
  padding: 0 1.5rem;
  font-size: 1.6rem;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .thumb-button-list--column .thumb-button-list__heading {
    margin-top: 2rem;
    padding: 0 2.4rem;
    font-size: 3rem;
    line-height: 1.6666666667;
  }
}
.thumb-button-list--column .thumb-button-list__category {
  padding: 0 1.5rem;
}
@media screen and (max-width: 768px) {
  .thumb-button-list--column .thumb-button-list__category {
    padding: 0 2.4rem;
  }
}
.thumb-button-list--column .thumb-button-list__categoryuse {
  padding: 0 1.5rem;
}
@media screen and (max-width: 768px) {
  .thumb-button-list--column .thumb-button-list__categoryuse {
    padding: 0 2.4rem;
  }
}

.thumb-index-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 3rem;
}
@media screen and (max-width: 768px) {
  .thumb-index-list {
    display: block;
    margin-top: 8rem;
  }
}
.thumb-index-list__item {
  width: calc(33.333% - 2rem);
  margin-right: 3rem;
}
@media screen and (max-width: 768px) {
  .thumb-index-list__item {
    width: 100%;
    margin: 0;
  }
}
.thumb-index-list__item:nth-of-type(3n) {
  margin-right: 0;
}
@media screen and (min-width: 769px) {
  .thumb-index-list__item:nth-of-type(n + 4) {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .thumb-index-list__item:nth-of-type(n + 2) {
    margin-top: 7rem;
  }
}
.thumb-index-list__item > a {
  display: block;
  color: #000;
  text-decoration: none;
  -webkit-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.thumb-index-list__item > a.is-on {
  opacity: 0.7;
}
.thumb-index-list__item p {
  margin-top: 0.5rem !important;
}
@media screen and (max-width: 768px) {
  .thumb-index-list__image {
    width: 54rem;
    margin: 0 auto;
  }
}
.thumb-index-list__heading {
  margin-top: 1rem;
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .thumb-index-list__heading {
    margin-top: 2.4rem;
    font-size: 4rem;
  }
}
.thumb-index-list__heading strong {
  color: #f02878;
}
.thumb-index-list__lead {
  margin-top: 0.4rem;
  font-size: 1.4rem;
  line-height: 2.1428571429;
}
@media screen and (max-width: 768px) {
  .thumb-index-list__lead {
    margin-top: 0.8rem;
    font-size: 2.8rem;
    line-height: 1.9285714286;
  }
}
.thumb-index-list__lead--center {
  text-align: center;
}
.thumb-index-list__lead + .thumb-index-list__image {
  margin-top: 1.2rem;
}
.thumb-index-list__button {
  margin-top: 1.5rem;
}
@media screen and (max-width: 768px) {
  .thumb-index-list__button {
    margin-top: 4rem;
  }
}

.timeline {
  width: 46.8rem;
}
@media screen and (max-width: 768px) {
  .timeline {
    width: 100%;
    margin-top: 8rem;
  }
}

.topic-path {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0 2rem;
  color: #000;
  font-size: 1.2rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .topic-path {
    display: none;
  }
}
.topic-path__item {
  position: relative;
}
.topic-path__item:nth-of-type(n + 2) {
  margin-left: 0.8rem;
  padding-left: 1.6rem;
}
.topic-path__item:nth-of-type(n + 2):before {
  width: 0.4rem;
  height: 0.4rem;
  position: absolute;
  top: calc(50% - 0.2rem);
  left: 0;
  content: "";
  display: block;
  border-top: solid 1px #c8c8c8;
  border-right: solid 1px #c8c8c8;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
.topic-path__item a {
  text-decoration: none;
}
.topic-path__item a.is-on {
  text-decoration: underline;
}

.topics-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .topics-box {
    display: block;
    padding: 4.2rem 3rem 3rem;
    border-width: 0.2rem;
  }
}
.topics-box__heading {
  width: 15rem;
  color: #fff;
  font-family: "Roboto", sans-serif;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .topics-box__heading {
    width: 100%;
    font-size: 3.6rem;
    text-align: left;
  }
}
.topics-box__body {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}
@media screen and (max-width: 768px) {
  .topics-box__body {
    margin-top: 2.8rem;
  }
}
.topics-box__list {
  font-size: 1.4rem;
}
.topics-box__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .topics-box__item {
    display: block;
  }
}
.topics-box__item:nth-of-type(n + 2) {
  margin-top: 0.5rem;
}
@media screen and (max-width: 768px) {
  .topics-box__item:nth-of-type(n + 2) {
    margin-top: 3rem;
  }
}
.topics-box__date {
  margin-right: 2.5rem;
  color: #adadad;
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .topics-box__date {
    font-size: 2.8rem;
    line-height: 1.7857142857;
  }
}
.topics-box__text a {
  color: #000;
  text-decoration: none;
  -webkit-transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: color 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media screen and (max-width: 768px) {
  .topics-box__text a {
    font-size: 2.8rem;
    line-height: 1.7857142857;
  }
}
.topics-box__text a.is-on {
  color: #f02878;
}

.type-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 3rem;
  padding-bottom: 2.4rem;
}
@media screen and (max-width: 768px) {
  .type-list {
    margin-top: 5rem;
    padding-bottom: 0;
  }
}
.type-list__item {
  width: 22rem;
  margin-right: calc((100% - 22rem * 4) / 3);
}
@media screen and (max-width: 768px) {
  .type-list__item {
    margin-right: calc((100% - 22rem * 3) / 2);
  }
}
@media screen and (min-width: 769px) {
  .type-list__item:nth-of-type(4n) {
    margin-right: 0;
  }
}
@media screen and (min-width: 769px) {
  .type-list__item:nth-of-type(n + 5) {
    margin-top: 2.7rem;
  }
}
@media screen and (max-width: 768px) {
  .type-list__item:nth-of-type(3n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 768px) {
  .type-list__item:nth-of-type(n + 4) {
    margin-top: 3rem;
  }
}
.type-list__image {
  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;
  height: 12.4rem;
}
.type-list__heading {
  margin-top: 1.5rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .type-list__heading {
    margin-top: 1.2rem;
    font-size: 3rem;
    line-height: 1.3;
  }
}

.vertical-table {
  width: 100%;
}
.vertical-table th,
.vertical-table td {
  padding: 1rem;
  border: solid 1px #dcdcdc;
  vertical-align: middle;
}
.vertical-table th {
  background: #fde9f1;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .vertical-table th[style="width: 15%"]:first-of-type {
    width: 25% !important;
  }
}
@media screen and (max-width: 768px) {
  .vertical-table th[style="width: 70%"] {
    width: 60% !important;
  }
}
.vertical-table td.center {
  text-align: center;
}

#voice .section__body p {
  margin-top: 0;
}

.voice__list li {
  padding: 2.4rem 3rem 3rem;
  border: solid 1px #dcdcdc;
  border-radius: 0.6rem;
  background: #fff;
}
.voice__list li:nth-of-type(n + 2) {
  margin-top: 6rem;
}
.voice__customer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 3rem;
}
@media screen and (max-width: 768px) {
  .voice__customer {
    display: block;
  }
}
.voice__customer figure {
  margin-right: 3rem;
  width: 20rem;
}
@media screen and (max-width: 768px) {
  .voice__customer figure {
    width: 100%;
  }
}
.voice__customer figure img {
  display: block;
  margin: 0 auto 1rem;
}
.voice__customer figure figcaption {
  color: #3c3c3c;
  font-weight: bold;
  text-align: center;
}
.voice__customer figure figcaption span {
  font-weight: 0;
  display: block;
}
.voice__customer--txtbox {
  width: 67rem;
  padding: 2rem;
  background: #fbf8f4;
  border-radius: 10px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .voice__customer--txtbox {
    width: 100%;
    margin-top: 1rem;
  }
}
.voice__customer--txtbox::before {
  content: "";
  position: absolute;
  top: 50%;
  left: -30px;
  margin-top: -15px;
  border: 15px solid transparent;
  border-right: 15px solid #fbf8f4;
}
@media screen and (max-width: 768px) {
  .voice__customer--txtbox::before {
    content: none;
  }
}
.voice__customer--q,
.voice__customer--a {
  text-indent: -1.5em;
  padding-left: 1.5em;
}
.voice__customer--q span,
.voice__customer--a span {
  font-weight: bold;
  color: #f02878;
  margin-right: 1rem;
  font-size: 2rem;
}
.voice__customer--q {
  color: #f02878;
}
.voice__customer--a + .voice__customer--q {
  margin-top: 1rem !important;
}
@media screen and (max-width: 768px) {
  .voice__marusin {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.voice__marusin figure {
  margin-right: 0;
  margin-left: auto;
}
.voice__marusin--txtbox {
  background: #fde9f1;
}
.voice__marusin--txtbox:before {
  content: "";
  left: 100%;
  margin-top: -15px;
  border-right: none;
  border-left: 15px solid #fde9f1;
}
@media screen and (max-width: 768px) {
  .voice__marusin--txtbox:before {
    content: none;
  }
}

.gallery-case-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .gallery-case-body {
    display: block;
  }
}
.gallery-case-body ul {
  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: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  max-width: 160px;
}
@media screen and (max-width: 768px) {
  .gallery-case-body ul {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    max-width: inherit;
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .gallery-case-body ul li {
    width: calc(20% - 10px);
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .gallery-case-body ul li {
    width: calc(26% - 10px);
  }
}
.gallery-case-body ul li img {
  display: block;
  max-width: 100%;
  margin: 0 auto;
  cursor: pointer;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  opacity: 0.7;
}
.gallery-case-body ul li:hover img,
.gallery-case-body ul li.is-btn-active img {
  opacity: 1;
}
.gallery-case-body ul li + li {
  margin-top: 10px;
}
@media screen and (max-width: 768px) {
  .gallery-case-body ul li + li {
    margin-top: 0;
    margin-left: 10px;
  }
}
.gallery-case-inner {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  margin-left: 30px;
  display: none;
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
}
@media screen and (max-width: 768px) {
  .gallery-case-inner {
    margin-left: 0;
    margin-top: 10px;
  }
}
.gallery-case-inner.is-contents-active {
  display: block;
}
.gallery-case-inner img {
  display: block;
  max-width: inherit;
  width: 100%;
  margin: 0 auto;
}
.gallery-case-inner p {
  margin-top: 1em;
}

.faq-list__a p {
  margin-top: 0;
}
.faq-list__a p + p {
  margin-top: 1rem;
}

.case-table {
  font-size: 1.6rem !important;
  margin-top: 3.5rem !important;
}
@media screen and (max-width: 768px) {
  .case-table {
    font-size: 2.8rem !important;
  }
}
.case-table th {
  border: 1px solid #dcdcdc !important;
  font-weight: bold;
}
.case-table td {
  border-width: 1px !important;
  background: #fff;
}

/* 230420 */

.topics-box__titleArea {
  background: #b0acac;
  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;
  padding: 2rem 0;
}

.topics-box__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 2rem;
}

.hero {
  position: relative;
}

.hero__overlay {
  width: 60%;
  background: rgba(255, 255, 255, 0.85);
  position: absolute;
  top: 50%;
  left: 0%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  padding: 3rem 6rem;
}

@media screen and (max-width: 768px) {
  .hero {
    padding-bottom: 0;
  }

  .hero__overlay {
    width: 100%;
    position: static;
    transform: none;
    -webkit-transform: none;
    -ms-transform: none;
    padding: 5rem 3rem;
    text-align: center;
  }
}

.hero__overlay h2 {
  font-size: 2.4rem;
  font-weight: 900;
}

@media screen and (max-width: 768px) {
  .hero__overlay h2 {
    font-size: 3.5rem;
  }
}

.hero__overlay h2 span {
  line-height: 1.2;
}

.hero__overlay h2 span.mid {
  font-size: 3.2rem;
}

.hero__overlay h2 span.big {
  font-size: 4.2rem;
  color: #f02878;
}

@media screen and (max-width: 768px) {
  .hero__overlay h2 span.mid {
    font-size: 4.5rem;
  }

  .hero__overlay h2 span.big {
    font-size: 6rem;
  }
}

.hero__overlay p {
  margin-top: 1rem;
  font-size: 2.4rem;
  font-weight: 900;
}

@media screen and (max-width: 768px) {
  .hero__overlay p {
    font-size: 3rem;
  }

  .topics-box {
    border: 1px solid #b0acac;
    padding: 0;
  }

  .section--topics {
    margin: 0 3rem;
  }

  .topics-box__body {
    margin-top: 0;
  }

  .topics-box__heading {
    text-align: center;
  }
}

.splide__arrows,
.splide__pagination {
  display: none !important;
}

.hero-btnArea__list {
  margin-top: 0;
}

.section.pt0 {
  padding-top: 0;
}
.section.pb0 {
  padding-bottom: 0;
}

@media screen and (max-width: 768px) {
  .section.pb0 {
    padding-bottom: 12rem;
  }
}

.thumb-index-list__image {
  height: 17rem;
}

@media screen and (max-width: 768px) {
  .thumb-index-list__image {
    height: 30rem;
  }
}

.thumb-index-list__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.page-header + .section {
  padding-top: 0;
}

#catalog .thumb-index-list__image,
.layout-container .type-list__image,
.layout-container .thumb-index-list__image {
  height: auto;
}

.products_flex__cont table {
  font-size: 1.6rem !important;
}
@media screen and (max-width: 768px) {
  .products_flex__cont table {
    font-size: 2.6rem !important;
  }
}

.case-related .box-list__heading {
  text-align: left;
  margin-bottom: 0.5em;
}

.case-related .box-list__image {
  width: 25rem;
}

.case-related .box-list__summary {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.case-related .box-list__button {
  margin-top: auto;
}

@media screen and (max-width: 768px) {
  .case-related .box-list__heading {
    text-align: center;
    margin-bottom: 1em;
  }

  .case-related .box-list__image {
    width: 80%;
  }

  .case-related .box-list__button {
    margin-top: 2em;
  }
}

.layout-container .section__heading {
  margin-bottom: 1em;
  line-height: 1.4;
}

/* 230605_quarity */
.quarity__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 3rem;
}

@media screen and (max-width: 768px) {
  .quarity__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.quarity__list p,
.quarity-white__item p {
  margin: 0;
}

.quarity__list.col2 .quarity__item {
  width: calc(100% / 2 - 1.5rem);
  background: #fbf8f4;
  border-radius: 8px;
  padding: 3.5rem;
}

.quarity__list.col2 .quarity__item {
  width: calc(100% / 2 - 1.5rem);
  background: #fbf8f4;
  border-radius: 8px;
  padding: 3.5rem;
}

@media screen and (max-width: 768px) {
  .quarity__list.col2 .quarity__item,
  .quarity__list.col2 .quarity__item {
    width: 100%;
  }
}

p.quarity__title {
  font-size: 2.5rem;
  text-align: center;
  margin-bottom: 2rem;
}

@media screen and (max-width: 768px) {
  p.quarity__title {
    font-size: 4rem;
  }
}

.quarity__item figure {
  text-align: center;
  margin-bottom: 1rem;
}

.quarity__item figure img {
  max-width: 100%;
  width: auto;
}

.quarity-white__item {
  background: #fff;
  border-radius: 8px;
  border: 1px solid #dcdcdc;
  padding: 3.5rem;
}

.quarity-white__item + div {
  margin-top: 3rem;
}

p.quarity-white__title {
  font-size: 2.5rem;
  margin-bottom: 2rem;
}

@media screen and (max-width: 768px) {
  p.quarity-white__title {
    font-size: 4rem;
  }
}

.quarity-white__flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

@media screen and (max-width: 768px) {
  .quarity-white__flex {
    display: block;
  }
}

.quarity-white__flex figure {
  width: 32rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin-right: 3rem;
}

@media screen and (max-width: 768px) {
  .quarity-white__flex figure {
    width: 100%;
    margin-right: 0;
  }
}

.quarity-sec__flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 3rem;
}

@media screen and (max-width: 768px) {
  .quarity-sec__flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 5rem;
  }
}

.quarity-sec__flex figure {
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.quarity-sec__flex figure img {
  max-width: 100%;
  width: auto;
}

.quarity__list a {
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}

.quarity__list a:hover {
  opacity: 0.7;
}

.border-bg:nth-of-type(even) {
  background: #fbf8f4;
}

.hero-btn-image img {
  width: 2.5rem;
}

.hero-btn a {
  -webkit-box-shadow: 0px 0px 9.4px 0.6px rgba(51, 51, 51, 0.25);
  box-shadow: 0px 0px 9.4px 0.6px rgba(51, 51, 51, 0.25);
  font-weight: bold;
  border: 2px solid #f02878;
}

.hero-btn-list {
  margin-top: 2rem;
  gap: 2rem;
}

.page-header-visual__btnWrap {
  width: 100%;
  margin-top: 2rem;
}

@media screen and (max-width: 768px) {
  .hero-btn-image img {
    width: auto;
  }

  .hero-btn-list {
    margin-top: 5rem;
  }

  .page-header-visual__btnWrap {
    width: 100%;
    margin-top: 0;
  }
}

.case-thumb-image figure {
  height: 23rem !important;
}

@media screen and (max-width: 768px) {
  .case-thumb-image figure {
    height: auto !important;
  }
}
.article-index {
  background: #fff;
}
.case-privacy_bnr a {
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}
.case-privacy_bnr a:hover {
  opacity: 0.7;
}
@media screen and (max-width: 768px) {
  .case-privacy_bnr a figure {
    width: 100%;
    height: auto !important;
  }
}

#fixed-header {
  position: absolute;
  top: -150px;
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
  background: #fff;
  width: 100%;
  max-width: 136.6rem;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  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;
  -webkit-box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.08);
  box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.08);
}

.fixed-logo {
  -webkit-box-shadow: 5px 0 5px rgba(0, 0, 0, 0.08);
  box-shadow: 5px 0 5px rgba(0, 0, 0, 0.08);
}

#fixed-header.is-show {
  position: fixed;
  top: 0;
  width: 100%;
  max-width: 136.6rem;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

#fixed-header.is-show .layout-header__top-2nd {
  margin-top: 0.5rem;
}

#fixed-header.is-show .layout-header__top-1st {
  padding: 0.5rem 3rem 0 0;
}

@media screen and (max-width: 768px) {
  #fixed-header {
    display: none;
  }

  .header-button {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 10px 0;
  }
}

.article-index.dis-none .article-index__1st-item a {
  position: relative;
}

/* .article-index.dis-none .article-index__1st-item a:before {
  position: absolute;
  content: '';
  top: 50%;
  right: -2.5rem;
  height: 0.2rem;
  width: 1rem;
  background: #F02878;
  transform: rotate(90deg);
  transition: all .3s ease-in-out;
}
.article-index.dis-none .article-index__1st-item a:after {
  position: absolute;
  content: '';
  top: 50%;
  right: -2.5rem;
  height: 0.2rem;
  width: 1rem;
  background: #F02878;
  transition: all .3s ease-in-out;
}

.article-index.dis-none .article-index__1st-item.open a:before {
  transform: rotate(180deg);
}
.article-index.dis-none .article-index__1st-item.open a:after {
  opacity: 0;
} */

.article-index.dis-none h3 span {
  font-size: 60%;
  cursor: pointer;
  text-decoration: underline;
}

.article-index.dis-none h3 span:hover {
  opacity: 0.7;
  text-decoration: none;
}

.article-index.all-none h3 span {
  font-size: 60%;
  cursor: pointer;
  text-decoration: underline;
}

.article-index.all-none h3 span:hover {
  opacity: 0.7;
  text-decoration: none;
}

.margin::before {
  content: "";
  display: block;
  height: 9rem; /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -3rem; /* heightと同じ分のネガティブマージン */
  visibility: hidden;
}

.margin + .margin::before {
  margin-top: -9rem;
}

.margin:first-of-type::before {
  margin-top: -9rem;
}

.article h2,
.article h3,
.section__heading {
  margin-top: 0;
}

.section__sub-heading {
  margin-top: 3rem;
}

#sticker .bl__common_content:not(:first-of-type) .margin::before {
  margin-top: -3rem;
}

#special .section__sub-heading {
  margin-top: 3rem;
}

.page-header-visual__box {
  background: rgba(0, 0, 0, 0.2);
}
.page-header-visual__subtitle {
  text-shadow: 0 2px 5px rgba(0, 0, 0, 0.8),
    0 -5px 20px rgba(255, 255, 255, 0.6);
  margin-top: 2rem;
  font-weight: bold;
}

.page-header-visual__subtitle ul {
  padding-left: 1em;
  text-indent: -1em;
}

.page-header-visual__subtitle ul li {
  text-decoration: underline;
}

.header_md {
  font-size: 140%;
  font-weight: bold;
  margin-bottom: 1rem;
  margin-top: 2rem;
}

.header_sm {
  font-size: 120%;
  font-weight: bold;
  margin-bottom: 1rem;
  margin-top: 2rem;
}

.box-list__body--faq p + p {
  margin-top: 2rem;
}

.topics-box__titleArea {
  position: relative;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.topics-box__titleArea .news-list__button {
  position: static;
  margin-top: 10px;
}

.topics-box__titleArea .news-list__button a {
  background: #fff;
  border: none;
  color: #b0acac;
  font-weight: bold;
}

@media screen and (max-width: 768px) {
  .topics-box__titleArea {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 3rem;
  }
  .topics-box__titleArea .news-list__button {
    margin-top: 0;
    position: absolute;
    top: 50%;
    right: 2rem;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
  }
}

/* 231220_designpage */

.thumb-button-list__company {
  padding: 0 1.5rem;
  margin-top: 0.2rem !important;
  font-size: 1.4rem;
  color: #828282;
}

.thumb-button-list.popup-thumb li a::after {
  content: "";
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: 0 0 33px 33px;
  border-color: transparent transparent #f02878 transparent;
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
  position: absolute;
  right: 0;
  bottom: 0;
}

.thumb-button-list.popup-thumb li {
  position: relative;
}

.thumb-button-list.popup-thumb li::before {
  content: "";
  position: absolute;
  right: 0.4rem;
  bottom: 1.2rem;
  width: 1.3rem;
  height: 1px;
  background-color: #fff;
  z-index: 1;
}

.thumb-button-list.popup-thumb li::after {
  content: "";
  position: absolute;
  right: 0.4rem;
  bottom: 1.2rem;
  width: 1.3rem;
  height: 1px;
  background-color: #fff;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
  z-index: 1;
}

@media screen and (max-width: 768px) {
  .thumb-button-list.popup-thumb li::before {
    content: "";
    position: absolute;
    right: 0.8rem;
    bottom: 2rem;
    width: 2.5rem;
  }

  .thumb-button-list.popup-thumb li::after {
    content: "";
    position: absolute;
    right: 0.8rem;
    bottom: 2rem;
    width: 2.5rem;
  }
}

.modal {
  display: none;
}

.modaal-noscroll {
  overflow: auto;
}

.modal-inner h2 {
  font-size: 2.4rem;
  padding-bottom: 10px;
  border-bottom: 2px #f02878 solid;
  margin-bottom: 3rem;
  font-weight: 700;
}

.modal-imageArea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 3rem;
}

@media (max-width: 500px) {
  .modal-imageArea {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    margin-bottom: 20px;
  }
}

.modal-mainImage {
  max-width: 560px;
  max-height: 330px;
  margin-left: 20px;
  -webkit-box-shadow: 0 3px 10px 0 rgb(0 0 0/10%);
  box-shadow: 0 3px 10px 0 rgb(0 0 0/10%);
}

@media (max-width: 500px) {
  .modal-mainImage {
    max-width: 100%;
    max-height: auto;
    margin-left: 0;
  }
}

.modal-mainImage img {
  width: 100%;
}

@media (max-width: 500px) {
  .modal-smallImage {
    width: calc(100% / 3);
  }
}

.modal-smallImage {
  max-width: 165px;
  height: auto;
  cursor: pointer;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  margin-bottom: 2rem;
  -webkit-box-shadow: 0 3px 10px 0 rgb(0 0 0/10%);
  box-shadow: 0 3px 10px 0 rgb(0 0 0/10%);
}

.modal-smallImage img {
  width: 100%;
}

@media (max-width: 500px) {
  .modal-imageList {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 10px;
  }

  .modal-smallImage {
    width: calc(100% / 3 - 5px);
    margin-bottom: 0;
  }

  .modal-smallImage img {
    width: 100%;
    margin-right: 0;
  }
}

.modal-imageList img:hover {
  opacity: 0.7;
}

.designer-intro {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3rem;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.designer-intro__item {
  width: calc(100% / 4 - 2.25rem);
}

@media screen and (max-width: 768px) {
  .designer-intro__item {
    width: 33.4rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.designer-intro__item__imgArea {
  width: 15rem;
  height: 15rem;
  margin: 0 auto 1rem;
}

.designer-intro__item__imgArea img {
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.designer-intro__item--thumb {
  width: 15rem;
  height: 15rem;
}

@media screen and (max-width: 768px) {
  .designer-intro__item--thumb {
    width: 30rem;
    height: 15rem;
  }
}

.designer-intro__item--thumb img {
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.designer-intro__textInner {
  text-align: center;
}

.designer-intro__textArea p {
  margin-top: 0;
  text-align: center;
}

.designer-intro__imgbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
}

.designer-intro__namebox p {
  margin-top: 0;
}

.designer-intro__namebox span {
  font-weight: bold;
  margin-top: 1rem;
  display: block;
}

.designer-intro__namebox h3 {
  font-weight: bold;
  font-size: 2.2rem;
}

@media screen and (max-width: 768px) {
  .designer-intro__namebox {
    text-align: center;
  }

  .designer-intro__namebox h3 {
    font-size: 4rem;
  }
}

.design-price-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 10rem;
}

.design-price-item {
  width: calc(100% / 3);
  border: 1px solid #dcdcdc;
  border-radius: 4px;
  padding: 2.5rem;
  text-align: center;
  position: relative;
}

@media screen and (max-width: 768px) {
  .design-price-list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 12rem;
  }

  .design-price-item {
    width: 100%;
  }
}

.design-price-item:first-of-type:before {
  content: "";
  position: absolute;
  top: 45%;
  right: -7.5rem;
  width: 5rem;
  height: 1rem;
  background-color: #c8c8c8;
}

.design-price-item:first-of-type:after {
  content: "";
  position: absolute;
  top: 45%;
  right: -7.5rem;
  width: 5rem;
  height: 1rem;
  background-color: #c8c8c8;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}

.design-price-item:nth-of-type(2):before {
  content: "";
  position: absolute;
  top: 45%;
  right: -6.5rem;
  width: 3.8rem;
  height: 2.3rem;
  background-color: #c8c8c8;
}

.design-price-item:nth-of-type(2):after {
  content: "";
  position: absolute;
  top: 41%;
  right: -8.5rem;
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: 20px 0 20px 20px;
  border-color: transparent transparent transparent #c8c8c8;
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
}

@media screen and (max-width: 768px) {
  .design-price-item:first-of-type:before {
    content: "";
    position: absolute;
    top: auto;
    bottom: -7rem;
    right: 44%;
    width: 8rem;
    height: 2rem;
    background-color: #c8c8c8;
  }

  .design-price-item:first-of-type:after {
    content: "";
    position: absolute;
    top: auto;
    bottom: -7rem;
    right: 44%;
    width: 8rem;
    height: 2rem;
  }

  .design-price-item:nth-of-type(2):before {
    content: "";
    position: absolute;
    top: auto;
    bottom: -8rem;
    right: 47%;
    width: 4rem;
    height: 6rem;
  }

  .design-price-item:nth-of-type(2):after {
    content: "";
    position: absolute;
    top: auto;
    bottom: -13rem;
    right: 47%;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 20px 0 20px 20px;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
  }
}

.design-price-item span {
  background: #f02878;
  color: #fff;
  padding: 1px 20px;
  border-radius: 50vh;
}

.design-price-list__price-big {
  font-size: 4rem;
  font-weight: bold;
}

@media screen and (max-width: 768px) {
  .design-price-list__price-big {
    font-size: 6rem;
  }
}

.design-price-list__innerList {
  margin-top: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem 0;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.design-price-list__innerList li {
  width: calc(100% / 2);
}

p.design-price-list__innerCap {
  margin-top: 1rem;
  text-align: right;
  color: #c8c8c8;
}

.design-price-list__price-mid {
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 1.6;
}

@media screen and (max-width: 768px) {
  .design-price-list__innerList {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .design-price-list__innerList li {
    width: 100%;
    font-size: 3rem;
  }
  p.design-price-list__innerCap {
    text-align: center;
  }

  .design-price-list__price-mid {
    font-size: 3.4rem;
  }
}

.design-price-list__btn .hero-btn-list {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 6rem;
}

.design-price-list__btn .hero-btn a {
  -webkit-box-shadow: none;
  box-shadow: none;
}

.design-price-list__caption span {
  font-size: 80%;
}

@media screen and (max-width: 768px) {
  #design .section__small-heading {
    font-size: 3.5rem;
  }
  .design-price-list__caption {
    text-align: center;
    margin-top: 2rem;
  }
}

.youtube {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.youtube iframe {
  width: 100%;
  height: 100%;
}

.footer-sns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (max-width: 768px) {
  .footer-sns {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

@media print {
  .button-pagetop,
  #fixed-header.is-show,
  .layout-header__top-3rd,
  .only-sp,
  .layout-header__top-2nd {
    display: none !important;
  }

  .section {
    overflow: visible;
  }

  .header-menu__item {
    margin: 0 20px;
  }
}

.news-list_w {
  width: 100%;
  padding: 80px;
}
.news-list_w .news-list__button {
  top: 80px;
  right: 80px;
}
@media screen and (max-width: 768px) {
  .news-list_w {
    padding: 50px 15px;
  }
  .news-list_w .news-list__button {
    top: 50px;
    right: 15px;
  }
}

.form-tips,
.form-tips__flex {
  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;
}

.form-tips__flex {
  gap: 10px;
  margin-left: 10px;
}

.form-tips__flex span {
  font-size: 1.4rem;
  color: #888;
}

@media screen and (max-width: 768px) {
  .form-tips__flex {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 0 10px;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }

  .form-tips__flex span {
    font-size: 2.8rem;
  }
}

.form-tips a {
  margin-left: 10px;
  background: #f02878;
  width: 2.5rem;
  height: 2rem;
  color: #fff;
  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;
  text-decoration: none;
  border-radius: 4px;
  position: relative;
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}

@media screen and (max-width: 768px) {
  .form-tips a {
    width: 5rem;
    height: 4rem;
  }
}

.form-tips a::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 7px 0 0px;
  border-color: #f02878 transparent transparent transparent;
  position: absolute;
  bottom: -4px;
  left: 53%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

.form-tips a:hover {
  -webkit-transform: scale(1.15);
  -ms-transform: scale(1.15);
  transform: scale(1.15);
}

.form-content__heading {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.icon-button-list__item a.is-current {
  pointer-events: all;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}

.icon-button-list__item a.is-current:hover {
  opacity: 0.7;
}

.hero-btn-list .button-list__item {
  width: calc(100% / 3 - 3.5rem);
  margin-right: 0;
}

@media screen and (min-width: 769px) {
  .hero-btn-list .button-list__item:nth-of-type(n + 3) {
    margin-top: 0;
  }
}

@media screen and (max-width: 769px) {
  .hero-btn-list .button-list__item {
    width: 100%;
  }

  .hero-btn-list .button-list__item:nth-of-type(n + 2) {
    margin-top: 0;
  }
}

.amazon-btn .button-list__item {
  width: 100%;
  margin-right: 0;
  position: relative;
  font-weight: bold;
  border-radius: 0.4rem;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}

.amazon-btn .button-list__item a {
  border: 2px solid #a78c4b;
  background: rgb(234, 198, 108);
  background: -o-linear-gradient(
    bottom,
    rgba(234, 198, 108, 1) 0%,
    rgba(238, 222, 183, 1) 76%
  );
  background: -webkit-gradient(
    linear,
    left bottom,
    left top,
    from(rgba(234, 198, 108, 1)),
    color-stop(76%, rgba(238, 222, 183, 1))
  );
  background: linear-gradient(
    0deg,
    rgba(234, 198, 108, 1) 0%,
    rgba(238, 222, 183, 1) 76%
  );
  color: #000;
}

.hero-btn-list .button-list__item .amazon-style {
  border: 2px solid #a78c4b;
  background: rgb(234, 198, 108);
  background: -o-linear-gradient(
    bottom,
    rgba(234, 198, 108, 1) 0%,
    rgba(238, 222, 183, 1) 76%
  );
  background: -webkit-gradient(
    linear,
    left bottom,
    left top,
    from(rgba(234, 198, 108, 1)),
    color-stop(76%, rgba(238, 222, 183, 1))
  );
  background: linear-gradient(
    0deg,
    rgba(234, 198, 108, 1) 0%,
    rgba(238, 222, 183, 1) 76%
  );
  color: #000;
}

.amazon-btn .button-list__item::before {
  content: url(/assets/img/common/cart_icon.png);
  position: absolute;
  top: 58%;
  left: 5%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  z-index: 1;
}

.box-list__item h2 > span,
#pmarks {
  margin-top: -10rem;
  padding-top: 10rem;
  display: block;
}

@-webkit-keyframes splide-loading {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  to {
    -webkit-transform: rotate(1turn);
    transform: rotate(1turn);
  }
}

@keyframes splide-loading {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  to {
    -webkit-transform: rotate(1turn);
    transform: rotate(1turn);
  }
}
.splide__track--draggable {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
.splide__track--fade > .splide__list > .splide__slide {
  margin: 0 !important;
  opacity: 0;
  z-index: 0;
}
.splide__track--fade > .splide__list > .splide__slide.is-active {
  opacity: 1;
  z-index: 1;
}
.splide--rtl {
  direction: rtl;
}
.splide__track--ttb > .splide__list {
  display: block;
}
.splide__container {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
}
.splide__list {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
}
.splide.is-initialized:not(.is-active) .splide__list {
  display: block;
}
.splide__pagination {
  -ms-flex-align: center;
  -webkit-box-align: center;
  align-items: center;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: center;
  -webkit-box-pack: center;
  justify-content: center;
  margin: 0;
  pointer-events: none;
}
.splide__pagination li {
  display: inline-block;
  line-height: 1;
  list-style-type: none;
  margin: 0;
  pointer-events: auto;
}
.splide:not(.is-overflow) .splide__pagination {
  display: none;
}
.splide__progress__bar {
  width: 0;
}
.splide {
  position: relative;
  visibility: hidden;
}
.splide.is-initialized,
.splide.is-rendered {
  visibility: visible;
}
.splide__slide {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  list-style-type: none !important;
  margin: 0;
  position: relative;
}
.splide__slide img {
  vertical-align: bottom;
}
.splide__spinner {
  -webkit-animation: splide-loading 1s linear infinite;
  animation: splide-loading 1s linear infinite;
  border: 2px solid #999;
  border-left-color: transparent;
  border-radius: 50%;
  bottom: 0;
  contain: strict;
  display: inline-block;
  height: 20px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 20px;
}
.splide__sr {
  clip: rect(0 0 0 0);
  border: 0;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
.splide__toggle.is-active .splide__toggle__play,
.splide__toggle__pause {
  display: none;
}
.splide__toggle.is-active .splide__toggle__pause {
  display: inline;
}
.splide__track {
  overflow: hidden;
  position: relative;
  z-index: 0;
}

.point-wrap {
  background: #fde9f1;
  border-radius: 0.6rem;
  padding: 2.4rem 3rem 3rem;
}
.point-wrap__span {
  color: #f02878;
  font-weight: bold;
  display: block;
  margin-bottom: 1rem;
  font-size: 130%;
}

.thumb-button-list__item.new a {
  overflow: inherit;
}
.thumb-button-list__item.new a:after {
  content: "New!";
  position: absolute;
  color: #fff;
  background: #f02878;
  border-radius: 9999px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  font-weight: bold;
  font-size: 10px;
  letter-spacing: 0;
  top: -10px;
  right: -10px;
}

/* 240823 */

.header-banner {
  margin-top: 3rem;
  padding: 0 0.7rem;
}

@media screen and (max-width: 768px) {
  .header-banner {
    margin-top: 6rem;
    padding: 0 0.7rem;
  }
}

@media screen and (max-width: 768px) {
  .header-banner__item {
    width: 41rem;
    margin: 0 auto 4rem;
  }
}

@media screen and (max-width: 768px) {
  .header-main-menu {
    margin-top: 6rem;
  }
}

@media screen and (max-width: 768px) {
  .header-sub-menu {
    margin: 0;
    padding: 6rem 3rem 0rem;
    font-size: 3rem;
  }
}

@media screen and (max-width: 768px) {
  .header-banner__heading {
    padding: 0 3rem;
    font-size: 4rem;
  }
}

.button-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 2rem;
}

/* 240924 sample-design */

.thumb-button-list.page-thumb li a::after {
  content: "";
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: 0 0 33px 33px;
  border-color: transparent transparent #f02878 transparent;
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
  position: absolute;
  right: 0;
  bottom: 0;
}

.thumb-button-list.page-thumb li {
  position: relative;
}

/* .thumb-button-list.popup-thumb li::before {
  content: '';
  position: absolute;
  right: 0.4rem;
  bottom: 1.2rem;
  width: 1.3rem;
  height: 1px;
  background-color: #fff;
  z-index: 1;
} */

.thumb-button-list.page-thumb li::after {
  content: "";
  position: absolute;
  right: 0.8rem;
  bottom: 0.8rem;
  width: 0.8rem;
  height: 0.8rem;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  box-sizing: border-box;
  z-index: 1;
}

@media screen and (max-width: 768px) {
  .thumb-button-list.page-thumb li a::after {
    content: "";
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 0 0 7vw 7vw;
    border-color: transparent transparent #f02878 transparent;
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
    position: absolute;
    right: 0;
    bottom: 0;
  }

  .thumb-button-list.page-thumb li::before {
    content: "";
    position: absolute;
    right: 0.8rem;
    bottom: 2rem;
    width: 2.5rem;
  }

  .thumb-button-list.page-thumb li::after {
    content: "";
    position: absolute;
    right: 0.8rem;
    bottom: 2rem;
    width: 2.5rem;
  }
}

/* 240925 TOP about */

.top-about .thumb-index-list {
  display: flex;
  flex-wrap: wrap;
  margin-top: 3rem;
  gap: 6rem;
}

.top-about .thumb-index-list__item {
  width: calc((100% - 6rem) / 2);
  margin-right: 0rem;
}
.top-about .thumb-index-list__item * {
  max-width: 434px;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 768px) {
  .top-about .thumb-index-list__item {
    width: 100%;
    margin-right: 0rem;
  }
}

.top-about .thumb-index-list__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  max-width: 300px;
}

.top-about .thumb-index-list__image {
  height: auto;
  text-align: center;
}

@media screen and (min-width: 769px) {
  .top-about .thumb-index-list__item:nth-of-type(n + 4) {
    margin-top: 0rem;
  }
}

@media screen and (max-width: 768px) {
  .thumb-index-list__button__dl {
    margin-top: 4rem;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }
}

.dl-text-link {
  display: flex;
  margin-top: 1rem;
}
@media screen and (max-width: 768px) {
  .dl-text-link {
    flex-direction: column;
    margin-top: 1em;
    gap: 1rem;
  }
}
.dl-text-link .dl-text-link-tag {
  background: #f02878;
  width: 18rem;
  padding: 0rem 2rem;
  margin-right: 1rem;
  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;
  text-decoration: none;
  color: #fff;
  border-radius: 0.4rem;
  -webkit-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  -o-transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .dl-text-link .dl-text-link-tag {
    width: 30rem;
  }
}
.dl-text-link p {
  margin-top: 0;
}

.bcs-columns {
  display: flex;
  justify-content: flex-end;
  max-width: inherit;
  gap: 10px;
}
@media screen and (max-width: 768px) {
  .bcs-columns {
    flex-direction: column;
  }
}
@media screen and (min-width: 769px) {
  .bcs-columns a {
    max-width: 28rem;
  }
}

.cslinkbnr {
  background: #000;
}
.cslinkbnr a {
  display: block;
  width: 100%;
  background-size: cover !important;
  padding: 40px 30px;
  transition: 0.3s;
  position: relative;
  font-size: 24px;
  font-weight: bold;
  color: #fff;
  margin-top: 2rem;
  text-decoration: none;
  text-shadow: 0 5px 12px rgba(0, 0, 0, 0.7),
    0 -5px 20px rgba(255, 255, 255, 0.4);
  border: 1px solid #fff;
}
.cslinkbnr a:hover {
  opacity: 0.7;
  border: 1px solid #f02878;
}
.cslinkbnr a:before,
.cslinkbnr a:after {
  content: "";
  background: #f02878;
  width: 30px;
  height: 5px;
  position: absolute;
  right: 15px;
}
.cslinkbnr a:before {
  transform: rotate(45deg);
  top: calc(50% - 12px);
}
.cslinkbnr a:after {
  transform: rotate(-45deg);
  bottom: calc(50% - 12px);
}
@media all and (max-width: 768px) {
  .cslinkbnr {
    background: none;
  }
  .cslinkbnr a {
    padding: 20px;
    font-size: 18px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
  }
  .cslinkbnr a:before,
  .cslinkbnr a:after {
    background: none;
    width: 10px;
    height: 10px;
    position: static;
    border-top: 2px solid #f02878;
    border-right: 2px solid #f02878;
  }
  .cslinkbnr a:before {
    display: none;
  }
  .cslinkbnr a:after {
    transform: rotate(45deg);
  }
}

/* 241106 top改修 */

.hero__overlay h2 {
  font-size: 2rem;
  font-weight: 900;
}

@media screen and (max-width: 768px) {
  .hero__overlay h2 {
    font-size: 3.5rem;
  }
}

.hero__overlay p {
  margin-top: 1rem;
  font-size: 2rem;
  font-weight: 900;
}

@media screen and (max-width: 768px) {
  .hero__overlay p {
    font-size: 3rem;
  }
}

.course_seal__link {
  margin-top: 8rem;
}

.top-customer-voice {
  padding-top: 0;
}
.top-customer-voice h2 {
  margin-bottom: 6rem;
}
.top-customer-voice .voice__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 2rem;
  margin-bottom: 7rem;
}
@media screen and (max-width: 768px) {
  .top-customer-voice .voice__list {
    gap: 4rem;
  }
}
.top-customer-voice .voice__list li {
  width: 48%;
  padding: 0;
  border: none;
  border-radius: 0.6rem;
  background: #fff;
}
@media screen and (max-width: 768px) {
  .top-customer-voice .voice__list li {
    width: 100%;
  }
}
.top-customer-voice .voice__list li:first-of-type .voice__customer--txtbox {
  min-height: 34rem;
  margin-bottom: 2rem;
}
.top-customer-voice .voice__list li:nth-of-type(2) .voice__customer--txtbox {
  min-height: 34rem;
  margin-bottom: 2rem;
}
.top-customer-voice .voice__customer {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  align-items: center;
  margin-bottom: 0rem;
}
.top-customer-voice .voice__customer figure {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  margin: 0;
  gap: 2rem;
  padding-left: 2rem;
}
.top-customer-voice .voice__customer figure img {
  margin: 0;
  display: block;
}
.top-customer-voice .voice__customer figure figcaption {
  text-align: left;
  font-weight: bold;
  font-size: 2.4rem;
  font-weight: bold;
  display: block;
  color: #333;
}
@media screen and (max-width: 768px) {
  .top-customer-voice .voice__customer figure figcaption {
    font-size: 3.4rem;
  }
}
.top-customer-voice .voice__customer figure figcaption span {
  font-size: 1.6rem;
  font-weight: bold;
  display: block;
  color: #888;
}
@media screen and (max-width: 768px) {
  .top-customer-voice .voice__customer figure figcaption span {
    font-size: 2.6rem;
  }
}
.top-customer-voice .voice__customer--txtbox {
  width: 100%;
  padding: 2rem;
  background: #fbf8f4;
  border-radius: 10px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .top-customer-voice .voice__customer--txtbox {
    padding: 3rem;
  }
}
.top-customer-voice .voice__customer--q {
  color: #f02878;
}
.top-customer-voice .voice__customer--q,
.top-customer-voice .voice__customer--a {
  text-indent: -1.5em;
  padding-left: 1.5em;
  margin-top: 0;
  line-height: 1.5;
  font-feature-settings: "palt";
}

.top-customer-voice .voice__list li:nth-of-type(n + 2) {
  margin-top: 0rem;
}
.top-customer-voice .voice__customer--txtbox::before {
  content: "";
  position: absolute;
  top: 0%;
  left: 40px;
  margin-top: -28px;
  border: 15px solid transparent;
  border-right: 15px solid #fbf8f4;
  transform: rotate(90deg);
}

.voice_star {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  color: #796040;
  gap: 10px;
  margin-bottom: 1rem;
  line-height: 1;
}
@media all and (max-width: 768px) {
  .voice_star {
    margin-bottom: 2rem;
  }
  #voice .voice_star {
    margin-top: 1rem;
    margin-bottom: 2rem;
  }
}
.voice_star span {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  font-weight: bold;
  color: #efa500;
  gap: 3px;
  font-size: 24px;
  margin-top: -2px;
}
.voice_star,
.voice_star span b {
  font-size: 14px;
}
.voice_star span b {
  display: inline-block;
  margin-left: 3px;
  padding-top: 3px;
}

.shape_buttons {
  background: #fde9f1;
  padding: 5rem 3.6rem;
  margin-bottom: 5rem;
}

.shape_buttons h2 {
  text-align: center;
  font-size: 3.2rem;
  color: #f02878;
  font-weight: bold;
}
.shape_buttons_text {
  text-align: center;
  font-size: 2rem;
  font-weight: bold;
}

ul.shape_buttons_list {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 9px;
  margin-top: 30px;
}
@media all and (max-width: 768px) {
  ul.shape_buttons_list {
    grid-template-columns: repeat(2, 1fr);
  }
}

ul.shape_buttons_list li {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  gap: 0;
}

.shape_buttons_list_item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  gap: 20px;
  text-align: center;
  background: #fff;
  padding: 20px;
  border-radius: 4px;
  border: 2px solid #c8c8c8;
  text-decoration: none;
}

@media all and (max-width: 768px) {
  .shape_buttons_list_item {
    padding: 15px;
  }
  .shape_buttons h2 {
    font-size: 4rem;
  }
  .shape_buttons_text {
    font-size: 2.6rem;
  }
  .shape_buttons_list_item_text span {
    font-size: 3rem;
  }
}

.shape_buttons_list_item_img {
  display: flex;
  align-items: center;
  justify-content: center;
}

.shape_buttons_list_item_text {
  text-align: center;
  justify-content: center;
  align-items: center;
  display: flex;
  font-size: 12px;
  flex-flow: column;
  color: #000;
  line-height: 1.4;
}

.shape_buttons_list_item_text span {
  font-size: 16px;
  font-weight: bold;
}

.shape_buttons_list_item:hover {
  border: 3px solid #f02878;
  margin: -1px;
}
.shape_buttons_list_item:hover .shape_buttons_list_item_img {
  filter: brightness(0) saturate(100%) invert(28%) sepia(72%) saturate(4287%)
    hue-rotate(321deg) brightness(97%) contrast(94%);
}

.home_flow.section {
}
.home_flow h2,
.home_flow h3 {
  text-align: center;
}
.home_flow-head {
  margin-top: 6rem;
  padding: 1.5rem 2rem;
  background: #fde9f1;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1;
  text-align: center;
}
@media all and (max-width: 768px) {
  .home_flow-head {
    margin-top: 10rem;
    padding: 1.8rem 3rem;
    font-size: 3.6rem;
    line-height: 1.3;
  }
}

.home_flow-cont {
  margin-top: 30px;
}
.order__flow--list {
  display: grid;
  gap: 30px;
  grid-template-columns: repeat(6, 1fr);
}
@media all and (max-width: 768px) {
  .order__flow--list {
    grid-template-columns: repeat(1, 1fr);
  }
}

.order__flow--list li {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  gap: 0;
  position: relative;
}
.order__flow--list--item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  gap: 0;
  border: 1px solid #dcdcdc;
  background: #f4f4f4;
  border-radius: 10px;
  overflow: hidden;
}
.order__flow--list li a {
  text-decoration: none;
}
.order__flow--list li a:hover:before {
  content: "";
  border: 3px solid #f02878;
  display: block;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  position: absolute;
  left: 0;
  top: 0;
  border-radius: 10px;
}
@media all and (max-width: 768px) {
  .order__flow--list--item {
    display: flex;
    align-items: center;
  }
  .order__flow--list--item--img {
    width: 30%;
  }
}

.order__flow--list--item--text {
  padding: 20px 10px;
  font-size: 14px;
  color: rgb(17, 17, 17);
  line-height: 1.533;
  min-height: 100px;
  text-align: center;
}
@media all and (max-width: 768px) {
  .order__flow--list--item--text {
    width: 70%;
    padding: 10px 20px;
    min-height: auto;
  }
}

.order__flow--list--item--text p {
  letter-spacing: 0;
}
.order__flow--list--item--text a,
.order__flow--list--item--text strong {
  color: #f63c9f;
  font-size: 15px;
  text-decoration: none;
}
.order__flow--list--item--text strong {
  display: block;
  margin-bottom: 10px;
}
@media all and (max-width: 768px) {
  .order__flow--list--item--text p {
    text-align: left;
  }
  .order__flow--list--item--text p br {
    display: none;
  }
  .order__flow--list--item--text strong {
    margin-bottom: 5px;
  }
}

.order__flow--list li:after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 15px solid transparent;
  border-bottom: 15px solid transparent;
  border-left: 14px solid #c8c8c8;
  border-right: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: calc(100% + 10px);
}
@media all and (max-width: 768px) {
  .order__flow--list li:after {
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 15px solid transparent;
    border-left: 15px solid transparent;
    border-top: 14px solid #c8c8c8;
    border-bottom: 0;
    top: calc(100% + 10px);
    left: 50%;
    transform: translateX(-50%);
  }
}

.order__flow--list li:last-child:after {
  display: none;
}
@media all and (max-width: 768px) {
}

.movie-list {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  align-items: flex-start;
}
.movie-list__item {
  width: calc((100% - 20px) / 2);
}
.movie-list__item.youtube iframe {
  aspect-ratio: 16/9;
  width: 100%;
  height: 100%;
}

.movie-list__item.youtubeshort iframe {
  aspect-ratio: 9/16;
  width: 100%;
  height: 100%;
}

@media all and (max-width: 768px) {
  .movie-list__item {
    width: 100%;
  }
}

.show-more-button,
.close-items-button {
  width: 28rem;
  margin: 2.5rem auto 0 auto;
}

.show-more-button:hover,
.close-items-button:hover {
  background-color: #3c3c3c;
}

.thumb-button-list__item.hidden,
.show-more-button.hidden,
.close-items-button.hidden {
  display: none;
}

.outline_base_list {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
}
.outline_base_list li {
  width: calc((100% - 40px) / 2);
}

.outline_base_list-item {
  display: flex;
  gap: 15px;
}

.outline_base_list-item-img {
  width: 32%;
}
.outline_base_list-item-textbox {
  width: calc(100% - 32% - 15px);
}
.outline_base_list-item-title {
  margin-bottom: 10px;
  display: flex;
  justify-content: space-between;
}
.outline_base_list-item-title span {
  font-size: 18px;
  color: rgb(1, 1, 1);
  font-weight: bold;
  line-height: 1.2;
}
.outline_base_list-item-conts {
  font-size: 14px;
  color: rgb(1, 1, 1);
  line-height: 1.571;
}
.outline_base_list-item-btn a {
  background: #fff;
  border-radius: 9999px;
  border: 1px solid #cdcdcd;
  padding: 2px 9px;
  transition: 0.3s;
  text-decoration: none;
  display: flex;
  justify-content: center;
  align-content: center;
}
.outline_base_list-item-btn a:hover {
  text-decoration: none;
  opacity: 0.8;
}
.outline_base_list-item-btn a span.map {
  line-height: 1;
  color: rgb(1, 1, 1);
  font-size: 13px;
  font-weight: 400;
  display: flex;
  justify-content: center;
  align-content: center;
}

.outline_base_list-item-btn a span.map:before {
  content: "";
  display: inline-block;
  background-image: url(/assets/img/common/map.svg);
  background-repeat: no-repeat;
  background-size: contain;
  width: 10px;
  height: 13px;
  margin-right: 5px;
}

@media all and (max-width: 768px) {
  .outline_base_list li {
    width: 100%;
  }
}

.case-button-tab {
  display: flex;
  gap: 3px;
}
.case-button-tab li {
  width: calc((100% - 3px * 2) / 3);
  text-align: center;
  border: 1px solid #dcdcdc;
  background: #efefef;
  color: #555555;
  font-weight: bold;
  font-size: 18px;
  line-height: 1.2;
  border-radius: 5px 5px 0 0;
  border-bottom: none;
  overflow: hidden;
}
.case-button-tab li a {
  padding: 18px;
  text-decoration: none;
  color: #555555;
  display: block;
}

.case-button-tab li.current {
  background: #fff;
  margin-bottom: -1px;
  position: relative;
}
.case-button-tab li.current a {
  color: #f02878;
}
.case-button-tab li.current:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 4px;
  top: 0;
  left: 0;
  background: #f02878;
}
.case-button-list {
  border-top: 1px solid #dcdcdc;
  border-left: 1px solid #dcdcdc;
  border-right: 1px solid #dcdcdc;
  border-bottom: 1px solid #dcdcdc;
  padding: 30px;
  gap: 15px;
  flex-wrap: wrap;
  display: none;
}
.case-button-list.current {
  display: flex;
}
.case-button-list li {
  width: calc((100% - 15px * 3) / 4);
}
li.case-button-list__item a {
  text-align: center;
  width: 100%;
  display: flex;
  background: #fde9f1;
  text-decoration: none;
  color: #000000;
  padding: 14px 25px;
  height: 100%;
  border-radius: 9999px;
  align-items: center;
  justify-content: center;
  word-break: auto-phrase;
  line-height: 1.2;
}

li.case-button-list__item a.is-active {
  color: #fff;
  background: #f02878;
}

@media all and (max-width: 768px) {
  .case-button-tab li a {
    font-size: 15px;
    padding: 16px 10px 10px;
  }
  .case-button-list {
    padding: 20px 10px;
    gap: 10px;
  }
  .case-button-list li {
    width: calc((100% - 10px) / 2);
  }
  li.case-button-list__item a {
    padding: 11px 16px;
  }
}

/* 2024.12.19 */
p.delivery__txt.indent {
  padding-left: 1.6em;
  text-indent: -1.6em;
}
.delivery__list li {
  text-indent: -2rem;
}
.delivery__list {
  padding-left: 4.5rem;
}

.products_information table {
  border: 1px solid #dcdcdc;
}
.products_information table .float-right {
  float: right;
  width: 250px;
  text-align: center;
  margin-left: 25px;
}
.products_information table td p + p {
  margin-top: 2rem;
}
@media all and (max-width: 768px) {
  .products_information table .float-right {
    width: 100%;
    margin: 0 auto;
  }
}

.button-container-inlineblock {
  display: inline-block;
}
.point-link {
  padding-left: 18px;
  text-indent: -18px;
  font-size: 16px;
  display: inline-block;
  color: #f02878;
  line-height: 1.4;
  font-weight: 500;
}
.point-link::before {
  content: "";
  width: 7px;
  height: 7px;
  display: inline-block;
  border-top: solid 1px #f02878;
  border-right: solid 1px #f02878;
  transform: rotate(45deg);
  margin-right: 8px;
  margin-top: -2px;
  vertical-align: middle;
}

@media all and (max-width: 768px) {
  .point-link {
    font-size: 14px;
  }
}

.support-flex {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  margin-bottom: 60px;
}

.support-img {
  width: 30%;
}

.support-text {
  width: calc(100% - 30px - 30%);
}

.support-text h2 {
  font-weight: bold;
  font-size: 2.8rem;
  font-feature-settings: "palt";
  margin-bottom: 3rem;
}

.support-text h2 strong {
  color: #f02878;
  font-size: 2rem;
}
@media all and (max-width: 768px) {
  .support-img {
    width: 100%;
  }
  .support-text {
    width: 100%;
  }
  .support-text h2 {
    font-size: 3.6rem;
  }
  .support-text h2 strong {
    font-size: 3rem;
  }
}

.hero__results {
  display: flex;
  gap: 14px;
  margin-top: 1rem;
  flex-wrap: wrap;
}

.hero__results-item {
  display: flex;
  align-items: center;
  justify-content: center;
}

.hero__results-item::before,
.hero__results-item::after {
  content: "";
  display: inline-block;
  width: 35px;
  height: 100%;
}
.hero__results-item::before {
  background: url(/assets/img/home/hero_results-left.png) no-repeat center;
}
.hero__results-item::after {
  background: url(/assets/img/home/hero_results-right.png) no-repeat center;
}

.hero__results-item-inner {
  text-align: center;
}

.hero__overlay .hero__results-text {
  font-size: 13px;
  margin: 0;
  font-weight: 500;
  color: #333333;
}

.hero__overlay .hero__results-grad {
  font-size: 14px;
  margin: 0;
  font-weight: 900;
  line-height: 1;
  background: linear-gradient(
    0deg,
    rgba(153, 107, 37, 0.99608) 0%,
    rgb(152, 94, 29) 37%,
    rgb(203, 173, 94) 69%,
    rgb(176, 134, 63) 100%
  );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: #98601e;
}
.hero__overlay .hero__results-grad span {
  font-size: 30px;
  font-family: "futura-pt-bold", sans-serif;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .hero__results {
    justify-content: center;
  }
}

.index_product_object-flex {
  display: flex;
  gap: 30px;
  justify-content: space-between;
  margin-top: 6.5rem !important;
  flex-wrap: wrap;
}
.index_product_object-textbox {
  width: 23%;
  max-width: 218px;
}
.index_product_object-listbox {
  width: calc(100% - 218px - 30px);
}
.index_product_object-textbox h4 {
  font-size: 2.4rem;
  font-weight: bold;
}
.index_product_object-textbox h4 span {
  font-size: 2.8rem;
  color: #f02878;
}
.index_product_object-listbox > ul {
  display: flex;
  flex-wrap: wrap;
  gap: 28px;
}
.index_product_object-listbox > ul > li {
  width: calc((100% - 28px * 2) / 3);
}
.index_product_object-listitem--img {
  width: 100%;
  height: 124px; /* ← ここを追加 */
  overflow: hidden;
}

.index_product_object-listitem--img img {
  display: block;
  width: 100%;
  height: 124px;
  object-fit: cover;
  object-position: center;
  -webkit-object-fit: cover;
  -webkit-object-position: center;
}

.index_product_object-listitem {
  overflow: hidden;
  display: flex;
  flex-flow: column;
  border-radius: 4px;
  border: 1px solid #dcdcdc;
  text-decoration: none;
  color: #000;
  height: 100%;
  transition: 0.3s;
}
a.index_product_object-listitem:hover {
  opacity: 0.8;
  border: 1px solid #f02878;
}

.index_product_object-listitem--text {
  padding: 15px;
  margin-bottom: 0;
}
.index_product_object-listitem--text h5 {
  font-weight: bold;
  font-size: 1.6rem;
}
.index_product_object-listitem--text p {
  margin-top: 10px;
}
.index_product_object-listitem .product-list__hashtag {
  margin-top: auto;
  padding: 0 15px 15px;
  gap: 5px;
}

.index_product_object-listitem .product-list__hashtag li {
  color: #f02878;
  font-weight: 500;
  font-size: 1.4rem;
  margin: 0;
}

@media screen and (max-width: 768px) {
  .index_product_object-flex {
    margin-top: 10rem !important;
  }
  .index_product_object-textbox {
    width: 100%;
    max-width: none;
  }
  .index_product_object-listbox {
    width: 100%;
  }
  .index_product_object-textbox h4 {
    font-size: 3.6rem;
  }

  .index_product_object-textbox h4 span {
    font-size: 4rem;
  }
  .index_product_object-listbox > ul {
    gap: 15px;
  }

  .index_product_object-listbox > ul > li {
    width: calc((100% - 15px) / 2);
  }
  .index_product_object-listitem--text {
    padding: 10px;
  }
  .index_product_object-listitem--text h5 {
    font-size: 3rem;
  }
  .index_product_object-listitem .product-list__hashtag {
    padding: 0 10px 10px;
  }
  .index_product_object-listitem .product-list__hashtag li {
    font-size: 2.2rem;
  }
}
/* 250519 ユポシール動画 */
.movie-list__item.movie-list__item_col2 video {
  width: 100%;
  max-width: 430px;
}
.ytube {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: calc(56.3% + 2px);
  margin: 1em 0 2em 0;
}

.ytube iframe {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border: thin solid #333;
  box-sizing: border-box;
}
.box-list.case-related .box-list__button {
  width: auto;
  display: inline-block;
  min-width: 28rem;
  margin: 0 auto 0 0;
}
.box-list.case-related .button {
  height: auto;
  padding: 5px 20px;
  margin-top: 10px;
  width: auto;
  min-height: 50px;
}

@media screen and (min-width: 769px) {
  .box-list.case-related .button {
    min-width: 0;
  }
}

.products_flex__cont .products_information table {
  border: none;
  display: block;
  border-top: 1px solid #dcdcdc;
}
.products_flex__cont .products_information table colgroup col {
  width: 100%;
}
.products_flex__cont .products_information table tr {
  border-bottom: 1px solid #dcdcdc;
  transition: all 0.5s;
}

.products_flex__cont:not(.is-open)
  .products_information
  table
  tr:nth-child(n + 4),
.products_flex__cont:not(.is-open)
  .products_information
  table
  tr:nth-child(n + 4)
  th,
.products_flex__cont:not(.is-open)
  .products_information
  table
  tr:nth-child(n + 4)
  td,
.products_flex__cont:not(.is-open)
  .products_information
  table
  tr:nth-child(n + 4)
  th.is-open,
.products_flex__cont:not(.is-open)
  .products_information
  table
  tr:nth-child(n + 4)
  th.is-open
  + td,
.products_flex__cont:not(.is-open)
  .products_information
  table
  tr:nth-child(n + 4)
  * {
  visibility: hidden;
  height: 0;
  opacity: 0;
  padding: 0;
  border-bottom: 0px solid #dcdcdc;
  margin: 0;
}

.products_flex__cont .products_information table th,
.products_flex__cont .products_information table td {
  display: block;
  border: none;
  background: none;
  text-align: left;
}
.products_flex__cont .products_information table th {
  font-size: 18px;
  padding: 20px 0;
  position: relative;
  font-weight: bold;
  cursor: pointer;
}
.products_flex__cont .products_information table th br {
  display: none;
}
.products_flex__cont .products_information table th:before {
  position: absolute;
  content: "";
  top: 50%;
  right: 18px;
  width: 20px;
  height: 2px;
  margin-top: -1px;
  background: #f02878;
  transition: all 0.5s;
}
.products_flex__cont .products_information table th:after {
  position: absolute;
  content: "";
  top: 50%;
  right: 18px;
  width: 20px;
  height: 2px;
  margin-top: -1px;
  background: #f02878;
  transition: all 0.3s;
  transform: rotate(-90deg);
  transition: all 0.5s;
}
.products_flex__cont .products_information table th.is-open:after {
  transform: rotate(0);
}

.products_flex__cont .products_information table td {
  height: 0;
  opacity: 0;
  visibility: hidden;
  padding: 0;
  transition: all 0.3s;
}
.products_flex__cont .products_information table td .float-right {
  height: 0;
}

.products_flex__cont .products_information table th.is-open + td {
  padding: 0 0 20px;
  height: auto;
  opacity: 1;
  visibility: visible;
}
.products_flex__cont .products_information table th.is-open + td .float-right {
  height: auto;
}
.products_flex__cont-more-btn {
  margin: 100px auto 0;
  display: flex;
  border: none;
  background: none;
  cursor: pointer;
  font-size: 18px;
  font-weight: bold;
  gap: 8px;
  align-items: center;
  position: relative;
}
.products_flex__cont-more-btn::before {
  content: "";
  position: absolute;
  width: 6px;
  height: 54px;
  left: 50%;
  top: -70px;
  transform: translateX(-50%);
  background-image: radial-gradient(circle, #000000 3px, transparent 3px);
  background-position: left top;
  background-repeat: repeat-y;
  background-size: 6px 18px;
}

.products_flex__cont-more-btn .btnText {
  border-bottom: 1px solid;
  padding: 2px 0;
}
.products_flex__cont-more-btn .btnicon {
  background: #f02878;
  width: 34px;
  height: 34px;
  border-radius: 100%;
  position: relative;
}
.products_flex__cont-more-btn:hover {
  opacity: 0.8;
}
.products_flex__cont-more-btn .btnicon:before {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  width: 16px;
  height: 2px;
  background: #fff;
  transform: translate(-50%, -50%);
  transition: all 0.5s;
}
.products_flex__cont-more-btn .btnicon:after {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  width: 16px;
  height: 2px;
  background: #fff;
  transition: all 0.3s;
  transform: translate(-50%, -50%) rotate(-90deg);
  transition: all 0.5s;
}
.products_flex__cont.is-open .products_flex__cont-more-btn {
  margin: 40px auto 0;
}
.products_flex__cont.is-open .products_flex__cont-more-btn::before {
  content: none;
}
.products_flex__cont.is-open .products_flex__cont-more-btn .btnicon:after {
  transform: translate(-50%, -50%);
}

@media screen and (max-width: 768px) {
  .products_flex__cont .products_information table th {
    font-size: 15px;
  }
  .products_flex__cont .products_information table th:before {
    right: 10px;
    width: 18px;
  }
  .products_flex__cont .products_information table th:after {
    right: 10px;
    width: 18px;
  }
  .products_flex__cont-more-btn {
    margin: 20px auto;
  }
  .products_flex__cont-more-btn .btnText {
    font-size: 16px;
  }
  .products_flex__cont-more-btn .btnicon {
    width: 28px;
    height: 28px;
  }
  .products_flex__cont-more-btn .btnicon:before {
    width: 14px;
  }
  .products_flex__cont-more-btn .btnicon:after {
    width: 14px;
  }
  .products_flex__cont-more-btn::before {
    content: none;
  }
}

.cost-comparison-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}

.cost-comparison-list__item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
  gap: 0;
  border: 1px solid #dcdcdc;
  border-radius: 4px;
  padding: 30px;
}

.cost-comparison-list__img {
  display: flex;
  justify-content: center;
  align-items: end;
}

.cost-comparison-list__ttl {
  text-align: center;
  font-weight: bold;
  margin: 10px 0;
}

.cost-comparison-list__ttl span {
  font-size: 24px;
}

.cost-comparison-arrow {
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 75px solid transparent;
  border-left: 75px solid transparent;
  border-top: 38px solid #f02878;
  border-bottom: 0;
  margin: 34px auto;
}
.large_lot-case-list {
  display: flex;
  flex-wrap: wrap;
  gap: 28px;
}
.large_lot-case-list > li {
  width: calc((100% - 28px * 2) / 3);
}
.large_lot-case-listitem--img {
  width: 100%;
  height: 175px; /* ← ここを追加 */
  overflow: hidden;
}
.large_lot-case-listitem--img img {
  min-width: 100%;
  height: 175px; /* ← ここを追加 */
  object-fit: cover;
}
.large_lot-case-listitem--text {
  padding: 24px 18px 32px;
  margin-bottom: 0;
}
.large_lot-case-listitem {
  overflow: hidden;
  display: flex;
  flex-flow: column;
  border-radius: 4px;
  border: 1px solid #dcdcdc;
  text-decoration: none;
  color: #000;
  height: 100%;
  transition: 0.3s;
  background: #fff;
}
a.large_lot-case-listitem:hover {
  opacity: 0.8;
  border: 1px solid #f02878;
}
.large_lot-case-listitem--text h3 {
  font-weight: bold;
  font-size: 18px;
  line-height: 1.6;
  margin-bottom: 18px;
}

.large_lot-case-listitem--text dl {
  display: flex;
  gap: 10px;
  margin-top: 6px;
  align-items: flex-start;
}

.large_lot-case-listitem--text dl dt {
  background: #eeeeee;
  width: 82px;
  text-align: center;
  border-radius: 9999px;
  line-height: 1;
  padding: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 15px;
}

.large_lot-case-listitem--text dl dd {
  width: calc(100% - 82px - 10px);
}

.top-about .thumb-index-list__item .thumb-index-list__button {
  margin: 10px auto 20px;
  max-width: 240px;
}

@media screen and (max-width: 768px) {
  .cost-comparison-list {
    grid-template-columns: repeat(1, 1fr);
  }

  .cost-comparison-list__item {
    padding: 30px 15px;
  }
  .large_lot-case-list > li {
    width: 100%;
  }
}

.section__body_flex {
  display: flex;
  flex-wrap: wrap;
  gap: 26px;
  align-items: flex-start;
}

.section__body_flex__image {
  width: 47.4%;
  max-width: 458px;
  border: 1px solid #dcdcdc;
  border-radius: 5px;
  overflow: hidden;
  text-align: center;
}
.section__body_flex__txt {
  width: calc(100% - 47.4% - 26px);
}
.section__body_flex__txt p {
  margin-top: 0;
}

.section__body:has(.section__body_flex)
  + .section__body:has(.section__body_flex) {
  margin-top: 18px;
}

@media screen and (max-width: 768px) {
  .section__body_flex__image {
    width: 100%;
  }
  .section__body_flex__txt {
    width: 100%;
  }
}
