﻿@charset "utf-8";
/* CSS Document */

/* 目次(TOC)用CSS */
.singlePage #toc_container {
  min-width: 30%;
  padding: 1em 1.5em .5em;
  border: 1px solid var(--color-gray);
}

.singlePage #toc_container .toc_title {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  font-size: 1.4em;
  position: relative;
  padding-left: 1.3em;
  margin-bottom: .5em;
}

.singlePage #toc_container .toc_title::before {
  font-family: "Font Awesome 5 Free";
  content: '\f022';
  font-size: 1em;
  margin-right: 3px;
  color: var(--color-gray);
  font-weight: 400;
  position: absolute;
  left: 0;
}

.singlePage #toc_container .toc_title .toc_toggle {
  font-size: 1.2rem;
}

.singlePage #content #toc_container .toc_list {
  padding: 0;
}

.singlePage #content #toc_container .toc_list li {
  list-style: none;
  border-bottom: 1px dotted var(--color-lightgray);
  padding-bottom: .5em;
  margin-bottom: .5em;
  position: relative;
}

.singlePage #content #toc_container .toc_list li:last-child {
  border: 0;
  padding-bottom: 0;
}

.singlePage #content #toc_container .toc_list li ul {
  border-top: 1px dotted var(--color-lightgray);
  padding: 1em 0 0 0;
  margin: 0;
}

.singlePage #content #toc_container .toc_list li ul li {
  margin-left: 1.5em;
}

.singlePage #content #toc_container .toc_list li .toc_number {
  color: var(--color-gray);
}

/* ビジュアルエディタ用CSS */
.singlePage #content p {
  margin-bottom: 10px;
  margin-bottom: 1em;
}

.singlePage #content h1,
.singlePage #content h2,
.singlePage #content h3,
.singlePage #content h4,
.singlePage #content h5,
.singlePage #content h6 {
  font-weight: bold;
  margin: 1em 0;
}

.singlePage #content h1 {
  font-size: clamp(2rem, 1.7rem + 1vw, 2.3rem);
  border-left: 5px solid var(--color-main);
  padding: 0 0 0 .5em;
}

.singlePage #content h2 {
  font-size: clamp(1.4rem, 1.3rem + 1vw, 2rem);
  border-bottom: 3px solid var(--color-main);
  padding: 0 0 .5em;
}

.singlePage #content h3 {
  font-size: clamp(1.3rem, 1.1rem + 1vw, 1.8rem);
  background: var(--color-palegray);
  padding: .5em;
}

.singlePage #content h4 {
  font-size: clamp(1.1rem, 0.9rem + 1vw, 1.6rem);
  border-top: 1px solid var(--color-lightgray);
  border-bottom: 1px solid var(--color-lightgray);
  padding: .5em 0;
}

.singlePage #content h5 {
  font-size: clamp(1rem, 0.8rem + 0.9vw, 1.4rem);
  border-bottom: 1px dashed var(--color-lightgray);
  padding: 0 0 .5em;
}

.singlePage #content h6 {
  font-size: clamp(0.9rem, 0.7rem + 0.7vw, 1.1rem);
  color: var(--color-black);
}

.singlePage #content blockquote {
  padding: 1em;
  background: var(--color-palegray);
  margin: 1em 0;
}

.singlePage #content blockquote p {
  margin-bottom: 0;
}

.singlePage #content ul,
.singlePage #content ol {
  padding-left: 1.5em;
}

.singlePage #content ul li {
  list-style: disc;
  line-height: 1.6;
  margin-bottom: 1em;
}

.singlePage #content ol li {
  list-style: decimal;
  line-height: 1.6;
  margin-bottom: 1em;
}

.singlePage #content table {
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 0;
  border-top: 1px solid var(--color-lightgray);
  border-left: 1px solid var(--color-lightgray);
}

.singlePage #content table th {
  border-right: 1px solid var(--color-lightgray);
  border-bottom: 1px solid var(--color-lightgray);
}

.singlePage #content table td {
  border-right: 1px solid var(--color-lightgray);
  border-bottom: 1px solid var(--color-lightgray);
}

.singlePage #content table th,
.singlePage #content table td {
  padding: .5em;
}

.singlePage #content a {
  text-decoration: underline;
  color: var(--color-main);
}

.singlePage #content .aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.singlePage #content .alignright {
  float: right;
  margin-left: 1.5em;
}

.singlePage #content .alignleft {
  float: left;
  margin-right: 1.5em;
}

.singlePage #content {
  display: flow-root; /* float の解除 */
}

.singlePage #content pre {
  white-space: pre-wrap;
  word-wrap: break-word;
}

/* ビジュアルエディタ用CSSここまで */

/*==================================================
 assessmentPage
==================================================*/
.assessmentPageWrap img{
	max-width:100%;
	height:auto;
}

/*****bread*****/
.assessmentPageWrap .breadWrap {
	position:relative;
	top:0;
	background:none;
}
.assessmentPageWrap #bread,
.assessmentPageWrap #bread a {
	color:#fff;
}

/*****ttl*****/
.assessmentPageWrap .ttlWrap{
	margin-top:-40px;
	padding-top:50px;
	padding-bottom:20px;
	background: url(../img/page/assessment/ttlWrap_bg.webp) no-repeat center;
	background-size:cover;
}
.assessmentPageWrap .ttlWrap h2.mainTtl{
	height:inherit;
}

.assessmentPageWrap .strengthBox_start_btn {
	margin: var(--gutter-narrow) auto var(--gutter-wide);
}

/*****strengthBox*****/
.assessmentPage .strengthBox{
	margin-top:60px;
}

.assessmentPage .strengthBox__inner{
	background: var(--color-waterblue);
	padding:60px 0;
	margin-top:-60px;
}

.assessmentPage .strengthBox__inner__item{
	background:#fff;
	border:1px solid var(--color-main);
	margin:4% auto;
	padding:2%;
}

.assessmentPage .strengthBox__inner__item__ttl{
	font-size:2em;
	font-weight:bold;
	text-align:center;
	margin-bottom:4%;
}
.assessmentPage .strengthBox__inner__ttl__head{
	display:block;
	text-align: center;
	margin-bottom:0.5em;
}
.assessmentPage .strengthBox__inner__ttl__head .num{
	display:inline-flex;
	justify-content: center;
	align-items:center;
	background:var(--color-main);
	color:#ff0;
	font-size:1.5em;
	width:2em;
	height:2em;
	border-radius:2em;
	margin-left:0.25em;
}

.assessmentPage .strengthBox__inner__item p {
	font-size:1.2em;
	margin:1em 0;
}

.assessmentPage .strengthBox__inner__item__methodList {
	border:2px solid #ccc;
	background:#fff;
	border-radius:4px;
	display:flex;
	justify-content: center;
	flex-wrap:wrap;
	position:relative;
	margin:70px 5% 0;
}
/*.assessmentPage .strengthBox__inner__item__methodList::before {
	content:"";
	display:block;
	width:100%;
	height:50px;
	background:url(../img/page/assessment/strengthBox_item02_arrow.webp) no-repeat right 32% center;
	background-size:contain;
	position:absolute;
	top:-60px;
}*/
.assessmentPage .strengthBox__inner__item__methodItem {
	width:48%;
	min-width:380px;
	margin:1em 1%;
	display:flex;
	align-items:center;
}
.assessmentPage .strengthBox__inner__item__methodItem p {
	margin-top:0;
	margin-bottom:0;
}
.assessmentPage .strengthBox__inner__item__methodItem p.image{
	width:140px;
	flex-shrink:0;
}
.assessmentPage .strengthBox__inner__item__methodItem p.text{
	margin-left:1em;
	font-weight:bold;
	text-align:left;
}
.assessmentPage .strengthBox__inner__item__methodItem .methodItem__notice{
	font-weight:normal;
	font-size:12px;
	display:block;
	line-height:120%;
}

.assessmentPage .strengthBox__inner__item__text p{
	text-align:center;
}

/*item03とitem04*/
.strengthBox__inner__item.item03 .strengthBox__inner__item__text {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 1em;
	background: #fff;
	filter: drop-shadow(0 0 6px rgba(0, 0, 0, 0.08));
}

.strengthBox__inner__item.item03 .strengthBox__img--tenant,
.strengthBox__inner__item.item04 .strengthBox__img--tenant {
	width: min(100%, 340px);
	flex-shrink: 0;
	margin: 0;
}

.strengthBox__inner__item.item03 .strengthBox__img--tenant img,
.strengthBox__inner__item.item04 .strengthBox__img--tenant img {
	aspect-ratio: 340 / 227;
}

.strengthBox__inner__item.item03 .strengthBox__txt,
.strengthBox__inner__item.item04 .strengthBox__txt {
	text-align: left;
}

/*item04*/
.strengthBox__inner__item.item04 .strengthBox__item {
	display: flex;
	flex-direction: column;
	/*width: 90%;
	margin: 0 auto;*/
	padding: 1em;
	background: #fff;
	filter: drop-shadow(0 0 6px rgba(0, 0, 0, 0.08));
}

.strengthBox__inner__item.item04 .strengthBox__item .strengthBox__itemTtl {
	background: var(--color-main);
	color: #fff;
	font-size: 1.3em;
	font-weight: bold;
	padding: 0.5em;
}

.assessmentPage .strengthBox__inner__item.item04 .strengthBox__inner__item__text{
	display:flex;
	align-items:center;
}

.assessmentPage .strengthBox__inner__item.item04 .strengthBox__item:not(:last-child) {
	margin-bottom: var(--gutter-narrow);
}

.assessmentPage .strengthBox__inner__item.item04 .strengthBox__inner__item__text p:nth-of-type(1){
	flex-shrink: 0;
}
.assessmentPage .strengthBox__inner__item.item04 .strengthBox__inner__item__text p:nth-of-type(2){
	padding-left:3%;
	padding-bottom:5%;
	text-align:left;
}

/*****fotmTtl*****/
.assessmentPageWrap .formTtlBox{
	padding-top:20px;
	padding-bottom:20px;
	margin-bottom:2%;
	background: url(../img/page/assessment/ttlWrap_bg.webp) no-repeat center;
	background-size:cover;
}

/***** shopInfoBox *****/

/*==================================================
 pointPage
==================================================*/
.pointPageWrap img{
	max-width:100%;
	height:auto;
}

.pointPage .contentWrap{
	margin-top:3%;
}

/*****bread*****/
.pointPageWrap .breadWrap{
	position:relative;
	top:0;
	background:none;
}

/*****ttl*****/
.pointPageWrap .ttlWrap{
	margin-top:-40px;
	padding-top:50px;
	padding-bottom:20px;
	background: url(../img/page/point/ttlWrap_bg.webp) no-repeat center bottom;
	background-size:cover;
	text-align: center;
}
.pointPageWrap .ttlWrap h2.mainTtl{
	height:inherit;
}
.pointPageWrap .ttlWrap p{
	display:inline-block;
	border:2px solid #111;
	background:rgba(255,255,255,0.8);
	padding:0.5em 1em;
	margin:2% auto;
	text-align:center;
	font-size:1.2em;
}

/*****introduction*****/
.pointPage .introBox__pointList{
	display: flex;
    justify-content: center;
    margin: 0 auto 8%;
}
.pointPage .introBox__pointList__item{
    margin-right: 2%;
    max-width: 23%;
}
.pointPage .introBox__pointList__item:last-of-type{
	margin-right:0;
}

.pointPage .introBox__pointList__item a{
	display:flex;
	justify-content: center;
	align-items:center;
	background:#fff;
	border:1px solid #111;
	width:100%;
	height:100%;
	padding:5% 0;
}
.pointPage .introBox__pointList__item img{
	width:25%;
	height:auto;
}
.pointPage .introBox__pointList__item__text{
	display:block;
	font-size:1.2em;
	font-weight:bold;
	margin-left:1em;
}

/*****content*****/
.pointPage .pointBox{
	padding-top:15%;
	margin-top:-12%;
}

.pointPage .pointBox__ttlBox{
	text-align:center;
	background:var(--color-main);
	font-size:3em;
	margin-bottom:3%;
}
.pointPage .pointBox__ttl{
	display:inline-block;
	background:#fff;
	border:1px solid #fff;
	color:var(--color-main);
	text-shadow: 2px 2px 0 #ff0;
	padding:0 3em;
	line-height:160%;
	font-weight:bold;
	position:relative;
}
.pointPage .pointBox__ttl::before,
.pointPage .pointBox__ttl::after{
	content:"";
	display:inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0 2em 0.5em;
	border-color: transparent transparent #fff transparent;
	position:absolute;
}
.pointPage .pointBox__ttl::before{
	top:-1px;
	left:-0.5em;
}
.pointPage .pointBox__ttl::after{
	bottom:-1px;
	right:-0.5em;
	transform: scale(-1, -1);
}

/*****flow*****/
.pointPage .flowBox{
	padding-top:12%;
	margin-top:-14%;
}
.pointPage .flowBox__inner__stepList{
	display:flex;
	justify-content:center; 
	margin:3% 0;
}
.pointPage .flowBox__inner__stepList li{
	width:20vw;
	height:20vw;
	max-width:200px;
	max-height:200px;
	font-size:1.6em;
	color:#fff;
	font-weight:bold;
	display:flex;
	justify-content: center;
	align-items: center;
	border-radius:100%;
	position:relative;
	margin:0 2%;
}
.pointPage .flowBox__inner__stepList li:not(:last-of-type)::after{
	content:"";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 12px 0 12px 8px;
	border-color: transparent transparent transparent #999;
	position:absolute;
	top:50%;
	right:-12.5%;
	transform: translateY(-50%);
}

.pointPage .flowBox__inner__stepList li.step1{background:var(--color-main);}
.pointPage .flowBox__inner__stepList li.step2{background:var(--color-orange);}
.pointPage .flowBox__inner__stepList li.step3{background:var(--color-main);}
.pointPage .flowBox__inner__stepList li.step4{background:#39516B;}

.pointPage .flowBox__inner__itemList{
	display:flex;
	flex-wrap: wrap;
}
.pointPage .flowBox__inner__item{
	width:31%;
	padding:1em;
	border:1px solid #ccc;
	position:relative;
	margin-top:5%;
}
.pointPage .flowBox__inner__item:nth-of-type(3n-1){
	margin-right:2%;
	margin-left:2%;
}
/*.pointPage .flowBox__inner__item:last-of-type{
	color:#E81733;
	font-weight:bold;
	font-size:1.2em;
	display:flex;
	justify-content: center;
	align-items: center;
}*/

.pointPage .flowBox__inner__item::before{
	content:"";
	width:60px;
	height:60px;
	position:absolute;
	top:-1em;
	left:-1em;
}
.pointPage .flowBox__inner__item.step1::before{background:url(../img/page/point/flowBox_icon_step1.webp) no-repeat;background-size:contain;}
.pointPage .flowBox__inner__item.step2::before{background:url(../img/page/point/flowBox_icon_step2.webp) no-repeat;background-size:contain;}
.pointPage .flowBox__inner__item.step3::before{background:url(../img/page/point/flowBox_icon_step3.webp) no-repeat;background-size:contain;}
.pointPage .flowBox__inner__item.step4::before{background:url(../img/page/point/flowBox_icon_step4.webp) no-repeat;background-size:contain;}

.pointPage .flowBox__inner__item::after{
	content:"";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 2em 0 2em 2em;
	border-color: transparent transparent transparent #ccc;
	position:absolute;
	top:50%;
	right:-2em;
	transform: translateY(-50%);
}
.pointPage .flowBox__inner__item:last-of-type::after{
	content:none;
}

.pointPage .flowBox__inner__item h4{
	font-size:1.2em;
	font-weight:bold;
	padding-left:2.2em;
}
.pointPage .flowBox__inner__item p{
	margin:1em;
}

.pointPage .flowBox__inner__link a{
	display:block;
	padding:0.5em;
	text-align:center;
	font-weight:bold;
	color:#fff;
}
.pointPage .step1 .flowBox__inner__link a{background: var(--color-main);}
.pointPage .step2 .flowBox__inner__link a{background: var(--color-orange);}

/*****tax*****/
.pointPage .taxBox__inner .image{
	margin-right:auto;
	margin-left:auto;
	text-align:center;
}
.pointPage .taxBox__inner .image img{
	margin-bottom:1em;
}

/*****difference*****/
.pointPage .differenceBox__head__com01{
	text-align:center;
	font-size:1.2em;
}
.pointPage .differenceBox__head__imgList{
	display:flex;
	justify-content: space-between;
	margin:3% auto;
}
.pointPage .differenceBox__head__imgList li{
	width:45%;
	margin:0 2%;
}

.pointPage .differenceBox__inner table{
	width:96%;
	margin:3% auto;
	border:2px solid #ccc;
}
.pointPage .differenceBox__inner table thead th{
	text-align:center;
	font-weight:bold;
	font-size:1.2em;
	color:#fff;
	padding:0.5em;
}
.pointPage .differenceBox__inner table thead th.chukai{background:var(--color-orange);}
.pointPage .differenceBox__inner table thead th.kaitori{background:var(--color-main);}

.pointPage .differenceBox__inner table tbody th,
.pointPage .differenceBox__inner table tbody td{
	padding:1em;
	vertical-align: middle;
	border-bottom:1px solid #ccc;
}
.pointPage .differenceBox__inner table tbody th{
	background:#eee;
	white-space:nowrap;
}
.pointPage .differenceBox__inner table tbody td{
	border-left:1px solid #ccc;
}
.pointPage .differenceBox__inner table tbody td.chukai{background:var(--color-paleorange);}
.pointPage .differenceBox__inner table tbody td.kaitori{background:var(--color-waterblue);}

/*==================================================
 reasonPage
==================================================*/
.reasonPageWrap img{
	max-width:100%;
	height:auto;
}

.reasonPage .contentWrap{
	margin-top:3%;
}

/*****bread*****/
.reasonPageWrap .breadWrap{
	position:relative;
	top:0;
	background:none;
}

/*****ttl*****/
.reasonPageWrap .ttlWrap{
	margin-top:-40px;
	padding-top:20px;
	padding-bottom:20px;
	background: url(../img/page/reason/ttlWrap_bg.webp) no-repeat center;
	background-size:cover;
	text-align: center;
}

/*****introduction*****/
.reasonPage .introBox__pointList{
	display:flex;
	flex-wrap:wrap;
}

.reasonPage .introBox__pointList__item {
	width:31%;
	margin:1%;
}
.reasonPage .introBox__pointList__item a{
	display:flex;
	align-items:center;
	position:relative;
	border:2px solid #111;
	padding:1em;
	height: clamp(50px, 13vw, 6rem);
}
.reasonPage .introBox__pointList__item a:hover{
	background:#ff0;
	opacity:1;
}
.reasonPage .introBox__pointList__item img{
	width:20%;
	max-width:48px;
	height:auto;
}
.reasonPage .introBox__pointList__item__text{
	font-size:1.2em;
	font-weight:bold;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	width:100%;
	padding-left:1em;
	margin-left:1em;
	border-left:1px solid #111;
}

@media only screen and (min-width: 768px) and (max-width: 818px) {
	.reasonPage .introBox__pointList__item__text .pc_wide_hidden {
		display: none;
	}
}

/*****content*****/
.reasonPage .pointBox{
	padding-top:15%;
	margin-top:-12%;
}

.reasonPage .pointBox__ttlBox{
	text-align:center;
	font-size:2em;
	margin-bottom:3%;
	background: var(--color-main) url(../img/common/bg_stripe_15p.webp);
	padding:1em;
}
.reasonPage .pointBox__ttl{
	font-weight:bold;
	text-align:center;
	padding:1em;
	background:#fff;
	border:2px solid var(--color-main);
}
.reasonPage .pointBox__ttl__img {
	width: 50px;
	height: auto;
}
.reasonPage .pointBox__ttl__text{
	display:block;
	margin-top:1em;
	padding-top:1em;
	position:relative;
}
.reasonPage .pointBox__ttl__text::before{
	content: "";
    display: block;
    width: 30px;
    height: 3px;
    background: var(--color-main);
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}

/*****jisseki*****/
.reasonPage .strengthBox__inner__item__text p{
	margin-top:1em;
	font-size:1.2em;
	text-align:center;
}

/*****value*****/
.reasonPage .valueBox__inner__modelroomBox{
	display:flex;
	align-items:center;
	margin-bottom:3%;
}
.reasonPage .valueBox__inner__modelroomBox__photo{
	width:50%;
	flex-shrink:0;
	margin-right:3%;
}

.reasonPage .valueBox__inner__modelroomBox__text{
	font-size:1.2em;
	padding-bottom:2em;
}
.reasonPage .valueBox__inner__modelroomBox__ttl{
	display:inline-block;
	font-size:1.4em;
	font-weight:bold;
	background:var(--color-main);
	color:#fff;
	padding:0.5em;
	margin-bottom:1em;
}
.reasonPage .valueBox__inner img{
	width:100%;
	height:auto;
}

/*****support*****/
.reasonPage .supportBox__inner__text{
	text-align:center;
	font-size:1.2em;
	margin-bottom:3%;
	font-weight:bold;
}
.reasonPage .supportBox__inner__photo{
	margin-bottom:3%;
}

/*****kaitori*****/
.reasonPage .kaitoriBox .pointBox__ttlBox{
	margin-bottom:0;
}

/*staffCom*/
.reasonPage .pointBox__inner__staffCom{
	padding-right:20%;
	text-align:right;
	background:url(../img/page/reason/reasonPage_staff01.webp) no-repeat right center;
	background-size:16% auto;
	min-height:200px;
	display:flex;
	align-items:center;
}
.reasonPage .pointBox__inner__staffCom p,
.pointBox__meritList{
	position: relative;
	display: inline-block;
	margin: 1.5em 0 1.5em auto;
	padding: 2em;
	background: var(--color-waterblue);
	font-size:1.2em;
	text-align:left;
	font-weight:normal;
}
.reasonPage .pointBox__inner__staffCom p:before,
.pointBox__meritList::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 100%;
  margin-top: -15px;
  border: 15px solid transparent;
  border-left: 15px solid var(--color-waterblue);
}

/*理由2　９つのメリット*/
.pointBox__meritListTtl {
	margin-bottom: 15px;
}

.pointBox__meritTtl {
	font-weight: normal;
}

.pointBox__meritTtl--02,
.pointBox__meritTtl--03,
.pointBox__meritTtl--05,
.pointBox__meritTtl--09 {
	margin-bottom: 15px;
}

.pointBox__meritTxt {
	margin-bottom: 15px;
	padding-left: var(--gutter-narrow);
}

/*理由4*/
.pointBox__item {
	display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 1em;
    background: #fff;
    filter: drop-shadow(0 0 6px rgba(0, 0, 0, 0.08));
}

.pointBox__imgBox {
	width: min(100%, 340px);
    flex-shrink: 0;
    margin: 0;
}

.pointBox__imgBox {
	aspect-ratio: 340 / 227;
}

.pointBox__itemTxt {
	text-align: left;
	font-size: 1.2em;
}

/*理由5*/
.pointBox__itemWrap {
	display: flex;
    flex-direction: column;
    padding: 1em;
    background: #fff;
    filter: drop-shadow(0 0 6px rgba(0, 0, 0, 0.08));
}

.pointBox__itemTtl {
	background: var(--color-main);
    color: #fff;
    font-size: 1.3em;
    font-weight: bold;
    padding: 0.5em;
	margin: 1em 0;
}

.pointBox__item:not(:last-child) {
	margin-bottom: 20px;
}

/*==================================================
 purchasePage
==================================================*/
.purchasePageWrap .ttlWrap {
	margin-top: -40px;
	padding-top: 50px;
	padding-bottom: 20px;
	background: url(../img/page/purchase/ttlWrap_bg.webp) no-repeat center bottom;
	background-size: cover;
	text-align: center;
}

.purchasePageWrap .breadWrap {
	position: relative;
	top: 0;
	background: none;
}

.purchasePage .contentWrap {
	margin-top: 3%;
}

.purchasePage .purchase_catchBox {
	background-color: var(--color-waterblue);
	border-radius: 10px;
	width: 910px;
	max-width: 100%;
	margin: 0 auto;
	overflow: hidden;
}

.purchasePage .purchase__flame {
	display: flex;
	justify-content: center;
	font-size: 1.2em;
	padding: 15px;
}

.purchasePage .font_yellow {
	color: #ffff00;
}

.purchasePage .purchase_catch_ttl {
	font-size: 1.6em;
	font-weight: bold;
	text-align: center;
	color: #fff;
	background-color: var(--color-main);
	padding: 5px 0;
}

.purchasePage .purchaseBox__ttlBox {
	text-align: center;
	background: var(--color-main);
	font-size: 3em;
	margin-bottom: 3%;
	overflow: hidden;
}

.purchasePage .purchaseBox__ttl {
	display: inline-block;
	background: #fff;
	border: 1px solid #fff;
	color: var(--color-main);
	text-shadow: 2px 2px 0 #ff0;
	padding: 0 3em;
	line-height: 160%;
	font-weight: bold;
	position: relative;
	max-width: 80%;
}

.purchasePage .purchaseBox__ttl::before,
.purchasePage .purchaseBox__ttl::after {
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0 4em 0.5em;
	border-color: transparent transparent #fff transparent;
	position: absolute;
}

.purchasePage .purchaseBox__ttl::before {
	top: -1px;
	left: -0.5em;
}

.purchasePage .purchaseBox__ttl::after {
	bottom: -1px;
	right: -0.5em;
	transform: scale(-1, -1);
}

.purchasePage .purchase_reasonBox {
	background: var(--color-waterblue);
	padding: 0 0 60px;
	margin-bottom: 50px;
}

.purchasePage .purchase_reasonList .item {
	display: flex;
	background-color: #fff;
	margin-bottom: 30px;
	padding: 40px 60px;
}

.purchasePage .item_photo {
	width: 298px;
	height: auto;
	flex-shrink: 0;
}

.purchasePage .purchase_reasonList .item_info {
	margin-right: 30px;
}

.purchasePage .purchase_reasonList .item_info .ttl {
	font-size: 1.6em;
	font-weight: bold;
	letter-spacing: 0.025em;
	color: #e81733;
	display: inline-block;
	margin-bottom: 15px;
}

.purchasePage .purchase_reasonList .item_info .ttl span {
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 0.025em;
	color: #fff;
	background-color: var(--color-main);
	padding: 6px 22px 8px 23px;
	margin-right: 25px;
}

.purchasePage .purchase_reasonList .item_info .txt {
	font-size: 1.2em;
}

.purchasePage .purchase_flowArea {
	display: flex;
	justify-content: space-between;
}

.purchasePage .purchase_flowChukai {
	width: calc((100% - 40px) / 2);
	flex-shrink: 0;
	border: 5px solid var(--color-orange);
	font-size: 1.2em;
	position: relative;
}

.purchasePage .purchase_flowChukai_sp_openWrap {
	padding-bottom: 200px;
}

.purchasePage .purchase_flowChukai_ttl {
	background-color: var(--color-orange);
	color: #fff;
	text-align: center;
	font-size: 1.4em;
	font-weight: bold;
	padding: 5px 10px 10px;
}

.purchasePage .purchase_flowKaitori {
	width: calc((100% - 40px) / 2);
	flex-shrink: 0;
	/*margin-left: 40px;*/
	border: 5px solid var(--color-main);
	font-size: 1.2em;
	position: relative;
	padding-bottom: 200px;
}

.purchasePage .purchase_flowKaitori_ttl {
	background-color: var(--color-main);
	color: #fff;
	text-align: center;
	font-size: 1.4em;
	font-weight: bold;
	padding: 5px 10px 10px;
	position: relative;
}

.purchasePage .purchase_flowKaitori_ttl::before {
	position: absolute;
	content: '';
	background: url(../img/page/purchase/before_flowKaitori_ttl.webp) center/100% no-repeat;
	width: 20px;
	height: 23px;
	left: calc(50% - 4em);
}

.purchasePage .purchase_flowKaitori_ttl::after {
	position: absolute;
	content: '';
	background: url(../img/page/purchase/after_flowKaitori_ttl.webp) center/100% no-repeat;
	width: 20px;
	height: 23px;
	left: calc(50% + 3em);
}

.purchase_flowChukai .step_num {
	color: var(--color-orange);
}

.purchase_flowKaitori .step_num {
	color: var(--color-main);
}

.purchase_flowArea .step_num {
	font-size: 1.2em;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 8px;
}

.purchase_flowChukai .step_ttl {
	background-color: var(--color-orange);
}

.purchase_flowKaitori .step_ttl {
	background-color: var(--color-main);
}

.purchase_flowArea .step_ttl {
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 0.025em;
	text-align: center;
	color: #fff;
	padding: 5px 0;
	margin-bottom: 9px;
}

.purchase_flowArea .step {
	padding: 0 40px 40px;
	position: relative;
}

.purchase_flowArea .purchase_flowChukai .step:first-of-type,
.purchase_flowArea .purchase_flowKaitori .step:first-of-type {
	padding-top: 30px;
}

.purchase_flowChukai .step::after {
	border-color: #f6c376 transparent transparent transparent;
}

.purchase_flowKaitori .step::after {
	border-color: #78a6d7 transparent transparent transparent;
}

.purchase_flowArea .step::after,
.step_onlyKaitori::after {
	content: '';
	position: absolute;
	bottom: 3px;
	left: 50%;
	right: 50%;
	transform: translateX(-50%);
	border-style: solid;
	border-width: 24px 24px 0 24px;
}

.step_onlyKaitori {
	background-color: #78a6d7;
	position: relative;
	margin: 30px 0;
}

.step_onlyKaitori_img {
	position: absolute;
	width: 100%;
	max-width: 416px;
	height: auto;
	top: -5%;
	left: 50%;
	transform: translateX(-50%);
}

.step_onlyKaitori_img img {
	max-width: 100%;
	width: 414px;
}

.step_onlyKaitori_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 80%;
	margin: 0 auto;
	padding: 120px 0 41px;
}

.step_onlyKaitori_list_item {
	width: calc((100% - 20px) / 2);
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: var(--color-waterblue);
	border-radius: 10px;
	font-size: 1em;
	font-weight: bold;
	color: var(--color-main);
	text-align: center;
	margin-bottom: 10px;
	padding: 5px;
}

.step_onlyKaitori_list_item:last-child {
	width: 100%;
}

.step_onlyKaitori::after {
	border-color: #78a6d7 transparent transparent transparent;
	bottom: -54px;
}

.step_onlyKaitori+.step {
	padding-top: 30px;
}

.purchase_flowChukai .step_end {
	background: var(--color-orange) url(../img/page/purchase/img_flowChukai_end.webp) no-repeat right 46px bottom 0/122px auto;
}

.purchase_flowKaitori .step_end {
	background: var(--color-main) url(../img/page/purchase/img_flowKaitori_end.webp) no-repeat right 46px bottom 0/92px auto;
}

.purchase_flowArea .step_end {
	width: 100%;
	height: 185px;
	box-sizing: border-box;
	position: absolute;
	bottom: 0;
	display: table;
}

.purchase_flowArea .step_end_tx {
	font-size: 22px;
	font-weight: bold;
	letter-spacing: 0.025em;
	line-height: 1.5;
	color: #fff;
	padding-left: 10%;
	display: table-cell;
	vertical-align: middle;
}

.purchase_flowArea .step_end_tx span {
	font-size: 28px;
	color: var(--color-yellow);
}


/*==================================================
 techniquePage
==================================================*/
.techniquePageWrap .ttlWrap {
	margin-top: -40px;
	padding-top: 50px;
	padding-bottom: 20px;
	background: url(../img/page/technique/ttlWrap_bg.webp) no-repeat center bottom;
	background-size: cover;
	text-align: center;
}

.techniquePageWrap .breadWrap {
	position: relative;
	top: 0;
	background: none;
}

.techniquePage .contentWrap {
	margin-top: var(--gutter-narrow);
}

/*イントロ*/
.technique__introBox {
	margin: var(--gutter-narrow) auto;
}

.technique__introTtl {
	font-size: clamp(1.2em, 2vw, 1.8em);
	font-weight: bold;
	margin-bottom: var(--gutter-supernarrow);
}

.technique__introTtl--orange {
	color: var(--color-orange);
}

.technique__introTxt {
	font-size: clamp(1em, 2vw, 1.2em);
}

.technique__itemWrap {
	display: flex;
	justify-content: space-between;
	padding-top: 60px;
	flex-wrap: wrap;
}

.technique__item {
	border: 1px solid #111;
	/*width: calc((100% - 40px) / 2);
	flex-shrink: 0;*/
	width: 100%;
	position: relative;
	padding: 40px 20px;
	margin-bottom: 90px;
}

/*.technique__item:nth-child(even) {
	margin-left: 40px;
}*/

.technique__item__ttl {
	display: flex;
	justify-content: space-between;
	font-size: 1.6em;
	font-weight: bold;
	border-bottom: 1px solid var(--color-orange);
	margin-bottom: 14px;
	padding-right: 10px;
	padding-left: 10px;
}

.technique__item__ttl span {
	font-size: 0.8em;
	font-weight: normal;
}

.technique__item__text {
	font-size: 1.2em;
	/*margin-bottom: 30px;*/
	padding-right: 10px;
	padding-left: 10px;
}

.technique__flame {
	font-size: 1.2em;
	text-align: center;
	position: relative;
	padding-top: 20px;
}

.technique__flame__ttl {
	font-size: 1.1em;
	font-weight: bold;
	background: url(../img/page/technique/bg_stripe.webp) repeat;
	padding: 4px;
	display: inline-block;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}

.technique__flame__ttl span {
	background-color: #fff;
	display: inline-block;
	padding: 3px 15px;
	white-space: nowrap;
}

.technique__flame__text {
	background-color: var(--color-paleorange);
	padding: 34px 10px 20px;
}

.technique__item::before {
	position: absolute;
	content: '';
	width: 138px;
	height: 80px;
	left: 0;
	top: -52px;
}

.technique__item:nth-child(1)::before {
	background: url(../img/page/technique/technique_num01.webp) center/100% no-repeat;
}

.technique__item:nth-child(2)::before {
	background: url(../img/page/technique/technique_num02.webp) center/100% no-repeat;
}

.technique__item:nth-child(3)::before {
	background: url(../img/page/technique/technique_num03.webp) center/100% no-repeat;
}

.technique__item:nth-child(4)::before {
	background: url(../img/page/technique/technique_num04.webp) center/100% no-repeat;
}

.technique__item:nth-child(5)::before {
	background: url(../img/page/technique/technique_num05.webp) center/100% no-repeat;
}

.technique__item:nth-child(6)::before {
	background: url(../img/page/technique/technique_num06.webp) center/100% no-repeat;
}

.technique__item:nth-child(7)::before {
	background: url(../img/page/technique/technique_num07.webp) center/100% no-repeat;
}


/*==================================================
 meritPage
==================================================*/
.meritPageWrap .breadWrap {
	position: relative;
    top: 0;
    background: none;
}

.meritPage .ttlWrap {
	margin-top: -40px;
    padding-top: 50px;
    padding-bottom: 20px;
    background: url(../img/page/merit/ttlWrap_bg.webp) no-repeat center bottom;
    background-size: cover;
    text-align: center;
}

.meritPage .contentWrap {
	margin-top: 3%;
}

.meritPage__ttlBox {
	text-align: center;
    background: var(--color-main);
    font-size: 3em;
    margin-bottom: 3%;
    overflow: hidden;
}

.meritPage__meritTtl {
	display: inline-block;
    background: #fff;
    border: 1px solid #fff;
    color: var(--color-main);
    text-shadow: 2px 2px 0 #ff0;
    padding: 0 3em;
    line-height: 160%;
    font-weight: bold;
    position: relative;
    max-width: 80%;
}

.meritPage__meritTtl::before,
.meritPage__meritTtl::after {
	content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 4em 0.5em;
    border-color: transparent transparent #fff transparent;
    position: absolute;
}

.meritPage__meritTtl::before {
	top: -1px;
    left: -0.5em;
}

.meritPage__meritTtl::after {
	bottom: -1px;
    right: -0.5em;
    transform: scale(-1, -1);
}

.meritPage__meritWrap {
	display: flex;
	justify-content: space-between;
	margin-top: var(--gutter-narrow);
}

.meritPage__meritBox {
	width: calc((100% - 40px) / 2);
	border: solid 2px var(--color-main);
}

.meritPage__listTtl {
	font-size: clamp(1.5rem, 3vw, 2rem);
	font-weight: 500;
	color: #fff;
	background: var(--color-main);
	text-align: center;
	padding: 0.2em;
}

.meritPage__meritList {
	padding: var(--gutter-narrow)	
}

.meritPage__meritItemTtl {
	font-size: clamp(1.1em, 3vw, 1.3em);
	color: var(--color-red);
}

.meritPage__meritItemTtl--num {
	color: var(--color-black);
	margin-right: 3px;
}

.meritPage__meritItem {
	font-size: clamp(1em, 2vw, 1.2em);
	padding-left: var(--gutter-supernarrow);
}

.meritPage__meritItemTtl--ttlOnly,
.meritPage__meritItem {
	margin-bottom: var(--gutter-supernarrow);
}

/*デメリット*/
.meritPage__meritBox--demerit {
	border-color: #444;
	position: relative;
	overflow: hidden;
}

.meritPage__meritBox--demerit::before {
	content: "";
	position: absolute;
	background: url(../img/page/merit/illust_merit_01.webp) no-repeat center / contain;
	aspect-ratio: 324 / 546 ;
	width: clamp(100px, 10vw, 140px);
	bottom: -2%;
	right: 2%;
}

.meritPage__meritBox--demerit .meritPage__listTtl {
	background: #444;
}

.meritPage__meritBox--demerit .meritPage__meritItem {
	line-height: 2;
}

/*==================================================
 contactPage
==================================================*/

/*****content*****/
.contactPage .contentWrap .secTtl {
	margin: var(--gutter-narrow) 0;
}
.contactPage .contentWrap .attentionBox .text_c {
	margin-bottom: var(--gutter-narrow);
}

.contactPage h2.mainTtl.contact_entry {
	height: auto;
	padding: var(--gutter-narrow) 0;
	margin-bottom: var(--gutter-narrow);
	background: #ffe6c2;
}
.contactPage h2.mainTtl.contact_entry img {
	width: min(80%, 1140px);
	height: auto;
}
/* フォーム入力画面のみ */
.contactEntryPage .breadWrap {
	top:0;
	background:none;
}

/*==================================================
 companyPage
==================================================*/
/*****president*****/
.companyPage .presidentBox__inner{
	display:flex;
	flex-wrap: wrap;
}
.companyPage .presidentBox__inner__text{
	width:58%;
}
.companyPage .presidentBox__inner__text p{
	margin:2%;
}

.companyPage .presidentBox__inner__photo{
	width:40%;
	margin-left:2%;
}
.companyPage .presidentBox__inner__name{
	width:100%;
	margin-top:1em;
	text-align:right;
	font-weight:bold;
}
.companyPage .presidentBox__inner__name .name{
	font-size:1.2em;
}

/*****tab*****/
.companyPage .tabBox{
	margin: 3% 0;
	border-bottom:3px solid var(--color-main);
}
.companyPage .tabBox__tabList{
	display:flex;
	justify-content: center;
}
.companyPage .tabBox__tabList__item{
	width:41%;
	max-width:380px;
	margin:0 1%;
	padding:1em 0;
	background:#ccc;
	color:#999;
	font-size:1.2em;
	font-weight:bold;
	text-align: center;
	cursor:pointer;
}
.companyPage .tabBox__tabList__item.active{
	background:var(--color-main);
	color:#fff;
}
.companyPage .tabBox__tabList__item:hover{
	opacity:0.7;
}
.companyPage .sectionWrap section:not(:first-of-type){
	display:none;
}

/*****shopInfo*****/
.companyPage .shopInfoBox__shopList__item{
	/*width:49%;*/
	width:60%;
	margin: 0 auto 2%;
}
.companyPage .shopInfoBox__ttl{
	background:var(--color-main);
	color:#fff;
	font-size:1.2em;
	font-weight:bold;
	padding:1em;
	text-align:center;
}
.companyPage .shopInfoBox__imageBox{
	height:280px;
	overflow:hidden;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom:3%;
}
.companyPage .shopInfoBox__imageBox img{
	width:100%;
	height:100%;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

/***** 実績table *****/
.indexPage .recordBox__table table,
.companyPage .recordBox__table table {
	width: 100%;
	border: 2px solid var(--color-main);
}

.indexPage .recordBox__table table th,
.companyPage .recordBox__table table th {
	background-color: var(--color-main);
	color: #fff;
	border: 1px solid #ccc;
	border-bottom: 1px solid transparent;
}

.indexPage .recordBox__table table th, 
.indexPage .recordBox__table table td,
.companyPage .recordBox__table table th, 
.companyPage .recordBox__table table td {
	text-align: center;
	padding: 20px;
  font-size: 18px;
}

.indexPage .recordBox__table table td,
.companyPage .recordBox__table table td {
	border: 1px solid #ccc;
	background: #fff;
}

/*==================================================
 privacyPage
==================================================*/
.privacyPage dl dt {
	font-size: 1.2em;
	font-weight: bold;
	margin-top: 2em;
}

.privacyPage dl dd {
	margin-top: 1em;
}

.privacyPage ul {
	margin: 1em;
}

.privacyPage ul li {
	margin-bottom: 1em;
	list-style: disc outside;
}


/*==================================================
 sitemapPage
==================================================*/
.sitemapPage .contentWrap{
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.sitemapPage ul {
	width: 30%;
}

.sitemapPage ul li {
	margin: 20px 0;
}

.sitemapPage ul li dl dt {
	font-weight: normal;
}

.sitemapPage ul li dl dd {
	margin-left:2em;
	margin-top:1em;
}

.sitemapPage ul li a {
	display: block;
	padding: 20px 0 20px 20px;
	background-size: 5px auto;
	border: 1px solid #ccc;
	position: relative;
    padding-right: 20px;
}

.sitemapPage ul li a::after {
    content: "";
    width: 8px;
    height: 8px;
    display: block;
    border-top: 2px solid #ccc;
    border-right: 2px solid #ccc;
    position: absolute;
    top: 50%;
    right: 5%;
    transform: rotate(45deg) translateY(-50%);
}

.sitemapPage ul li a:hover {
	border: 1px solid #111;
}

/*
===== 予約モーダル ==========================================
*/
.yoyaku_modal_overlay {
  position: fixed;
  z-index: 1000;
  top: 0px;
  left: 0px;
  height: 100%;
  width: 100%;
  background: rgba(0, 0, 0, .5);
  display: none;
}

#yoyaku_modal {
  width: 800px;
  max-width: 90%;
  height: 65vh;
  overflow-y: scroll;
  background: #FFF;
  display: none;
  text-align: center;
  padding-bottom: 15px;
  position: fixed;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 11000;
}

#yoyaku_modal .modal_btn p {
  text-align: right;
  padding: 5px 0;
}

#yoyaku_modal .modal_btn p span {
  display: inline-block;
  padding: 5px 10px;
  background: #999;
  color: #FFF;
  margin-right: 5px;
  cursor: pointer;
}

#yoyaku_modal .modal_item {
  border: 1px solid var(--color-main);
  cursor: pointer;
  margin: 0 5px 10px;
}

#yoyaku_modal .modal_item dl {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

#yoyaku_modal .modal_item .photo {
  width: 220px;
  height: 130px;
  aspect-ratio: 220 / 130;
  overflow: hidden;
  border: 1px solid #CCC;
  margin: 10px;
  position: relative;
}

#yoyaku_modal .modal_item .photo img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

#yoyaku_modal .modal_item dd {
  width: 80%;
}

#yoyaku_modal .modal_item .ttl {
  font-size: 1.2em;
  font-weight: bold;
  padding: 5px 0;
  margin: 0 5px;
  border-bottom: 1px solid #CCC;
}

#yoyaku_modal .modal_item .data {
  margin: 10px;
  font-size: 0.9em;
  text-align: left;
}

#yoyaku_modal .modal_item .btn {
  padding: 10px 0;
  background: var(--color-main);
  color: #FFF;
  margin: 10px 20px 10px 10px;
  text-align: center;
  font-size: 1em;
  font-weight: bold;
}

#yoyaku_modal .modal_item:hover {
  opacity: 0.6;
}

#lean_overlay {
  position: fixed;
  z-index: 100;
  top: 0px;
  left: 0px;
  height: 100%;
  width: 100%;
  background: #000;
  display: none;
}

#yoyaku_modal .modal_item.kengaku {
  background: var(--color-main);
  padding: 10px;
  margin-bottom: 10px;
}

#yoyaku_modal .modal_item.kengaku .ttl {
  border: 1px solid #fff;
  margin: 0 0 10px;
  padding: 5px;
  color: #FFF;
  font-size: clamp(1.7rem, 2vw, 2rem);
}

#yoyaku_modal .modal_item.kengaku p {
  color: #fff;
  font-size: 0.9em;
}

/*==================================================
 err404Page
==================================================*/
.err404Page .preparationBox{
	margin-top:10%;
}

/*///////////////////////////////////////////////////////////

スマホ版（0px～767px）

///////////////////////////////////////////////////////////*/
@media only screen and (max-width: 767px) {
	/*==================================================
	 スマホ版 assessmentPage
	==================================================*/
	.assessmentPageWrap img{
		width:100%;
		height:auto;
    }
	.assessmentPageWrap .ttlWrap h2.mainTtl{
		margin: auto;
	}
	
	/*****strengthBox*****/
	.assessmentPage .strengthBox{
		margin-top:4%;
	}
	.assessmentPage .strengthBox__inner{
		padding:5% 0;
		margin-top:-5%;
	}
	
	.assessmentPage .strengthBox__inner__item__ttl{
		font-size:1.2em;
	}

	.strengthBox__inner__item.item03 .strengthBox__inner__item__text {
		flex-direction: column;
	}

	.assessmentPage .strengthBox__inner__item p{
		font-size:1em;
	}

	.assessmentPage .strengthBox__inner__item__methodList{
		display:block;
		position:relative;
		margin:50px 0 0;
		padding:0 2%;
	}
	.assessmentPage .strengthBox__inner__item__methodList::before{
		height:30px;
		top:-40px;
		background-position: right 5% center;
	}
	.assessmentPage .strengthBox__inner__item__methodItem{
		width:90%;
		min-width: inherit;
		margin:1em auto;
	}
	.assessmentPage .strengthBox__inner__item__methodItem p.image{
		max-width:30%;
	}
	
	.assessmentPage .strengthBox__inner__item__text p{
		text-align:left;
	}
	
	/*item04*/
	.assessmentPage .strengthBox__inner__item.item04 .strengthBox__inner__item__text{
		/*display: block;*/
		flex-direction: column;
		width:100%;
	}
	/*.assessmentPage .strengthBox__inner__item.item04 .strengthBox__inner__item__text p:nth-of-type(1){
		width:60%;
		margin-right:auto;
		margin-left:auto;
	}*/
	.assessmentPage .strengthBox__inner__item.item04 .strengthBox__inner__item__text p:nth-of-type(2){
		padding-left:0;
		padding-bottom:0;
	}

	/*****fotmTtl*****/
	.assessmentPageWrap .formTtlBox{
		padding-top:10px;
		padding-bottom:10px;
		margin-bottom:4%;
	}
	
	/*==================================================
	 スマホ版 pointPage
	==================================================*/
	.pointPage .contentWrap{
		margin-top:5%;
	}
	.pointPageWrap .ttlWrap p{
		margin:2% 5%;
		font-size:0.85em;
	}

	/*****introduction*****/
	.pointPage .introBox__pointList{
		flex-wrap: wrap;
		justify-content: center;
		margin: 0 auto 8%;
	}
	.pointPage .introBox__pointList__item,
	.pointPage .introBox__pointList__item:nth-of-type(even){
		margin-right: 2%;
		margin-bottom:2%;
		width:46%;
		max-width: 46%;
	}
	.pointPage .introBox__pointList__item a{
		flex-direction: column;
		justify-content: flex-end;
	}
	.pointPage .introBox__pointList__item img{
		width:60%;
	}
	.pointPage .introBox__pointList__item__text{
		font-size:1em;
		text-align:center;
		margin-left:0;
	}

	/*****content*****/
	.pointPage .pointBox__ttlBox{
		text-align:center;
		background:var(--color-main);
		font-size:1.4em;
		margin-bottom:3%;
	}
	.pointPage .pointBox__ttl{
		padding:0 1em;
	}
	
	.pointPage .pointBox__ttl::before,
	.pointPage .pointBox__ttl::after{
		border-width: 0 0 2em 0.5em;
		border-color: transparent transparent #fff transparent;
	}
	
	.pointPage .secTtl01{
		font-size:1em;
	}

	/*****flow*****/
	.pointPage .flowBox__inner__stepList{
		display:flex;
		justify-content:center; 
		margin:3% 0;
	}
	.pointPage .flowBox__inner__stepList li{
		font-size:1em;
		flex-direction: column;
		line-height: 100%;
	}
	.pointPage .flowBox__inner__stepList li:not(:last-of-type)::after{
		border-width: 6px 0 6px 4px;
	}

	.pointPage .flowBox__inner__itemList{
		display:block;
	}
	.pointPage .flowBox__inner__item,
	.pointPage .flowBox__inner__item:nth-of-type(3n-1){
		width:96%;
		margin-top:5%;
		margin-right:auto;
		margin-left:auto;
	}

	.pointPage .flowBox__inner__item::before{
		width:45px;
		height:45px;
		top:-0.5em;
		left:-0.5em;
	}

	.pointPage .flowBox__inner__item::after{
		border-width: 1.2em 0 1.2em 1.2em;
		border-color: transparent transparent #ccc transparent;
		top:calc(100% - 1.4em);
		left:50%;
		transform: translateX(-50%) rotate(45deg);
	}
	.pointPage .flowBox__inner__item:last-of-type::after{
		content:none;
	}
	.pointPage .flowBox__inner__item p.image{
		text-align:center;
	}

	/*****cost*****/
	.pointPage .costBox__head__com01{
		font-size:1em;
		text-align:left;
	}
	.pointPage .costBox__head__inner{
		font-size:1em;
	}
	.pointPage .costBox__headTtl{
		font-size:1em;
	}
	.pointPage .costBox__headTtl__check{
		display:inline-block;
		background:#E81733;
		color:#fff;
		margin-right:5px;
		padding:0 0.5em;
	}
	.pointPage .costBox__headList{
		flex-wrap: wrap;
	}
	.pointPage .costBox__headList li{
		width:48%;
		text-align:left;
		justify-content: flex-start;
		padding:0.5em;
		margin-bottom:1%;
	}

	.pointPage .costBox__inner{
		font-size:1em;
		padding:1em;
	}
	.pointPage .costBox__inner__item{
		margin-bottom:5%;
	}
	.pointPage .costBox__inner__item p{
		margin:1em;
	}
	.pointPage .costBox__inner__calcBox{
		padding:0.5em;
	}

	/*****tax*****/
	.pointPage .taxBox__inner .image{
		width:100%;
	}

	/*****difference*****/
	.pointPage .differenceBox__head__com01{
		font-size:1em;
	}
	.pointPage .differenceBox__head__imgList{
		display:block;
	}
	.pointPage .differenceBox__head__imgList li{
		width:96%;
		margin:3% auto;
		text-align:center;
	}

	.pointPage .differenceBox__inner table{
		font-size:0.8em;
	}
	.pointPage .differenceBox__inner table thead tr{
		display:flex;
	}
	.pointPage .differenceBox__inner table thead th{
		width:50%;
	}

	.pointPage .differenceBox__inner table tbody tr{
		display:flex;
		flex-wrap: wrap;
	}
	.pointPage .differenceBox__inner table tbody th{
		font-size:1.1em;
		background:#fff;
		width:100%;
		text-align:center;
	}
	.pointPage .differenceBox__inner table tbody td{
		width:50%;
	}
	.pointPage .differenceBox__inner table tbody td.chukai{
		border-left:none;
	}

	/*==================================================
	 スマホ版 reasonPage
	==================================================*/
	.reasonPageWrap .ttlWrap{
		padding-top:50px;
	}
	
	/*****introduction*****/
	.reasonPage .introBox__pointList__item {
		width:48%;
		margin:1%;
	}
	.reasonPage .introBox__pointList__item a{
		padding:2%;
	}
	.reasonPage .introBox__pointList__item img{
		width:18%;
		max-width:36px;
	}
	.reasonPage .introBox__pointList__item__text{
		font-size:1em;
		padding-left:0.5em;
		margin-left:0.5em;
		line-height:120%;
	}

	/*****content*****/
	.reasonPage .pointBox__ttlBox{
		font-size:1.2em;
	}
	/*****jisseki*****/
	.reasonPage .strengthBox__inner__item__text p{
		font-size:1em;
		text-align:left;
	}
	.reasonPage .supportBox__inner p{
		font-size:1em;
		text-align:left;
	}

	/*****value*****/
	.reasonPage .valueBox__inner__modelroomBox{
		flex-direction:column;
	}
	.reasonPage .valueBox__inner__modelroomBox__photo{
		width:100%;
		margin-right:0;
	}
	.reasonPage .valueBox__inner__modelroomBox__text{
		font-size:1em;
		font-weight:normal;
		padding-bottom:3%;
	}
	.reasonPage .valueBox__inner__modelroomBox__ttl{
		display:block;
		text-align:center;
		font-size:1em;
	}
	.reasonPage .valueBox__inner img{
		width:100%;
		height:auto;
	}

	/*****kaitori*****/
	.reasonPage .kaitoriBox .pointBox__ttlBox{
		margin-bottom:0;
	}

	/*staffCom*/
	.reasonPage .pointBox__inner__staffCom{
		padding-right:0;
		padding-bottom:10vw;
		background:none;
		display:block;
		min-height:auto;
	}
	.reasonPage .pointBox__inner__staffCom p,
	.pointBox__meritList{
		position: relative;
		display: block;
		font-size:1em;
		margin: 1em;
		padding: 1em;
	}
	.reasonPage .pointBox__inner__staffCom p::before,
	.pointBox__meritList::before{
		border: 10px solid transparent;
		border-top: 10px solid var(--color-waterblue);
		border-right: 10px solid var(--color-waterblue);
		top:calc(100% + 15px);
		left:calc(100% - 25vw);
	}
	.reasonPage .pointBox__inner__staffCom p::after,
	.pointBox__meritList::after {
	  content: "";
		display:block;
		width:16vw;
		height:16vw;
		background: url(../img/page/reason/reasonPage_staff01.webp) no-repeat right center;
		background-size: contain;
		position:absolute;
		right:-2vw;
		bottom:-12vw;
	}

	/*理由4*/
	.pointBox__item {
		flex-direction: column;
	}


/*==================================================
 スマホ版 purchasePage
==================================================*/
.purchasePage .purchase_catch_ttl {
	padding: 5px 10px;
	font-size: 1.2em;
}

.purchasePage .purchase__flame {
	font-size: 1em;
	flex-direction: column;
}

.purchase_catch_tx {
	order: 2;
	width: 100%;
	text-align: center;
}

.purchase_catch_img {
	order: 1;
	width: 30%;
	margin: 0 auto;
	text-align: center;
}


.purchasePage .purchaseBox__ttlBox {
	text-align: center;
	background: var(--color-main);
	font-size: 1.4em;
	margin-bottom: 3%;
}

.purchasePage .purchaseBox__ttl {
	padding: 0 1em;
	max-width: 90%;
}

.purchasePage .purchaseBox__ttl::before,
.purchasePage .purchaseBox__ttl::after {
	border-width: 0 0 5em 0.5em;
	border-color: transparent transparent #fff transparent;
}

.purchasePage .purchase_reasonList .item {
	padding: 20px;
	flex-direction: column;
}

.purchasePage .purchase_reasonList .item_info {
	margin: 0 0 20px 0;
}

.purchasePage .purchase_reasonList .item_info .ttl {
	font-size: 1.2em;
	width: 100%;
	text-align: center;
	margin-bottom: 10px;
}

.purchasePage .purchase_reasonList .item_info .ttl span {
	font-size: 1em;
	display: block;
	width: 30%;
	text-align: center;
	margin: 0 auto 5px;
	padding: 3px 0;
}

.purchasePage .purchase_reasonList .item_info .txt {
	font-size: 1em;
}

.purchasePage .item_photo {
	width: 100%;
	text-align: center;
}

.purchasePage .purchase_flowArea {
	flex-direction: column;
}

.purchasePage .purchase_flowChukai {
	width: 100%;
	margin-bottom: 10px;
}

.purchasePage .purchase_flowKaitori {
	width: 100%;
	margin: 0;
	padding-bottom: 0;
}

.purchasePage .purchase_flowChukai_ttl {
	font-size: 1.2em;
	padding: 0;
	position: relative;
	transition: .6s all;
}

.purchasePage .open .purchase_flowChukai_ttl {
	padding: 0 0 5px;
}

.purchasePage .purchase_flowChukai_ttl::after {
	display: inline-block;
	width: 7vw;
	height: 7vw;
	position: absolute;
	right: 5%;
	top: 50%;
	bottom: 50%;
	transform: translateY(-50%);
	background-color: #fff;
	color: var(--color-main);
	font-size: 1em;
	border-radius: 50%;
	line-height: 7vw;
}

.purchasePage .close .purchase_flowChukai_ttl::after {
	content: "+";
}

.purchasePage .open .purchase_flowChukai_ttl::after {
	content: "－";
}

.purchasePage .purchase_flowChukai_sp_openWrap {
	display: none;
	padding-bottom: 0;
}

.purchasePage .purchase_flowArea .step {
	padding: 0 20px 30px;
}

.purchasePage .purchase_flowArea .purchase_flowChukai .step:first-of-type,
.purchasePage .purchase_flowArea .purchase_flowKaitori .step:first-of-type {
	padding-top: 20px;
}

.purchasePage .purchase_flowArea .step_num,
.purchasePage .purchase_flowArea .step_ttl {
	font-size: 1em;
}

.purchasePage .purchase_flowArea .step_tx {
	font-size: 0.9em;
}

.purchasePage .purchase_flowArea .step_end {
	height: unset;
	padding: 20px;
}

.purchasePage .purchase_flowArea .step_end_tx {
	padding: 0;
}

.purchasePage .purchase_flowChukai .step_end {
	background: var(--color-orange) url(../img/page/purchase/img_flowChukai_end.webp) no-repeat right 0 bottom/23% auto;
	position: static;
}

.purchasePage .step_onlyKaitori_img {
	width: 90%;
}

.purchasePage .step_onlyKaitori_list {
	width: 90%;
	padding: 90px 0 20px;
}

.purchasePage .purchase_flowKaitori .step_end {
	background: var(--color-main) url(../img/page/purchase/img_flowKaitori_end.webp) no-repeat right 0 bottom/20% auto;
	position: static;
}

/*==================================================
 スマホ版 techniquePage
==================================================*/
.technique__itemWrap {
	flex-direction: column;
}

.technique__item {
	width: 100%;
	padding: 20px;
	margin-bottom: 60px;
}

.technique__item:nth-child(even) {
	margin-left: 0;
}

.technique__item::before {
	width: 27vw;
	height: 15vw;
	top: -10vw;
}

.technique__item__ttl {
	flex-direction: column;
	font-size: 1.3em;
	padding-bottom: 2%;
	line-height: 1.5;
	margin-bottom: 3%;
}

.technique__item__text {
	font-size: 1em;
}

.technique__flame {
	font-size: 1.1em;
}

.technique__flame__text {
	padding: 8% 3% 5%;
}

.technique__flame__ttl {
	font-size: 1em;
}

/*==================================================
 スマホ版　meritPage
==================================================*/

.meritPage__ttlBox {
	text-align: center;
	background: var(--color-main);
	font-size: 1.4em;
	margin-bottom: 3%;
}

.meritPage__meritTtl {
	padding: 0 1em;
	max-width: 90%;
}

.meritPage__meritTtl::before,
.meritPage__meritTtl::after {
	border-width: 0 0 5em 0.5em;
    border-color: transparent transparent #fff transparent;
}

.meritPage__meritWrap {
	flex-direction: column;
	justify-content: center;
	gap: 20px;	
}

.meritPage__meritBox {
	width: 100%;
}

/*デメリット*/
.meritPage__meritBox--demerit .meritPage__meritList {
	padding-bottom: 150px;
}

	/*==================================================
	 スマホ版 companyPage
	==================================================*/
	/*****president*****/
	.companyPage .presidentBox__inner{
		flex-direction: column-reverse;
	}
	.companyPage .presidentBox__inner__text,
	.companyPage .presidentBox__inner__photo{
		width:100%;
		margin:0 0 2%;
	}
	.companyPage .presidentBox__inner__photo{
		text-align:center;
	}
	.companyPage .presidentBox__inner__photo img{
		width:60%;
	}
	.companyPage .presidentBox__inner__name{
		order:-1;
		margin-bottom:5%;
	}
	.companyPage .presidentBox__inner__name .name{
		display: inline-block;
		text-align: right;
		margin-right: 0.8em;
	}
	
	/*****tab*****/
	.companyPage .tabBox__tabList__item{
		font-size:1em;
	}
	
	/*****shopInfo*****/
	.companyPage .shopInfoBox__shopList{
		display:block;
	}
	.companyPage .shopInfoBox__shopList__item,
	.companyPage .shopInfoBox__shopList__item:nth-of-type(even){
		width:100%;
		margin:0 0 4%;
	}
	
	.companyPage .entrytbl{
		border-bottom:1px solid #eee;
	}

	/***** 実績table *****/
	.indexPage .recordBox__tablettl,
	.companyPage .recordBox__tablettl {
		font-size: 2em;
	}

	.indexPage .recordBox__table,
	.companyPage .recordBox__table {
		overflow: scroll;
	}

	.indexPage .recordBox__table table,
	.companyPage .recordBox__table table {
		width: 700px;
	}
	
	.indexPage .recordBox__table table th, 
	.indexPage .recordBox__table table td,
	.companyPage .recordBox__table table th, 
	.companyPage .recordBox__table table td {
		padding: 10px;
		font-size: 0.8em;
	}

	/*==================================================
	 スマホ版 sitemapPage
	==================================================*/
	.sitemapPage .contentWrap{
		display: block;
	}
	.sitemapPage ul{
		width:100%;
	}

	 /*
===== 予約モーダル ==========================================
*/
	#yoyaku_modal .modal_item dl {
		display: inline-block;
		position: relative;
		padding-bottom: 60px;
		width: 100%;
	}

	#yoyaku_modal .modal_item dd {
		width: calc(100% - 115px);
		display: inline-block;
	}

	#yoyaku_modal .modal_item .ttl {
		font-size: 1.1em;
	}

	#yoyaku_modal .modal_item .data {
		margin: 5px;
	}

	#yoyaku_modal .modal_item .photo {
		display: inline-block;
		vertical-align: top;
		margin-right: 0;
		width: 100px;
		height: 80px;
	}

	#yoyaku_modal .modal_item .btn {
		position: absolute;
		left: 50%;
		bottom: 10px;
		transform: translateX(-50%);
		width: calc(100% - 20px);
		margin: 0;
		white-space: nowrap;
		font-size: 0.9em;
	}
	
	/*==================================================
	 スマホ版 err404Page
	==================================================*/
	.err404Page .preparationBox{
		margin-top:15%;
	}
}