/*
Theme Name: hal-fudousan
Theme URI: https://hal-fudousan.co.jp/
Author: AMOAMO
*/

/* リセット
================================================== */
* {margin: 0; padding: 0;}
.pc_no,
.pcm_no{display:none!important;}
*::after,
* {-webkit-box-sizing: border-box; -moz-box-sizing: border-box;	box-sizing: border-box;}

ul{padding: 0; margin: 0;}
li{padding: 0; margin: 0; list-style-type:none;}
img{border:none; vertical-align:top}

/* リンク・マージン
================================================== */
a:link{color: #333; text-decoration: none;}
a:visited{color: #333; text-decoration: none;}
a:active{color: #333; text-decoration: none;}
a:hover{color: #cc3333; text-decoration: none;}

a img:hover{filter: alpha(opacity=85);-moz-opacity:0.85;opacity:0.85;}
img a, a {
  -webkit-transition: .3s;
  transition: .3s;	
  outline: none;
}

.mt05{margin-top:0.5em;}
.mt08{margin-top:0.8em;}
.mt10{margin-top:10px;}
.mt15{margin-top:15px;}
.mt20{margin-top:20px;}
.mt30{margin-top:30px;}
.mt40{margin-top:40px;}
.mt50{margin-top:50px;}
.mt70{margin-top:70px;}
.mt80{margin-top:80px;}
.mt100{margin-top:100px;}

.mb05{margin-bottom:0.5em;}
.mb10{margin-bottom:10px;}
.mb15{margin-bottom:15px;}
.mb20{margin-bottom:20px;}
.mb30{margin-bottom:30px;}
.mb40{margin-bottom:40px;}
.mb50{margin-bottom:50px;}
.mb70{margin-bottom:70px;}
.mb100{margin-bottom:100px;}

.mtb20{margin-top:20px; margin-bottom:20px}
.mtb30{margin-top:30px; margin-bottom:30px}
.mtb40{margin-top:40px; margin-bottom:40px}
.mtb50{margin-top:50px; margin-bottom:50px}
.mtb70{margin-top:70px; margin-bottom:70px}

.pt5{padding-top:5px;}
.pt10{padding-top:10px;}
.pt15{padding-top:15px;}
.pt20{padding-top:20px;}
.pt30{padding-top:30px;}
.pt40{padding-top:40px;}
.pt50{padding-top:50px;}
.pt60{padding-top:60px;}
.pt70{padding-top:70px;}
.pt80{padding-top:80px;}
.pt90{padding-top:90px;}
.pt100{padding-top:100px;}

.pb20{padding-bottom:20px;}
.pb30{padding-bottom:30px;}
.pb50{padding-bottom:50px;}
.pb70{padding-bottom:70px;}
.pb80{padding-bottom:80px;}
.pb100{padding-bottom:100px;}

.ptb30{padding:30px 0}
.ptb40{padding:40px 0}
.ptb50{padding:50px 0}
.ptb70{padding:70px 0}
.ptb100{padding:100px 0}

/* 画像のみ中央 */
img.center_title{
	display: block;
 	margin-left: auto;
 	margin-right: auto;
}
.round_all50{border-radius:50px}
.round_lt100{border-radius:100px 0 0 0}
.round_rt100{border-radius:0 100px 0 0}
.round_lb100{border-radius:0 0 0 100px}
.round_rb100{border-radius:0 0 100px 0}
/* フォント・文字装飾
================================================== */
.fc_red{ color: #cc3333;}
.fc_pink{ color: #eba8a8;}
.fc_blue{color:#013893;}
.fc_lblue{color:#6d90cb;}
.fc_yellow{ color: #f7ec3f;}
.fc_wht{ color: #fff!important;}
.fc_gray{ color: #999!important;}

.fc_bold{ font-weight: 700!important; }
.fc_smbold{ font-weight: 600!important; }

.ls005{letter-spacing: 0.05em;}
.ls01{letter-spacing: 0.1em;}
.ls02{letter-spacing: 0.2em;}
.ls03{letter-spacing: 0.3em;}
.ls10{letter-spacing: 1em;}

.fs_11{ font-size: 11px!important; line-height:1.5em}
.fs_12{ font-size: 12px!important; line-height:1.7em}
.fs_13{ font-size: 13px!important; line-height:1.7em}
.fs_14, .spfs_13, .spfs_12{ font-size: 14px!important;}
.fs_15{ font-size: 15px!important;}
.pcfs_16, .fs_16{ font-size: 16px!important;}
.pcfs_18, .fs_18{ font-size: 18px!important; line-height: 1.6em;}
.fs_22{ font-size: 22px}
.fs_26{ font-size: 26px}
.fs_30{ font-size: 30px}

.marker{
	background: linear-gradient(transparent 60%, #fff799 60% );
	font-weight: bold; 
}
ul.disc li{
	list-style:disc;
	margin-left:1.5em;
	margin-bottom:0.5em;
}
.main_en_title{font-size:60px; margin-bottom:0.5em; font-weight:700; letter-spacing:0.05em}
.main_en_title_m{font-size:50px; margin-bottom:0.5em; font-weight:700; letter-spacing:0.05em}
.main_en_title_s{font-size:36px; margin-bottom:0.5em; font-weight:700;}
.main_en_title::first-letter,
.main_en_title_m::first-letter,
.main_en_title_s::first-letter{color: #cc3333;}
.sub_jp_title{font-size:18px; font-weight:700;}

/* レイアウト
================================================== */
.txt_center, .w-txt_center{text-align:center;}
.txt_left{text-align:left!important;}
.txt_right, .pc_txt_right{text-align:right}
.fl_right{float:right}
.fl_left{float:left}
.clear{clear: both;}

.br:before {
	content: "\A" ;
	white-space: pre ;
}

img.w100, img.spimg_w70, img.spimg_w80, img.spimg_w90, img.spimg_w100{width:100%; height:auto}
img.w90{width:90%; height:auto}
img.w80, img.pcimg_80{width:80%; height:auto}
img.pcimg_70{width:70%; height:auto}

img.round_15{border-radius:15px}
img.round_20{border-radius:20px}
img.round_30{border-radius:30px}
.psn_re{position:relative}
/* ボタン
================================================== */
.red_link a{
	background : url("images/red_arrow.png") no-repeat right 5px center;
	background-size:60px;
	padding:17px 80px 17px 5px;
	font-size:16px;
	font-weight:700;
	-webkit-transition: .4s;
	transition: .4s;
	color:#cc3333;
}
.red_link a:hover{
	background : url("images/red_arrow.png") no-repeat right center;
	background-size:60px;
	color:#da7d7d;
}
.blue_link a{
	background : url("images/blue_arrow.png") no-repeat right 5px center;
	background-size:60px;
	padding:17px 80px 17px 5px;
	font-size:16px;
	font-weight:700;
	-webkit-transition: .4s;
	transition: .4s;
	color:#013893;	
}
.blue_link a:hover{
	background : url("images/blue_arrow.png") no-repeat right center;
	background-size:60px;
	color:#7690c1;
}

a.red_btn{
	background: url("images/wt_arrow.png") #cc3333 no-repeat right 25px center;
	background-size:50px;
	padding:25px 90px 25px 70px;
	-webkit-transition: .4s;
	transition: .4s;
	font-size:18px;
	color:#fff;
	border-radius:50px;
}
a.red_btn:hover{
	background: url("images/wt_arrow.png") #b91111 no-repeat right 20px center;
	background-size:50px;
}
a.nm_btn,
a.nm_w_btn{
	background: url("images/red_arrow.png") #e7eef6 no-repeat right 50px center;
	background-size:50px;
	padding:30px 130px 30px 90px;
	-webkit-transition: .4s;
	transition: .4s;
	font-size:16px;
	border-radius:50px;
	letter-spacing:0.07em;
	color:#000;
}
a.nm_btn:hover{
	background: url("images/red_arrow.png") #d2e0ee no-repeat right 45px center;
	background-size:50px;
	color:#000;	
}
a.nm_w_btn:hover{
	background: url("images/red_arrow.png") #fff no-repeat right 45px center;
	background-size:50px;
	color:#000;	
}
/* サービス用ボタン
================================================== */
.s-redbtn a{
	background: url("images/wt_arrow.png") #cc3333 no-repeat right 25px center;
	background-size:35px;
	padding:15px 70px 15px 40px;
	-webkit-transition: .4s;
	transition: .4s;
	font-size:15px;
	font-weight:600;
	border-radius:50px;
	color:#fff;
}
.s-redbtn a:hover{
	background: url("images/wt_arrow.png") #b91111 no-repeat right 20px center;
	background-size:35px;
}
.s-bluebtn a{
	background: url("images/wt_b-arrow.png") #3a65ac no-repeat right 25px center;
	background-size:38px;
	padding:18px 70px 18px 40px;
	-webkit-transition: .4s;
	transition: .4s;
	font-size:15px;
	font-weight:600;
	border-radius:50px;
	color:#fff;
}
.s-bluebtn a:hover{
	background: url("images/wt_b-arrow.png") #224d96 no-repeat right 20px center;
	background-size:38px;
}
/* メイン
================================================== */
html { scroll-behavior: smooth;}
body {
	font-family: "Figtree", "Noto Sans JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  	font-weight: 500;
	color: #000;
	font-size: 15px;
	line-height: 1.8em;
	letter-spacing:0.01em;
	-webkit-text-size-adjust: none;
}
/* 背景
================================================== */
.bk_red{background:#cc3333}
.bk_blue{background:#3a65ac}
.bk_lblue{background:#e7eef6}
.bk_lmblue{background:#cedeee}
.bk_lyellow{background:#fcfae2}
.bk_white{background:#fff}

.lblue_half{
	width:100%;
 	background: -moz-linear-gradient(top, #e7eef6 60%, #fff 60%, #fff 100%);
  	background: -webkit-linear-gradient(left, #e7eef6 60%, #fff 60%, #fff 100%);
  	background: linear-gradient(to bottom, #e7eef6 60%, #fff 60%, #fff 100%);		
}
.bk_logo{
	background : url("images/bk_logo.png") no-repeat bottom right;
	background-size:60%;	
}
.bk_logo_w{
	background : url("images/bk_logo_w.png") no-repeat bottom right;
	background-size:60%;	
}
@media screen and (max-width: 1600px) {
	.bk_logo{
		background : url("images/bk_logo.png") no-repeat bottom right;
		background-size:65%;	
	}
	.bk_logo_w{
		background : url("images/bk_logo_w.png") no-repeat bottom right;
		background-size:65%;	
	}	
}
@media screen and (max-width: 1400px) {
	.bk_logo{
		background : url("images/bk_logo.png") no-repeat bottom right;
		background-size:70%;	
	}
	.bk_logo_w{
		background : url("images/bk_logo_w.png") no-repeat bottom right;
		background-size:70%;	
	}
}
/* ページレイアウト
================================================== */
.page_contents,
.sp92_contents,
.sp95_contents,
.sp100_contents{
	width:85%;
	max-width:1200px;
	margin-right:auto;
	margin-left:auto;
}
.page_contents2,
.sp95_contents2,
.sp100_contents2{
	width:85%;
	max-width:1100px;
	margin-right:auto;
	margin-left:auto;
}
.page_w90{
	width:90%;
	margin-right:auto;
	margin-left:auto;
}
.page_w100{
	width:100%;
	margin-right:auto;
	margin-left:auto;
}
.page_w85{
	clear:both;
	width:85%;
	max-width:1000px;
	margin-right:auto;
	margin-left:auto;
}
.page_max85{
	clear:both;
	width:85%;
	max-width:1500px;
	margin:0 auto;
}
.flex{display:flex}
.flex_wp,
.flex_wp_sp,
.flex_wp_spmd{
	display:flex;
	justify-content: space-between;
}
.flex_center{align-items: center;}
.flex_end{align-items: flex-end;}
.flex_wrp{flex-wrap: wrap;}
.half_box{width:50%}
.half_box2{width:48%}
.column_box3{width:32%}
.box_w70{width:70%}
.box_w25{width:25%}
.box_w60{width:60%}
.box_w30{width:30%}
.box_w35{width:35%}
.box_w38{width:38%}
.box_w55{width:55%}
.box_w57{width:57%}
.box_w40{width:40%}
.box_w43{width:43%}
.box_w45{width:45%}
.box_w47{width:47%}
.sppc_box35{width:35%}
.sppc_box48{width:48%}
.sppc_box62{width:62%}
.sppc_box20{width:25%}
.sppc_box75{width:72%}


/* ヘッダー
================================================== */
.pc_header_wp{
	width: 90%;
	margin:15px auto 0;
}
.header_logo{width:450px}
.header_info{
	width:600px;
	text-align:center;
	padding-top:20px
}
.header_info ul li.h_tel{width:250px;}
.header_info ul li.h_link{width:320px;}
.header_info ul li.h_link a{
	background : url("images/red_mail.png") no-repeat left 1.8em center;
	background-size:20px;
	padding:13px 25px 13px 60px;
	border:2px solid #cc0000;
	border-radius:50px;
	font-size:14px;
	color:#cc3333;
}
.header_info ul li.h_link a:hover{
	background : url("images/wt_mail.png") #cc3333 no-repeat left 1.8em center;
	background-size:20px;
	color:#fff;
}

/* グローバルメニュー */
.header_navi{
	width: 90%;
	max-width:1400px;
	margin: 0 auto;
	padding:15px 0 15px 20px;
	position:relative;
	text-align:center;
	background:#fff;
	border-radius: 50px;
	box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.25);
	z-index:990;
	bottom:-30px;
}
#navi {
 	position: relative;
	top: 0;
	left: 0;
 	width: 100%;
	z-index:999;
	font-weight:500;
}

#navi input,
.menu-left,
.sp_hdlink,
.sp_snslink{ display: none;}
.menu-parent {
  	display: inline-block;
  	margin-right: 25px;
  	margin-left: 25px;	
	line-height: 45px;
  	white-space: nowrap;
	font-size:15px;
	letter-spacing:0.05em;
	cursor:pointer;
	position: relative;	
	font-weight:700;
}
.menu-parent:before{
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 2px;
	background: #cc3333;
	transform: scale(0, 1);
	transition: 0.3s;
}
.menu-parent:hover:before {
	transform: scale(1);
}
.menu-parent:hover{color:#cc3333}
.menu-parent .pd { display: none;}
.menu-snsicon{
  	display: inline-block;
  	margin-right: 30px;
}
.sns_fs{margin-left:40px}
.menu-snsicon img{width:21px; height:auto; vertical-align:middle}
.menu-snsicon img:hover{filter: alpha(opacity=50);-moz-opacity:0.5;opacity:0.5;}
@media screen and (max-width: 1300px) {
	.menu-parent {
	  	margin-right: 20px;
		margin-left: 20px;
		letter-spacing:0;
	}
	.menu-snsicon{
		margin-right: 18px;
	}
	.sns_fs{margin-left:30px}
	.header_logo{width:400px}
}
@media screen and (max-width: 1200px) {
	.pc_header_wp{width: 95%;}
	.header_navi{width: 95%;}
	.header_info{
		width:570px;
		text-align:center;
	}
	.header_info ul li.h_tel{width:220px;}
	.menu-parent {
		font-size:14px;
	}

}
@media screen and (max-width: 1100px) {
	.header_logo{width:320px}
	.menu-parent {
	  	margin-right: 15px;
		margin-left: 15px;
	}
	.header_info{width:550px;}
	.header_info ul li.h_tel{width:200px;}
}
#menu-navibtn {
	display: none;
	cursor: pointer;
	cursor: hand;
}
@media screen and (max-width: 970px) {
	img.sp_header{
		position:absolute;
		top:-40px;
		left:0;
		width:140px;
		height:auto;
		 z-index:997;
	}
	.pc_header_wp{display:none}
	.menu-parent:before{background:none;}
	.menu-snsicon{display:none}
	.hd_fix{
		position: fixed;
		width: 100%;
		z-index:995;
		background:#fff;
		height:58px;
	}
	.header_navi{height:58px; text-align:left; bottom:-30px;}
	.menu-left {
		display: block;
	    position: absolute;
	    top: -2px;
	    left: 10px;
	}
	.menu-left img {
		width:190px;
		height:auto;
		vertical-align: top;
		margin-top:5px;
	}
	#navi{background:rgba(255,255,255,0.95);}
	.menusp_no{display:none}
  	.menu-parent .pd {
    	display: inline-block;
    	width: 100%;
	  	padding:0 10px;
  	}
  	.menu {
    	display: none;
	  	width:85%;
		margin:0 auto;
		text-align:left;
  	}
  	.menu-parent {
    	height: auto;
    	width: 100%;
    	padding: 0px;
		border-bottom:1px dotted #023894;
		line-height:53px;
		margin:0;
		color:#333;
  	}
	.menu-parent a{color:#333;}
	.menu-parent a{display:block;}
  	.menu-parent i {  padding: 0px 6px; }
  	#menu-navibtn:checked ~ #navi {
    		position: fixed;
    		overflow-y: scroll;
    		overflow-x: hidden;
    		height: 100%;
  	}
}
.menu-parent { position: relative;}
.menu-parent .menu-child {
  	visibility: hidden;
	line-height: 28px;
  	opacity: 0;
  	position: absolute;
  	width: auto;
  	box-sizing: border-box;
  	padding: 0;
  	background:rgba(2,56,148,0.9);
	text-align:left;
}

@media screen and (min-width: 970px) {
  	.menu-parent:hover .menu-child {
    	visibility: visible;
    	opacity: 1;
  	}
}

@media screen and (max-width: 970px) {
  	#menu-navibtn:checked ~ * .sp_header {
    	display: none!important;
  	}	
  	#menu-navibtn:checked ~ * .sp_hdlink {
    	display: block;
    	opacity: 1;
  	}	
  	#menu-navibtn:checked ~ * .sp_snslink {
    	display: block;
    	opacity: 1;
  	}	
  	#menu-navibtn:checked ~ * .menu {
    	display: block;
    	opacity: 1;
		padding-top:100px;
  	}
  	#menu-navibtn:checked ~ * .menu-parent {
    	max-height: inherit;
    	overflow-y: visible;
  	}
 	#menu-navibtn:checked ~ * .menu-child {
    	max-height: 0;
    	overflow-y: hidden;
    	visibility: hidden;
  	}
  	.menu-parent .menu-child {
   		position: relative;
     	opacity: 1;
    	top: 0;
    	margin-left: 10px;
		line-height: 30px;
    	left: auto;
    	width: 100%;
		background:none;
  	}
	.menu li.first{margin-top:30px;}
	.menu-parent .menu-child li:last-child{padding-bottom:15px;}
  	.menu-parent > label:hover {
    	cursor: pointer;
    	cursor: hand;
  	}
  	#navi input[type="checkbox"]:checked ~ .menu-child {
    	max-height: inherit;
    	overflow-y: visible;
    	visibility: visible;
  	}
  	.angletoggle:before {
        float: right;
        content: "＋";
		margin-right: 10px;
  	}
  	#navi input[type="checkbox"]:checked ~ * .angletoggle:before {
        content: "－"!important;
		margin-right: 10px;
  	}
}
.menu-child li{	border-bottom:1px dotted #ccc;}
.menu-child li:last-child { border: none;}
.menu-child li a {
    display: block;
    margin: 0px 0px;
    padding: 8px 25px 8px 15px;
    text-decoration: none;
    font-size: 14px;
    background: none;
	transition: .3s;
	color:#fff;
	letter-spacing:0;
}
.menu-child li span{font-size: 12px; margin-left:15px;}
.menu-child li a:hover {
	background-color: #023894;
	color:#fff;
}
.menu-child li a i {
    padding-right: 10px;
    color: #ccc;
}
#navi #navibtn {
  display: none;
}
@media screen and (max-width: 970px) {
	.menu-child li a {
	    padding: 8px;
		color:#333
	}
	.menu-child li a:hover {
		background: none;
		color:#000;
	}	
	.menu-child li a i {
    	padding-right: 7px;
		color: #ccc;
	}
	.menu-child li{	border-bottom:none;}
  	#navi #navibtn {
	    	display: block;
	    	position: absolute;
	    	top: -13px;
	    	right: 30px;
  	}
	#menu-navibtn:checked ~ #navi #navibtn{
    		top: 33px;
	}
	#menu-navibtn:checked ~ #navi .menu-left {
	    top: 43px;
	    left: 40px;
	}
  	#navibtn span {
	    	display: block;
	    	width: 40px;
	    	height: 50px;
  	}
  	#navibtn span span {
    		display: block;
    		overflow: hidden;
		letter-spacing:0.08em
  	}
	#navibtn span span span.name{font-size:9px; padding-left:10px; color:#cc3333;}
	#menu-navibtn:checked ~ #navi label#navibtn span span span.name{display: none;}
  	#navibtn span span::before,
  	#navibtn span span::after,
  	#navibtn span::after {
	    	position: absolute;
	    	left:10px;
	    	content:"";
	    	width: 30px;
	    	height: 3px;
	    	background-color: #cc3333;
	    	border-radius: 1px;
  	}
  	#navibtn span span::before {
    		top:23px;
  	}
  	#menu-navibtn:checked ~ #navi label#navibtn span span::before {
    		top:23px;
    		transform: rotate(-45deg);
    		-webkit-transform: rotate(-45deg);
  	}
  	#navibtn span::after {
    		bottom:10px;
  	}
  	#menu-navibtn:checked ~ #navi label#navibtn > span::after {
   		bottom:24px;
    	transform: rotate(-135deg);
    		-webkit-transform: rotate(-135deg);
  	}
  	#navibtn span span::after {
    		top:30px;
  	}
  	#menu-navibtn:checked ~ #navi label#navibtn span span::after{
    		display: none;
  	}
}
ul.sp_hdlink{
	width:88%;
	margin:20px auto;
	text-align:center;
}
img.sp_h_tel{
	width:75%;
	max-width:270px;
	height:auto;
	margin-bottom:20px;
}
p.sp_h_tel a{color:#023894}
ul.sp_hdlink li.sp_h_mail a{
	width:270px;
	margin:0 auto;
	display:block;
	background : url("images/wt_mail.png") #cc3333 no-repeat left 1.8em center;
	background-size:30px;
	padding:13px 10px 13px 25px;
	border-radius:50px;
	color:#fff;
}
ul.sp_snslink{text-align:center}
ul.sp_snslink li{
	display:inline-block;
	margin:15px 20px;
}
ul.sp_snslink li img{width:30px; height:auto}
/* TOPスライダー
================================================== */
.top_header{
	width:100%;
 	background: -moz-linear-gradient(top, #e7eef6 60%, #d2e0ee 60%, #d2e0ee 100%);
  	background: -webkit-linear-gradient(left, #e7eef6 60%, #d2e0ee 60%, #d2e0ee 100%);
  	background: linear-gradient(to bottom, #e7eef6 60%, #d2e0ee 60%, #d2e0ee 100%);	
	padding-top:50px;
	border-radius:0 0 100px 0;
}
.top_slider{
	width:100%;
	margin:50px auto 0;
}
.catch_name{width:80px; padding-left:50px}
.catch_name p{
	font-size:12px;
	font-weight:700;
	color:#cc3333;
	letter-spacing:0.4em;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	padding-top:70px;
}
.catch_slider{width:calc(100% - 90px);}
img.top_catch{padding-left:20px; width:400px; height:auto;}
.fadeslider_wp{
	width:100%;
	margin-top:15px;
	position:relative;
}
.fadeslider li{margin-right:15px;}
.fadeslider img{
width: 100%;
  height: 650px;
  object-fit: cover;
	border-radius:30px;
}
.top_header_title{
	position:absolute;
	top:0;
	left:0;
	background : url("images/top/catch-bk.png") no-repeat top left;
	background-size:500px auto;
}
.top_header_title h2{
	font-size:36px;
	font-weight:700;
	line-height:2.3em;
	padding:10px 30px 100px;
}
span.th_tl_a{color:#cc3333; font-size:74px; letter-spacing:0.07em;}
span.th_tl_b{color:#333333; font-size:60px; font-weight:500; margin-left:0.1em}
span.th_tl_c{
	color:#cc3333;
	font-size:50px;
	background:#fff;
	border:1px solid #cc0000;
	padding:0.2em 0.4em 0.2em 0.5em;
	letter-spacing:0.07em;
	border-radius:10px;
}

/* TOPページ
================================================== */
.top_news_tl{width:30%;}
.top_news_tl h3{
	font-size:26px;
	letter-spacing:0.08em;
}
.top_news_list{width:70%;}
.top_news_list dl{width:100%;}
.top_news_list dl dt {
     float: left;
     clear: left;
     width: 220px;
	margin-bottom:1em;
	padding-bottom:1em;
	padding-left:0.8em;
}
.top_news_list dl dd {
	margin-bottom:1em;
	padding-bottom:1em;
	padding-right:0.8em;
     border-bottom: 1px dotted #666;
     padding-left: 230px;
}
.top_news_list dl dd a:hover{color:#cc3333}
span.post_cat{
	margin-left:20px;
	font-size:12px;
	padding:0.5em 1em;
	color:#cc3333;
	background:#fff;
	border-radius:15px;
}
img.yamashina_img{
	width:100%;
	height: 500px;
	object-fit: cover;
	border-radius:30px;
	position:absolute;
	top:-50px;
}
.top_msg{
	width:60%;
	position:relative;
	padding-top:80px;
}
.top_msg h3{font-size:36px; font-weight:700; color: #cc3333; line-height:1.6em;}
.top_msg img.yamashina_sil{
	width:43%;
	height:auto;
	position:absolute;
	top:35%;
	left:-30%;
}
.top_msg_text{padding-top:40px; padding-left:18%;}
.top_msg_text{line-height:2.3em}
.top_svswp{
	width:100%;
	margin:270px auto 0;
	position:relative;
	padding-bottom:150px;
}
.top_svsbk{
	position:absolute;	
	width:70%;
	height:660px;
	border-radius:0 80px 80px 0;
	background-color:#cedeee;
	top:0;
	left:0;
}
.top_svsimg{
	position:absolute;	
	width:60%;
	top:-200px;
	right:0;	
}
.top_svsimg img{
	width:100%;
	height:330px;
	object-fit: cover;
	border-radius:30px 0 0 30px;
}
.top_svs_inner{
	width:90%;
	max-width:1200px;
	margin:0 auto;
	padding-top:80px;
	position:relative;
	z-index:10;
}
.top_svs_text{width:50%; text-align:center;}
.rpt_img{
	width:370px;
	margin:0 auto;
	position:relative;
}
.rpt_img img.svs_fds{
	width:140px;
	height:auto;
	position:absolute;
	top:-80px;
	left:-100px;
    animation: float1 2s ease-in-out infinite;
	transform-origin: center;	
}
@keyframes float1 {
  0% { transform: translateY(0px); }
  50% { transform: translateY(-8px); }
  100% { transform: translateY(0px); }
}
.top_svs_text h2{
	font-size:30px;
	margin:15px 0 20px;
	line-height:1.7em;
}
.emphasis_s span{
	font-size: 23px;
	padding: 0.5em 2em 0 2em;
	background-image: url("images/diag_l.png"), url("images/diag_r.png");
	background-size:20px auto, 20px auto;
	background-repeat:no-repeat,no-repeat;
	background-position:left bottom, right bottom;
	text-align: center;
	line-height:1.5em;
}
.top_svs_btn{margin-top: 40px; position:relative}
.top_svs_btn img.check_text{
	position:absolute;
	width:70px;
	height:auto;
	top:-38px;
	right:20%;
}

.top_slider_wp{width:85%; max-width:1400px; margin:100px auto 150px;}
ul.works_slider{
	width:100%;
	margin:50px auto 70px;	
}
ul.works_slider li{
	position:relative;
	text-align:left;
	border-top: 4px solid #cc3333;
	border-bottom: 1px solid #333;
	border-right: 1px solid #333;
	border-left: 1px solid #333;
	padding:35px 25px 25px;
	transition: transform .6s ease;
	margin:20px;
	border-radius:15px;
}
.property_inner .ws_thumb{
	width:100%;
	overflow: hidden;
	border-radius:10px;
}
.property_inner .ws_thumb img{
	width:100%;
	height:auto;
	border-radius:15px;
	transition: transform .6s ease;	
}
.property_inner:hover img{
	transform: scale(1.1);
}
.property_inner a:hover{color:#666;}
.property_inner p.category{
	position:absolute;
	top:-15px;
	left:30px;
	z-index:5;
}
.property_inner p.category span{
	border:2px solid #cc3333;
	background:#fff;
	padding:0.6em 1.5em;
	font-size:14px;
	font-weight:700;
	color:#cc3333;
	border-radius:5px;
}
.property_inner p.title{
	font-weight:600;
	font-size:15px;
	line-height:1.5em;
	border-bottom:1px solid #ccc;
	padding-bottom:0.5em;
	margin:1.3em 0 0.7em;
}
.property_inner .ws_pricebox{width:200px;}
.property_inner .ws_madoribox{width: calc(100% - 200px);}
.property_inner p.tl-price {margin-bottom:0.5em}
.property_inner p.tl-price span{font-size:20px; margin-left:0.5em; font-weight:600;}
.property_inner p.tl-madori{font-size:14px; text-align:right}
.slide-arrow {
  	position: absolute;
  	top: 40%;
	z-index:99;
	width:25px!important;
}
.prev-arrow {
  left: -40px;
}
.next-arrow {
  right: -40px;
}
.group_logo{width:20%}
.group_text{width:75%; text-align:left}
.top_fnc_wp{
	width:87%;
	max-width:1300px;
	margin:0 auto;
	padding:100px 0 50px;
}
.top_fnc_inner{
	width:48%;
	background:#fff;
	border-radius:30px;
	padding:3%;
}
.top_fncimg{width:100%; margin-bottom:1.5em; position:relative}
.top_fncimg img{
	width:100%;
	height:270px;
	object-fit: cover;
	border-radius:20px;
}
.circle_tl{
	position:absolute;
	top:-70px;
	left:-50px;	
   width:145px;
   height:145px;
   border-radius:50%;
   display:flex;
   align-items:center;
   justify-content:center;	
	color:#fff;
	text-align:center;
}

.circle_tl h2{font-size:18px; font-weight:700; line-height:1.4em}
.circle_tl h2 span{font-size:8px;}
.top_fnctext{width:100%; text-align:center; padding:0 1em}
.top_fnctext p{
	margin-bottom:0.7em;
	line-height:1.9em;
	text-align:left;
}
img.hc-logo{width:85%; max-width:450px; height:auto;}

.top_cttl{width:100%; margin:0 auto 50px}
.top_cttl_tl{width:300px;}
.top_cttl_text{width:calc(100% - 350px);}
.slick-track {
  display: flex;
}
.slick-slide {
  height: auto !important;
}
.voice_slider_wp{
	width:90%;
	margin:30px 0;
	position:relative;
}
.voice_slider_wp img.rvw_thanks{
	position:absolute;
	right:-4%;
	bottom:-10%;
	width:13%;
	max-width:163px;
	height:auto;
	z-index:99;
}
ul.voice_slider li{
	background:#fff;
	border-radius:15px;
	padding:30px 25px 30px 20px;
	margin:0 15px;
	-webkit-transition: .4s;
	transition: .4s;	
}
.voice_img{width:23%; padding-top:20px;}
.voice_img img{width:100%; height:auto}
.voice_text{width:70%}
.voice_text h3{
	background:#cc3333;
	border-radius:30px;
	padding:0.5em 1.3em;
	font-size:14px;
	font-weight:700;
	color:#fff;
	margin-bottom:1em;
	text-align:center
}
.voice_text p{padding:0.5em}
ul.voice_slider li:hover{background:#e7eef6}
ul.voice_slider li:hover p{color:#333}

ul.top_column{
	width:100%;
	margin:40px auto;
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
ul.top_column li{
	width:47%;
	border-bottom:1px solid #ccc;
	padding:20px 7px;
	transition: transform .6s ease;
}
ul.top_column li:nth-child(1),
ul.top_column li:nth-child(2){border-top:1px solid #ccc;}
.tpclm_img{width:35%; overflow: hidden; border-radius:7px;}
.tpclm_img img{
	width:100%;
	height:auto;
	border-radius:7px;
	transition: transform .6s ease;
}
ul.top_column li:hover img{
	transform: scale(1.1);
}
.tpclm_text{width:60%; padding-top:10px; position:relative;}
.tpclm_text p.tpclm_date{font-size:12px; letter-spacing:0.05em; margin-bottom:0.8em}
p.tpclm_cat{
	position:absolute;
	top:10px;
	right:0;
}
p.tpclm_cat span{
	font-size:12px;
	padding:0.5em 1.2em;
	color:#000;
	background:#f2e75a;
	border-radius:15px;	
}
.tpclm_text h3{font-size:15px; font-weight:700;}
/*　固定ページ共通
================================================== */
.page_title_wp{
	width:100%;
 	background: #e7eef6;
	padding:100px 0 50px;
	text-align:center
}
@media screen and (max-width: 970px) {
	.page_title_wp{padding:170px 0 40px;
	}
}
/*　業務内容
================================================== */
.svs-mainimg{
	width:100%;
	max-width:1400px;
	margin:0 auto;
}
.svs-mainimg img{border-radius:50px 50px 0 0}
.svs_topmsg{
	width:85%;
	max-width:1100px;
	margin:0 auto 80px;
	text-align:center;
	position:relative;
}
.svs_topmsg h2{
	width:95%;
	max-width:1000px;
	position:absolute;
	top:-40px;
	left:50%;
	transform: translateX(-50%);	
	background:#fff;
	border-radius:50px 50px 0 0;
	padding:50px 35px 20px;
	font-size:36px;
	font-weight:700;
	line-height:1.8em;
}
.svs_topmsg_txt{padding-top:180px}
@media screen and (max-width: 1200px) {
	.svs_topmsg h2{font-size:32px;}
	.svs-mainimg img{border-radius:30px 30px 0 0}
}
@media screen and (max-width: 970px) {
	.svs_topmsg h2{font-size:28px;}
	.svs_topmsg_txt{padding-top:150px}
}
.svs_topmsg_txt p{margin-bottom:1.7em; line-height:2em}
.pssn_title{width:640px; padding:0 0 15px 40px;}
.pssn_title_jp{width:360px}
.pssn_title_jp h3{font-size:36px; font-weight:800; line-height:1.7em;}
.pssn_title_en{width: calc(100% - 360px);}
.pssn_title_en p{font-size:12px; color:#fff; font-weight:600; padding-bottom:0.8em}
.pssn_img{width: calc(100% - 640px);}
.pssn_img img{width:100%; max-width:360px; height:auto}
@media screen and (max-width: 970px) {
	.pssn_title{width:540px; padding:0 0 15px 20px;}
	.pssn_title_jp{width:280px}
	.pssn_title_jp h3{font-size:28px;}
	.pssn_title_en{width: calc(100% - 280px);}
	.pssn_img{width: calc(100% - 540px);}
}
.pssn_list{
	width:100%;
	margin:0 auto;
	background:#fff;
	border-radius: 30px;
	padding:40px 40px 30px;
	display:flex;
	justify-content: space-between;
}
.pssn_list_inner{width:47%}
.pssn_list_inner ul li{
	font-size:18px;
	margin-bottom:0.7em;
	font-weight:700;
}
.pssn_list_inner ul li.pt_01{
	background : url("images/service/pt_01.png") no-repeat left top 0.3em;
	background-size:40px;
	padding:10px 0 10px 50px;
}
.pssn_list_inner ul li.pt_02{
	background : url("images/service/pt_02.png") no-repeat left top 0.3em;
	background-size:40px;
	padding:10px 0 10px 50px;
}
.pssn_list_inner ul li.pt_03{
	background : url("images/service/pt_03.png") no-repeat left top 0.3em;
	background-size:40px;
	padding:10px 0 10px 50px;
}
.pssn_list_inner ul li.pt_04{
	background : url("images/service/pt_04.png") no-repeat left top 0.3em;
	background-size:40px;
	padding:10px 0 10px 50px;
}
.pssn_list_inner ul li.pt_05{
	background : url("images/service/pt_05.png") no-repeat left top 0.3em;
	background-size:40px;
	padding:10px 0 10px 50px;
}
.pssn_list_inner ul li.pt_06{
	background : url("images/service/pt_06.png") no-repeat left top 0.3em;
	background-size:40px;
	padding:10px 0 10px 50px;
}

.service_wp{
	width:90%;
	max-width:1300px;
	margin:0 auto;
	padding:50px;
}
p.svs_cptitle{
	font-size:34px;
	font-weight:700;
	letter-spacing:0.07em;
	margin-bottom:0.8em;
}
p.svs_title_s{font-size:20px; font-weight:700; margin-bottom:1.5em}
.svs_halfbox_wp{
	display:flex;
	justify-content: space-between;
	padding-bottom:50px;
}
.svs_halfbox{
	width:47%;
	background:#fff;
	padding:0 0 20px;
	border-radius:20px;
}
img.svsimg{border-radius:20px 20px 0 0}
.svs_halfbox_text{
	text-align:center;
	padding:1em 2em 1.5em;
	position:relative;
}
.svs_fullbox{
	width:100%;
	margin:0 auto 50px;
	padding:35px;
	border-radius:30px;
	display:flex;
	justify-content: space-between;
	flex-direction: row-reverse;
}
.hcbk_blue{
	background:#fff;
}
.svs_fullbox_img{width:35%}
.svs_fullbox_img img{width:100%; height:auto; border-radius:20px}
.svs_fullbox_text{width:60%; padding:0 0 30px 30px}
img.svs_icon{
	width:130px;
	height:auto;
	position:absolute;
	top:-35px;
	left:0;
	right:0;
	margin:0 auto;	
}
.svs_fullbox_text img.svs_icon{display:none}
p.svc_ft_title{
	font-size:12px;
	font-weight:600;
	padding-top: 25px;
}
p.svc_ft_title span{font-size:16px; margin-left:0.3em;}
.svs_halfbox_text h2,
.svs_fullbox_text h2{margin:0.5em 0 1em; font-size:28px;}
.svs_halfbox_text h3{font-size:17px; margin-bottom:0.7em;}
.svs_fullbox_text h3{font-size:18px; margin-bottom:1.2em;}
.svs_textin{padding:0.5em 0}
.svs_textin p{margin-bottom:0.7em; text-align:left}
.svs_hcpoint{
	width:100%;
	margin:40px auto 25px;
	border-radius:8px;
	padding:20px 30px 10px;
	position:relative;
	font-weight:600;
	font-size:14px;
}
.svs_hcpoint img.point_t{
	width:120px;
	height:auto;
	position:absolute;
	top:-25px;
	left:15px;
}
.svs_hr03{
	background : url("images/service/hr_svs03_pc.png") no-repeat left center;
	background-size:100px;
	padding:10px 0 10px 120px;	
}
.svs_hc01{
	background : url("images/service/hc_svs01_pc.png") no-repeat left center;
	background-size:100px;
	padding:10px 0 10px 120px;	
}
.svs_hc02{
	background : url("images/service/hc_svs02_pc.png") no-repeat left center;
	background-size:100px;
	padding:10px 0 10px 120px;	
}
.svs_hc03{
	background : url("images/service/hc_svs03_pc.png") no-repeat left center;
	background-size:100px;
	padding:10px 0 15px 120px;	
}
@media screen and (max-width: 970px) {
	.svs_halfbox_wp{display: block; max-width:700px; margin:0 auto; padding-bottom:0}
	.svs_halfbox{width:100%; margin:0 auto 50px;}
	.svs_fullbox{max-width:700px; padding:0 0 20px; display: block;}
	.svs_fullbox_img{width:100%}
	.svs_fullbox_img img{border-radius:30px 30px 0 0}
	.svs_fullbox_text{width:100%; text-align:center; padding:1em 2em 1.5em;	position:relative;}
	.svs_fullbox_text img.svs_icon{display:block}
	.svs_halfbox_text h3,
	.svs_fullbox_text h3{font-size:17px; margin-bottom:0.8em;}
	.svs_hr03,
	.svs_hc01,
	.svs_hc02,
	.svs_hc03{
		background : none;
		padding:0;	
	}
}
/* 会社案内
================================================== */
.about_msgbk{
	width:100%;
 	background: -moz-linear-gradient(top, #e7eef6 30%, #fff 30%, #fff 100%);
  	background: -webkit-linear-gradient(left, #e7eef6 30%, #fff 30%, #fff 100%);
  	background: linear-gradient(to bottom, #e7eef6 30%, #fff 30%, #fff 100%);		
}
.about_msgwp{
	width:100%;
	max-width:1200px;
	margin:0 auto;
	display:flex;
	justify-content: space-between;	
}
.about_msg_img{width:35%; position:relative; padding-left:3%}
.about_msg_img img{
	border-radius:20px;
	width:100%;
	height:550px;
	object-fit: cover;	
}
.about_msg_img .ks_namebox{
	position:absolute;
	top:400px;
	left:-3%;
	background:#cc3333;
	padding:20px 50px;
	border-radius:0 50px 50px 0;
	color:#fff;
}
.ks_namebox p.ks_name{font-size:20px; letter-spacing:0.2em; font-weight:700}
.ks_namebox p.ks_name span{font-size:12px; letter-spacing:0.1em; font-weight:500; margin-left:0.8em}
.about_msg_text{width:58%; padding-top:25px;}
.about_msg_text p.msg_tl{font-size:18px; font-weight:600;}
.about_msg_text h2{
	font-size:38px;
	margin:0.7em 0 1em;
	line-height:1.6em;
}
.about_msg_text p{line-height:2.3em; margin-bottom:1.5em}
@media screen and (max-width: 1400px) {
	.about_msg_text{padding:25px 70px 0 0;}
}
@media screen and (max-width: 970px) {
	.about_msgbk{
		background: -moz-linear-gradient(top, #e7eef6 50%, #fff 50%, #fff 100%);
		background: -webkit-linear-gradient(left, #e7eef6 50%, #fff 50%, #fff 100%);
		background: linear-gradient(to bottom, #e7eef6 50%, #fff 50%, #fff 100%);		
	}	
	.about_msgwp{display:block;}
	.about_msg_img{width:100%; position:relative; padding-left:8%}
	.about_msg_text{width:100%; padding:25px 70px;}
	.about_msg_img img{
		border-radius:20px 0 0 20px;
		width:100%;
		height:350px;
		object-fit: cover;
	}
	.about_msg_img .ks_namebox{top:220px;}
}
h2.jp_r_cmname,
h2.jp_b_cmname{font-size:36px; margin-bottom:0.5em; font-weight:700;}
h2.jp_r_cmname::first-letter{color: #cc3333;}
h2.jp_b_cmname::first-letter{color: #013893;}
p.en_cmname{font-size:15px; letter-spacing:0.08em; font-weight:700}
.about_fstwp{
	width:100%;
	margin:200px auto 0;
	position:relative;
	padding:150px 0 80px;
}
.about_img{
	position:absolute;	
	width:70%;
	top:-150px;
	right:0;	
}
@media screen and (max-width: 1200px) {
	.about_img{width:85%;}
}
.about_img img{
	width:100%;
	height:330px;
	object-fit: cover;
	border-radius:30px 0 0 30px;
}
.about_info_wp{
	max-width:1000px;
	margin:30px auto 0;
	background:#fff;
	padding:5% 7%;
	border-radius:30px;	
}
.about_info_wp h3{
	margin:30px 0 15px;
	font-size:18px;
	letter-spacing:0.08em;
}
dl.about_info{
	width:100%;
	display: flex;
	flex-wrap: wrap;
}
dl.about_info dt, dl.about_info dd {
  box-sizing: border-box;
}
dl.about_info dt {
	display: flex;
  	width: 150px;
  	padding: 1.2em 0.3em;
  	border-bottom: 1px solid #ccc;
	font-weight:700;
	letter-spacing:0.07em;
}
dl.about_info dd {
	display: flex;
	width: calc(100% - 150px);
	margin-left: 0;
	padding: 1.2em 0.3em;
	border-bottom: 1px solid #ccc;
}
dl.about_info dd h4{font-size:15px; font-weight:600; margin-bottom:0.4em;}
dl.about_info dd ul li{
	list-style-type:disc;
	margin-bottom:0.3em;
	margin-left:1em;
}
a.blue_textlink{
	background : url("images/link_blue.png") no-repeat right center;
	background-size:15px;
	padding:5px 28px 5px 0;		
	color:#013893;
	font-weight:600;
}
a.blue_textlink:hover{text-decoration:underline}
.map-wp {
    position: relative;
    width: 100%;
	margin: 15px auto;
    padding-top: 56.25%;
    height: 0;
}
.map-wp iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	border-radius:15px;
}
p.train_i{
	background : url("images/about/access_icon.png") no-repeat left top 0.2em;
	background-size:40px;
	padding:10px 0 15px 50px;
	font-weight:700;
}
p.train_i span{font-weight:500; margin-left:0.5em}
.biz-vc_title{
	width:85%;
	margin:0 auto;
	padding-top:130px;
	background : url("images/about/vc_title.png") no-repeat center top;
	background-size:270px;
	text-align:center;
}
.biz-vc_ptb{padding:60px 0 100px}
.biz-vc_wp{
	clear:both;
	width:87%;
	max-width:1100px;
	margin:55px auto;
	background : url("images/ws_back.jpg") repeat center;	
	position:relative;
	padding:30px 60px;
	border-radius:30px;
}
.biz-vc_wp img.vc_no{
	width:100px;
	height:auto;
	position:absolute;
	left:15px;
	top:-30px;
}
.biz-vc_img{width: 25%;}
.biz-vc_img img{border-radius:10px;}
.biz-vc_inner{
	  text-align: justify;
	  width: 70%;
	padding-top:15px;
}
.biz-vc_inner h3.vc_name{
	font-size:16px;
	font-weight:700;
	margin-bottom:1.5em;
	padding-top:0.3em;
}
.biz-vc_inner h3.vc_name span{font-size:20px; font-weight:600; line-height:1.9em;}
.biz-vc_inner p{margin-bottom:1em}
.biz-vc_inner h4{font-size:15px; font-weight:700; margin-bottom:0.4em}

/* 採用情報
================================================== */
.recruit_title{
	width:85%;
	max-width:1100px;
	margin:0 auto 20px;
	text-align:center;
	position:relative;
}
.recruit_title h3{
	width:95%;
	max-width:1000px;
	position:absolute;
	top:-40px;
	left:50%;
	transform: translateX(-50%);	
	background:#fff;
	border-radius:50px 50px 0 0;
	padding:80px 35px 0;
	font-size:30px;
	font-weight:700;
}
h3.recruit_sc_title{
	font-size:30px;
	font-weight:700;
}
.recruit_title h3::first-letter,
h3.recruit_sc_title::first-letter{color: #cc3333;}
.recruit_info_wp{
	width:80%;
	max-width:1000px;
	margin:30px auto 120px;
}
.recruit_info_wp dl{
	border-top:1px solid #cc3333;
	padding-top:25px;	
}
/* スタッフ紹介
================================================== */
.side_gr-blue{
	width:100%;
 	background: -moz-linear-gradient(left, #e7eef6 25%, #cedeee 25%, #cedeee 100%);
  	background: -webkit-linear-gradient(left, #e7eef6 25%, #cedeee 25%, #cedeee 100%);
  	background: linear-gradient(to right, #e7eef6 25%, #cedeee 25%, #cedeee 100%);
	padding:30px 0 50px;
}
.staff_tl_line{
	width:650px;
	margin:0 auto;
	padding: 0.5em 2em 0 2em;
	background-image: url("images/diag_red-l.png"), url("images/diag_red-r.png");
	background-size:23px auto, 23px auto;
	background-repeat:no-repeat,no-repeat;
	background-position:left bottom, right bottom;
	text-align: center;
}
.staff_tl_line h2{font-size: 24px; line-height:1.5em;}
.staff_innerwp{
	width:90%;
	max-width:1100px;
	min-height:370px;
	margin:40px auto 15px;
	background:#fff;
	border-radius:20px;
	padding:35px 4% 30px 0;
	display:flex;
	justify-content: space-between;	
}
.staff_inimg{width:280px; position:relative; padding-left:4%}
.staff_inimg img{width:100%; height:280px; object-fit: cover; border-radius:30px 0 0 0;}
.staff_namebox{
	width:280px;
	position:absolute;
	top:210px;
	left:0;
	background:#cc3333;
	padding:10px 30px 10px 50px;
	border-radius:0 0 30px 0;
	color:#fff;
	text-align:center;
}
.staff_namebox p.top-stf_yksk{font-size:13px;}
.staff_namebox h3{font-size:18px; letter-spacing:0.2em; font-weight:700; line-height:1.3em}
.staff_namebox h3 span{font-size:12px; letter-spacing:0.1em; font-weight:500;}
.staff_intext{width: calc(100% - 330px); padding-top:10px;}
@media screen and (max-width: 970px) {
	.staff_inimg{width:230px; padding-left:4%}
	.staff_inimg img{height:250px; border-radius:20px 0 0 0;}
	.staff_namebox{
		width:230px;
		top:190px;
		padding:10px 20px 10px 30px;
	}
	.staff_intext{width: calc(100% - 270px);}
}
dl.qua_list{
	width:100%;
	display: flex;
	flex-wrap: wrap;	
}
dl.qua_list dt, dl.qua_list dd {
  box-sizing: border-box;
}
dl.qua_list dt {
	display: flex;
  	width: 70px;
 	letter-spacing:0.2em;
	margin-bottom:1em;
	font-weight:600;
}
dl.qua_list dd {
	display: flex;
	width: calc(100% - 70px);
	margin-bottom:1em;
}
.staff_inmsg{
	padding-top:0.7em;
	border-top: 1px solid #ccc;
	font-size:14px;
	line-height:1.8em;
}
.staff_inmsg h4{
	color:#cc3333;
	font-size:16px;
	font-weight:700;
	letter-spacing:0.05em;
	margin-bottom:0.5em;
}
.ft_svsbanner{
	width:90%;
	max-width:1000px;
	margin:50px auto 100px;
}
/* 物件一覧
================================================== */
.list_search{
	width:620px;
	margin:0 auto;
	padding:25px 0;
}
.search_tl{width:295px;}
.search_tl p span{
	background : url("images/cat_icon.png") no-repeat left center;
	background-size:45px;
	padding:15px 0 10px 65px;		
	color:#cc3333;
	font-size:17px;
	font-weight:600;
}
.search_box{width:calc(100% - 295px);}
.search_box h3.widget_title{display:none}
.search_box select {
  width: 100%;
	font-family: "Figtree", "Noto Sans JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  	font-weight: 500;
	color: #666;
  padding: 1.2em 1.5em;
  font-size: 14px;
  border: 1px solid #fff;
  border-radius: 7px;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
		background : url("images/select_arrow.png") #fff no-repeat right 1.3em center;
  background-size: 14px auto;
  cursor: pointer;
}

.property_listwp{
	width:90%;
	max-width:1300px;
	margin:80px auto 20px;	
}
ul.property_list{
	width:100%;
	margin:50px auto 20px;
	display:flex;
	flex-wrap: wrap;
}
ul.property_list li{
	width:30%;
	margin:0 1.5% 70px;
	position:relative;
	text-align:left;
	border-top: 4px solid #cc3333;
	border-bottom: 1px solid #333;
	border-right: 1px solid #333;
	border-left: 1px solid #333;
	padding:35px 25px 25px;
	transition: transform .6s ease;
	border-radius:15px;
}
ul.property_list li.no_post{
	width:100%;
	margin:0 auto;
	text-align:center;
	border:none;
	padding:50px 0 100px;
}
@media screen and (max-width: 1200px) {
	.property_listwp{width:85%;}
	ul.property_list li{width:46%; margin:0 2% 70px;}
}
@media screen and (max-width: 1100px) {
	.property_listwp{width:88%;}
	ul.property_list li{width:47%; margin:0 1.5% 70px;}
}
.property_inner .info_boxwp{padding:0.2em 0.3em}
.property_inner p.info_add{
	background : url("images/add_icon.png") no-repeat left 0.2em top 0.2em;
	background-size: 17px auto;
	padding-left: 24px;
	font-size:14px;
	font-weight:400;
}
.property_inner p.info_other{font-size:14px;}
.property_inner p.info_other span{
	background:#cc3333;
	padding:0.4em 0.5em;
	border-radius:3px;
	margin-right:0.7em;
	color:#fff;
	font-size:12px;
	font-weight:400;
}
.info_point{
	margin-top:0.8em;
	background:#edf3f9;
	padding:0.7em 1em;
	border-radius:5px;
	font-size:13px;
	line-height:1.7em;
}
/* 物件情報
================================================== */
.property_tlbk{
	width:100%;
 	background: -moz-linear-gradient(top, #e7eef6 30%, #cedeee 30%, #cedeee 100%);
  	background: -webkit-linear-gradient(left, #e7eef6 30%, #cedeee 30%, #cedeee 100%);
  	background: linear-gradient(to bottom, #e7eef6 30%, #cedeee 30%, #cedeee 100%);
	padding-top:10px;
}
.property_slwp{
	width:95%;
	max-width:1000px;
	margin:20px auto 0;
	background:#fff;
	padding:30px 40px;
	border-radius:25px 25px 0 0;	
}
.property_wp{
	width:95%;
	max-width:1000px;
	margin:0 auto 50px;
	background:#fff;
	padding:30px 70px;
	border-radius:0 0 25px 25px;
}
.property_title{
	width:88%;
	max-width:900px;
	margin:0 auto;
	position:relative;
}
.property_title p.post_cat{
	position:absolute;
	top:-45px;
	left:0;
}
.property_title p.post_cat span{
	border:2px solid #cc3333;
	background:#fff;
	padding:0.6em 1.8em;
	font-size:17px;
	font-weight:700;
	color:#cc3333;
	border-radius:8px;
	letter-spacing:0.03em;
}
.property_title h1{
	font-size:22px;
	font-weight:700;
	padding-top:15px;
}
.property_title p.post_date{font-size:14px; text-align:right; padding-right:0.5em}
.property_title p.post_date span{color:#cc3333; font-weight:600; margin-right:0.5em}
.property_slider{
	width:100%;
	max-width:800px;
	margin:25px auto 0;
}
.wk-slide-arrow {
  bottom: 0;
  margin: auto;
  position: absolute;
  top: 0;
	z-index:99;
	width:20px!important;
}
.wk-prev-arrow {
  left: -50px;
}
.wk-next-arrow {
  right: -50px;
}
.thumb-item li{
  aspect-ratio: 16 / 10;
  width: 100%;
  background-color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
	border-radius:10px;
}
.thumb-item li img{
	display:block;
  max-width: 100%;
  height: 100%;
  object-fit: contain;
	border-radius:10px;
	margin:0 auto;
}
.thumb-item-nav{margin-top:15px;}

.thumb-item-nav img{
	width:100%;
	height:100px;
	object-fit: cover;
	border-radius:5px;
}
.thumbnail-item {
  opacity: 0.6;
  transition: opacity .3s linear;
	border:1px solid #fff;
}
.thumbnail-item:hover{
	cursor: pointer;
	opacity: 1;
}

.property_info_f{
	width:100%;
	margin:50px auto 20px;	
	display:flex;
	justify-content: space-between;	
}
.property_info_s{
	width:100%;
	margin:30px auto 35px;	
}
.info_f_title{width:42%;}
.info_f_title h2{font-size:14px; margin-bottom:1em;}
.info_f_title h2 span{
	font-size:12px;
	padding:0.5em 1.2em;
	color:#000;
	background:#f2e75a;
	border-radius:15px;
	margin-right:1em;
}
.info_f_title h3{font-size:18px; font-weight:700; margin-bottom:0.7em}
p.info_f-price{font-size:18px;}
p.info_f-price span{font-size:28px; color:#cc3333; margin-left:0.5em; font-weight:700;}
.info_f_list{width:53%}
dl.property_tb{
	width:100%;
	display: flex;
	flex-wrap: wrap;
	border-top: 1px solid #ccc;
}
dl.property_tb dt, dl.property_tb dd {
  box-sizing: border-box;
}
dl.property_tb dt {
	display: flex;
  	border-bottom: 1px solid #ccc;
	font-size:14px;
	letter-spacing:0.04em;
	background:#f5f8fc;
	font-weight:600;
}
dl.property_tb dd {
	display: flex;
	margin-left: 0;
	border-bottom: 1px solid #ccc;
	font-size:14px;
}
.info_f_list dl.property_tb dt {width: 95px; padding: 0.8em 1em;}
.info_f_list dl.property_tb dd {width: calc(100% - 95px); padding: 0.8em 0.5em 0.8em 1.5em;}
.property_info_s dl.property_tb dt {width: 150px; padding: 0.8em 1.5em;}
.property_info_s dl.property_tb dd {width: calc(100% - 150px); padding: 0.8em 0.5em 0.8em 2.5em;}

.property_point{
	width:100%;
	margin:50px auto 20px;
	position:relative;
	background : url("images/ws_back.jpg") repeat center;
	padding:30px 60px;
	border-radius:13px;
}
.property_point img.point_img{
	width:65px;
	height:auto;
	position:absolute;
	left:-5px;
	top:-40px;
}
.point_inner{font-size:14px; font-weight:700;}
.re-property_wp{width:85%; max-width:1350px; margin:70px auto; padding-bottom:80px}
.re-property_wp .nopost{
	width:90%;
	margin:0 auto;
	padding:35px 0;
	text-align:center;
}
/* コラム
================================================== */
ul.column_allist{
	width:88%;
	margin:0 0 70px;
	border-top:1px solid #ccc;
}
ul.column_allist li{
	width:100%;
	border-bottom:1px solid #ccc;
	padding:25px 7px;
	transition: transform .6s ease;
}
.clm_img{width:25%; overflow: hidden; border-radius:7px;}
.clm_img img{
	width:100%;
	height:auto;
	border-radius:7px;
	transition: transform .6s ease;
}
ul.column_allist li:hover img{
	transform: scale(1.1);
}
.clm_text{width:70%; padding-top:10px; position:relative;}
.clm_text p.clm_date{font-size:14px; letter-spacing:0.05em; margin-bottom:1em}

.clm_text h3{font-size:16px; font-weight:600;}
/* お知らせ一覧
================================================== */
.news_contentswp{
	width:88%;
	max-width:1100px;
	margin:70px auto 30px;
	display:flex;
	justify-content: space-between;	
}
.news_main{width:calc(100% - 260px);}
.news_side{	width:260px;}
.news_side_bk{
	background:#cedeee;
	border-radius:15px;
	padding:1.3em 1em;	
}
@media screen and (max-width: 1200px) {
	.news_main{width:calc(100% - 240px);}
	.news_side{width:240px;}
	.news_side_bk{padding:1em 0.8em;}
}
ul.news_allist{
	width: 88%;
	margin:0 0 70px;
}
ul.news_allist li a{
	display:block;	
	width: 100%;
	border-bottom: 1px solid #ccc;
	background : url("images/red_arrow.png") no-repeat bottom 12px right 10px;
	background-size:40px;
	padding:15px 60px 15px 0;
	transition: .4s;
}
ul.news_allist li a:hover{
	background : url("images/red_arrow.png") no-repeat bottom 12px right 5px;
	background-size:40px;
	color:#444;
}

ul.news_allist li h3{font-size:15px; font-weight:600;}
.post_daybox{
	width:100%;
	margin-bottom:0.7em;
	display:flex;
}
.post_day{width:100px;}
.post_cat{width:width:calc(100% - 100px);}
.post_cat p span.news-term{
	font-size:11px;
	padding:0.6em 1.5em 0.6em;
	color:#000;
	background:#f2e75a;
	border-radius:15px;
}
ul.news_allist li.no_post{
	width:100%;
	padding:50px 0;
}
.news_side h3{font-size:16px; margin-bottom:0.5em;}
.news_side ul{
	background:#fff;
	padding:15px;
	border-radius: 6px;
}
.news_side ul li{
    padding: 0.8em 0 0.8em 1.2em;
	margin-bottom:0.8em;
}
.news_side ul li{
    position: relative;
    vertical-align: middle;
    text-decoration: none;
    font-size: 14px;
	line-height:1.5em;
	border-bottom:1px solid #cedeee;
	font-weight:600;
}
.news_side ul li:last-child{margin-bottom:0;}
.news_side ul li::before{
    position: absolute;
    top: 17px;
    left: 4px;
    margin: auto;
    content: "";
    vertical-align: middle;
    box-sizing: border-box;
    width: 4px;
    height: 4px;
    border: 4px solid transparent;
    border-left: 4px solid #cc3333;
}

/* お知らせ　singleページ
================================================== */
.news_post_bk{
	background:#e7eef6;
	padding-bottom:70px;
}
.news_post_wp{
	width:88%;
	max-width:1000px;
	margin:0 auto;
	background:#fff;
	border-radius:15px;
	padding:40px 60px 40px;
}
.post-title{
	font-size:20px;
	border-bottom: 1px solid #ccc;
	padding-bottom:0.5em;
}
.article_in{
	width:100%;
	margin:20px auto 0;
	padding:0 0.5em;
	text-align:left;
	display: flow-root;
}
.article_in::after {
  	display: block;
  	clear: both;
  	content: '';
}
/* editor設定 */
.article_in p{
    display: block;
    margin: 1.2em 0;
}
strong { font-weight: 700; }
em { font-style: italic; }
blockquote {
	position: relative;
	margin: 2em 0;
	padding: 1em 1em 1em 2.6em;
	border-left: 5px solid #CCC;
	border-radius: 2px;
}
blockquote:after{
	position: absolute;
	bottom: 0;
	right: 0;
	content: '”';
	font-size: 6em;
	opacity: .1;
}
.article_in .aligncenter {
    display: block;
    margin: 10px auto;
}
.article_in .alignright {
  float: right;
  margin-bottom: 15px;
  margin-left: 15px;
}
.article_in .alignleft {
  float: left;
  margin-right: 15px;
  margin-bottom: 15px;
}
.article_in img[class*="wp-image-"],
.article_in img[class*="attachment-"] {
    height: auto;
	max-width:500px;
}
.article_in a{color: #023894;}
.article_in a:hover{text-decoration:underline}

.article_in h2{
	border-left: solid 4px #cc3333;
	padding: 0.1em 0 0.1em 1em;
	font-size:18px;
	margin-bottom:1.2em;
	margin-top:50px;
	font-weight:700;
}
.article_in h3{
	padding: 10px 20px;
	font-size:15px;
	background:#e7eef6;
	margin-bottom:1em;
	margin-top:40px;
	color:#cc3333;
	font-weight:700;
	border-radius:5px;
}
.article_in h4{
	font-size:15px;
	margin-bottom:1em;
	margin-top:40px;
	color:#cc3333;
	font-weight:700;
}
.article_in img{
	max-width:500px;
	margin: 13px 15px 13px 0;
	height:auto;
	border-radius:10px;
}
.article_in ul, .column_in ol { margin-top: 1.5em;}
.article_in ul { list-style-type: disc;}
.article_in ol { list-style-type: decimal;}
.article_in li { margin-left: 1.5em; margin-bottom:0.5em}

/* コラム店舗info
================================================== */
.shop_info{
	width:100%;
	margin:50px auto 0;
}
.shop_info h3{
	background:#e7eef6;
	padding:0.7em 1em;
	color:#cc3333;
	font-size:18px;
	border-radius:7px;
	letter-spacing:0.05em;
}
dl.shop_infolist{
	width:97%;
	margin:13px auto 0;
	display: flex;
	flex-wrap: wrap;
}
dl.shop_infolist dt, dl.shop_infolist dd {
  box-sizing: border-box;
}
dl.shop_infolist dt {
	display: flex;
  	width: 120px;
  	padding: 0.8em 0.3em;
  	border-bottom: 1px dotted #999;
	font-weight:500;
	font-size:14px;
}
dl.shop_infolist dd {
	display: flex;
	width: calc(100% - 120px);
	margin-left: 0;
	padding: 0.8em 0.3em;
	border-bottom: 1px dotted #999;
	font-size:14px;
}
.shop_other{
	width:97%;
	margin:0 auto;
	padding:1em 0.3em;
	border-bottom: 1px dotted #999;
	font-size:14px;
}
.shop-map{
	width:97%;
	margin:45px auto 0;	
}
.shop-map h4{
	background : url("images/add_icon.png") no-repeat left 0.2em top 0.2em;
	background-size: 20px auto;
	padding-left: 30px;
	font-size:16px;
	margin-bottom:15px;
}
/* お客様の声
================================================== */
.review_listwp{
	width:90%;
	max-width:1200px;
	margin:50px auto;
	padding-bottom:50px;
}
.review_tl_line{
	width:650px;
	margin:0 auto;
	padding: 0.5em 2em 0 2em;
	background-image: url("images/diag_red-l.png"), url("images/diag_red-r.png");
	background-size:23px auto, 23px auto;
	background-repeat:no-repeat,no-repeat;
	background-position:left bottom, right bottom;
	text-align: center;
}
.review_tl_line h2{font-size: 20px; line-height:1.5em;}
ul.review_list{
	width:100%;
	margin:50px auto;
	display:flex;
	flex-wrap: wrap;	
}
ul.review_list li{
	width:30%;
	margin:20px 1.5% 30px;
	border:1px solid #ccc;
	border-radius:10px;
	padding:1em;
	transition: transform .6s ease;
	position:relative;
}
@media screen and (max-width: 970px) {
	.review_listwp{	width:85%; margin:30px auto;}
	ul.review_list{margin:30px auto;}
	ul.review_list li{
		width:46%;
		margin:20px 2%
	}
}
img.revlist_icon{
	width:55px;
	height:auto;
	position:absolute;
	top:-18px;
	left:10px;
	z-index:99;
}
.revlist_image{
  aspect-ratio: 16 / 9;
  width: 100%;
  background-color: #f4f4f4;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
	border-radius:10px;
}
.revlist_image img{transition: transform .6s ease;	}
ul.review_list li:hover .revlist_image img{
	transform: scale(1.1);
}
.revlist_text{position:relative}
p.revlist_contract{
	position:absolute;
	top:-2.7em;
	left:-1em;
}
p.revlist_contract span{
	background:#cc3333;
	border-radius:0 30px 30px 0;
	padding:0.7em 1.5em;
	font-size:13px;
	color:#fff;
}
.revlist_text h3{font-size:14px; font-weight:600; margin-top:30px}

.review_title{
	width:100%;
	position:relative;
	border-bottom: 1px solid #ccc;
	padding-bottom:1em;
}
img.rev_icon{
	width:90px;
	height:auto;
	position:absolute;
	top:-55px;
	left:0;
}
p.rev_contract{padding-left:110px;}
p.rev_contract span{
	background:#cc3333;
	border-radius:30px;
	padding:0.6em 1.8em;
	font-size:16px;
	font-weight:600;
	color:#fff;
	margin-bottom:1em;
}
.review_title h1{font-size:20px; font-weight:700; margin-top:35px; line-height:1.7em;}
.review_inner{
	width:97%;
	margin:0 auto;
	padding:35px 0 0;
}
.rev_image{
  aspect-ratio: 16 / 9;
  width: 100%;
	max-width:600px;
  background-color: #f4f4f4;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
	border-radius:10px;
	margin-bottom:40px;
}
.rev_image img,
.revlist_image img{
  width: 100%;
  height: 100%;
  object-fit: contain;
	border-radius:10px;
}
ul.review_client{
	width:100%;
	margin:20px auto 30px;
}
ul.review_client li{display:inline-block; margin-right:2em}
ul.review_client li span{
	background:#e7eef6;
	color:#cc3333;
	padding:0.6em 1em 0.5em;
	border-radius:30px;
	font-size:14px;
	margin-right:0.8em;
}

dl.review_qa dt{
	background : url("images/reviews/qa_icon.png") no-repeat left top 0.4em;
	background-size:30px;
	border-bottom: 1px dotted #cc3333;
	padding:10px 0 5px 45px;
	font-size:15px;
	font-weight:700;
	margin-bottom:0.8em;
}
dl.review_qa dd{margin-bottom:35px; padding:0 5px;}
.review_photo{
	width:100%;
	max-width:600px;
	margin:25px 0;
}
.review_photo ul li{width:49%;}
.review_photo ul li img{width:100%; height:auto; border-radius:8px;}
.add-comments{
	width:100%;
	margin:20px auto;
	border-top: 1px dotted #cc3333;
	padding-top:15px;
}
.review_staff{
	width:100%;
	margin:20px auto;
	background : url("images/ws_back.jpg") repeat center;	
	padding:30px 50px;
	border-radius:20px;
	position:relative;
}
.review_staff img.comment_icon{
	width:90px;
	height:auto;
	position:absolute;
	left:0;
	top:-30px;
}
.rev_flex{
	display:flex;
	justify-content: space-between;	
}
.rev_staffimg_box{width:130px;}
.rev_staffimg img{
	width:100%;
	height:auto;
	border-radius:7px;
}
.rev_staffname{padding:0.7em 0; text-align:center}
.rev_staffname h4{font-size:15px; font-weight:600; letter-spacing:0.05em;}
.rev_staffname h4 span{font-size:13px; font-weight:500;}
.rev_staff_comment{
	width:calc(100% - 170px);
	font-size:14px;
}
/*　ナビゲーション
================================================== */
ul.post_navigation{
	clear:both;
	width: 100%;
	text-align: center;
	margin: 40px auto 70px;
}
ul.post_navigation li{
	margin: 10px 5px;
	display: inline-block;
}
ul.post_navigation li a{
	text-decoration: none;
	transition: .4s;
	font-size: 15px;
}
ul.post_navigation li.left a,
ul.post_navigation li.right a{
	border:1px solid #cc3333;
	padding: 0.8em 2em;
	border-radius:50px;
	color:#cc3333;
}
ul.post_navigation li.center a{
	background: #666;
	border:1px solid #666;
	color: #fff;
	padding: 0.8em 2em;
	border-radius:50px;
}
ul.post_navigation li.left a:hover,
ul.post_navigation li.right a:hover,
ul.post_navigation li.center a:hover{
	border:1px solid #cc3333;
	background-color: #cc3333;
	color:#fff!important;
}
ul.post_navigation li.left a i{
	margin-right: 10px;
}
ul.post_navigation li.right a i{
	margin-left: 10px;
}
.post_naviback{
	width:80%;
	margin:50px auto 90px;
	text-align:center
}
.post_naviback a{
	padding:0.8em 2.5em;
	-webkit-transition: .4s;
	transition: .4s;
	font-size:15px;
	color:#cc3333;
	border:1px solid #cc3333;
	border-radius:50px;
}
.post_naviback a:hover{
	background: #cc3333;
	color:#fff;
}
/*　一覧ページのページネーション
================================================== */
.pager{
	width:90%;
	margin: 30px auto 70px;
}
.pager  ul.pagination {
  text-align: center;
  margin: 0;
  padding: 0;
}

.pager .pagination li {
  display: inline;
  margin: 0 2px;
  padding: 0;
  display: inline-block;
  width: 40px;
  height: 40px;
  text-align: center;
  position: relative;
	font-size:15px;
}

.pager .pagination li a{
  vertical-align: middle;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border:1px solid #666;
	border-radius:5px;
  text-align: center;
  display:table;
  text-decoration: none;
	-webkit-transition: .4s;
	transition: .4s;
}

.pager .pagination li a span{
  display:table-cell;
  vertical-align:middle;
}

.pager .pagination li a.active{
  color: #fff;
  background-color: #666;
	border:1px solid #666;	
}

.pager .pagination li a:hover{
  color: #fff;
  background-color: #cc3333;
border:1px solid #cc3333;	
}

@media only screen and (max-width: 767px){
.pager{	margin: 20px auto 50px;}	
.pager  ul.pagination{margin-top:10px}	
.pager .pagination li{
    display: none;
  }

  .pager .pagination li.pre,
  .pager .pagination li.next{
    display: inline-block;
    width: 45%;
    height: 40px;
    text-align: center;
  }

  .pager .pagination li.pre a,
  .pager .pagination li.next a{
    width: 100%;
    text-align: center;
	font-size:13px;
	  font-weight:600;
	color:#cc3333;
	border:1px solid #cc3333;
	border-radius:50px;
  }
  .pager .pagination li.pre a:hover,
  .pager .pagination li.next a:hover{
	color:#fff;
  }
  .pager .pagination li.pre span::after{
    content: " 前のページ";
  }

  .pager .pagination li.next span::before{
    content: "次のページ ";
  }

}
/* お問い合わせフォーム
================================================== */
.contact_wp{
	width:85%;
	max-width:950px;
	margin:50px auto 150px;
	text-align:center;
}
table.contact-form{
	width:100%;
	margin: 50px auto 30px;
	border-collapse: collapse;
}
table.contact-form th, table.contact-form td{
 	text-align: left;
	font-size:16px;
}
table.contact-form th{
	width: 30%;
	min-width:200px;
	vertical-align:top;
	padding: 30px 0 20px;
	font-weight:500;
}
table.contact-form td{padding: 20px 0;}
input, select {
  -webkit-appearance: none;
  appearance: none;
}
table.contact-form input,
table.contact-form textarea{
	outline: none;
  	padding: 1.2em 1em;
	border:1px solid #ccc;
	font-family: inherit;
	color:#000;
	width:100%;
	border-radius:5px;
	font-size:15px;
	font-weight:400;
}
table.contact-form input[name="zipcode1"]{width:80px; padding: 0.7em 1em; margin:0 0.5em}
table.contact-form input[name="zipcode2"]{width:100px; padding: 0.7em 1em; margin:0 1em 0 0.5em}
a#zip-button{
	background:#333;
	color:#fff;
	padding: 1em 2em;
	border-radius:5px;
	letter-spacing:0.2em;
	font-size:14px;
	cursor: pointer;
}

@media screen and (max-width: 898px) {
	table.contact-form{margin: 30px auto 40px;}
	table.contact-form th, table.contact-form td{display:block; width:100%}
	table.contact-form th{padding: 20px 2px 7px;}
	table.contact-form td{padding: 0 2px 25px; border-bottom:1px solid #eee}
	table.contact-form input,
	table.contact-form textarea{padding: 1em 0.8em;}
}

/* サンプル文字 */
input::placeholder,
textarea::placeholder{color: #999; font-size:15px; font-weight:400}
/* IE */
input:-ms-input-placeholder,
textarea:-ms-input-placeholder{color: #999; font-size:15px; font-weight:400}
/* Edge */
input::-ms-input-placeholder,
textarea::-ms-input-placeholder{color: #999; font-size:15px; font-weight:400}

.requisite{
	font-size: 13px;
	margin-right: 15px;
	padding:0.5em 0.7em 0.5em 1.2em;
	letter-spacing:0.4em;
	border-radius:5px;
}
.rebk_red{ background:#cc3333; color:#fff;}
.rebk_gray{ background:#666; color:#fff;}
.contact_footer{
	width:100%;
	text-align:center;
	margin:40px auto 0;
}
.contact_footer p.send_info{font-size:16px; font-weight:700; margin-bottom:1.3em}
/* チェックボックス変更 */
.policy_check{
	width:90%;
	margin:0 auto;
	text-align:center;
	font-size:16px;
	font-weight:500;
}
.wpcf7-list-item-label { position: relative;}

.policy_check input[type=checkbox] {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  z-index: 1;
  margin: 0;
  width: 23px;
  height: 23px;
  cursor: pointer;
  opacity: 0; 
}
.policy_check .wpcf7-list-item-label::before {
  content: "";
  position: absolute;
  top: 52%;
  left: -1.5em;
  transform: translateY(-50%);
  width: 23px;
  height: 23px;
  border: 2px solid #3a65ac;
  background: #FFF;
  cursor: pointer;
  transition: all 0.3s;
}
.policy_check .wpcf7-list-item-label::after {
  content: "";
  position: absolute;
  top: 52%;
  left: -1.5em;
  transform: translateY(-50%);
  width: 25px;
  height: 25px;
  background: transparent url("images/mf_check.png") no-repeat center center / contain;
  cursor: pointer;
  transition: all 0.3s;
  opacity: 0; 
}
input[type=checkbox]:checked + .wpcf7-list-item-label::after {
  opacity: 1;
}
input[type=checkbox]:checked + .wpcf7-list-item-label::before {
  opacity: 0;
}
a.policy_link {
	display: inline-block;
	margin-left: 15px;
	text-decoration: underline;
	background : url("images/link_blue.png") no-repeat right 0.7em center;
	background-size:18px;
	color:#3561a9;
	padding-right:40px;
}
a.policy_link:hover{color:#013893;}

span.wpcf7-spinner { display: none;}
.wpcf7-submit{
	font-family: inherit;
	font-weight: 600;
	background : url("images/wt_arrow.png") #cc3333 no-repeat right 25px center;
	background-size:50px;
	display:block;
	margin:0 auto;
	width:300px;	
	padding:15px 60px 15px 20px;
	border-radius:50px;
	font-size:20px;
	text-align:center;
	color:#fff;
	transition: .3s;
	letter-spacing:0.07em;
	border:1px solid #cc3333;
	cursor: pointer;
}
.wpcf7-submit:hover{
	background : url("images/wt_arrow.png") #b91111 no-repeat right 20px center;
	background-size:50px;
	border:1px solid #b91111;
}
.wpcf7-submit:disabled {
	background : url("images/wt_gry-arrow.png") #ccc no-repeat right 25px center;
	background-size:50px;
	border:1px solid #ccc;
}
div.wpcf7-mail-sent-ok,
div.wpcf7-mail-sent-ng,
div.wpcf7-spam-blocked,
div.wpcf7-validation-errors,
.wpcf7 form .wpcf7-response-output{
	border: none;
	background:#e7eef6;
	color:#cc3333;
	padding:1.3em 2em;
	border-radius:50px;
}
.thanks_info{
	width:85%;
	max-width:1000px;
	margin:80px auto 250px;
	text-align:center;
}
.thanks_info h3{font-size:26px; margin-bottom:1.5em;}
.thanks_info p{
	margin-bottom:50px;
	line-height:2em;
}
/* プライバシーポリシー
================================================== */
.policy_wp{
	width:90%;
	max-width:900px;
	margin:70px auto 130px;
	text-align:left;
}
.policy_wp h3{
	font-size:18px;
	padding:0.4em;
	margin:3em 0 0.5em;
	border-bottom: 1px dotted #cc3333;
}
.policy_wp p{
	padding:0 0.5em;
	margin-bottom:1em;
}
.policy_wp h4{
	margin:1em 0.5em 0.2em;
	font-size:15px;
	font-weight:700;
}
.policy_wp ul li{
	list-style:disc;
	margin-left:1.5em;
	margin-bottom:0.5em;
}
/* フッター
================================================== */
.footer_wp{
	background : url("images/footer/footer_illust.png") #e7eef6 no-repeat center bottom;
	background-size: 100%;
	padding:50px 0 70px;
	border-radius:100px 100px 0 0;
}
.ft_contact_text{text-align:center; margin-bottom:15px}
.ft_contact_text p span{
	font-size: 20px;
	font-weight:700;
	padding: 0.5em 2em 0 2em;
	background-image: url("images/diag_l.png"), url("images/diag_r.png");
	background-size:13px auto, 13px auto;
	background-repeat:no-repeat,no-repeat;
	background-position:left bottom, right bottom;
	text-align: center;
	line-height:1.5em;
}
.ft_contact_back{
	width:85%;
	max-width:1200px;
	margin:0 auto 40px;
	background:#d2e0ee;
	border-radius:80px;
	padding:40px;
}
.ft_contactwp{
	width:100%;
	max-width:750px;
	margin:0 auto;
}
.ft_tel{width:40%;}
.ft_mail{width:50%;}
.ft_mail a{
	display:block;
	text-align:center;
	background : url("images/wt_mail.png") #cc3333 no-repeat left 3.5em center;
	background-size:30px;
	padding:20px 25px 20px 60px;
	border-radius:50px;
	font-size:16px;
	font-weight:700;
	color:#fff;
	-webkit-transition: .4s;
	transition: .4s;
}
.ft_mail a:hover{
	background : url("images/wt_mail.png") #b91111 no-repeat left 3.5em center;
	background-size:30px;
}
.footer_info{width:calc(100% - 500px);}
p.footer_cpname{
	font-size:45px;
	letter-spacing:0.07em;
	line-height:1.4em;
	font-weight:700;
	margin-bottom:0.7em;

}
p.footer_cpname span{color:#cc0000}
.ft_udline{
	max-width:400px;
	border-bottom:1px solid #ccc;
	padding:1em 0;
}
.footer_info h3{font-size:12px;}
.footer_info h3 span{font-size:16px; font-weight:700; margin-right:1.5em}
.footer_info p.ft-add{font-size:14px; letter-spacing:0.07em}
.footer_info p.mk_no{margin-top:1em; font-size:13px; letter-spacing:0.07em}
.ft_sns{
	width:100%;
	margin:30px auto 0;
}
.ft_sns h4{font-size:16px; letter-spacing:0.07em; color:#cc0000; margin-bottom:1em}
.ft_sns ul li{
	display:inline-block;
	margin-right:1.5em;
}
.ft_sns ul li img{width:30px; height:auto}
.footer_navi{width:450px; padding-top:80px;}
ul.ft_list{margin-bottom:1.8em}
ul.ft_list li{
	width:47%;
	margin-bottom:1em;
	list-style:disc;
}
ul.ft_list li a{font-size:14px; font-weight:700; }
p.ft_submenu{margin-bottom:1em;}
p.ft_submenu a{
	font-size:14px;
	font-weight:700;
	border-bottom:2px dotted #666;
	padding-bottom:0.3em;
}
p.ft_submenu a:hover{border-bottom:2px dotted #cc3333;}
.ft-hc_banner{max-width:370px; margin-top:30px;}
.ft_link_list{max-width:600px; margin-top:30px;}
.ft_link_list ul li{width:32%}
.ft-hc_banner img,
.ft_link_list ul li img{border-radius:8px}
p.copy{
	padding:40px 0 0;
	font-size:12px;
	font-weight:600;
	letter-spacing:0.07em;
	text-align:center
}
/* LP用
================================================== */
#content_lp {
	width:100%;
	max-width:1100px;
	margin:0 auto;
}
#content_lp_2{
	width:100%;
	margin:0 auto;
	padding-top:50px;
	text-align:center;
}
.lp_1_psd{padding:50px 0 100px;}
.page-template-page-lp02{padding:50px 0 100px;}
#content_lp img{width:100%; height:auto}
#content_lp_2 .sec_01 img {width: 70%; height:auto}
@media screen and (max-width: 970px) {
	.lp_1_psd{padding:100px 0 40px;}
	.page-template-page-lp02{padding:20px 0 40px;}
	#content_lp_2{padding-top:100px}
}
#content_lp_2 .sec_01 {
    background: url("images/lp02/01_bk.jpg");
    background-size: 100% 100%;
    background-repeat: no-repeat;
}
.page-template-page-lp02 .sec_05 .layer_01 img {
    border: 10px solid #c90;
    -webkit-box-shadow: 5px 5px 10px rgb(0 0 0 / 30%);
    box-shadow: 5px 5px 10px rgb(0 0 0 / 30%);
}
.page-template-page-lp02 .sec_05 .layer_02 {
    margin-top: -10rem;
}
.page-template-page-lp02 .sec_03 {
    margin-top: -3rem;
}
/* ページトップへ戻る
================================================== */
.page_top {
	position:fixed;
	bottom:3%;
	right:1%;
	width: 60px;
	z-index: 400;
}
.page_top img{	width:100%; height:auto;}

/*　IEブラウザ用 */
.clearfix:after{
  content: " ";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}
.clearfix{
  min-height: 1px;
}
* html .clearfix{
  height: 1px;
  /*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}