@charset "UTF-8";
/*
 * foundation（基本の設定）
 * -------------------------------------------------------------------
 */
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

/*
html5shiv.js HTML5の新要素で、ブロックボックスとしてレンダリングさせる要素に「display: block」を指定します。
*/
article, aside, figure, footer, header, hgroup, nav, section {
  display: block;
}

:root {
  --arrow: 1.0rem;
}

:root {
  --font-size-10: 1.0rem;
  --font-size-11: 1.1rem;
  --font-size-12: 1.2rem;
  --font-size-13: 1.3rem;
  --font-size-14: 1.4rem;
  --font-size-15: 1.5rem;
  --font-size-16: 1.6rem;
  --font-size-18: 1.8rem;
  --font-size-20: 2.0rem;
  --font-size-22: 2.2rem;
  --font-size-24: 2.4rem;
  --font-size-28: 2.8rem;
  --font-size-30: 3.0rem;
  --font-size-32: 3.2rem;
  --font-size-36: 3.6rem;
  --font-size-40: 4.0rem;
  --font-size-72: 7.2rem;
  --font-size-80: 8.0rem;
}

@media screen and (max-width: 428px) {
  :root {
    --font-size-10: 1.0rem;
    --font-size-11: 1.1rem;
    --font-size-12: 1.2rem;
    --font-size-13: 1.2rem;
    --font-size-14: 1.3rem;
    --font-size-15: 1.4rem;
    --font-size-16: 1.4rem;
    --font-size-18: 1.6rem;
    --font-size-20: 1.8rem;
    --font-size-22: 2.0rem;
    --font-size-24: 2.0rem;
    --font-size-28: 2.0rem;
    --font-size-30: 2.0rem;
    --font-size-32: 2.0rem;
    --font-size-36: 2.4rem;
    --font-size-40: 3.2rem;
    --font-size-72: 4.0rem;
    --font-size-80: 4.0rem;
  }
}
/*
 * loader
 * -------------------------------------------------------------------
 */
@keyframes fadeZoom {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.1);
  }
}
.slick-animation {
  animation: fadeZoom 8s linear 0s normal both;
}

/*
 * スクロールフェードイン
 * -------------------------------------------------------------------
 */
.fadein {
  opacity: 0;
  transform: translate(0, 0);
  transition: all 1s;
}
.fadein.fadein-left {
  transform: translate(-30px, 0);
}
.fadein.fadein-right {
  transform: translate(30px, 0);
}
.fadein.fadein-up {
  transform: translate(0, -30px);
}
.fadein.fadein-bottom {
  transform: translate(0, 30px);
}
.fadein.scrollin {
  opacity: 1 !important;
  transform: translate(0, 0) !important;
}

html {
  font-size: 62.5%;
}

*, *::before, *::after {
  box-sizing: border-box;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
}

ul li {
  list-style-type: none;
}

ol li {
  list-style-type: none;
}

:after, :before {
  box-sizing: inherit;
  text-decoration: inherit;
  vertical-align: inherit;
}

a {
  text-decoration: none;
  color: inherit;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

body {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: var(--font-size-16);
  letter-spacing: 0.04em;
  line-height: 1.6;
  color: #2F261B;
  background-color: #F8F7F0;
}

.en {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  letter-spacing: 0.04em;
}

.wrap {
  overflow: hidden;
}

.pc {
  display: block !important;
}

.tb {
  display: none !important;
}

.sp {
  display: none !important;
}

@media screen and (max-width: 480px) {
  .pc {
    display: none !important;
  }
  .tb {
    display: none !important;
  }
  .sp {
    display: block !important;
  }
}
@media screen and (max-width: 1024px) {
  .pc {
    display: none !important;
  }
  .tb {
    display: block !important;
  }
  .sp {
    display: none !important;
  }
}
.slider {
  display: none;
}

.slider.slick-initialized {
  display: block;
}

.grecaptcha-badge {
  visibility: hidden;
}

/*
 * layout（レイアウト部分の管理）
 * -------------------------------------------------------------------
 */
.l-loader {
  z-index: 100030;
  position: fixed;
  width: 100%;
  height: 100vh;
  background-color: #F8F7F0;
  overflow: hidden;
}
.l-loader::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 104px;
  background-image: url(../images/common/loading.svg);
  background-repeat: repeat-x;
  background-position: 0 0;
  background-size: 450px auto;
  animation: loop 15s linear infinite;
  z-index: -1;
}
@media screen and (max-width: 480px) {
  .l-loader::before {
    height: 74px;
    background-size: 320px auto;
  }
}
@keyframes loop {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -560px 0;
  }
}

.hide {
  opacity: 0;
  pointer-events: none;
  transition: opacity 500ms;
}

.l-header {
  z-index: 10010;
}
.l-header__container {
  width: 90%;
  height: 140px;
  margin: 0 auto;
  padding: 40px 0 0;
  position: relative;
}
@media screen and (max-width: 480px) {
  .l-header__container {
    height: 100px;
  }
}
@media screen and (max-width: 1280px) {
  .l-header__nav {
    display: none;
  }
}
.l-header__fixed {
  position: fixed;
  top: 26px;
  right: 5%;
  display: flex;
  z-index: 100020;
}
.l-header__logo {
  position: absolute;
  left: 5%;
  top: -10vh;
  display: block;
  width: 14.5833333333vw;
  min-width: 210px;
  height: -moz-fit-content;
  height: fit-content;
}
@media screen and (max-width: 480px) {
  .l-header__logo {
    min-width: 160px;
    top: -7vh;
  }
}
.l-header__sub {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 40px;
}
.l-header__sub li {
  margin-left: 16px;
  transition: all 0.2s;
}
.l-header__sub li a:hover {
  color: #F5743C;
  transition: all 0.2s;
}
.l-header__sub li a:hover svg {
  fill: #F5743C;
  transition: all 0.2s;
}
.l-header__sub li svg {
  width: 28px;
  fill: #2F261B;
  transition: all 0.2s;
}
.l-header__main {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  padding-right: 280px;
}
.l-header__main li {
  margin-right: 32px;
  transition: all 0.2s;
}
.l-header__main li a:hover {
  color: #F5743C;
  transition: all 0.2s;
}
.l-header__main li .en {
  font-size: var(--font-size-18);
  font-weight: 800;
  line-height: 1;
}
.l-header__main-head {
  display: flex;
  justify-content: space-between;
}
.l-header__main-head .ja {
  font-size: var(--font-size-10);
  font-weight: 700;
  letter-spacing: 0.08em;
  text-align: center;
  line-height: 1;
}
.l-header__main-head .num {
  font-family: montserrat, sans-serif;
  font-size: var(--font-size-10);
  font-weight: 700;
  line-height: 1;
}

.page-id-1056 .l-header__logo {
  display: none !important;
}

body:not(.page-id-1056) .l-header__logo {
  display: block;
  min-width: 300px;
  top: 26px;
  left: 0%;
}
@media screen and (max-width: 480px) {
  body:not(.page-id-1056) .l-header__logo {
    min-width: 200px;
    top: 12px;
  }
}
body:not(.page-id-1056) .l-header__container {
  height: 140px;
}
@media screen and (max-width: 1024px) {
  body:not(.page-id-1056) .l-header__container {
    height: 140px;
  }
}
@media screen and (max-width: 480px) {
  body:not(.page-id-1056) .l-header__container {
    height: 86px;
  }
}

.l-drawer__btn {
  z-index: 100020;
  padding: 17px 24px;
  background-color: #2F261B;
  border: 2px solid #2F261B;
  border-radius: 50px;
  color: #ffffff;
  position: relative;
  line-height: 1;
  cursor: pointer;
}
@media screen and (max-width: 480px) {
  .l-drawer__btn {
    padding: 8px 14px;
  }
}
.l-drawer__btn {
  transition: all 0.2s;
}
.l-drawer__btn:hover {
  background-color: #ffffff;
  border: 2px solid #2F261B;
  color: #2F261B;
  transition: all 0.2s;
}
.l-drawer__btn.open span:nth-child(1) {
  top: 28px;
  transform: rotate(-45deg);
}
.l-drawer__btn.open span:nth-child(2) {
  display: none;
  transition: 0.2s;
}
.l-drawer__btn.open span:nth-child(3) {
  top: 28px;
  transform: rotate(45deg);
}
.l-drawer__container {
  z-index: 100019;
  background-color: #E4DCD0;
  position: fixed;
  top: 0;
  right: 0;
  height: 100vh;
  overflow-y: auto;
  padding: 4%;
  transform: translateX(100%);
  transition: transform 0.4s ease;
  opacity: 1;
  width: 480px;
}
@media screen and (max-width: 480px) {
  .l-drawer__container {
    width: 100%;
  }
}
.l-drawer__container.open {
  transform: translateX(0);
}
.l-drawer .open {
  transition: all 0.2s;
  opacity: 1;
  pointer-events: unset;
}
.l-drawer__logo {
  width: 100%;
  max-width: 220px;
  margin: 0 auto 40px 0;
}
.l-drawer__nav {
  background-color: #FAF8F2;
  margin-bottom: 16px;
}
.l-drawer__nav.no-toggle .l-drawer__nav__body {
  display: block !important;
}
.l-drawer__nav.no-toggle .l-drawer__nav__icon {
  display: none;
}
.l-drawer__nav__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 16px;
  border-bottom: 1px solid #2F261B;
}
.l-drawer__nav__head > p {
  font-size: var(--font-size-16);
  font-weight: 700;
}
.l-drawer__nav__icon {
  display: inline-block;
  position: relative;
  width: 18px;
  height: 18px;
  border: 2px solid #2F261B;
  border-radius: 50%;
}
.l-drawer__nav__icon::before {
  content: "";
  background: #2F261B;
  width: 8px;
  height: 2px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -4px;
  margin-top: -1px;
  display: block;
}
.l-drawer__nav__icon::after {
  content: "";
  background: #2F261B;
  width: 8px;
  height: 2px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -4px;
  margin-top: -1px;
  display: block;
  transform: rotate(90deg);
  transition: all 0.2s;
}
.l-drawer__nav__icon.open::after {
  transform: rotate(0deg);
  transition: all 0.2s;
}
.l-drawer__nav__body {
  padding: 8px 16px;
  display: none;
}
.l-drawer__nav__body .cattitle {
  font-size: var(--font-size-13);
  font-weight: 700;
  margin: 16px 0 8px 0;
}
.l-drawer__nav__body .social {
  margin-top: 16px;
}
.l-drawer__nav__body .social li a {
  display: flex;
  align-items: center;
  margin-bottom: 8px;
  transition: all 0.2s;
  width: -moz-fit-content;
  width: fit-content;
}
.l-drawer__nav__body .social li a:hover {
  color: #F5743C;
  transition: all 0.2s;
}
.l-drawer__nav__body .social li a:hover svg {
  fill: #F5743C;
  transition: all 0.2s;
}
.l-drawer__nav__body .social li a svg {
  width: 24px;
  fill: #2F261B;
  margin-right: 8px;
  transition: all 0.2s;
}
.l-drawer__nav__body .social li a p {
  font-size: var(--font-size-14);
}
.l-drawer__nav__body .c-btn__large01 {
  margin: 16px 0;
}
.l-drawer__nav__body .c-btn__large01 a {
  max-width: 360px;
  width: 100%;
  padding: 12px 32px;
}
.l-drawer__nav__body .c-btn__large01 a .text {
  line-height: 1.4;
  text-align: center;
}
.l-drawer__nav__body .c-btn__large02 {
  margin: 16px 0;
}
.l-drawer__nav__body .c-btn__large02 a {
  max-width: 360px;
  width: 100%;
  padding: 12px 32px;
}
.l-drawer__nav__body .c-btn__large02 a .text {
  line-height: 1.4;
  text-align: center;
}

.l-main {
  position: relative;
  z-index: 10;
}

.l-footer {
  position: relative;
  background-color: #F5743C;
  color: #ffffff;
  padding: 0 0 16px 0;
}
.l-footer__container {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 1024px) {
  .l-footer__container {
    display: block;
  }
}
.l-footer__logo {
  width: 200px;
}
@media screen and (max-width: 1024px) {
  .l-footer__logo {
    margin: 0 auto 40px 0;
  }
}
.l-footer__main {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin-bottom: 16px;
}
@media screen and (max-width: 1024px) {
  .l-footer__main {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin-bottom: 0;
  }
}
.l-footer__main li {
  margin: 0 0 0 32px;
}
@media screen and (max-width: 1024px) {
  .l-footer__main li {
    margin: 0 16px 16px 0;
  }
}
.l-footer__main li:last-child {
  margin-right: 0;
}
.l-footer__main li a {
  transition: all 0.2s;
}
.l-footer__main li a:hover {
  color: #2F261B;
  transition: all 0.2s;
}
.l-footer__main li .en {
  font-size: var(--font-size-18);
  font-weight: 800;
  line-height: 1;
}
.l-footer__main-head {
  display: flex;
  justify-content: space-between;
}
.l-footer__main-head .ja {
  font-size: var(--font-size-10);
  font-weight: 700;
  letter-spacing: 0.08em;
  text-align: center;
  line-height: 1;
}
.l-footer__main-head .num {
  font-family: montserrat, sans-serif;
  font-size: var(--font-size-10);
  font-weight: 700;
  line-height: 1;
}
.l-footer__main .c-btn__main {
  width: 160px;
  padding: 6px 0px 12px 0px;
}
.l-footer__main .c-btn__main::after {
  content: unset;
}
.l-footer__main .c-btn__main .ja {
  font-size: var(--font-size-10);
}
.l-footer__main .c-btn__main .en {
  font-size: var(--font-size-18);
  font-weight: 800;
  line-height: 1;
}
.l-footer__sub {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 40px;
}
@media screen and (max-width: 1024px) {
  .l-footer__sub {
    justify-content: flex-start;
    margin-bottom: 8px;
  }
}
.l-footer__sub li {
  margin-left: 16px;
  transition: all 0.2s;
}
.l-footer__sub li:first-child {
  margin-left: 0;
}
.l-footer__sub li:hover {
  color: #2F261B;
  transition: all 0.2s;
}
.l-footer__sub li:hover svg {
  fill: #2F261B;
  transition: all 0.2s;
}
.l-footer__sub li svg {
  width: 28px;
  fill: #ffffff;
  transition: all 0.2s;
}
.l-footer__privacy {
  display: block;
  text-align: right;
  font-size: var(--font-size-12);
  margin-bottom: 8px;
  transition: all 0.2s;
}
.l-footer__privacy:hover {
  color: #2F261B;
  transition: all 0.2s;
}
@media screen and (max-width: 480px) {
  .l-footer__privacy {
    text-align: center;
  }
}
.l-footer__privacy {
  text-align: right;
  font-size: var(--font-size-12);
  margin-bottom: 8px;
}
.l-footer__copyright {
  display: block;
  text-align: right;
  font-size: var(--font-size-12);
}

/*
 * object/project（各ページのモジュール管理）
 * -------------------------------------------------------------------
 */
.p-top-mainvisual {
  z-index: 10;
  position: relative;
}
.p-top-mainvisual__container {
  width: 100%;
  padding: 2% auto 160px;
  position: relative;
  height: 84vh;
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__container {
    height: 87vh;
  }
}
.p-top-mainvisual__wave {
  width: 100%;
  margin: 0;
  padding: 0;
  position: absolute;
  bottom: 0;
}
.p-top-mainvisual__wave .waves {
  position: relative;
  width: 100%;
  height: 100px;
  margin-bottom: -7px;
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__wave .waves {
    height: 70px;
  }
}
.p-top-mainvisual__wave .parallax > use {
  animation: move-forever 25s cubic-bezier(0.55, 0.5, 0.45, 0.5) infinite;
}
.p-top-mainvisual__wave .parallax > use:nth-child(1) {
  animation-delay: -2s;
  animation-duration: 8s;
  fill: #E4DCD0;
}
.p-top-mainvisual__wave .parallax > use:nth-child(2) {
  animation-delay: -3s;
  animation-duration: 10s;
  fill: rgba(228, 220, 208, 0.5);
}
.p-top-mainvisual__wave .parallax > use:nth-child(3) {
  animation-delay: -4s;
  animation-duration: 15s;
  fill: rgba(228, 220, 208, 0.5);
}
@keyframes move-forever {
  0% {
    transform: translate3d(85px, 0, 0);
  }
  100% {
    transform: translate3d(-90px, 0, 0);
  }
}
.p-top-mainvisual__logo {
  position: absolute;
  left: 5%;
  top: -10vh;
  display: block;
  width: 14.5833333333vw;
  min-width: 210px;
  height: -moz-fit-content;
  height: fit-content;
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__logo {
    min-width: 160px;
    top: -7vh;
  }
}
.p-top-mainvisual__bike {
  width: 16.6666666667vw;
  min-width: 240px;
  height: 11.3888888889vw;
  min-height: 164px;
  position: absolute;
  bottom: -2%;
  left: 8.3333333333%;
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__bike {
    min-width: 330px;
    min-height: 228px;
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__bike {
    min-width: 220px;
    min-height: 154px;
  }
}
.p-top-mainvisual__bike .frame {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.p-top-mainvisual__bike .frame1 {
  animation: switchFrames 2s steps(1) infinite;
}
.p-top-mainvisual__bike .frame2 {
  animation: switchFrames 2s steps(1) infinite;
  animation-delay: 1s;
  top: 3px;
}
@keyframes switchFrames {
  0%, 49.9% {
    opacity: 1;
  }
  50%, 100% {
    opacity: 0;
  }
}
.p-top-mainvisual__bike__next {
  position: absolute;
  top: -12%;
  right: -30%;
  z-index: 2;
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__bike__next {
    top: -2%;
    right: -18%;
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__bike__next {
    top: -10%;
    right: -28%;
  }
}
.p-top-mainvisual__bike__next a {
  display: block;
  width: 110px;
  height: 110px;
  background-color: #F5743C;
  border-radius: 50%;
  position: relative;
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__bike__next a {
    width: 100px;
    height: 100px;
  }
}
.p-top-mainvisual__bike__next a:hover .bottom {
  text-decoration: underline;
}
.p-top-mainvisual__bike__next a:before {
  content: "";
  position: absolute;
  bottom: 4px;
  left: -9px;
  border: 10px solid transparent;
  border-left: 16px solid #F5743C;
  z-index: 0;
  transform: rotate(140deg);
}
.p-top-mainvisual__bike__next a .wrap {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: absolute;
  top: 52%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.p-top-mainvisual__bike__next a .wrap p {
  color: #ffffff;
  text-align: center;
}
.p-top-mainvisual__bike__next a .wrap p .head::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  -webkit-mask-image: url(../images/common/icon_pin.svg);
          mask-image: url(../images/common/icon_pin.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #ffffff;
  margin: 0 auto 3px;
}
.p-top-mainvisual__bike__next a .wrap p .body {
  font-size: var(--font-size-14);
  font-weight: 700;
  margin-bottom: 2px;
  display: block;
}
.p-top-mainvisual__bike__next a .wrap p .bottom {
  font-size: var(--font-size-12);
  font-weight: 500;
  display: block;
  line-height: 1.2;
  margin-bottom: 8px;
}
.p-top-mainvisual__copy {
  position: absolute;
  right: 8.3333333333%;
  bottom: 0%;
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__copy {
    bottom: 26%;
    left: 8.3333333333%;
    right: unset;
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__copy {
    bottom: 27%;
  }
}
.p-top-mainvisual__copy img {
  width: 27.0833333333vw;
  min-width: 390px;
  height: 7.2222222222vw;
  min-height: 104px;
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__copy img {
    min-width: 260px;
    min-height: 72px;
  }
}
.p-top-mainvisual__layer1, .p-top-mainvisual__layer2, .p-top-mainvisual__layer3 {
  position: absolute; /* 子要素のabsoluteを削除するため、relativeにする必要もなくなりますが、他のスタイルとの兼ね合いで残しておくことも可能です */
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  display: flex; /* ここをflexに変更 */
  flex-wrap: nowrap; /* 折り返しを禁止 */
  overflow: hidden; /* 親要素からはみ出た部分を隠す */
  will-change: transform;
}
.p-top-mainvisual__layer1 .mv-slider__item, .p-top-mainvisual__layer2 .mv-slider__item, .p-top-mainvisual__layer3 .mv-slider__item {
  will-change: transform;
  flex-shrink: 0; /* 要素が縮まないようにする */
}
.p-top-mainvisual__layer1 .mv-slider__item img, .p-top-mainvisual__layer2 .mv-slider__item img, .p-top-mainvisual__layer3 .mv-slider__item img {
  border-radius: 16px;
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__layer1 .mv-slider__item img, .p-top-mainvisual__layer2 .mv-slider__item img, .p-top-mainvisual__layer3 .mv-slider__item img {
    border-radius: 8px;
  }
}
.p-top-mainvisual__layer1 {
  z-index: -1;
}
.p-top-mainvisual__layer1 .mv-slider__item:nth-child(1) {
  width: 24.3055555556vw;
  margin-top: 33.3333333333vh;
  margin-right: -1.3888888889vw;
  padding-left: 8.3333333333vw;
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(1) {
    width: 45.5729166667vw;
    margin-top: 24.4140625vh;
    margin-right: -2.6041666667vw;
    padding-left: 15.625vw;
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(1) {
    width: 84.5410628019vw;
    margin-top: 30.7881773399vh;
    margin-right: -4.8309178744vw;
    padding-left: 28.9855072464vw;
  }
}
.p-top-mainvisual__layer1 .mv-slider__item:nth-child(2) {
  width: 22.2222222222vw;
  margin-top: 0vh;
  margin-right: 10.4166666667vw;
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(2) {
    width: 41.6666666667vw;
    margin-top: 0vh;
    margin-right: 19.53125vw;
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(2) {
    width: 77.2946859903vw;
    margin-top: 0vh;
    margin-right: 36.231884058vw;
  }
}
.p-top-mainvisual__layer1 .mv-slider__item:nth-child(3) {
  width: 19.4444444444vw;
  margin-top: 37.3333333333vh;
  margin-right: 1.1111111111vw;
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(3) {
    width: 36.4583333333vw;
    margin-top: 27.34375vh;
    margin-right: 2.0833333333vw;
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(3) {
    width: 67.6328502415vw;
    margin-top: 34.4827586207vh;
    margin-right: 3.8647342995vw;
  }
}
.p-top-mainvisual__layer1 .mv-slider__item:nth-child(4) {
  width: 22.2222222222vw;
  margin-top: 3.2vh;
  margin-right: 12.2222222222vw;
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(4) {
    width: 41.6666666667vw;
    margin-top: 2.34375vh;
    margin-right: 22.9166666667vw;
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(4) {
    width: 77.2946859903vw;
    margin-top: 2.9556650246vh;
    margin-right: 42.5120772947vw;
  }
}
.p-top-mainvisual__layer1 .mv-slider__item:nth-child(5) {
  width: 20.8333333333vw;
  margin-top: 0vh;
  margin-right: -9.7222222222vw;
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(5) {
    width: 39.0625vw;
    margin-top: 0vh;
    margin-right: -18.2291666667vw;
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(5) {
    width: 72.4637681159vw;
    margin-top: 0vh;
    margin-right: -33.8164251208vw;
  }
}
.p-top-mainvisual__layer1 .mv-slider__item:nth-child(6) {
  width: 20.8333333333vw;
  margin-top: 40vh;
  margin-right: 9.7222222222vw;
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(6) {
    width: 39.0625vw;
    margin-top: 29.296875vh;
    margin-right: 18.2291666667vw;
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(6) {
    width: 72.4637681159vw;
    margin-top: 36.9458128079vh;
    margin-right: 33.8164251208vw;
  }
}
.p-top-mainvisual__layer1 .mv-slider__item:nth-child(7) {
  width: 16.6666666667vw;
  margin-top: 42.6666666667vh;
  margin-right: -0.6944444444vw;
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(7) {
    width: 31.25vw;
    margin-top: 31.25vh;
    margin-right: -1.3020833333vw;
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(7) {
    width: 57.9710144928vw;
    margin-top: 39.4088669951vh;
    margin-right: -2.4154589372vw;
  }
}
.p-top-mainvisual__layer1 .mv-slider__item:nth-child(8) {
  width: 23.6111111111vw;
  margin-top: 3.2vh;
  margin-right: 17.5vw;
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(8) {
    width: 44.2708333333vw;
    margin-top: 2.34375vh;
    margin-right: 32.8125vw;
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(8) {
    width: 82.1256038647vw;
    margin-top: 2.9556650246vh;
    margin-right: 60.8695652174vw;
  }
}
.p-top-mainvisual__layer1 .mv-slider__item:nth-child(9) {
  width: 23.6111111111vw;
  margin-top: 6.4vh;
  margin-right: -6.9444444444vw;
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(9) {
    width: 44.2708333333vw;
    margin-top: 4.6875vh;
    margin-right: -13.0208333333vw;
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(9) {
    width: 82.1256038647vw;
    margin-top: 5.9113300493vh;
    margin-right: -24.154589372vw;
  }
}
.p-top-mainvisual__layer1 .mv-slider__item:nth-child(10) {
  width: 20.8333333333vw;
  margin-top: 42.1333333333vh;
  margin-right: 20.1388888889vw;
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(10) {
    width: 39.0625vw;
    margin-top: 30.859375vh;
    margin-right: 37.7604166667vw;
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(10) {
    width: 72.4637681159vw;
    margin-top: 38.9162561576vh;
    margin-right: 70.0483091787vw;
  }
}
.p-top-mainvisual__layer1 .mv-slider__item:nth-child(11) {
  width: 22.2222222222vw;
  margin-top: 0vh;
  margin-right: -9.0277777778vw;
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(11) {
    width: 41.6666666667vw;
    margin-top: 0vh;
    margin-right: -16.9270833333vw;
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(11) {
    width: 77.2946859903vw;
    margin-top: 0vh;
    margin-right: -31.4009661836vw;
  }
}
.p-top-mainvisual__layer1 .mv-slider__item:nth-child(12) {
  width: 22.2222222222vw;
  margin-top: 36vh;
  margin-right: 13.1944444444vw;
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(12) {
    width: 41.6666666667vw;
    margin-top: 26.3671875vh;
    margin-right: 24.7395833333vw;
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(12) {
    width: 77.2946859903vw;
    margin-top: 33.2512315271vh;
    margin-right: 45.8937198068vw;
  }
}
.p-top-mainvisual__layer1 .mv-slider__item:nth-child(13) {
  width: 20.8333333333vw;
  margin-top: 36vh;
  margin-right: -2.7777777778vw;
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(13) {
    width: 39.0625vw;
    margin-top: 26.3671875vh;
    margin-right: -5.2083333333vw;
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(13) {
    width: 72.4637681159vw;
    margin-top: 33.2512315271vh;
    margin-right: -9.6618357488vw;
  }
}
.p-top-mainvisual__layer1 .mv-slider__item:nth-child(14) {
  width: 19.4444444444vw;
  margin-top: 0vh;
  margin-right: 11.1111111111vw;
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(14) {
    width: 36.4583333333vw;
    margin-top: 0vh;
    margin-right: 20.8333333333vw;
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(14) {
    width: 67.6328502415vw;
    margin-top: 0vh;
    margin-right: 38.6473429952vw;
  }
}
.p-top-mainvisual__layer1 .mv-slider__item:nth-child(15) {
  width: 16.6666666667vw;
  margin-top: 41.3333333333vh;
  margin-right: -11.1111111111vw;
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(15) {
    width: 31.25vw;
    margin-top: 30.2734375vh;
    margin-right: -20.8333333333vw;
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(15) {
    width: 57.9710144928vw;
    margin-top: 38.1773399015vh;
    margin-right: -38.6473429952vw;
  }
}
.p-top-mainvisual__layer1 .mv-slider__item:nth-child(16) {
  width: 23.6111111111vw;
  margin-top: 4.2666666667vh;
  margin-right: 22.2222222222vw;
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(16) {
    width: 44.2708333333vw;
    margin-top: 3.125vh;
    margin-right: 41.6666666667vw;
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__layer1 .mv-slider__item:nth-child(16) {
    width: 82.1256038647vw;
    margin-top: 3.9408866995vh;
    margin-right: 77.2946859903vw;
  }
}
.p-top-mainvisual__layer2 {
  z-index: -2;
}
.p-top-mainvisual__layer2 .mv-slider__item {
  filter: blur(12px);
  opacity: 0.8;
}
.p-top-mainvisual__layer2 .mv-slider__item:nth-child(1) {
  width: 50vw;
  margin-top: 46vh;
  margin-right: -2.0833333333vw;
  padding-left: 36.1111111111vw;
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__layer2 .mv-slider__item:nth-child(1) {
    width: 93.75vw;
    margin-top: 33.69140625vh;
    margin-right: -3.90625vw;
    padding-left: 67.7083333333vw;
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__layer2 .mv-slider__item:nth-child(1) {
    width: 173.9130434783vw;
    margin-top: 42.4876847291vh;
    margin-right: -7.2463768116vw;
    padding-left: 125.6038647343vw;
  }
}
.p-top-mainvisual__layer2 .mv-slider__item:nth-child(2) {
  width: 13.8888888889vw;
  margin-top: 4.8vh;
  margin-right: calc(25vw - 10px);
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__layer2 .mv-slider__item:nth-child(2) {
    width: 26.0416666667vw;
    margin-top: 3.515625vh;
    margin-right: calc(46.875vw - 10px);
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__layer2 .mv-slider__item:nth-child(2) {
    width: 48.309178744vw;
    margin-top: 4.4334975369vh;
    margin-right: calc(53.9730134933vw - 10px);
  }
}
.p-top-mainvisual__layer2 .mv-slider__item:nth-child(3) {
  width: 15.2777777778vw;
  margin-top: 44.9333333333vh;
  margin-right: calc(26.3888888889vw - 20px);
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__layer2 .mv-slider__item:nth-child(3) {
    width: 28.6458333333vw;
    margin-top: 32.91015625vh;
    margin-right: calc(49.4791666667vw - 20px);
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__layer2 .mv-slider__item:nth-child(3) {
    width: 53.1400966184vw;
    margin-top: 41.5024630542vh;
    margin-right: calc(91.7874396135vw - 20px);
  }
}
.p-top-mainvisual__layer2 .mv-slider__item:nth-child(4) {
  width: 16.6666666667vw;
  margin-top: 8vh;
  margin-right: calc(47.2222222222vw - 30px);
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__layer2 .mv-slider__item:nth-child(4) {
    width: 31.25vw;
    margin-top: 5.859375vh;
    margin-right: calc(88.5416666667vw - 30px);
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__layer2 .mv-slider__item:nth-child(4) {
    width: 57.9710144928vw;
    margin-top: 7.3891625616vh;
    margin-right: calc(164.2512077295vw - 30px);
  }
}
.p-top-mainvisual__layer2 .mv-slider__item:nth-child(5) {
  width: 16.6666666667vw;
  margin-top: 44vh;
  margin-right: calc(32.6388888889vw - 40px);
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__layer2 .mv-slider__item:nth-child(5) {
    width: 31.25vw;
    margin-top: 32.2265625vh;
    margin-right: calc(61.1979166667vw - 40px);
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__layer2 .mv-slider__item:nth-child(5) {
    width: 57.9710144928vw;
    margin-top: 40.6403940887vh;
    margin-right: calc(113.5265700483vw - 40px);
  }
}
.p-top-mainvisual__layer2 .mv-slider__item:nth-child(6) {
  width: 19.4444444444vw;
  margin-top: 2.6666666667vh;
  margin-right: calc(1.3888888889vw - 50px);
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__layer2 .mv-slider__item:nth-child(6) {
    width: 36.4583333333vw;
    margin-top: 1.953125vh;
    margin-right: calc(2.6041666667vw - 50px);
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__layer2 .mv-slider__item:nth-child(6) {
    width: 67.6328502415vw;
    margin-top: 2.4630541872vh;
    margin-right: calc(4.8309178744vw - 50px);
  }
}
.p-top-mainvisual__layer2 .mv-slider__item:nth-child(7) {
  width: 16.6666666667vw;
  margin-top: 41.3333333333vh;
  margin-right: calc(39.5833333333vw - 60px);
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__layer2 .mv-slider__item:nth-child(7) {
    width: 31.25vw;
    margin-top: 30.2734375vh;
    margin-right: calc(74.21875vw - 60px);
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__layer2 .mv-slider__item:nth-child(7) {
    width: 57.9710144928vw;
    margin-top: 38.1773399015vh;
    margin-right: calc(137.6811594203vw - 60px);
  }
}
.p-top-mainvisual__layer2 .mv-slider__item:nth-child(8) {
  width: 18.0555555556vw;
  margin-top: 8vh;
  margin-right: calc(25.4166666667vw - 70px);
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__layer2 .mv-slider__item:nth-child(8) {
    width: 33.8541666667vw;
    margin-top: 5.859375vh;
    margin-right: calc(47.65625vw - 70px);
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__layer2 .mv-slider__item:nth-child(8) {
    width: 62.8019323671vw;
    margin-top: 7.3891625616vh;
    margin-right: calc(88.4057971014vw - 70px);
  }
}
.p-top-mainvisual__layer2 .mv-slider__item:nth-child(9) {
  width: 12.5vw;
  margin-top: 45.3333333333vh;
  margin-right: calc(42.3611111111vw - 80px);
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__layer2 .mv-slider__item:nth-child(9) {
    width: 23.4375vw;
    margin-top: 33.203125vh;
    margin-right: calc(79.4270833333vw - 80px);
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__layer2 .mv-slider__item:nth-child(9) {
    width: 43.4782608696vw;
    margin-top: 41.8719211823vh;
    margin-right: calc(147.3429951691vw - 80px);
  }
}
.p-top-mainvisual__layer2 .mv-slider__item:nth-child(10) {
  width: 15.2777777778vw;
  margin-top: 41.3333333333vh;
  margin-right: calc(47.2222222222vw - 90px);
}
@media screen and (max-width: 1024px) {
  .p-top-mainvisual__layer2 .mv-slider__item:nth-child(10) {
    width: 28.6458333333vw;
    margin-top: 30.2734375vh;
    margin-right: calc(88.5416666667vw - 90px);
  }
}
@media screen and (max-width: 480px) {
  .p-top-mainvisual__layer2 .mv-slider__item:nth-child(10) {
    width: 53.1400966184vw;
    margin-top: 38.1773399015vh;
    margin-right: calc(164.2512077295vw - 90px);
  }
}

.p-top-about {
  background-color: #E4DCD0;
  position: sticky;
  z-index: -2;
  overflow: hidden;
}
.p-top-about__container {
  width: 84%;
  padding: 100px 0 140px 8%;
  margin: 0 auto;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .p-top-about__container {
    padding: 80px 0 270px;
  }
}
@media screen and (max-width: 480px) {
  .p-top-about__container {
    display: block;
    padding: 56px 0 350px;
  }
}
.p-top-about .c-copy01__bgcolor {
  margin-bottom: 24px;
}
.p-top-about__body {
  width: 500px;
  margin-bottom: 72px;
}
@media screen and (max-width: 1024px) {
  .p-top-about__body {
    width: 74%;
  }
}
@media screen and (max-width: 480px) {
  .p-top-about__body {
    width: 100%;
    margin-bottom: 40px;
  }
}
.p-top-about__body p {
  line-height: 2.4;
  background-color: #ffffff;
  padding: 2px 8px;
  display: inline;
  -webkit-box-decoration-break: clone;
          box-decoration-break: clone;
  margin-bottom: 16px;
}
@media screen and (max-width: 480px) {
  .p-top-about__body p {
    line-height: 2.2;
  }
}
.p-top-about__map {
  width: 51.8055555556vw;
  min-width: 746px;
  height: -moz-fit-content;
  height: fit-content;
  position: absolute;
  bottom: 10%;
  right: 12%;
  z-index: -1;
}
@media screen and (max-width: 1024px) {
  .p-top-about__map {
    min-width: 700px;
    bottom: 7%;
    right: 0%;
  }
}
@media screen and (max-width: 480px) {
  .p-top-about__map {
    min-width: 120%;
    right: -8%;
    bottom: 5%;
  }
}
.p-top-about__hito {
  position: absolute;
  bottom: 10%;
  right: 14%;
  width: 7.5vw;
  min-width: 108px;
  height: 11.5277777778vw;
  min-height: 166px;
}
@media screen and (max-width: 1024px) {
  .p-top-about__hito {
    bottom: 6%;
    right: 4%;
  }
}
@media screen and (max-width: 480px) {
  .p-top-about__hito {
    bottom: 10%;
    right: unset;
    left: 4%;
  }
  .p-top-about__hito img {
    transform: scale(-1, 1);
  }
}
.p-top-about__hito .frame {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.p-top-about__hito .frame1 {
  animation: switchFrames 3s steps(1) infinite;
}
.p-top-about__hito .frame2 {
  animation: switchFrames 3s steps(1) infinite;
  animation-delay: 1.5s;
}
@keyframes switchFrames {
  0%, 49.9% {
    opacity: 1;
  }
  50%, 100% {
    opacity: 0;
  }
}
.p-top-about__fukidashi {
  position: absolute;
  top: -45%;
  right: 80%;
  z-index: 2;
  display: block;
  width: 110px;
  height: 110px;
  background-color: #F5743C;
  border-radius: 50%;
  position: relative;
  font-weight: 500;
}
@media screen and (max-width: 480px) {
  .p-top-about__fukidashi {
    width: 100px;
    height: 100px;
    left: 80%;
  }
}
.p-top-about__fukidashi:hover .bottom {
  text-decoration: underline;
}
.p-top-about__fukidashi:before {
  content: "";
  position: absolute;
  bottom: 4px;
  right: -9px;
  border: 10px solid transparent;
  border-left: 16px solid #F5743C;
  z-index: 0;
  transform: rotate(40deg);
}
@media screen and (max-width: 480px) {
  .p-top-about__fukidashi:before {
    transform: rotate(140deg);
    right: unset;
    left: -9px;
  }
}
.p-top-about__fukidashi .wrap {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: absolute;
  top: 55%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.p-top-about__fukidashi .wrap p {
  color: #ffffff;
  text-align: center;
}
.p-top-about__fukidashi .wrap p .head {
  font-size: var(--font-size-12);
  display: block;
  line-height: 1;
  margin-bottom: 4px;
}
.p-top-about__fukidashi .wrap p .body {
  font-size: var(--font-size-15);
  margin-bottom: 2px;
  display: block;
  line-height: 1.4;
}

.p-top-strength {
  background: linear-gradient(#E4DCD0, #F8F7F0);
}
.p-top-strength__container {
  background-color: #F5743C;
  width: 100%;
  margin: 0 auto;
  position: relative;
  display: flex;
  justify-content: space-between;
  border-radius: 32px;
  padding: 0 6% 0 0;
}
@media screen and (max-width: 1024px) {
  .p-top-strength__container {
    display: block;
    padding: 0;
  }
}
.p-top-strength__textarea {
  width: 50%;
  margin: 72px 0;
  position: relative;
}
@media screen and (max-width: 1280px) {
  .p-top-strength__textarea {
    width: 54%;
  }
}
@media screen and (max-width: 1024px) {
  .p-top-strength__textarea {
    width: 84%;
    margin: 0 auto;
    padding: 56px 0;
  }
}
.p-top-strength__repeat {
  position: absolute;
  top: 0%;
  right: 7%;
}
@media screen and (max-width: 1280px) {
  .p-top-strength__repeat {
    right: 0%;
  }
}
@media screen and (max-width: 1024px) {
  .p-top-strength__repeat {
    top: 4%;
    right: 0%;
  }
}
@media screen and (max-width: 480px) {
  .p-top-strength__repeat {
    right: -4%;
  }
}
.p-top-strength__repeat img {
  width: 11.1111111111vw;
  border-radius: 32px 0 32px 0;
}
@media screen and (max-width: 1024px) {
  .p-top-strength__repeat img {
    width: 20.8333333333vw;
  }
}
.p-top-strength__imgarea {
  width: 44%;
  position: relative;
  overflow: hidden; /* 画像がコンテナからはみ出さないように */
}
@media screen and (max-width: 1280px) {
  .p-top-strength__imgarea {
    width: 40%;
  }
}
@media screen and (max-width: 1024px) {
  .p-top-strength__imgarea {
    width: 100%;
    height: 320px;
  }
}
.p-top-strength__imgarea img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 0 68%;
     object-position: 0 68%;
  width: 100%;
  height: 100%;
  border-radius: 32px 0 0 32px;
}
@media screen and (max-width: 1024px) {
  .p-top-strength__imgarea img {
    border-radius: 32px 32px 0 0;
  }
}
.p-top-strength__list-item {
  display: flex;
  padding: 24px 0;
  border-bottom: 1px solid #ffffff;
}
.p-top-strength__list-item img {
  height: 56px;
  margin: 8px 24px 0 0;
}
@media screen and (max-width: 480px) {
  .p-top-strength__list-item img {
    height: 40px;
    margin: 8px 16px 0 0;
  }
}
.p-top-strength__list-item .contain {
  color: #ffffff;
}
.p-top-strength__list-item .contain .head {
  font-size: var(--font-size-24);
  font-weight: 500;
  margin-bottom: 8px;
  line-height: 1.3;
}

.p-top-service {
  padding: 80px 0px;
}
@media screen and (max-width: 480px) {
  .p-top-service {
    padding: 56px 0px;
  }
}
.p-top-service__container {
  width: 84%;
  max-width: 1200px;
  margin: 0 auto 120px auto;
}
@media screen and (max-width: 1024px) {
  .p-top-service__container {
    display: block;
    margin-bottom: 24px;
  }
}
.p-top-service__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 1024px) {
  .p-top-service__head {
    display: block;
  }
}
.p-top-service__body {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 80px;
}
.p-top-service__body:last-child {
  margin-bottom: 0;
}
.p-top-service__body:nth-child(even) {
  flex-direction: row;
}
@media screen and (max-width: 1024px) {
  .p-top-service__body {
    display: block;
  }
}
.p-top-service__imgarea {
  width: 48%;
}
@media screen and (max-width: 1024px) {
  .p-top-service__imgarea {
    width: 100%;
    margin-bottom: 24px;
  }
}
.p-top-service__textarea {
  width: 45%;
}
@media screen and (max-width: 1024px) {
  .p-top-service__textarea {
    width: 100%;
  }
}
.p-top-service__textarea .head .title {
  background-color: #4F371F;
  padding: 0px 8px 2px;
  font-size: var(--font-size-20);
  font-weight: 500;
  color: #ffffff;
  display: inline-block;
  margin-bottom: 8px;
}
.p-top-service__textarea .head .copy {
  font-size: var(--font-size-24);
  font-weight: 700;
  margin-bottom: 24px;
}
.p-top-service__textarea .head .copy span {
  border-bottom: 2px solid #2F261B;
}
.p-top-service__textarea .body {
  margin-bottom: 24px;
}
.p-top-service__textarea .bottom {
  margin-bottom: 32px;
}
.p-top-service__textarea .bottom .title {
  font-weight: 700;
}

.p-top-fukui {
  position: relative;
}
.p-top-fukui__bg {
  width: 100%;
  position: absolute;
  display: block;
  top: 0px;
  left: 0;
  overflow: hidden;
  z-index: -1;
}
.p-top-fukui__bg__img {
  width: 100%;
  background-size: cover;
  background-position: 50% 50%;
  height: 480px;
  background-repeat: no-repeat;
  background: url(../images/top/fukui_bg.jpg) no-repeat center/cover rgba(47, 38, 27, 0.7);
  background-blend-mode: multiply;
}
@media screen and (max-width: 1280px) {
  .p-top-fukui__bg__img {
    height: 600px;
  }
}
@media screen and (max-width: 1024px) {
  .p-top-fukui__bg__img {
    height: 880px;
  }
}
.p-top-fukui__head {
  width: 84%;
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  padding-top: 72px;
}
@media screen and (max-width: 1024px) {
  .p-top-fukui__head {
    display: block;
  }
}
.p-top-fukui__head .c-ttl01 {
  width: 45%;
}
@media screen and (max-width: 1024px) {
  .p-top-fukui__head .c-ttl01 {
    width: 100%;
    margin-bottom: 24px;
  }
}
.p-top-fukui__head .c-copy01__bgcolor--orange {
  width: 48%;
}
@media screen and (max-width: 1024px) {
  .p-top-fukui__head .c-copy01__bgcolor--orange {
    width: 100%;
  }
}
.p-top-fukui__action01 {
  width: 84%;
  max-width: 1200px;
  margin: 0 auto 120px auto;
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  align-items: flex-end;
}
@media screen and (max-width: 1024px) {
  .p-top-fukui__action01 {
    display: block;
    margin: 0 auto 56px auto;
  }
}
@media screen and (max-width: 1024px) {
  .p-top-fukui__action01__textarea {
    margin-bottom: 40px;
  }
}
.p-top-fukui__action01__textarea .head {
  margin-bottom: 24px;
}
@media screen and (max-width: 480px) {
  .p-top-fukui__action01__textarea .head {
    margin-bottom: 24px;
  }
}
.p-top-fukui__action01__textarea .head .label {
  font-size: var(--font-size-24);
  color: #F5743C;
  margin-bottom: 4px;
}
.p-top-fukui__action01__textarea .head .title {
  font-size: var(--font-size-24);
  font-weight: 700;
  color: #ffffff;
}
.p-top-fukui__action01__textarea .body {
  color: #ffffff;
  margin-bottom: 32px;
}
.p-top-fukui__action01__imgarea {
  width: 45%;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .p-top-fukui__action01__imgarea {
    width: 100%;
    margin-bottom: 24px;
  }
}
.p-top-fukui__action01__frecs {
  position: absolute;
  left: 0px;
  bottom: -40px;
  width: 150px;
}
@media screen and (max-width: 480px) {
  .p-top-fukui__action01__frecs {
    width: 110px;
  }
}
.p-top-fukui__action01__textarea {
  width: 48%;
}
@media screen and (max-width: 1024px) {
  .p-top-fukui__action01__textarea {
    width: 100%;
  }
}
.p-top-fukui__action02 {
  width: 100%;
  padding-left: 5%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 56px;
}
@media screen and (max-width: 1024px) {
  .p-top-fukui__action02 {
    display: block;
    margin-bottom: 24px;
    padding-left: unset;
    margin: 0 auto 56px;
  }
}
.p-top-fukui__action02__textarea {
  width: 30%;
  margin-right: 5%;
}
@media screen and (max-width: 1024px) {
  .p-top-fukui__action02__textarea {
    width: 84%;
    margin: 0 auto;
  }
}
.p-top-fukui__action02__textarea .head {
  margin-bottom: 24px;
}
@media screen and (max-width: 480px) {
  .p-top-fukui__action02__textarea .head {
    margin-bottom: 24px;
  }
}
.p-top-fukui__action02__textarea .head .label {
  font-size: var(--font-size-24);
  color: #F5743C;
  margin-bottom: 4px;
}
.p-top-fukui__action02__textarea .head .title {
  font-size: var(--font-size-24);
  font-weight: 700;
}
.p-top-fukui__action02__textarea .body {
  margin-bottom: 56px;
}
.p-top-fukui__action02__area {
  position: relative;
  border: 2px solid #F5743C;
  border-radius: 0px 4px 4px 4px;
  padding: 1vw 1.2vw;
  margin-bottom: 32px;
}
.p-top-fukui__action02__area .title {
  position: absolute;
  left: -2px;
  top: -28px;
  height: 28px;
  padding: 0 16px;
  border-radius: 4px 4px 0 0;
  background: #F5743C;
  color: #ffffff;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  font-size: var(--font-size-14);
}
.p-top-fukui__action02__area dl {
  font-size: var(--font-size-13);
  line-height: 1.4;
  margin-bottom: 6px;
}
.p-top-fukui__action02__area dl dt, .p-top-fukui__action02__area dl dd {
  display: inline;
}
.p-top-fukui__action03 {
  width: 84%;
  max-width: 1200px;
  margin: 0 auto 80px auto;
}
@media screen and (max-width: 1024px) {
  .p-top-fukui__action03 {
    display: block;
    margin-bottom: 24px;
  }
}
.p-top-fukui__action03 .head {
  margin-bottom: 32px;
  text-align: center;
}
@media screen and (max-width: 480px) {
  .p-top-fukui__action03 .head {
    margin-bottom: 24px;
  }
}
.p-top-fukui__action03 .head .label {
  font-size: var(--font-size-24);
  color: #F5743C;
  margin-bottom: 4px;
}
.p-top-fukui__action03 .head .title {
  font-size: var(--font-size-22);
  font-weight: 700;
}
.p-top-fukui__action03 .body {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 4%;
}
@media screen and (max-width: 480px) {
  .p-top-fukui__action03 .body {
    grid-template-columns: repeat(1, 1fr);
  }
}
.p-top-fukui__action03 .body .p-top-fukui-post {
  transition: all 0.2s;
}
.p-top-fukui__action03 .body .p-top-fukui-post:hover .p-top-fukui-post__img img {
  transform: scale(1.05);
  transition: all 0.2s;
}
.p-top-fukui__action03 .body .p-top-fukui-post:hover .p-top-fukui-post__ttl {
  color: #F5743C;
  transition: all 0.2s;
}
.p-top-fukui__action03 .body .p-top-fukui-post__img {
  position: relative;
  overflow: hidden;
  margin-bottom: 12px;
  border-radius: 16px;
  transition: all 0.2s;
}
@media screen and (max-width: 480px) {
  .p-top-fukui__action03 .body .p-top-fukui-post__img {
    width: 100%;
  }
}
.p-top-fukui__action03 .body .p-top-fukui-post__img > img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  display: block;
  transition: all 0.4s ease;
  transition: all 0.2s;
}
.p-top-fukui__action03 .body .p-top-fukui-post__ttl {
  font-size: var(--font-size-18);
  font-weight: 700;
  margin-bottom: 8px;
  transition: all 0.2s;
  margin-bottom: 8px;
}

.p-top-wimb {
  padding: 80px 0px;
}
@media screen and (max-width: 480px) {
  .p-top-wimb {
    padding: 56px 0px;
  }
}
.p-top-wimb__container {
  width: 84%;
  max-width: 1200px;
  margin: 0 auto;
  position: relative;
}
.p-top-wimb__head {
  display: flex;
  justify-content: flex-end;
}
@media screen and (max-width: 1024px) {
  .p-top-wimb__head {
    display: block;
    position: unset;
  }
}
.p-top-wimb .c-copy02__bgcolor--white {
  margin: 0 0 48px 32px;
}
.p-top-wimb .p-wimb-tag {
  font-size: var(--font-size-12);
  position: absolute;
}
.p-top-wimb .p-wimb-tag li {
  background-color: #ffffff;
  padding: 0 4px;
  margin-bottom: 4px;
  width: -moz-max-content;
  width: max-content;
}
.p-top-wimb__body {
  display: flex;
  align-items: flex-end;
  margin: -36% 0 0 0;
}
@media screen and (max-width: 1024px) {
  .p-top-wimb__body {
    margin: -10% 0 0 0;
  }
}
@media screen and (max-width: 480px) {
  .p-top-wimb__body {
    flex-direction: column;
    align-items: unset;
  }
}
.p-top-wimb__body .btn img {
  width: 24px;
}
.p-top-wimb__bike {
  width: 480px;
  margin-right: 8vw;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .p-top-wimb__bike {
    width: 58vw;
  }
}
@media screen and (max-width: 480px) {
  .p-top-wimb__bike {
    width: 100%;
    margin-bottom: 96px;
  }
}
.p-top-wimb__bike > img {
  margin-bottom: 24px;
}
.p-top-wimb__bike-spec > p {
  font-weight: 900;
  border-bottom: 2px solid #2F261B;
  margin-bottom: 8px;
}
.p-top-wimb__bike-spec .ttl {
  margin-right: 24px;
}
.p-top-wimb__bike-spec .model {
  font-size: var(--font-size-12);
}
.p-top-wimb__bike-spec > ul {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  -moz-column-gap: 16px;
       column-gap: 16px;
  font-size: var(--font-size-12);
}
@media screen and (max-width: 480px) {
  .p-top-wimb__bike-spec > ul {
    grid-template-columns: 1fr 1fr;
  }
}
.p-top-wimb__bike .wimb-box {
  position: absolute;
  top: 29%;
  left: 13%;
}
@media screen and (max-width: 480px) {
  .p-top-wimb__bike .wimb-box {
    top: 25%;
    left: 15%;
  }
}
.p-top-wimb__bike .wimb-sbox {
  position: absolute;
  top: 40%;
  left: 13%;
}
@media screen and (max-width: 480px) {
  .p-top-wimb__bike .wimb-sbox {
    top: 35%;
    left: 15%;
  }
}
.p-top-wimb__bike .wimb-center {
  position: absolute;
  top: 48%;
  right: 42%;
}
@media screen and (max-width: 480px) {
  .p-top-wimb__bike .wimb-center {
    top: 42%;
  }
}
.p-top-wimb__bike .wimb-side {
  position: absolute;
  top: 53%;
  left: 20%;
}
@media screen and (max-width: 480px) {
  .p-top-wimb__bike .wimb-side {
    top: 47%;
  }
}
.p-top-wimb__bike .wimb-rod {
  position: absolute;
  top: 16%;
  left: 34%;
}
@media screen and (max-width: 480px) {
  .p-top-wimb__bike .wimb-rod {
    left: 36%;
  }
}
.p-top-wimb__bike .tag-bike {
  position: absolute;
  bottom: 19%;
  left: 60%;
}
@media screen and (max-width: 480px) {
  .p-top-wimb__bike .tag-bike {
    bottom: 84%;
    left: 41%;
  }
}
.p-top-wimb__backpack {
  width: 140px;
  position: relative;
  margin-bottom: 90px;
}
@media screen and (max-width: 1024px) {
  .p-top-wimb__backpack {
    width: 16vw;
    margin-bottom: 100px;
  }
}
@media screen and (max-width: 480px) {
  .p-top-wimb__backpack {
    width: 38%;
    margin-bottom: 0;
    margin-left: 5%;
  }
}
.p-top-wimb__backpack .wimb-backpack {
  position: absolute;
  bottom: 65%;
  right: 27%;
}
.p-top-wimb__backpack .tag-backpack {
  position: absolute;
  bottom: 103%;
  left: 0;
  display: block;
}
@media screen and (max-width: 480px) {
  .p-top-wimb__backpack .tag-backpack {
    right: 0%;
  }
}
.p-top-wimb .p-bakudan {
  position: absolute;
  bottom: 12%;
  right: 10%;
}
@media screen and (max-width: 1024px) {
  .p-top-wimb .p-bakudan {
    bottom: 53%;
    right: 5%;
  }
}
@media screen and (max-width: 480px) {
  .p-top-wimb .p-bakudan {
    bottom: 0%;
    right: 0;
  }
}
.p-top-wimb .p-bakudan a {
  display: block;
  width: 160px;
  position: relative;
}
.p-top-wimb .p-bakudan a:hover p {
  text-decoration: underline;
}
.p-top-wimb .p-bakudan a p {
  width: 160px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #ffffff;
  text-align: center;
}
.p-top-wimb .p-bakudan a p .sub {
  font-size: var(--font-size-12);
  display: block;
  margin: 8px 0 4px 0;
}
.p-top-wimb .p-bakudan a p .main {
  font-size: var(--font-size-20);
  line-height: 1.4;
}

@media screen and (max-width: 480px) {
  .remodal {
    padding: 64px 24px !important;
  }
}

.p-top-wimb__wrap {
  display: flex;
}
.p-top-wimb__item {
  margin-bottom: 40px;
}
.p-top-wimb__item img {
  margin-bottom: 8px;
}
.p-top-wimb__item figcaption {
  font-size: var(--font-size-12);
}

.p-top-wimb__wrap {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -moz-column-gap: 8px;
       column-gap: 8px;
}
@media screen and (max-width: 480px) {
  .p-top-wimb__wrap {
    grid-template-columns: 1fr;
  }
}
.p-top-wimb__item {
  margin-bottom: 16px;
}
.p-top-wimb__item img {
  margin-bottom: 8px;
}
.p-top-wimb__item figcaption {
  font-size: var(--font-size-12);
  text-align: left;
}
.p-top-wimb__balloon {
  display: flex;
  justify-content: space-between;
  margin: 16px 0 32px 0;
}
.p-top-wimb__balloon > img {
  width: 80px;
  height: 80px;
  margin: 0 0 0 32px;
}
@media screen and (max-width: 480px) {
  .p-top-wimb__balloon > img {
    margin: 0 0 0 24px;
    width: 48px;
    height: 48px;
  }
}
.p-top-wimb__balloon > P {
  width: 600px;
  padding: 16px 24px;
  background-color: #F8F7F0;
  border-radius: 2px;
  position: relative;
  height: -moz-fit-content;
  height: fit-content;
  font-size: var(--font-size-14);
  text-align: left;
}
@media screen and (max-width: 480px) {
  .p-top-wimb__balloon > P {
    padding: 16px;
  }
}
.p-top-wimb__balloon > P::after {
  content: "";
  position: absolute;
  right: -18px;
  top: 24px;
  border-left: 20px solid #F8F7F0;
  border-top: 14px solid rgba(0, 0, 0, 0);
  border-bottom: 14px solid rgba(0, 0, 0, 0);
}
@media screen and (max-width: 480px) {
  .p-top-wimb__balloon > P::after {
    top: 8px;
    right: -14px;
  }
}

.p-top-journey {
  background: url(../images/top/journey_bg.jpg) no-repeat center/cover rgba(47, 38, 27, 0.5);
  background-blend-mode: multiply;
  padding: 80px 0px;
  overflow: hidden;
}
@media screen and (max-width: 480px) {
  .p-top-journey {
    padding: 56px 0px;
  }
}
.p-top-journey__container {
  width: 100%;
  padding-left: 5%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 1024px) {
  .p-top-journey__container {
    display: block;
    margin-bottom: 24px;
    padding-left: unset;
    margin: 0 auto;
  }
}
.p-top-journey__txtarea {
  width: 40%;
  margin-right: 5%;
}
@media screen and (max-width: 1024px) {
  .p-top-journey__txtarea {
    width: 84%;
    margin: 0 auto;
  }
}
.p-top-journey__body {
  color: #ffffff;
  line-height: 1.8;
  margin-bottom: 32px;
  text-shadow: 0px 0px 4px rgba(47, 38, 27, 0.6);
}
.p-top-journey__slidearea {
  width: 60%;
}
@media screen and (max-width: 1024px) {
  .p-top-journey__slidearea {
    width: 100%;
    margin-top: 40px;
    padding-left: 8% !important;
  }
}
.p-top-journey__slidearea .p-journey-post {
  margin-right: 24px;
}
.p-top-journey__slidearea .p-journey-post__img {
  height: auto;
  position: relative;
  overflow: hidden;
  border-radius: 16px;
  margin-bottom: 16px;
}
.p-top-journey__slidearea .p-journey-post__img img {
  width: 100%;
  height: auto;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  display: block;
  transition: all 0.4s ease;
  margin-bottom: 16px;
}
.p-top-journey__slidearea .p-journey-post__img img:hover {
  transform: scale(1.05);
}
.p-top-journey__slidearea .p-journey-post__img img:hover .p-top-jouney-post__description {
  color: #F5743C;
}
.p-top-journey__slidearea .p-journey-post__img::before {
  content: "";
  display: block;
  width: 100%;
  padding-bottom: 124.6%;
}
.p-top-journey__slidearea .p-journey-post__txtarea {
  margin: 8px 0;
}
.p-top-journey__slidearea .p-journey-post .c-cattag__list-item a {
  border: 1px solid #ffffff;
  color: #ffffff;
}
.p-top-journey__slidearea .p-journey-post .c-cattag__list-item a:hover {
  border: 1px solid #F5743C;
  color: #F5743C;
  background-color: unset;
}
.p-top-journey__slidearea .p-journey-post__description {
  color: #ffffff;
  font-size: var(--font-size-14);
}
.p-top-journey__slidearea__control {
  margin-top: 16px;
  position: relative;
  height: 50px;
}
.p-top-journey__slidearea__control .swiper-button {
  display: flex;
  position: absolute;
  width: 140px;
  height: 48px;
  right: 5%;
  /* 前へ次への矢印カスタマイズ */
}
.p-top-journey__slidearea__control .swiper-button .swiper-button-prev::after,
.p-top-journey__slidearea__control .swiper-button .swiper-button-next::after {
  bottom: 0;
  content: "";
  height: 0;
  margin: auto;
  position: absolute;
  top: 0;
  width: 0;
}
.p-top-journey__slidearea__control .swiper-button {
  /* 前への矢印カスタマイズ */
}
.p-top-journey__slidearea__control .swiper-button .swiper-button-prev {
  width: 48px;
  height: 48px;
  border-radius: 50px;
  background-color: #028EA8;
  transform: scale(-1, 1);
}
.p-top-journey__slidearea__control .swiper-button .swiper-button-prev::before {
  content: "";
  display: block;
  width: 24px;
  height: 21px;
  -webkit-mask-image: url("../images/common/icon_arrow.svg");
          mask-image: url("../images/common/icon_arrow.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #ffffff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.p-top-journey__slidearea__control .swiper-button {
  /* 次への矢印カスタマイズ */
}
.p-top-journey__slidearea__control .swiper-button .swiper-button-next {
  width: 48px;
  height: 48px;
  border-radius: 50px;
  background-color: #028EA8;
}
.p-top-journey__slidearea__control .swiper-button .swiper-button-next::before {
  content: "";
  display: block;
  width: 24px;
  height: 21px;
  -webkit-mask-image: url("../images/common/icon_arrow.svg");
          mask-image: url("../images/common/icon_arrow.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #ffffff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.p-top-journey__slidearea__control {
  /* プログレスバーの位置を下に変更 */
}
.p-top-journey__slidearea__control .swiper-horizontal > .swiper-pagination-progressbar,
.p-top-journey__slidearea__control .swiper-pagination-progressbar.swiper-pagination-horizontal {
  bottom: 0;
  top: auto;
  width: 65%;
}
@media screen and (max-width: 1024px) {
  .p-top-journey__slidearea__control .swiper-horizontal > .swiper-pagination-progressbar,
  .p-top-journey__slidearea__control .swiper-pagination-progressbar.swiper-pagination-horizontal {
    width: 50%;
  }
}
.p-top-journey__slidearea__control {
  /* プログレスバーの高さ変更 */
}
.p-top-journey__slidearea__control .swiper-horizontal > .swiper-pagination-progressbar,
.p-top-journey__slidearea__control .swiper-pagination-progressbar.swiper-pagination-horizontal {
  height: 8px;
  top: 50%;
}
.p-top-journey__slidearea__control {
  /* プログレスバーの背景色変更 */
}
.p-top-journey__slidearea__control .swiper-pagination-progressbar {
  background-color: #ffffff;
}
.p-top-journey__slidearea__control {
  /* プログレスバーの色変更 */
}
.p-top-journey__slidearea__control .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background-color: #F5743C;
}

.p-top-work {
  padding: 80px 0px;
  background-color: #FCF1E2;
}
@media screen and (max-width: 480px) {
  .p-top-work {
    padding: 56px 0px;
  }
}
.p-top-work__container {
  width: 100%;
  padding-left: 5%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 1024px) {
  .p-top-work__container {
    display: block;
    margin-bottom: 24px;
    padding-left: unset;
    margin: 0 auto;
  }
}
.p-top-work__textarea {
  width: 30%;
  margin-right: 5%;
}
@media screen and (max-width: 1024px) {
  .p-top-work__textarea {
    width: 84%;
    margin: 0 auto;
  }
}
.p-top-work__slidearea {
  width: 70%;
}
@media screen and (max-width: 1024px) {
  .p-top-work__slidearea {
    width: 100%;
    margin-top: 40px;
    padding-left: 8% !important;
  }
}
.p-top-work__slidearea__control {
  position: relative;
  height: 50px;
}
.p-top-work__slidearea__control .swiper-button {
  display: flex;
  position: absolute;
  width: 140px;
  height: 48px;
  right: 5%;
  /* 前へ次への矢印カスタマイズ */
}
.p-top-work__slidearea__control .swiper-button .swiper-button-prev::after,
.p-top-work__slidearea__control .swiper-button .swiper-button-next::after {
  bottom: 0;
  content: "";
  height: 0;
  margin: auto;
  position: absolute;
  top: 0;
  width: 0;
}
.p-top-work__slidearea__control .swiper-button {
  /* 前への矢印カスタマイズ */
}
.p-top-work__slidearea__control .swiper-button .swiper-button-prev {
  width: 48px;
  height: 48px;
  border-radius: 50px;
  background-color: #028EA8;
  transform: scale(-1, 1);
}
.p-top-work__slidearea__control .swiper-button .swiper-button-prev::before {
  content: "";
  display: block;
  width: 24px;
  height: 21px;
  -webkit-mask-image: url("../images/common/icon_arrow.svg");
          mask-image: url("../images/common/icon_arrow.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #ffffff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.p-top-work__slidearea__control .swiper-button {
  /* 次への矢印カスタマイズ */
}
.p-top-work__slidearea__control .swiper-button .swiper-button-next {
  width: 48px;
  height: 48px;
  border-radius: 50px;
  background-color: #028EA8;
}
.p-top-work__slidearea__control .swiper-button .swiper-button-next::before {
  content: "";
  display: block;
  width: 24px;
  height: 21px;
  -webkit-mask-image: url("../images/common/icon_arrow.svg");
          mask-image: url("../images/common/icon_arrow.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #ffffff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.p-top-work__slidearea__control {
  /* プログレスバーの位置を下に変更 */
}
.p-top-work__slidearea__control .swiper-horizontal > .swiper-pagination-progressbar,
.p-top-work__slidearea__control .swiper-pagination-progressbar.swiper-pagination-horizontal {
  bottom: 0;
  top: auto;
  width: 65%;
}
@media screen and (max-width: 1024px) {
  .p-top-work__slidearea__control .swiper-horizontal > .swiper-pagination-progressbar,
  .p-top-work__slidearea__control .swiper-pagination-progressbar.swiper-pagination-horizontal {
    width: 50%;
  }
}
.p-top-work__slidearea__control {
  /* プログレスバーの高さ変更 */
}
.p-top-work__slidearea__control .swiper-horizontal > .swiper-pagination-progressbar,
.p-top-work__slidearea__control .swiper-pagination-progressbar.swiper-pagination-horizontal {
  height: 8px;
  top: 50%;
}
.p-top-work__slidearea__control {
  /* プログレスバーの背景色変更 */
}
.p-top-work__slidearea__control .swiper-pagination-progressbar {
  background-color: #ffffff;
}
.p-top-work__slidearea__control {
  /* プログレスバーの色変更 */
}
.p-top-work__slidearea__control .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background-color: #F5743C;
}

.p-top-work-post {
  margin-right: 24px;
}
.p-top-work-post__img {
  height: auto;
  position: relative;
  overflow: hidden;
  border-radius: 16px;
}
.p-top-work-post__img img {
  width: 100%;
  height: auto;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  display: block;
  transition: all 0.4s ease;
}
.p-top-work-post__img img:hover {
  transform: scale(1.05);
}
.p-top-work-post__img img:hover .p-top-blog-post__ttl {
  color: #F5743C;
}
.p-top-work-post__img::before {
  content: "";
  display: block;
  width: 100%;
  padding-bottom: 141%;
}
.p-top-work-post__txtarea {
  margin: 8px 0;
}
.p-top-work-post__area {
  font-size: var(--font-size-16);
  margin: 0 0 4px 0;
}
.p-top-work-post__area span {
  display: flex;
}
.p-top-work-post__area span:before {
  content: "";
  display: block;
  width: 20px;
  height: auto;
  -webkit-mask-image: url("../images/common/icon_pin.svg");
          mask-image: url("../images/common/icon_pin.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #F5743C;
  margin-right: 8px;
}
.p-top-work-post__ttl {
  font-size: var(--font-size-18);
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 16px;
  transition: all 0.2s;
}
.p-top-work-post__ttl:hover {
  color: #F5743C;
  transition: all 0.2s;
}

.p-top-blog {
  background-color: #E9E5DF;
  padding: 120px 0;
  background-image: url(../images/top/top_wimb_img.png);
  background-size: 42vw;
  background-repeat: no-repeat;
  background-position: bottom 0px right 0px;
}
@media screen and (max-width: 480px) {
  .p-top-blog {
    padding: 56px 0;
    background-size: 62vw;
  }
}
.p-top-blog__container {
  width: 84%;
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 1024px) {
  .p-top-blog__container {
    display: block;
    margin-bottom: 80px;
  }
}
.p-top-blog__container .c-ttl01 {
  display: flex;
  flex-direction: column-reverse;
  align-self: flex-start;
  color: #2F261B;
  margin-left: 24px;
}
@media screen and (max-width: 1024px) {
  .p-top-blog__container .c-ttl01 {
    margin-left: 0;
  }
}
.p-top-blog__container .c-ttl01__sub {
  width: -moz-max-content;
  width: max-content;
}
.p-top-blog__container .c-ttl01__main {
  writing-mode: vertical-rl;
}
@media screen and (max-width: 1024px) {
  .p-top-blog__container .c-ttl01__main {
    writing-mode: unset;
  }
}
.p-top-blog__head {
  width: 26%;
}
@media screen and (max-width: 1024px) {
  .p-top-blog__head {
    width: 100%;
  }
}
.p-top-blog__head .title {
  display: flex;
  margin-bottom: 40px;
}
@media screen and (max-width: 1024px) {
  .p-top-blog__head .title {
    justify-content: space-between;
    margin-bottom: 24px;
  }
}
@media screen and (max-width: 480px) {
  .p-top-blog__head .title {
    display: block;
  }
}
.p-top-blog__copy {
  writing-mode: vertical-rl;
  text-orientation: upright;
  font-size: var(--font-size-24);
  color: #2F261B;
  line-height: 1;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 1024px) {
  .p-top-blog__copy {
    writing-mode: unset;
  }
}
.p-top-blog__copy > span {
  background-color: #ffffff;
  padding: 8px 4px;
  margin: 0 0 0 12px;
  display: inline-block;
}
@media screen and (max-width: 1024px) {
  .p-top-blog__copy > span {
    margin: 0 0 8px 0;
  }
}
.p-top-blog__body {
  width: 70%;
}
@media screen and (max-width: 1024px) {
  .p-top-blog__body {
    width: 100%;
    margin-top: 32px;
  }
}
.p-top-blog__body .c-btn__main {
  margin-top: 40px;
  max-width: 400px;
}

.p-top-blog-post {
  padding: 24px 0;
  border-bottom: 2px solid #2F261B;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media screen and (max-width: 1024px) {
  .p-top-blog-post {
    display: flex;
    width: 100%;
  }
}
@media screen and (max-width: 480px) {
  .p-top-blog-post {
    flex-direction: column;
  }
}
.p-top-blog-post:first-child {
  border-top: 2px solid #2F261B;
}
.p-top-blog-post:hover .p-top-blog-post__img img {
  transform: scale(1.05);
}
.p-top-blog-post:hover .p-top-blog-post__ttl {
  color: #F5743C;
}
.p-top-blog-post__img {
  width: 36%;
  height: 100%;
  position: relative;
  overflow: hidden;
  border-radius: 16px;
}
@media screen and (max-width: 480px) {
  .p-top-blog-post__img {
    width: 100%;
    margin-bottom: 16px;
  }
}
.p-top-blog-post__img img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  display: block;
  transition: all 0.4s ease;
}
.p-top-blog-post__img::before {
  content: "";
  display: block;
  width: 100%;
  height: auto;
  padding-bottom: 66.6%;
}
.p-top-blog-post__txtarea {
  width: 60%;
}
@media screen and (max-width: 480px) {
  .p-top-blog-post__txtarea {
    width: 100%;
  }
}
.p-top-blog-post__ttl {
  font-size: var(--font-size-18);
  font-weight: 700;
  margin: 8px 0;
  transition: all 0.2s;
}

.p-work-post {
  background-color: #ffffff;
  padding: 4% 8.3333333333%;
  margin-bottom: 40px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-radius: 24px;
}
@media screen and (max-width: 1024px) {
  .p-work-post {
    display: block;
    padding: 8.3333333333%;
  }
}
.p-work-post__img {
  width: 46.6666666667%;
  height: auto;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 1024px) {
  .p-work-post__img {
    width: 100%;
    margin-bottom: 16px;
  }
}
.p-work-post__img img {
  width: 100%;
  height: auto;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  display: block;
  transition: all 0.4s ease;
}
.p-work-post__img img:hover {
  transform: scale(1.05);
}
.p-work-post__img img:hover .p-top-blog-post__ttl {
  color: #F5743C;
}
.p-work-post__img::before {
  content: "";
  display: block;
  width: 100%;
  padding-bottom: 55.6%;
}
.p-work-post__txtarea {
  width: 46.6666666667%;
}
@media screen and (max-width: 1024px) {
  .p-work-post__txtarea {
    width: 100%;
  }
}
.p-work-post__head {
  display: flex;
  margin-bottom: 12px;
}
@media screen and (max-width: 1024px) {
  .p-work-post__head {
    display: block;
  }
}
.p-work-post__area {
  font-size: var(--font-size-16);
  margin: 0 0 0 8px;
}
@media screen and (max-width: 1024px) {
  .p-work-post__area {
    margin: 0 0 0 0px;
  }
}
.p-work-post__area span {
  display: flex;
}
.p-work-post__area span:before {
  content: "";
  display: block;
  width: 18px;
  height: auto;
  -webkit-mask-image: url("../images/common/icon_pin.svg");
          mask-image: url("../images/common/icon_pin.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #F5743C;
  margin-right: 8px;
}
.p-work-post__ttl {
  font-size: var(--font-size-22);
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 16px;
  transition: all 0.2s;
}
.p-work-post__ttl:hover {
  color: #F5743C;
}
.p-work-post__data {
  padding: 8px 0;
  border-top: 1px solid #2F261B;
  border-bottom: 1px solid #2F261B;
  font-size: var(--font-size-12);
  margin-bottom: 24px;
  display: block;
}
.p-work-post__data tr {
  margin-bottom: 2px;
  display: block;
}
.p-work-post__data th {
  -moz-text-align-last: left;
       text-align-last: left;
  width: 100px;
}
.p-work-post__data a {
  color: #F5743C;
  text-decoration: underline;
}
.p-work-post__data a:hover {
  text-decoration: none;
}
.p-work-post .c-btn__medium01 a {
  max-width: 100%;
}

.p-service__container {
  width: 90%;
  max-width: 1400px;
  margin: 0 auto 80px;
}
@media screen and (max-width: 480px) {
  .p-service__container {
    margin: 0 auto 56px;
  }
}
.p-service__body {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 1024px) {
  .p-service__body {
    display: block;
  }
}
.p-service__main {
  display: flex;
  flex-direction: column;
  gap: 80px;
  width: calc(100% - 180px);
  overflow: hidden;
}
@media screen and (max-width: 1024px) {
  .p-service__main {
    width: 100%;
    gap: 40px;
  }
}
.p-service__side {
  width: 180px;
  height: -moz-fit-content;
  height: fit-content;
  margin-right: 5%;
  position: sticky;
  top: 80px;
}
.p-service__side .title {
  font-size: var(--font-size-20);
  margin-bottom: 4px;
  margin-left: 8px;
}
.p-service__side .c-btn__side01 {
  margin-bottom: 12px;
}
.p-service__nav {
  margin-bottom: 32px;
}
.p-service__spside {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: #ffffff;
  border-top: 1px solid #E9E5DF;
  z-index: 10010;
}
.p-service__spside .title {
  font-size: var(--font-size-20);
  margin-bottom: 4px;
  margin-left: 8px;
}
.p-service__spside .c-btn__side01 {
  margin-bottom: 12px;
}
.p-service__spnav {
  display: flex;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  white-space: nowrap;
  scrollbar-width: none;
}
.p-service__spnav::-webkit-scrollbar {
  display: none; /* Chrome, Safari, Edge */
}

.p-page__container {
  width: 90%;
  max-width: 1400px;
  margin: 0 auto 80px;
}
@media screen and (max-width: 480px) {
  .p-page__container {
    margin: 0 auto 56px;
  }
}
.p-page__body {
  display: flex;
  justify-content: space-between;
  background-color: #ffffff;
  padding: 5.7142857143% 7.1428571429%;
  border-radius: 32px;
}
@media screen and (max-width: 480px) {
  .p-page__body {
    display: block;
  }
}
.p-page__main {
  width: 70%;
}
@media screen and (max-width: 480px) {
  .p-page__main {
    width: 100%;
  }
}
.p-page__side {
  width: 23.3333333333%;
}
@media screen and (max-width: 480px) {
  .p-page__side {
    width: 100%;
  }
}
.p-page .p-work-post {
  border-bottom: 2px solid #2F261B;
  margin-bottom: 0;
  padding: 3% 2%;
  border-radius: unset;
}
.p-page .p-work-post__head {
  margin-bottom: 8px;
}
.p-page .p-work-post__ttl {
  font-size: var(--font-size-18);
}
.p-page .p-work-post .c-cattag__list-item {
  margin: 0 8px 0 0;
}
@media screen and (max-width: 1024px) {
  .p-page .p-work-post .c-cattag__list-item {
    margin: 0 0 12px 0;
  }
}
.p-page .p-work-post .c-cattag__list-item a {
  padding: 4px 14px;
  font-size: var(--font-size-13);
}

.p-work__container {
  width: 90%;
  max-width: 1400px;
  margin: 0 auto;
}
@media screen and (max-width: 480px) {
  .p-work__container {
    width: 90%;
  }
}

.p-work-detail__container {
  width: 90%;
  max-width: 1400px;
  margin: 0 auto;
}
@media screen and (max-width: 480px) {
  .p-work-detail__container {
    width: 100%;
  }
}
.p-work-detail__body {
  display: flex;
  justify-content: space-between;
  background-color: #ffffff;
  padding: 5.7142857143% 7.1428571429%;
  border-radius: 24px;
}
@media screen and (max-width: 480px) {
  .p-work-detail__body {
    display: block;
    padding: 8% 7.1428571429%;
  }
}
.p-work-detail__main {
  width: 70%;
}
@media screen and (max-width: 480px) {
  .p-work-detail__main {
    width: 100%;
  }
}
.p-work-detail__side {
  width: 23.3333333333%;
}
@media screen and (max-width: 480px) {
  .p-work-detail__side {
    width: 100%;
  }
}
.p-work-detail .p-work-post__data tr {
  font-size: var(--font-size-16);
}
.p-work-detail .p-work-post__data tr td {
  border: none;
  padding: 2px 24px;
}

.p-blog__container {
  width: 90%;
  max-width: 1400px;
  margin: 0 auto;
}
@media screen and (max-width: 480px) {
  .p-blog__container {
    width: 100%;
  }
}
.p-blog__body {
  display: flex;
  justify-content: space-between;
  background-color: #ffffff;
  padding: 5.7142857143% 7.1428571429%;
  border-radius: 24px;
}
@media screen and (max-width: 480px) {
  .p-blog__body {
    display: block;
  }
}
.p-blog__main {
  width: 70%;
}
@media screen and (max-width: 480px) {
  .p-blog__main {
    width: 100%;
  }
}
.p-blog__side {
  width: 23.3333333333%;
}
@media screen and (max-width: 480px) {
  .p-blog__side {
    width: 100%;
  }
}
.p-blog__list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
@media screen and (max-width: 480px) {
  .p-blog__list {
    display: block;
  }
}
.p-blog .c-recommend-post__img {
  border-radius: 16px;
}
.p-blog .c-recommend-post__img::before {
  padding-bottom: 66.6%;
}

.p-blog-post {
  width: 47.619047619%;
  margin-bottom: 40px;
}
@media screen and (max-width: 480px) {
  .p-blog-post {
    width: 100%;
  }
}
.p-blog-post:hover .p-blog-post__img img {
  transform: scale(1.05);
}
.p-blog-post:hover .p-blog-post__ttl {
  color: #F5743C;
}
.p-blog-post__img {
  position: relative;
  overflow: hidden;
  margin-bottom: 12px;
  border-radius: 16px;
}
@media screen and (max-width: 480px) {
  .p-blog-post__img {
    width: 100%;
  }
}
.p-blog-post__img > img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  display: block;
  transition: all 0.4s ease;
}
.p-blog-post__img::before {
  content: "";
  display: block;
  width: 100%;
  padding-bottom: 66.6%;
}
.p-blog-post__ttl {
  font-size: var(--font-size-18);
  font-weight: 700;
  margin-bottom: 8px;
  transition: all 0.2s;
  margin-bottom: 8px;
}
.p-blog-post__date {
  text-align: right;
}

.block-area {
  padding: 20px;
  border: 1px solid #555;
}

.block-area .block-title {
  margin: 0 0 20px;
  padding: 0 0 5px;
  border-bottom: 1px dotted #555;
  font-size: 24px;
}

/*
 * p-blog-detail
 * -------------------------------------------------------------------
 */
.p-blog-detail__ttl {
  font-size: var(--font-size-24);
  font-weight: 700;
  margin: 24px 0;
}
.p-blog-detail__date > p {
  margin-right: 24px;
  display: inline;
}
.p-blog-detail__date .update::before {
  content: "";
  display: inline-block;
  width: 18px;
  height: 16px;
  margin-right: 8px;
  background-image: url(../images/page/blog-detail_update.svg);
  background-repeat: no-repeat;
  vertical-align: baseline;
  background-size: contain;
}
.p-blog-detail__content > :first-child {
  margin-top: 0px;
}
@media screen and (max-width: 480px) {
  .p-blog-detail__content > :first-child {
    margin-top: 24px;
  }
}
.p-blog-detail__content h2 {
  font-weight: 700;
  font-size: var(--font-size-24);
  margin: 56px 0 40px;
  color: #ffffff;
  background-color: #F5743C;
  border-radius: 4px;
  padding: 10px 20px;
  position: relative;
}
@media screen and (max-width: 480px) {
  .p-blog-detail__content h2 {
    margin: 56px 0 26px;
  }
}
.p-blog-detail__content h2::after {
  content: "";
  position: absolute;
  bottom: -16px;
  left: 40px;
  border-top: 18px solid #F5743C;
  border-right: 12px solid transparent;
  border-left: 12px solid transparent;
}
.p-blog-detail__content h3 {
  font-weight: 700;
  font-size: var(--font-size-24);
  margin: 56px 0 26px;
  background-color: #FAF8F2;
  border-radius: 4px;
  padding: 10px 10px 10px 40px;
  position: relative;
}
.p-blog-detail__content h3::before {
  content: "";
  position: absolute;
  top: 18%;
  left: 18px;
  width: 6px;
  height: 64%;
  background: #F5743C;
}
.p-blog-detail__content h4 {
  border-bottom: solid 2px;
  border-top: solid 2px;
  padding: 4px 20px;
  font-weight: 700;
  font-size: var(--font-size-22);
  margin: 40px 0 26px;
}
.p-blog-detail__content h5 {
  font-weight: 700;
  font-size: var(--font-size-22);
  margin: 26px 0 26px;
}
.p-blog-detail__content h6 {
  font-weight: 700;
  font-size: var(--font-size-20);
  margin: 26px 0 26px;
}
.p-blog-detail__content p {
  line-height: 1.8;
  margin: 20px 0;
}
.p-blog-detail__content strong {
  font-weight: 700;
}
.p-blog-detail__content mark {
  background: linear-gradient(transparent 60%, #FAE58B 40%) !important;
  font-weight: 700;
  font-style: normal;
  color: #2F261B;
}
.p-blog-detail__content img {
  display: block;
  margin: 26px 0 26px;
}
.p-blog-detail__content figure img {
  margin-bottom: 12px;
}
.p-blog-detail__content figure figcaption {
  font-size: 12px;
  text-align: center;
}
.p-blog-detail__content a {
  color: #F5743C;
  text-decoration: underline;
}
.p-blog-detail__content a:hover {
  text-decoration: unset;
}
.p-blog-detail__content ol {
  counter-reset: number; /*数字をリセット*/
  list-style-type: none !important; /*数字を一旦消す*/
}
.p-blog-detail__content ol li {
  margin: 8px 0;
  padding: 0 0 0 26px;
  position: relative;
}
.p-blog-detail__content ol li::before {
  position: absolute;
  counter-increment: number;
  content: counter(number);
  display: inline-block;
  background: #F5743C;
  color: white;
  font-size: 12px;
  font-weight: 700;
  border-radius: 50%;
  left: 0;
  width: 18px;
  height: 18px;
  line-height: 18px;
  text-align: center;
  top: 50%;
  transform: translateY(-50%);
}
.p-blog-detail__content ul li {
  margin: 8px 0;
  padding: 0 0 0 24px;
  position: relative;
}
.p-blog-detail__content ul li::before {
  position: absolute;
  content: "";
  width: 6px;
  height: 6px;
  display: inline-block;
  background-color: #2F261B;
  border-radius: 50%;
  top: 14px;
  left: 8px;
  transform: translateY(-50%);
}
.p-blog-detail__content .is-style-list_check li {
  margin: 8px 0;
  padding: 0 0 0 26px;
  position: relative;
  background-color: none;
}
.p-blog-detail__content .is-style-list_check li::before {
  position: absolute;
  background: none;
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  font-size: 18px;
  content: "\f058";
  color: #F5743C;
  border-radius: 0;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
}
.p-blog-detail__content .is-style-list_num {
  counter-reset: number;
}
.p-blog-detail__content .is-style-list_num li {
  margin: 8px 0;
  padding: 0 0 0 26px;
  position: relative;
}
.p-blog-detail__content .is-style-list_num li::before {
  position: absolute;
  counter-increment: number;
  content: counter(number);
  display: inline-block;
  background: #F5743C;
  color: white;
  font-size: 12px;
  font-weight: 700;
  border-radius: 50%;
  left: 0;
  width: 18px;
  height: 18px;
  line-height: 18px;
  text-align: center;
  top: 50%;
  transform: translateY(-50%);
}
.p-blog-detail__content .custom-block-profile {
  display: flex;
  justify-content: space-between;
  margin: 40px 0;
  background-color: #F5F5F5;
  border: 2px solid #E9E5DF;
  padding: 24px 32px;
}
@media screen and (max-width: 480px) {
  .p-blog-detail__content .custom-block-profile {
    padding: 12px 16px;
  }
}
.p-blog-detail__content .custom-block-profile .profile_img img {
  max-width: 120px;
  margin: 0 40px 0 0;
}
@media screen and (max-width: 480px) {
  .p-blog-detail__content .custom-block-profile .profile_img img {
    width: 56px;
    margin: 0 16px 0 0;
  }
}
.p-blog-detail__content .custom-block-profile .profile_txt p {
  margin: 0 0 8px 0;
  line-height: 1.6;
}
.p-blog-detail__content .custom-block-profile .profile_txt_sns {
  display: flex;
}
.p-blog-detail__content .custom-block-profile .profile_txt_sns li {
  padding: 0;
  margin: 0 16px 0 0;
}
.p-blog-detail__content .custom-block-profile .profile_txt_sns li a {
  color: #2F261B;
}
.p-blog-detail__content .custom-block-profile .profile_txt_sns li a:hover {
  color: #F5743C;
  transition: all 0.2s;
}
.p-blog-detail__content .custom-block-profile .profile_txt_sns li a:hover svg {
  fill: #F5743C;
  transition: all 0.2s;
}
.p-blog-detail__content .custom-block-profile .profile_txt_sns li a svg {
  width: 28px;
  fill: #2F261B;
  transition: all 0.2s;
}
.p-blog-detail__content .custom-block-profile .profile_txt_sns li::before {
  content: none;
}
.p-blog-detail__content .custom-block-balloon_kamei {
  display: flex;
  justify-content: space-between;
  margin: 40px 0;
}
.p-blog-detail__content .custom-block-balloon_kamei .balloon_txt {
  padding: 24px 32px;
  background-color: #F5F5F5;
  border-radius: 4px;
  position: relative;
  height: -moz-fit-content;
  height: fit-content;
  width: 100%;
}
@media screen and (max-width: 480px) {
  .p-blog-detail__content .custom-block-balloon_kamei .balloon_txt {
    padding: 12px 16px;
  }
}
.p-blog-detail__content .custom-block-balloon_kamei .balloon_txt p {
  margin: 0;
}
.p-blog-detail__content .custom-block-balloon_kamei .balloon_txt::after {
  content: "";
  position: absolute;
  right: -18px;
  top: 16px;
  border-left: 20px solid #F5F5F5;
  border-top: 14px solid transparent;
  border-bottom: 14px solid transparent;
}
.p-blog-detail__content .custom-block-balloon_kamei .balloon_img {
  width: 80px;
  margin: 0 0 0 32px;
}
.p-blog-detail__content .custom-block-balloon_kamei .balloon_img > img {
  margin: 0 0 6px 0;
}
.p-blog-detail__content .custom-block-balloon_kamei .balloon_img > span {
  font-family: montserrat, sans-serif;
  font-weight: 900;
  text-align: center;
  font-size: var(--font-size-12);
  color: #2F261B;
  display: block;
}
.p-blog-detail__content .custom-block-balloon_kamei .balloon_img > span::before {
  content: "TSUBASA";
}
.p-blog-detail__content .custom-block-balloon_worry {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  margin: 40px 0;
}
.p-blog-detail__content .custom-block-balloon_worry .balloon_txt {
  padding: 24px 32px;
  background-color: #F5F5F5;
  border-radius: 4px;
  position: relative;
  height: -moz-fit-content;
  height: fit-content;
  width: 100%;
}
@media screen and (max-width: 480px) {
  .p-blog-detail__content .custom-block-balloon_worry .balloon_txt {
    padding: 12px 16px;
  }
}
.p-blog-detail__content .custom-block-balloon_worry .balloon_txt > p {
  margin: 0;
}
.p-blog-detail__content .custom-block-balloon_worry .balloon_txt::after {
  content: "";
  position: absolute;
  left: -18px;
  top: 16px;
  border-right: 20px solid #F5F5F5;
  border-top: 14px solid transparent;
  border-bottom: 14px solid transparent;
}
.p-blog-detail__content .custom-block-balloon_worry .balloon_img {
  width: 80px;
  margin: 0 32px 0 0;
}
.p-blog-detail__content .custom-block-balloon_worry .balloon_img > img {
  margin: 0 0 6px 0;
}
.p-blog-detail__content .custom-block-balloon_worry .balloon_img > span {
  font-weight: 700;
  text-align: center;
  font-size: var(--font-size-12);
  color: #2F261B;
  display: block;
}
.p-blog-detail__content .custom-block-balloon_worry .balloon_img > span::before {
  content: "相談者";
}
.p-blog-detail__content .custom-block-box_bg_orange {
  background-color: #FCEAD3;
  padding: 24px 40px;
  margin: 40px 0;
}
@media screen and (max-width: 480px) {
  .p-blog-detail__content .custom-block-box_bg_orange {
    padding: 12px 16px;
  }
}
.p-blog-detail__content .custom-block-box_bg_orange p {
  margin: 0;
}
.p-blog-detail__content .custom-block-box_border_darkbrown {
  border: 2px solid #2F261B;
  padding: 24px 40px;
  margin: 40px 0;
}
.p-blog-detail__content .custom-block-box_border_darkbrown p {
  margin: 0;
}
.p-blog-detail__content .custom-block-iconbox_point {
  background-color: #F8F7F0;
  border: 2px solid #FCEAD3;
  padding: 24px 32px;
  border-radius: 4px;
  margin: 40px 0;
}
@media screen and (max-width: 480px) {
  .p-blog-detail__content .custom-block-iconbox_point {
    padding: 12px 16px;
  }
}
.p-blog-detail__content .custom-block-iconbox_point .iconbox_ttl {
  font-size: var(--font-size-18);
  font-weight: 700;
  margin: 0 0 8px 0;
  padding: 0 0 0 30px;
  position: relative;
}
.p-blog-detail__content .custom-block-iconbox_point .iconbox_ttl::before {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  font-size: var(--font-size-20);
  content: "\f56b";
  color: #F5743C;
  position: absolute;
  left: 0px;
}
.p-blog-detail__content .custom-block-iconbox_point .iconbox_body p {
  margin: 0;
}
.p-blog-detail__content .custom-block-iconbox_note {
  background-color: #F5F5F5;
  padding: 24px 32px;
  border-radius: 4px;
  margin: 40px 0;
}
@media screen and (max-width: 480px) {
  .p-blog-detail__content .custom-block-iconbox_note {
    padding: 12px 16px;
  }
}
.p-blog-detail__content .custom-block-iconbox_note .iconbox_ttl {
  font-size: var(--font-size-18);
  font-weight: 700;
  margin: 0 0 8px 0;
  padding: 0 0 0 30px;
  position: relative;
}
.p-blog-detail__content .custom-block-iconbox_note .iconbox_ttl::before {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  font-size: var(--font-size-20);
  content: "\f044";
  color: #2F261B;
  position: absolute;
  left: 0px;
}
.p-blog-detail__content .custom-block-iconbox_note .iconbox_body p {
  margin: 0;
}
.p-blog-detail__content .custom-block-iconbox_about {
  border: 2px solid #2F261B;
  padding: 24px 32px;
  border-radius: 4px;
  margin: 40px 0;
}
@media screen and (max-width: 480px) {
  .p-blog-detail__content .custom-block-iconbox_about {
    padding: 12px 16px;
  }
}
.p-blog-detail__content .custom-block-iconbox_about .iconbox_ttl {
  font-size: var(--font-size-18);
  font-weight: 700;
  margin: 0 0 8px 0;
  padding: 0 0 0 30px;
  position: relative;
}
.p-blog-detail__content .custom-block-iconbox_about .iconbox_ttl::before {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  font-size: var(--font-size-20);
  content: "\f518";
  color: #2F261B;
  position: absolute;
  left: 0px;
}
.p-blog-detail__content .custom-block-iconbox_about .iconbox_body p {
  margin: 0;
}
.p-blog-detail__content .custom-block-iconbox_attention {
  background-color: #FCEAD3;
  padding: 24px 32px;
  border-radius: 4px;
  margin: 40px 0;
}
@media screen and (max-width: 480px) {
  .p-blog-detail__content .custom-block-iconbox_attention {
    padding: 12px 16px;
  }
}
.p-blog-detail__content .custom-block-iconbox_attention .iconbox_ttl {
  color: #F5743C;
  font-size: var(--font-size-18);
  font-weight: 700;
  margin: 0 0 8px 0;
  padding: 0 0 0 30px;
  position: relative;
}
.p-blog-detail__content .custom-block-iconbox_attention .iconbox_ttl::before {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  font-size: var(--font-size-20);
  content: "\f071";
  color: #F5743C;
  position: absolute;
  left: 0px;
}
.p-blog-detail__content .custom-block-iconbox_attention .iconbox_body p {
  margin: 0;
}
.p-blog-detail__content .custom-block-iconbox_link {
  border: 2px solid #028EA8;
  padding: 24px 32px;
  border-radius: 4px;
  margin: 40px 0;
}
@media screen and (max-width: 480px) {
  .p-blog-detail__content .custom-block-iconbox_link {
    padding: 12px 16px;
  }
}
.p-blog-detail__content .custom-block-iconbox_link .iconbox_ttl {
  color: #028EA8;
  font-size: var(--font-size-18);
  font-weight: 700;
  margin: 0 0 8px 0;
  padding: 0 0 0 30px;
  position: relative;
}
.p-blog-detail__content .custom-block-iconbox_link .iconbox_ttl::before {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  font-size: var(--font-size-20);
  content: "\f08e";
  color: #028EA8;
  position: absolute;
  left: 0px;
}
.p-blog-detail__content .custom-block-iconbox_link .iconbox_body a {
  color: #028EA8;
}
.p-blog-detail__content .custom-block-iconbox_link .iconbox_body p {
  margin: 0;
}
.p-blog-detail__content .custom-block-iconbox_link .iconbox_body ul li::before {
  background-color: #028EA8;
}
.p-blog-detail__content .custom-block-blogcard {
  border: 2px solid #2F261B;
  padding: 24px 32px;
  border-radius: 4px;
  margin: 40px 0;
}
@media screen and (max-width: 480px) {
  .p-blog-detail__content .custom-block-blogcard {
    padding: 12px 16px;
  }
}
.p-blog-detail__content .custom-block-blogcard a {
  color: #2F261B;
  text-decoration: none;
}
.p-blog-detail__content .custom-block-blogcard a:hover .blogcard_txt {
  color: #F5743C;
  text-decoration: underline;
  transition: all 0.2s;
}
.p-blog-detail__content .custom-block-blogcard a:hover .blogcard_img img {
  transform: scale(1.05);
}
.p-blog-detail__content .custom-block-blogcard .blogcard_ttl {
  font-size: var(--font-size-18);
  font-weight: 700;
  margin: 0 0 8px 0;
  padding: 0 0 0 30px;
  position: relative;
}
.p-blog-detail__content .custom-block-blogcard .blogcard_ttl::before {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  font-size: var(--font-size-20);
  content: "\f1ea";
  color: #2F261B;
  position: absolute;
  left: 0px;
}
.p-blog-detail__content .custom-block-blogcard .blogcard_body {
  font-weight: 700;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 480px) {
  .p-blog-detail__content .custom-block-blogcard .blogcard_body {
    display: block;
  }
}
.p-blog-detail__content .custom-block-blogcard .blogcard_img {
  width: 200px;
  margin: 0 24px 0 0;
  height: 100%;
  position: relative;
  overflow: hidden;
  border: 2px solid #2F261B;
}
@media screen and (max-width: 480px) {
  .p-blog-detail__content .custom-block-blogcard .blogcard_img {
    width: 100%;
    margin: 0 0 8px 0;
  }
}
.p-blog-detail__content .custom-block-blogcard .blogcard_img img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  display: block;
  transition: all 0.4s ease;
  margin: 0;
}
.p-blog-detail__content .custom-block-blogcard .blogcard_img::before {
  content: "";
  display: block;
  width: 100%;
  height: auto;
  padding-bottom: 66.6%;
}
.p-blog-detail__content .custom-block-blogcard .blogcard_txt {
  width: 100%;
}
.p-blog-detail__content .custom-block-faq {
  margin: 40px 0;
}
.p-blog-detail__content .custom-block-faq .faq-item {
  border-bottom: 1px solid #F5F5F5;
  padding: 24px 0 32px 0;
}
.p-blog-detail__content .custom-block-faq .faq-item_q {
  position: relative;
  padding-left: 64px;
  margin-bottom: 24px;
  font-weight: 700;
}
@media screen and (max-width: 480px) {
  .p-blog-detail__content .custom-block-faq .faq-item_q {
    padding-left: 60px;
  }
}
.p-blog-detail__content .custom-block-faq .faq-item_q::before {
  background-color: #F0DB81;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: block;
  font-weight: 700;
  font-size: 20px;
  content: "Q";
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  position: absolute;
  left: 0;
}
.p-blog-detail__content .custom-block-faq .faq-item_a {
  position: relative;
  padding-left: 64px;
  padding-left: auto;
}
@media screen and (max-width: 480px) {
  .p-blog-detail__content .custom-block-faq .faq-item_a {
    padding-left: 60px;
  }
}
.p-blog-detail__content .custom-block-faq .faq-item_a::before {
  border: 2px solid #F0DB81;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: block;
  font-weight: 700;
  font-size: 20px;
  content: "A";
  display: flex;
  align-items: center;
  justify-content: center;
  color: #F0DB81;
  position: absolute;
  left: 0;
}
.p-blog-detail__content .custom-block-information {
  line-height: 1;
  margin: 40px 0;
}
.p-blog-detail__content .custom-block-information > p {
  font-weight: 700;
  font-size: var(--font-size-24);
  margin-bottom: 4px;
}
.p-blog-detail__content .custom-block-information table {
  width: 100%;
  border: solid 2px #FCEAD3;
  border-radius: 4px;
  border-collapse: separate;
}
.p-blog-detail__content .custom-block-information table tr th {
  width: 25%;
  background-color: #FCEAD3;
  padding: 16px 32px;
  border-bottom: solid 1px #FCEAD3;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .p-blog-detail__content .custom-block-information table tr th {
    width: 27%;
    padding: 8px 12px;
    font-size: var(--font-size-12);
  }
}
.p-blog-detail__content .custom-block-information table tr td {
  width: 75%;
  background-color: #ffffff;
  border-bottom: solid 1px #FCEAD3;
  padding: 16px 32px;
  line-height: 1.3;
  overflow-wrap: break-word;
  word-break: break-all;
}
@media screen and (max-width: 768px) {
  .p-blog-detail__content .custom-block-information table tr td {
    width: 73%;
    padding: 8px 12px;
    font-size: var(--font-size-12);
  }
}
.p-blog-detail__content .custom-block-information table tr:first-child th {
  border-radius: 2px 0 0 0;
}
.p-blog-detail__content .custom-block-information table tr:first-child td {
  border-radius: 0 2px 0 0;
}
.p-blog-detail__content .custom-block-information table tr:last-child th {
  border-radius: 0 0 0 2px;
  border-bottom: none;
}
.p-blog-detail__content .custom-block-information table tr:last-child td {
  border-radius: 0 0 2px 0;
  border-bottom: none;
}
.p-blog-detail__content .custom-block-flow {
  margin: 80px 0;
}
.p-blog-detail__content .custom-block-flow .flow-item {
  padding: 0 0 40px 80px;
  position: relative;
  counter-increment: step 1;
}
.p-blog-detail__content .custom-block-flow .flow-item::before {
  content: "";
  display: block;
  border-left: 2px dotted #F0DB81;
  height: 100%;
  position: absolute;
  left: 28px;
  top: 0px;
}
.p-blog-detail__content .custom-block-flow .flow-item_head {
  margin-bottom: 16px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  font-weight: 700;
}
.p-blog-detail__content .custom-block-flow .flow-item_num {
  font-family: montserrat, sans-serif;
  color: #ffffff;
  width: 56px;
  height: 56px;
  background-color: #F0DB81;
  border-radius: 50%;
  position: absolute;
  margin-left: -80px;
}
.p-blog-detail__content .custom-block-flow .flow-item_num::after {
  content: counter(step, decimal-leading-zero);
  display: block;
  text-align: center;
  font-size: var(--font-size-24);
  line-height: 1;
}
.p-blog-detail__content .custom-block-flow .flow-item_num::before {
  content: "STEP";
  display: block;
  text-align: center;
  font-size: var(--font-size-11);
  line-height: 1;
  margin: 11px 0 2px 0;
}
.p-blog-detail__content .custom-block-btn_large {
  margin: 40px auto;
}
.p-blog-detail__content .custom-block-btn_large a {
  position: relative;
  max-width: 560px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 24px;
  background: #028EA8;
  border: 2px solid #028EA8;
  color: #ffffff;
  border-radius: 50px;
  text-decoration: none;
  font-weight: 500;
  line-height: 1;
  transition: all 0.2s;
}
@media screen and (max-width: 480px) {
  .p-blog-detail__content .custom-block-btn_large a {
    padding: 16px 24px;
  }
}
.p-blog-detail__content .custom-block-btn_large a span {
  width: 90%;
  line-height: 1.4;
}
.p-blog-detail__content .custom-block-btn_large a i {
  width: 24px;
  height: 24px;
  border-radius: 50px;
  background-color: #ffffff;
  position: relative;
  display: block;
}
.p-blog-detail__content .custom-block-btn_large a i:before {
  content: "";
  display: block;
  width: 13px;
  height: 11px;
  -webkit-mask-image: url("../images/common/icon_arrow.svg");
          mask-image: url("../images/common/icon_arrow.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #028EA8;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.p-blog-detail__content .custom-block-btn_large a:hover {
  transition: all 0.2s;
  background-color: #ffffff;
  border: 2px solid #028EA8;
  color: #028EA8;
}
.p-blog-detail__content .custom-block-btn_large a:hover i {
  background-color: #028EA8;
}
.p-blog-detail__content .custom-block-btn_large a:hover i::before {
  background: #ffffff;
}

#toc_container {
  background-color: #F7F7F7;
  border: solid 1px #F5F5F5;
  padding: 16px 30px !important;
  border-radius: 4px !important;
}
@media screen and (max-width: 768px) {
  #toc_container {
    padding: 16px 10px !important;
  }
}
#toc_container .toc_title {
  position: relative;
  text-align: left !important;
  padding: 0 0 0 28px !important;
}
#toc_container .toc_title::before {
  position: absolute;
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  font-size: 17px;
  content: "\f0ca";
  left: 0px;
  color: #2F261B;
}
#toc_container .toc_list {
  border: none;
}
#toc_container .toc_list li {
  margin-bottom: 8px;
  font-weight: 700;
}
#toc_container .toc_list li::before {
  content: none;
}
#toc_container .toc_list li::after {
  content: none;
}
#toc_container .toc_list li a {
  color: #2F261B;
}
#toc_container .toc_list li a:hover {
  text-decoration: underline;
}
#toc_container .toc_list li ul {
  margin-left: 0;
  border: none;
}
#toc_container .toc_list li ul li {
  padding-left: 24px;
  margin-bottom: 0px;
  font-weight: 400;
}

iframe {
  width: 100%;
  height: 100%;
  aspect-ratio: 16/9;
}

#dokodemo {
  display: none;
}

.amazonlink::before, .rakutenlink::before, .yahoolink::before {
  content: none !important;
}

.tablepress thead tr th {
  background-color: #F5743C;
  color: #ffffff;
  border: 2px solid #ffffff;
  vertical-align: middle;
  text-align: center;
}
.tablepress tbody tr td {
  background-color: #F8F7F0;
  color: #2F261B;
  border: 2px solid #ffffff;
  vertical-align: middle;
  text-align: center;
}

.instagram-media {
  height: 100vh;
  min-width: unset !important;
}

.p-contact__container {
  width: 90%;
  max-width: 1400px;
  margin: 0 auto;
}
.p-contact__body {
  margin: 0 auto 80px;
}
@media screen and (max-width: 480px) {
  .p-contact__body {
    margin: 0 auto 56px;
  }
}
.p-contact__body {
  padding: 5.7142857143% 7.1428571429%;
  background-color: #ffffff;
  border-radius: 32px;
}
@media screen and (max-width: 480px) {
  .p-contact__body {
    display: block;
  }
}
.p-contact__main {
  max-width: 1000px;
}
.p-contact__main h2 {
  font-weight: 700;
  font-size: var(--font-size-24);
  margin: 56px 0 40px;
  color: #ffffff;
  background-color: #F5743C;
  border-radius: 4px;
  padding: 10px 20px;
  position: relative;
}
@media screen and (max-width: 480px) {
  .p-contact__main h2 {
    margin: 56px 0 26px;
  }
}
.p-contact__main h2::after {
  content: "";
  position: absolute;
  bottom: -16px;
  left: 40px;
  border-top: 18px solid #F5743C;
  border-right: 12px solid transparent;
  border-left: 12px solid transparent;
}
.p-contact__main p {
  line-height: 1.8;
  margin: 20px 0;
}
.p-contact__wrap {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 56px;
}
@media screen and (max-width: 480px) {
  .p-contact__wrap {
    display: block;
  }
}
.p-contact__linearea {
  background-color: #F8F7F0;
  width: 45%;
  text-align: center;
  padding: 24px 5%;
  border-radius: 8px;
}
@media screen and (max-width: 480px) {
  .p-contact__linearea {
    width: 100%;
    margin-bottom: 24px;
  }
}
.p-contact__linearea .head {
  font-size: var(--font-size-15);
  font-weight: 700;
  color: #06C755;
  margin-bottom: 8px;
}
.p-contact__linearea .bottom {
  font-size: var(--font-size-12);
  margin-top: 8px;
}
.p-contact__cmtarea {
  width: 50%;
}
@media screen and (max-width: 480px) {
  .p-contact__cmtarea {
    width: 100%;
  }
}
.p-contact__cmtarea .custom-block-balloon_kamei {
  display: flex;
  justify-content: space-between;
}
.p-contact__cmtarea .custom-block-balloon_kamei .balloon_txt {
  padding: 24px 32px;
  background-color: #F5F5F5;
  border-radius: 2px;
  position: relative;
  height: -moz-fit-content;
  height: fit-content;
  width: 100%;
  font-size: var(--font-size-14);
  border-radius: 8px;
}
@media screen and (max-width: 480px) {
  .p-contact__cmtarea .custom-block-balloon_kamei .balloon_txt {
    padding: 12px 16px;
  }
}
.p-contact__cmtarea .custom-block-balloon_kamei .balloon_txt p {
  margin: 0;
}
.p-contact__cmtarea .custom-block-balloon_kamei .balloon_txt::after {
  content: "";
  position: absolute;
  right: -18px;
  top: 16px;
  border-left: 20px solid #F5F5F5;
  border-top: 14px solid transparent;
  border-bottom: 14px solid transparent;
}
.p-contact__cmtarea .custom-block-balloon_kamei .balloon_img {
  width: 80px;
  margin: 0 0 0 32px;
}
.p-contact__cmtarea .custom-block-balloon_kamei .balloon_img > img {
  margin: 0 0 6px 0;
}
.p-contact__cmtarea .custom-block-balloon_kamei .balloon_img > span {
  font-family: montserrat, sans-serif;
  font-weight: 900;
  text-align: center;
  font-size: var(--font-size-12);
  color: #2F261B;
  display: block;
}
.p-contact__cmtarea .custom-block-balloon_kamei .balloon_img > span::before {
  content: "KAMEI";
}

.formtitle {
  font-size: var(--font-size-32);
  font-weight: 700;
  margin-bottom: 40px;
}
@media screen and (max-width: 480px) {
  .formtitle {
    margin-bottom: 8px;
  }
}

.p-contact input[type=text],
.p-contact input[type=email],
.p-contact input[type=tel],
.p-contact input[type=url],
.p-contact input[type=textarea] {
  border: 1px solid #E9E5DF;
  border-radius: 4px;
  background-color: #ffffff;
  padding: 8px 12px;
  width: 100%;
}
.p-contact input[type=text]::-moz-placeholder, .p-contact input[type=email]::-moz-placeholder, .p-contact input[type=tel]::-moz-placeholder, .p-contact input[type=url]::-moz-placeholder, .p-contact input[type=textarea]::-moz-placeholder {
  color: #E9E5DF;
}
.p-contact input[type=text]::placeholder,
.p-contact input[type=email]::placeholder,
.p-contact input[type=tel]::placeholder,
.p-contact input[type=url]::placeholder,
.p-contact input[type=textarea]::placeholder {
  color: #E9E5DF;
}
.p-contact input[type=text]:focus,
.p-contact input[type=email]:focus,
.p-contact input[type=tel]:focus,
.p-contact input[type=url]:focus,
.p-contact input[type=textarea]:focus {
  border: 1px solid #F5743C;
  outline: 0;
}
.p-contact input[type=date] {
  border: 1px solid #E9E5DF;
  border-radius: 4px;
  background-color: #ffffff;
  padding: 8px 12px;
}
.p-contact input[type=date]::-moz-placeholder {
  color: #E9E5DF;
}
.p-contact input[type=date]::placeholder {
  color: #E9E5DF;
}
.p-contact input[type=date]:focus {
  border: 1px solid #F5743C;
  outline: 0;
}
.p-contact__textarea {
  border: 1px solid #E9E5DF;
  border-radius: 4px;
  background-color: #ffffff;
  height: 120px;
  padding: 8px 12px;
  width: 100%;
}
.p-contact__textarea::-moz-placeholder {
  color: #E9E5DF;
}
.p-contact__textarea::placeholder {
  color: #E9E5DF;
}
.p-contact__textarea:focus {
  border: 1px solid #F5743C;
  outline: 0;
}
.p-contact__selectbox {
  border: 1px solid #E9E5DF;
  border-radius: 4px;
  background-color: #ffffff;
  padding: 6px 8px;
}
.p-contact__selectbox::-moz-placeholder {
  color: #E9E5DF;
}
.p-contact__selectbox::placeholder {
  color: #E9E5DF;
}
.p-contact__selectbox:focus {
  border: 1px solid #F5743C;
  outline: 0;
}
.p-contact__checkbox > span {
  margin: 4px 24px 4px 0;
}
.p-contact__radio > span {
  display: block;
  margin-left: 0;
}
.p-contact__radio .wpcf7-list-item.first {
  margin: 0;
}
.p-contact__radio .wpcf7-list-item-label {
  cursor: pointer;
  display: flex;
}
.p-contact__radio {
  /* デフォルトのボタン */
}
.p-contact__radio input[type=radio] {
  opacity: 0; /* デフォルトのボタンを非表示 */
  position: absolute;
}
.p-contact__radio {
  /* チェック前のボタン */
}
.p-contact__radio .wpcf7-list-item-label::before {
  background: #fff;
  border: 1px solid #E9E5DF;
  border-radius: 100%;
  content: "";
  height: 20px;
  width: 20px;
  margin-bottom: auto;
  margin-right: 0.5em;
  margin-top: auto;
}
.p-contact__radio {
  /* チェック後のボタン */
}
.p-contact__radio input[type=radio]:checked + .wpcf7-list-item-label::before {
  background-color: #F5743C; /* チェック後の中心の色 */
  box-shadow: inset 0 0 0 3px #ffffff; /* 中心の色のスタイル */
}
.p-contact input[type=checkbox] {
  position: relative;
  width: 20px;
  height: 20px;
  margin: 0;
  border: 1px solid #E9E5DF;
  border-radius: 4px;
  background-color: #ffffff;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.p-contact input[type=checkbox]:focus {
  border: 1px solid #F5743C;
  outline: 0;
}
.p-contact input[type=checkbox]:checked:before {
  position: absolute;
  top: 1px;
  left: 5px;
  transform: rotate(50deg);
  width: 8px;
  height: 12px;
  border-right: 2px solid #F5743C;
  border-bottom: 2px solid #F5743C;
  content: "";
}
.p-contact__table {
  margin: 0 auto 32px;
}
@media screen and (max-width: 480px) {
  .p-contact__table {
    margin-bottom: 16px;
  }
}
.p-contact__table dl {
  display: flex;
  justify-content: space-between;
  padding: 16px 0;
}
@media screen and (max-width: 480px) {
  .p-contact__table dl {
    display: block;
    padding: 16px 0;
    border-bottom: 1px solid #E9E5DF;
  }
}
.p-contact__table dl dt {
  width: 28%;
}
@media screen and (max-width: 480px) {
  .p-contact__table dl dt {
    width: 100%;
    margin-bottom: 8px;
  }
}
.p-contact__table dl dt span {
  font-size: var(--font-size-18);
  font-weight: 700;
  margin-bottom: 4px;
  display: block;
}
.p-contact__table dl dt p {
  font-size: var(--font-size-12);
}
.p-contact__table dl .-required span {
  position: relative;
}
.p-contact__table dl .-required span::after {
  content: "必須";
  font-weight: 400;
  line-height: 1;
  border-radius: 1px;
  font-size: var(--font-size-12);
  color: #ffffff;
  background-color: #F5743C;
  padding: 2px 4px;
  margin-left: 12px;
  position: absolute;
  top: 6px;
}
@media screen and (max-width: 480px) {
  .p-contact__table dl .-required span::after {
    top: 4px;
  }
}
.p-contact__table dl dd {
  width: 70%;
}
@media screen and (max-width: 480px) {
  .p-contact__table dl dd {
    width: 100%;
  }
}
.p-contact__table dl dd ul li {
  display: flex;
  align-items: center;
  margin-bottom: 8px;
}
.p-contact__table dl dd .head {
  width: 160px;
}
.p-contact__table dl dd .unit {
  margin: 0 8px 0 8px;
}
.p-contact__table dl dd .short {
  width: 56px;
}
.p-contact__privacy {
  margin: 72px 0 64px;
  text-align: center;
}
@media screen and (max-width: 480px) {
  .p-contact__privacy {
    margin: 32px 0 42px;
  }
}
.p-contact__privacy p {
  margin-bottom: 8px;
}
.p-contact__privacy p a {
  color: #F5743C;
  text-decoration: underline;
  transition: all 0.2s;
}
.p-contact__privacy p a:hover {
  opacity: 0.6;
  transition: all 0.2s;
}
.p-contact .confirmtxt {
  text-align: center;
  margin-bottom: 32px;
}
.p-contact__submit {
  margin-top: 56px;
}
@media screen and (max-width: 480px) {
  .p-contact__submit {
    margin-top: 40px;
  }
}
.p-contact__submit input {
  max-width: 320px;
  width: 100%;
  display: block;
  margin: 0 auto;
  padding: 16px 40px;
  background-color: #F5743C;
  border-radius: 100vh;
  align-items: center;
  font-size: var(--font-size-18);
  color: #ffffff;
  letter-spacing: 0.1em;
  border: none;
  transition: all 0.2s;
}
.p-contact__submit input:hover {
  background-color: #FCEAD3;
}
@media screen and (max-width: 480px) {
  .p-contact__submit input {
    margin: 32px auto 0;
  }
}

.p-side__container {
  margin-bottom: 40px;
}
.p-side__container .c-ttl03 {
  font-weight: 900;
}
.p-side__container .p-profile__img {
  width: 120px;
  margin: 0 auto 4px auto;
  display: block;
}
.p-side__container .p-profile__name {
  font-size: var(--font-size-12);
  margin-bottom: 10px;
  text-align: center;
}
.p-side__container .p-profile__name span {
  color: #fff;
  background-color: #2f261b;
  padding: 2px 4px;
  display: inline;
}
.p-side__container .p-profile__txt {
  font-size: var(--font-size-13);
}
.p-side__container .category__list-item {
  border-top: solid 1px #000000;
}
.p-side__container .category__list-item:last-child {
  border-bottom: solid 1px #000000;
}
.p-side__container .category__list-item-link {
  padding: 8px;
  display: block;
  position: relative;
}
.p-side__container .category__list-item-link:hover {
  color: #F5743C;
}
.p-side__container .category__list-item-link::after {
  content: "";
  display: block;
  position: absolute;
  top: 19px;
  right: 16px;
  width: 9px;
  height: 9px;
  border-right: 2px solid #2F261B;
  border-top: 2px solid #2F261B;
  transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
  .p-side__container .popular__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
.p-side__container .popular__list-item {
  border-top: solid 1px #000000;
  padding: 20px 0;
}
.p-side__container .popular__list-item:last-child {
  border-bottom: solid 1px #000000;
}
.p-side__container .popular__list-item:hover .popular__txt {
  color: #F5743C;
}
.p-side__container .popular__list-item:hover .popular__img {
  border: solid 4px #F5743C;
}
@media screen and (max-width: 768px) {
  .p-side__container .popular__list-item {
    width: 48%;
  }
}
.p-side__container .popular__img {
  margin-bottom: 10px;
  border: solid 4px #2F261B;
}
.p-side__container .popular__txt {
  font-size: var(--font-size-14);
  font-weight: 700;
}
.p-side__container .instagram__follow {
  text-align: center;
  margin-bottom: 20px;
}
.p-side__container .instagram__follow-comment {
  font-size: var(--font-size-14);
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2px;
  margin-bottom: 2px;
}
.p-side__container .instagram__follow-comment::before {
  content: "";
  width: 16px;
  height: 1px;
  transform: rotate(60deg);
  box-sizing: border-box;
  background-color: #2F261B;
}
.p-side__container .instagram__follow-comment::after {
  content: "";
  width: 16px;
  height: 1px;
  transform: rotate(-60deg);
  box-sizing: border-box;
  background-color: #2F261B;
}
.p-side__container .instagram__follow-id:hover {
  color: #F5743C;
}
.p-side__container img {
  height: auto !important;
}

/*
 * object/component（最小単位のパーツ）
 * -------------------------------------------------------------------
 */
.c-btn__header01 {
  width: -moz-fit-content;
  width: fit-content;
  margin-right: 16px;
}
.c-btn__header01 a {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 8px 24px;
  background-color: #028EA8;
  border: 2px solid #028EA8;
  border-radius: 50px;
  color: #ffffff;
  transition: all 0.2s;
}
.c-btn__header01 a:hover {
  background-color: #ffffff;
  border: 2px solid #028EA8;
  color: #028EA8;
  transition: all 0.2s;
}
.c-btn__header01 .ja {
  font-size: var(--font-size-10);
  font-weight: 500;
}
.c-btn__header01 .en {
  font-size: var(--font-size-18);
  font-weight: 800;
  line-height: 1;
}
.c-btn__medium01 a {
  position: relative;
  max-width: 320px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 24px 16px 32px;
  background-color: #028EA8;
  border: 2px solid #028EA8;
  border-radius: 50px;
  transition: all 0.2s;
}
.c-btn__medium01 a .text {
  color: #ffffff;
  font-weight: 500;
  line-height: 1;
}
.c-btn__medium01 a .icon-arrow {
  width: 24px;
  height: 24px;
  border-radius: 50px;
  background-color: #ffffff;
  position: relative;
}
.c-btn__medium01 a .icon-arrow:before {
  content: "";
  display: block;
  width: 13px;
  height: 11px;
  -webkit-mask-image: url("../images/common/icon_arrow.svg");
          mask-image: url("../images/common/icon_arrow.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #028EA8;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.c-btn__medium01 a:hover {
  background-color: #ffffff;
  border: 2px solid #028EA8;
  transition: all 0.2s;
}
.c-btn__medium01 a:hover .text {
  color: #028EA8;
}
.c-btn__medium01 a:hover .icon-arrow {
  background-color: #028EA8;
}
.c-btn__medium01 a:hover .icon-arrow:before {
  background-color: #ffffff;
}
.c-btn__medium02 a {
  position: relative;
  max-width: 180px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 24px 16px 32px;
  background-color: #06C755;
  border: 2px solid #06C755;
  border-radius: 50px;
  transition: all 0.2s;
}
.c-btn__medium02 a .text {
  color: #ffffff;
  font-weight: 500;
  line-height: 1;
}
.c-btn__medium02 a .icon-line {
  width: 24px;
  height: 24px;
  position: relative;
}
.c-btn__medium02 a .icon-line:before {
  content: "";
  display: block;
  width: 28px;
  height: 28px;
  -webkit-mask-image: url("../images/common/icon_line.svg");
          mask-image: url("../images/common/icon_line.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #ffffff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.c-btn__medium02 a:hover {
  background-color: #ffffff;
  border: 2px solid #06C755;
  transition: all 0.2s;
}
.c-btn__medium02 a:hover .text {
  color: #06C755;
}
.c-btn__medium02 a:hover .icon-line {
  background-color: #06C755;
}
.c-btn__medium02 a:hover .icon-line:before {
  background-color: #ffffff;
}
.c-btn__medium03 a {
  position: relative;
  max-width: 320px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 24px 16px 32px;
  background-color: #F5743C;
  border: 2px solid #F5743C;
  border-radius: 50px;
  transition: all 0.2s;
}
.c-btn__medium03 a .text {
  color: #ffffff;
  font-weight: 500;
  line-height: 1;
}
.c-btn__medium03 a .icon-insta {
  width: 24px;
  height: 24px;
  position: relative;
}
.c-btn__medium03 a .icon-insta:before {
  content: "";
  display: block;
  width: 28px;
  height: 28px;
  -webkit-mask-image: url("../images/common/icon_insta.svg");
          mask-image: url("../images/common/icon_insta.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #ffffff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.c-btn__medium03 a:hover {
  background-color: #ffffff;
  border: 2px solid #F5743C;
  transition: all 0.2s;
}
.c-btn__medium03 a:hover .text {
  color: #F5743C;
}
.c-btn__medium03 a:hover .icon-insta:before {
  background-color: #F5743C;
}
.c-btn__medium04 {
  margin: 8px 0;
}
.c-btn__medium04 a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 24px 12px 32px;
  background-color: #F5743C;
  border: 2px solid #F5743C;
  border-radius: 50px;
  transition: all 0.2s;
}
.c-btn__medium04 a .text {
  color: #ffffff;
  font-weight: 500;
  line-height: 1;
}
.c-btn__medium04 a .text .ja {
  font-size: var(--font-size-12);
  margin-right: 4px;
}
.c-btn__medium04 a .text .en {
  margin-right: 8px;
}
.c-btn__medium04 a .text .num {
  font-size: var(--font-size-10);
  font-weight: 800;
  line-height: 1;
}
.c-btn__medium04 a .icon-arrow {
  width: 24px;
  height: 24px;
  border-radius: 50px;
  background-color: #ffffff;
  position: relative;
}
.c-btn__medium04 a .icon-arrow:before {
  content: "";
  display: block;
  width: 13px;
  height: 11px;
  -webkit-mask-image: url("../images/common/icon_arrow.svg");
          mask-image: url("../images/common/icon_arrow.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #F5743C;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.c-btn__medium04 a:hover {
  background-color: #ffffff;
  border: 2px solid #F5743C;
  transition: all 0.2s;
}
.c-btn__medium04 a:hover .text {
  color: #F5743C;
}
.c-btn__medium04 a:hover .icon-arrow {
  background-color: #F5743C;
}
.c-btn__medium04 a:hover .icon-arrow:before {
  background-color: #ffffff;
}
.c-btn__small01 a {
  width: 160px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 16px 8px 24px;
  background-color: #ffffff;
  border: 2px solid #ffffff;
  border-radius: 50px;
  transition: all 0.2s;
}
@media screen and (max-width: 480px) {
  .c-btn__small01 a {
    width: 148px;
  }
}
.c-btn__small01 a .text {
  color: #028EA8;
  font-weight: 500;
  line-height: 1;
}
.c-btn__small01 a .icon-arrow:before {
  content: "";
  display: block;
  width: 13px;
  height: 11px;
  -webkit-mask-image: url("../images/common/icon_arrow.svg");
          mask-image: url("../images/common/icon_arrow.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #028EA8;
}
.c-btn__small01 a:hover {
  border: 2px solid #028EA8;
  transition: all 0.2s;
}
.c-btn__small02 a {
  width: 160px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 16px 8px 24px;
  background-color: #ffffff;
  border: 2px solid #ffffff;
  border-radius: 50px;
  transition: all 0.2s;
}
@media screen and (max-width: 480px) {
  .c-btn__small02 a {
    width: 148px;
  }
}
.c-btn__small02 a .text {
  color: #2F261B;
  font-weight: 500;
  line-height: 1;
}
.c-btn__small02 a .icon-arrow:before {
  content: "";
  display: block;
  width: 13px;
  height: 11px;
  -webkit-mask-image: url("../images/common/icon_arrow.svg");
          mask-image: url("../images/common/icon_arrow.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #2F261B;
}
.c-btn__small02 a:hover {
  border: 2px solid #2F261B;
  transition: all 0.2s;
}
.c-btn__large01 a {
  position: relative;
  width: 360px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 24px 32px;
  background-color: #06C755;
  border: 2px solid #06C755;
  border-radius: 50px;
  transition: all 0.2s;
}
@media screen and (max-width: 480px) {
  .c-btn__large01 a {
    width: 320px;
    padding: 20px 28px;
  }
}
.c-btn__large01 a .icon-line {
  width: 24px;
  height: 24px;
  position: relative;
}
.c-btn__large01 a .icon-line:before {
  content: "";
  display: block;
  width: 28px;
  height: 28px;
  -webkit-mask-image: url("../images/common/icon_line.svg");
          mask-image: url("../images/common/icon_line.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #ffffff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.c-btn__large01 a .text {
  color: #ffffff;
  font-weight: 500;
  line-height: 1;
}
.c-btn__large01 a .icon-arrow {
  width: 24px;
  height: 24px;
  border-radius: 50px;
  background-color: #ffffff;
  position: relative;
}
.c-btn__large01 a .icon-arrow:before {
  content: "";
  display: block;
  width: 13px;
  height: 11px;
  -webkit-mask-image: url("../images/common/icon_arrow.svg");
          mask-image: url("../images/common/icon_arrow.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #06C755;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.c-btn__large01 a:hover {
  background-color: #ffffff;
  border: 2px solid #06C755;
  transition: all 0.2s;
}
.c-btn__large01 a:hover .icon-line:before {
  background-color: #06C755;
}
.c-btn__large01 a:hover .text {
  color: #06C755;
}
.c-btn__large01 a:hover .icon-arrow {
  background-color: #06C755;
}
.c-btn__large01 a:hover .icon-arrow:before {
  background-color: #ffffff;
}
.c-btn__large02 a {
  position: relative;
  width: 360px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 24px 32px;
  background-color: #028EA8;
  border: 2px solid #028EA8;
  border-radius: 50px;
  transition: all 0.2s;
}
@media screen and (max-width: 480px) {
  .c-btn__large02 a {
    width: 320px;
    padding: 20px 28px;
  }
}
.c-btn__large02 a .icon-mail {
  width: 24px;
  height: 24px;
  position: relative;
}
.c-btn__large02 a .icon-mail:before {
  content: "";
  display: block;
  width: 28px;
  height: 28px;
  -webkit-mask-image: url("../images/common/icon_mail.svg");
          mask-image: url("../images/common/icon_mail.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #ffffff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.c-btn__large02 a .text {
  color: #ffffff;
  font-weight: 500;
  line-height: 1;
}
.c-btn__large02 a .icon-arrow {
  width: 24px;
  height: 24px;
  border-radius: 50px;
  background-color: #ffffff;
  position: relative;
}
.c-btn__large02 a .icon-arrow:before {
  content: "";
  display: block;
  width: 13px;
  height: 11px;
  -webkit-mask-image: url("../images/common/icon_arrow.svg");
          mask-image: url("../images/common/icon_arrow.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #028EA8;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.c-btn__large02 a:hover {
  background-color: #ffffff;
  border: 2px solid #028EA8;
  transition: all 0.2s;
}
.c-btn__large02 a:hover .icon-mail:before {
  background-color: #028EA8;
}
.c-btn__large02 a:hover .text {
  color: #028EA8;
}
.c-btn__large02 a:hover .icon-arrow {
  background-color: #028EA8;
}
.c-btn__large02 a:hover .icon-arrow:before {
  background-color: #ffffff;
}
.c-btn__inpage01 a {
  width: 180px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 8px;
  border-bottom: 1px solid #2F261B;
  transition: all 0.2s;
}
@media screen and (max-width: 480px) {
  .c-btn__inpage01 a {
    width: 160px;
  }
}
.c-btn__inpage01 a .text {
  font-weight: 500;
  line-height: 1;
  font-size: var(--font-size-14);
  transition: all 0.2s;
}
.c-btn__inpage01 a .icon-arrow:before {
  content: "";
  display: block;
  width: 10px;
  height: 6px;
  -webkit-mask-image: url("../images/common/icon_arrow_down.svg");
          mask-image: url("../images/common/icon_arrow_down.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #2F261B;
  transition: all 0.2s;
}
.c-btn__inpage01 a:hover {
  border-bottom: 1px solid #F5743C;
  transition: all 0.2s;
}
.c-btn__inpage01 a:hover .text {
  color: #F5743C;
  transition: all 0.2s;
}
.c-btn__inpage01 a:hover .icon-arrow:before {
  background-color: #F5743C;
  transition: all 0.2s;
}
.c-btn__inpage01 .is-active {
  border-bottom: 1px solid #F5743C;
  transition: all 0.2s;
}
.c-btn__inpage01 .is-active .text {
  color: #F5743C;
  transition: all 0.2s;
}
.c-btn__inpage01 .is-active .icon-arrow:before {
  background-color: #F5743C;
  transition: all 0.2s;
}
.c-btn__inpage02 a {
  display: inline-block;
  padding: 8px 16px;
  border-right: 1px solid #E9E5DF;
}
.c-btn__inpage02 a .text {
  font-weight: 500;
  line-height: 1;
  font-size: var(--font-size-14);
  transition: all 0.2s;
}
.c-btn__inpage02 a:hover .text {
  color: #F5743C;
  transition: all 0.2s;
}
.c-btn__inpage02 .is-active {
  background-color: #FCEAD3;
}
.c-btn__inpage02 .is-active .text {
  color: #F5743C;
  transition: all 0.2s;
}
.c-btn__side01 a {
  position: relative;
  width: 180px;
  display: flex;
  align-items: center;
  justify-content: space-around;
  padding: 10px 32px 10px 16px;
  background-color: #06C755;
  border: 2px solid #06C755;
  border-radius: 50px;
  transition: all 0.2s;
}
@media screen and (max-width: 480px) {
  .c-btn__side01 a {
    width: 320px;
    padding: 20px 28px;
  }
}
.c-btn__side01 a .icon-line {
  width: 24px;
  height: 24px;
  position: relative;
}
.c-btn__side01 a .icon-line:before {
  content: "";
  display: block;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../images/common/icon_line.svg");
          mask-image: url("../images/common/icon_line.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #ffffff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.c-btn__side01 a .text {
  color: #ffffff;
  font-weight: 500;
  line-height: 1.2;
  font-size: var(--font-size-12);
}
.c-btn__side01 a:hover {
  background-color: #ffffff;
  border: 2px solid #06C755;
  transition: all 0.2s;
}
.c-btn__side01 a:hover .icon-line:before {
  background-color: #06C755;
}
.c-btn__side01 a:hover .text {
  color: #06C755;
}
.c-btn__side02 a {
  position: relative;
  width: 180px;
  display: flex;
  align-items: center;
  justify-content: space-around;
  padding: 10px 32px 10px 16px;
  background-color: #028EA8;
  border: 2px solid #028EA8;
  border-radius: 50px;
  transition: all 0.2s;
}
@media screen and (max-width: 480px) {
  .c-btn__side02 a {
    width: 320px;
    padding: 20px 28px;
  }
}
.c-btn__side02 a .icon-mail {
  width: 24px;
  height: 24px;
  position: relative;
}
.c-btn__side02 a .icon-mail:before {
  content: "";
  display: block;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url("../images/common/icon_mail.svg");
          mask-image: url("../images/common/icon_mail.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #ffffff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.c-btn__side02 a .text {
  color: #ffffff;
  font-weight: 500;
  line-height: 1.2;
  font-size: var(--font-size-12);
}
.c-btn__side02 a:hover {
  background-color: #ffffff;
  border: 2px solid #028EA8;
  transition: all 0.2s;
}
.c-btn__side02 a:hover .icon-mail:before {
  background-color: #028EA8;
}
.c-btn__side02 a:hover .text {
  color: #028EA8;
}
.c-btn {
  /*矢印ボタン*/
  /*モーダル内部*/
}
.c-btn__md {
  position: relative;
  background: #028EA8;
  border: 4px solid #028EA8;
  color: #ffffff;
  font-size: var(--font-size-18);
  font-weight: 700;
  padding: 8px 16px;
  margin-bottom: 16px;
  transition: all 0.2s;
}
.c-btn__md > a {
  display: flex;
  align-items: center;
}
.c-btn__md > a > svg {
  width: 24px;
  fill: #ffffff;
}
.c-btn__md > a > .en {
  font-weight: 800;
  padding: 8px 5% 8px 0;
  display: block;
  border-right: 2px dotted #ffffff;
}
.c-btn__md > a > .ja {
  font-size: var(--font-size-12);
  text-align: left;
  padding-left: 5%;
}
.c-btn__md:hover {
  background: #ffffff;
  border: 4px solid #028EA8;
  color: #028EA8;
}
.c-btn__md:hover > a {
  transition: all 0.2s;
}
.c-btn__md:hover > a > .en {
  border-right: 2px dotted #028EA8;
}
.c-btn {
  /*ナビゲーション内メインボタン*/
}

.c-ttl01 {
  color: #F5743C;
  margin-bottom: 32px;
}
@media screen and (max-width: 480px) {
  .c-ttl01 {
    margin-bottom: 24px;
  }
}
.c-ttl01__sub {
  font-size: var(--font-size-20);
  font-weight: 500;
  display: block;
}
.c-ttl01__main {
  font-size: var(--font-size-80);
  line-height: 1;
  display: block;
}
.c-ttl02 {
  color: #F5743C;
  margin: 24px 0 40px;
}
@media screen and (max-width: 480px) {
  .c-ttl02 {
    margin: 24px 0 24px;
  }
}
.c-ttl02__sub {
  font-size: var(--font-size-20);
  font-weight: 500;
  text-align: center;
  display: block;
}
.c-ttl02__main {
  font-size: var(--font-size-80);
  line-height: 1;
  text-align: center;
  display: block;
}
.c-ttl03 {
  font-size: var(--font-size-18);
  color: #2F261B;
  text-align: center;
  border-top: 6px double #2F261B;
  border-bottom: 6px double #2F261B;
  padding: 4px 0;
  margin-bottom: 24px;
}
.c-ttl04 {
  margin-bottom: 40px;
  text-align: center;
}
@media screen and (max-width: 480px) {
  .c-ttl04 {
    margin-bottom: 24px;
  }
}
.c-ttl04__sub {
  font-size: var(--font-size-16);
  display: block;
  color: #F5743C;
  margin-bottom: 8px;
}
.c-ttl04__main {
  font-size: var(--font-size-36);
  line-height: 1;
  display: block;
  font-weight: 700;
}

.c-copy01__bgcolor--brown {
  font-size: var(--font-size-22);
  color: #ffffff;
}
.c-copy01__bgcolor--brown span {
  background-color: #4F371F;
  padding: 0px 8px 2px;
  font-weight: 500;
  display: inline-block;
  margin-bottom: 8px;
}
@media screen and (max-width: 480px) {
  .c-copy01__bgcolor--brown span {
    font-size: 1.6rem;
    margin-bottom: 4px;
  }
}
.c-copy01__bgcolor--orange {
  font-size: var(--font-size-22);
  color: #ffffff;
}
.c-copy01__bgcolor--orange span {
  background-color: #F5743C;
  padding: 0px 8px 2px;
  font-weight: 500;
  display: inline-block;
  margin-bottom: 8px;
}
@media screen and (max-width: 480px) {
  .c-copy01__bgcolor--orange span {
    font-size: 1.6rem;
    margin-bottom: 4px;
  }
}
.c-copy01__bgcolor--darkbrown {
  font-size: var(--font-size-22);
  color: #ffffff;
}
.c-copy01__bgcolor--darkbrown span {
  background-color: #2F261B;
  padding: 0px 8px 2px;
  font-weight: 500;
  display: inline-block;
  margin-bottom: 8px;
}
@media screen and (max-width: 480px) {
  .c-copy01__bgcolor--darkbrown span {
    font-size: 1.6rem;
    margin-bottom: 4px;
  }
}
.c-copy01__bgcolor--white {
  font-size: var(--font-size-22);
  color: #F5743C;
}
.c-copy01__bgcolor--white span {
  background-color: #ffffff;
  padding: 0px 8px 2px;
  font-weight: 500;
  display: inline-block;
  margin-bottom: 8px;
}
@media screen and (max-width: 480px) {
  .c-copy01__bgcolor--white span {
    font-size: 1.6rem;
    margin-bottom: 4px;
  }
}
.c-copy02__bgcolor--white {
  writing-mode: vertical-rl;
  text-orientation: upright;
  font-size: var(--font-size-22);
  color: #2F261B;
  line-height: 1;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 1024px) {
  .c-copy02__bgcolor--white {
    writing-mode: unset;
    text-orientation: unset;
    margin: 0 0 56px 0;
  }
}
.c-copy02__bgcolor--white span {
  background-color: #ffffff;
  padding: 8px 4px 0px;
  font-weight: 500;
  display: inline-block;
  margin-left: 8px;
}
@media screen and (max-width: 1024px) {
  .c-copy02__bgcolor--white span {
    padding: 3px 0px 4px 8px;
    margin: 0 0 8px 0;
  }
}
@media screen and (max-width: 480px) {
  .c-copy02__bgcolor--white span {
    font-size: 1.6rem;
    margin-bottom: 4px;
  }
}

.c-fukidashi__line {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  font-size: var(--font-size-15);
  font-weight: 500;
  margin-bottom: 8px;
}
.c-fukidashi__line::before {
  content: "";
  width: 16px;
  height: 2px;
  transform: rotate(60deg);
  box-sizing: border-box;
  background-color: #2F261B;
}
.c-fukidashi__line::after {
  content: "";
  width: 16px;
  height: 2px;
  transform: rotate(-60deg);
  box-sizing: border-box;
  background-color: #2F261B;
}

.c-pattern__hogan1 {
  background-color: #F8F7F0; /* 背景色 */
  background-image: linear-gradient(to right, rgba(252, 234, 211, 0.1) 1px, transparent 1px), linear-gradient(to bottom, rgba(252, 234, 211, 0.1) 1px, transparent 1px);
  background-size: 16px 16px; /* 1マスのサイズ */
}
.c-pattern__hogan2 {
  background-color: #F8F7F0; /* 背景色 */
  background-image: linear-gradient(to right, #fcead3 1px, transparent 1px), linear-gradient(to bottom, #fcead3 1px, transparent 1px);
  background-size: 16px 16px; /* 1マスのサイズ */
}
.c-pattern__dot {
  background-color: #FAF8F2;
  background-image: radial-gradient(rgba(245, 116, 60, 0.3) 1px, transparent 1px);
  background-size: 20px 20px; /* ドットの間隔 */
}

.c-column {
  display: grid;
}

.-col-2-sm {
  grid-template-columns: repeat(2, 1fr);
}
@media screen and (max-width: 480px) {
  .-col-2-sm {
    grid-template-columns: 1fr;
  }
}

.-gap-c-104 {
  -moz-column-gap: 10.4%;
       column-gap: 10.4%;
}

.-col-3-sm {
  grid-template-columns: repeat(3, 1fr);
}
@media screen and (max-width: 480px) {
  .-col-3-sm {
    grid-template-columns: repeat(2, 1fr);
  }
}

.-gap-c-48 {
  -moz-column-gap: 4%;
       column-gap: 4%;
}

.-col-4-sm {
  grid-template-columns: repeat(4, 1fr);
}
@media screen and (max-width: 480px) {
  .-col-4-sm {
    grid-template-columns: repeat(2, 1fr);
  }
}

.-gap-c-32 {
  -moz-column-gap: 2.6666666667%;
       column-gap: 2.6666666667%;
}

.c-post {
  margin-bottom: 56px;
}
.c-post a:hover {
  opacity: 0.6;
  transition: all 0.2s;
}
.c-post__img {
  position: relative;
  overflow: hidden;
  margin-bottom: 16px;
}
.c-post__img img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  display: block;
}
.c-post__img::before {
  content: "";
  display: block;
  width: 100%;
  padding-bottom: 66.6%;
}
.c-post__txtarea-ttl {
  font-size: var(--font-size-18);
  font-weight: 700;
  margin-bottom: 8px;
}

.c-cat__list {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 32px;
}
.c-cat__list-item {
  margin: 0 8px 8px 0;
}

.c-cattag__list {
  display: flex;
  flex-wrap: wrap;
}
.c-cattag__list-item {
  margin: 0 8px 8px 0;
}
@media screen and (max-width: 1024px) {
  .c-cattag__list-item {
    margin: 0 6px 12px 0;
  }
}
.c-cattag__list-item a {
  padding: 4px 14px;
  font-size: var(--font-size-13);
  border: 1px solid #F5743C;
  border-radius: 50px;
  color: #F5743C;
  line-height: 1;
  transition: all 0.2s;
}
.c-cattag__list-item a:hover {
  background-color: #F5743C;
  color: #ffffff;
  transition: all 0.2s;
}
.c-cattag__list-item .current {
  background-color: #F5743C !important;
  color: #ffffff !important;
}

.c-contact {
  padding: 80px 0 40px 0;
  background-color: #F5743C;
}
@media screen and (max-width: 480px) {
  .c-contact {
    padding: 40px 0;
  }
}
.c-contact__container {
  width: 90%;
  max-width: 1400px;
  margin: 0 auto;
  background-color: #F8F7F0;
  border-radius: 48px;
  border: 8px solid #F5743C;
  padding: 4% 6%;
}
@media screen and (max-width: 480px) {
  .c-contact__container {
    display: block;
    width: 98%;
    padding: 8% 6%;
  }
}
.c-contact__head {
  display: flex;
  justify-content: space-between;
  margin-bottom: 24px;
}
@media screen and (max-width: 1024px) {
  .c-contact__head {
    flex-direction: column;
  }
}
.c-contact__head .text {
  width: 50%;
  margin: 16px 0 0 5%;
}
@media screen and (max-width: 1024px) {
  .c-contact__head .text {
    width: 100%;
    margin: 0;
  }
}
.c-contact__bottom {
  display: flex;
  justify-content: space-between;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .c-contact__bottom {
    flex-direction: column;
    align-items: center;
  }
}
.c-contact__bottom__btn {
  width: 50%;
  display: flex;
  align-items: center;
  flex-direction: column;
}
@media screen and (max-width: 1024px) {
  .c-contact__bottom__btn {
    margin-bottom: 24px;
  }
}
@media screen and (max-width: 480px) {
  .c-contact__bottom__btn {
    width: 100%;
  }
}

.c-ml-btn {
  position: absolute;
  top: 0%;
  right: 0%;
  background: #028EA8;
  display: block;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  transition: all 0.2s;
}
.c-ml-btn::before {
  display: block;
  content: "";
  background-color: #ffffff;
  position: absolute;
  width: 12px;
  height: 2px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.c-ml-btn::after {
  display: block;
  content: "";
  background-color: #ffffff;
  position: absolute;
  width: 2px;
  height: 12px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.c-ml-btn:hover {
  background: #ffffff;
  transform: scale(1.2, 1.2);
  transition: all 0.2s;
}
.c-ml-btn:hover::before {
  background-color: #028EA8;
}
.c-ml-btn:hover::after {
  background-color: #028EA8;
}

.c-breadcrumbs {
  font-size: var(--font-size-12);
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
}
@media screen and (max-width: 480px) {
  .c-breadcrumbs {
    display: none;
  }
}
.c-breadcrumbs li {
  font-size: var(--font-size-14);
}
.c-breadcrumbs li::after {
  content: "-";
  margin: 0 8px;
}
.c-breadcrumbs li:last-child::after {
  display: none;
}
.c-breadcrumbs li a:hover {
  color: #F5743C;
}

.c-page-head {
  margin: 40px 4% 16px;
}
@media screen and (max-width: 480px) {
  .c-page-head {
    margin: 24px 4% 16px;
  }
}
.c-page-head > p {
  font-size: var(--font-size-14);
  font-weight: 700;
  margin-bottom: 12px;
}

.c-service-about__container {
  background-color: #ffffff;
  border-radius: 16px;
  padding: 5% 5.8333333333%;
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 480px) {
  .c-service-about__container {
    display: block;
  }
}
.c-service-about__textarea {
  width: 54%;
}
@media screen and (max-width: 480px) {
  .c-service-about__textarea {
    width: 100%;
  }
}
.c-service-about__textarea .head {
  font-size: var(--font-size-24);
  font-weight: 700;
  margin-bottom: 24px;
}
@media screen and (max-width: 480px) {
  .c-service-about__textarea .head {
    margin-bottom: 16px;
  }
}
.c-service-about__imgarea {
  width: 38%;
}
.c-service-about__imgarea img {
  border-radius: 16px;
}
@media screen and (max-width: 480px) {
  .c-service-about__imgarea {
    width: 100%;
    display: block;
    margin-bottom: 16px;
  }
}
.c-service-solution__list {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 480px) {
  .c-service-solution__list {
    flex-direction: column;
    gap: 24px;
  }
}
.c-service-solution__list__item {
  width: 31.5%;
  background-color: #ffffff;
  border-radius: 16px;
  padding: 3.3333333333% 3.3333333333%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (max-width: 480px) {
  .c-service-solution__list__item {
    width: 100%;
  }
}
.c-service-solution__list__item .head {
  font-size: var(--font-size-18);
  font-weight: 700;
  text-align: center;
  margin-bottom: 16px;
}
.c-service-solution__list__item img {
  width: 200px;
  margin-bottom: 16px;
}
.c-service-solution__list__item ul {
  margin-bottom: 16px;
}
.c-service-solution__list__item ul li {
  margin-bottom: 4px;
  padding: 0 0 0 22px;
  position: relative;
  background-color: none;
  font-size: var(--font-size-14);
}
.c-service-solution__list__item ul li::before {
  position: absolute;
  background: none;
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  font-size: 16px;
  content: "\f058";
  color: #F5743C;
  border-radius: 0;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
}
.c-service-solution__list__item .body {
  font-size: var(--font-size-12);
  font-weight: 700;
  color: #F5743C;
  line-height: 1;
  border: 1px solid #F5743C;
  border-radius: 50px;
  display: inline-block;
  padding: 4px 8px;
}
.c-service-solution__list__item .icon-arrow {
  margin: 12px 0 6px;
}
.c-service-solution__list__item .icon-arrow:before {
  content: "";
  display: block;
  width: 10px;
  height: 6px;
  -webkit-mask-image: url("../images/common/icon_arrow_down.svg");
          mask-image: url("../images/common/icon_arrow_down.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #F5743C;
}
.c-service-solution__list__item .bottom {
  font-size: var(--font-size-18);
  font-weight: 700;
  text-align: center;
}
.c-service-solution__list__item .bottom span {
  color: #F5743C;
}
.c-service-service__list__item {
  background-color: #ffffff;
  border-radius: 16px;
  padding: 5% 5.8333333333%;
  margin-bottom: 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 480px) {
  .c-service-service__list__item {
    display: block;
  }
}
.c-service-service__list__item img {
  width: 30%;
  margin-right: 5%;
}
@media screen and (max-width: 480px) {
  .c-service-service__list__item img {
    width: 100%;
    margin-bottom: 16px;
  }
}
.c-service-service__list__item .wrap {
  width: 65%;
}
@media screen and (max-width: 480px) {
  .c-service-service__list__item .wrap {
    width: 100%;
  }
}
.c-service-service__list__item .wrap .head {
  font-size: var(--font-size-28);
  font-weight: 700;
  margin-bottom: 16px;
}
@media screen and (max-width: 480px) {
  .c-service-service__list__item .wrap .head {
    margin-bottom: 8px;
    text-align: center;
  }
}
.c-service-service__list__item .wrap .body li {
  margin-bottom: 4px;
  padding: 0 0 0 24px;
  position: relative;
  background-color: none;
}
.c-service-service__list__item .wrap .body li::before {
  position: absolute;
  background: none;
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  font-size: 18px;
  content: "\f058";
  color: #F5743C;
  border-radius: 0;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
}
.c-service-benefit__list {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.c-service-benefit__list__item {
  background-color: #ffffff;
  border-radius: 16px;
  padding: 5% 5.8333333333%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 480px) {
  .c-service-benefit__list__item {
    display: block;
  }
}
.c-service-benefit__list__item img {
  width: 180px;
  margin-right: 48px;
}
@media screen and (max-width: 480px) {
  .c-service-benefit__list__item img {
    width: 100%;
    margin-bottom: 16px;
  }
}
.c-service-benefit__list__item .wrap .head {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: var(--font-size-12);
  font-weight: 500;
  color: #F5743C;
}
@media screen and (max-width: 480px) {
  .c-service-benefit__list__item .wrap .head {
    justify-content: center;
  }
}
.c-service-benefit__list__item .wrap .head::before {
  content: "";
  width: 14px;
  height: 2px;
  transform: rotate(60deg);
  box-sizing: border-box;
  background-color: #F5743C;
}
.c-service-benefit__list__item .wrap .head::after {
  content: "";
  width: 14px;
  height: 2px;
  transform: rotate(-60deg);
  box-sizing: border-box;
  background-color: #F5743C;
}
.c-service-benefit__list__item .wrap .body {
  font-size: var(--font-size-28);
  font-weight: 700;
  margin-bottom: 12px;
}
@media screen and (max-width: 480px) {
  .c-service-benefit__list__item .wrap .body {
    text-align: center;
  }
}
.c-service-faq__list {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.c-service-faq__item {
  background-color: #ffffff;
  border-radius: 16px;
  padding: 3.3333333333% 5.8333333333%;
}
.c-service-faq__item__q {
  position: relative;
  padding-left: 64px;
  margin-bottom: 24px;
  font-weight: 700;
}
@media screen and (max-width: 480px) {
  .c-service-faq__item__q {
    padding-left: 60px;
  }
}
.c-service-faq__item__q::before {
  background-color: #F0DB81;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: block;
  font-weight: 700;
  font-size: 20px;
  content: "Q";
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  position: absolute;
  left: 0;
}
.c-service-faq__item__a {
  position: relative;
  padding-left: 64px;
  padding-left: auto;
}
@media screen and (max-width: 480px) {
  .c-service-faq__item__a {
    padding-left: 60px;
  }
}
.c-service-faq__item__a::before {
  border: 2px solid #F0DB81;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: block;
  font-weight: 700;
  font-size: 20px;
  content: "A";
  display: flex;
  align-items: center;
  justify-content: center;
  color: #F0DB81;
  position: absolute;
  left: 0;
}
.c-service-flow__container {
  background-color: #ffffff;
  border-radius: 16px;
  padding: 5% 5.8333333333%;
}
.c-service-flow .flow-item {
  padding: 0 0 40px 80px;
  position: relative;
  counter-increment: step 1;
}
.c-service-flow .flow-item::before {
  content: "";
  display: block;
  border-left: 2px dotted #F0DB81;
  height: 100%;
  position: absolute;
  left: 28px;
  top: 0px;
}
.c-service-flow .flow-item_head {
  margin-bottom: 16px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  font-weight: 700;
}
.c-service-flow .flow-item_num {
  font-family: montserrat, sans-serif;
  color: #ffffff;
  width: 56px;
  height: 56px;
  background-color: #F0DB81;
  border-radius: 50%;
  position: absolute;
  top: 0;
  margin-left: -80px;
}
.c-service-flow .flow-item_num::after {
  content: counter(step, decimal-leading-zero);
  display: block;
  text-align: center;
  font-size: var(--font-size-24);
  line-height: 1;
}
.c-service-flow .flow-item_num::before {
  content: "STEP";
  display: block;
  text-align: center;
  font-size: var(--font-size-11);
  line-height: 1;
  margin: 11px 0 2px 0;
}

.nav-links {
  margin: 40px 0 80px 0;
}
.nav-links .page-numbers {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.nav-links .page-numbers li {
  margin: 6px;
}
.nav-links .page-numbers li .page-numbers {
  background-color: #2F261B;
  width: 32px;
  height: 32px;
  color: #ffffff;
  border-radius: 50%;
  line-height: 30px;
}
.nav-links .page-numbers li .page-numbers:hover {
  background-color: #F5743C;
}
.nav-links .page-numbers li .page-numbers .fa-chevron-right {
  position: relative;
}
.nav-links .page-numbers li .page-numbers .fa-chevron-right::before {
  position: absolute;
  top: 28%;
  left: -4px;
  font-size: var(--font-size-14);
}
.nav-links .page-numbers li .page-numbers .fa-chevron-left {
  position: relative;
}
.nav-links .page-numbers li .page-numbers .fa-chevron-left::before {
  position: absolute;
  top: 28%;
  right: -4px;
  font-size: var(--font-size-14);
}
.nav-links .page-numbers li .current {
  background-color: #F5743C;
}

.c-recommend {
  margin-bottom: 80px;
}
.c-recommend .c-ttl03 {
  font-weight: 700;
  margin: 120px 0 0;
}
.c-recommend-post {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 2px solid #2F261B;
  margin-bottom: 0;
  padding: 3% 2%;
  border-radius: unset;
}
@media screen and (max-width: 1024px) {
  .c-recommend-post {
    display: block;
    padding: 6% 2%;
  }
}
.c-recommend-post__img {
  width: 36.6666666667%;
  height: auto;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 1024px) {
  .c-recommend-post__img {
    width: 100%;
    margin-bottom: 16px;
  }
}
.c-recommend-post__img img {
  width: 100%;
  height: auto;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  display: block;
  transition: all 0.4s ease;
}
.c-recommend-post__img img:hover {
  transform: scale(1.05);
}
.c-recommend-post__img img:hover .p-top-blog-post__ttl {
  color: #F5743C;
}
.c-recommend-post__img::before {
  content: "";
  display: block;
  width: 100%;
  padding-bottom: 55.6%;
}
.c-recommend-post__txtarea {
  width: 56.6666666667%;
}
@media screen and (max-width: 1024px) {
  .c-recommend-post__txtarea {
    width: 100%;
  }
}
.c-recommend-post__area {
  font-size: var(--font-size-16);
  margin: 0 0 8px 0;
}
.c-recommend-post__area span {
  display: flex;
}
.c-recommend-post__area span:before {
  content: "";
  display: block;
  width: 18px;
  height: auto;
  -webkit-mask-image: url("../images/common/icon_pin.svg");
          mask-image: url("../images/common/icon_pin.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #F5743C;
  margin-right: 8px;
}
.c-recommend-post__ttl {
  font-size: var(--font-size-18);
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 16px;
  transition: all 0.2s;
}
.c-recommend-post__ttl:hover {
  color: #F5743C;
}

/*
 * object/utility（調整用）
 * -------------------------------------------------------------------
 */
.u-color-orange {
  color: #F5743C;
}
.u-color-darkbrown {
  color: #2F261B;
}
.u-color-white {
  color: #ffffff;
}
.u-color-line {
  color: #06C755;
}

.u-bgcolor-orange {
  background-color: #F5743C;
}
.u-bgcolor-darkbrown {
  background-color: #2F261B;
}
.u-bgcolor-white {
  background-color: #ffffff;
}
.u-bgcolor-line {
  background-color: #06C755;
}

.u-text-left {
  text-align: left;
}
.u-text-center {
  text-align: center;
}
.u-text-right {
  text-align: right;
}
.u-text-fz22 {
  font-size: var(--font-size-22);
}
.u-text-fz72 {
  font-size: var(--font-size-72);
}

.u-mb-1 {
  margin-bottom: 8px;
}
.u-mb-2 {
  margin-bottom: 16px;
}
.u-mb-3 {
  margin-bottom: 24px;
}
@media screen and (max-width: 1024px) {
  .u-mb-3 {
    margin-bottom: 16px;
  }
}
.u-mb-4 {
  margin-bottom: 32px;
}
.u-mb-5 {
  margin-bottom: 40px;
}
.u-mb-6 {
  margin-bottom: 48px;
}
.u-mb-7 {
  margin-bottom: 56px;
}
@media screen and (max-width: 1024px) {
  .u-mb-7 {
    margin-bottom: 32px;
  }
}
.u-mb-8 {
  margin-bottom: 64px;
}
.u-mb-9 {
  margin-bottom: 72px;
}/*# sourceMappingURL=style.css.map */