@charset "UTF-8";
/*==========================================
テーブルレイアウト
===========================================*/
.com-table tr {
  display: flex;
  padding: 2rem 0;
}
.com-table tr th {
  padding: 0 1rem;
  width: 18rem;
  vertical-align: top;
}
.com-table tr td {
  width: calc(100% - 18rem);
  padding: 0 2rem;
}
.com-table tr td a[href^="mailto:"] {
  text-decoration: underline;
}
.com-table tr td .tel__text {
  display: block;
  line-height: 1.3;
}

/*==========================================
共通ブロック・要素
===========================================*/
.com-content p {
  margin-bottom: 3rem;
}

.com-text.align-center {
  text-align: center;
}

#g-map .map {
  height: 40rem;
}

/*==========================================
header
===========================================*/
.logo {
  width: 27.2rem;
}

.l-header {
  padding: 1rem 6rem;
  z-index: 1001;
  box-shadow: 0 0.2rem 1rem rgba(var(--color-black-rgb), 0.08);
}
.l-header__logo {
  line-height: 1;
}
.l-header__right {
  width: 97rem;
}
.l-header__nav {
  margin-top: 1.5rem;
}
.l-header__nav-list {
  gap: 0 2.5rem;
}
.l-header__nav-link {
  padding-left: 1.8rem;
}
.l-header__nav-link::before {
  position: absolute;
  inset: 0 auto 0 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 0.7rem;
  height: 0.7rem;
  border-top: 2px solid var(--primary-color);
  border-right: 2px solid var(--primary-color);
  transform: rotate(45deg);
  transition: all 0.3s;
  opacity: 0;
}
.l-header__nav-link.current::before {
  opacity: 1;
}
.l-header__nav-link:hover::before {
  opacity: 1;
}
.l-header__store-list {
  gap: 1.5rem;
}
.l-header__store-list .c-store-card {
  width: 23rem;
  padding: 0;
  background: none;
}

/*==========================================
footer
===========================================*/
.l-footer {
  padding: 6rem 0 10rem;
}
.l-footer__brand {
  gap: 1.5rem;
  margin-bottom: 4rem;
}
.l-footer__logo {
  margin: 0 auto 2rem;
}
.l-footer__logo img {
  filter: brightness(0) invert(1);
}
.l-footer__stores {
  padding: 2.5rem 0;
  margin-bottom: 4rem;
}
.l-footer__stores .c-store-card {
  width: 27rem;
  margin: 0 auto;
}
.l-footer__nav {
  padding: 0 20rem;
}
.l-footer__nav-list {
  gap: 0.5rem 2rem;
}
.l-footer__nav-link {
  font-size: var(--font-size-16);
}
.l-footer__nav-link:hover {
  text-decoration: underline;
}

#copyright {
  text-align: center;
  font-size: var(--font-size-14);
  margin-top: 6rem;
}

/*==========================================
sv
===========================================*/
.sv {
  height: 40rem;
  position: relative;
  margin-top: 13rem;
}
.sv__title {
  /*==========================================
  上下左右中央揃え
  ===========================================*/
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  font-size: var(--font-size-40);
  text-align: center;
  padding: 2rem 2rem;
  line-height: 1.2;
}
.sv__title span {
  display: flex;
  align-items: center;
}
.sv__title span::before, .sv__title span::after {
  content: "・";
  color: var(--accent-color);
}

.p-beginner__sv {
  background: url(../../img/sv/beginner-sv_bg.jpg) center/cover no-repeat;
}

.p-purchase__sv {
  background: url(../../img/sv/purchase-sv_bg.jpg) center/cover no-repeat;
}

.p-flow__sv {
  background: url(../../img/sv/flow-sv_bg.jpg) center/cover no-repeat;
}

.p-info__sv {
  background: url(../../img/sv/info-sv_bg.jpg) center/cover no-repeat;
}

.p-news__sv {
  background: url(../../img/sv/news-sv_bg.jpg) center/cover no-repeat;
}

.p-contact__sv {
  background: url(../../img/sv/contact-sv_bg.jpg) center/cover no-repeat;
}

.p-complete__sv {
  background: url(../../img/sv/complete-sv_bg.jpg) center/cover no-repeat;
}

.p-site__sv {
  background: url(../../img/sv/site-sv_bg.jpg) center/cover no-repeat;
}

.p-privacy__sv {
  background: url(../../img/sv/privacy-sv_bg.jpg) center/cover no-repeat;
}

.p-e404__sv {
  background: url(../../img/sv/e404-sv_bg.jpg) center/cover no-repeat;
}

/*==========================================
title--primary
===========================================*/
.title--primary {
  font-size: var(--font-size-50);
  line-height: 1.4;
  text-align: center;
  position: relative;
  font-weight: var(--font-weight-bold);
  padding-bottom: 2.5rem;
  margin-bottom: 8rem;
  background: url(../img/common/primary-ttl_dotted.svg) center bottom no-repeat;
}

.title--secondary {
  font-size: var(--font-size-25);
  border-radius: 1rem;
  color: var(--color-white);
  font-weight: var(--font-weight-bold);
  background: var(--primary-color);
  padding: 0 1.2rem;
  margin-bottom: 1.5rem;
  line-height: 1.6;
}

/*==========================================
button
===========================================*/
.button--primary {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 4rem;
  min-height: 6rem;
  border-radius: 3rem;
  width: 22rem;
  background: var(--secondary-color-light);
}
.button--primary:hover {
  opacity: 0.85;
}
.button--primary .bs-icon--arrow-right {
  display: block;
}
.button--primary .bs-icon--arrow-right::before {
  transition: all 0.3s;
  right: -4.5rem;
  width: 3rem;
  height: 3rem;
  color: var(--secondary-color);
  background: var(--color-white);
  border-radius: 50%;
  font-weight: var(--font-weight-black);
}
.button--primary:hover {
  background: var(--accent-color);
  color: var(--color-white);
}
.button--primary:hover .bs-icon--arrow-right::before {
  right: -5.5rem;
  color: var(--accent-color);
}

.button--secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding: 1.5rem 3.5rem;
  border: 2px solid var(--primary-color);
  border-radius: var(--button-radius-pc);
  color: var(--primary-color);
  font-size: var(--font-size-15);
  transition: background 0.3s, color 0.3s;
}
.button--secondary:hover {
  background: var(--primary-color);
  color: var(--color-white);
}
.button--secondary.has-arrow .bs-icon {
  width: 1.6rem;
  height: 1.6rem;
}
.button--secondary.has-arrow .bs-icon::before {
  inset: 0;
}

.button--accent,
[class*=__button].button--accent {
  position: relative;
  padding: 1.8rem 5rem 1.8rem 6rem;
  border-radius: var(--button-radius-pc);
  transition: opacity 0.3s;
}
.button--accent:hover,
[class*=__button].button--accent:hover {
  opacity: 0.85;
}
.button--accent .bs-icon,
[class*=__button].button--accent .bs-icon {
  width: 2rem;
  height: 2rem;
  margin-left: 1rem;
}
.button--accent .bs-icon::before,
[class*=__button].button--accent .bs-icon::before {
  inset: 0;
}

/*
# l-side-contact
------------------------*/
.l-side-contact {
  position: fixed;
  z-index: 100;
  inset: auto 2rem 2rem auto;
  z-index: 900;
  width: 20rem;
  height: 20rem;
  border: 0.7rem solid var(--color-white);
  border-radius: 50%;
  background-image: radial-gradient(#fecf96 1px, transparent 1px), radial-gradient(#fecf96 1px, transparent 1px);
  background-size: 15px 15px;
  background-position: 0 0, 7.5px 7.5px;
  background-color: #FEDCB3;
  box-shadow: 0 0.3rem 1rem rgba(var(--color-black-rgb), 0.15);
  display: flex;
  align-items: center;
  justify-content: center;
}
.l-side-contact:hover {
  transform: scale(0.97);
  box-shadow: 0 0.1rem 0.2rem rgba(var(--color-black-rgb), 0.15);
}
.l-side-contact:hover::before {
  background-color: var(--accent-color);
  color: var(--color-white);
}
.l-side-contact::before, .l-side-contact::after {
  position: absolute;
}
.l-side-contact::before {
  transition: all 0.3s;
  inset: auto 1.2rem 0.75rem auto;
  width: 3rem;
  height: 3rem;
  box-shadow: 0 0.3rem 1rem rgba(var(--color-black-rgb), 0.15);
  color: var(--accent-color);
  background: var(--color-white);
  border-radius: 50%;
  font-weight: var(--font-weight-black);
}
.l-side-contact::after {
  content: "";
  width: 6.7rem;
  height: 7rem;
  inset: -1rem auto auto 0;
  background: url(../img/common/fixed-button_ill.png) center/100% no-repeat;
  z-index: 1;
}
.l-side-contact__text {
  font-size: var(--font-size-20);
  padding-top: 3.5rem;
  background: url(../img/common/mail_ic.svg) top center/3rem no-repeat;
}

/*==========================================
コンポーネントファイル
===========================================*/
/*
# パンくずリスト
------------------------*/
div .bread {
  font-size: var(--font-size-15);
  position: relative;
  z-index: 100;
}
div .bread .breadcrumbs {
  position: absolute;
  width: var(--site-primary-inbox);
  margin: 0 auto;
  inset: 1rem auto auto 0;
  gap: 1rem 2rem;
}
div .bread li {
  position: relative;
}
div .bread li::after {
  content: " > ";
  color: var(--body-font-color);
  position: absolute;
  inset: 0 -1.5rem 0 auto;
  margin: auto 0;
}
div .bread li:last-child::after {
  content: "";
}
div .bread li a {
  color: var(--body-font-color);
}
div .bread li a:hover {
  text-decoration: underline;
}

/*
# 一覧ぺージ用カテゴリ(セレクトボックス)
------------------------*/
.global-select {
  width: 30rem;
  margin: 0 0 4.5rem auto;
}
.global-select select {
  padding: 1.5rem 3.7rem 1.5rem 1.5rem;
}

/*
# c-store-card
------------------------*/
.c-store-card {
  width: 27rem;
  border-radius: 1.6rem;
  gap: 1rem;
  padding: 0 2rem;
  display: flex;
  flex-direction: column;
  background-image: linear-gradient(to bottom, var(--color-gray) 2px, transparent 2px);
  background-size: 2px 1rem;
  background-repeat: repeat-y;
  background-position: right bottom;
}
.c-store-card:last-child {
  background-image: none;
}
.c-store-card--compact {
  padding: 1rem 1.5rem;
  width: calc((100% - 3rem) / 2);
}
.c-store-card--card {
  width: calc((100% - 4.5rem) / 4);
  min-height: 12rem;
}
.c-store-card--detail {
  width: 100%;
  padding: 0;
  overflow: hidden;
  border: 1px solid var(--color-gray-light);
}
.c-store-card__name, .c-store-card__full-name {
  font-size: var(--font-size-18);
}
.c-store-card a.c-store-card__name::before {
  opacity: 0;
  right: -2.5rem;
  line-height: 0;
}
.c-store-card a.c-store-card__name:hover {
  transform: translateX(-2.5rem);
}
.c-store-card a.c-store-card__name:hover::before {
  opacity: 1;
}
.c-store-card__head {
  gap: 1.5rem;
}
.c-store-card__tel {
  font-size: var(--font-size-25);
  justify-content: center;
  border-radius: 2.5rem;
  padding: 0.2rem 0 0.2rem 3.5rem;
  letter-spacing: 0.04em;
  position: relative;
}
.c-store-card__tel::before, .c-store-card__tel::after {
  position: absolute;
  content: "";
  margin: auto 0;
}
.c-store-card__tel::before {
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background: var(--color-white);
  inset: 0 auto 0 1.5rem;
}
.c-store-card__tel::after {
  width: 1.5rem;
  height: 1.5rem;
  -webkit-mask: url(../img/common/tel_ic.svg) center/100% no-repeat;
          mask: url(../img/common/tel_ic.svg) center/100% no-repeat;
  background: var(--primary-color);
  inset: 0 auto 0 2.2rem;
}
.c-store-card__sns {
  width: -moz-fit-content;
  width: fit-content;
  gap: 1.5rem;
}
.c-store-card__sns-link {
  width: 3rem;
  height: 3rem;
  display: block;
}
.c-store-card__address {
  text-align: center;
  font-size: var(--font-size-16);
  line-height: 1.25;
  flex-grow: 1;
}
.c-store-card__photo {
  width: 100%;
  height: 28rem;
  overflow: hidden;
}
.c-store-card__body {
  padding: 3rem;
}
.c-store-card__info {
  margin: 2rem 0;
  gap: 1.5rem;
}
.c-store-card__info-row {
  gap: 2rem;
  margin-bottom: 1rem;
}
.c-store-card__info-row:last-child {
  margin-bottom: 0;
}
.c-store-card__info-label {
  width: 10rem;
  flex-shrink: 0;
  color: var(--primary-color);
}
.c-store-card__info-value {
  width: calc(100% - 12rem);
  line-height: 1.6;
}
.c-store-card__site {
  gap: 1.5rem;
  margin-top: 3rem;
}
.c-store-card__site-link {
  width: 20rem;
  background: #d9e5ea;
  min-height: 5rem;
  padding-left: 6rem;
}
.c-store-card__site-link::before {
  width: 3rem;
  height: 3rem;
  background: var(--color-white);
  border-radius: 50%;
  font-size: var(--font-size-15);
  left: 1.5rem;
}
.c-store-card__site-link:hover {
  opacity: 1;
  background: var(--primary-color);
  color: var(--color-white);
}
.c-store-card__site-link:hover::before {
  color: var(--primary-color);
}
.c-store-card__map-inner {
  /*==========================================
  iframe レスポンシブ　アスペクト比を保ちながら縦横を伸縮
  ===========================================*/
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
}
.c-store-card__map-inner iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}
.c-store-card__map-inner {
  height: 30rem;
  border-radius: 1rem;
  overflow: hidden;
  margin-top: 3rem;
}
.c-store-card.store--kitakoshigaya .c-store-card__tel {
  background: #d9e5ea;
  color: var(--primary-color-dark);
}
.c-store-card.store--kitakoshigaya .c-store-card__tel::after {
  background: var(--primary-color-dark);
}
.c-store-card.store--kitakoshigaya .c-store-card__name,
.c-store-card.store--kitakoshigaya .c-store-card__full-name {
  color: var(--primary-color-dark);
}
.c-store-card.store--kitakoshigaya .c-store-card__info-row dt {
  background: var(--primary-color-dark);
}
.c-store-card.store--lifekitakoshigaya .c-store-card__tel {
  background: #d9eaf1;
  color: var(--primary-color-light);
}
.c-store-card.store--lifekitakoshigaya .c-store-card__tel::after {
  background: var(--primary-color-light);
}
.c-store-card.store--lifekitakoshigaya .c-store-card__name,
.c-store-card.store--lifekitakoshigaya .c-store-card__full-name {
  color: var(--primary-color-light);
}
.c-store-card.store--lifekitakoshigaya .c-store-card__info-row dt {
  background: var(--primary-color-light);
}
.c-store-card.store--higashikoshigaya .c-store-card__tel {
  background: #d9eff9;
  color: #0095d9;
}
.c-store-card.store--higashikoshigaya .c-store-card__tel::after {
  background: #0095d9;
}
.c-store-card.store--higashikoshigaya .c-store-card__name,
.c-store-card.store--higashikoshigaya .c-store-card__full-name {
  color: #0095d9;
}
.c-store-card.store--higashikoshigaya .c-store-card__info-row dt {
  background: #0095d9;
}
.c-store-card.store--minamikoshigaya .c-store-card__tel {
  background: #d6ecf4;
  color: #33a1c9;
}
.c-store-card.store--minamikoshigaya .c-store-card__tel::after {
  background: #33a1c9;
}
.c-store-card.store--minamikoshigaya .c-store-card__name,
.c-store-card.store--minamikoshigaya .c-store-card__full-name {
  color: #33a1c9;
}
.c-store-card.store--minamikoshigaya .c-store-card__info-row dt {
  background: #33a1c9;
}

.c-store__attention {
  text-align: center;
  width: 94.44%;
  margin: 1rem auto 0;
}
.c-store__attention img {
  width: 20.3rem;
  vertical-align: middle;
}

/*
# c-contact-btn
------------------------*/
[class*=__button].button--accent {
  width: 65rem;
  min-height: 12rem;
  border-radius: 6rem;
  font-size: var(--font-size-20);
  margin: 0 auto;
  transition: all 0.3s;
}
[class*=__button].button--accent::before {
  color: var(--accent-color);
  font-weight: var(--font-weight-black);
  right: 6%;
  font-size: var(--font-size-35);
}
[class*=__button].button--accent::after {
  content: "";
  position: absolute;
  width: 6rem;
  height: 6rem;
  inset: 0 auto 0 2rem;
  margin: auto 0;
  border-radius: 50%;
  background: url(../img/common/mail_ic.svg) center/2rem no-repeat, var(--color-white);
}
[class*=__button].button--accent:hover {
  background-color: var(--accent-color);
  color: var(--color-white);
}
[class*=__button].button--accent:hover::before {
  color: var(--color-white);
}

/*
# c-case__list
------------------------*/
.c-case__list {
  gap: 4rem;
}

.c-case__item {
  width: 24rem;
}

.c-case__thumb {
  width: 100%;
  height: 24rem;
  aspect-ratio: 1;
  margin-bottom: 1.5rem;
  overflow: hidden;
}

.c-case__tag-item {
  padding: 0 1rem;
  font-size: var(--font-size-14);
}

.c-case__card-title {
  font-size: var(--font-size-18);
  border-bottom: 1px solid var(--color-gray);
  display: flex;
}
.c-case__card-title::before {
  content: "・";
  color: var(--primary-color);
}

/*==========================================
top
===========================================*/
/*
# p-top-mv
------------------------*/
.p-top__mv {
  position: relative;
  height: 145rem;
}
.p-top__mv::before, .p-top__mv::after {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-size: 100%;
  z-index: 2;
}
.p-top__mv::before {
  width: 56.8rem;
  height: 38.8rem;
  background-image: url(../img/top/mv/mv-lt_deco.png);
  inset: 12rem auto auto 0;
  background-position: center top;
}
.p-top__mv::after {
  width: 50.3rem;
  height: 34rem;
  background-image: url(../img/top/mv/mv-rt_deco.png);
  inset: auto 0 -1rem auto;
  background-position: center bottom;
}
.p-top__mv-video {
  width: 100%;
  height: 100%;
}
.p-top__mv-video video {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
.p-top__mv-catch {
  position: absolute;
  inset: 37rem auto auto 17rem;
  z-index: 3;
  width: 47.3rem;
  margin: 0 auto;
  padding: 8rem 0 6rem;
}

/*
# top-section__headline
------------------------*/
.top-section__headline {
  background: url(../img/top/head-sec_bg.png) bottom center/cover no-repeat;
}

/*
# p-top-contact
------------------------*/
.p-top-contact {
  padding: 15rem 0 10rem;
  position: relative;
  z-index: 5;
}
.p-top-contact__inbox {
  padding: 10rem;
  border-radius: 6rem;
}
.p-top-contact__inbox::after {
  content: "";
  position: absolute;
  width: 19.1rem;
  height: 20.5rem;
  background: url(../img/top/info-rt_ill.png) center/100% no-repeat;
  inset: -2.4rem 19.6rem auto auto;
}
.p-top-contact::before, .p-top-contact::after {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-size: 100%;
  z-index: -1;
}
.p-top-contact::before {
  width: 37.1rem;
  height: 61.2rem;
  background-image: url(../img/top/head-sec-lt_deco.png);
  inset: 46.6rem auto auto 0;
}
.p-top-contact::after {
  width: 36.6rem;
  height: 58.8rem;
  background-image: url(../img/top/head-sec-rt_deco.png);
  inset: 4rem 0 auto auto;
}
.p-top-contact__head {
  text-align: center;
  margin-bottom: 2.5rem;
}
.p-top-contact .c-worktime {
  font-size: var(--font-size-20);
}
.p-top-contact__badge {
  display: inline-block;
  padding: 0 1rem;
  font-size: var(--font-size-25);
  margin-bottom: 0.5rem;
  color: #100066;
}
.p-top-contact__title {
  font-size: var(--font-size-30);
  margin-bottom: 2rem;
}
.p-top-contact__action {
  text-align: center;
  margin-bottom: 6rem;
}
.p-top-contact__note {
  width: 18.8rem;
  inset: auto 12.5rem -3.1rem auto;
}
.p-top-contact__stores {
  padding: 2.5rem 0;
}
.p-top-contact__stores .c-store__list {
  gap: 1.5rem;
}

/*
# p-top-worry
------------------------*/
.p-top-worry {
  padding: 10rem 0 8rem;
}
.p-top-worry__title {
  margin-bottom: 5rem;
  font-size: var(--font-size-45);
}
.p-top-worry__title span.color-primary {
  font-size: var(--font-size-55);
}
.p-top-worry__title span.color-primary::before {
  position: absolute;
  content: "";
  width: 0.8rem;
  height: 0.8rem;
  border-radius: 50%;
  background: var(--accent-color);
  inset: 0 0 auto;
  margin: 0 auto;
}
.p-top-worry__list {
  height: 79.5rem;
  gap: 0;
  margin-bottom: 6rem;
  padding-bottom: 24.5rem;
  background: url(../img/top/worry_ill.png) center bottom/35rem no-repeat;
}
.p-top-worry__list::after {
  content: "";
  position: absolute;
  width: 13rem;
  height: 5rem;
  background: url(../img/top/worry_arr.png) center/100% no-repeat;
  inset: auto 0 -8rem;
  margin: 0 auto;
  z-index: 1;
}
.p-top-worry__item {
  font-size: var(--font-size-20);
  text-align: center;
  line-height: 1.5;
  position: absolute;
}
.p-top-worry__item--01 {
  width: 36.4rem;
  height: 32rem;
  background: url(../img/top/worry-item01_markup.png) center/100% no-repeat;
  padding: 10rem 0 0;
  inset: 0 auto auto 27rem;
}
.p-top-worry__item--02 {
  width: 34.5rem;
  height: 25.6rem;
  background: url(../img/top/worry-item02_markup.png) center/100% no-repeat;
  padding: 9rem 0 0;
  inset: 2rem 26rem auto auto;
}
.p-top-worry__item--03 {
  width: 36.1rem;
  height: 26.8rem;
  background: url(../img/top/worry-item03_markup.png) center/100% no-repeat;
  padding: 8rem 0 0;
  inset: 28.5rem auto auto 4.3rem;
}
.p-top-worry__item--04 {
  width: 38.8rem;
  height: 25.5rem;
  background: url(../img/top/worry-item04_markup.png) center/100% no-repeat;
  padding: 4rem 0 0;
  margin: 0 auto;
  inset: 29.2rem 0 auto;
}
.p-top-worry__item--05 {
  width: 35.3rem;
  height: 27.1rem;
  background: url(../img/top/worry-item05_markup.png) center/100% no-repeat;
  padding: 8.2rem 0 0;
  inset: 29.2rem 8rem auto auto;
}
.p-top-worry__solution {
  width: 108rem;
  margin: 0 auto;
  padding: 5.5rem 4rem;
  font-size: var(--font-size-30);
  line-height: 1.8;
  text-align: center;
}
.p-top-worry__solution::before {
  content: "";
  position: absolute;
  width: 14.1rem;
  height: 14.1rem;
  background: url(../img/top/worry-solution_ill.png) center/100% no-repeat;
  inset: auto -1rem -1rem auto;
}
.p-top-worry__solution span {
  margin: 0 0.5rem;
}

/*
# p-top-reason
------------------------*/
.p-top-reason {
  padding: 10rem 0;
  background: url(../img/top/reason_bg.png) top center/100% no-repeat;
}
.p-top-reason::before, .p-top-reason::after {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-size: 100%;
  z-index: 0;
}
.p-top-reason::before {
  width: 38.7rem;
  height: 56.1rem;
  background-image: url(../img/top/reason-lb_deco.png);
  inset: auto auto -30.5rem -4rem;
}
.p-top-reason::after {
  width: 32.6rem;
  height: 49.2rem;
  background-image: url(../img/top/reason-rt_deco.png);
  inset: 9.5rem -3rem auto auto;
}
.p-top-reason__title {
  margin-bottom: 4.5rem;
}
.p-top-reason__item {
  position: relative;
  z-index: 1;
  margin-bottom: 6rem;
  min-height: 36.9rem;
  padding-top: 6rem;
}
.p-top-reason__item::after {
  position: absolute;
  content: "";
  width: 19.6rem;
  height: 19.6rem;
  margin: auto 0;
  top: 0;
  bottom: 0;
}
.p-top-reason__item:nth-child(1)::after {
  background: url(../img/top/reason-item01_icon.png) center/100% no-repeat;
}
.p-top-reason__item:nth-child(2)::after {
  background: url(../img/top/reason-item02_icon.png) center/100% no-repeat;
}
.p-top-reason__item:nth-child(3)::after {
  background: url(../img/top/reason-item03_icon.png) center/100% no-repeat;
}
.p-top-reason__item:last-child {
  margin-bottom: 0;
}
.p-top-reason__item:nth-child(odd)::after {
  left: -20rem;
}
.p-top-reason__item:nth-child(odd) .p-top-reason__content-img {
  right: 0;
  margin-right: -2rem;
}
.p-top-reason__item:nth-child(even)::after {
  right: -20rem;
}
.p-top-reason__item:nth-child(even) .p-top-reason__content-img {
  left: 0;
  margin-left: -2rem;
}
.p-top-reason__item:nth-child(even) .p-top-reason__content {
  margin-left: auto;
}
.p-top-reason__content {
  width: 61rem;
  gap: 2rem 2.5rem;
}
.p-top-reason__number {
  width: 10rem;
  height: 10rem;
  margin-bottom: 0 !important;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  flex-direction: column;
  text-align: center;
  line-height: 1.1;
  text-shadow: var(--color-white) 2px 0px, var(--color-white) -2px 0px, var(--color-white) 0px -2px, var(--color-white) 0px 2px, var(--color-white) 2px 2px, var(--color-white) -2px 2px, var(--color-white) 2px -2px, var(--color-white) -2px -2px, var(--color-white) 1px 2px, var(--color-white) -1px 2px, var(--color-white) 1px -2px, var(--color-white) -1px -2px, var(--color-white) 2px 1px, var(--color-white) -2px 1px, var(--color-white) 2px -1px, var(--color-white) -2px -1px;
}
.p-top-reason__number-value {
  font-size: var(--font-size-25);
}
.p-top-reason__item-title {
  font-size: var(--font-size-30);
  padding-bottom: 1rem;
  text-decoration: underline;
  text-underline-offset: 0.5rem;
  text-decoration-thickness: 1px;
  text-decoration-color: var(--color-gray);
  line-height: 1.3333333333;
}
.p-top-reason__content-img {
  position: absolute;
  top: 0;
  width: 44.1rem;
}

/*
# p-top-movie
------------------------*/
.p-top-movie-wrapper {
  background: url(../img/top/movie_bg.png) top center/100% no-repeat;
}

.p-top-movie {
  padding: 10rem 0;
}
.p-top-movie__inbox {
  border-radius: 6rem;
  padding: 7rem 0 10rem;
}
.p-top-movie__inbox::before {
  content: "";
  position: absolute;
  width: 16rem;
  height: 16rem;
  background: url(../img/top/movie-lb_deco.png) center/contain no-repeat;
  inset: auto auto -2rem -2rem;
}
.p-top-movie__title {
  margin-bottom: 4rem;
  line-height: 1.5;
  font-size: var(--font-size-35);
  padding-bottom: 0;
  background: none;
}
.p-top-movie__title-sub {
  width: 26rem;
  inset: -10.5rem auto auto 21rem;
}
.p-top-movie__video {
  width: 56rem;
  margin: 0 auto;
  aspect-ratio: 16/9;
  background: var(--color-gray);
  border-radius: 1rem;
  overflow: hidden;
  height: 31.5rem;
}
.p-top-movie__video iframe {
  width: 100%;
  height: 100%;
}

/*
# p-top-case
------------------------*/
.p-top-case {
  padding: 0 0 10rem;
}
.p-top-case::before {
  content: "";
  position: absolute;
  width: 12rem;
  height: 12rem;
  background: url(../img/top/news-lt_deco.png) center/contain no-repeat;
  inset: 4rem auto auto -2rem;
}
.p-top-case__title {
  margin-bottom: 4rem;
}
.p-top-case__button {
  margin: 4rem auto 0;
}

/*
# p-top-links
------------------------*/
.p-top-links {
  padding: 8.5rem 0 15rem;
}
.p-top-links::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 6.4rem;
  background: url(../img/top/links-top_wave.svg) bottom center/100% no-repeat;
  inset: -6.4rem 0 auto;
}
.p-top-links__inbox {
  gap: 6rem;
}
.p-top-links__item {
  width: 51rem;
  min-height: 20rem;
  border-width: 1rem;
}
.p-top-links__item:hover {
  transform: translateY(-0.8rem);
}
.p-top-links__item--flow::before, .p-top-links__item--info::before {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-size: 100%;
}
.p-top-links__item--flow::before {
  width: 9.1rem;
  height: 12.5rem;
  inset: auto auto 0 2.3rem;
  background-image: url(../img/top/links-flow_ill.png);
}
.p-top-links__item--info::before {
  width: 8.7rem;
  height: 13rem;
  inset: auto auto -0.5rem 2.6rem;
  background-image: url(../img/top/links-info_ill.png);
}
.p-top-links__label {
  font-size: var(--font-size-30);
}
.p-top-links__label::before {
  transition: all 0.3s;
  right: -4.5rem;
  width: 3rem;
  height: 3rem;
  color: var(--secondary-color);
  background: var(--color-white);
  border-radius: 50%;
  font-size: var(--font-size-17);
}

/*
# p-top-news
------------------------*/
.p-top-news {
  padding: 13.5rem 0 8rem;
}
.p-top-news::before, .p-top-news::after {
  position: absolute;
  content: "";
}
.p-top-news::before {
  width: 100%;
  height: 6.2rem;
  background: url(../img/top/news-top_wave.svg) bottom center/100% no-repeat;
  inset: -6.2rem 0 auto;
}
.p-top-news::after {
  width: 24.1rem;
  height: 23.8rem;
  background: url(../img/top/news-lt_deco.png) center/100% no-repeat;
  inset: -16rem auto auto 10rem;
}
.p-top-news__inbox {
  position: relative;
}
.p-top-news__title {
  font-size: var(--font-size-40);
  margin-bottom: 4rem;
}
.p-top-news__post-list {
  width: 68rem;
}
.p-top-news__post {
  border-bottom: 1px solid var(--color-gray);
}
.p-top-news__post-link {
  padding: 2.5rem 0;
  row-gap: 1rem;
}
.p-top-news__post-link:hover {
  transform: translateX(1rem);
}
.p-top-news__post-link:hover .p-top-news__post-title {
  text-decoration: underline;
}
.p-top-news__post:first-child .p-top-news__post-link {
  padding-top: 0;
}
.p-top-news__post-date {
  font-size: var(--font-size-16);
  width: 9.5rem;
}
.p-top-news__post-tags {
  width: calc(100% - 9.5rem);
  gap: 0.7rem;
}
.p-top-news__post-tag {
  font-size: var(--font-size-12);
  padding: 0 0.8rem;
}
.p-top-news__post-title {
  font-size: var(--font-size-18);
}
.p-top-news__button {
  margin: 7rem auto 0;
}

/*
# p-top-bottom-contact
------------------------*/
.p-top-bottom-contact {
  padding: 26rem 0 15rem;
}
.p-top-bottom-contact::before, .p-top-bottom-contact::after {
  position: absolute;
  content: "";
}
.p-top-bottom-contact::before {
  width: 23.3rem;
  height: 25.9rem;
  inset: 4rem 0 auto auto;
  background: url(../img/top/contact-rt_deco.png) center/100% no-repeat;
  z-index: 1;
}
.p-top-bottom-contact::after {
  width: 100%;
  height: 26.2rem;
  background: url(../img/top/contact-top_wave.svg) bottom center/100% no-repeat, var(--color-white);
  inset: 0 0 auto;
}
.p-top-bottom-contact__inbox::before {
  content: "";
  position: absolute;
  width: 22.2rem;
  height: 25.3rem;
  background: url(../img/top/contact_ill.png) center/100% no-repeat;
  inset: -6.8rem 8.5rem auto auto;
  z-index: 1;
}
.p-top-bottom-contact__title {
  margin-bottom: 8%;
}
.p-top-bottom-contact__lead {
  text-align: center;
  font-size: var(--font-size-25);
  margin-bottom: 6rem;
}
.p-top-bottom-contact__lead span.relative::before {
  content: "";
  position: absolute;
  width: 0.4rem;
  height: 0.4rem;
  background: var(--accent-color);
  inset: -0.2rem 0 auto;
  margin: 0 auto;
  border-radius: 50%;
}
.p-top-bottom-contact__action {
  text-align: center;
}

/*==========================================
beginner
===========================================*/
.p-beginner-headline__section {
  background: url(../img/beginner/valuable-lt_deco.png) left top 35rem/37.7rem no-repeat, url(../img/beginner/valuable-rt_deco.png) right top 6rem/37.5rem no-repeat, url(../img/beginner/kodawari_bg.png) bottom center/100% no-repeat;
}

/*
# p-beginner-intro
------------------------*/
.p-beginner-intro {
  padding: 14rem 0 6rem;
}
.p-beginner-intro__content {
  width: 62rem;
  min-height: 30rem;
  position: relative;
}
.p-beginner-intro__img {
  width: 44rem;
  position: absolute;
  inset: 0 -46rem auto auto;
}
.p-beginner-intro__title {
  font-size: var(--font-size-45);
  margin-bottom: 5rem;
}
.p-beginner-intro::after {
  position: absolute;
  content: "";
  width: 48rem;
  height: 36rem;
  background: url(../img/beginner/beginner-intro_ill.png) center/contain no-repeat;
  inset: 0 0 auto auto;
}

/*
# p-beginner-cta
------------------------*/
.p-beginner-cta {
  padding: 6rem 0;
}
.p-beginner-cta__inbox {
  border-radius: 6rem;
  padding: 7rem 0 6rem;
}
.p-beginner-cta__inbox::after {
  position: absolute;
  content: "";
  width: 14.1rem;
  height: 14.1rem;
  background: url(../img/top/worry-solution_ill.png) center/100% no-repeat;
  inset: auto 7rem -1.5rem auto;
}
.p-beginner-cta__title {
  font-size: var(--font-size-25);
  text-align: center;
  margin-bottom: 3.5rem;
}
.p-beginner-cta__title span.relative::before {
  content: "";
  position: absolute;
  width: 0.4rem;
  height: 0.4rem;
  background: var(--accent-color);
  inset: -0.2rem 0 auto;
  margin: 0 auto;
  border-radius: 50%;
}

/*
# p-beginner-kodawari
------------------------*/
.p-beginner-kodawari {
  padding: 8rem 0 15rem;
}
.p-beginner-kodawari__title {
  margin-bottom: 5rem;
}
.p-beginner-kodawari__list {
  padding: 10rem 21rem;
  gap: 6rem;
  border-radius: 6rem;
}
.p-beginner-kodawari__item {
  width: 51rem;
  padding: 3rem;
}
.p-beginner-kodawari__item-icon {
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38.444%;
  margin: 0 auto 2rem;
}
.p-beginner-kodawari__item-icon img {
  max-height: 11rem;
}
.p-beginner-kodawari__item-title {
  font-size: var(--font-size-25);
  text-align: center;
  padding: 1.5rem;
  margin-bottom: 1.5rem;
}

/*
# p-beginner-faq
------------------------*/
.p-beginner-faq {
  padding: 10rem 0;
}
.p-beginner-faq__item {
  margin-bottom: 6rem;
}
.p-beginner-faq__item:last-child {
  margin-bottom: 0;
}
.p-beginner-faq__question {
  gap: 1.5rem;
  padding: 2rem 5rem 2rem 8rem;
  position: relative;
  font-size: var(--font-size-20);
}
.p-beginner-faq__label {
  width: 4rem;
  height: 4rem;
  text-align: center;
  inset: 1.5rem auto auto 2.5rem;
}
.p-beginner-faq__answer {
  padding: 2rem 2.5rem 2.5rem 5rem;
}
.p-beginner-faq__answer .p-beginner-faq__label {
  left: 0;
}

/*==========================================
purchase
===========================================*/
/*
# p-purchase-highprice
------------------------*/
.p-purchase-highprice {
  padding: 15rem 0 7.5rem;
  background: url(../img/purchase/highprice_bg.png) top center/100% no-repeat;
}
.p-purchase-highprice__title {
  font-size: var(--font-size-40);
  background: url(../img/purchase/highprice-ttl-l_ill.png) left center/19.6rem no-repeat, url(../img/purchase/highprice-ttl-r_ill.png) right center/19.6rem no-repeat, url(../img/common/primary-ttl_dotted.svg) bottom center no-repeat;
}
.p-purchase-highprice__title .bg-color-accent {
  padding: 0.5rem 6rem;
  background: url(../img/purchase/highprice-ttl_deco.png) left 2rem center/2rem no-repeat, url(../img/purchase/highprice-ttl_deco.png) right 2rem center/2rem no-repeat, var(--accent-color);
  margin-bottom: 2rem;
}
.p-purchase-highprice__list {
  row-gap: 6rem;
}
.p-purchase-highprice__card {
  width: 51rem;
  padding: 4rem;
}
.p-purchase-highprice__card--01::before {
  content: "";
  display: block;
  width: 100%;
  height: 14rem;
  margin-bottom: 2rem;
  border-radius: 1rem;
  background: url(../img/purchase/highprice-item01_bg.jpg) center/cover no-repeat;
}
.p-purchase-highprice__card--02::before {
  content: "";
  display: block;
  width: 100%;
  height: 14rem;
  margin-bottom: 2rem;
  border-radius: 1rem;
  background: url(../img/purchase/highprice-item02_bg.jpg) center/cover no-repeat;
}
.p-purchase-highprice__card--03::before {
  content: "";
  display: block;
  width: 100%;
  height: 14rem;
  margin-bottom: 2rem;
  border-radius: 1rem;
  background: url(../img/purchase/highprice-item03_bg.jpg) center/cover no-repeat;
}
.p-purchase-highprice__card--04::before {
  content: "";
  display: block;
  width: 100%;
  height: 14rem;
  margin-bottom: 2rem;
  border-radius: 1rem;
  background: url(../img/purchase/highprice-item04_bg.jpg) center/cover no-repeat;
}
.p-purchase-highprice__card--05::before {
  content: "";
  display: block;
  width: 100%;
  height: 14rem;
  margin-bottom: 2rem;
  border-radius: 1rem;
  background: url(../img/purchase/highprice-item05_bg.jpg) center/cover no-repeat;
}
.p-purchase-highprice__card-title {
  text-align: center;
}
.p-purchase-highprice__card-thumb {
  width: 22rem;
  height: 22rem;
}
.p-purchase-highprice__card-content {
  width: calc(100% - 22rem);
}

/*
# p-purchase-point
------------------------*/
.p-purchase-point {
  padding: 8rem 0;
}
.p-purchase-point__list {
  background-image: linear-gradient(#17519d 2px, transparent 2px), linear-gradient(to right, #17519d 2px, transparent 2px);
  background-size: 20px 20px;
  background-color: var(--primary-color);
  padding: 10rem 21rem;
  border-radius: 6rem;
}
.p-purchase-point__list::before {
  position: absolute;
  content: "";
  width: 14.8rem;
  height: 18.6rem;
  inset: -18.6rem 26.3rem auto auto;
  background: url(../img/purchase/point_ill.png) bottom center/100% no-repeat;
}
.p-purchase-point__item {
  padding: 3rem 2.5rem;
  margin-bottom: 6rem;
}
.p-purchase-point__item:last-child {
  margin-bottom: 0;
}
.p-purchase-point__item-title {
  font-size: var(--font-size-30);
  padding-bottom: 0.5rem;
  border-bottom: 1px solid var(--color-gray);
  margin-bottom: 1.5rem;
}
.p-purchase-point__item-title img {
  width: 6.7rem;
  vertical-align: text-bottom;
}

/*
# p-purchase-example
------------------------*/
.p-purchase-example {
  padding: 8rem 0 10rem;
  background: url(../img/purchase/purchase_bg.png) top center/100% no-repeat;
}
.p-purchase-example__list {
  gap: 4rem;
}
.p-purchase-example__item {
  width: 24rem;
}
.p-purchase-example__thumb {
  width: 100%;
  height: 20rem;
  margin-bottom: 1rem;
  border-radius: 1rem;
  overflow: hidden;
}
.p-purchase-example__label {
  text-align: center;
  font-size: var(--font-size-20);
}

/*
# p-purchase-case
------------------------*/
.p-purchase-case {
  padding: 15rem 0;
}

/*==========================================
flow
===========================================*/
/*
# p-flow-shop / p-flow-delivery
------------------------*/
.p-flow-shop,
.p-flow-delivery {
  padding: 15rem 0 7rem;
}
.p-flow-shop__title,
.p-flow-delivery__title {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 6rem;
  padding-left: 5rem;
  position: relative;
  font-size: var(--font-size-40);
}
.p-flow-shop__title::before,
.p-flow-delivery__title::before {
  position: absolute;
  content: "";
  width: 4rem;
  height: 4rem;
  inset: 0 auto 0 0;
  background: center/contain no-repeat;
}
.p-flow-shop__list,
.p-flow-delivery__list {
  padding: 10rem 21rem;
  border-radius: 6rem;
}
.p-flow-shop__item,
.p-flow-delivery__item {
  padding: 4rem;
  margin-bottom: 4rem;
  position: relative;
}
.p-flow-shop__item:last-child,
.p-flow-delivery__item:last-child {
  margin-bottom: 0;
}
.p-flow-shop__item:last-child::after,
.p-flow-delivery__item:last-child::after {
  display: none;
}
.p-flow-shop__item::after,
.p-flow-delivery__item::after {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 40px 33px 0px 33px;
  border-color: var(--accent-color) transparent transparent transparent;
  margin: 0 auto;
  inset: auto 0 -2rem;
}
.p-flow-shop__content,
.p-flow-delivery__content {
  width: 65rem;
  min-height: 24rem;
}
.p-flow-shop__step-title,
.p-flow-delivery__step-title {
  font-size: var(--font-size-30);
  margin-bottom: 1.5rem;
}
.p-flow-shop__step-title span,
.p-flow-delivery__step-title span {
  font-size: var(--font-size-20);
  padding: 0 1rem;
  margin-right: 1rem;
}
.p-flow-shop__thumb,
.p-flow-delivery__thumb {
  width: 30rem;
  height: 24rem;
  position: absolute;
  inset: 4rem 4rem auto auto;
}

.p-flow-shop__title {
  padding-left: 8rem;
  background: url(../img/flow/shop_ic.png) left center/6rem no-repeat;
}

.p-flow-delivery__title {
  padding-left: 12rem;
  background: url(../img/flow/delivery_ic.png) left center/10.3rem no-repeat;
}
.p-flow-delivery__actions {
  gap: 2rem;
  margin-top: 2rem;
}
.p-flow-delivery .p-flow-delivery__button {
  width: 24rem;
  min-height: 6rem;
  margin: 0;
  padding-left: 6rem;
  font-size: var(--font-size-18);
  font-weight: var(--font-weight-medium);
}
.p-flow-delivery .p-flow-delivery__button::after {
  width: 4rem;
  height: 4rem;
  background-size: 1.5rem;
  left: 3%;
}
.p-flow-delivery .p-flow-delivery__button::before {
  font-size: var(--font-size-15);
}
.p-flow-delivery__info-link {
  padding: 1.5rem 3rem;
}

/*
# p-flow-area
------------------------*/
.p-flow-area {
  padding: 7.5rem 0;
  background: url(../img/flow/map_bg.jpg) center/cover no-repeat;
}
.p-flow-area__content {
  max-width: 54rem;
}
.p-flow-area__map {
  width: 51.9rem;
}
.p-flow-area__title {
  text-align: left;
  margin-bottom: 2rem;
  background: none;
  font-size: var(--font-size-40);
}
.p-flow-area__lead {
  margin-bottom: 3rem;
}
.p-flow-area__lead span {
  font-size: var(--font-size-20);
  padding: 0.5rem 1.5rem;
}

/*
# p-flow-contact
------------------------*/
.p-flow-contact {
  padding: 8rem 0;
}
.p-flow-contact__title {
  text-align: center;
  margin-bottom: 1.5rem;
}
.p-flow-contact .c-worktime {
  color: var(--body-font-color);
  text-align: center;
  font-size: var(--font-size-20);
  margin-bottom: 3rem;
}
.p-flow-contact__action-markup {
  width: 18.8rem;
  inset: -9rem auto auto 15rem;
}
.p-flow-contact__stores {
  padding: 4rem 0;
  margin-top: 6rem;
}
.p-flow-contact__stores::before {
  content: "";
  position: absolute;
  width: 19.1rem;
  height: 20.5rem;
  background: url(../img/top/info-rt_ill.png) center center/100% auto no-repeat;
  inset: -16.7rem 0 auto auto;
}

/*==========================================
info
===========================================*/
.p-info {
  background: url(../img/info/info_bg.png) top center/100% no-repeat;
}

/*
# p-info-greeting
------------------------*/
.p-info-greeting {
  padding: 15rem 0 7.5rem;
  background: url(../img/info/greeting-lt_deco.png) left bottom/33.4rem no-repeat, url(../img/info/greeting-rt_deco.png) right top 10.5rem/40.3rem no-repeat;
}
.p-info-greeting__text {
  margin-bottom: 3rem;
  line-height: 2.7777777778;
}
.p-info-greeting__name {
  text-align: center;
}
.p-info-greeting__name span {
  padding: 0.2rem 2rem;
  margin-right: 1.5rem;
}

/*
# p-info-stores
------------------------*/
.p-info-stores {
  padding: 8rem 0 10rem;
}
.p-info-stores__list {
  padding: 10rem 21rem;
  border-radius: 6rem;
}
.p-info-stores .c-store-card {
  background: var(--color-white);
  padding: 6rem;
  border: 1px solid var(--color-gray);
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 6rem;
}
.p-info-stores .c-store-card:last-child {
  margin-bottom: 0;
}
.p-info-stores .c-store-card:has(.c-store-card__photo) {
  flex-direction: row-reverse;
}
.p-info-stores .c-store-card__body {
  width: 48rem;
  padding: 0;
}
.p-info-stores .c-store-card__body .c-store-card__info-row dt {
  color: var(--color-white);
  display: flex;
  align-items: center;
  justify-content: center;
}
.p-info-stores .tel__text {
  line-height: 1;
  width: 20.3rem;
}
.p-info-stores .c-store-card__full-name {
  font-size: var(--font-size-30);
}
.p-info-stores .c-store-card__photo {
  width: 44rem;
  height: 35rem;
}

/*==========================================
news
===========================================*/
.column__wrap .column__list .column__post-title {
  font-size: var(--font-size-23);
}
.column__wrap .column__list .column__post:has(.column__post-thumb) a {
  /*==========================================
  Flexbox
  ===========================================*/
  display: flex;
  width: 100%;
  justify-content: space-between;
  box-sizing: border-box;
}
.column__wrap .column__list .column__post:has(.column__post-thumb) .column__post-thumb {
  width: 21rem;
  height: 20rem;
}
.column__wrap .column__list .column__post:has(.column__post-thumb) .column__post-thumb .img-eff {
  width: 100%;
  height: 100%;
  transition-duration: 0.3s;
}
.column__wrap .column__list .column__post:has(.column__post-thumb) .column__post-meta {
  width: 82rem;
}

/*----------------------------------
  詳細ページのカテゴリー表示(タイトル下部)
  ----------------------------------*/
.single__post-meta time {
  font-size: var(--font-size-14);
  width: 9.5rem;
  padding: 0.3rem 0;
}
.single__post-meta .category-label {
  width: calc(100% - 9.5rem);
  font-size: var(--font-size-14);
  gap: 5px;
  margin-left: 1rem;
}
.single__post-meta .category-label li a {
  padding: 0.3rem 1rem;
}

/*==========================================
  contact
  ===========================================*/
.p-contact__form {
  width: 98rem;
  margin: 0 auto 5.5rem;
}
.p-contact__form .p-contact__form-item {
  border-bottom: none;
  padding: 0;
  margin-bottom: 2rem;
}
.p-contact__form .p-contact__form-item:last-child {
  margin-bottom: 0;
}
.p-contact__form .p-contact__form-item .p-contact__form-label .form_option,
.p-contact__form .p-contact__form-item .p-contact__form-label .form_required {
  margin-left: 1rem;
}
.p-contact__form .p-contact__form-item .p-contact__form-input .p-contact__form-list {
  gap: 1.5rem;
}
.p-contact__form .p-contact__form-item.p-contact__form-privacy .p-contact__form-label {
  text-align: center;
}
.p-contact__form-select {
  width: 20rem;
}
.p-contact__form-select::after {
  inset: 0 1.6rem 0 auto;
  width: 0.8rem;
  height: 0.8rem;
}
.p-contact__form .upload-item-wrap .thumb {
  width: 20rem;
  margin-right: 2.5rem;
}
.p-contact__form .upload-item-wrap .ancion-btn-wrap {
  width: 13rem;
}
.p-contact__form .upload-item-wrap .ancion-btn-wrap .ancion-btn,
.p-contact__form .upload-item-wrap .ancion-btn-wrap .upload-button {
  font-size: var(--font-size-13);
}
.p-contact input[type=button],
.p-contact input[type=submit],
.p-contact .p-contact__submits-wrap button {
  height: 6.5rem;
}

/*==========================================
  プライバシーポリシー(LPフレーム時)
  ===========================================*/