/*===============================================================================
共通
================================================================================*/
body{
	font-family: var(--ff-g);
}
#content{
	padding-top: 0;
}
/*===============================
* タイトル
* =================================*/
.c-apt-title, 
.c-apt-title > *{
	font-family: var(--ff-g);
	font-weight: var(--fw-xl);
	font-size: clamp(1.5rem, 1.143rem + 0.95vw, 2rem);
}
.c-apt-title.--fz-sm{
	font-size: clamp(1.25rem, 1.071rem + 0.48vw, 1.5rem);
}

/*===============================
* サブタイトル：縦並び
* =================================*/
.c-apt-col-head[data-title]{
	display: flex;
	flex-direction: column;
	gap: .5rem;
}
.c-apt-col-head[data-title]::after{
	content: '-'attr(data-title)'-';
	font-weight: var(--fw-xl);
	font-size: .75rem;
	opacity: .5;
	text-transform: uppercase;
}
/*===============================
* サブタイトル：背景
* =================================*/
.c-apt-layer-head{
	position: relative;
}
.c-apt-layer-head::after{
	content: attr(data-title);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: -1;
	font-size: 3.75rem;
	line-height: var(--lh-xs);
	opacity: .05;
	text-transform: uppercase;
}

/*===============================
* ボタン
* =================================*/
.c-apt-btn{
	--c-current: var(--c-red);
	--icon-size: .5em;
	position: relative;
	display: inline-block;
	max-width: 35rem;
	width: 100%;
	padding: 0.75em calc( var(--icon-size) + 0.5em * 2 );
	text-align: center;
	border: 3px solid #A04242;
	background: var(--c-current);
	border-radius: 100vmax;
	box-shadow: 0 6px 0 #A04242;
	text-shadow: var(--shdw);
	overflow: hidden;
	font-size: clamp(1rem, 0.643rem + 0.95vw, 1.5rem);
	color: var(--c-light);
	cursor: pointer;
	transition: var(--ani-t--normal) ease-out;
}
/* アイコンも同時に色変更可能 */
.c-apt-btn:is(:focus, :hover){
	box-shadow: 0 0 0 #A04242;
	transform: translateY(6px);
}
/*アイコン*/
.c-apt-btn svg{
	position: absolute;
	top: 50%;
	right: 1em;
	transform: translate(0, -50%);
	width: var(--icon-size);
	transition: var(--ani-t--normal) ease-out;
}
.c-arrowBtn:is(:focus, :hover) svg{
	right: calc( 1em + .25em );
}


/*===============================================================================
MV
================================================================================*/
.apt-mv{
	margin-bottom: var(--g-sec--md);
}
.apt-mv-cover{
	--cont-layer: 5;
	position: relative;
	padding-top: var(--g-sec--md);
}
/* 背景画像 */
.apt-mv-cover__bgi{
	position: absolute;
	top: 0;
	left: calc( 50% - 50vw );
	z-index: -1;
	max-width: 100vw;
	width: 100vw;
	height: 100%;
	z-index: calc( var(--cont-layer) - 2 );
}
.apt-mv-cover__bgi img{
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: 50% 50%;
}

/* コンテンツエリア */
.apt-mv-cover__container{
	position: relative;
	z-index: var(--cont-layer);
}

/*===============================
* コンテンツ
* =================================*/
.apt-mv-cover__content{
	position: relative;
	z-index: 1;
	max-width: var(--width-xs);
	margin-bottom: var(--g-sec--xs);
	padding-top: 3rem;
	padding-bottom: clamp(1rem, -0.429rem + 3.81vw, 3rem);
	padding-left: clamp(1rem, -0.429rem + 3.81vw, 3rem);
	padding-right: clamp(1rem, -0.429rem + 3.81vw, 3rem);
	border-radius: var(--bd-r--lg);
	outline: 2px solid var(--c-gray);
	outline-offset: -.5rem;
	font-weight: var(--fw-xl);
}
/* 背景画像 */
.apt-mv-cover__board{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: -5;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: 50% 50%;
	border-radius: var(--bd-r--lg);
}
/* タイトル */
.apt-mv-cover__title{
	position: relative;
	margin-bottom: .75rem;
	font-size: clamp(1.5rem, 1.321rem + 0.48vw, 1.75rem);
}
.apt-mv-cover__title strong{
	margin-right: .5rem;
	text-shadow: 2px 4px 0px var(--c-gray);
	font-size: clamp(2.25rem, 2.071rem + 0.48vw, 2.5rem);
	color: var(--c-red);
}
/* 吹き出し */
.apt-mv-cover__hukidasi{
	--triangle-w: .75rem;
	--triangle-h: .75rem;
	--triangle-c: var(--c-main);
	--bd-w: 3px;
	position: absolute;
	bottom: 100%;
	left: 0;
    transform: translate(0%, -40%);
	width: fit-content;
	padding: .25rem 1.5rem;
	text-align: center;
	border-radius: 100vmax;
	background-color: var(--triangle-c);
	color: var(--c-light);
	font-size: 1.5rem;
	font-weight: var(--fw-lg);
}
.apt-mv-cover__hukidasi::after {
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translate(-50%, 0%);
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: calc( var(--triangle-h) - var(--bd-w) ) calc( var(--triangle-w) - var(--bd-w) ) 0 calc( var(--triangle-w) - var(--bd-w) );
	border-color: var(--triangle-c) transparent transparent transparent;
}
.apt-mv-cover__note{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-bottom: 1.5rem;
	font-size: clamp(1.25rem, 1.071rem + 0.48vw, 1.5rem);
	color: var(--c-main);
	text-decoration: underline;
}
@media (min-width: 960px){
	.apt-mv-cover__note{
		justify-content: flex-start;
	}
}
.apt-mv-cover__voices{
	margin-bottom: 1.5rem;
	line-height: var(--lh-xl);
	font-size: clamp(1rem, 0.821rem + 0.48vw, 1.25rem);
}
.apt-mv-cover__soudan{
	margin-bottom: 1.5rem;
	padding-right: clamp(4.5rem, 3.607rem + 2.38vw, 5.75rem);
	font-size: clamp(1.25rem, 1.071rem + 0.48vw, 1.5rem);
}
.apt-mv-cover__soudan strong{
	font-size: clamp(1.5rem, 1.321rem + 0.48vw, 1.75rem);
	color: var(--c-red);
}
/* 似顔絵 */
.apt-mv-cover__chara{
	position: absolute;
	bottom: 0;
	right: clamp(1rem, -0.429rem + 3.81vw, 3rem);
	width: clamp(4.5rem, 3.607rem + 2.38vw, 5.75rem);
}

/*===============================
* CTA
* =================================*/
.apt-mv-cover__cta{
	position: relative;
	padding: var(--g-sec--sm) 0;
	text-align: center;
}
.apt-mv-cover__cta-bgi{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: -1;
	max-width: 100vw;
	width: 100vw;
	height: 100%;
}
.apt-mv-cover__cta-bgi img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}



/*===============================================================================
ACHIEVEMENT
================================================================================*/
.apt-archive__head, 
.apt-archive__body, 
.apt-archive__foot{
	margin-bottom: var(--g-sec--sm);
}
.apt-archive__head{
	text-align: center;
}
/*===============================
* スライド
* =================================*/
.apt-archive__wrapper{
	transition-timing-function: linear;
}
.apt-archive__swiper{
	max-width: var(--container_size);
	margin-inline: auto;
}
.apt-archive__picture-wrap{
	position: relative;
	margin-bottom: 1rem;
	padding: 2rem 1.25rem;
}
.apt-archive__picture-wrap a{
	display: block;
	transition: var(--ani-t--normal) ease-out;
}
.apt-archive__picture-wrap a:is(:hover, :focus){
	opacity: .7;
}
.apt-archive__picture{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 50%;
}
.apt-archive__picture-bgi{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: -1;
	width: 100%;
	height: 100%;
}

.apt-archive__desc{
	text-align: center;
	font-weight: var(--fw-xl);
	font-size: 1.25rem;
}

@media (min-width: 960px){
	.apt-archive__wrapper{
		--count: 4;
		--gap: 1.75rem;
		display: flex;
		flex-wrap: wrap;
		gap: var(--gap);
	}
	.apt-archive__slide{
		width: calc( ( 100% - var(--gap) * (var(--count) - 1) ) / var(--count) );
	}
	.apt-archive__slide:nth-of-type(n+5){
		display: none;
	}
}
.apt-archive__foot{
	text-align: center;
	line-height: var(--lh-xl);
	font-weight: var(--fw-lg);
}


/*===============================================================================
gVoice
================================================================================*/
.apt-gvoice__inner{
	position: relative;
	padding: var(--g-sec--sm) 0;
}
/* 背景画像 */
.gvoice__bgi{
	position: absolute;
	top: 0;
	left: calc( 50% - 50vw );
	z-index: -1;
	max-width: 100vw;
	width: 100vw;
	height: 100%;
}
.gvoice__bgi > *{
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 50%;
}

.gvoice__head{
	margin-bottom: var(--g-sec--xs);
	text-align: center;
}
.gvoice__title{
	margin-bottom: var(--g-sec--xs);
}
.gvoice__message{
	line-height: var(--lh-xl);
}

/*===============================
* swiper
* =================================*/
.gvoice__swiper{
	max-width: var(--container_size);
	margin-inline: auto;
}
.gvoice__picture{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 50%;
}
/*===============================
* ナビゲーション
* =================================*/
/* Swiperデフォルトの矢印アイコンを非表示にする */
.gvoice__button::after {
	content: none;
	display: none;
}
.gvoice__button{
	--pos-x: 3%;
	--btn-size: clamp(2rem, 1.643rem + 0.95vw, 2.5rem);
	display: flex;
	justify-content: center;
	align-items: center;
	width: var(--btn-size);
	height: var(--btn-size);
	padding: 0;
	background: var(--c-yellow);
	border-radius: 100vmax;
	overflow: hidden;
}
@media (min-width: 600px){
	.gvoice__button{
		--pos-x: 26%;
	}
}
@media (min-width: 960px){
	.gvoice__button{
		--pos-x: 31%;
	}
}
.gvoice__button.--prev {
	transform: translateY(-50%) rotate(180deg);
}
:is(.gvoice__button.--prev,.gvoice__button.--next) svg{
	width: calc( var(--btn-size) / 4 );
}
.gvoice__button.--prev {
	left: var(--pos-x);
}
.gvoice__button.--next {
	right: var(--pos-x);
}


/*===============================================================================
TROUBLE
================================================================================*/
.apt-trouble__inner{
	position: relative;
	padding: var(--g-sec--md) 0;
}

/* 背景色 */
.apt-trouble__inner::before{
	position: absolute;
	top: 0;
	left: calc( 50% - 50vw );
	z-index: -1;
	content: "";
	max-width: 100vw;
	width: 100vw;
	height: 100%;
	background: var(--c-main);
}

/*===============================
* ヘッド
* =================================*/
.apt-trouble__head{
	margin-bottom: var(--g-sec--xs);
	text-align: center;
	color: var(--c-light);
}
.apt-trouble__title{
	position: relative;
	display: flex;
	justify-content: center;
	align-items: baseline;
	gap: .5rem;
}
.apt-trouble__title strong{
	font-weight: inherit;
	font-size: clamp(1.75rem, 1.214rem + 1.43vw, 2.5rem);
	color: var(--c-yellow);
}
.apt-trouble__title-icon{
	position: absolute;
	bottom: 100%;
	left: 50%;
	transform: translate(-50%, 50%);
	z-index: 1;
	width: clamp(1rem, 0.643rem + 0.95vw, 1.5rem);
	aspect-ratio: 12 / 15;
}

/*===============================
* ボディ
* =================================*/
.apt-trouble__body{
	margin-bottom: var(--g-sec--xs);
}
.apt-trouble__list{
	--count: 1;
	--gap: 1.25rem;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: var(--gap);
	max-width: var(--width-xs);
	margin-inline: auto;
	font-weight: var(--fw-lg);
	color: var(--c-light);
}
@media (min-width: 960px){
	.apt-trouble__list{
		--count: 2;
	}
}
.apt-trouble__list li{
	display: flex;
	flex-direction: column;
	align-items: center;
	max-width: 25rem;
	width: calc( ( 100% - var(--gap) * (var(--count) - 1) ) / var(--count) );
	padding: 1.25rem 1.125rem;
	background: rgba(255, 255, 255, 0.2);
	border-radius: var(--bd-r--sm);
	overflow: hidden;
}
.apt-trouble__list strong{
	color: var(--c-yellow);
}

/*===============================
* 矢印アイコン
* =================================*/
.apt-trouble__arrow{
	display: block;
	margin-inline: auto;
	margin-bottom: var(--g-sec--xs);
	width: 1.5rem;
	aspect-ratio: 6 / 7;
}

/*===============================
* 詳細
* =================================*/
.apt-trouble-detail{
	position: relative;
	padding: var(--g-sec--xs) 1.25rem;
	background: var(--c-light);
	border-radius: var(--bd-r--lg);
	outline: 2px solid var(--c-gray);
	outline-offset: -.5rem;
}
.apt-trouble-detail__inner{
	max-width: 1040px;
	margin-inline: auto;
}
.apt-trouble-detail__head{
	margin-bottom: var(--g-sec--xs);
	padding-bottom: var(--g-sec--xs);
	text-align: center;
	border-bottom: 2px dashed var(--c-gray);
}
.apt-trouble-detail__accent{
	--this-color: var(--c-red);
	display: inline-block;
	background-position: top left;
	background-repeat: repeat-x;
	background-size: 1em .5em;
	background-image: radial-gradient(0.15em 0.15em at center center, var(--this-color), var(--this-color) 100%, transparent, transparent);
	padding-top: .5em;
}
/* イラスト */
.apt-trouble-detail__illust{
	position: absolute;
	bottom: 100%;
	width: clamp(5rem, 3.214rem + 4.76vw, 7.5rem);
	aspect-ratio: 3 / 4;
}
.apt-trouble-detail__illust.--left{
	left: 0;
}
.apt-trouble-detail__illust.--right{
	right: 0;
}

/*===============================
* メディアテキスト
* =================================*/
.apt-trouble-mediaText{
	--count: 1;
	--gap: 1.25rem;
	--media-width: 100%;
	--body-width: calc( 200% - var(--media-width) );
	display: flex;
	flex-wrap: wrap;
	gap: var(--gap);
}
@media (min-width: 768px){
	.apt-trouble-mediaText{
		--count: 2;
		--media-width: 96%;
	}
}
/* 画像 */
.apt-trouble-mediaText__media{
	width: calc( ( var(--media-width) - var(--gap) * (var(--count) - 1) ) / var(--count) );
}
.apt-trouble-mediaText__media img{
	width: 100%;
}
/* テキストエリア */
.apt-trouble-mediaText__body{
	width: calc( ( var(--body-width) - var(--gap) * (var(--count) - 1) ) / var(--count) );
}
.apt-trouble-mediaText__group:not(:last-of-type){
	margin-bottom: 1.25rem;
}
.apt-trouble-mediaText__text{
	line-height: var(--lh-xl);
}
.apt-trouble-mediaText__text strong{
	color: var(--c-red);
}

/*===============================================================================
まず相談してください
================================================================================*/
.apt-mazusoudan{
	margin-bottom: var(--g-sec--md);
	padding-bottom: var(--g-sec--md);
	border-bottom: 2px dashed var(--c-gray);
}
.apt-mazusoudan__inner{
	position: relative;
}
@media (min-width: 960px){
	.apt-mazusoudan__inner{
		padding-top: var(--g-sec--md);
	}
}
.apt-mazusoudan__decor{
	position: absolute;
	top: calc( var(--g-sec--md) * -1.5 );
	left: calc( 50% - 50vw );
	z-index: -2;
	width: 22%;
}
@media (min-width: 960px){
	.apt-mazusoudan__decor{
		top: calc( var(--g-sec--md) * -1 );
	}
}
.apt-mazusoudan__mediaText{
	--count: 1;
	--gap: 1.25rem;
	--media-width: 100%;
	--body-width: calc( 200% - var(--media-width) );
	display: flex;
	align-items: flex-end;
	flex-direction: column;
	flex-wrap: wrap;
	gap: var(--g-sec--sm) var(--gap);
}
@media (min-width: 960px){
	.apt-mazusoudan__mediaText{
		--count: 2;
		--media-width: 96%;
		flex-direction: row-reverse;
	}
}
/* テキストエリア */
.apt-mazusoudan__contents{
	position: relative;
	width: calc( ( var(--body-width) - var(--gap) * (var(--count) - 1) ) / var(--count) );
}
@media (min-width: 960px){
	.apt-mazusoudan__contents{
		position: static;
	}
}
.apt-mazusoudan__head{
	margin-bottom: var(--g-sec--xs);
}
.apt-mazusoudan__group:not(:last-of-type){
	margin-bottom: 1.25rem;
}
.apt-mazusoudan__text{
	line-height: var(--lh-xl);
}
.apt-mazusoudan__text strong{
	color: var(--c-red);
}
/* 画像 */
.apt-mazusoudan__media{
	width: calc( ( var(--media-width) - var(--gap) * (var(--count) - 1) ) / var(--count) );
}
.apt-mazusoudan__media img{
	position: relative;
	left: calc( 50% - 50vw );
	display: block;
	max-width: 100vw;
	width: 100vw;
	height: 100%;
	aspect-ratio: 39 / 18;
	object-fit: cover;
	object-position: 50% 50%;
}
@media (min-width: 960px){
	.apt-mazusoudan__media img{
		position: static;
		width: 100%;
		aspect-ratio: 560 / 1034;
	}
}



/*===============================================================================
VOICE
================================================================================*/
.apt-voice{
	margin-bottom: var(--g-sec--md);
}
.apt-voice__head{
	margin-bottom: var(--g-sec--xs);
	text-align: center;
}
.apt-voice__body{
	margin-bottom: var(--g-sec--xs);
}
.apt-voice__cards{
	--count: 1;
	--gap: 1.75rem;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: var(--gap);
	max-width: var(--width-sm);
	margin-inline: auto;
}
@media (min-width: 600px){
	.apt-voice__cards{
		--count: 2;
	}
}
@media (min-width: 960px){
	.apt-voice__cards{
		--count: 3;
	}
}
.apt-voice__card{
	position: relative;
	width: calc( ( 100% - var(--gap) * (var(--count) - 1) ) / var(--count) );
	padding: 1.5rem;
	border-radius: var(--bd-r--md);
	outline: 2px solid var(--c-light);
	outline-offset: -.5rem;
}
.apt-voice__card-bgi{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: -1;
	width: 100%;
	height: 100%;
}
.apt-voice__illust{
	width: clamp(5rem, 4.286rem + 1.9vw, 6rem);
	margin-inline: auto;
	margin-bottom: 1rem;
}
.apt-voice__review{
	line-height: var(--lh-xl);
	font-weight: var(--fw-lg);
}

.apt-voice__foot{
	text-align: center;
}


/*===============================================================================
BENEFIT
================================================================================*/
.apt-benefit{
	margin-bottom: var(--g-sec--md);
}
.apt-benefit__inner{
	position: relative;
	padding: var(--g-sec--md) 0;
}
.apt-benefit__head{
	margin-bottom: var(--g-sec--xs);
	text-align: center;
}
.apt-benefit__mediaTexts:not(:last-of-type){
	margin-bottom: var(--g-sec--sm);
}
/*===============================
* メディアテキスト
* =================================*/
.apt-benefit__mediaText:not(:last-of-type){
	margin-bottom: var(--g-sec--sm);
}
.apt-benefit__mediaText{
	--count: 1;
	--gap: var(--g-sec--sm);
	--media-width: 100%;
	--body-width: calc( 200% - var(--media-width) );
	display: flex;
	flex-wrap: wrap;
	gap: 1.25rem var(--gap);
}
@media (min-width: 768px){
	.apt-benefit__mediaText{
		--count: 2;
	}
	.apt-benefit__mediaText:nth-of-type(odd){
		flex-direction: row-reverse;
	}
}
/* メディアエリア */
.apt-benefit__mediaText-media{
	width: calc( ( var(--media-width) - var(--gap) * (var(--count) - 1) ) / var(--count) );
	text-align: center;
}
/* コンテンツエリア */
.apt-benefit__mediaText-contents{
	width: calc( ( var(--body-width) - var(--gap) * (var(--count) - 1) ) / var(--count) );
}
/* ヘッド */
.apt-benefit__mediaText-head{
	display: flex;
	align-items: center;
	gap: 1.25rem .75rem;
	margin-bottom: 1.25rem;
	padding-bottom: 1.25rem;
	border-bottom: 2px dashed var(--c-gray);
}
@media (min-width: 768px){
	.apt-benefit__mediaText-head{
		flex-direction: column;
		align-items: flex-start;
	}

}
/* ナンバー */
.apt-benefit__mediaText-number{
	line-height: var(--lh-xs);
	font-weight: var(--fw-lg);
	font-size: clamp(2.5rem, 1.429rem + 2.86vw, 4rem);
	color: var(--c-yellow);
}
/* ボディ */
.apt-benefit__mediaText-body{
	line-height: var(--lh-xl);
}
.apt-benefit__mediaText-body strong{
	font-weight: var(--fw-lg);
	color: var(--c-red);
}
/* 背景画像 */
.apt-benefit__card-bgi{
	position: absolute;
	top: 0;
	left: calc( 50% - 50vw );
	z-index: -1;
	max-width: 100vw;
	width: 100vw;
	height: 100%;
}



/*===============================================================================
REASON
================================================================================*/
.apt-reason{
	margin-bottom: var(--g-sec--md);
}
/*===============================
* ヘッド
* =================================*/
.apt-reason__head{
	margin-bottom: var(--g-sec--xs);
	text-align: center;
}
.apt-reason__title strong{
	font-size: clamp(1.5rem, 0.786rem + 1.9vw, 2.5rem);
	color: var(--c-red);
}

/*===============================
* ボディ
* =================================*/
.apt-reason__body{
	margin-bottom: var(--g-sec--sm);
}
.apt-reason__cards{
	--count: 1;
	--gap: 1.75rem;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: var(--gap);
}
@media (min-width: 600px){
	.apt-reason__cards{
		--count: 2;
	}
}
@media (min-width: 768px){
	.apt-reason__cards{
		--count: 3;
	}
}
.apt-reason__card{
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: calc( ( 100% - var(--gap) * (var(--count) - 1) ) / var(--count) );
	max-width: 23rem;
	margin-inline: auto;
	margin-top: 1rem;
	padding: var(--g-sec--xs) .5rem 1.75rem;
	border-radius: var(--bd-r--sm);
	background: var(--c-light);
	box-shadow: 0px 0px 0px 2px var(--c-gray);
}
@media (min-width: 600px){
	.apt-reason__card{
		max-width: 100%;
		margin-inline: 0;
	}
}
.apt-reason__hukidasi{
	--triangle-w: .75rem;
	--triangle-h: .75rem;
	--triangle-c: var(--c-red);
	--bd-w: 3px;
	position: absolute;
	top: 0%;
	left: 50%;
	transform: translate(-50%, -50%);
	max-width: 12.25rem;
	width: 100%;
	padding: .25rem 1.5rem;
	text-align: center;
	border-radius: 100vmax;
	background-color: var(--triangle-c);
	color: var(--c-light);
	font-weight: var(--fw-lg);
}
.apt-reason__hukidasi::after {
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translate(-50%, 0%);
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: calc( var(--triangle-h) - var(--bd-w) ) calc( var(--triangle-w) - var(--bd-w) ) 0 calc( var(--triangle-w) - var(--bd-w) );
	border-color: var(--triangle-c) transparent transparent transparent;
}
.apt-reason__contents{
	margin-bottom: 1.75rem;
	text-align: center;
	font-weight: var(--fw-xl);
}
.apt-reason__illust{
	display: block;
	width: 12.5rem;
	margin-inline: auto;
}

/*===============================
* フット
* =================================*/
.apt-reason-message{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	flex-wrap: wrap;
	gap: 0 var(--g-sec--xs);
	max-width: var(--width-xs);
	margin-inline: auto;
	margin-bottom: var(--g-sec--md);
}
@media (min-width: 768px){
	.apt-reason-message{
		flex-direction: row;
		align-items: flex-end;
	}
}
.apt-reason-message__illust{
	width: clamp(4rem, 2.571rem + 3.81vw, 6rem); 
}
.apt-reason-message__contents{
	display: flex;
	align-items: center;
	flex-grow: 1;
}
/* 吹き出し：三角アイコン */
.apt-reason-message__icon{
	display: none;
}
@media (min-width: 768px){
	.apt-reason-message__icon{
		display: block;
		transform: translateY(120%);
	}
}
/* 吹き出し：テキストエリア */
.apt-reason-message__text-area{
	position: relative;
	width: 100%;
	padding: clamp(1.25rem, 0.357rem + 2.38vw, 2.5rem);
}
.apt-reason-message__text-groups{
	max-width: 29rem;
	margin-inline: auto;
}
.apt-reason-message__text-group:not(:last-of-type){
	margin-bottom: 1rem;
}
.apt-reason-message__text-group span{
	color: var(--c-red);
	font-weight: var(--fw-lg);
}
/* 吹き出し内の背景画像 */
.apt-reason-message__bgi{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: -1;
	width: 100%;
	height: 100%;
	border-radius: var(--bd-r--sm);
	overflow: hidden;
}
.apt-reason-message__bgi > *{
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 50%;
}
/* 区切り用画像 */
.apt-reason__separate{
	position: relative;
	left: calc( 50% - 50vw );
	width: 100vw;
	max-width: var(--width-sm);
	margin-inline: auto;
}
@media (min-width: 960px){
	.apt-reason__separate{
		left: 0;
		width: 100%;
	}
}
.apt-reason__separate img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}



/*===============================================================================
リフォームを成功させる
================================================================================*/
.apt-seikou{
	margin-bottom: var(--g-sec--md);
}
.apt-seikou__head{
	margin-bottom: var(--g-sec--xs);
	text-align: center;
}
.apt-seikou__body{
	max-width: fit-content;
	margin-inline: auto;
}
.apt-seikou__textArea:not(:last-of-type){
	margin-bottom: 1.25rem;
}
.apt-seikou__textArea strong{
	color: var(--c-red);
	font-weight: var(--fw-lg);
}



/*===============================================================================
相談だけで
================================================================================*/
.apt-soudandake{
	margin-bottom: var(--g-sec--md);
}

/*===============================
* メイン
* =================================*/
.apt-soudandake-main{
	position: relative;
	z-index: 1;
	padding: var(--g-sec--md) 0 var(--g-sec--lg);
}
.apt-soudandake-main__inner{
	max-width: 27.5rem;
}
.apt-soudandake-main__head{
	margin-bottom: var(--g-sec--xs);
}
.apt-soudandake-main__title{
	color: #618BBA;
}
.apt-soudandake-main__body{
	margin-bottom: 1.5rem;
	line-height: var(--lh-xl);
	font-size: clamp(0.8rem, 0.657rem + 0.38vw, 1rem);
}
.apt-soudandake-main__foot{
	line-height: var(--lh-xl);
}
.apt-soudandake-main__foot p:not(:last-of-type){
	margin-bottom: .5rem;
}
.apt-soudandake-main__foot p{
	max-width: fit-content;
	padding: 0 1rem;
	background: #618BBA;
	font-size: clamp(0.8rem, 0.657rem + 0.38vw, 1rem);
	color: var(--c-light);
}
.apt-soudandake-main__bgi{
	position: absolute;
	top: 0;
	left: calc( 50% - 50vw );
	z-index: -1;
	content: "";
	max-width: 100vw;
	width: 100vw;
	height: 100%;
	opacity: .8;
}
.apt-soudandake-main__bgi img{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 67% 50%;
}

/*===============================
* CTA
* =================================*/
.apt-soudandake-cta{
	position: relative;
	margin-top: calc( var(--g-sec--xs) * -1 );
	margin-bottom: var(--g-sec--md);
	padding: var(--g-sec--md) 0;
	text-align: center;
}
.apt-soudandake-cta__head{
	margin-bottom: var(--g-sec--xs);
}
.apt-soudandake-cta__comment{
	position: relative;
	max-width: fit-content;
	margin-inline: auto;
	margin-bottom: 1.5rem;
}
.apt-soudandake-cta__comment::before,
.apt-soudandake-cta__comment::after{
	--posi-x: 104%;
	--rotate: 30deg;
	content: "";
	position: absolute;
	bottom: 0;
	width: 2px;
	height: 2.25rem;
	background: var(--c-dark);
}
.apt-soudandake-cta__comment::before{
	right: var(--posi-x);
	transform: rotate( calc( var(--rotate) * -1 ) );
}
.apt-soudandake-cta__comment::after{
	left: var(--posi-x);
	transform: rotate(var(--rotate));
}
.apt-soudandake-cta__bgi{
	position: absolute;
	top: 0;
	left: calc( 50% - 50vw );
	z-index: -1;
	max-width: 100vw;
	width: 100vw;
	height: 100%;
}
.apt-soudandake-cta__bgi img{
	width: 100%;
	height: 100%;
}

/*===============================
* other
* =================================*/
.apt-soudandake-other__head{
	margin-bottom: var(--g-sec--xs);
}
.apt-soudandake-other__title{
	text-align: center;
}
.apt-soudandake-other__body{
	margin-bottom: var(--g-sec--sm);
	text-align: center;
}
.apt-soudandake-other__text-area:not(:last-of-type){
	margin-bottom: 1.25rem;
}

.apt-soudandake-other__wrapper{
	transition-timing-function: linear;
}



/*===============================================================================
MESSAGE
================================================================================*/
.apt-message-main{
	position: relative;
	padding: var(--g-sec--md) 0;
}
/* 背景画像 */
.apt-message-main__bgi{
	position: absolute;
	top: 0;
	left: calc( 50% - 50vw );
	z-index: -2;
	max-width: 100vw;
	width: 100vw;
	height: 100%;
}
.apt-message-main__bgi img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
/* 背景イラスト */
.apt-message-main__illust{
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
	max-width: 190vw;
	width: 190vw;
}
@media (min-width: 600px){
	.apt-message-main__illust{
		max-width: 100vw;
		width: 100vw;
	}
}
.apt-message-main__illust img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.apt-message-main__head{
	margin-bottom: var(--g-sec--xs);
	text-align: center;
}
.apt-message-main__body{
	margin-bottom: var(--g-sec--md);
}
.apt-message-main__groups{
	max-width: fit-content;
	margin-inline: auto;
}
.apt-message-main__group:not(:last-of-type){
	margin-bottom: 1.25rem;
}
.apt-message-main__group strong{
	color: var(--c-red);
}

/*===============================
* CTA
* =================================*/
.apt-message-main__comment{
	position: relative;
	max-width: fit-content;
	margin-inline: auto;
	margin-bottom: 1.5rem;
	text-align: center;
	font-weight: var(--fw-lg);
}
.apt-message-main__comment::before,
.apt-message-main__comment::after{
	--posi-x: 104%;
	--rotate: 30deg;
	content: "";
	position: absolute;
	bottom: 0;
	width: 2px;
	height: 2.25rem;
	background: var(--c-dark);
}
.apt-message-main__comment::before{
	right: var(--posi-x);
	transform: rotate( calc( var(--rotate) * -1 ) );
}
.apt-message-main__comment::after{
	left: var(--posi-x);
	transform: rotate(var(--rotate));
}
.apt-message-main__btn{
	text-align: center;
}
/*===============================
* カバー
* =================================*/
.apt-message-cover{
	position: relative;
	padding: var(--g-sec--md) 0;
}
.apt-message-cover__bgi{
	position: absolute;
	top: 0;
	left: calc( 50% - 50vw );
	z-index: -1;
	max-width: 100vw;
	width: 100vw;
	height: 100%;
	object-fit: cover;
}
.apt-message-cover__bgc{
	--icon-size: clamp(5rem, 4.286rem + 1.9vw, 6rem);
	position: relative;
	max-width: var(--width-xs);
	margin-top: calc( var(--icon-size) / 2 );
	margin-inline: auto;
	padding-top: calc( var(--icon-size) / 2 + 1.25rem );
	padding-bottom: var(--g-sec--sm);
	padding-right: 1.5rem;
	padding-left: 1.5rem;
	background: var(--c-light);
	border-radius: var(--bd-r--lg);
}
.apt-message-cover__illust{
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, -50%);
	display: flex;
	justify-content: center;
	align-items: flex-end;
	width: var(--icon-size);
	aspect-ratio: 1;
	background: var(--c-light);
	border-radius: 50%;
}
.apt-message-cover__illust img{
	width: 60%;
}
.apt-message-cover__text-group:not(:last-of-type){
	margin-bottom: 1.25rem;
}
.apt-message-cover__text-group{
	text-align: center;
}



/*===============================================================================
COMPANY
================================================================================*/
.apt-company__inner{
	max-width: var(--width-sm);
	margin-inline: auto;
}
.apt-company__head{
	margin-bottom: var(--g-sec--xs);
	text-align: center;
}
.apt-company__table{
	display: block;
	margin-bottom: var(--g-sec--xs);
}
/* table */
.apt-company__table table{
	width: 100%;
}
/* tr */
.apt-company__table tr{
	display: flex;
	flex-direction: column;
	gap: .5rem var(--g-sec--sm);
}
@media (min-width: 600px){
	.apt-company__table tr{
		flex-direction: row;
	}
}
.apt-company__table tr:first-of-type{
	border-top: 1px solid var(--c-gray);
}
.apt-company__table tr{
	padding: clamp(1.25rem, 0.893rem + 0.95vw, 1.75rem) clamp(0rem, -1.25rem + 3.33vw, 1.75rem);
	border-bottom: 1px solid var(--c-gray);
}
/* td */
.apt-company__table td:first-of-type{
	display: flex;
	align-items: center;
	gap: .5em;
	width: 8em;
	min-width: 8em;
	font-weight: var(--fw-lg);
}
.apt-company__table td:first-of-type::before{
	content: "";
	width: .5em;
	min-width: .5em;
	aspect-ratio: 1;
	background: var(--c-red);
	border-radius: 50%;
}
.apt-company__table td:nth-of-type(2){
	padding-left: 1em;
}
.apt-company__map img{
	width: 100%;
}


