@charset 'UTF-8';

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%
}

body {
  margin: 0
}

main {
  display: block
}

h1 {
  font-size: 2em;
  margin: .67em 0
}

hr {
  overflow: visible;
  box-sizing: content-box;
  height: 0
}

pre {
  font-family: monospace, monospace;
  font-size: 1em
}

a {
  background-color: transparent
}

abbr[title] {
  text-decoration: underline;
  text-decoration: underline dotted;
  border-bottom: none;
  -webkit-text-decoration: underline dotted
}

b, strong {
  font-weight: 700
}

code, kbd, samp {
  font-family: monospace, monospace;
  font-size: 1em
}

small {
  font-size: 80%
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline
}

sub {
  bottom: -.25em
}

sup {
  top: -.5em
}

img {
  border-style: none
}

button, input, optgroup, select, textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0
}

button, input {
  overflow: visible
}

button, select {
  text-transform: none
}

[type=button], [type=reset], [type=submit], button {
  -webkit-appearance: button
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
  padding: 0;
  border-style: none
}

[type=button]:-moz-focusring, [type=reset]:-moz-focusring, [type=submit]:-moz-focusring, button:-moz-focusring {
  outline: 1px dotted ButtonText
}

fieldset {
  padding: .35em .75em .625em
}

legend {
  display: table;
  box-sizing: border-box;
  max-width: 100%;
  padding: 0;
  white-space: normal;
  color: inherit
}

progress {
  vertical-align: baseline
}

textarea {
  overflow: auto
}

[type=checkbox], [type=radio] {
  box-sizing: border-box;
  padding: 0
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
  height: auto
}

[type=search] {
  outline-offset: -2px;
  -webkit-appearance: textfield
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none
}

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button
}

details {
  display: block
}

summary {
  display: list-item
}

template {
  display: none
}

[hidden] {
  display: none
}

html {
  font-size: 62.5%;
  height: 100%;
  -webkit-print-color-adjust: exact
}

body, button, input, select, textarea {
  font-family: 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'MS Pゴシック', 'MS PGothic', sans-serif;
  font-weight: 400;
  font-style: normal
}

body {
  position: relative;
  display: flex;
  overflow: auto;
  flex-direction: column;
  min-height: 100%;
  margin: 0;
  color: #000;
  -webkit-overflow-scrolling: touch
}

body.is-fiexd {
  overflow: hidden
}

@media all and (-ms-high-contrast:none) {
  ::-ms-backdrop, body {
    display: block
  }
}

main {
  background: #fff;
  flex: 1 1 auto
}

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

h1, h2, h3, h4, h5, h6, p {
  font-weight: 400;
  margin: 0
}

p {
  line-height: 1.5
}

figure {
  line-height: 0;
  margin: 0
}

a {
  transition: all .2s;
  text-decoration: none;
  color: #000
}

@media (min-width:768px) {
  a[href^='tel:'] {
    pointer-events: none
  }
}

input::-webkit-input-placeholder {
  color: #c0af93
}

input::-moz-placeholder {
  color: #c0af93
}

input:-ms-input-placeholder {
  color: #c0af93
}

input:-moz-placeholder {
  color: #c0af93
}

input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px #fff inset
}

input, textarea {
  transition: all 260ms cubic-bezier(.215, .61, .355, 1)
}

button, input, select, textarea {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  cursor: pointer;
  border: none;
  border-radius: 0;
  outline: 0;
  background: 0 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none
}

select::-ms-expand {
  display: none
}

.p-contact__agree, .p-contact__btn-wrap, .p-header__announce-square, .p-inquiry__block-btn {
  display: flex;
  align-items: center;
  justify-content: center
}

.p-header__announce-circle {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center
}

.p-bar__link:hover, .p-contact__btn-confirm:hover, .p-contact__btn-wrap input:hover, .p-contact__complete-btn:hover, .p-counseling__img-link:hover, .p-inquiry__block-btn:hover, .p-inquiry__block-link:hover, .p-nav__link:hover {
  opacity: .8
}

.l-wrapper {
  display: flex;
  flex-direction: column;
  min-height: 100vh
}

@media all and (-ms-high-contrast:none) {
  .l-wrapper, ::-ms-backdrop {
    display: block
  }
}

@media print, screen and (min-width:1025px) {
  .l-container {
    max-width: 960px;
    margin-right: auto;
    margin-left: auto
  }
}

.l-inner {
  display: block;
  width: 90%;
  margin-right: auto;
  margin-left: auto
}

.l-flex {
  display: flex
}

.l-flex__align {
  display: flex;
  align-items: center
}

.l-flex__center {
  display: flex;
  justify-content: center;
  align-items: center
}

.p-header {
  position: relative
}

.p-header__description {
  font-size: 110%;
  line-height: 1.4;
  padding: .75rem 0;
  color: #fff;
  background: #ff9a09
}

@media print, screen and (min-width:1025px) {
  .p-header__description br {
    display: none
  }
}

.p-header__content {
  padding: 1.6rem 0 1.2rem
}

@media print, screen and (min-width:1025px) {
  .p-header__content {
    padding: 1.6rem 0 .6rem
  }
}

@media print, screen and (min-width:1025px) {
  .p-header__content-inner {
    display: flex;
    align-items: flex-start
  }
}

.p-header__img {
  display: block;
  width: 88%
}

@media print, screen and (min-width:1025px) {
  .p-header__img {
    width: 500px;
    margin-right: 4rem
  }
}

@media print, screen and (min-width:1025px) {
  .p-header__menu {
    margin-top: .5rem
  }
}

@media screen and (max-width:1025px) {
  .p-header__menu {
    position: fixed;
    z-index: 100;
    top: 0;
    left: 0;
    overflow: auto;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    padding: 0 8%;
    transition: all 290ms cubic-bezier(.39, .575, .565, 1);
    transform: translateY(-100%);
    opacity: 0;
    background-color: rgba(255, 255, 255, .9)
  }
  .p-header__menu.is-open {
    transform: translateY(0);
    opacity: 1
  }
}

.p-header__menu-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center
}

@media screen and (max-width:1025px) {
  .p-header__info {
    order: 2
  }
}

@media print, screen and (min-width:1025px) {
  .p-header__info {
    display: flex;
    align-items: flex-start
  }
}

.p-header__info-inner {
  display: flex;
  margin: 1rem 0 2rem 0;
  justify-content: center
}

@media print, screen and (min-width:1025px) {
  .p-header__info-inner {
    margin: 0 .8rem 0 0;
    margin-right: .8rem;
    margin-bottom: 0
  }
}

.p-header__payment {
  height: 112px
}

@media print, screen and (min-width:1025px) {
  .p-header__payment {
    height: 120px
  }
}

.p-header__open {
  font-size: 140%;
  width: 170px;
  margin: 0 auto 4rem;
  text-align: center;
  border: 2px solid #825f28;
  border-radius: 6px
}

@media print, screen and (min-width:1025px) {
  .p-header__open {
    margin: 0
  }
}

.p-header__open-heading {
  font-weight: 700;
  padding: .2rem 0;
  letter-spacing: .1rem;
  color: #fff;
  background: #825f28
}

.p-header__open-text {
  font-weight: 700;
  color: #825f28
}

.p-header__open-hours {
  line-height: 1.3;
  padding: .4rem 0
}

.p-header__open-close {
  padding: .3rem 0;
  background: #f1ecdb
}

.p-header__open-holiday {
  padding: .55rem 0
}

.p-header__announce-group {
  height: 100%
}

@media print, screen and (min-width:1025px) {
  .p-header__announce-group {
    margin-right: 1.3rem
  }
}

.p-header__announce-icon {
  display: block;
  width: 2.6rem;
  height: 2.6rem;
  object-fit: contain
}

.p-header__announce-text {
  font-size: 100%;
  display: block;
  color: #fff
}

@media print, screen and (min-width:1025px) {
  .p-header__announce-text {
    font-size: 110%
  }
}

.p-header__announce-circle {
  width: 8rem;
  height: 8rem;
  text-align: center;
  border-radius: 50%;
  background: #ff8a22
}

.p-header__announce-circle:not(:last-child) {
  margin-right: 1rem
}

.p-header__announce-circle .p-header__announce-text {
  line-height: 1.3;
  margin-top: .5rem
}

.p-header__announce-square {
  margin-right: 1.2rem;
  padding: 1rem;
  border-radius: 5px;
  background: #ff9a09
}

@media print, screen and (min-width:1025px) {
  .p-header__announce-square {
    margin-right: 0;
    padding: 1.1rem 1rem
  }
}

.p-header__announce-square:not(:last-child) {
  margin-bottom: .6rem
}

.p-header__announce-square .p-header__announce-icon {
  margin-right: .8rem
}

@media print, screen and (min-width:1025px) {
  .p-header__announce-square .p-header__announce-icon--moon {
    width: 2.6rem;
    height: 2.6rem
  }
  .p-header__announce-square .p-header__announce-icon--car {
    width: 3.4rem;
    height: 3.4rem;
    margin-right: 1rem
  }
}

.p-header__announce-square .p-header__announce-text {
  line-height: 1.4;
  margin-top: .5rem;
  text-align: center
}

@media screen and (max-width:1025px) {
  .p-header__announce-square .p-header__announce-text {
    min-width: 5.7rem
  }
}

.p-header__btn {
  position: fixed;
  z-index: 150;
  top: 6rem;
  right: 5%;
  display: flex;
  flex-direction: column;
  width: 3rem;
  height: 3rem;
  transform: translateY(-50%);
  align-items: center;
  justify-content: center
}

@media print, screen and (min-width:1025px) {
  .p-header__btn {
    display: none
  }
}

.p-header__btn-line {
  display: block;
  width: 30px;
  height: 2px;
  margin: 3px 0;
  transition: all 170ms cubic-bezier(.55, .085, .68, .53);
  background-color: #efa143
}

.p-header__btn.is-open .p-header__btn-line {
  margin: 0
}

.p-header__btn.is-open .p-header__btn-line--top {
  transform: translateY(2px) rotate(45deg)
}

.p-header__btn.is-open .p-header__btn-line--middle {
  background: rgba(51, 51, 51, 0)
}

.p-header__btn.is-open .p-header__btn-line--bottom {
  transform: translateY(-2px) rotate(-45deg)
}

.p-nav {
  display: none;
  width: 100%;
  padding: 5.5rem 0 2.5rem
}

@media screen and (max-width:1025px) {
  .p-nav {
    order: 1
  }
}

@media print, screen and (min-width:1025px) {
  .p-nav {
    display: block;
    max-width: 960px;
    margin: 0 auto 1rem;
    padding: 0
  }
}

.p-nav.is-open {
  display: block
}

.p-nav__menu {
  margin: 0;
  padding: 0;
  list-style: none
}

@media print, screen and (min-width:1025px) {
  .p-nav__menu {
    display: flex;
    margin-top: 2.2rem;
    padding: 0 1.5rem;
    justify-content: space-between
  }
}

@media print, screen and (min-width:1025px) {
  .p-nav__item {
    width: 20%
  }
  .p-nav__item:not(:last-child) {
    margin-right: 2rem
  }
}

.p-nav__link {
  font-size: 150%;
  font-weight: 500;
  display: flex;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  padding: 1.2rem 1.5rem;
  color: #825f28;
  border-bottom: solid 1px #ccbc81;
  align-items: center
}

@media screen and (max-width:1025px) {
  .p-nav__link br {
    display: none
  }
}

@media print, screen and (min-width:1025px) {
  .p-nav__link {
    font-size: 140%;
    line-height: 1.3;
    padding: .8rem 0 0 0;
    border-top: 2px solid #825f28;
    border-bottom: none;
    justify-content: center
  }
}

.p-nav__link::before {
  display: block;
  margin-right: 1rem;
  content: '';
  transform: translate3d(0, 0, 0);
  background-repeat: no-repeat;
  background-position: center
}

.p-nav__link--home::before {
  width: 2.2rem;
  height: 2.2rem;
  background-image: url(../img/nav-icon-home.png);
  background-size: contain
}

.p-nav__link--price::before {
  width: 2.4rem;
  height: 2.4rem;
  background-image: url(../img/nav-icon-price.png);
  background-size: contain
}

.p-nav__link--about::before {
  width: 2.6rem;
  height: 2.6rem;
  background-image: url(../img/nav-icon-about.png);
  background-size: contain
}

.p-nav__link--voice::before {
  width: 3rem;
  height: 3rem;
  background-image: url(../img/nav-icon-voice.png);
  background-size: contain
}

.p-nav__link--greeting::before {
  width: 3rem;
  height: 3rem;
  background-image: url(../img/nav-icon-greeting.png);
  background-size: contain
}

.p-nav__link--access::before {
  width: 2.8rem;
  height: 2.8rem;
  background-image: url(../img/nav-icon-access.png);
  background-size: contain
}

.p-footer {
  background: #815e28
}

.p-footer__copyright {
  font-size: 160%;
  line-height: 40px;
  height: 40px;
  margin: 0;
  text-align: center;
  color: #fff
}

.p-intro {
  background: #faf9f1
}

.p-intro__banner {
  margin: 2.5rem auto 3rem
}

@media print, screen and (min-width:1025px) {
  .p-intro__banner {
    margin: 5rem auto 3rem
  }
}

.p-intro__inner {
  max-width: 100%;
  padding: 0 5%
}

@media print, screen and (min-width:1025px) {
  .p-intro__inner {
    display: flex;
    padding: 0;
    align-items: center;
    justify-content: center
  }
}

.p-intro__text {
  font-family: 'ヒラギノ明朝 Pro', 'Hiragino Mincho Pro', 'MS P明朝', 'MS PMincho', serif;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: .8rem
}

@media print, screen and (min-width:1025px) {
  .p-intro__text {
    font-size: 240%;
    margin: -2rem 6rem 0 0
  }
}

.p-intro__staff {
  display: block;
  margin: 0 auto
}

@media print, screen and (min-width:1025px) {
  .p-intro__staff {
    width: 36%;
    margin: 0
  }
}

.p-bar {
  padding: .3rem 0;
  background: #ff9a09
}

@media screen and (max-width:1025px) {
  .p-bar {
    position: fixed;
    z-index: 10;
    bottom: 0;
    left: 0;
    width: 100%;
    transition: transform .3s cubic-bezier(.39, .575, .565, 1);
    transform: translateY(100%)
  }
}

.p-bar.js-scroll {
  transform: translateY(0)
}

@media print, screen and (min-width:1025px) {
  .p-bar.is-fixed {
    position: fixed;
    z-index: 200;
    top: 0;
    left: 0;
    width: 100%
  }
}

.p-bar__inner {
  width: 90%;
  margin: 0 auto;
  padding: .8rem 0
}

@media print, screen and (min-width:1025px) {
  .p-bar__inner {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: center
  }
}

.p-bar__text {
  display: none
}

@media print, screen and (min-width:1025px) {
  .p-bar__text {
    font-size: 130%;
    display: block;
    width: 20%;
    padding-left: 1rem;
    color: #fff
  }
}

.p-bar__link {
  font-size: 150%;
  font-weight: 700;
  line-height: 1.5;
  display: block;
  box-sizing: border-box;
  width: 100%;
  width: 100%;
  max-width: 574px;
  margin: 4px auto;
  padding: 1rem 0;
  text-align: center;
  letter-spacing: .1rem;
  color: #fff;
  border-radius: 5px;
  background: #825f28
}

@media print, screen and (min-width:1025px) {
  .p-bar__link {
    width: 17.4rem;
    min-height: 58px;
    margin: 0 1rem 0 0
  }
}

.p-bar__link span {
  font-size: 70%;
  font-weight: 500;
  display: none
}

@media print, screen and (min-width:1025px) {
  .p-bar__link span {
    display: block
  }
}

@media screen and (max-width:1025px) {
  .p-bar__link {
    display: flex;
    justify-content: center;
    align-items: center
  }
  .p-bar__link::after {
    width: 0;
    height: 0;
    margin-left: 10px;
    content: '';
    border-width: 5px 0 5px 10px;
    border-style: solid;
    border-color: transparent transparent transparent #fff
  }
}

.p-bar__store {
  box-sizing: border-box;
  width: 100%;
  width: 100%;
  min-height: 58px;
  padding: .3rem .5rem 0 .5rem;
  border-radius: 6px;
  background: #fff
}

.p-bar__store:not(:last-child) {
  margin-right: 1rem
}

@media print, screen and (min-width:1025px) {
  .p-bar__store {
    padding: .3rem 1rem 0 1rem
  }
}

.p-bar__store-wrap {
  display: flex;
  justify-content: center
}

@media print, screen and (min-width:1025px) {
  .p-bar__store-wrap {
    padding-right: 1rem
  }
}

.p-bar__store-name {
  font-size: 150%;
  font-weight: 700;
  width: 100%;
  text-align: center;
  letter-spacing: .1rem;
  color: #815e28;
  border-bottom: dotted 3px #815e28
}

@media print, screen and (min-width:1025px) {
  .p-bar__store-address {
    display: flex;
    max-width: 285px;
    padding: .4rem 0 0;
    align-items: center;
    justify-content: space-between
  }
}

.p-bar__store-link {
  display: flex;
  padding: .3rem 0;
  align-items: center;
  justify-content: center
}

@media print, screen and (min-width:1025px) {
  .p-bar__store-link:last-child {
    margin: .3rem 0 0 .6rem;
    padding: 0
  }
}

@media print, screen and (min-width:1025px) {
  .p-bar__store-img {
    width: 98%;
    object-fit: contain
  }
}

.p-media {
  margin: 0 auto;
  padding: 4.5rem 0 4rem;
  background-color: #ff9a09;
  background-image: url(../img/media_back.png);
  background-size: cover
}

@media print, screen and (max-width:768px) {
  .p-bar__store {
    max-width: 285px;
    min-height: auto;
  }
  .p-bar__store-address {
    display: flex;
  }
  .p-bar__store-link:first-child {
    margin-right: 10px;
  }
}

@media print, screen and (min-width:1025px) {
  .p-media {
    padding: 7rem 0 12rem
  }
}

.p-media__heading {
  font-family: 'ヒラギノ明朝 Pro', 'Hiragino Mincho Pro', 'MS P明朝', 'MS PMincho', serif;
  font-size: 250%;
  font-weight: 700;
  position: relative;
  display: table;
  margin: 0 auto;
  margin-bottom: 2.8rem;
  text-align: center;
  color: #fff;
  justify-content: center
}

@media print, screen and (min-width:1025px) {
  .p-media__heading {
    font-size: 400%;
    margin-bottom: 4.2rem
  }
  .p-media__heading br {
    display: none
  }
}

.p-media__heading::after, .p-media__heading::before {
  position: absolute;
  top: 0;
  display: block;
  width: 2.7rem;
  height: 5.6rem;
  content: '';
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain
}

@media print, screen and (min-width:1025px) {
  .p-media__heading::after, .p-media__heading::before {
    width: 2rem;
    height: 6rem
  }
}

.p-media__heading::before {
  left: -1rem;
  transform: translateX(-100%);
  background-image: url(../img/media-heading-left.png)
}

@media print, screen and (min-width:1025px) {
  .p-media__heading::before {
    left: -2rem
  }
}

.p-media__heading::after {
  right: -1rem;
  transform: translateX(100%);
  background-image: url(../img/media-heading-right.png)
}

@media print, screen and (min-width:1025px) {
  .p-media__heading::after {
    right: -2rem
  }
}

.p-media__heading-emphasis {
  font-size: 140%;
  color: #feea88
}

@media print, screen and (min-width:1025px) {
  .p-media__heading-emphasis {
    font-size: 120%
  }
}

.p-media__list {
  width: 100%;
  margin: 0 auto;
  padding: 0;
  list-style: none
}

@media print, screen and (min-width:1025px) {
  .p-media__list {
    display: flex;
    padding: 0 1rem
  }
}

.p-media__list-item {
  box-sizing: border-box;
  width: 100%;
  padding: 2rem 5%;
  border-radius: 7px;
  background-color: #fffbe7;
  box-shadow: 0 3px 3px rgba(77, 77, 77, .15)
}

.p-media__list-item:not(:last-child) {
  margin-bottom: 2rem
}

@media print, screen and (min-width:1025px) {
  .p-media__list-item {
    padding: 3.4rem 2.8rem 2rem
  }
  .p-media__list-item:not(:last-child) {
    margin: 0 3.7rem 0 0
  }
}

.p-media__list-item:last-child .p-media__list-txt {
  margin-top: 1rem
}

.p-media__list-lead {
  font-size: 160%;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: .8rem;
  text-align: center;
  color: #825f28
}

@media print, screen and (min-width:1025px) {
  .p-media__list-lead {
    font-size: 280%
  }
}

.p-media__list-emphasis {
  font-size: 130%;
  letter-spacing: .1rem;
  color: #fd8a33
}

.p-media__list-figure {
  margin-bottom: .2rem;
  text-align: center
}

.p-media__list-text {
  font-size: 140%;
  font-weight: 700;
  line-height: 1.7;
  color: #4d4d4d;
  font-feature-settings: 'palt'
}

.p-media__list-text-emphasis {
  background: linear-gradient(transparent 50%, #f5f217 30%)
}

.p-media__list-text-color {
  color: #ff9a09
}

@media screen and (max-width:1025px) {
  .p-media__list-text-color br {
    display: none
  }
}

@media screen and (max-width:1025px) {
  .p-media__list-text br {
    display: none
  }
}

@media print, screen and (min-width:1025px) {
  .p-media__list-text {
    font-size: 160%;
    text-align: center
  }
}

.p-trouble {
  padding: 4rem 5% 0;
  background: #5aa3c5
}

@media print, screen and (min-width:1025px) {
  .p-trouble {
    padding: 10rem 0 8rem
  }
}

.p-trouble__heading {
  font-size: 3.6vw;
  font-weight: 700;
  margin-bottom: 2rem;
  text-align: center;
  letter-spacing: .12em;
  color: #fdeb28
}

@media print, screen and (min-width:1025px) {
  .p-trouble__heading {
    font-size: 387%;
    margin-bottom: 4rem
  }
}

.p-trouble__heading-emphasis {
  font-size: 140%
}

.p-trouble__img {
  display: block;
  width: 98%;
  margin: 0 auto
}

.p-voice {
  padding: 3rem 2%
}

@media print, screen and (min-width:1025px) {
  .p-voice {
    padding: 10rem 0
  }
}

.p-voice__description {
  display: block;
  width: 90%;
  margin: 0 auto 1rem
}

@media print, screen and (min-width:1025px) {
  .p-voice__description {
    width: 75%;
    margin: 0 auto 2rem
  }
}

.p-voice__lead {
  display: block;
  width: 70%;
  margin: 0 auto 1.68rem
}

@media print, screen and (min-width:1025px) {
  .p-voice__lead {
    width: 62%;
    margin: 0 auto 3.6rem
  }
}

.p-voice__content {
  border: 1px dashed #707070;
  background: #fffeec
}

.p-voice__content:not(:last-child) {
  margin-bottom: 1.5rem
}

@media print, screen and (min-width:1025px) {
  .p-voice__content:not(:last-child) {
    margin-bottom: 2.5rem
  }
}

.p-voice__inner {
  padding: 2.4rem 2% 0
}

@media print, screen and (min-width:1025px) {
  .p-voice__inner {
    padding: 4.4rem 0
  }
}

.p-voice__heading {
  font-size: 160%;
  font-weight: 700;
  line-height: 1.3;
  position: relative;
  width: 77%;
  margin: 0 auto 3rem;
  padding: 1rem 1.2rem;
  text-align: left;
  letter-spacing: .2rem;
  color: #fff;
  border-radius: 10px;
  background: #ff9a09
}

@media print, screen and (min-width:1025px) {
  .p-voice__heading {
    font-size: 300%;
    margin: 0 auto 7rem 9rem;
    padding: 3.2rem 2rem;
    text-align: center
  }
}

.p-voice__heading::after {
  position: absolute;
  bottom: -19px;
  left: 13%;
  display: block;
  width: 0;
  width: 0;
  height: 0;
  content: '';
  border-width: 20px 10px 0 10px;
  border-style: solid;
  border-color: #ff9a09 transparent transparent transparent
}

@media print, screen and (min-width:1025px) {
  .p-voice__heading::after {
    bottom: -29px;
    left: 13%;
    border-width: 30px 20px 0 20px
  }
}

.p-voice__img-wrap {
  display: flex;
  margin-bottom: 2.8rem;
  padding: 0 2rem;
  align-items: center
}

@media print, screen and (min-width:1025px) {
  .p-voice__img-wrap {
    margin-bottom: 5.6rem;
    padding: 0 5.5rem
  }
}

.p-voice__img--person {
  width: 35%;
  margin-right: 10%
}

.p-voice__img--after {
  width: 47%;
  margin-bottom: 2rem
}

@media print, screen and (min-width:1025px) {
  .p-voice__img--after {
    margin-bottom: 5rem
  }
}

.p-voice__figcaption {
  font-size: 140%;
  font-weight: 500;
  line-height: 1;
  display: block;
  margin-top: .6rem;
  text-align: center;
  color: #4e4e4e
}

@media print, screen and (min-width:600px) {
  .p-voice__figcaption {
    font-size: 160%;
    margin-top: 1rem
  }
}

@media print, screen and (min-width:1025px) {
  .p-voice__figcaption {
    font-size: 230%
  }
}

.p-voice__questionnaire {
  margin: 0;
  padding: 0 1rem 0 1.6rem
}

@media print, screen and (min-width:1025px) {
  .p-voice__questionnaire {
    padding: 0 1rem 0 5.6rem
  }
}

.p-voice__questionnaire-q {
  font-size: 150%;
  font-weight: 700;
  line-height: 1.3;
  display: flex;
  color: #4e4e4e;
  align-items: center
}

.p-voice__questionnaire-q span {
  display: flex;
  min-height: 3rem;
  padding-left: 1rem;
  border-left: 6px solid #999;
  align-items: center
}

@media print, screen and (min-width:1025px) {
  .p-voice__questionnaire-q span {
    min-height: 3.6rem;
    padding-left: 2rem
  }
}

@media print, screen and (min-width:1025px) {
  .p-voice__questionnaire-q {
    font-size: 230%;
    display: block;
    padding-left: 0
  }
}

.p-voice__questionnaire-a {
  font-size: 140%;
  line-height: 1.5;
  margin: 1.4rem 0 2.8rem 1.4rem;
  color: #4e4e4e
}

@media print, screen and (min-width:1025px) {
  .p-voice__questionnaire-a {
    font-size: 160%;
    margin: 2.4rem 0 2.8rem 2.8rem
  }
}

@media screen and (max-width:1025px) {
  .p-voice__questionnaire-a br {
    display: none
  }
}

.p-feature {
  margin-bottom: 4rem
}

@media print, screen and (min-width:1025px) {
  .p-feature {
    margin-bottom: 8rem
  }
}

.p-feature__description {
  margin-bottom: 2rem
}

@media print, screen and (min-width:1025px) {
  .p-feature__description {
    margin-bottom: 3.6rem
  }
}

.p-feature__wrap {
  margin-bottom: 1rem
}

.p-feature__num {
  width: 120px;
  margin-bottom: 1.6rem
}

@media print, screen and (min-width:1025px) {
  .p-feature__num {
    width: 200px;
    margin-bottom: 2.4rem
  }
}

.p-feature__lead {
  font-size: 160%;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 1.6rem;
  padding: 1rem 1rem 1rem 1.8rem;
  color: #815e28;
  border-top: 1px solid #c9a76b;
  border-right: 1px solid #c9a76b;
  border-bottom: 1px solid #c9a76b;
  border-left: 12px solid #ff9a09
}

@media print, screen and (min-width:1025px) {
  .p-feature__lead {
    font-size: 300%;
    padding: 1.8rem 1rem 1.8rem 4rem
  }
}

@media screen and (max-width:1025px) {
  .p-feature__lead br {
    display: none
  }
}

@media print, screen and (min-width:1025px) {
  .p-feature__lead--01 {
    margin-bottom: 3rem
  }
}

@media print, screen and (min-width:1025px) {
  .p-feature__lead--02 {
    margin-bottom: 5.6rem
  }
}

@media print, screen and (min-width:1025px) {
  .p-feature__lead--03 {
    margin-bottom: 5.6rem
  }
}

.p-feature__lead-emphasis {
  color: #db0f0f
}

.p-feature__text {
  font-size: 140%;
  font-weight: 500;
  line-height: 1.8;
  margin-bottom: 2.4rem;
  color: #4e4e4e
}

@media screen and (max-width:1025px) {
  .p-feature__text br {
    display: none
  }
}

@media print, screen and (min-width:1025px) {
  .p-feature__text {
    font-size: 160%;
    margin-bottom: 4.8rem
  }
}

.p-feature__text-emphasis {
  font-size: 110%;
  font-weight: 700;
  font-style: normal;
  color: #db0f0f
}

.p-feature__img {
  display: block
}

.p-feature__img--01 {
  width: 78%;
  margin: 0 auto 2.5rem
}

@media print, screen and (min-width:1025px) {
  .p-feature__img--01 {
    margin: 0 auto 5rem
  }
}

.p-feature__img--02 {
  width: 70%;
  margin: 2.4rem auto 3rem
}

@media print, screen and (min-width:1025px) {
  .p-feature__img--02 {
    width: 62%;
    margin: 8.2rem auto 9.8rem
  }
}

.p-feature__img--03 {
  width: 100%;
  margin: 2rem auto 0
}

@media print, screen and (min-width:1025px) {
  .p-feature__img--03 {
    margin: 7.5rem auto 0
  }
}

.p-check__img {
  display: block;
  width: 82%;
  margin: 0 auto 2.8rem
}

@media print, screen and (min-width:1025px) {
  .p-check__img {
    margin: 0 auto 5.6rem
  }
}

.p-campaign__img {
  display: block;
  width: 88%;
  margin: 0 auto 4.2rem
}

@media print, screen and (min-width:1025px) {
  .p-campaign__img {
    margin: 0 auto 8.4rem
  }
}

.p-inquiry {
  margin-bottom: 2rem
}

@media print, screen and (min-width:1025px) {
  .p-inquiry {
    margin-bottom: 8rem
  }
}

.p-inquiry__ttl {
  display: block;
  width: 89%;
  margin: 0 auto 2rem
}

@media print, screen and (min-width:1025px) {
  .p-inquiry__ttl {
    margin: 0 auto 4rem
  }
}

.p-inquiry__note {
  font-size: 150%;
  font-weight: 700;
  margin-top: 2rem;
  text-align: center;
  color: #fff
}

@media print, screen and (min-width:1025px) {
  .p-inquiry__note {
    font-size: 250%;
    margin-top: 3.4rem
  }
}

.p-inquiry__block {
  padding: 1.5rem 5% 2rem;
  background: #ff9a09
}

@media print, screen and (min-width:1025px) {
  .p-inquiry__block {
    padding: 3rem 3.6rem 4rem
  }
}

.p-inquiry__block-ttl {
  font-size: 200%;
  font-weight: 700;
  margin-bottom: 2rem;
  text-align: center;
  letter-spacing: .1rem;
  color: #fff
}

@media screen and (max-width:320px) {
  .p-inquiry__block-ttl {
    font-size: 190%
  }
}

@media print, screen and (min-width:1025px) {
  .p-inquiry__block-ttl {
    font-size: 230%
  }
}

.p-inquiry__block-btn {
  font-size: 150%;
  font-weight: 700;
  position: relative;
  margin: 2rem auto;
  padding: 1.2rem 0;
  color: #fff;
  border-radius: 18px;
  background: #815e28
}

.p-inquiry__block-btn::after {
  display: block;
  width: 1.8rem;
  height: 1.8rem;
  margin-left: .5rem;
  content: '';
  background: url(../img/icon-arrow-down.png) center no-repeat;
  background-size: contain
}

@media print, screen and (min-width:1025px) {
  .p-inquiry__block-btn::after {
    width: 2.6rem;
    height: 2.6rem
  }
}

@media print, screen and (min-width:1025px) {
  .p-inquiry__block-btn {
    font-size: 250%;
    width: 580px;
    margin: 0 auto 2.6rem
  }
}

.p-inquiry__block-img {
  display: block;
  width: 893%;
  margin: 0 auto
}

.p-inquiry__block-link {
  display: block
}

.p-inquiry__box {
  width: 100%;
  height: 360px;
  background: url(../img/inq.png) center no-repeat;
  background-size: cover
}

.p-inquiry__store {
  box-sizing: border-box;
  width: 60%;
  min-height: 58px;
  padding: .5rem 1rem .8rem 1rem;
  border-radius: 6px;
  background: #fff
}

.p-inquiry__store:first-child {
    margin: auto;
}

@media print, screen and (min-width:1025px) {}

@media print, screen and (min-width:1025px) {
  .p-inquiry__store-wrap {
    display: flex;
    margin-bottom: 2.4rem;
    justify-content: center
  }
}

.p-inquiry__store-name {
  font-size: 160%;
  font-weight: 700;
  width: 100%;
  text-align: center;
  letter-spacing: .1rem;
  color: #815e28;
  border-bottom: dotted 3px #815e28
}

@media print, screen and (min-width:1025px) {
  .p-inquiry__store-name {
    font-size: 200%
  }
}

.p-inquiry__store-address {
  display: flex;
  padding: .6rem 0 0;
  align-items: center;
  justify-content: center
}

@media print, screen and (min-width:1025px) {
  .p-inquiry__store-address {
    padding: .6rem 0 0
  }
}

.p-inquiry__store-link {
  display: flex;
  align-items: center;
  justify-content: center
}

.p-inquiry__store-link:last-child {
  margin: .3rem 0 0 0
}

.p-inquiry__store-img {
  width: 88%;
  object-fit: contain
}

@media print, screen and (min-width:1025px) {
  .p-inquiry__store-img--tel {
    margin-left: .8rem
  }
}

.p-reason {
  margin-bottom: 3rem
}

@media print, screen and (min-width:1025px) {
  .p-reason {
    margin-bottom: 9rem
  }
}

.p-reason__description {
  display: block;
  width: 80%;
  margin: 0 auto 3.6rem
}

@media print, screen and (min-width:1025px) {
  .p-reason__description {
    margin: 0 auto 7.2rem
  }
}

.p-reason__heading {
  font-size: 160%;
  font-weight: 700;
  line-height: 1.3;
  display: flex;
  letter-spacing: .1rem;
  color: #815e28;
  align-items: center
}

@media print, screen and (min-width:1025px) {
  .p-reason__heading {
    font-size: 290%
  }
}

.p-reason__heading::before {
  display: block;
  width: 1rem;
  height: 5.6rem;
  margin-right: 1.6rem;
  content: '';
  background: #815e28
}

@media print, screen and (min-width:1025px) {
  .p-reason__heading::before {
    margin-right: 2.4rem
  }
}

.p-reason__heading-wrap {
  box-sizing: border-box;
  margin-bottom: 2.4rem;
  padding: 1.2rem 1rem;
  border: 1px solid #c9a76b;
  background: #f1d99f
}

@media print, screen and (min-width:1025px) {
  .p-reason__heading-wrap {
    margin-bottom: 5.8rem;
    padding: 1.9rem 2rem
  }
}

.p-reason__heading-emphasis {
  background: linear-gradient(transparent 70%, #ff9a09 30%)
}

@media print, screen and (min-width:1025px) {
  .p-reason__wrap {
    display: flex;
    align-items: start
  }
}

.p-reason__text {
  font-size: 140%;
  font-weight: 500;
  line-height: 1.8;
  margin-bottom: 1rem;
  color: #4e4e4e
}

@media print, screen and (min-width:1025px) {
  .p-reason__text {
    font-size: 160%;
    margin: 0 1rem 0 0
  }
}

@media screen and (max-width:1025px) {
  .p-reason__text br {
    display: none
  }
}

.p-reason__text-emphasis {
  background: #fff45c
}

.p-reason__text-catch {
  color: #db0f0f
}

.p-reason__img {
  width: 100%;
  margin: 0 auto
}

@media print, screen and (min-width:1025px) {
  .p-reason__img {
    width: 45%;
    margin: 0 1.6rem 0 auto
  }
}

.p-program__head {
  display: block;
  width: 90%;
  margin: 0 auto 2rem
}

@media print, screen and (min-width:1025px) {
  .p-program__head {
    width: 90%;
    margin: 0 auto
  }
}

.p-program__heading {
  font-size: 180%;
  font-weight: 700;
  color: #815e28
}

@media print, screen and (min-width:1025px) {
  .p-program__heading {
    font-size: 285%;
    margin-bottom: 3.6rem
  }
}

.p-program__heading-span {
  padding-left: 5%
}

@media print, screen and (min-width:1025px) {
  .p-program__heading-span {
    padding: 0
  }
}

.p-program__heading-emphasis {
  font-size: 130%;
  font-weight: 700;
  display: block;
  margin-top: .8rem;
  padding: 1rem 5%;
  text-align: center;
  letter-spacing: .3rem;
  color: #fff;
  background: #815e28
}

@media print, screen and (min-width:1025px) {
  .p-program__heading-emphasis {
    font-size: 165%;
    padding: 2rem
  }
}

.p-program__heading-catch {
  color: #ff9a09
}

.p-program__list {
  margin-bottom: 1.5rem;
  padding: 2rem 5%;
  background: #fffac7
}

@media screen and (max-width:1025px) {
  .p-program__list br {
    display: none
  }
}

@media print, screen and (min-width:1025px) {
  .p-program__list {
    display: flex;
    margin-bottom: 3rem;
    padding: 4.6rem 5.5rem 4rem 3.8rem;
    align-items: flex-start
  }
}

@media print, screen and (min-width:1025px) {
  .p-program__wrap {
    margin-right: 3rem
  }
}

.p-program__step {
  font-size: 180%;
  font-weight: 700;
  line-height: 1.5;
  display: flex;
  margin-bottom: 1.6rem;
  letter-spacing: .1rem;
  color: #815e28;
  align-items: center
}

.p-program__step::before {
  display: block;
  width: .7rem;
  min-height: 4.2rem;
  margin: 0 1rem 0 0;
  content: '';
  background: #ff9a09
}

@media print, screen and (min-width:1025px) {
  .p-program__step::before {
    margin: 0 2rem 0 0
  }
}

@media print, screen and (min-width:1025px) {
  .p-program__step {
    font-size: 225%;
    margin-bottom: 4rem
  }
}

.p-program__step--02::before {
  min-height: 7.2rem
}

.p-program__text {
  font-size: 140%;
  line-height: 1.7;
  margin-bottom: 1rem;
  color: #4e4e4e
}

@media print, screen and (min-width:1025px) {
  .p-program__text {
    font-size: 160%;
    margin-bottom: 0;
    flex: 1 1 auto
  }
}

.p-program__text-emphasis {
  font-weight: 700;
  color: #db0f0f
}

.p-program__img {
  display: block
}

@media print, screen and (min-width:1025px) {
  .p-program__img {
    display: block;
    width: 46%;
    margin-left: auto
  }
}

.p-program__success {
  width: 100%;
  margin: 0 auto
}

@media print, screen and (min-width:1025px) {
  .p-program__success {
    margin: 0 auto 8rem 7rem
  }
}

.p-program__success-img {
  display: block;
  width: 90%;
  margin: 0 auto 2rem
}

@media print, screen and (min-width:1025px) {
  .p-program__success-img {
    margin: 0 0 3rem 7rem
  }
}

_:-ms-lang(x)::-ms-backdrop, .p-program__wrap {
  flex: 1
}

@supports (-ms-ime-align:auto) {
  .p-program__wrap {
    flex: 1
  }
}

.p-select {
  margin-bottom: 4rem
}

@media print, screen and (min-width:1025px) {
  .p-select {
    margin-bottom: 10rem
  }
}

.p-select__heading {
  font-size: 160%;
  font-weight: 700;
  position: relative;
  display: flex;
  margin-bottom: 1.8rem;
  padding: 1.8rem 0;
  text-align: center;
  letter-spacing: .1em;
  color: #fff;
  background: #ff9a09;
  justify-content: center;
  align-items: center
}

.p-select__heading::after, .p-select__heading::before {
  display: block;
  height: 3rem;
  content: '';
  border-right: .4rem solid #fff
}

.p-select__heading::before {
  margin-right: 2rem;
  transform: skewX(-160deg)
}

.p-select__heading::after {
  margin-left: 1rem;
  transform: skewX(160deg)
}

@media screen and (max-width:320px) {
  .p-select__heading {
    font-size: 150%
  }
}

@media print, screen and (min-width:1025px) {
  .p-select__heading {
    font-size: 270%;
    margin-bottom: 3.6rem
  }
}

.p-select__wrap {
  width: 90%;
  margin: 0 auto 2rem
}

@media print, screen and (min-width:1025px) {
  .p-select__wrap {
    margin: 0 auto 4rem
  }
}

.p-select__wrap img {
  width: 47.2%
}

.p-select__wrap img:not(:last-child) {
  margin-right: 1rem
}

@media print, screen and (min-width:1025px) {
  .p-select__wrap img:not(:last-child) {
    margin-right: 4rem
  }
}

.p-select__text {
  font-size: 160%;
  font-weight: 700;
  display: flex;
  margin: 1rem 0;
  color: #815e28;
  justify-content: center;
  align-items: flex-end
}

@media screen and (max-width:320px) {
  .p-select__text {
    font-size: 150%
  }
}

@media print, screen and (min-width:1025px) {
  .p-select__text {
    font-size: 300%;
    margin: 1.6rem 5rem 1.6rem 0
  }
}

.p-select__text::before {
  display: inline-block;
  width: 4rem;
  height: 4rem;
  margin-right: 1rem;
  content: '';
  background: url(../img/select-arrow.png);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: contain
}

@media print, screen and (min-width:1025px) {
  .p-select__text::before {
    width: 6rem;
    height: 6rem
  }
}

.p-select__list {
  margin: 0;
  padding: 2rem;
  list-style: none;
  background: #fffac7
}

@media print, screen and (min-width:1025px) {
  .p-select__list {
    width: 69%;
    margin: 0 auto;
    padding: 4rem
  }
}

.p-select__list-item {
  font-size: 140%;
  font-weight: 700;
  line-height: 1.5;
  display: flex;
  color: #4e4e4e;
  align-items: flex-start
}

.p-select__list-item:not(:last-child) {
  margin-bottom: .8rem
}

@media print, screen and (min-width:1025px) {
  .p-select__list-item {
    font-size: 180%
  }
  .p-select__list-item:not(:last-child) {
    margin-bottom: 2rem
  }
}

.p-select__list-item::before {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  margin-top: -.2rem;
  margin-right: 1rem;
  content: '';
  background: url(../img/select-check.png);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: contain
}

@media print, screen and (min-width:1025px) {
  .p-select__list-item::before {
    width: 3rem;
    height: 3rem;
    margin-top: -.8rem
  }
}

.p-select__box {
  display: flex;
  width: 100%;
  padding: 1rem;
  border: 1px solid #000;
  align-items: center
}

.p-select__box:not(:last-child) {
  margin-right: 1rem
}

@media print, screen and (min-width:1025px) {
  .p-select__box {
    width: 100%;
    padding: 3rem 2rem
  }
  .p-select__box:not(:last-child) {
    margin-right: 2rem
  }
}

.p-select__box-txt {
  font-size: 3.3vw;
  font-weight: 700;
  line-height: 1.6;
  width: 100%;
  content: '';
  color: #4e4e4e
}

@media print, screen and (min-width:1025px) {
  .p-select__box-txt {
    font-size: 200%
  }
}

.p-select__box-txt-emphasis {
  font-size: 120%;
  color: red
}

@media print, screen and (min-width:1025px) {
  .p-select__box-txt-br {
    display: none
  }
}

.p-select__box-txt br {
  display: none
}

.p-counseling {
  margin-bottom: 4rem
}

@media print, screen and (min-width:1025px) {
  .p-counseling {
    margin-bottom: 10rem
  }
}

.p-counseling__inquiry {
  width: 90%;
  margin: 0 auto 3rem;
  padding: 1.5rem 5% 1rem;
  background: #ff9a09
}

@media print, screen and (min-width:1025px) {
  .p-counseling__inquiry {
    width: 72%;
    margin: 0 auto 6rem;
    padding: 3rem 3.6rem 2rem
  }
}

.p-counseling__img-wrap {
  position: relative
}

.p-counseling__img {
  display: block;
  width: 100%;
  margin: 2rem auto 2rem
}

@media print, screen and (min-width:1025px) {
  .p-counseling__img {
    width: 80%;
    margin: 4rem auto 2rem
  }
}

.p-counseling__img-link {
  position: absolute;
  right: 2%;
  bottom: 10%;
  display: block;
  width: 66%;
  height: 10%;
  background: url(../img/counselin-btn.png) center no-repeat;
  background-size: contain
}

@media print, screen and (min-width:1025px) {
  .p-counseling__img-link {
    right: 5%
  }
}

.p-counseling__wrap {
  padding: 2rem 5%;
  border: 4px solid #ff9a09
}

@media print, screen and (min-width:1025px) {
  .p-counseling__wrap {
    padding: 5rem 4.4rem;
    text-align: center
  }
}

@media print, screen and (min-width:1025px) {
  .p-counseling__inner {
    display: flex;
    align-items: flex-start
  }
}

.p-counseling__title {
  font-size: 200%;
  font-weight: 700;
  display: inline;
  color: #815e28;
  background: linear-gradient(transparent 50%, #fadfc5 30%)
}

@media print, screen and (min-width:1025px) {
  .p-counseling__title {
    font-size: 390%;
    display: inline-block;
    width: 93%;
    margin-bottom: 5.4rem;
    text-align: center;
    letter-spacing: .1rem
  }
}

.p-counseling__line {
  display: inline-block;
  background: linear-gradient(transparent 70%, #fadfc5 30%)
}

.p-counseling__text {
  font-size: 140%;
  line-height: 1.8;
  margin: 2rem 0 1rem;
  text-align: left;
  color: #4e4e4e
}

@media screen and (max-width:1025px) {
  .p-counseling__text br {
    display: none
  }
}

@media print, screen and (min-width:1025px) {
  .p-counseling__text {
    font-size: 160%;
    margin: 0 2rem 2rem 0;
    flex: 1
  }
}

.p-counseling__text-emphasis {
  font-weight: 400;
  background: #fadfc5
}

.p-counseling__text-foot {
  color: #fff
}

@media print, screen and (min-width:1025px) {
  .p-counseling__text-foot {
    display: flex;
    align-items: center
  }
}

.p-counseling__text-label {
  font-size: 150%;
  font-weight: 500;
  padding: .3rem 2rem;
  background: #815e28
}

@media print, screen and (min-width:1025px) {
  .p-counseling__text-label {
    font-size: 150%;
    display: block;
    margin-right: 2rem
  }
}

.p-counseling__text-name {
  font-size: 140%;
  font-weight: 700;
  display: block;
  margin: 1rem 0 1rem;
  color: #815e28
}

@media print, screen and (min-width:1025px) {
  .p-counseling__text-name {
    font-size: 180%;
    margin: 0
  }
}

.p-counseling__text-name span {
  font-size: 170%;
  margin-left: .8rem
}

@media print, screen and (min-width:1025px) {
  .p-counseling__representative {
    width: 46.5%;
    min-width: 405px
  }
}

.p-faq {
  padding: 3rem 0 5rem;
  background: #fff5bd
}

@media print, screen and (min-width:1025px) {
  .p-faq {
    padding: 6.2rem 0 10rem
  }
}

.p-faq__ttl {
  display: block;
  width: 80%;
  margin: 0 auto 3rem
}


@media print, screen and (min-width:1025px) {
  .p-faq__ttl {
    width: 345px;
    margin: 0 auto 6.2rem
  }
}

.p-faq__list {
  margin: 0;
  padding: 0;
  list-style: none
}

.p-faq__item {
  padding: 2rem 3rem;
  border-radius: 1.5rem;
  background: #fff
}

.p-faq__item:not(:last-child) {
  margin-bottom: 3rem
}

.p-faq__item-span {
  display: block;
  margin-left: 2rem
}

@media screen and (max-width:1025px) {
  .p-faq__item-span {
    margin-left: 1rem
  }
  .p-faq__item-span br {
    display: none
  }
}

.p-faq__text {
  font-size: 130%;
  position: relative;
  padding-top: .3rem;
  padding-bottom: .8rem;
  padding-left: 3.5rem
}

@media print, screen and (min-width:1025px) {
  .p-faq__text {
    padding-top: .8rem;
    padding-bottom: 1.2rem
  }
}

.p-faq__text::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 25px;
  height: 20px;
  content: '';
  background-repeat: no-repeat;
  background-size: contain
}

@media print, screen and (min-width:1025px) {
  .p-faq__text::before {
    width: 55px;
    height: 40px
  }
}

.p-faq__question {
  margin-bottom: 1.2rem;
  color: #ff9a09;
  border-bottom: 2px dashed #b28850
}

@media print, screen and (min-width:1025px) {
  .p-faq__question {
    font-size: 320%;
    font-weight: 700;
    padding-left: 6rem;
    letter-spacing: .1rem
  }
}

.p-faq__question::before {
  background-image: url(../img/faq-q.png)
}

@media print, screen and (min-width:1025px) {
  .p-faq__question::before {
    top: 10px
  }
}

.p-faq__answer {
  line-height: 1.75;
  color: #815e28
}

@media print, screen and (min-width:1025px) {
  .p-faq__answer {
    font-size: 240%;
    margin-top: 2rem;
    padding-left: 7rem
  }
}

.p-faq__answer::before {
  background-image: url(../img/faq-a.png)
}

@media print, screen and (min-width:1025px) {
  .p-faq__answer::before {
    top: 0
  }
}

.p-faq__answer-emphasis {
  background: #fff100
}

.p-flow {
  margin-bottom: 4rem;
  padding-bottom: 4rem;
  background: #f9e2e2
}

@media print, screen and (min-width:1025px) {
  .p-flow {
    margin-bottom: 8rem;
    padding-bottom: 12rem
  }
}

.p-flow__heading {
  font-family: 'ヒラギノ明朝 Pro', 'Hiragino Mincho Pro', 'MS P明朝', 'MS PMincho', serif;
  font-size: 240%;
  font-weight: 700;
  margin-bottom: 2.5rem;
  padding: 2rem 0;
  text-align: center;
  letter-spacing: .2rem;
  color: #fff;
  background: url(../img/flow-bg.png)
}

@media print, screen and (min-width:1025px) {
  .p-flow__heading {
    font-size: 460%;
    margin-bottom: 8rem;
    padding: 2.4rem 0
  }
}

.p-flow__description {
  font-family: 'ヒラギノ明朝 Pro', 'Hiragino Mincho Pro', 'MS P明朝', 'MS PMincho', serif;
  font-size: 160%;
  font-weight: 700;
  margin-bottom: 3rem;
  color: #815e28
}

@media print, screen and (min-width:1025px) {
  .p-flow__description {
    font-size: 410%;
    margin-bottom: 3.8rem
  }
}

.p-flow__list {
  margin: 0;
  padding: 0;
  list-style: none
}

@media print, screen and (min-width:1025px) {
  .p-flow__list {
    margin-bottom: 8rem
  }
}

.p-flow__item {
  font-size: 160%;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  position: relative;
  padding: 20px 15px 0;
  letter-spacing: .1rem;
  color: #ec6f6f;
  border: 6px solid #ec6f6f;
  border-radius: 6px;
  background: #fff;
  background: #fff
}

.p-flow__item:first-child {
  margin-bottom: 86px
}

@media print, screen and (min-width:1025px) {
  .p-flow__item:first-child {
    margin-bottom: 110px
  }
}

.p-flow__item:first-child::after {
  position: absolute;
  top: 108%;
  left: 50%;
  width: 149.8px;
  width: 150px;
  height: 38.5px;
  height: 84px;
  content: '';
  transform: translateX(-50%);
  background-image: url(../img/faq-arrow.png);
  background-repeat: no-repeat;
  background-size: 100%
}

@media print, screen and (min-width:1025px) {
  .p-flow__item:first-child::after {
    top: 118%;
    width: 250px
  }
}

@media print, screen and (min-width:1025px) {
  .p-flow__item:first-child img {
    position: absolute;
    right: 6px;
    bottom: 0;
    display: block;
    height: 300px;
    content: ''
  }
}

@media print, screen and (min-width:1025px) {
  .p-flow__item:last-child img {
    position: absolute;
    bottom: 0;
    left: 40px;
    display: block;
    height: 314px;
    content: ''
  }
}

@media print, screen and (min-width:1025px) {
  .p-flow__item:last-child p {
    padding-left: 300px
  }
}

@media screen and (max-width:1025px) {
  .p-flow__item:last-child div {
    padding-bottom: 10px
  }
}

@media print, screen and (min-width:1025px) {
  .p-flow__item {
    font-size: 220%
  }
}

.p-flow__item-emphasis {
  font-size: 140%;
  font-weight: 700
}

.p-flow__item-img {
  display: block;
  margin: 0 auto
}

@media screen and (max-width:1025px) {
  .p-flow__item-img {
    width: 60%;
    max-width: 200px
  }
}

.p-flow__text {
  font-size: 200%;
  line-height: 1.75;
  margin: 30px auto;
  text-align: center;
  color: #815e28
}

.p-flow__text span {
  font-weight: 700;
  color: #ec6f6f;
  background: linear-gradient(transparent 70%, #ffeb81 30%)
}

@media print, screen and (min-width:1025px) {
  .p-flow__text span br {
    display: none
  }
}

@media print, screen and (min-width:1025px) {
  .p-flow__text {
    font-size: 320%
  }
}

@media print, screen and (min-width:1025px) {
  .p-flow__text-br {
    display: none
  }
}

.p-flow__note {
  font-size: 140%;
  color: #4e4e4e
}

@media print, screen and (min-width:1025px) {
  .p-flow__note {
    font-size: 150%;
    line-height: 1.6
  }
}

@media print, screen and (min-width:1025px) {
  .p-flow__item-top {
    padding: 3.5rem 4.6rem
  }
}

@media print, screen and (min-width:1025px) {
  .p-flow__item-top .p-flow__item-adjust {
    padding-left: 3.2rem
  }
}

@media print, screen and (min-width:1025px) {
  .p-flow__item-foot {
    margin-top: 13rem;
    padding: 3.5rem 0
  }
}

@media print, screen and (min-width:1025px) {
  .p-flow__item-foot .p-flow__item-adjust {
    padding-left: 3.2rem
  }
}

.p-flow__item-foot .p-flow__item-right {
  font-weight: 700;
  text-align: right
}

@media print, screen and (min-width:1025px) {
  .p-flow__item-foot .p-flow__item-right {
    margin-right: 5rem
  }
}

.p-access {
  color: #fff;
  background: #ff9a09
}

@media print, screen and (min-width:1025px) {
  .p-access {
    padding: 63px 0
  }
}

.p-access__title {
  font-size: calc(1rem + 2.5vw);
  font-weight: 700;
  margin: 3rem 0;
  margin-bottom: 4rem;
  padding: 1rem 0;
  text-align: center;
  letter-spacing: .2rem;
  color: #fff;
  border-top: 2px solid #fff;
  border-bottom: 2px solid #fff
}

@media print, screen and (min-width:1025px) {
  .p-access__title {
    font-family: 'ヒラギノ明朝 Pro', 'Hiragino Mincho Pro', 'MS P明朝', 'MS PMincho', serif;
    font-size: 2.8rem;
    margin: 0 0 6rem 0
  }
}

.p-access__name {
  font-size: 2rem;
  font-weight: 700;
  font-weight: 700;
  line-height: 1.2;
  display: table;
  margin: 0 auto;
  margin-bottom: 2.5rem;
  text-align: center;
  color: #c02323;
  border-bottom: 4px solid #815e28
}

.p-access__name span {
  color: #815e28
}

@media print, screen and (min-width:1025px) {
  .p-access__name {
    font-size: 4rem;
    margin-bottom: 5rem
  }
}

@media print, screen and (min-width:1025px) {
  .p-access__figure {
    display: flex;
    justify-content: space-between
  }
}

.p-access__wrap-img {
  width: 100%;
  margin-bottom: 20px;
  letter-spacing: -.4em
}

@media print, screen and (min-width:1025px) {
  .p-access__wrap-img {
    width: 28.95833%
  }
}

.p-access__img {
  width: 50%
}

@media print, screen and (min-width:1025px) {
  .p-access__img {
    width: 100%
  }
  .p-access__img:first-child {
    margin-bottom: 2.8rem
  }
}

.p-access__figcaption {
  line-height: 1
}

@media print, screen and (min-width:1025px) {

  .p-access__figcaption {
    width: 65.9375%
  }
}

.p-access__lead {
  font-size: 1.7rem;
  font-weight: 700;
  margin-bottom: .5em
}

@media print, screen and (min-width:1025px) {
  .p-access__lead {
    font-size: 2.3rem;
    margin-bottom: 1.7rem
  }
}

.p-access__address {
  font-size: 1.4rem;
  line-height: 1.75;
  margin-bottom: 2rem
}

@media print, screen and (min-width:1025px) {
  .p-access__address {
    font-size: 1.6rem;
    margin-bottom: 30px
  }
}

.p-access__map {
  overflow: hidden;
  border-radius: 1rem
}

.p-access__map iframe {
  width: 100%;
  height: 200px;
  border: 0;
  outline: #f6f6f6 solid 1px;
  background-color: #fcfcfc
}

@media print, screen and (min-width:1025px) {
  .p-access__map iframe {
    height: 256px
  }
}

.p-contact {
  margin: 4rem auto 0
}

@media print, screen and (min-width:1025px) {
  .p-contact {
    margin: 8rem auto 0
  }
}

.p-contact__title {
  font-family: 'ヒラギノ明朝 Pro', 'Hiragino Mincho Pro', 'MS P明朝', 'MS PMincho', serif;
  font-size: 240%;
  font-weight: 700;
  padding: 2rem 0;
  text-align: center;
  letter-spacing: .2rem;
  color: #fff;
  background: url(../img/contact-bg.png)
}

@media print, screen and (min-width:1025px) {
  .p-contact__title {
    font-size: 440%;
    padding: 2.4rem 0
  }
}

.p-contact__inner {
  box-sizing: border-box;
  width: 90%;
  max-width: 824px;
  margin: 0 auto;
  padding: 0 0 6rem
}

.p-contact__flow {
  display: flex;
  margin: 4rem 0 2.8rem;
  padding: 0;
  list-style: none;
  justify-content: space-between
}

@media print, screen and (min-width:1025px) {
  .p-contact__flow {
    margin: 8rem 0 5.6rem
  }
}

.p-contact__flow-item {
  position: relative;
  height: 24px
}

@media screen and (min-width:640px) {
  .p-contact__flow-item {
    height: 36px
  }
}

@media screen and (min-width:767px) {
  .p-contact__flow-item {
    height: 40px
  }
}

@media print, screen and (min-width:1025px) {
  .p-contact__flow-item {
    width: 250px;
    height: 52px
  }
}

.p-contact__flow-item::before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: '';
  background-repeat: no-repeat;
  background-position: center
}

.p-contact__flow-item.wpcf7c-force-hide {
  display: block!important
}

.p-contact__flow-item.p-contact__flow-item--01::before {
  background: url(../img/step01_active.svg) no-repeat;
  background-size: contain
}

.p-contact__flow-item.p-contact__flow-item--01.wpcf7c-force-hide::before {
  background: url(../img/step01.svg) no-repeat;
  background-size: contain
}

.p-contact__flow-item.p-contact__flow-item--02::before {
  background: url(../img/step02_active.svg) no-repeat;
  background-size: contain
}

.p-contact__flow-item.p-contact__flow-item--02.wpcf7c-force-hide::before {
  background: url(../img/step02.svg) no-repeat;
  background-size: contain
}

.p-contact__flow-item.p-contact__flow-item--03::before {
  background: url(../img/step03_active.svg) no-repeat;
  background-size: contain
}

.p-contact__flow-item.p-contact__flow-item--03.wpcf7c-force-hide::before {
  background: url(../img/step03.svg) no-repeat;
  background-size: contain
}

@media screen and (max-width:1025px) {
  .p-contact__flow-item {
    width: 30.333%;
    max-width: 250px
  }
}

.p-contact__flow-item:not(:last-child)::after {
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  width: 0;
  height: 0;
  content: '';
  transform: translate(140%, -50%);
  border-width: 5px 0 5px 8px;
  border-style: solid;
  border-color: transparent transparent transparent #825f28
}

@media print, screen and (min-width:1025px) {
  .p-contact__flow-item:not(:last-child)::after {
    transform: translate(170%, -50%);
    border-width: 10px 0 10px 16px
  }
}

.p-contact__from {
  width: 100%
}

.p-contact__wrap {
  width: 100%;
  margin-bottom: 3rem
}

@media print, screen and (min-width:1025px) {
  .p-contact__wrap {
    display: flex;
    margin-bottom: 2rem;
    align-items: baseline
  }
  .p-contact__wrap--textarea {
    margin: 3rem 0;
    align-items: flex-start
  }
}

.p-contact__state {
  display: block
}

@media print, screen and (min-width:1025px) {
  .p-contact__state {
    width: 45%;
    max-width: 250px
  }
}

.p-contact__state.p-contact__state-counseling {
  width: 100%;
  max-width: 100%
}

.p-contact__tag {
  font-size: 1.3rem;
  font-weight: 700;
  display: inline-block;
  width: 52px;
  margin-right: .5rem;
  padding: .5rem 0;
  text-align: center;
  color: #fff;
  border-radius: 5.5px
}

@media print, screen and (min-width:1025px) {
  .p-contact__tag {
    font-size: 1.7rem;
    margin-right: 1rem;
    padding: .5rem
  }
}

.p-contact__tag--require {
  background: #ff665e
}

.p-contact__tag--any {
  background: #825f28
}

.p-contact__label {
  font-size: 1.4rem;
  font-weight: 700;
  color: #825f28
}

@media print, screen and (min-width:1025px) {
  .p-contact__label {
    font-size: 2.2rem
  }
}

.p-contact__label[for] {
  cursor: pointer
}

@media print, screen and (min-width:1025px) {
  .p-contact__label--desired {
    display: flex;
    padding-left: 1rem;
    justify-content: center
  }
}

.p-contact__input {
  font-size: 1.6rem;
  line-height: normal;
  display: inline-block;
  box-sizing: border-box;
  width: 100%;
  min-height: 52px;
  margin: 1rem 0 0;
  padding: .8rem 1rem;
  cursor: pointer;
  border: 1px solid #c0af93;
  border-radius: 7.5px
}

@media print, screen and (min-width:1025px) {
  .p-contact__input {
    font-size: 2.2rem;
    margin: 0
  }
}

.p-contact__input--age {
  width: 80%;
  max-width: 172px;
  margin-right: 12px;
  text-align: left!important
}

@media print, screen and (min-width:1025px) {
  .p-contact__input--age {
    min-width: 172px
  }
}

.p-contact__age {
  font-size: 1.6rem;
  font-weight: 700;
  display: inline-block;
  color: #825f28
}

.p-contact__select {
  font-size: 1.6rem;
  line-height: 52px;
  box-sizing: border-box;
  width: 80%;
  min-height: 52px;
  margin: 1rem 0 0;
  padding-left: 1rem;
  color: #825f28;
  border: 1px solid #c0af93;
  border-radius: 7.5px
}

@media print, screen and (min-width:1025px) {
  .p-contact__select {
    font-size: 2.2rem;
    width: 25%;
    margin: 0
  }
}

.p-contact__select-store {
  position: relative;
  width: 100%;
  max-width: 218px
}

.p-contact__select-store::after {
  position: absolute;
  z-index: 11;
  top: 57%;
  right: 0;
  display: block;
  width: 0;
  height: 0;
  content: '';
  transform: translate(-12px, -50%);
  border-width: 7px 4px 0;
  border-style: solid;
  border-color: #825f28 transparent transparent
}

@media print, screen and (min-width:1025px) {
  .p-contact__select-store::after {
    top: 50%
  }
}

.p-contact__select-store .p-contact__select {
  width: 100%
}

.p-contact__select-wrap {
  display: flex;
  align-items: center
}

@media screen and (max-width:1025px) {
  .p-contact__select-wrap {
    margin-top: 1rem
  }
  .p-contact__select-wrap .p-contact__label {
    flex-basis: 20%
  }
  .p-contact__select-wrap .p-contact__select {
    width: 100px;
    margin-top: 0
  }
}

@media print, screen and (min-width:1025px) {
  .p-contact__select-wrap {
    margin: 0 auto 0 2rem
  }
}

.p-contact__select-content {
  position: relative
}

.p-contact__select-content::after {
  position: absolute;
  z-index: 11;
  top: 50%;
  right: 0;
  display: block;
  width: 0;
  height: 0;
  content: '';
  transform: translate(-12px, -50%);
  border-width: 7px 4px 0;
  border-style: solid;
  border-color: #825f28 transparent transparent
}

.p-contact__text {
  font-size: 1.4rem;
  font-weight: 700;
  color: #825f28
}

@media print, screen and (min-width:1025px) {
  .p-contact__text {
    font-size: 2rem
  }
}

.p-contact__text span {
  font-size: 85%;
  display: block
}

@media screen and (max-width:1025px) {
  .p-contact__text-record {
    margin-top: 1rem
  }
}

@media print, screen and (min-width:1025px) {
  .p-contact__list {
    display: flex;
    width: 100%;
    align-items: center
  }
}

@media print, screen and (min-width:1025px) {
  .p-contact__list .p-contact__label {
    margin-right: 1rem
  }
}

@media print, screen and (min-width:1025px) {
  .p-contact__list .p-contact__input {
    width: 128px
  }
}

@media print, screen and (min-width:1025px) {
  .p-contact__list .p-contact__select {
    width: 128px
  }
}

.p-contact__list-day {
  display: flex;
  align-items: center
}

.p-contact__list-day .p-contact__input {
  font-size: 1.6rem
}

@media screen and (max-width:1025px) {
  .p-contact__list-day {
    display: flex;
    margin-top: 1rem;
    align-items: center
  }
  .p-contact__list-day .p-contact__label {
    flex-basis: 20%
  }
  .p-contact__list-day .p-contact__input {
    width: 132px;
    margin-top: 0
  }
}

.p-contact__tilde {
  padding: 0 1rem
}

.p-contact__textarea {
  font-size: 1.6rem;
  box-sizing: border-box;
  width: 100%;
  height: 200px;
  min-height: 52px;
  margin-top: 1rem;
  padding: 13px 10px;
  resize: none;
  color: #825f28;
  border: 1px solid #c0af93;
  border-radius: 7.5px
}

@media print, screen and (min-width:1025px) {
  .p-contact__textarea {
    font-size: 1.8rem;
    min-width: 574px;
    margin-top: 0;
    padding: 12px 17px
  }
}

.p-contact__privacy {
  margin: 3rem 0 4rem;
  color: #4d4d4d
}

@media print, screen and (min-width:1025px) {
  .p-contact__privacy {
    margin: 3rem 0 6rem
  }
}

.p-contact__privacy-dl {
  font-size: 1.3rem;
  line-height: 1.75
}

.p-contact__privacy-dd {
  margin-left: 0
}

.p-contact__privacy-dd:not(:last-child) {
  margin-bottom: 1.75rem
}

.p-contact__agree {
  font-size: 1.6rem;
  font-weight: 500;
  margin-bottom: 1rem;
  color: #825f28
}

@media print, screen and (min-width:1025px) {
  .p-contact__agree {
    font-size: 1.6rem
  }
}

.p-contact__agree input {
  display: none
}

.p-contact__btn-confirm {
  font-size: 160%;
  font-weight: 700;
  display: block;
  width: 100%;
  max-width: 345px;
  margin: 0 auto;
  padding: 1.9rem 0;
  cursor: pointer;
  color: #fdeeed;
  border: none;
  border-radius: 10px;
  background: #ff665e
}

@media print, screen and (min-width:1025px) {
  .p-contact__btn-confirm {
    font-size: 240%
  }
}

.p-contact__btn-confirm:disabled {
  pointer-events: none
}

.p-contact__wrap-counseling {
  display: flex;
  margin-bottom: 1rem;
  align-items: center
}

@media print, screen and (min-width:1025px) {
  .p-contact__wrap-counseling {
    margin-bottom: 2rem
  }
}

.p-contact__file-text {
  font-size: 140%;
  line-height: 1.75
}

@media print, screen and (min-width:1025px) {
  .p-contact__file-text {
    font-size: 150%
  }
}

.p-contact__file-wrap {
  margin: .8rem 0
}

@media print, screen and (min-width:1025px) {
  .p-contact__file-wrap {
    display: flex;
    align-items: center
  }
}

.p-contact__file-span {
  font-size: 140%;
  line-height: 1.75;
  display: block
}

@media print, screen and (min-width:1025px) {
  .p-contact__file-span {
    font-size: 180%
  }
}

.p-contact__complete .p-contact__title {
  margin-top: 0
}

@media screen and (max-width:1025px) {
  .p-contact__complete .p-contact__flow {
    margin: 4rem 0 1rem
  }
}

.p-contact__complete-lead {
  font-size: 220%;
  font-weight: 700;
  display: block;
  margin: 0 0 2rem;
  text-align: center
}

@media print, screen and (min-width:1025px) {
  .p-contact__complete-lead {
    font-size: 220%;
    margin: 5rem 0 3rem
  }
}

.p-contact__complete-text {
  font-size: 160%;
  margin-bottom: 10rem;
  text-align: center
}

@media screen and (max-width:1025px) {
  .p-contact__complete-text {
    font-size: 150%;
    margin-bottom: 3rem
  }
  .p-contact__complete-text br {
    display: none
  }
}

.p-contact__complete-btn {
  font-size: 160%;
  font-weight: 700;
  display: block;
  box-sizing: border-box;
  width: 200px;
  margin: 0 auto;
  padding: 1em 0;
  text-align: center;
  color: #f1a237;
  border: 1px solid #f1a237;
  border-radius: 5px
}

.p-contact__fileloader {
  font-size: 160%;
  display: block;
  box-sizing: border-box;
  width: 100%
}

@media print, screen and (min-width:1025px) {
  .p-contact__fileloader {
    font-size: 180%;
    margin-left: 1rem
  }
}

.p-contact__btn-wrap {
  position: relative
}

.p-contact__btn-wrap input {
  font-size: 160%;
  font-weight: 700;
  width: 49%;
  max-width: 200px;
  padding: 1rem 0;
  color: #fdeeed;
  border-radius: 10px
}

@media print, screen and (min-width:1025px) {
  .p-contact__btn-wrap input {
    font-size: 240%;
    padding: 1.5rem 0
  }
}

.p-contact__btn-back {
  margin-right: 1rem;
  background-color: #825f28
}

.p-contact__btn-submit {
  margin-left: 1rem;
  background-color: #ff665e
}

.ui-datepicker {
  z-index: 20!important;
  width: 220px!important
}

.ui-datepicker {
  font-size: 1.3rem
}

.ui-datepicker a {
  font-size: 1.6rem
}

@media print, screen and (min-width:1025px) {
  .ui-datepicker a {
    font-size: 1.6rem
  }
}

form.wpcf7-form {
  margin-top: -50px;
  padding-top: 50px
}

div.wpcf7-response-output.wpcf7-custom-wpcf7c-confirmed {
  display: none!important
}

div.wpcf7-mail-sent-ok {
  display: none
}

div.wpcf7-aborted, div.wpcf7-mail-sent-ng {
  border: none!important
}

div.wpcf7-spam-blocked {
  border: none!important
}

div.wpcf7-acceptance-missing {
  border: none!important
}

div.wpcf7-validation-errors {
  font-size: 1.6rem!important;
  line-height: 1.7em;
  margin: 2em .5em 1em;
  padding: 0;
  text-align: center;
  color: red;
  border: none!important
}

div.wpcf7 .ajax-loader {
  position: absolute;
  top: 2rem;
  margin: 0!important
}

span.wpcf7-not-valid-tip {
  font-size: 1.6rem!important;
  line-height: 1.7em;
  margin-top: .5em
}

.wpcf7-form-control-wrap+.p-contact__file-span {
  margin: 1rem 0 .5rem
}

.p-contact__agree input:checked+.wpcf7-list-item-label::after {
  opacity: 1
}

.wpcf7-list-item-label {
  font-weight: 500;
  position: relative;
  display: flex;
  cursor: pointer;
  align-items: center;
  flex-wrap: wrap
}

.wpcf7-list-item-label::before {
  display: block;
  box-sizing: border-box;
  width: 16px;
  height: 16px;
  margin-right: 10px;
  content: '';
  border: 1px solid #825f28;
  background-color: #fff
}

.wpcf7-list-item-label::after {
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  width: 1.2rem;
  height: 1.2rem;
  content: '';
  transform: translate(20%, -50%);
  opacity: 0;
  background: url(../img/icon-check.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.2rem
}

.wpcf7c-conf-hidden {
  font-size: 140%
}

@media print, screen and (min-width:1025px) {
  .wpcf7-form-control-wrap.file-47, .wpcf7-form-control-wrap.file-683 {
    display: grid;
    width: 70%
  }
}

@media print, screen and (min-width:1025px) {
  .wpcf7-form-control-wrap.file-47 .wpcf7-not-valid-tip, .wpcf7-form-control-wrap.file-683 .wpcf7-not-valid-tip {
    margin-left: 1rem
  }
}

.wpcf7c-conf {
  padding-right: 0!important;
  padding-left: 0!important;
  pointer-events: none;
  opacity: 1;
  color: #4d4d4d;
  border: none!important;
  background-color: #fff!important
}

.wpcf7c-conf::-webkit-input-placeholder {
  color: transparent
}

.wpcf7c-conf::-moz-placeholder {
  color: transparent
}

.wpcf7c-conf:-ms-input-placeholder {
  color: transparent
}

.wpcf7c-conf:-moz-placeholder {
  color: transparent
}

.wpcf7c-elm-step2:not(.wpcf7c-force-hide)~.p-contact__wrap .p-contact__select-store::after {
  display: none
}

.wpcf7c-elm-step2:not(.wpcf7c-force-hide)~.p-contact__wrap .p-contact__select-content::after {
  display: none
}

.wpcf7c-elm-step2:not(.wpcf7c-force-hide)~.p-contact__wrap .p-contact__list .p-contact__select {
  width: 56px
}

@media print, screen and (min-width:1025px) {
  .wpcf7c-elm-step2:not(.wpcf7c-force-hide)~.p-contact__wrap .p-contact__list .p-contact__select {
    width: 76px
  }
}

@media print, screen and (min-width:1025px) {
  .wpcf7c-elm-step2:not(.wpcf7c-force-hide)~.p-contact__wrap .wpcf7-form-control-wrap.your-age {
    width: 9%
  }
}

@media screen and (max-width:1025px) {
  .wpcf7c-elm-step2:not(.wpcf7c-force-hide)~.p-contact__wrap .p-contact__input--age {
    width: 10%
  }
}

@media print, screen and (min-width:1025px) {
  .wpcf7c-elm-step2:not(.wpcf7c-force-hide)~.p-contact__wrap .p-contact__input--age {
    min-width: 30px
  }
}

.wpcf7c-elm-step2:not(.wpcf7c-force-hide)~.p-contact__wrap .p-contact__textarea {
  max-height: 150px;
  padding: 1rem;
  padding-right: 1rem!important;
  padding-left: 1rem!important;
  cursor: auto;
  pointer-events: visible;
  border: 1px solid #c0af93!important
}

.wpcf7c-elm-step2:not(.wpcf7c-force-hide)~.p-contact__wrap input[type=number] {
  -moz-appearance: textfield
}

@media print, screen and (min-width:1025px) {
  .wpcf7c-elm-step2:not(.wpcf7c-force-hide)~.p-contact__file-wrap .p-contact__file-span {
    width: 18%
  }
}

.wpcf7c-elm-step2:not(.wpcf7c-force-hide)~.p-contact__btn-wrap .ajax-loader {
  top: 8rem;
  margin: 0!important
}

@media print, screen and (min-width:1025px) {
  .wpcf7c-elm-step2:not(.wpcf7c-force-hide)~.p-contact__btn-wrap .ajax-loader {
    top: 10rem
  }
}

.wpcf7-form-control-wrap.days01, .wpcf7-form-control-wrap.days02, .wpcf7-form-control-wrap.days03 {
  position: relative
}

@media print, screen and (min-width:1025px) {
  .wpcf7-form-control-wrap.days01 .wpcf7-not-valid-tip, .wpcf7-form-control-wrap.days02 .wpcf7-not-valid-tip, .wpcf7-form-control-wrap.days03 .wpcf7-not-valid-tip {
    position: absolute;
    top: -20px;
    left: -220px
  }
}

.wpcf7c-elm-step2 {
  font-size: 160%;
  line-height: 1.5;
  margin-bottom: 2rem;
  text-align: center
}

@media print, screen and (min-width:1025px) {
  .wpcf7c-elm-step2 .u-br {
    display: none
  }
}

.wpcf7-form-control.edge-autoSuggestFieldFilled {
  background: #fff!important
}

.wpcf7-form-control.edge-autofilled {
  background: #fff!important
}

@supports (-ms-ime-align:auto) {
  .wpcf7c-elm-step2:not(.wpcf7c-force-hide)~.p-contact__wrap .p-contact__list .p-contact__select {
    width: 86px
  }
}

_:-ms-lang(x)::-ms-backdrop, .wpcf7c-elm-step2:not(.wpcf7c-force-hide)~.p-contact__wrap .p-contact__list .p-contact__select {
  width: 96px
}

.u-bold {
  font-weight: 700
}

.u-underline {
  text-decoration: underline
}

.u-list-reset {
  margin: 0;
  padding: 0;
  list-style: none
}

.u-none {
  display: none
}

@media screen and (max-width:1025px) {
  .u-none--mobile {
    display: none
  }
}

@media print, screen and (min-width:1025px) {
  .u-none--pc {
    display: none
  }
}
/*****************************************************
　top_bnr
*****************************************************/
.top-bnr{
	text-align: center;
	margin: 40px 0px;
}
.top-bnr img{
	margin:0px auto;
}
/*****************************************************
　整形外科疾患・スポーツ障害に対するアプローチ
　内科的疾患に対するアプローチ
*****************************************************/
.approach_content{
	max-width: 960px;
	width: 100%;
	margin: 0 auto 60px;
}
.approach_content h2{
	margin-bottom:45px;
	text-align: center;
}
.approach_content h2 img{
	margin:0 auto;
}
.approach_content .content_left{
	float:left;
	max-width:610px;
	width: 100%;
}
.approach_content:nth-child(2) .content_left{
	float:left;
	max-width:720px;
	width: 100%;
}


.approach_content .content_left p{
	line-height:30px;
}
.approach_content .content_left p span{
	color:#d5705b;
	font-weight:bold;
}
.approach_content .content_right{
	float:right;
}
.approach_content > p span{
	font-size:14px;
	color:#666;
	float:left;
	width:100%;
	margin-top:25px;
}
.approach_content .naika_btn{
	max-width:610px;
	width: 100%;
	float:left;
	margin-top:35px;
}
.approach_content .naika_btn a{
	float:right;
	margin-top:4px;
	margin-bottom:4px;
}
.approach_content .naika_btn p{
	line-height: 22px;
	color: #d88000;
}
.approach_content .naika_btn .kome:after{
	content:'▶︎';
}
.approach_content .naika_btn p span{
	font-size:14px;
	color:#666;
	float:left;
	padding-left:16px;
}

.bg2_top{
	width: 100%;
}
.approach_content-02 .content_left{
	float: right;
}
.approach_content-02 .content_right{
	float: left;
}
/*****************************************************
　media
*****************************************************/
#media{
	background:url('http://makidume.nexus-hari.com/wp-content/uploads/2021/11/bg_orange2.jpg') repeat 0 0;
	padding: 25px 0px 30px;
}
#media-ttl{
	margin:0px;
	position:relative;
	top: 0px;
	left: 0;
	z-index:0;
}
#media .t-contents{
	max-width: auto;
	width: 1120px;
	margin:0px auto;
}
#media .t-contents .t-contentsinner{
	width: 835px;
	max-width: auto;
	margin: 0px auto 0px;
}

@media screen and (max-width: 960px){
	#media{
		margin-bottom: 10%;
		padding: 7% 0px 7%;
	}
	#media .t-contents{
		width: 100%;
	}
	#media .t-contents .t-contentsinner {
		width: 100%;
		max-width: auto;
	}
	.f_box-media li{
		
	}
}
.f_box-media {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.f_box-media li {
    width: 33%;
    margin-bottom: 25px;
    text-align: center;
	list-style: none;
}
.approach_content h2 {
    margin-bottom: 45px;
    text-align: center;
	color: rgb(128, 97, 52);
	font-size: 3.1rem;
	font-weight:bold;
}
/* ------------------------------------------------
 media
 ------------------------------------------------ */

#chiryomedia{
	padding-top: 68px;
	text-align: center;
	padding-bottom: 70px;
}
#chiryomedia:not(.mediacommon){
	background-color: rgba(255, 255, 255, 0.5);
}

#chiryomedia.mediacommon{
	padding-top: 30px;
background: url(http://makidume.nexus-hari.com/wp-content/uploads/2021/11/bg1.jpg);	
}
#chiryomedia >div{
	max-width: 910px;
	width: 90%;
	margin: 0 auto;
}

 #chiryomedia h2{
 	margin-bottom: 5px;
 }

 .chiryomedia_list{
 	display: -webkit-flex;
 	display: -moz-flex;
 	display: -ms-flex;
 	display: -o-flex;
 	display: flex;
 	-webkit-flex-wrap: wrap;
 	-ms-flex-wrap: wrap;
 	flex-wrap: wrap;
 }

 .chiryomedia_list article{
 	margin-top: 50px;
 	width: 100%;
 }

 .chiryomedia_list article h3{
 	margin-bottom: 15px;
 }

 .chiryomedia_list article div{
 	margin-bottom: 10px;
 }

 .chiryomedia_list article p{
 	line-height: 1.944em;
 	-webkit-font-feature-settings : "palt";
 	-moz-font-feature-settings : "palt";
 	font-feature-settings : "palt";
font-size: 14px;	 
 }

 .chiryomedia_list article span{
 	background: linear-gradient(transparent 75%, #ffff80 75%);
 }

 /* color */
 .chiryomedia_color{
 	color: #c7625a;
 }

 /* 他多数 */
 #media_other{
 	margin-top: 45px;
 }

 @media screen and (max-width: 960px){
 	#chiryomedia >div{
 		max-width: 560px;
 	}
 	#chiryomedia{
 		padding-bottom: 50px;
 	}
	 .top-bnr{
		 padding:0px 10px;
	 }	 
 }

 @media screen and ( min-width: 961px ){
 	.chiryomedia_list article{
 		width: 46%;
 		margin-top: 60px
 	}

 	.chiryomedia_list article:nth-of-type(2n){
 		margin-left: 8%;
 	}

 	.chiryomedia_list article h3{
 		margin-bottom: 30px;
 	}
 	.chiryomedia_list article div{
 		margin-bottom: 24px;
 	}

 	.chiryomedia_list article p{
 		font-size: 18px;
 	}
 }
 section.form_contact{
    max-width: 900px;
    margin: 70px auto;
    width: 100%;
}
section.form_contact p.txt{
  color: #825f28;
  margin-bottom: 30px;
}
section.form_contact p.txt span{
  background-color: #ff665e;
  border-radius: 5.5px;
  display: inline-block;
  color: #fff;
  padding: 5px 7px;
  font-weight: bold;
  margin-right: 7px;
}
form{
  background: #fff;
  padding: 30px;
  background-image: url("assets/img/top/contact_img_bak.jpg");
  background-position: right bottom 560px;
  background-repeat: no-repeat;
  background-size: 577px;
  border: solid 10px #d7d7d7;
  border-radius: 10px;
  margin-top: 30px;
}
.form_contact{
	width: 960px;
	margin: auto;
	margin-bottom: 70px;
}
.p-top-contact_form_dl {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 20px;
}
.p-top-contact_form_dl dt {
    width: 35%;
    box-sizing: border-box;
    font-size: 18px;
    margin-right: 3%;
    font-size: 15px;
}
.p-top-contact_form_dl dd {
    width: 62%;
    box-sizing: border-box;
    font-size: 15px;
    margin: 0px;
}
.p-top-contact_form_dl dd, .p-top-contact_form_dl dt {
    color: #825f28;
    font-weight: 700;
    line-height: 1;
}
.p-top-contact_form_item-state {
    font-size: 15px;
    border-radius: 5.5px;
    display: inline-block;
    color: #fff;
    padding: 5px 10px;
    text-align: center;
    margin-right: 10px;
    vertical-align: middle;
}
.p-top-contact_form_hissu {
    background-color: #ff665e;
}
.p-top-contact_form_none{
    background-color: #825f28;
}

[type="text"], [type="tel"], [type="email"], [type="number"], select, textarea {
    width: 100%;
    border: 1px solid #c0af93;
    border-radius: 7.5px;
    color: #825f28;
    padding: 10px;
    font-size: 15px;
    box-sizing: border-box;
    min-height: auto;
    background: #fff;
}
input.name{
  margin-left: 5px;
  width: auto;
  max-width: 150px;
}
input.age {
    max-width: 110px;
}
input.tel {
    width: 110px;
    margin: 0px 7px;
    margin-left: 7px;
}
input.tel:first-child {
    margin-left: 0px;
}
input.tel:last-child{
  margin-right: 0px;
}
dd.form-in2 span {
    font-size: 13px;
    font-weight: normal;
    color: #e38f51;
    margin-top: 5px;
    display: block;
}
dd.form-in2 select{
  width: auto;
  min-width: 155px;
  margin-right: 5px;
}
dd.form-in2 select:first-child{
  margin-bottom: 13px;
}
dd.form-in3_radio label{
  display: block;
  margin-bottom: 3px;
}
dd.form-in3_radio label:last-child{
  margin-bottom: 0px;
}
dd.form-in4 input, dd.form-in4 select{
  width: auto;
  width: 155px;
  min-width: 155px;
  margin-right: 5px;
}
button, input, select, textarea{
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
form input[type="checkbox"] {
  -webkit-appearance: checkbox;
  -moz-appearance: checkbox;
  appearance: checkbox;
}
form input[type="radio"]{
  -webkit-appearance: radio;
  -moz-appearance: radio;
  appearance: radio;
}
.submit_btn input {
    background: #ff665e;
    border-radius: 8px;
    width: 90%;
    margin: 0 auto;
    max-width: 345px;
    display: block;
    color: #fff;
    font-size: 28px;
    letter-spacing: 1px;
    padding: 8px 0;
    border:0px;
}
div.p-top-contact_form_privacy dt, div.p-top-contact_form_privacy dd{
  font-size: 11px;
  color: #5b3b27;
}
div.p-top-contact_form_privacy dl{
  margin-bottom: 14px;
}
.privacy_policy{
  margin-top: 3%;
}
.privacy_policy h2 {
    background: #ff7800;
    color: #fff;
    font-weight: bold;
    padding: 15px;
    margin-bottom: 15px;
}

/* ä¸‹å±¤ãƒšãƒ¼ã‚¸ã€€ã‚³ãƒ­ãƒŠ */
.inner_02{
  max-width: 1000px;
  margin: 0px auto;
  background: #fff;
  padding: 2%;
  box-sizing: border-box;
  font-family: "ãƒ’ãƒ©ã‚®ãƒŽè§’ã‚´ Pro","Hiragino Kaku Gothic Pro","ãƒ¡ã‚¤ãƒªã‚ª",Meiryo,"MS Pã‚´ã‚·ãƒƒã‚¯","MS PGothic",sans-serif;
}
.inner_02 h2{
  text-align: center;
  border: solid 2px #d71d1d;
  padding: 10px;
  font-weight: bold;
  margin-bottom: 13px;
}
.inner_02 p{
  text-align: center;
}
.inner_02 p.img{
  text-align: center;
}
.white_box2 p{
	font-size:16px;
}
 @media screen and (max-width: 960px){
/*
  フォーム
================================*/
section.form_contact {
    width: 100%;
    margin: 7% auto;
    padding: 0px 3%;
    box-sizing: border-box;
}
form {
    background-size: 87%;
    padding: 7%;
    background-position: right bottom 35%;
}
.p-top-contact_form_dl dt{
  width: 100%;
  font-size: 15px;
}
.p-top-contact_form_dl dd{
  width: 100%;
  margin-top: 3%;
  line-height: 1.4;
}
.p-top-contact_form_item-state{
  font-size: 15px;
}
dd.form-in2 select{
  min-width: 44%;
}
dd.form-in4 input, dd.form-in4 select{
  width: 40%;
  min-width: 40%;
}
input.name {
    max-width: 40%;
}
input.tel {
    width: 27%;
}
dd.form-in2 select {
    min-width: 37%;
}
.submit_btn input{
  font-size: 18px;
}
.privacy_policy{
  margin-top: 10%;
}
.privacy_policy h2.h2{
  font-size: 13px;
}
.privacy_policy .small{
  font-size: 10px;
}
}
