@charset "UTF-8";
@import "https://cdn.jsdelivr.net/npm/yakuhanjp@3.4.1/dist/css/yakuhanjp-noto.min.css";
@import "https://fonts.googleapis.com/css2?family=Lato:wght@700&family=Noto+Sans+JP:wght@300;400;500;700&display=swap";

*,
:before,
:after {
  box-sizing: border-box;
}

body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

ul[role="list"],
ol[role="list"] {
  list-style: none;
}

body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

a:not([class]) {
  text-decoration-skip-ink: auto;
}

img,
picture {
  max-width: 100%;
  display: inline-block;
}

input,
button,
textarea,
select {
  font: inherit;
}

@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }

  *,
  :before,
  :after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

.font-en {
  font-family: Lato, Noto Sans JP, Hiragino Kaku Gothic ProN, Hiragino Sans, Meiryo, sans-serif;
}

@keyframes SHIP_YURA {
  0% {
    transform: rotate(0deg) translate(0, 0);
  }

  25% {
    transform: rotate(-10deg) translate(0, -3px);
  }

  50% {
    transform: rotate(0deg) translate(0, 0);
  }

  75% {
    transform: rotate(0deg) translate(0, 0);
  }

  100% {
    transform: rotate(0deg) translate(0, 0);
  }
}

.ps {
  overflow: hidden !important;
  overflow-anchor: none;
  -ms-overflow-style: none;
  touch-action: auto;
  -ms-touch-action: auto;
}

.ps__rail-x {
  display: none;
  opacity: 0;
  transition: background-color 0.2s linear, opacity 0.2s linear;
  -webkit-transition: background-color 0.2s linear, opacity 0.2s linear;
  height: 15px;
  bottom: 0;
  position: absolute;
}

.ps__rail-y {
  display: none;
  opacity: 0;
  transition: background-color 0.2s linear, opacity 0.2s linear;
  -webkit-transition: background-color 0.2s linear, opacity 0.2s linear;
  width: 15px;
  right: 0;
  position: absolute;
}

.ps--active-x > .ps__rail-x,
.ps--active-y > .ps__rail-y {
  display: block;
  background-color: transparent;
}

.ps:hover > .ps__rail-x,
.ps:hover > .ps__rail-y,
.ps--focus > .ps__rail-x,
.ps--focus > .ps__rail-y,
.ps--scrolling-x > .ps__rail-x,
.ps--scrolling-y > .ps__rail-y {
  opacity: 0.6;
}

.ps__rail-x:hover,
.ps__rail-y:hover,
.ps__rail-x:focus,
.ps__rail-y:focus {
  background-color: #eee;
  opacity: 0.9;
}

.ps__thumb-x {
  background-color: #aaa;
  border-radius: 6px;
  transition: background-color 0.2s linear, height 0.2s ease-in-out;
  -webkit-transition: background-color 0.2s linear, height 0.2s ease-in-out;
  height: 6px;
  bottom: 2px;
  position: absolute;
}

.ps__thumb-y {
  background-color: #aaa;
  border-radius: 6px;
  transition: background-color 0.2s linear, width 0.2s ease-in-out;
  -webkit-transition: background-color 0.2s linear, width 0.2s ease-in-out;
  width: 6px;
  right: 2px;
  position: absolute;
}

.ps__rail-x:hover > .ps__thumb-x,
.ps__rail-x:focus > .ps__thumb-x {
  background-color: #999;
  height: 11px;
}

.ps__rail-y:hover > .ps__thumb-y,
.ps__rail-y:focus > .ps__thumb-y {
  background-color: #999;
  width: 11px;
}

@supports (-ms-overflow-style: none) {
  .ps {
    overflow: auto !important;
  }
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .ps {
    overflow: auto !important;
  }
}

.ps__rail-y {
  position: absolute;
  top: 0;
  right: 0;
  left: auto !important;
}

@media screen and (max-width: 800) {
  .ps__rail-y {
    display: none !important;
    -webkit-overflow-scrolling: touch;
  }
}

@media screen and (max-width: 800) {
  .js-scrollbar {
    overflow-y: scroll;
  }
}

.js-scrollbar.ps.ps--active-y .ps__rail-y {
  display: block;
  opacity: 1;
  width: 4px;
}

.js-scrollbar.ps.ps--active-y .ps__rail-y .ps__thumb-y {
  background-color: rgba(146, 188, 217, 0.5);
  border-radius: 0;
  width: 3px;
  right: 1px;
}

html,
body {
  width: 100%;
}

html {
  font-size: 0.625vw;
}

body {
  min-width: 320px;
  text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-smoothing: antialiased;
  text-rendering: auto;
  letter-spacing: 0.1em;
  font-family: YakuHanJP_Noto, Noto Sans JP, "游ゴシック体", YuGothic, "游ゴシック", Yu Gothic, Noto Sans JP, Hiragino Kaku Gothic ProN, Hiragino Sans, Meiryo, sans-serif;
  color: #1a1a1a;
  width: 100%;
  position: relative;
  font-size: 12px;
  background-color: #fff;
}

@media screen and (max-width: 800px) {
  body {
    min-width: inherit;
  }
}

#wrapper {
  background-color: #fff;
  font-family: YakuHanJP_Noto, Noto Sans JP, "游ゴシック体", YuGothic, "游ゴシック", Yu Gothic, Noto Sans JP, Hiragino Kaku Gothic ProN, Hiragino Sans, Meiryo, sans-serif;
}

.container {
  position: relative;
  z-index: 5;
}

.inner {
  overflow: hidden;
}

dl,
dt,
dd,
ul,
li {
  list-style-type: none;
  padding: 0;
  margin: 0;
}

img {
  max-width: 100%;
  width: auto;
  height: auto;
  display: block;
}

a {
  color: #2f2f2f;
  text-decoration: none;
}

input::-webkit-input-placeholder {
  color: rgba(255, 255, 255, 0.3);
  font-weight: 700;
  letter-spacing: 0.01em;
}

input:-moz-placeholder {
  color: rgba(255, 255, 255, 0.3);
  font-weight: 700;
  letter-spacing: 0.01em;
}

input::-moz-placeholder {
  color: rgba(255, 255, 255, 0.3);
  font-weight: 700;
  letter-spacing: 0.01em;
}

input:-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.3);
  font-weight: 700;
  letter-spacing: 0.01em;
}

input {
  outline: transparent;
}

.js-load {
  opacity: 0;
}

.is-loaded {
  opacity: 1;
  transition: opacity 0.25s ease-out;
}

.is-pc {
  display: block;
}

@media screen and (max-width: 800px) {
  .is-pc {
    display: none !important;
  }
}

.is-sp {
  display: none !important;
}

@media screen and (max-width: 800px) {
  .is-sp {
    display: block !important;
  }
}

.is-pc-text {
  display: inline-block;
}

@media screen and (max-width: 800px) {
  .is-pc-text {
    display: none !important;
  }
}

.is-sp-text {
  display: none !important;
}

@media screen and (max-width: 800px) {
  .is-sp-text {
    display: inline-block !important;
  }
}

#wrapper {
  position: relative;
  z-index: 3;
}

.swiper-container {
  width: 100%;
  height: 100%;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box;
}

.swiper-wrapper.swiper-wrapper-thumb {
  flex-wrap: wrap;
  justify-content: start;
  pointer-events: none;
  transform: inherit !important;
}

.swiper-wrapper.swiper-wrapper-thumb .swiper-slide {
  padding: 0 10px;
  margin: 0 0 22px;
  cursor: pointer;
  pointer-events: auto;
}

@media screen and (max-width: 800px) {
  .swiper-wrapper.swiper-wrapper-thumb .swiper-slide {
    margin: 0 0 9px;
    padding: 0 8px;
  }
}

.swiper-wrapper.swiper-wrapper-thumb .swiper-slide:nth-of-type(3n-2) {
  padding: 0 10px 0 0;
}

@media screen and (max-width: 800px) {
  .swiper-wrapper.swiper-wrapper-thumb .swiper-slide:nth-of-type(3n-2) {
    padding: 0 8px 0 0;
  }
}

.swiper-wrapper.swiper-wrapper-thumb .swiper-slide:nth-of-type(3n) {
  padding: 0 0 0 10px;
}

@media screen and (max-width: 800px) {
  .swiper-wrapper.swiper-wrapper-thumb .swiper-slide:nth-of-type(3n) {
    padding: 0 0 0 8px;
  }
}

.swiper {
  width: 100%;
  height: 100%;
  margin: 22px 0 0;
}

@media screen and (max-width: 800px) {
  .swiper {
    margin: 0;
  }
}

@media screen and (max-width: 800px) {
  .swiper.swiper-thumbs {
    margin: 9px 0 0;
  }
}

.swiper-slide {
  text-align: center;
  font-size: 18px;
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}

.swiper-slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.swiper {
  width: 100%;
  height: 300px;
  margin-left: auto;
  margin-right: auto;
}

.swiper-slide {
  background-size: cover;
  background-position: center;
}

.mySwiper2 {
  height: 80%;
  width: 100%;
}

.mySwiper4 {
  height: 80%;
  width: 100%;
}

.mySwiper,
.mySwiper3 {
  height: 20%;
  box-sizing: border-box;
  padding: 10px 0;
}

.mySwiper .swiper-slide,
.mySwiper3 .swiper-slide {
  width: 25%;
  height: 100%;
  opacity: 0.4;
}

.mySwiper .swiper-slide-thumb-active,
.mySwiper3 .swiper-slide-thumb-active {
  opacity: 1;
}

.swiper-slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

a {
  opacity: 1;
  transition: opacity 0.7s ease;
}

a:hover {
  opacity: 0.7;
}

.fadeIn {
  opacity: 0;
}

.fadeInUp {
  transform: translateY(80px);
  opacity: 0;
}

.fadeInUpOver {
  transform: translateY(40px);
  opacity: 0;
}

.fadeInDown {
  transform: translateY(-30px);
  opacity: 0;
}

.fadeInDownOver {
  transform: translateY(-40px);
  opacity: 0;
}

.fadeInLeft {
  transform: translateX(-50px);
  opacity: 0;
}

.fadeInLeftOver {
  transform: translateX(-30px);
  opacity: 0;
}

.fadeInRight {
  transform: translateX(20px);
  opacity: 0;
}

.fadeInRightOver {
  transform: translateX(30px);
  opacity: 0;
}

.fadeInRightSkew {
  transform: translateX(30px) skewX(-10deg);
  opacity: 0;
}

.fadeInLeftSkew {
  transform: translateX(-30px) skewX(10deg);
  opacity: 0;
}

.maskSlideIn {
  transform: translate(-120%, 0);
  overflow: hidden;
}

@media screen and (max-width: 800) {
  .maskSlideIn {
    transform: translate(0, 0);
  }
}

.maskSlideIn .js-inner {
  transform: translate(100%, 0);
}

@media screen and (max-width: 800) {
  .maskSlideIn .js-inner {
    transform: translate(0, 0);
  }
}

.scaleUpIn {
  transform: scale(0.7);
  opacity: 0;
}

.scaleUpInOver {
  transform: scale(0.85);
  opacity: 0;
}

.scaleDownIn {
  transform: scale(1.07);
  opacity: 0;
}

.scaleDownInOver {
  transform: scale(1.15) translate(-30px, 0);
  opacity: 0;
}

.scalePop {
  transform: scale(0.5) translate(-30px, 0) rotate(15deg);
  transform-origin: center center;
}

.slideIn {
  transform: scale(0);
  transform-origin: center center;
}

.leanInLeft {
  opacity: 0;
  transform: translate3d(-40px, -40px, 0) rotate(-15deg);
  transform-origin: 0 100%;
}

.inBtn .c-btn .top {
  transform: skew(-40deg) scale(0);
  transform-origin: center center;
}

.inBtn .c-btn .right {
  transform: skewY(-50deg) scale(0);
  transform-origin: center center;
}

.inTitle svg path:nth-of-type(0),
.inTitle svg polygon:nth-of-type(0),
.inTitle svg rect:nth-of-type(0) {
  opacity: 0;
  transform: translate(-22px, 42px);
}

.inTitle svg path:nth-of-type(1),
.inTitle svg polygon:nth-of-type(1),
.inTitle svg rect:nth-of-type(1) {
  opacity: 0;
  transform: translate(-45px, 56px);
}

.inTitle svg path:nth-of-type(2),
.inTitle svg polygon:nth-of-type(2),
.inTitle svg rect:nth-of-type(2) {
  opacity: 0;
  transform: translate(-63px, 96px);
}

.inTitle svg path:nth-of-type(3),
.inTitle svg polygon:nth-of-type(3),
.inTitle svg rect:nth-of-type(3) {
  opacity: 0;
  transform: translate(-8px, 53px);
}

.inTitle svg path:nth-of-type(4),
.inTitle svg polygon:nth-of-type(4),
.inTitle svg rect:nth-of-type(4) {
  opacity: 0;
  transform: translate(-35px, 44px);
}

.inTitle svg path:nth-of-type(5),
.inTitle svg polygon:nth-of-type(5),
.inTitle svg rect:nth-of-type(5) {
  opacity: 0;
  transform: translate(-80px, 19px);
}

.inTitle svg path:nth-of-type(6),
.inTitle svg polygon:nth-of-type(6),
.inTitle svg rect:nth-of-type(6) {
  opacity: 0;
  transform: translate(-96px, 99px);
}

.inTitle svg path:nth-of-type(7),
.inTitle svg polygon:nth-of-type(7),
.inTitle svg rect:nth-of-type(7) {
  opacity: 0;
  transform: translate(-32px, 19px);
}

.inTitle svg path:nth-of-type(8),
.inTitle svg polygon:nth-of-type(8),
.inTitle svg rect:nth-of-type(8) {
  opacity: 0;
  transform: translate(-11px, 53px);
}

.inTitle svg path:nth-of-type(9),
.inTitle svg polygon:nth-of-type(9),
.inTitle svg rect:nth-of-type(9) {
  opacity: 0;
  transform: translate(-15px, 73px);
}

.inTitle svg path:nth-of-type(10),
.inTitle svg polygon:nth-of-type(10),
.inTitle svg rect:nth-of-type(10) {
  opacity: 0;
  transform: translate(-87px, 6px);
}

.inTitle svg path:nth-of-type(11),
.inTitle svg polygon:nth-of-type(11),
.inTitle svg rect:nth-of-type(11) {
  opacity: 0;
  transform: translate(-68px, 41px);
}

.inTitle svg path:nth-of-type(12),
.inTitle svg polygon:nth-of-type(12),
.inTitle svg rect:nth-of-type(12) {
  opacity: 0;
  transform: translate(-52px, 90px);
}

.inTitle svg path:nth-of-type(13),
.inTitle svg polygon:nth-of-type(13),
.inTitle svg rect:nth-of-type(13) {
  opacity: 0;
  transform: translate(-61px, 95px);
}

.inTitle svg path:nth-of-type(14),
.inTitle svg polygon:nth-of-type(14),
.inTitle svg rect:nth-of-type(14) {
  opacity: 0;
  transform: translate(-25px, 17px);
}

.inTitle svg path:nth-of-type(15),
.inTitle svg polygon:nth-of-type(15),
.inTitle svg rect:nth-of-type(15) {
  opacity: 0;
  transform: translate(-53px, 1px);
}

.inTitle svg path:nth-of-type(16),
.inTitle svg polygon:nth-of-type(16),
.inTitle svg rect:nth-of-type(16) {
  opacity: 0;
  transform: translate(-1px, 88px);
}

.inTitle svg path:nth-of-type(17),
.inTitle svg polygon:nth-of-type(17),
.inTitle svg rect:nth-of-type(17) {
  opacity: 0;
  transform: translate(-36px, 25px);
}

.inTitle svg path:nth-of-type(18),
.inTitle svg polygon:nth-of-type(18),
.inTitle svg rect:nth-of-type(18) {
  opacity: 0;
  transform: translate(-92px, 12px);
}

.inTitle svg path:nth-of-type(19),
.inTitle svg polygon:nth-of-type(19),
.inTitle svg rect:nth-of-type(19) {
  opacity: 0;
  transform: translate(-56px, 35px);
}

.inTitle svg path:nth-of-type(20),
.inTitle svg polygon:nth-of-type(20),
.inTitle svg rect:nth-of-type(20) {
  opacity: 0;
  transform: translate(-77px, 86px);
}

.inTitle svg path:nth-of-type(21),
.inTitle svg polygon:nth-of-type(21),
.inTitle svg rect:nth-of-type(21) {
  opacity: 0;
  transform: translate(-72px, 54px);
}

.inTitle svg path:nth-of-type(22),
.inTitle svg polygon:nth-of-type(22),
.inTitle svg rect:nth-of-type(22) {
  opacity: 0;
  transform: translate(-19px, 31px);
}

.inTitle svg path:nth-of-type(23),
.inTitle svg polygon:nth-of-type(23),
.inTitle svg rect:nth-of-type(23) {
  opacity: 0;
  transform: translate(-74px, 32px);
}

.inTitle svg path:nth-of-type(24),
.inTitle svg polygon:nth-of-type(24),
.inTitle svg rect:nth-of-type(24) {
  opacity: 0;
  transform: translate(-80px, 78px);
}

.inTitle svg path:nth-of-type(25),
.inTitle svg polygon:nth-of-type(25),
.inTitle svg rect:nth-of-type(25) {
  opacity: 0;
  transform: translate(-65px, 13px);
}

.inList .inItem svg {
  transform: translate(0, -10px) scaleX(0.5);
  transform-origin: bottom center;
}

.maskDown {
  overflow: hidden;
  position: relative;
}

.maskDown:before {
  content: "";
  position: absolute;
  z-index: 10;
  left: 0;
  top: -100%;
  width: 100%;
  height: 100%;
  background: #1a1a1a;
}

.maskDown:after {
  content: "";
  position: absolute;
  z-index: 11;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #fff;
}

.inShip {
  transform: translate(50px, 0);
}

.is-active .scaleUpIn {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  opacity: 1 !important;
  transition: transform 0.5s 0.2s, opacity 0.25s 0.2s ease-in;
}

.is-active.maskSlideIn {
  transition: transform 0.5s 0.2s cubic-bezier(0.7, 0, 0.3, 1);
}

.is-active.maskSlideIn .js-inner {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  transition: transform 0.5s 0.2s cubic-bezier(0.7, 0, 0.3, 1);
}

.is-active.inList .inItem:nth-of-type(0) svg {
  animation: ICON_DOWN 0.5s 0s cubic-bezier(0.7, 0, 1, 1) both;
}

.is-active.inList .inItem:nth-of-type(1) svg {
  animation: ICON_DOWN 0.5s 0.1s cubic-bezier(0.7, 0, 1, 1) both;
}

.is-active.inList .inItem:nth-of-type(2) svg {
  animation: ICON_DOWN 0.5s 0.2s cubic-bezier(0.7, 0, 1, 1) both;
}

.is-active.inList .inItem:nth-of-type(3) svg {
  animation: ICON_DOWN 0.5s 0.3s cubic-bezier(0.7, 0, 1, 1) both;
}

.is-active.inList .inItem:nth-of-type(4) svg {
  animation: ICON_DOWN 0.5s 0.4s cubic-bezier(0.7, 0, 1, 1) both;
}

.is-active.inList .inItem:nth-of-type(5) svg {
  animation: ICON_DOWN 0.5s 0.5s cubic-bezier(0.7, 0, 1, 1) both;
}

.is-active.inList .inItem:nth-of-type(6) svg {
  animation: ICON_DOWN 0.5s 0.6s cubic-bezier(0.7, 0, 1, 1) both;
}

.is-active.inList .inItem:nth-of-type(7) svg {
  animation: ICON_DOWN 0.5s 0.7s cubic-bezier(0.7, 0, 1, 1) both;
}

.is-active.inList .inItem:nth-of-type(8) svg {
  animation: ICON_DOWN 0.5s 0.8s cubic-bezier(0.7, 0, 1, 1) both;
}

.is-active.inList .inItem:nth-of-type(9) svg {
  animation: ICON_DOWN 0.5s 0.9s cubic-bezier(0.7, 0, 1, 1) both;
}

.is-active.inList .inItem:nth-of-type(10) svg {
  animation: ICON_DOWN 0.5s 1s cubic-bezier(0.7, 0, 1, 1) both;
}

.is-active.inList .inItem:nth-of-type(11) svg {
  animation: ICON_DOWN 0.5s 1.1s cubic-bezier(0.7, 0, 1, 1) both;
}

.is-active.inList .inItem:nth-of-type(12) svg {
  animation: ICON_DOWN 0.5s 1.2s cubic-bezier(0.7, 0, 1, 1) both;
}

.is-active.inList .inItem:nth-of-type(13) svg {
  animation: ICON_DOWN 0.5s 1.3s cubic-bezier(0.7, 0, 1, 1) both;
}

.is-active.inList .inItem:nth-of-type(14) svg {
  animation: ICON_DOWN 0.5s 1.4s cubic-bezier(0.7, 0, 1, 1) both;
}

.is-active.inList .inItem:nth-of-type(15) svg {
  animation: ICON_DOWN 0.5s 1.5s cubic-bezier(0.7, 0, 1, 1) both;
}

.is-active.inList .inItem:nth-of-type(16) svg {
  animation: ICON_DOWN 0.5s 1.6s cubic-bezier(0.7, 0, 1, 1) both;
}

.is-active.inList .inItem:nth-of-type(17) svg {
  animation: ICON_DOWN 0.5s 1.7s cubic-bezier(0.7, 0, 1, 1) both;
}

.is-active.inList .inItem:nth-of-type(18) svg {
  animation: ICON_DOWN 0.5s 1.8s cubic-bezier(0.7, 0, 1, 1) both;
}

.is-active.inList .inItem:nth-of-type(19) svg {
  animation: ICON_DOWN 0.5s 1.9s cubic-bezier(0.7, 0, 1, 1) both;
}

.is-active.inList .inItem:nth-of-type(20) svg {
  animation: ICON_DOWN 0.5s 2s cubic-bezier(0.7, 0, 1, 1) both;
}

.is-active.inTitle svg path:nth-of-type(0),
.is-active.inTitle svg polygon:nth-of-type(0),
.is-active.inTitle svg rect:nth-of-type(0) {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  opacity: 1 !important;
  transition: transform 0.5s 0.15s, opacity 0.25s 0.15s ease-in;
}

.is-active.inTitle svg path:nth-of-type(1),
.is-active.inTitle svg polygon:nth-of-type(1),
.is-active.inTitle svg rect:nth-of-type(1) {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  opacity: 1 !important;
  transition: transform 0.5s 0.18s, opacity 0.25s 0.18s ease-in;
}

.is-active.inTitle svg path:nth-of-type(2),
.is-active.inTitle svg polygon:nth-of-type(2),
.is-active.inTitle svg rect:nth-of-type(2) {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  opacity: 1 !important;
  transition: transform 0.5s 0.21s, opacity 0.25s 0.21s ease-in;
}

.is-active.inTitle svg path:nth-of-type(3),
.is-active.inTitle svg polygon:nth-of-type(3),
.is-active.inTitle svg rect:nth-of-type(3) {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  opacity: 1 !important;
  transition: transform 0.5s 0.24s, opacity 0.25s 0.24s ease-in;
}

.is-active.inTitle svg path:nth-of-type(4),
.is-active.inTitle svg polygon:nth-of-type(4),
.is-active.inTitle svg rect:nth-of-type(4) {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  opacity: 1 !important;
  transition: transform 0.5s 0.27s, opacity 0.25s 0.27s ease-in;
}

.is-active.inTitle svg path:nth-of-type(5),
.is-active.inTitle svg polygon:nth-of-type(5),
.is-active.inTitle svg rect:nth-of-type(5) {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  opacity: 1 !important;
  transition: transform 0.5s 0.3s, opacity 0.25s 0.3s ease-in;
}

.is-active.inTitle svg path:nth-of-type(6),
.is-active.inTitle svg polygon:nth-of-type(6),
.is-active.inTitle svg rect:nth-of-type(6) {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  opacity: 1 !important;
  transition: transform 0.5s 0.33s, opacity 0.25s 0.33s ease-in;
}

.is-active.inTitle svg path:nth-of-type(7),
.is-active.inTitle svg polygon:nth-of-type(7),
.is-active.inTitle svg rect:nth-of-type(7) {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  opacity: 1 !important;
  transition: transform 0.5s 0.36s, opacity 0.25s 0.36s ease-in;
}

.is-active.inTitle svg path:nth-of-type(8),
.is-active.inTitle svg polygon:nth-of-type(8),
.is-active.inTitle svg rect:nth-of-type(8) {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  opacity: 1 !important;
  transition: transform 0.5s 0.39s, opacity 0.25s 0.39s ease-in;
}

.is-active.inTitle svg path:nth-of-type(9),
.is-active.inTitle svg polygon:nth-of-type(9),
.is-active.inTitle svg rect:nth-of-type(9) {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  opacity: 1 !important;
  transition: transform 0.5s 0.42s, opacity 0.25s 0.42s ease-in;
}

.is-active.inTitle svg path:nth-of-type(10),
.is-active.inTitle svg polygon:nth-of-type(10),
.is-active.inTitle svg rect:nth-of-type(10) {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  opacity: 1 !important;
  transition: transform 0.5s 0.45s, opacity 0.25s 0.45s ease-in;
}

.is-active.inTitle svg path:nth-of-type(11),
.is-active.inTitle svg polygon:nth-of-type(11),
.is-active.inTitle svg rect:nth-of-type(11) {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  opacity: 1 !important;
  transition: transform 0.5s 0.48s, opacity 0.25s 0.48s ease-in;
}

.is-active.inTitle svg path:nth-of-type(12),
.is-active.inTitle svg polygon:nth-of-type(12),
.is-active.inTitle svg rect:nth-of-type(12) {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  opacity: 1 !important;
  transition: transform 0.5s 0.51s, opacity 0.25s 0.51s ease-in;
}

.is-active.inTitle svg path:nth-of-type(13),
.is-active.inTitle svg polygon:nth-of-type(13),
.is-active.inTitle svg rect:nth-of-type(13) {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  opacity: 1 !important;
  transition: transform 0.5s 0.54s, opacity 0.25s 0.54s ease-in;
}

.is-active.inTitle svg path:nth-of-type(14),
.is-active.inTitle svg polygon:nth-of-type(14),
.is-active.inTitle svg rect:nth-of-type(14) {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  opacity: 1 !important;
  transition: transform 0.5s 0.57s, opacity 0.25s 0.57s ease-in;
}

.is-active.inTitle svg path:nth-of-type(15),
.is-active.inTitle svg polygon:nth-of-type(15),
.is-active.inTitle svg rect:nth-of-type(15) {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  opacity: 1 !important;
  transition: transform 0.5s 0.6s, opacity 0.25s 0.6s ease-in;
}

.is-active.inTitle svg path:nth-of-type(16),
.is-active.inTitle svg polygon:nth-of-type(16),
.is-active.inTitle svg rect:nth-of-type(16) {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  opacity: 1 !important;
  transition: transform 0.5s 0.63s, opacity 0.25s 0.63s ease-in;
}

.is-active.inTitle svg path:nth-of-type(17),
.is-active.inTitle svg polygon:nth-of-type(17),
.is-active.inTitle svg rect:nth-of-type(17) {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  opacity: 1 !important;
  transition: transform 0.5s 0.66s, opacity 0.25s 0.66s ease-in;
}

.is-active.inTitle svg path:nth-of-type(18),
.is-active.inTitle svg polygon:nth-of-type(18),
.is-active.inTitle svg rect:nth-of-type(18) {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  opacity: 1 !important;
  transition: transform 0.5s 0.69s, opacity 0.25s 0.69s ease-in;
}

.is-active.inTitle svg path:nth-of-type(19),
.is-active.inTitle svg polygon:nth-of-type(19),
.is-active.inTitle svg rect:nth-of-type(19) {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  opacity: 1 !important;
  transition: transform 0.5s 0.72s, opacity 0.25s 0.72s ease-in;
}

.is-active.inTitle svg path:nth-of-type(20),
.is-active.inTitle svg polygon:nth-of-type(20),
.is-active.inTitle svg rect:nth-of-type(20) {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  opacity: 1 !important;
  transition: transform 0.5s 0.75s, opacity 0.25s 0.75s ease-in;
}

.is-active.inTitle svg path:nth-of-type(21),
.is-active.inTitle svg polygon:nth-of-type(21),
.is-active.inTitle svg rect:nth-of-type(21) {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  opacity: 1 !important;
  transition: transform 0.5s 0.78s, opacity 0.25s 0.78s ease-in;
}

.is-active.inTitle svg path:nth-of-type(22),
.is-active.inTitle svg polygon:nth-of-type(22),
.is-active.inTitle svg rect:nth-of-type(22) {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  opacity: 1 !important;
  transition: transform 0.5s 0.81s, opacity 0.25s 0.81s ease-in;
}

.is-active.inTitle svg path:nth-of-type(23),
.is-active.inTitle svg polygon:nth-of-type(23),
.is-active.inTitle svg rect:nth-of-type(23) {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  opacity: 1 !important;
  transition: transform 0.5s 0.84s, opacity 0.25s 0.84s ease-in;
}

.is-active.inTitle svg path:nth-of-type(24),
.is-active.inTitle svg polygon:nth-of-type(24),
.is-active.inTitle svg rect:nth-of-type(24) {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  opacity: 1 !important;
  transition: transform 0.5s 0.87s, opacity 0.25s 0.87s ease-in;
}

.is-active.inTitle svg path:nth-of-type(25),
.is-active.inTitle svg polygon:nth-of-type(25),
.is-active.inTitle svg rect:nth-of-type(25) {
  transform: scale(1) translate(0, 0) rotate(0deg) !important;
  opacity: 1 !important;
  transition: transform 0.5s 0.9s, opacity 0.25s 0.9s ease-in;
}

.is-active.inBtn .c-btn .top {
  transform: skew(-40deg) scale(1);
  transform-origin: center center;
  transition: transform 0.5s cubic-bezier(0.7, 0, 0.3, 1);
}

.is-active.inBtn .c-btn .right {
  transform: skewY(-50deg) scale(1);
  transform-origin: center center;
  transition: transform 0.5s cubic-bezier(0.7, 0, 0.3, 1);
}

.is-active.inShip {
  transition: transform 5s ease-out;
}

.is-active.fadeText > span:nth-of-type(0) > span {
  transition: transform 0.4s 0s cubic-bezier(0.21, 0.5, 0.29, 0.99);
}

.is-active.fadeText > span:nth-of-type(1) > span {
  transition: transform 0.4s 0.05s cubic-bezier(0.21, 0.5, 0.29, 0.99);
}

.is-active.fadeText > span:nth-of-type(2) > span {
  transition: transform 0.4s 0.1s cubic-bezier(0.21, 0.5, 0.29, 0.99);
}

.is-active.fadeText > span:nth-of-type(3) > span {
  transition: transform 0.4s 0.15s cubic-bezier(0.21, 0.5, 0.29, 0.99);
}

.is-active.fadeText > span:nth-of-type(4) > span {
  transition: transform 0.4s 0.2s cubic-bezier(0.21, 0.5, 0.29, 0.99);
}

.is-active.fadeText > span:nth-of-type(5) > span {
  transition: transform 0.4s 0.25s cubic-bezier(0.21, 0.5, 0.29, 0.99);
}

.is-active.fadeText > span:nth-of-type(6) > span {
  transition: transform 0.4s 0.3s cubic-bezier(0.21, 0.5, 0.29, 0.99);
}

.is-active.fadeText > span:nth-of-type(7) > span {
  transition: transform 0.4s 0.35s cubic-bezier(0.21, 0.5, 0.29, 0.99);
}

.is-active.fadeText > span:nth-of-type(8) > span {
  transition: transform 0.4s 0.4s cubic-bezier(0.21, 0.5, 0.29, 0.99);
}

.is-active.fadeText > span:nth-of-type(9) > span {
  transition: transform 0.4s 0.45s cubic-bezier(0.21, 0.5, 0.29, 0.99);
}

.is-active.fadeText > span:nth-of-type(10) > span {
  transition: transform 0.4s 0.5s cubic-bezier(0.21, 0.5, 0.29, 0.99);
}

.is-active.fadeText > span:nth-of-type(11) > span {
  transition: transform 0.4s 0.55s cubic-bezier(0.21, 0.5, 0.29, 0.99);
}

.is-active.fadeText > span:nth-of-type(12) > span {
  transition: transform 0.4s 0.6s cubic-bezier(0.21, 0.5, 0.29, 0.99);
}

.is-active.fadeText > span:nth-of-type(13) > span {
  transition: transform 0.4s 0.65s cubic-bezier(0.21, 0.5, 0.29, 0.99);
}

.is-active.fadeText > span:nth-of-type(14) > span {
  transition: transform 0.4s 0.7s cubic-bezier(0.21, 0.5, 0.29, 0.99);
}

.is-active.fadeText > span:nth-of-type(15) > span {
  transition: transform 0.4s 0.75s cubic-bezier(0.21, 0.5, 0.29, 0.99);
}

.is-active.fadeText > span > span {
  transform: translateX(0) !important;
}

.is-active .fadeInRightSkew,
.is-active .fadeInLeftSkew {
  transition: transform 1s cubic-bezier(0.7, 0, 0.3, 1), opacity 0.6s;
}

.is-active .fadeInUp,
.is-active .fadeInDown {
  transition: transform 1.8s 0.5s cubic-bezier(0.08, 0.92, 0.35, 1), opacity 0.5s 0.5s;
}

.is-active .scaleBaloon {
  transition: transform 0.3s 0.1s cubic-bezier(0.08, 0.92, 0.35, 1), opacity 0.2s 0.1s ease-in;
}

.is-active .scaleBaloon.is-current {
  transition: transform 0.3s cubic-bezier(0.08, 0.92, 0.35, 1), opacity 0.2s ease-in;
}

.is-active .scalePop {
  transition: transform 0.3s cubic-bezier(0.08, 0.92, 0.35, 1);
}

.is-active .leanInLeft {
  transition: transform 0.6s 0.1s cubic-bezier(0.08, 0.92, 0.35, 1), opacity 0.3s 0.2s;
}

.is-active .maskDown:before,
.is-active .maskDown:after {
  transform: translateY(200.1%);
  transition: 0.7s cubic-bezier(0.08, 0.92, 0.35, 1);
}

.delay1 {
  transition-delay: 0.1s;
}

.delay2 {
  transition-delay: 0.2s;
}

.delay3 {
  transition-delay: 0.3s;
}

.delay4 {
  transition-delay: 0.4s;
}

.delay5 {
  transition-delay: 0.5s;
}

.delay6 {
  transition-delay: 0.6s;
}

.delay7 {
  transition-delay: 0.7s;
}

.delay8 {
  transition-delay: 0.8s;
}

.delay9 {
  transition-delay: 0.9s;
}

.delay10 {
  transition-delay: 1s;
}

.c-btn {
  display: inline-block;
  height: 64px;
  line-height: 64px;
  padding: 0 85px;
  background-color: #1a1a1a;
  border-radius: 50px;
}

@media screen and (max-width: 800px) {
  .c-btn {
    height: 40px;
    line-height: 40px;
    padding: 0 40px;
  }
}

.c-btn .text {
  font-size: 15px;
  font-weight: 700;
  color: #fff;
}

@media screen and (max-width: 800px) {
  .c-btn .text {
    font-size: 12px;
  }
}

.c-title {
  text-align: center;
}

.c-title__inner .en {
  font-size: 26px;
  font-weight: 700;
  color: #1a1a1a;
  letter-spacing: 0.18em;
  display: block;
}

@media screen and (max-width: 800px) {
  .c-title__inner .en {
    font-size: 16px;
  }
}

.c-title__inner .jp {
  font-size: 16px;
  font-weight: 700;
  color: #1a1a1a;
  position: relative;
  display: inline-block;
  padding: 10px 0 0;
}

@media screen and (max-width: 800px) {
  .c-title__inner .jp {
    font-size: 14px;
  }
}

.c-title__inner .jp:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-60px, 0);
  width: 120px;
  height: 3px;
  background-color: #1a1a1a;
}

@media screen and (max-width: 800px) {
  .c-title__inner .jp:before {
    top: 3px;
    height: 2px;
  }
}

.p-banner__inner {
  max-width: 800px;
  margin: 0 auto;
  width: 100%;
  padding: 100px 50px;
}

@media screen and (max-width: 800px) {
  .p-banner__inner {
    padding: 34px 25px;
  }
}

.p-banner__lower {
  margin: 37px 0 0;
}

@media screen and (max-width: 800px) {
  .p-banner__lower {
    margin: 15px 0 0;
  }
}

.p-faq {
  background-color: #f8f8f8;
  padding: 85px 0 185px;
}

@media screen and (max-width: 800px) {
  .p-faq {
    padding: 50px 25px;
  }
}

.p-faq__inner {
  max-width: 800px;
  width: 100%;
  margin: 0 auto;
}

.p-faq__body {
  margin: 80px 0 0;
}

@media screen and (max-width: 800px) {
  .p-faq__body {
    margin: 15px 0 0;
  }
}

.p-faq__item {
  background-color: #fff;
  position: relative;
}

.p-faq__icon {
  position: absolute;
  top: 0;
  right: 0;
  width: 60px;
  height: 60px;
}

@media screen and (max-width: 800px) {
  .p-faq__icon {
    width: 40px;
    height: 40px;
  }
}

.p-faq__icon > span {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  background-color: #ec6547;
  width: 20px;
  height: 1px;
}

.p-faq__icon > span:nth-of-type(1) {
  transform: translate(-50%, -50%);
}

.p-faq__icon > span:nth-of-type(2) {
  transform: translate(-50%, -50%) rotate(90deg);
  opacity: 1;
}

.p-faq__q {
  cursor: pointer;
}

.p-faq__q.is-active .p-faq__icon > span:nth-of-type(2) {
  opacity: 0;
}

.p-faq__q .inner {
  display: flex;
  padding: 22px 80px 22px 22px;
}

@media screen and (max-width: 800px) {
  .p-faq__q .inner {
    padding: 14px 12px 22px;
  }
}

.p-faq__q .inner > span {
  color: #ec6547;
  font-size: 24px;
  width: 40px;
  max-width: 40px;
  min-width: 40px;
  font-weight: 700;
}

@media screen and (max-width: 800px) {
  .p-faq__q .inner > span {
    font-size: 12px;
    width: 22px;
    max-width: 22px;
    min-width: 22px;
  }
}

.p-faq__q .inner > h3 {
  color: #ec6547;
  font-size: 14px;
  width: 100%;
  font-weight: 700;
}

@media screen and (max-width: 800px) {
  .p-faq__q .inner > h3 {
    font-size: 10px;
    padding: 0 23px 0 0;
  }
}

.p-faq__a {
  padding: 0 80px 0 22px;
}

@media screen and (max-width: 800px) {
  .p-faq__a {
    padding: 0 12px;
  }
}

.p-faq__a .inner {
  display: flex;
}

@media screen and (max-width: 800px) {
  .p-faq__a .inner {
    border-top: 1px dashed #ec6547;
  }
}

.p-faq__a .inner > span {
  color: #1a1a1a;
  font-size: 24px;
  width: 40px;
  max-width: 40px;
  min-width: 40px;
  padding: 22px 0;
  font-weight: 700;
}

@media screen and (max-width: 800px) {
  .p-faq__a .inner > span {
    font-size: 10px;
    width: 22px;
    max-width: 22px;
    min-width: 22px;
  }
}

.p-faq__a .inner > p {
  border-top: 1px dashed #ec6547;
  color: #1a1a1a;
  font-size: 14px;
  width: 100%;
  padding: 22px 0;
  font-weight: 700;
}

@media screen and (max-width: 800px) {
  .p-faq__a .inner > p {
    font-size: 10px;
    border-top: none;
    padding: 18px 23px 18px 0;
  }
}

@media screen and (max-width: 1024px) {
  .common-header .section-inner .header-logo img {
    display: inline;
  }
}

.p-info {
  padding: 0 0 116px;
}

@media screen and (max-width: 800px) {
  .p-info {
    padding: 30px 25px;
  }
}

.p-info__inner {
  max-width: 800px;
  width: 100%;
  margin: 0 auto;
}

.p-info__list {
  margin: 72px 0 0;
}

@media screen and (max-width: 800px) {
  .p-info__list {
    margin: 20px 0 0;
  }
}

.p-info__link {
  display: flex;
  align-items: center;
  padding: 18px 0;
  border-bottom: 1px solid #e4e4e4;
}

@media screen and (max-width: 800px) {
  .p-info__link {
    padding: 10px 0;
  }
}

.p-info__link .arrow {
  width: 88px;
  min-width: 88px;
  max-width: 88px;
}

@media screen and (max-width: 800px) {
  .p-info__link .arrow {
    width: 24px;
    min-width: 24px;
    max-width: 24px;
  }
}

.p-info__link .arrow img {
  width: 24px;
  height: 24px;
}

@media screen and (max-width: 800px) {
  .p-info__link .arrow img {
    width: 16px;
    height: 16px;
  }
}

.p-info__link .pdf {
  width: 63px;
  min-width: 63px;
  max-width: 63px;
}

@media screen and (max-width: 800px) {
  .p-info__link .pdf {
    width: 32px;
    min-width: 32px;
    max-width: 32px;
  }
}

.p-info__link .pdf img {
  width: 25px;
  height: auto;
}

@media screen and (max-width: 800px) {
  .p-info__link .pdf img {
    width: 15px;
  }
}

.p-info__link .date {
  font-size: 14px;
  color: #1a1a1a;
  width: 112px;
  min-width: 112px;
  max-width: 112px;
  font-weight: 700;
}

@media screen and (max-width: 800px) {
  .p-info__link .date {
    width: 80px;
    min-width: 80px;
    max-width: 80px;
    font-size: 10px;
  }
}

.p-info__link .title {
  font-size: 14px;
  color: #1a1a1a;
  font-weight: 700;
  width: 100%;
}

@media screen and (max-width: 800px) {
  .p-info__link .title {
    font-size: 10px;
    line-height: 15px;
  }
}

.p-loading {
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 999;
  background-color: #fff;
  pointer-events: auto;
  transition: opacity 0.5s 0.5s cubic-bezier(0, 0.55, 0.45, 1);
}

body#index .p-loading {
  transition: opacity 0.5s 0.4s cubic-bezier(0, 0.55, 0.45, 1);
}

body.is-opening-end .p-loading {
  opacity: 0;
  pointer-events: none;
}

.p-location {
  background-color: #f8f8f8;
  padding: 100px 0;
}

@media screen and (max-width: 800px) {
  .p-location {
    padding: 30px 25px;
  }
}

.p-location__inner {
  max-width: 1060px;
  width: 100%;
  margin: 0 auto;
}

.p-location__body {
  margin: 80px 0 0;
}

@media screen and (max-width: 800px) {
  .p-location__body {
    margin: 20px 0 0;
  }
}

.p-location__foot {
  text-align: center;
  margin: 52px 0 0;
}

@media screen and (max-width: 800px) {
  .p-location__foot {
    margin: 20px 0 0;
  }
}

.p-location__note {
  text-align: center;
  margin: 0 0 52px;
}

@media screen and (max-width: 800px) {
  .p-location__note {
    margin: 20px 0;
    font-size: 10px;
  }
}

.p-mv__msg {
  font-size: 24px;
  max-width: 800px;
  margin: 0 auto;
  width: 100%;
  padding: 30px 0;
  color: #1a1a1a;
  text-align: center;
}

@media screen and (max-width: 800px) {
  .p-mv__msg {
    font-size: 18px;
    text-align: center;
    padding: 0 22px 12px;
  }
}

.p-mv__tilte img {
  width: 100%;
  height: auto;
}

.p-note {
  background-color: #f8f8f8;
  padding: 115px 0 110px;
}

@media screen and (max-width: 800px) {
  .p-note {
    padding: 50px 25px;
  }
}

.p-note__inner {
  max-width: 777px;
  width: 100%;
  margin: 0 auto;
}

.p-note__head {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 800px) {
  .p-note__head {
    display: block;
  }
}

.p-note__box {
  width: 46%;
  padding: 55px 25px 44px;
  border: 1px solid #1a1a1a;
  text-align: center;
  background-color: #fff;
}

@media screen and (max-width: 800px) {
  .p-note__box {
    width: 100%;
    padding: 16px 30px 15px;
  }
}

.p-note__box:nth-of-type(1) .image img {
  width: auto;
  height: 95px;
}

@media screen and (max-width: 800px) {
  .p-note__box:nth-of-type(1) .image img {
    height: 50px;
  }
}

@media screen and (max-width: 800px) {
  .p-note__box:nth-of-type(2) {
    margin: 15px 0 0;
  }
}

.p-note__box:nth-of-type(2) .image img {
  width: auto;
  height: 95px;
}

@media screen and (max-width: 800px) {
  .p-note__box:nth-of-type(2) .image img {
    height: 50px;
  }
}

.p-note__box .title {
  font-size: 24px;
  font-weight: 700;
}

@media screen and (max-width: 800px) {
  .p-note__box .title {
    font-size: 12px;
  }
}

.p-note__box .image {
  margin: 40px 0 0;
}

@media screen and (max-width: 800px) {
  .p-note__box .image {
    margin: 17px 0 0;
  }
}

.p-note__box .image img {
  margin: 0 auto;
}

.p-note__box .text {
  margin: 58px 0 0;
  font-size: 19px;
  text-align: left;
}

.p-note__box .text.text-center {
  text-align: center;
}

@media screen and (max-width: 800px) {
  .p-note__box .text {
    font-size: 10px;
    text-align: center;
    margin: 17px 0 0;
  }
}

.p-note__foot {
  margin: 58px 0 0;
  text-align: center;
}

@media screen and (max-width: 800px) {
  .p-note__foot {
    margin: 15px 0 0;
  }
}

.p-note__foot .btn {
  display: inline-block;
}

.p-note__foot .c-btn {
  background-color: #ec6547;
  height: 64px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 100px;
}

@media screen and (max-width: 800px) {
  .p-note__foot .c-btn {
    padding: 0 10px;
    height: 32px;
  }
}

.p-note__foot .c-btn img {
  height: 34px;
  width: auto;
}

@media screen and (max-width: 800px) {
  .p-note__foot .c-btn img {
    height: 15px;
  }
}

.p-note__foot .c-btn .text {
  font-size: 16px;
  color: #fff;
  padding: 0 33px;
}

@media screen and (max-width: 800px) {
  .p-note__foot .c-btn .text {
    font-size: 10px;
    white-space: nowrap;
    padding: 0 5px;
    letter-spacing: 0.01em;
  }
}

.p-plan {
  padding: 88px 0 123px;
}

@media screen and (max-width: 800px) {
  .p-plan {
    padding: 30px 0;
  }
}

.p-plan__body-inner {
  max-width: 800px;
  width: 100%;
  margin: 66px auto 0;
}

@media screen and (max-width: 800px) {
  .p-plan__body-inner {
    margin: 20px auto 0;
    padding: 0 10px;
  }
}

.p-plan__list {
  display: flex;
  justify-content: space-between;
}

.p-plan__list:has(> :nth-child(1):last-child) {
  justify-content: center;
}

.p-plan__list:has(> :nth-child(2):last-child) {
  justify-content: space-evenly;
}

.p-plan__list:has(> :nth-child(3):last-child) {
  justify-content: space-between;
}

.p-plan__item {
  width: 30%;
  height: 90px;
  position: relative;
  background-color: #fff;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media screen and (max-width: 800px) {
  .p-plan__item {
    height: 60px;
    width: 32%;
  }
}

.p-plan__item:nth-of-type(1) {
  border: 1px solid #ec6547;
  box-shadow: 2px 2px 0 #ec6547;
}

.p-plan__item:nth-of-type(1) .text {
  color: #ec6547;
}

.p-plan__item:nth-of-type(1) .arrow:before {
  background-color: #ec6547;
}

.p-plan__item:nth-of-type(1) .arrow:after {
  background-color: #ec6547;
}

.p-plan__item:nth-of-type(2) {
  border: 1px solid #304c7f;
  box-shadow: 2px 2px 0 #304c7f;
}

.p-plan__item:nth-of-type(2) .text {
  color: #304c7f;
}

.p-plan__item:nth-of-type(2) .arrow:before {
  background-color: #304c7f;
}

.p-plan__item:nth-of-type(2) .arrow:after {
  background-color: #304c7f;
}

.p-plan__item:nth-of-type(3) {
  border: 1px solid #0d6973;
  box-shadow: 2px 2px 0 #0d6973;
}

.p-plan__item:nth-of-type(3) .text {
  color: #0d6973;
}

.p-plan__item:nth-of-type(3) .arrow:before {
  background-color: #0d6973;
}

.p-plan__item:nth-of-type(3) .arrow:after {
  background-color: #0d6973;
}

.p-plan__item .text {
  font-size: 16px;
  font-weight: 700;
}

@media screen and (max-width: 800px) {
  .p-plan__item .text {
    font-size: 10px;
    margin: 0 0 5px;
  }
}

.p-plan__item .arrow {
  position: absolute;
  bottom: 10px;
  left: 50%;
  width: 16px;
  height: 10px;
  transform: translate(-50%, 0);
}

@media screen and (max-width: 800px) {
  .p-plan__item .arrow {
    bottom: 8px;
    width: 10px;
  }
}

.p-plan__item .arrow:before {
  content: "";
  display: block;
  width: 8px;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
  transform-origin: right center;
  transform: rotate(30deg);
}

@media screen and (max-width: 800px) {
  .p-plan__item .arrow:before {
    width: 5px;
  }
}

.p-plan__item .arrow:after {
  content: "";
  display: block;
  width: 8px;
  height: 1px;
  position: absolute;
  bottom: 0;
  right: 0;
  transform-origin: left center;
  transform: rotate(-30deg);
}

@media screen and (max-width: 800px) {
  .p-plan__item .arrow:after {
    width: 5px;
  }
}

.p-plan__item-subtext {
  letter-spacing: normal;
}

.p-plan__item.btn_monthly {
  border: 1px solid #ec6547;
  box-shadow: 2px 2px 0 #ec6547;
}

.p-plan__item.btn_monthly .text {
  color: #ec6547;
}

.p-plan__item.btn_monthly .arrow:before,
.p-plan__item.btn_monthly .arrow:after {
  background-color: #ec6547;
}

.p-plan__item.btn_eachTime {
  border: 1px solid #304c7f;
  box-shadow: 2px 2px 0 #304c7f;
}

.p-plan__item.btn_eachTime .text {
  color: #304c7f;
}

.p-plan__item.btn_eachTime .arrow:before,
.p-plan__item.btn_eachTime .arrow:after {
  background-color: #304c7f;
}

.p-plan__item.btn_online {
  border: 1px solid #0d6973;
  box-shadow: 2px 2px 0 #0d6973;
}

.p-plan__item.btn_online .text {
  color: #0d6973;
}

.p-plan__item.btn_online .arrow:before,
.p-plan__item.btn_online .arrow:after {
  background-color: #0d6973;
}

.p-plan__box:nth-of-type(1) {
  margin: 120px 0 0;
}

@media screen and (max-width: 800px) {
  .p-plan__box:nth-of-type(1) {
    padding: 0 0 0 25px;
    margin: 50px 0 0;
  }
}

.p-plan__box:nth-of-type(1) .p-plan__box-head img {
  max-width: 833px;
  margin: 0 auto;
  width: 100%;
}

.p-plan__box:nth-of-type(2) {
  margin: 75px 0 0;
}

@media screen and (max-width: 800px) {
  .p-plan__box:nth-of-type(2) {
    padding: 0 25px 0 0;
    margin: 50px 0 0;
  }
}

.p-plan__box:nth-of-type(2) .p-plan__box-head img {
  max-width: 833px;
  margin: 0 auto;
  width: 100%;
}

.p-plan__box:nth-of-type(3) {
  margin: 77px 0 0;
}

@media screen and (max-width: 800px) {
  .p-plan__box:nth-of-type(3) {
    padding: 0 0 0 25px;
    margin: 50px 0 0;
  }
}

.p-plan__box:nth-of-type(3) .p-plan__box-head img {
  max-width: 828px;
  margin: 0 auto;
  width: 100%;
}

.p-plan__box-body {
  max-width: 800px;
  width: 100%;
  margin: 30px auto 0;
}

@media screen and (max-width: 800px) {
  .p-plan__box-body {
    padding: 0 25px 0 0;
    text-align: center;
  }
}

.p-plan__box-body .c-btn {
  background-color: #0d6973;
}

.p-plan__box-foot {
  max-width: 800px;
  width: 100%;
  margin: 46px auto 0;
}

@media screen and (max-width: 800px) {
  .p-plan__box-foot {
    padding: 0 25px 0 0;
    margin: 25px auto 0;
  }
}

.p-plan__box-item {
  border: 1px solid #0d6973;
  text-align: center;
  position: relative;
  margin: 46px 0 0;
}

@media screen and (max-width: 800px) {
  .p-plan__box-item {
    margin: 15px 0 0;
  }
}

.p-plan__box-item:first-of-type {
  margin: 0;
}

.p-plan__q {
  height: 64px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

@media screen and (max-width: 800px) {
  .p-plan__q {
    height: 32px;
  }
}

.p-plan__q .inner h3 {
  font-size: 18px;
  color: #0d6973;
  font-weight: 700;
}

@media screen and (max-width: 800px) {
  .p-plan__q .inner h3 {
    font-size: 10px;
    letter-spacing: 0.01em;
  }
}

.p-plan__q.is-active .p-plan__icon img {
  transform: rotate(0deg);
}

.p-plan__a {
  padding: 42px 0 40px;
  position: relative;
}

@media screen and (max-width: 800px) {
  .p-plan__a {
    padding: 20px 0;
  }
}

.p-plan__a:before {
  content: "";
  display: block;
  width: 114px;
  height: 1px;
  background-color: #0d6973;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-28.5px, 0);
}

@media screen and (max-width: 800px) {
  .p-plan__a:before {
    width: 57px;
  }
}

.p-plan__a .inner .text > span {
  font-size: 28px;
  font-weight: 700;
  color: #0d6973;
}

@media screen and (max-width: 800px) {
  .p-plan__a .inner .text > span {
    font-size: 20px;
  }
}

.p-plan__a .inner .text > span.is-large {
  font-size: 40px;
  margin: 0 0 0 26px;
}

@media screen and (max-width: 800px) {
  .p-plan__a .inner .text > span.is-large {
    font-size: 26px;
    margin: 0 0 0 6px;
  }
}

.p-plan__a .inner .note {
  font-size: 17px;
  color: #1a1a1a;
  margin: 19px 0 0;
}

@media screen and (max-width: 800px) {
  .p-plan__a .inner .note {
    font-size: 12px;
    margin: 10px 0 0;
  }
}

.p-plan__a .inner .image-1 {
  padding: 0 22px 24px;
  position: relative;
}

@media screen and (max-width: 800px) {
  .p-plan__a .inner .image-1 {
    padding: 0 10px 24px;
  }
}

.p-plan__a .inner .image-1-inner {
  position: relative;
}

.p-plan__a .inner .image-1-text {
  position: absolute;
  width: 210px;
  height: 70px;
  top: 44px;
  right: 30px;
  padding: 0 0 33px;
  color: #000;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 16px;
  z-index: 10;
  font-weight: 700;
}

@media screen and (max-width: 800px) {
  .p-plan__a .inner .image-1-text {
    font-size: 14px;
    width: 41.8650794%;
    height: 26.2357414%;
    left: 50%;
    transform: translate(-50%, 0);
    top: 68.2509506%;
    padding: 0 0 5.254753%;
  }
}

.p-plan__a .inner .btn {
  text-align: center;
  margin: 44px 0 0;
}

@media screen and (max-width: 800px) {
  .p-plan__a .inner .btn {
    margin: 22px 0 0;
  }
}

.p-plan__a .inner .btn .link {
  display: inline-block;
}

.p-plan__a .inner .btn .link img {
  width: 385px;
}

@media screen and (max-width: 800px) {
  .p-plan__a .inner .btn .link img {
    width: 250px;
  }
}

.p-plan__icon {
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 64px;
  height: 64px;
  background-color: #0d6973;
}

@media screen and (max-width: 800px) {
  .p-plan__icon {
    width: 32px;
    height: 32px;
  }
}

.p-plan__icon img {
  width: 32px;
  height: 32px;
  transform: rotate(180deg);
  transition: transform 0.3s ease;
}

@media screen and (max-width: 800px) {
  .p-plan__icon img {
    width: 24px;
    height: 24px;
  }
}

.p-reserve {
  padding: 85px 0 107px;
  text-align: center;
}

@media screen and (max-width: 800px) {
  .p-reserve {
    padding: 50px 25px;
  }
}

.p-reserve__head .title {
  max-width: 800px;
  margin: 0 auto;
  width: 100%;
}

.p-reserve__head > .text {
  font-size: 16px;
  color: #1a1a1a;
}

@media screen and (max-width: 800px) {
  .p-reserve__head > .text {
    font-size: 10px;
    margin: 15px 0 0;
  }
}

.p-reserve__head .coupon {
  margin: 52px auto 0;
  max-width: 530px;
  display: block;
}

@media screen and (max-width: 800px) {
  .p-reserve__head .coupon {
    margin: 18px auto 0;
  }
}

.p-reserve__head .coupon img {
  width: 100%;
}

.p-reserve__head .links {
  margin: 42px 0 0;
  display: flex;
  justify-content: center;
  align-items: center;
}

@media screen and (max-width: 800px) {
  .p-reserve__head .links {
    display: block;
    margin: 23px 0 0;
  }
}

.p-reserve__head .links .link img {
  max-width: 528px;
  width: 100%;
}

.p-reserve__head .links .link .c-btn {
  padding: 0 25px;
}

@media screen and (max-width: 800px) {
  .p-reserve__head .links .link .c-btn {
    margin: 18px 0 0;
  }
}

.p-reserve__body {
  max-width: 900px;
  margin: 50px auto 0;
}

.p-reserve__box {
  border: 1px solid #1a1a1a;
  padding: 40px 60px 55px;
}

@media screen and (max-width: 800px) {
  .p-reserve__box {
    padding: 20px 20px 23px;
  }
}

.p-reserve__box-title {
  text-align: center;
}

.p-reserve__box-title .icon {
  max-width: 46px;
  margin: 0 auto;
  width: 100%;
}

@media screen and (max-width: 800px) {
  .p-reserve__box-title .icon {
    max-width: 23px;
  }
}

.p-reserve__box-title .text {
  font-size: 24px;
  font-weight: 700;
  color: #1a1a1a;
}

@media screen and (max-width: 800px) {
  .p-reserve__box-title .text {
    font-size: 12px;
  }
}

.p-reserve__box-text {
  text-align: left;
  font-size: 17px;
  margin: 50px 0 0;
}

@media screen and (max-width: 800px) {
  .p-reserve__box-text {
    font-size: 10px;
    margin: 25px 0 0;
  }
}

.p-reserve__box-list {
  text-align: left;
  margin: 48px 0 0;
}

@media screen and (max-width: 800px) {
  .p-reserve__box-list {
    margin: 23px 0 0;
  }
}

.p-reserve__box-item {
  font-size: 14px;
}

@media screen and (max-width: 800px) {
  .p-reserve__box-item {
    font-size: 10px;
    line-height: 20px;
  }
}

.p-cpBanner {
  margin: 0 0 37px;
}

.p-plan__box-caption {
  font-size: 12px;
  max-width: 833px;
  margin: 10px auto 0;
  width: 100%;
}

.p-plan__box-caption02 {
  font-size: 12px;
  max-width: 833px;
  margin: 0 auto;
  width: 100%;
}

@media screen and (max-width: 800px) {
  .p-cpBanner {
    margin: 15px 0 0;
  }

  .p-plan__box-caption,
  .p-plan__box-caption02 {
    font-size: 10px;
    width: 90%;
  }
}

.copy {
  cursor: pointer;
}

.cta_text {
  font-size: 20px;
  text-align: center;
}

.ctabtn {
  position: fixed;
  right: 10px;
  bottom: 10px;
  z-index: 100;
  width: 30vw;
  max-width: 400px;
  background-color: #fff;
  border-radius: 10px;
  padding: 10px;
}

.ctabtn.is-hidden {
  visibility: hidden;
  opacity: 0;
}

.cta_text_caption {
  font-size: 14px;
  text-align: center;
}

.pane_caption {
  margin: 0 0 16px;
}

.btn_wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 30px 0 0;
}

.btn_content {
  max-width: 567px;
  margin: 0 auto 20px;
}

.btn_title {
  font-size: 24px !important;
  display: flex;
  margin: 0 0 10px;
}

.btn_title_2 {
  font-size: 24px !important;
  position: relative;
  padding: 0 0 0 10px;
  margin: 0 0 8px;
}

.btn_title_2::before {
  border-left: 8px solid #d3d2d2;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  height: 100%;
  width: 8px;
}

.btn_title span {
  background-color: #40e0d0;
  padding: 6px 10px;
}

.btn_link {
  display: flex;
  justify-content: flex-start;
  width: 100%;
}

.p-ec {
  padding: 0 0 122px;
}

.ec_btn {
  display: flex;
  justify-content: center;
  margin: 10px 0 0;
}

.plan_1 {
  position: relative;
  max-width: 833px;
  margin: 0 auto;
  width: 100%;
}

.plan_1_head {
  font-size: 18px;
  position: absolute;
  top: 140px;
  left: 0;
}

.plan_1_price {
  color: #ec6547;
  font-size: 38px;
  font-weight: bold;
  position: absolute;
  top: 170px;
  left: 0;
}

.plan_1_caption {
  font-size: 18px;
  position: absolute;
  bottom: 104px;
  left: 15px;
}

.plan_2 {
  position: relative;
  max-width: 833px;
  margin: 0 auto;
  width: 100%;
}

.plan_2_price {
  color: #304c7f;
  font-size: 38px;
  font-weight: bold;
  position: absolute;
  top: 163px;
  left: 497px;
}

.plan_2_caption {
  font-size: 14px;
  position: absolute;
  bottom: 194px;
  left: 433px;
}

.show_pc {
  display: block;
}

.show_sp {
  display: none;
}

@media screen and (max-width: 800px) {
  .show_pc {
    display: none;
  }

  .show_sp {
    display: block;
  }

  .ctabtn {
    padding: 10px;
    width: 100%;
    bottom: 0;
    right: 0;
    border-radius: 0;
  }

  .ctabtn_inner {
    display: flex;
  }

  .txt_webentry {
    width: 60%;
    margin: 0 auto;
  }

  .cta_text {
    font-size: 16px;
  }

  .cta_text_caption {
    font-size: 12px;
    margin: 0 0 10px;
  }

  .btn_wrap {
    padding: 10px 0 0;
  }

  .btn_title {
    font-size: 18px !important;
  }

  .btn_title_2 {
    font-size: 18px !important;
  }

  .p-ec {
    padding: 0 0 12px;
  }

  .plan_1_head {
    font-size: 2.75vw;
    top: 16.25vw;
  }

  .plan_1_price {
    font-size: 5vw;
    top: 21vw;
  }

  .plan_1_caption {
    font-size: 2.25vw;
    bottom: 13vw;
    left: 2.675vw;
  }

  .plan_2 {
    padding: 0 25px 0 0;
  }

  .p-plan__box:nth-of-type(2) {
    padding: 0;
    margin: 50px 0 0;
  }

  .plan_2_price {
    font-size: 5vw;
    top: 22.7vw;
    left: 65.85vw;
  }

  .plan_2_caption {
    font-size: 1.75vw;
    bottom: 26.25vw;
    left: 53vw;
  }
}

@media screen and (max-width: 540px) {
  .plan_1_price {
    font-size: 4.7vw;
  }
  
  .plan_2_price {
    font-size: 4.7vw;
    top: 22.2vw;
    left: 63.85vw;
  }

  .plan_2_caption {
    bottom: 21.25vw;
    left: 52vw;
  }
}

.p-plan-file {
  color: #000;
  display: flex;
  align-items: center;
  font-size: 14px;
  max-width: 833px;
  margin: 12px auto 0;
  width: 100%;
}

.p-plan-file a {
  color: #000;
  display: flex;
  align-items: center;
}

.p-plan-file .pdf {
  margin: 0 4px 0 0;
  height: auto;
  width: 25px;
}

.p-plan-file .arrow {
  margin: 0 6px 0 -2px;
  width: 24px;
}

@media screen and (max-width: 800px) {
  .p-plan-file {
    font-size: 12px;
    margin: 8px auto 0;
    width: 90%;
  }

  .p-plan-file .pdf {
    margin: 0 4px 0 0;
    height: auto;
    width: 20px;
  }

  .p-plan-file .arrow {
    width: 20px;
  }
}
