@charset "UTF-8";
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

table {
  border-collapse: collapse;
  border-spacing: 0;
}
html {
  font-size: 62.5%;
}

body {
  color: #282828;
  font-size: 1.4rem;
  line-height: 1.4;
  font-family: "Noto Sans JP", 游ゴシック, YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif;
  letter-spacing: 0.05em;
}

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

a:link,
a:visited,
a:hover,
a:active {
  text-decoration: none;
}

*:focus {
  outline: none;
}

p,
ul li,
ol li {
  text-align: justify;
  text-justify: inter-ideograph;
}

img,
picture {
  display: block;
}

b {
  font-weight: bold;
}

/*
* wrapper
*/

.l-main {
  width: min(100%, 900px);
  margin-right: auto;
  margin-left: auto;
}

.l-side {
  margin: 6rem 15px;
}

.l-base {
  margin-right: 15px;
  margin-left: 15px;
}

.l-inner {
  margin-right: 15px;
  margin-left: 15px;
}

/*
* header
*/

.l-hdr-btn {
  z-index: 10;
  position: fixed;
  top: 15px;
  right: 15px;
}

.l-gnav {
  display: none;
  z-index: 100;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.l-gnav.open {
  display: block;
}
.l-gnav__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3);
}

/*
* article
*/
.l-3rsn-grid {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: (auto)[4];
      grid-template-rows: repeat(4, auto);
  -ms-grid-columns: 1fr;
      grid-template-columns: 1fr;
  grid-template-areas: "ttl" "heading" "img" "txt";
  -ms-flex-align: start;
      align-items: flex-start;
}
.l-3rsn-grid__ttl {
  grid-area: ttl;
  justify-self: flex-start;
}
.l-3rsn-grid__h {
  grid-area: heading;
}
.l-3rsn-grid__txt {
  grid-area: txt;
}
.l-3rsn-grid__img {
  grid-area: img;
}

.l-flow-grid {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: (auto)[4];
      grid-template-rows: repeat(4, auto);
  -ms-grid-columns: 1fr;
      grid-template-columns: 1fr;
  grid-template-areas: "num" "heading" "img" "txt";
}
.l-flow-grid__num {
  grid-area: num;
}
.l-flow-grid__h {
  grid-area: heading;
}
.l-flow-grid__txt {
  grid-area: txt;
}
.l-flow-grid__img {
  grid-area: img;
}

/*
* footer
*/
.l-back2top {
  position: fixed;
  right: 15px;
  bottom: 7rem;
}

/*
 * ボタン
 */
.c-btn {
  display: inline-block;
  appearance: none;
  margin: 0;
  padding: 0;
  border: none;
  background-color: #EEE;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
}

/*
 * 見出し
 */
.c-h1 {
  position: relative;
  margin-bottom: 5rem;
  padding-bottom: 1.5rem;
  text-align: center;
}
.c-h1:after {
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 33rem;
  height: 1.5px;
  transform: translateX(-50%);
  background: #282828;
  content: "";
}
.c-h1__en {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  font-size: 1.2rem;
}
.c-h1__en:before, .c-h1__en:after {
  width: 10rem;
  height: 1.5px;
  background: #282828;
  content: "";
}
.c-h1__en:before {
  margin-right: 2.2rem;
}
.c-h1__en:after {
  margin-left: 2.2rem;
}
.c-h1__main {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  margin: 1.5rem 0;
  font-weight: bold;
  font-size: 2.3rem;
}
.c-h1__main.-large {
  height: 3.7rem;
}
.c-h1__sub {
  display: block;
  padding-bottom: 1rem;
  font-weight: bold;
  text-align: center;
}

.c-h2 {
  position: relative;
  margin-bottom: 4rem;
  padding: 1.8rem 0;
  font-weight: bold;
  font-size: 2.4rem;
  text-align: center;
}
.c-h2:before, .c-h2:after {
  display: block;
  position: absolute;
  position: absolute;
  left: 50%;
  width: min(100% - 30px, 40rem);
  height: 1.5px;
  transform: translateX(-50%);
  background: #282828;
  content: "";
}
.c-h2:before {
  top: 0;
}
.c-h2:after {
  bottom: 0;
}

/*
 * リスト
 */
.c-checklist__item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
      align-items: flex-start;
  font-weight: 500;
  font-size: 1.6rem;
}
.c-checklist__item:before {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 1.8rem;
  height: 1.8rem;
  margin-top: 0.5rem;
  margin-right: 1.5rem;
  background: url("../images/icon_check.svg") no-repeat center/contain;
  content: "";
}
.c-checklist__item small {
  font-size: 1.4rem;
}
.c-checklist__item + .c-checklist__item {
  margin-top: 3rem;
}

.c-link {
  color: #007cff;
  text-decoration: underline !important;
  transition: opacity 0.3s;
}
.c-link:hover {
  opacity: 0.7;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}

/*
 * header
 */
.p-hdr {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between;
  padding: 1rem 15px;
}
.p-hdr__middle {
  width: 100%;
}
.p-hdr__box + .p-hdr__box {
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px dashed #cccccc;
}
.p-hdr__h1 {
  margin-bottom: 1rem;
  color: #EB5514;
  font-weight: bold;
  font-size: 2rem;
}
.p-hdr__h1 br {
  display: none;
}
.p-hdr__txt {
  color: #515254;
  font-weight: bold;
  font-size: 1.1rem;
}
.p-hdr__txt + .p-hdr__txt {
  margin-top: 1rem;
}
.p-hdr__txt .txt-br {
  display: none;
}
.p-hdr__tel {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  margin: 1.5rem 0 1rem;
  color: inherit;
  font-weight: bold;
  font-size: 3rem;
  line-height: 1;
  transition: color 0.3s;
  transition: opacity 0.3s;
}
.p-hdr__tel:hover {
  opacity: 0.7;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}
.p-hdr__tel:before {
  display: inline-block;
  width: 3rem;
  height: 3rem;
  margin-right: 1rem;
  background: url("../images/icon_tel.svg") no-repeat center/contain;
  content: "";
}
.p-hdr__access {
  padding: 0.5rem 0;
  border-radius: 5px;
  background: #fd832d;
  color: #fff;
  font-weight: bold;
  font-size: 1.2rem;
  letter-spacing: 0.2em;
  text-align: center;
  transition: opacity 0.3s;
}
.p-hdr__access:hover {
  opacity: 0.7;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}
.p-hdr__tel-box {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}
.p-hdr__btn {
  width: 5rem;
  height: 5rem;
  border-radius: 50%;
  background: #fd832d;
  color: #fff;
  font-weight: bold;
  font-size: 1rem;
  letter-spacing: 0.1em;
  transition: opacity 0.3s;
}
.p-hdr__btn:hover {
  opacity: 0.7;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}
.p-hdr__btn span {
  display: block;
  width: 2rem;
  height: 2rem;
  margin: 0 auto;
  background: url("../images/icon_menu.svg") no-repeat center/contain;
}
.p-hdr__line {
  display: none;
  transition: opacity 0.3s;
}
.p-hdr__line:hover {
  opacity: 0.7;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}
.p-hdr__line img {
  width: 2.5rem;
  height: 2.5rem;
  margin: 0 auto 0.5rem;
}

.p-gnav {
  position: absolute;
  top: 15px;
  right: 0;
  right: -30rem;
  bottom: 15px;
  padding: 3rem 8rem 3rem 3rem;
  border-radius: 1.5rem 0 0 1.5rem;
  background: #FCF8F3;
  box-shadow: 0px 6px 15px 0px rgba(0, 0, 0, 0.2);
  transition: right 0.3s;
}
.p-gnav.open {
  right: 0;
}
.p-gnav__list {
  font-weight: 500;
  font-size: 1.6rem;
}
.p-gnav__list li + li {
  margin-top: 3rem;
}
.p-gnav__list a {
  color: inherit;
  transition: opacity 0.3s;
}
.p-gnav__list a:hover {
  opacity: 0.7;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}
.p-gnav__close {
  position: absolute;
  top: 1.5rem;
  right: 1.5rem;
  width: 3rem;
  height: 3rem;
  background: transparent;
  transition: opacity 0.3s;
}
.p-gnav__close:hover {
  opacity: 0.7;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}
.p-gnav__close:before, .p-gnav__close:after {
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 2px;
  background: #282828;
  content: "";
}
.p-gnav__close:before {
  margin-top: -1px;
  transform: rotate(-45deg);
}
.p-gnav__close:after {
  margin-top: -1px;
  transform: rotate(45deg);
}

/*
 * article
 */
.p-tv img {
  width: 100%;
}

.p-intro {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  background: #fffdf4;
}
.p-intro__left {
  width: 50%;
}
.p-intro__ttl {
  width: 80%;
  margin: 1rem auto 0;
  padding: 0.5rem 0;
  background: linear-gradient(rgba(202, 151, 9, 0.72), #fece49);
  color: #fff;
  font-weight: bold;
  font-size: 1.4rem;
  line-height: 1;
  text-align: center;
  text-shadow: 0px 2px 0px rgba(0, 0, 0, 0.2);
}
.p-intro__price {
  width: 80%;
  margin: 1rem auto;
}
.p-intro__price img {
  width: 100%;
}
.p-intro__thumb {
  position: relative;
  width: 50%;
}
.p-intro__thumb picture {
  width: 100%;
  height: 100%;
}
.p-intro__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-intro__cap {
  position: absolute;
  bottom: 1rem;
  left: 50%;
  padding: 0.5rem 1rem;
  transform: translateX(-50%);
  background: #EEEEEE;
  color: #fd832d;
  font-weight: bold;
  font-size: 1.4rem;
  text-align: center;
  white-space: nowrap;
}

.p-worries {
  padding: 3.5rem 0 5rem;
  text-align: center;
}
.p-worries__list {
  display: inline-block;
  padding: 0 2rem;
}

.p-sim {
  position: relative;
  padding-top: 5rem;
  padding-bottom: 6rem;
  background-color: #f8f5f0;
}
.p-sim__box {
  padding: 0.8rem 2rem 2rem;
  border-radius: 10px;
  background-color: #fff;
}
.p-sim__table {
  font-size: 1.6rem;
  line-height: 1.66;
}
.p-sim__table td {
  padding: 1rem;
}
.p-sim__table b {
  font-weight: bold;
}
.p-sim__2col {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}
.p-sim__2col td:first-of-type {
  padding-bottom: 0;
  font-weight: bold;
}
.p-sim__2col td:last-of-type input {
  appearance: none;
  width: 100%;
  padding: 1rem;
  border: 1px solid #dedbd4;
  font-size: inherit;
}
.p-sim__2col td small {
  display: block;
  font-size: 1.6rem;
}
.p-sim__btn {
  display: block;
  width: 100%;
  margin: 0 auto;
  padding: 10px;
  border: none;
  border-radius: 30px;
  background: #fd832d;
  color: #fff;
  font-weight: bold;
  font-size: 1.8rem;
  white-space: nowrap;
  cursor: pointer;
}
.p-sim__btn-col {
  position: relative;
  padding-bottom: 7rem !important;
}
.p-sim__btn-col:before {
  display: block;
  position: absolute;
  bottom: 15%;
  left: 50%;
  transform: translateX(-50%);
  border-top: 16px solid #ccddf2;
  border-right: 23px solid transparent;
  border-left: 23px solid transparent;
  content: "";
}
.p-sim__price {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: end;
      align-items: flex-end;
  -ms-flex-pack: center;
      justify-content: center;
  text-align: center;
}
.p-sim__result {
  width: calc(100% - 1rem);
  margin-right: 1rem;
  padding: 1rem;
  border: none;
  border-bottom: 5px solid #fd832d;
  font-weight: 500;
  font-size: 2.4rem;
  text-align: center;
  pointer-events: none;
}
.p-sim__result:-ms-input-placeholder {
  color: #dedbd4;
}
.p-sim__result::placeholder {
  color: #dedbd4;
}
.p-sim__note {
  display: -ms-flexbox;
  display: flex;
  margin-top: 30px;
  font-size: 1.4rem;
  line-height: 1.44;
}

.p-3rsn {
  padding: 6rem 0 9rem;
  background: #FFEEE1;
}
.p-3rsn__item {
  padding: 2rem;
  background: #EEEEEE;
}
.p-3rsn__item + .p-3rsn__item {
  margin-top: 3rem;
}
.p-3rsn__ttl {
  display: inline-block;
  position: relative;
  margin-bottom: 1.5rem;
  margin-left: -2rem;
  padding: 0.5rem 2rem;
  background: #EB5514;
  color: #fff;
  font-size: 1.2rem;
}
.p-3rsn__ttl span {
  -webkit-text-stroke: 1px #FFF;
  text-stroke: 1px #FFF;
  position: absolute;
  top: 50%;
  right: -6rem;
  transform: translateY(-50%);
  color: #EB5514;
  font-style: italic;
  font-weight: 700;
  font-size: 5.6rem;
  line-height: 1;
  font-family: "Poppins", sans-serif;
}
.p-3rsn__ttl span.-first {
  right: -4.5rem;
}
.p-3rsn__h1 {
  margin-bottom: 1.5rem;
  font-weight: bold;
  font-size: 1.7rem;
}
.p-3rsn__h1 em {
  display: inline;
  background: linear-gradient(transparent 50%, #FAF209 0%);
}
.p-3rsn__img {
  width: min(100%, 35rem);
  margin-bottom: 2rem;
  box-shadow: -5px 5px 0 #EB5514;
}
.p-3rsn__txt {
  color: #333333;
}

.p-consult {
  padding: 8rem 0;
  background: url("../images/consult_bc_pc.jpg") no-repeat center top/cover;
  text-align: center;
}
.p-consult__list {
  display: inline-block;
  padding: 3rem 2rem;
  border: 5px solid #fd832d;
  border-radius: 1rem;
  background: #fff;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

.p-laws {
  padding: 8rem 0;
  background-color: #FCF8F3;
}
.p-laws__box {
  margin-bottom: 40px;
}
.p-laws__txt1 {
  margin-bottom: 40px;
  font-weight: bold;
  font-size: 1.6rem;
  line-height: 1.5;
}
.p-laws__txt1 span {
  color: #EB5514;
}
.p-laws__thumb {
  display: block;
  width: 200px;
  margin: 30px auto;
  border-radius: 10px;
}
.p-laws__h1 {
  margin-top: 5rem;
  margin-bottom: 1rem;
  color: #fd832d;
  font-weight: bold;
  font-size: 2rem;
  text-align: center;
}
.p-laws__h1 small {
  display: inline-block;
  margin: 0 0.5rem;
  color: #282828;
  font-size: 60%;
}
.p-laws__item {
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -ms-flex-pack: justify;
      justify-content: space-between;
  padding-left: 40px;
  font-size: 1.6rem;
}
.p-laws__item:before {
  display: block;
  position: absolute;
  top: 5px;
  left: 0;
  width: 19px;
  height: 19px;
  border-radius: 50%;
  background-color: rgba(253, 131, 45, 0.4);
  content: "";
}
.p-laws__item + .p-laws__item {
  margin-top: 27px;
}
.p-laws__list2 {
  padding: 14px 20px 20px;
  border-radius: 10px;
  background-color: #fff;
  font-weight: 500;
}
.p-laws__item2 {
  padding: 12px 0 10px;
  font-size: 1.8rem;
  line-height: 1.5;
}
.p-laws__item2 + .p-laws__item2 {
  border-top: 1px solid #dedbd4;
}
.p-laws__h2 {
  font-weight: normal;
  font-size: 1.4rem;
}

.p-5rsn {
  padding: 6rem 0 9rem;
}
.p-5rsn__txt-box {
  -ms-flex: 1;
      flex: 1;
}
.p-5rsn__num {
  margin-bottom: 0.8rem;
  font-size: 1.2rem;
}
.p-5rsn__h1 {
  margin-bottom: 1.5rem;
  color: #fd832d;
  font-weight: bold;
  font-size: 2.2rem;
}
.p-5rsn__txt {
  margin-top: 1.5rem;
  font-size: 1.6rem;
  line-height: 1.7;
}
.p-5rsn__img {
  width: min(100%, 34.5rem);
  margin: 0 auto;
}
.p-5rsn__item + .p-5rsn__item {
  margin-top: 5rem;
}

.p-flow {
  padding: 8rem 0;
  background: #FCF8F3;
}
.p-flow__item {
  position: relative;
  margin-bottom: 5rem;
  padding-bottom: 1.5rem;
}
.p-flow__item:after {
  display: block;
  position: absolute;
  bottom: -4rem;
  left: 50%;
  width: 4rem;
  height: 4rem;
  transform: translateX(-50%);
  background: url("../images/icon_arrow.svg") no-repeat center/contain;
  content: "";
}
.p-flow__item:first-of-type {
  margin-top: 6rem;
}
.p-flow__item:last-of-type {
  margin-bottom: 0;
}
.p-flow__item:last-of-type:after {
  display: none;
}
.p-flow__num {
  margin-bottom: 0.8rem;
  font-size: 1.2rem;
}
.p-flow__h {
  margin-bottom: 1.5rem;
  font-weight: bold;
  font-size: 2.2rem;
}
.p-flow__txt {
  line-height: 2;
}
.p-flow__img {
  width: min(100%, 43rem);
  margin: 0 auto 1.5rem;
}

.p-ex {
  padding: 10rem 0;
}
.p-ex__item + .p-ex__item {
  margin-top: 3.5rem;
}
.p-ex__item:last-of-type {
  margin-bottom: 4rem;
}
.p-ex__h {
  margin-bottom: 5rem;
  padding: 1.5rem 0;
  border-radius: 1rem;
  background: #f8f5f0;
  color: #fd832d;
  font-weight: bold;
  font-size: 1.8rem;
  text-align: center;
}
.p-ex__img {
  width: 16rem;
  margin: 0 auto 1rem;
}
.p-ex__txt {
  font-size: 1.4rem;
  line-height: 1.7;
}
.p-ex__txt + .p-ex__txt {
  margin-top: 2rem;
}
.p-ex__note {
  color: #fd832d;
  font-weight: bold;
  font-size: 1.6rem;
  text-align: center;
}
.p-ex__note + .p-ex__note {
  margin-top: 2.8rem;
}
.p-ex__list {
  margin: 3rem 0;
  font-size: 1.6rem;
}

.p-qanda__a, .p-qanda__q {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}
.p-qanda__a:before, .p-qanda__q:before {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  width: 2rem;
  height: 2rem;
  margin-right: 1.3rem;
  border-radius: 50%;
  color: #FFF;
  font-weight: 700;
  font-family: "Poppins", sans-serif;
}

.p-qanda {
  padding: 8rem 0;
  background: #FCF8F3;
}
.p-qanda__item + .p-qanda__item {
  margin-top: 3rem;
}
.p-qanda__q {
  margin-bottom: 1.5rem;
  padding: 1.5rem 1rem;
  border-radius: 8px;
  background: #fff;
  box-shadow: 3px 3px 3px #e6e3df;
  font-weight: bold;
  font-size: 1.4rem;
}
.p-qanda__q:before {
  background: #fd832d;
  content: "Q";
}
.p-qanda__a {
  margin-right: 2rem;
  margin-left: 2rem;
  font-weight: 500;
  font-size: 1.2rem;
}
.p-qanda__a:before {
  background: #ffc093;
  content: "A";
  font-size: 1.4rem;
}

/*
 * aside
 */
.p-aside-menu {
  padding: 3rem;
  border: 4px solid rgba(253, 131, 45, 0.2);
  border-radius: 1rem;
  background: #fffdf4;
}
.p-aside-menu + .p-aside-menu {
  margin-top: 5rem;
}
.p-aside-menu__list {
  font-weight: bold;
  font-size: 2rem;
}
.p-aside-menu__list li {
  color: #fd832d;
}
.p-aside-menu__list li:before {
  display: inline-block;
  width: 1.3rem;
  height: 2px;
  margin-right: 1.5rem;
  background: #fd832d;
  content: "";
  vertical-align: middle;
}
.p-aside-menu__list li + li {
  margin-top: 2rem;
  padding-top: 2rem;
  border-top: 1px dashed #cccccc;
}
.p-aside-menu__list li a {
  color: inherit;
  transition: opacity 0.3s;
}
.p-aside-menu__list li a:hover {
  opacity: 0.7;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}
.p-aside-menu__h1 {
  padding-bottom: 1rem;
  border-bottom: 1px dashed #cccccc;
  color: #fd832d;
  font-weight: bold;
  font-size: 1.6rem;
}
.p-aside-menu__h2 {
  margin: 3rem 0 1rem;
  font-weight: bold;
  font-size: 1.6rem;
}
.p-aside-menu__h2:before {
  display: inline-block;
  width: 1.4rem;
  height: 1.4rem;
  margin-right: 0.7rem;
  margin-bottom: 0.5rem;
  border-radius: 50%;
  background: #fd832d;
  content: "";
  vertical-align: middle;
}
.p-aside-menu__txt {
  margin-left: 2rem;
  font-size: 1.6rem;
}
.p-aside-menu__txt + .p-aside-menu__txt {
  margin-top: 1rem;
}
.p-aside-menu__map {
  position: relative;
  aspect-ratio: 16/9;
  margin-top: 1rem;
}
.p-aside-menu__map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.p-aside {
  margin-bottom: 5rem;
  padding-bottom: 3rem;
  background: #FDF0EF;
  font-weight: bold;
  text-align: center;
}
.p-aside.-sp {
  display: block;
}
.p-aside.-pc {
  display: none;
}
.p-aside__h1 {
  padding: 3rem 0;
  background: rgba(253, 131, 45, 0.4);
  font-size: 2.4rem;
}
.p-aside__h1 span {
  display: block;
  margin-top: 2rem;
}
.p-aside__h-box {
  position: relative;
  overflow: hidden;
}
.p-aside__img01, .p-aside__img02 {
  position: absolute;
  bottom: 0;
  height: 8rem;
}
.p-aside__img01 {
  right: calc(50% + 13rem);
}
.p-aside__img02 {
  left: calc(50% + 13rem);
}
.p-aside__note {
  display: inline-block;
  margin-top: 2rem;
  padding: 2rem 4rem;
  border: 1px solid #282828;
  border-radius: 5rem;
  background: #fff;
  font-size: 1.6rem;
  text-align: center;
}
.p-aside__list {
  margin-top: 3rem;
}
.p-aside__h2 {
  font-size: 2.4rem;
}
.p-aside__h2 span {
  display: inline-block;
  margin-bottom: 3rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #282828;
}
.p-aside__date {
  display: inline-block;
}
.p-aside__date th {
  font-size: 1.2rem;
  white-space: nowrap;
}
.p-aside__date th span {
  display: inline-block;
  width: 100%;
  padding: 0.5rem 1rem;
  border-radius: 5px;
  background: rgba(253, 131, 45, 0.4);
}
.p-aside__date td {
  padding: 0 0 1rem 1rem;
  font-size: 1.4rem;
  line-height: 1.7;
  text-align: left;
}
.p-aside__tel, .p-aside__line {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  margin-top: auto;
  border-radius: 0.5rem;
  background: #fd832d;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
  color: #fff;
  line-height: 1;
  letter-spacing: 0.07em;
  transition: opacity 0.3s;
}
.p-aside__tel:hover, .p-aside__line:hover {
  opacity: 0.7;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}
.p-aside__tel:before, .p-aside__line:before {
  display: inline-block;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 3rem;
  height: 3rem;
  margin-right: 1rem;
  background: url("../images/icon_tel_white.svg") no-repeat center/contain;
  content: "";
}
.p-aside__tel {
  padding: 1.5rem 0;
  font-size: 3.4rem;
}
.p-aside__line {
  display: -ms-flexbox;
  display: flex;
  margin-top: 2rem;
  padding: 2rem 0;
  background: #06C755;
  font-size: 1.8rem;
  white-space: nowrap;
}
.p-aside__line:before {
  background-image: url("../images/icon_line_hukidashi.svg");
}

.p-side-banner {
  display: block;
  max-width: 331px;
  margin: 0 auto;
  padding-top: 3rem;
}
.p-side-banner img {
  width: 100%;
}

.p-linkbox__tel, .p-linkbox__line {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  width: 50%;
  padding: 15px 0;
  border-top: 1px solid #fff;
  color: #fff;
  font-weight: bold;
  font-size: 1.4rem;
  line-height: 1.4;
}

.p-linkbox {
  display: -ms-flexbox;
  display: flex;
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
}
.p-linkbox__line {
  background-color: #06C755;
}
.p-linkbox__line img {
  width: 25px;
  margin-right: 8px;
}
.p-linkbox__tel {
  background-color: #fd832d;
}
.p-linkbox__tel img {
  width: 24px;
  margin-right: 10px;
}

/*
 * footer
 */
.p-ftr {
  margin-bottom: 6rem;
  padding-top: 6rem;
  background: #FCF8F3;
  text-align: center;
}
.p-ftr__box {
  display: inline-block;
  margin-bottom: 6rem;
  vertical-align: top;
}
.p-ftr__h {
  margin-bottom: 2rem;
  color: #fd832d;
  font-weight: bold;
  font-size: 2.6rem;
}
.p-ftr__txt {
  font-weight: 500;
  text-align: center;
}
.p-ftr__txt + .p-ftr__txt {
  margin-top: 1em;
}
.p-ftr__list {
  padding: 2rem 0;
  border-top: 1px solid #fd832d;
}
.p-ftr__list li {
  display: inline-block;
  margin: 1rem;
}
.p-ftr__list a {
  display: inline-block;
  color: #fd832d;
  font-weight: bold;
  transition: opacity 0.3s;
}
.p-ftr__list a:hover {
  opacity: 0.7;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}
.p-ftr__cr {
  padding: 3.5rem 0;
  background: #fd832d;
  color: #FFF;
  font-size: 1rem;
  text-align: center;
}

.p-back2top {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  width: 5.5rem;
  height: 5.5rem;
  padding-top: 0.5rem;
  border: 2px solid #FFF;
  border-radius: 50%;
  background: #fd832d;
  color: #FFF;
  font-weight: 700;
  font-weight: bold;
  font-size: 1.2rem;
  font-family: "Poppins", sans-serif;
  letter-spacing: 0.1em;
  transition: opacity 0.3s;
}
.p-back2top:hover {
  opacity: 0.7;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}
.p-back2top:before {
  display: inline-block;
  width: 1rem;
  height: 1rem;
  transform: rotate(-45deg);
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
}

/*
 * block
 */
.u-sp {
  display: block;
}

.u-pc {
  display: none;
}

.u-hidden {
  display: none;
}

/*
 * color
 */
.u-orange-light {
  color: #fd832d;
}

.u-red {
  color: #fc2727;
}

/*-------------------------------

	Reset

-------------------------------*/
/*-------------------------------

	Foundation

-------------------------------*/
/*-------------------------------

	Layout

-------------------------------*/
/*-------------------------------

	Object

-------------------------------*/
/*---------- Component ----------*/
/*---------- Project ----------*/
/*---------- Utility ----------*/
@media only screen and (min-width: 768px){

  /* tablet-size */
  body{
    font-size: 1.6rem;
  }
  main{
    margin-top: 11.2rem;
  }
  .l-side{
    width: min(100% - 80px, 900px);
    margin-right: auto;
    margin-left: auto;
  }
  .l-base{
    width: min(100% - 80px, 1230px);
    margin-right: auto;
    margin-left: auto;
  }
  .l-inner{
    margin-right: 40px;
    margin-left: 40px;
  }
  .l-hdr{
    z-index: 10;
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    background: #fff;
    box-shadow: 3px 3px 4px rgba(220, 220, 220, 0.4);
  }
  .l-hdr-btn{
    position: static;
  }
  .l-3rsn-grid{
    grid-gap: 0 3rem;
    -ms-grid-rows: 5rem 5rem auto;
        grid-template-rows: 5rem 5rem auto;
    -ms-grid-columns: (auto)[2];
        grid-template-columns: repeat(2, auto);
    grid-template-areas: "ttl img" "heading img" "txt img";
  }
  .l-flow-grid{
    grid-gap: 0 5%;
    -ms-grid-rows: 4rem auto auto;
        grid-template-rows: 4rem auto auto;
    -ms-grid-columns: 40% 55%;
        grid-template-columns: 40% 55%;
    grid-template-areas: "img num" "img heading" "img txt";
  }
  .l-back2top{
    bottom: 15px;
  }
  .c-h1:after{
    height: 2px;
  }
  .c-h1__en{
    font-size: 2rem;
  }
  .c-h1__en:before, .c-h1__en:after{
    width: 11rem;
    height: 2px;
  }
  .c-h1__main{
    font-size: 4rem;
  }
  .c-h1__main.-large{
    height: 12.5rem;
  }
  .c-h2{
    font-size: 4rem;
  }
  .c-h2{
    margin-bottom: 5rem;
  }
  .c-h2:before, .c-h2:after{
    width: 56rem;
    height: 2px;
  }
  .c-checklist__item{
    font-size: 2.8rem;
  }
  .c-checklist__item:before{
    width: 3rem;
    height: 3rem;
  }
  .c-checklist__item small{
    font-size: 1.6rem;
  }
  .c-checklist__item + .c-checklist__item{
    margin-top: 5rem;
  }
  .p-hdr{
    -ms-flex-pack: center;
        justify-content: center;
  }
  .p-hdr__middle{
    width: auto;
  }
  .p-hdr__box{
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    gap: 0 2rem;
    white-space: nowrap;
  }
  .p-hdr__h1{
    margin-bottom: 0;
  }
  .p-hdr__h1 br{
    display: block;
  }
  .p-hdr__txt-box{
    width: 17rem;
  }
  .p-hdr__txt .txt-br{
    display: block;
  }
  .p-hdr__tel{
    font-size: 2.4rem;
  }
  .p-hdr__tel{
    margin: 0 0 1rem;
  }
  .p-hdr__btn{
    -ms-flex-negative: 0;
        flex-shrink: 0;
    width: 6.5rem;
    height: 6.5rem;
    margin-left: 1rem;
    font-size: 1.2rem;
    letter-spacing: 0.2em;
  }
  .p-hdr__btn span{
    width: 3rem;
    height: 3rem;
  }
  .p-hdr__line{
    display: block;
    margin-left: 1rem;
    padding: 1rem 0.5rem;
    border-radius: 0.8rem;
    background: #06C755;
    color: #FFF;
    font-weight: bold;
    font-size: 1rem;
    text-align: center;
    white-space: nowrap;
  }
  .p-gnav{
    padding: 5rem 10rem 5rem 5rem;
  }
  .p-gnav__list{
    font-size: 1.6rem;
  }
  .p-gnav__close{
    top: 3rem;
    right: 3rem;
  }
  .p-intro__ttl{
    font-size: 4rem;
  }
  .p-intro__cap{
    font-size: 3rem;
  }
  .p-worries{
    padding-bottom: 8rem;
  }
  .p-worries__list{
    padding: 0;
  }
  .p-sim{
    padding-bottom: 9rem;
  }
  .p-sim__btn{
    font-size: 2.2rem;
  }
  .p-3rsn__ttl{
    font-size: 1.2rem;
  }
  .p-3rsn__ttl{
    margin-bottom: 0;
  }
  .p-3rsn__ttl span{
    font-size: 5.8rem;
  }
  .p-3rsn__h1{
    font-size: 1.7rem;
  }
  .p-3rsn__h1{
    margin-bottom: 0;
  }
  .p-3rsn__img{
    margin-bottom: 0;
  }
  .p-consult{
    padding: 10rem 0;
    background-position: left top;
  }
  .p-consult__list{
    padding: 5rem;
    border-width: 10px;
  }
  .p-laws__box{
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: start;
        align-items: flex-start;
    -ms-flex-pack: justify;
        justify-content: space-between;
    gap: 0 4rem;
  }
  .p-laws__txt-box{
    -ms-flex-order: 1;
        order: 1;
  }
  .p-laws__txt1{
    font-size: 2rem;
  }
  .p-laws__thumb{
    -ms-flex-order: 2;
        order: 2;
    width: 251px;
    margin: 0;
  }
  .p-laws__h1{
    font-size: 2.8rem;
  }
  .p-laws__h1{
    margin-top: 10rem;
  }
  .p-laws__list{
    width: 56%;
  }
  .p-laws__item{
    font-size: 2rem;
  }
  .p-laws__item:before{
    left: 9px;
  }
  .p-laws__item + .p-laws__item{
    margin-top: 30px;
  }
  .p-laws__list2{
    padding: 16px 40px 30px;
  }
  .p-laws__item2{
    display: -ms-flexbox;
    display: flex;
    padding: 13px 0;
  }
  .p-laws__h2{
    font-size: 1.6rem;
  }
  .p-laws__h2{
    width: 140px;
  }
  .p-laws__txt2{
    width: calc(100% - 140px);
  }
  .p-5rsn__num{
    font-size: 2rem;
  }
  .p-5rsn__num{
    margin-bottom: 0;
  }
  .p-5rsn__h1{
    margin: 1.3rem 0 0;
  }
  .p-5rsn__txt{
    font-size: 1.6rem;
  }
  .p-5rsn__txt{
    margin-top: 4rem;
  }
  .p-5rsn__item{
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: start;
        align-items: flex-start;
    -ms-flex-pack: justify;
        justify-content: space-between;
  }
  .p-5rsn__item + .p-5rsn__item{
    margin-top: 7rem;
  }
  .p-5rsn__item:nth-of-type(even) .p-5rsn__img{
    -ms-flex-order: 2;
        order: 2;
    margin-left: 2rem;
  }
  .p-5rsn__item:nth-of-type(even) .p-5rsn__txt-box{
    -ms-flex-order: 1;
        order: 1;
  }
  .p-5rsn__item:nth-of-type(odd) .p-5rsn__img{
    margin-right: 2rem;
  }
  .p-flow{
    padding: 11rem 0;
  }
  .p-flow__item{
    margin-bottom: 9.5rem;
    padding-bottom: 3.5rem;
  }
  .p-flow__item:after{
    bottom: -6rem;
    width: 6rem;
    height: 6rem;
  }
  .p-flow__item:first-of-type{
    margin-top: 11rem;
  }
  .p-flow__num{
    font-size: 2rem;
  }
  .p-flow__num{
    margin-bottom: 0;
  }
  .p-flow__h{
    font-size: 3.2rem;
  }
  .p-flow__h{
    margin-bottom: 4rem;
  }
  .p-flow__img{
    width: 100%;
    margin: 0;
  }
  .p-ex__item{
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
  }
  .p-ex__item:last-of-type{
    margin-bottom: 8rem;
  }
  .p-ex__txt-box{
    -ms-flex: 1;
        flex: 1;
    margin-left: 5rem;
  }
  .p-ex__h{
    font-size: 3rem;
  }
  .p-ex__h{
    padding: 0;
  }
  .p-ex__img{
    margin: 0;
  }
  .p-ex__txt{
    font-size: 1.8rem;
  }
  .p-ex__note{
    font-size: 2.8rem;
  }
  .p-ex__list{
    font-size: 2rem;
  }
  .p-qanda__a:before, .p-qanda__q:before{
    width: 3rem;
    height: 3rem;
  }
  .p-qanda__q{
    font-size: 2rem;
  }
  .p-qanda__q{
    padding: 0.7rem 2.5rem;
  }
  .p-qanda__a{
    font-size: 1.4rem;
  }
  .p-qanda__a{
    margin-right: 5rem;
    margin-left: 7rem;
  }
  .p-qanda__a:before{
    font-size: 2rem;
  }
  .p-aside-menu__list{
    font-size: 2rem;
  }
  .p-aside-menu__h1{
    font-size: 2rem;
  }
  .p-aside-menu__h2{
    font-size: 1.5rem;
  }
  .p-aside-menu__txt{
    font-size: 1.4rem;
  }
  .p-aside{
    margin-bottom: 10rem;
  }
  .p-aside.-sp{
    display: none;
  }
  .p-aside.-pc{
    display: block;
  }
  .p-aside__h1{
    font-size: 3.2rem;
  }
  .p-aside__img01, .p-aside__img02{
    height: 20rem;
  }
  .p-aside__img01{
    right: calc(50% + 25rem);
  }
  .p-aside__img02{
    left: calc(50% + 25rem);
  }
  .p-aside__note{
    font-size: 2rem;
  }
  .p-aside__item{
    display: -ms-inline-flexbox;
    display: inline-flex;
    -ms-flex-direction: column;
        flex-direction: column;
    width: 56.5rem;
  }
  .p-aside__h2{
    font-size: 3.2rem;
  }
  .p-aside__date th{
    font-size: 1.8rem;
  }
  .p-aside__date th span{
    padding: 1rem;
  }
  .p-aside__date td{
    font-size: 1.8rem;
  }
  .p-aside__date td{
    padding: 0 0 3rem 1.5rem;
  }
  .p-aside__tel:before, .p-aside__line:before{
    width: 4rem;
    height: 4rem;
    margin-right: 1.5rem;
  }
  .p-aside__tel{
    font-size: 4.8rem;
  }
  .p-aside__line{
    font-size: 3.2rem;
  }
  .p-aside__line{
    padding: 2rem;
  }
  .p-linkbox{
    display: none;
  }
  .p-ftr{
    margin-bottom: 0;
  }
  .p-ftr__box{
    margin: 0 5rem 6rem;
    white-space: nowrap;
  }
  .p-ftr__h{
    font-size: 3.2rem;
  }
  .p-ftr__list li{
    margin: 1.5rem;
  }
  .p-ftr__cr{
    font-size: 1.2rem;
  }
  .u-sp{
    display: none;
  }
  .u-pc{
    display: block;
  }
}
@media only screen and (min-width: 950px){

  /* pc-size */
  .p-hdr__h1{
    font-size: 2.8rem;
  }
  .p-hdr__h1 br{
    display: none;
  }
  .p-5rsn__h1{
    font-size: 3rem;
  }
}
@media only screen and (min-width: 930px){

  /* pc-size */
  .p-hdr__btn{
    margin-left: 3rem;
  }
  .p-hdr__line{
    margin-left: 3rem;
  }
  .p-intro__left{
    width: auto;
    margin-right: 10%;
  }
  .p-intro__ttl{
    width: 41rem;
    margin: 0;
    padding: 0.5rem 0 1.5rem;
    text-shadow: 0px 6px 0px rgba(0, 0, 0, 0.2);
  }
  .p-intro__price{
    width: 34rem;
    margin: 2rem 0 0 auto;
  }
  .p-back2top{
    width: 8rem;
    height: 8rem;
    font-size: 2rem;
  }
}
@media only screen and (min-width: 1230px){

  /* pc-size */
  .l-2col{
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
    width: min(100% - 30px, 1230px);
    margin-top: 5rem;
    margin-right: auto;
    margin-left: auto;
  }
  .l-main{
    -ms-flex: 1;
        flex: 1;
    -ms-flex-order: 2;
        order: 2;
    width: auto;
    margin-right: 0;
    margin-bottom: 10rem;
    margin-left: 3rem;
  }
  .l-side{
    -ms-flex-order: 1;
        order: 1;
    width: 300px;
    margin-top: 0;
    margin-right: 0;
    margin-left: 0;
  }
  .p-hdr__txt-box{
    width: 28rem;
  }
  .p-hdr__txt{
    font-size: 1.2rem;
  }
  .p-hdr__txt .txt-br{
    display: none;
  }
  .p-hdr__access{
    font-size: 1.6rem;
  }
  .p-hdr__btn{
    width: 8.5rem;
    height: 8.5rem;
    font-size: 1.4rem;
  }
  .p-hdr__btn span{
    width: 4rem;
    height: 4rem;
  }
  .p-hdr__line{
    width: 8.5rem;
    font-size: 1.1rem;
  }
  .p-intro{
    -ms-flex-align: center;
        align-items: center;
  }
  .p-intro__thumb{
    width: 54.6rem;
  }
  .p-intro__cap{
    bottom: 2rem;
    width: 42.7rem;
    padding: 1rem;
    font-size: 4rem;
  }
  .p-sim__box{
    padding: 2.5rem 4.3rem 4rem 4.6rem;
    border-radius: 2rem;
  }
  .p-sim__table{
    font-size: 1.8rem;
  }
  .p-sim__2col{
    display: table-row;
  }
  .p-sim__2col td:first-of-type{
    width: 30%;
  }
  .p-sim__2col td:last-of-type{
    width: 80%;
  }
  .p-sim__2col td:last-of-type input{
    width: 70%;
  }
  .p-sim__btn{
    width: auto;
    padding: 1rem 10rem;
  }
  .p-sim__result{
    width: 26rem;
    font-size: 3.6rem;
  }
  .p-sim__note{
    font-size: 1.6rem;
  }
}
@media only screen and (min-width: 1920px){

  /* max-size */
}
/*# sourceMappingURL=style.css.map */