@charset "UTF-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=Aoboshi+One&family=Google+Sans:ital,opsz,wght@0,17..18,400..700;1,17..18,400..700&family=Ibarra+Real+Nova:ital,wght@0,400..700;1,400..700&family=Zen+Kaku+Gothic+New&display=swap');

.pageCornerroom .cornerroom {
    padding: 0;
	font-family: 'YakuHanMP','Noto Serif JP', serif;
}
h3, h4 { font-weight: normal;}


.copy {
        color: #004683;
        font-size: clamp(13px, 6.2cqw, 66px);
        text-align: center;
        line-height: 1.3;
}
#sec01 {
	background-image:url("../../images/corner_room/sky.webp");
	background-position: top center;
	background-size: cover;
	position: relative;
}
#sec01 h3 {
    font-size: clamp(13px, 5.2cqw, 66px);
    letter-spacing: 0.1em;
    text-align: center;
    padding: 0.6em 0;
    line-height: 1.3;
    color: #fff000;
}
#sec01 h4 {
    background-color: #fff;
    border: #fff000 solid 3px;
    text-align: center;
    color: #004683;
    font-size: clamp(18px, 2.8cqw, 28px);
    position: relative;
}
#sec01 h4 span {
    position: absolute;
    display: block;
    background-color: #fff000;
    width: 5em;
    height: 100%;
    line-height: 1;
}
#sec01 h4 span i {
    font-style: normal;
    font-size: 130%;
    display: inline-block;
    position: relative;
    top: 0.1em;
    margin-left: 0.2em;
}	
#sec01 p {
    font-size: clamp(13px, 2cqw, 21px);
    text-align: center;
    padding: 0.5em 0 1.5em;
	color: #fff;
}	
	
#sec01 .flex {
	gap: 20px 0;
	max-width: 100%;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#sec01 .flex .itemBox {
	width: 49%;
	background-color: rgba(255,255,255,0.8);
	container-type: inline-size;
	padding-bottom: 6px;
}
#sec01 .flex .itemBox h4 {
	background: #8E2237;
background: linear-gradient(270deg, rgba(142, 34, 55, 1) 0%, rgba(26, 0, 0, 1) 100%);
	color: #fff;
	text-align: center;
	padding: 0.2em;
	font-size: 3.6cqw;
}
#sec01 .flex .itemBox dl {
	text-align: center;
	
}
#sec01 .flex .itemBox dt {
	font-size: 3.6cqw;
	font-size: clamp(16px, 3.6cqw, 24px);
	line-height: 1.3;
	padding: 0.5em 0 0;
	color: #a30000;
}
#sec01 .flex .itemBox dd {
	padding: 1em;
	font-size: 2.8cqw;
	font-size: clamp(13px, 2.8cqw, 18px);
	line-height: 1.4;
}
#sec01 .h3-02 {
	font-size: 32px;
	line-height: 1.3;
	background-color: #004683;
	color: #fff;
	text-align: center;
	padding: 0.3em;
	margin-top: 5%;
}
#sec01 .flex02 {
	padding-top: 15px;
	align-items: center;
	padding-bottom: 30px;
}
#sec01 .flex02 .imgL {
	width: 21%;
}
#sec01 .flex02 .txtBox {
	width: 55%;
	container-type: inline-size;
	margin-left: 10%;
	margin-top: 30px;
	margin-bottom: 30px;
}
#sec01 .flex02 .txtBox dl {
	background-color: rgba(255,255,255,0.8);
	padding: 20px;
	margin-bottom: 20px;
}
#sec01 .flex02 .txtBox dt {
	text-align: center;
	color: #004683;
	font-size: 2.8cqw;
	font-size: clamp(16px, 2.8cqw, 28px);
	line-height: 1.2;
}
#sec01 .flex02 .txtBox dt span {
	display: block;
	font-size: 65%;
}
#sec01 .flex02 .txtBox dt span i {
	font-style: normal;
	font-size: 160%;
	margin-right: 0.2em;
}
#sec01 .flex02 .txtBox dd {
	text-align: center;
	padding-top: 1em;
	font-size: 1.8cqw;
	font-size: clamp(13px, 1.8cqw, 18px);
		
}
#sec01 .flex02 .imgR {
	width: 40%;
	position: absolute;
	bottom: 2%;
	right: 0;
}

#sec02 {
	/*padding-bottom: 10%;*/
}

#sec02 .tit02 {
	background-image:url("../../images/corner_room/sky.webp");
	color: #fff;
    padding: 30px 0;	
}
#sec02 .tit02 h3 {
	text-align: center;
	font-size: clamp(13px, 5cqw, 60px);
	line-height: 1.3;
}
#sec02 .tit02 h4 {
	text-align: center;
	font-size: clamp(13px, 3cqw, 32px);
	line-height: 1.4;
}

#sec02 .planBox,
#sec04 .planBox{
	padding: 5% 0;
	/*max-width: 1100px;*/
}
#sec02 .boxA,
#sec04 .boxA{
	padding-bottom: 2%;
}
#sec02 .boxA .flex,
#sec04 .boxA .flex{
	flex-direction: row-reverse;
}
#sec02 .planBox .flex {
	padding-top: 30px;
}
#sec04 .boxA .flex, #sec04 .boxG .flex { display: flex; justify-content: space-between;}
#sec02 .planBox .flex .zumenBox,
#sec04 .planBox .flex .zumenBox{
	width: 67%;
	/*max-width: 730px;*/
}
#sec02 .planBox .flex .items,
#sec04 .planBox .flex .items{
	width: 30%;
	
}
#sec02 .planBox .flex .items .itemBox{
	border: #004683 solid 1px;
	padding: 15px;
	margin-top: 30px;
	container-type: inline-size;
}
#sec02 .planBox .flex .items .itemBox p,
#sec04 .planBox .flex .items .itemBox p{
	font-size: 18px;
	line-height: 1.4;
	padding-top: 0.5em;
	font-size: clamp(13px, 5.7cqw, 18px);
}
#sec02 .planBox .btBox,
#sec04 .planBox .btBox{
	container-type: inline-size;
	padding-top: 20px;
}
#sec02 .planBox .btBox a,
#sec04 .planBox .btBox a{
	display: block;
	background-color: #717071;
	border-radius: 999px;
	text-align: center;
	color: #fff000;
	font-size: 2.4cqw;
	padding: 0.3em;
	
}
#sec02 .planBox .btBox a span::after,
#sec04 .planBox .btBox a span::after{
	content: "　";
	width: 1em;
	height: 1em;
	background-image: url("../images/arw.svg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100%;
	margin-left: 0.3em;
}
#sec02 .planBox .btBox a span,
#sec04 .planBox .btBox a span{
	font-size: 75%;
	color: #fff;
}

.bnnOmr {
	background-color: #fff6df;
	align-items: center;
}
.bnnOmr .imgBox {
	width: 43%;
	max-width: 470px;
}
.bnnOmr .txtBox {
	width: 57%;
	padding: 0px 50px;
container-type: inline-size;
}
.bnnOmr .txtBox dl {
	
	text-align: center;
}
.bnnOmr .txtBox dt {
	color: #004683;
	font-size: 6.2cqw;
	
}
#.bnnOmr .txtBox dd {
	font-size: 4.4cqw;
	line-height: 1.4;
}
.bnnOmr .txtBox a {
	display: block;
	width: 80%;
	margin: 10px auto 5px;
	background: #004F8A;
background: linear-gradient(270deg, rgba(0, 79, 138, 1) 0%, rgba(0, 142, 190, 1) 50%, rgba(0, 79, 138, 1) 100%);
	color: #fff;
	font-size: 4.4cqw;
	border-radius: 20px;
	text-align: center;
	padding: 0.2em;
}
.bnnOmr .txtBox a::after {
	content: "　";
	width: 1em;
	height: 1em;
	background-image: url("../images/arw02.svg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 100%;
	margin-left: 0.3em;
}
.bnnOmr .txtBox .caption {
	font-size: 12px;
	line-height: 1.3;
}

#sec03 {
	position: relative;
}
#sec03 .tit02::after {
	content: "images";
	position: absolute;
	right: 1em;
	bottom: 0.5em;
	font-size: 12px;
	color: #fff;
}
#sec03 .h3Box {
	position: absolute;
	top: 0;
	right: 58%;
	width: 36%;
	height: 100%;
	display: flex;
justify-content: center;
align-items: center;
	flex-wrap: wrap;
	container-type: inline-size;
	align-content: center;
}

#sec03 .h3Box h3 {
	width: 100%;
	font-size:2em;
	color: #fff;	
}
#sec03 .h3Box h3 em { font-size: 2.5em; font-style: normal;}
#sec03 .h3Box p {
	text-align: center;
	font-size: 2.8cqw;
	padding-top: 1.5em;
	line-height: 2.4;
}
#sec03 .tit02 { position: relative;}
#sec03 .tit02 h3 {
		position: absolute;
		left: 25%;
		top: 50%;
		transform: translate(-50%, -50%);
		font-size: 55px;
		color: #fff;
		line-height: 1.3;
		padding-left: 3%;
}

#sec04 .planBox .itemBox {
	border: #f2984f solid 1px;
	container-type: inline-size;
	margin-top: 25px;
}
#sec04 .planBox .flex .items .itemBox p {
	padding: 0.5em;
	font-size: clamp(13px, 5.1cqw, 18px);
}
#sec04 .planBox .flex2 { display: flex; justify-content: space-between;}
#sec04 .planBox .flex2 .itemBox {
	width: 49%;
	align-items: center;
	display: flex;
}
#sec04 .planBox .flex2 .itemBox .imgBox {
	width: 63%;
	max-width: 330px;
}
#sec04 .planBox .flex2 .itemBox p {
	flex: 1;
	padding: 0.5em;
	font-size: clamp(13px, 3.2cqw, 18px);
}
#sec04 .planBox .btBox {
	padding-top: 40px;
}



.linkBox {
	container-type: inline-size;
	padding-top: 5%;
}
.linkBox.padB {

}
 .linkBox a {
    display: block;
    width: 100%;
    background-color: #a40000;
    color: #fff100;
    font-size: 2.8cqw;
	 font-size: clamp(13px, 4.3cqw, 28px);
    border-radius: 999px;
    text-align: center;
    padding: 0.4em;
	 position: relative;
}
 .linkBox a::after {
	 content: "\f105";
    display: inline-block;
    margin-left: 15px;
    color: #ffffff;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

/*#sec02 .btBox a,
#sec04 .btBox a{
	display: block;
	background-color: #005939;
	border-radius: 999px;
	text-align: center;
	color: #fff000;
	font-size: 1.75cqw;
	line-height: 2;	
}
#sec02 .btBox a span::after,
#sec04 .btBox a span::after{
	 content: "\f105";
    display: inline-block;
    margin-left: 15px;
    color: #ffffff;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}
#sec02 .btBox a span,
#sec04 .btBox a span{
	font-size: 70%;
	color: #fff;
	padding-left: 15px;
}
#sec02 .btBox.contents { padding-top: 0;}*/

/*モデルルームプラン*/
.modelplan{}
.modelplan .copy h3 { font-size: 3.5em; color: #3f3a34; font-weight: normal; letter-spacing: 0.075em;}
.modelplan .copy h3 span {
	font-family: "Google Sans", sans-serif;
	font-optical-sizing: auto;
	font-weight: 600;
	padding-right: 15px;
}
.modelplan .copy p { font-size: 1.35em;}
.modelplan p.icon {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	padding: 15px;
	align-items: center;
}
.modelplan p.icon span.text { width: 47%; font-size: 1.15em;}
.modelplan p.icon span.iconimg { width: 30%;}


.modelplan .modelpoint { margin-top: 50px;}
.modelplan .modelpoint ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.modelplan .modelpoint ul li { margin-bottom: 50px;}
.modelplan .modelpoint ul li h4 {
	font-weight: normal;
	font-size: 1.5em;
	letter-spacing: 0.2rem;
	background:linear-gradient(transparent 60%, #eeebe7 60%);
	display: block;
	text-align: left;
	line-height: 1.25;
	margin-bottom: 15px;
	padding-left: 8px;
}
.modelplan .modelpoint ul li h4 span.number {
	font-family: "Aoboshi One", serif;
	font-weight: 400;
	font-style: normal;	
	font-size: 1.7em;
}
.modelplan .modelpoint ul li h5 { font-size: 1.4em; text-align: left;}
.modelplan .modelpoint ul li p { text-align: left; font-size: 1.15em;}
.modelplan .modelpoint ul li p.small { font-size: 0.95em;}
.modelplan .modelpoint ul li .flex {
	display: flex;
	/*justify-content: center;*/
	justify-content: space-between;
	align-items: flex-start;
}
.modelplan .modelpoint ul li img { margin-bottom: 20px;}
.modelplan .modelpoint ul li.one .flex .left,
.modelplan .modelpoint ul li.one .flex .right { padding: 0 15px;}
.modelplan .modelpoint ul li.one .flex img { width: 80%; height: auto;}
.modelplan .modelpoint ul li.one .flex .left {border-right: dotted 1px;}
.modelplan .modelpoint ul li.one .flex .right {padding-top: 30px;}

.modelplan .modelpoint ul li.two .flex .left { padding: 0 15px 0 0;}
.modelplan .modelpoint ul li.two .flex .right { padding: 0 0 0 15px;}
.modelplan .modelpoint ul li.two .flex img { width: 100%; height: auto;}

/*.modelplan .modelpoint ul li.two { width: 50%;}*/
.modelplan .modelpoint ul li.three { width: 47%; margin-right: 5%;}
.modelplan .modelpoint ul li.four { width: 48%;}

.modelplan .modelpoint ul li.five { width: 75%; margin-right: 5%;}
.modelplan .modelpoint ul li.five .flex .left { padding: 0 15px 0 0;}
.modelplan .modelpoint ul li.five .flex .right { padding: 0 0 0 15px;}
.modelplan .modelpoint ul li.five .flex img { width: 100%; height: auto;}

.modelplan .modelpoint ul li.six { width: 20%;}

.modelplan .modelpoint ul li.seven { width: 57%;}
.modelplan .modelpoint ul li.eight { width: 40%; margin-left: 3%;}
.modelplan .modelpoint ul li.eight img { width: 100%; margin: auto; margin-bottom: 10px;}
.modelplan .modelpoint ul li.eight .img:last-of-type img { width: 67%; margin: auto; margin-top: 15px;}
.modelplan .modelpoint ul li.eight p span { font-size: 80%; display: block;}

.modelplan .modelpoint ul li.nine,
.modelplan .modelpoint ul li.ten{ width: 48%;}
.modelplan .modelpoint ul li.nine img,
.modelplan .modelpoint ul li.ten img { width: 74%;}



.modelpoint.Gtype {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.modelpoint.Gtype ul { display: block; width: 30%;}
.modelpoint.Gtype ul li { width: 100% !important;}

.typeBox {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	border-bottom: solid 1px #ccc;
	margin-bottom: 40px;
	align-items: center;
}

.cornerroom .doublebtn ul li { color: #000; width: 80%;}

@media screen and (max-width: 767px) {
	.modelplan .copy h3 span { padding: 0;}
	.modelplan .copy p { text-align: left;}
	.modelplan p.icon { justify-content: space-between; padding: 15px 0; text-align: left;}
	.modelplan p.icon span.iconimg { width: 50%;}
	.modelplan .modelpoint ul li h4 { font-size: 2em;}
	.modelplan .modelpoint ul li p { font-size: 1.25em;}
	.modelplan .modelpoint ul li .flex { display: block;}
	.modelplan .modelpoint ul li.one .flex .left {border-bottom: dotted 1px; border-right: none;}
	.modelplan .modelpoint ul li.three,
	.modelplan .modelpoint ul li.four,
	.modelplan .modelpoint ul li.five,
	.modelplan .modelpoint ul li.six,
	.modelplan .modelpoint ul li.seven,
	.modelplan .modelpoint ul li.eight,
	.modelplan .modelpoint ul li.nine,
	.modelplan .modelpoint ul li.ten { width: 100%; margin-left: 0; margin-right: 0;}
	.modelplan .modelpoint ul li.nine img,
	.modelplan .modelpoint ul li.ten img { width: 87%;}
	.modelplan .modelpoint ul li.five .flex .right { margin-top: 15px;}
	.modelpoint.Gtype ul { width: 100%;}
	
	#sec03 .h3Box h3 { font-size: 1.5em; line-height: 1.25;}
	#sec02 .planBox, #sec04 .planBox{ padding: 5%;}
	#sec04 .boxA .flex, #sec04 .boxG .flex { display: block;}
}


/*間取り詳細のスペックテテキスト化*/
.plan_Item .s_type {
	font-family: "Ibarra Real Nova", serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	margin: 0;
    font-size: 500%;
	line-height: 1.5;
	color: #005939;
	width: 30%;
	
}
.plan_Item .s_type span { font-size: 60%;}
.plan_Item .s_ldk {
	font-family: "Ibarra Real Nova", serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	font-size: 400%;
	border-right: solid 1px #ccc;
	line-height: 1.5;
	width: 15%;
	padding: 20px;
}
.plan_Item .s_ldk span { font-size: 60%;}
.plan_Item .s_original { text-align: left; border-right: solid 1px #ccc; font-size: 120%; width: 20%; padding: 20px;}
ul.s_menseki { text-align: left; padding: 10px 0; font-size: 110%; width: 30%; padding: 20px;}
ul.s_menseki li { font-size: 120%;}
ul.s_menseki li em { font-size: 80%; font-style: normal;}

.plan_Item p.modelroomtype { background: #005939; color: #fff; padding: 5px; font-size: 30%; font-weight: normal;}

@media print, screen and (max-width: 767px) {
	.typeBox  { display: block; border: none;}
	.plan .type { display: block;}
	.plan_Item p.modelroomtype { margin-top: 0 !important;}
	
	.plan_Item .s_type,
	.plan_Item .s_ldk,
	.plan_Item .s_original,
	ul.s_menseki { width: 100%; border: none; padding: 0 0 10px; border: none; border-bottom: solid 1px #ccc;}
}

/* ====================================================
  attention
==================================================== */
.pageCornerroom .attentionList li{font-size: 70%; line-height: 1.7;}

@media print, screen and (min-width: 768px) {
	.pageCornerroom .attention{text-align: left; padding: 3em 15px 60px;}
}
@media screen and (max-width: 767px) {
		.pageCornerroom .attention{text-align: left; padding: 15px;}
}

@media screen and (max-width: 959px) {
	#sec01 .flex02 {
    align-items: flex-end;
	}

}
@media screen and (max-width: 767px) {
	#sec01 .h3-01,#sec01 .h3-02 {
    font-size: 4.2cqw;
	}
	#sec01 .flex {
    width: 90%;
    max-width: 100%;
	margin: auto;
}
	#sec01 .flex .itemBox {
    width: 100%;
	}
	#sec01 .flex .itemBox h4 {
		font-size: clamp(16px, 3.6cqw, 24px);
	}
	#sec01 .flex02 .txtBox {
		order: -1;
		width: 90%;
		margin: 0 auto;
	}
	#sec01 .flex02 .imgL {
		width: calc(21% * 1.5);
	}
	#sec01 .flex02 .imgR {
		width: calc(20.5% * 1.5);
	}
	#sec01 .flax02 .imgC { display: block; width: 90%; margin: auto;}
	#sec02 .boxA .flex, #sec04 .boxA .flex {
    flex-direction:column
	}
	#sec02 .planBox .flex .zumenBox,
	#sec04 .planBox .flex .zumenBox{
		width: 100%;
	}
	#sec02 .planBox .flex .items,
	#sec04 .planBox .flex .items,
	#sec04 .planBox .flex2{
		width: 90%;
		max-width: 350px;
		margin: 0 auto;
	}
	#sec02 .planBox .flex .items .itemBox {
    margin-top: 15px;

}
	#sec02 .planBox .flex .items .itemBox .imgBox {
		width: 100%;
	}
	#sec02 .planBox .flex .items .itemBox p, 
	#sec04 .planBox .flex .items .itemBox p,
	#sec04 .planBox .flex .itemBox p,
	#sec04 .planBox .flex2 .itemBox p{
		width: 100%;
    font-size: 5cqw;
    padding: 0.5em 0 0;
		line-height: 1.3;
}

	.bnnOmr {
		padding-top: 20px;
	}
	.bnnOmr .imgBox {
		width: 70%;
		margin: 0px auto;
	}
	.bnnOmr .txtBox {
		width: 100%;
		padding: 20px;
	}
	#sec03 .h3Box {
    position: absolute;
    top: 36%;
    right: 5%;
    width: 90%;
    height: 64%;
}
	#sec03 .h3Box h3 {
    width: 80%;

}
	#sec03 .h3Box p {
    text-align: justify;
    font-size: 3.8cqw;
    padding-top: 1.5em;
    line-height: 2.0;
}
	#sec03 .h3Box p br {
		display: none;
	}
	#sec03::after {
    right: 0.5em;
    bottom: 62%;
    font-size: 10px;
}
	#sec04 .planBox .flex .items .typeBox {
		width: 80%;
		margin: 15px auto;
	}
	#sec04 .planBox .flex2{
		display: block;
	}
	#sec04 .planBox .flex .itemBox,
	#sec04 .planBox .flex2 .itemBox{
		width: 100%;
		display: block;
		padding: 15px;
		margin-top: 15px;
	}
	#sec04 .planBox .flex2 .itemBox .imgBox {
		width: 100%;
	}
	.bnnOmr .txtBox a {
    	width: 100%;
    	font-size:5.4cqw;
		padding: 0.3em;
	}

}
.btBox {
	display: flex;
	flex-wrap: wrap;
	justify-content:space-between;
}
.btBox .bt01 { background: #ccc; color: #000;}
.btBox .bt02 {
    background-color: #c6bf8a;
    color: #004683;
}
.btBox a {
	width: 45%;
	display: block;
	border-radius: 8px;
	padding: 15px;
	clamp(13px, 2cqw, 21px);
	position: relative;
}
.btBox a:after {
    content: "\f105";
    position: absolute;
    right: 3%;
    top: calc(50% - 0.6em);
    width: 1.3em;
    height: 1.3em;
    color: #000;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
	font-size: 150%;
}
.btBox a.bt01:after { color: #000;}
.btBox a.bt02:after { color: #004683;}

.btBoxone  { padding-top: 0;}
.btBoxone a{
    background: #177846;
    color: #fff;
    display: block;
    width: 60%;
    padding: 20px;
    margin: 15px auto;
    border-radius: 50px;
	font-size: clamp(13px, 2cqw, 21px);
}
.btBoxone a:after {
    content: "\f105";
    position: absolute;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    padding: 0 15px;
}
.btBoxone a span {
	/*font-size: 80%;*/
	padding: 0 10px;
}

#sec03 {
	position: relative;
	display: none;
}
#sec03 .bg {
    background-color: #f1fbe7;
}
#sec03 h4 {
    font-size: clamp(13px, 3.2cqw, 40px);
    color: #E03E41;
    text-align: center;
    padding: 1em 0;
    position: relative;
}
#sec03 h4:before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    display: block;
    width: calc((100cqw - 70cqw) / 2);
    height: 1px;
    background-color:#E03E41;
}
#sec03 h4:after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    display: block;
    width: calc((100cqw - 70cqw) / 2);
    height: 1px;
    background-color:#E03E41;
}
#sec03 .flex-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
#sec03 .flex {
    gap: 20px 0;
}
#sec03 .flex .box {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 49%;
    background-color: #fff;
    border: #E03E41 solid 1px;
    container-type: inline-size;
    position: relative;
}
#sec03 .flex .box p {
    display: flex;
    justify-content: center;
    align-items: center;
    color: #E03E41;
    font-size: clamp(13px, 5.2cqw, 32px);
    text-align: center;
    line-height: 1.3;
    height: 5em;
}
#sec03 .flex .box .reason {
    position: absolute;
    left: 0;
    top: 0;
    background-color: #E03E41;
    color: #fff;
    font-size: 3.2cqw;
    text-align: center;
    line-height: 1.2;
    width: 16cqw;
    height: 16cqw;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 100%;
    transform: translate(-15%, -15%);
}
 #sec03 .flex .box .reason span {
    display: block;
    font-size: 140%;
}
#sec03 .arw05 {
    padding: 30px 0;
    width: 20%;
    max-width: 150px;
    margin: auto;
}
#sec03 .h3-02 {
    font-size: clamp(13px, 3.2cqw, 40px);
    color: #3fa87b;
    text-align: center;
}
#sec03 .flex02 {
    max-width: 1000px;
    container-type: inline-size;
    padding: 30px 0 0;
	margin: 30px auto;
}
#sec03 .flex02 .box {
    width: 48cqw;
    height: 48cqw;
    background: #F08E76;
    background: linear-gradient(45deg, #d1c84d 0%, #3fa87b 100%);
    border-radius: 100%;
    border: #3fa87b solid 1px;
    container-type: inline-size;
}
#sec03 .flex02 .box dl {
    width: 100%;
    height: 100%;
    text-align: center;
    color: #fff;
    padding: 10%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}
#sec03 .flex02 .box dl dt {
    font-size: 7.5cqw;
    line-height: 1;
    border-bottom: #fff solid 1px;
    padding-bottom: 4cqw;
    width: 100%;
}
#sec03 .flex02 .box dl dt span {
    display: block;
    font-size: 280%;
}
#sec03 .flex02 .box dl dt span i {
    font-style: normal;
    font-size: 50%;
}
#sec03 .flex02 .box dl dd {
    font-size: 7.5cqw;
}
			
			
.btnred {font-size: 200%; padding: 0; margin: 0 auto; }
.btnred a {background: #E03E41; color: #fff000; display: block; border-radius: 50px; padding: 20px; position: relative;}
.btnred a:after {
    content: "\f105";
    position: absolute;
    color: #fff000;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 117%;
    padding: 0 15px;
}

@media screen and (max-width: 767px) {
	#sec01 h4 span {
		position: static;
		display: block;
		background-color: #fff000;
		width: 100%;
		height: auto;
		line-height: 1;
		padding-bottom: 0.3em;
     }
	.btBoxone a { width: 100%;}
	.btnred {font-size: 155%; width: 95%; margin:0 auto;}
	#sec03 .tit02 h3 {
		padding-left: 0;
		left: 50%;
		top: 75%;
		font-size: 30px;
		width: 90%;
		margin: auto;
	}
	#sec03 .tit02::after { bottom: 17em;}
	#sec03 .flex .box { width: 100%;}
	.btBoxone a { position: relative; font-size: 3.85cqw;}
	.btBoxone a:after {
		right: 25px;
		top: 35%;
	}	
	.btBoxone a span { display: block;}
	#sec03 .h3-02 {
        font-size: clamp(13px, 5.6cqw, 40px);
    }
	#sec03 h4 {
        font-size: clamp(13px, 5.2cqw, 40px);
    }
	#sec03 h4:before,
	#sec03 h4:after { content: none;}
}


/*end*/