/*
Theme Name: kasai-k
Theme URI: ★ テーマの公式サイトなどのURL（空欄でも可） ★
Template: arkhe
Description: ★ テーマの説明（空欄でも可） ★
Author: itlabo
Tags: 
Version: 0.0.1
*/
/* ----------------------------------- 共通 ----------------------------------- */
:root {
	--navy:#191A89; 
	--l_blue:#A3D0F2; 
	--gray01:#F4F5F7; 
	--gray02:#CED1D6;
}
body , p , li , dt , dd , figcaption{
	color:#2C2C2C;
	font-size:16px;
	letter-spacing: 0.05rem;
}
table {
	width: 100%;
	table-layout: fixed;
	word-break: break-all;
	word-wrap: break-all;
}
.center{
	text-align:center;
}
.right{
	text-align:right;
}
.red{
	color:#cc0000;
}
.bold{
	font-weight:bold;
}
p a , li a , a , p a:hover , li a:hover , a:hover{
	color:var(--color);
	text-decoration:none;
	transition:all 0.4s;
}
.flex_box{
	display:flex;
	display:-webkit-flex;
	flex-wrap:wrap;
	-webkit-flex-wrap:wrap;
}
.entry-meta-item-updated , .entry-meta-item-author , .pc1199 , .sp991 ,.sps , .sp , .page-header{
	display:none;
}
.fs75{
	font-size:0.75rem;
}
.fs12{
	font-size:1.2rem;
}
.fs2{
	font-size:2rem;
}
.ls{
	letter-spacing:0.3rem;
}
.mt0{
	margin-top:0 !important;
}
.mt05{
	margin-top:0.5rem;
}
.mt3{
	margin-top:3rem;
}
.mt5{
	margin-top:5rem;
}
.mb05{
	margin-bottom:0.5rem;
}
.mb1{
	margin-bottom:1rem;
}
.mb15{
	margin-bottom:1.5rem;
}
.mb2{
	margin-bottom:2rem;
}
.mb3{
	margin-bottom:3rem;
}
.mb5{
	margin-bottom:5rem;
}
.mb7{
	margin-bottom:7rem;
}
/* ul */
.list_none{
	padding:0;
}
.list_none li{
	list-style:none;
}
/* flex_box */
.w60{
	width:56%;
	margin:0 2% 2rem 2%;
}
.w50{
	width:46%;
	margin:0 2% 2rem 2%;
}
.w40{
	width:36%;
	margin:0 2% 2rem 2%;
}
.w33{
	width:29%;
	margin:0 2% 2rem 2%;
}
.w25{
	width:23%;
	margin:0 1% 2rem 1%;
}
/* ----- th ----- */
/* th01 */
.th01{
	font-family:serif;
	color:var(--navy);
	letter-spacing:0.3rem;
}
.th01.ark-block-heading{
	margin-bottom:3rem;
}
.th01 .ark-block-heading__main{
	font-family:serif;
	color:var(--navy);
	letter-spacing:0.3rem;
	margin-bottom:1.5rem;
}
.th01 .ark-block-heading__sub{
	font-family:sans-serif;
	color:#333333;
	line-height:1.5rem;
	margin-bottom:1.2rem;
}
.th01.ark-block-heading .ark-block-heading__line:before{
	width:7rem;
}
/* th02 */
.th02{
	font-family:serif;
	color:var(--navy);
	letter-spacing:0.2rem;
	position:relative;
	margin-bottom:2rem;
}
.th02::after{
	content:"";
	display:block;
	width:8rem;
	height:1px;
	background-color:var(--navy);
	position:absolute;
	left:0;
	bottom:-0.8rem;
}
/* ----- link ----- */
.btn_base{
	display:inline-block;
}
/* arrow > */
.arrow{
	position:absolute;
	right:1rem;
	top:50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transition:all 0.4s;
}
.arrow:before{
	content:"";
	display:block;
	width:8px;
	height:8px;
	transform:rotate(45deg);
	border-top:solid 2px #fff;
	border-right:solid 2px #fff;
}
/* btn_arrow */
.btn_arrow{
	min-width:200px;
	text-align:left;
	position:relative;
	padding:0.5rem 3rem 0.5rem 1rem;
	border:solid 2px var(--navy);
	background-color:var(--navy);
	color:#ffffff;
}
.btn_arrow:hover{
	background-color:#ffffff;
	color:var(--navy);
}
.btn_arrow:hover .arrow{
	right:0.5rem;
}
.btn_arrow:hover .arrow:before{
	border-top:solid 2px var(--navy);
	border-right:solid 2px var(--navy);
}
/* ------------------ Header ------------------ */
.l-header .l-header__body{
	padding-top:1rem;
	padding-bottom:1rem;
}
.menu-item .c-gnav__a{
	font-weight:bold;
	color:var(--navy);
}
.menu-item .c-gnav__a:hover{
	color:#cc0000;
}
/* slide */
.slide_box{
	max-height:770px;
}
.slide_box figure{
	max-width:600px;
	width:40%;
}
.slide_child{
	width:calc(100% - 600px);
	min-width:60%;
	max-height:770px;
	overflow:hidden;
	position:relative;
}
.slide_child > figure{
	position:absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
   -webkit-transform: translate(-50%, -50%);
   -ms-transform: translate(-50%, -50%);
	z-index:1;
}
.slide_child .xo-slider-template-simple .swiper-slide img{
	min-height:770px;
}
/* sp_menu */
.p-drawer{
	background:rgba(25, 26, 137,0.9);
}
.c-drawerNav__a{
	color:#ffffff;
}
.c-drawerNav__a:hover{
	color:var(--l_blue);
}

/* ------------------ Footer ------------------ */



/* ------------------ HOME ------------------ */
.sec_bg{
	position:relative;
	padding:4rem 0;
}
.sec_bg:before{
	content:"";
	display:block;
	width:100vw;
	height:100%;
	background-color:var(--gray01);
	position:absolute;
	top:50%;
	left:50%;
	transform: translate(-50%, -50%);
   -webkit-transform: translate(-50%, -50%);
   -ms-transform: translate(-50%, -50%);
}
.sec_bg > .th01 , .sec_bg > p , .sec_bg > div{
	position:relative;
}
/* sec01_box */
.sec01_l{
	width:25%;
}
.sec01_r{
	width:75%;
	padding:0 1rem;
}
/* circle_box */
.circle_box{
	position:relative;
}
.circle_box:before{
	content:"";
	display:block;
	width:180px;
	height:180px;
	border-radius:50%;
	background-color:var(--navy);
	margin:auto;
}
.circle_box span{
	color:#ffffff;
	font-size:1.5rem;
	white-space:nowrap;
	font-weight:bold;
	position:absolute;
	top:50%;
	left:50%;
	transform: translate(-50%, -50%);
   -webkit-transform: translate(-50%, -50%);
   -ms-transform: translate(-50%, -50%);
}
/* 住まいの救助隊 */
.num_box figure{
	position:relative;	
}
.num_box figure:before{
	display:block;
	font-size:3rem;
	line-height:1;
	font-weight:bold;
	color:var(--gray02);
	position:absolute;
	left:-1rem;
	top:-1rem;
}
.num_01 figure:before{
	content:"01";
}
.num_02 figure:before{
	content:"02";
}
.num_03 figure:before{
	content:"03";
}
.num_04 figure:before{
	content:"04";
}
.num_05 figure:before{
	content:"05";
}
.num_06 figure:before{
	content:"06";
}
/* トップページ・お問合せ */
.contact_box{
	align-items:center;
	box-shadow:1px 1px 5px var(--gray02);
}
.contact_box figure{
	width:50%;
}
.contact_box figure img{
	display:block;
	object-fit:cover;
	width:100%;
	max-height:300px;
}
.contact_child{
	width:50%;
}
.tel_text{
	margin-bottom:1rem;
}
/* お問合せページ */
.contact{
	max-width:550px;
	margin:0 auto 2rem auto;
}
.contact dd{
	margin-bottom:1rem;
}
.btn_back{
	border: solid 2px var(--navy);
    background-color:#fff;
	border-radius:0.5rem;
	color:var(--navy);
	padding:0.5rem 1.5rem;
	margin:0 0.5rem;
	transition:all 0.4s;
}
.btn_form{
	border: solid 2px var(--navy);
    background-color: var(--navy);
	border-radius:0.5rem;
	color:#fff;
	padding:0.5rem 1.5rem;
	margin:0 0.5rem;
	transition:all 0.4s;
}
.btn_form:hover{
	background-color:#fff;
	color:var(--navy);
}
.btn_back:hover{
	color:#fff;
    background-color: var(--navy);
}
/* ------------------ Responnsive ------------------ */
/* -----------  PC 1499.98px ----------- */
@media screen and (max-width:1499.98px) {
	/* ------------------ Header ------------------ */
	.slide_box{
		max-height:50vw;
	}
	.slide_child .xo-slider-template-simple .swiper-slide img{
		min-height:50vw;
	}
}
/* -----------  SP 999.98px（ header_logoの位置 ） ----------- */
@media screen and (max-width:999.98px) {
	body {
		-webkit-text-size-adjust: 100%;
    }
	.w60 , .w50 , .w40 , .w33{
		width:96%;
	}
}
/* -----------  SP 767.98px iphone ----------- */
@media screen and (max-width:767.98px) {
	body , p{
		font-size:1rem;
	}
	.sps{
		display:block;
	}
	.sps_none{
		display:none;
	}
	/* ------------------ Header ------------------ */
	.l-header .l-header__body{
		padding-top:0;
		padding-bottom:0;
	}
}
/* -----------  SP 599.98px iphone ----------- */
@media screen and (max-width:599.98px) {
	.sp{
		display:block;
	}
	.sp_none{
		display:none;
	}
	.aisatu_img{
		height:80vw !important;
	}
	.aisatu_img img{
		width:auto !important;
	}
	.sec01_l{
		width:100%;
		margin-bottom:2rem;
	}
	.sec01_r{
		width:100%;
		padding:0;
	}
	.contact_box figure{
		width:30%;
	}
	.contact_box figure img{
		height:270px;
		object-fit:cover;
	}
	.contact_child{
		width:70%;
		padding:1rem;
	}
}
