@charset "utf-8";

/*===============================
 Base
===============================*/
html {
	height: 100%;
}
body {
	color: black;
	height: 100%;
}
a {
	color: black;
	text-decoration: none;
	transition: .5s;
}
a:hover {
	color: black;
	text-decoration: none;
}
img {
	width: 100%;
	height: auto;
}


/*===============================
 Clear
===============================*/
img {
	border: 0;
	vertical-align: top;
	font-size: 0;
	line-height: 0;
}
ol, ul {
	list-style: none!important;
}
* {
	margin: 0;
	padding: 0;
}

/*===============================
 Font
===============================*/
html {
	font-size: 10px;
}
body {
	font-family: 'Noto Sans JP', sans-serif;
	line-height: 1;
	font-size: 1.6rem;
	font-weight: 400;
	letter-spacing: 0.075em;
}
.mincho {
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
}
h1, h2, h3, h4, h5 {
	line-height: 1.5;
	font-weight: 400;
}
p, li, dt, dd, th, td {
	line-height: 1.5;
}

/*===============================
 Wrapper
===============================*/
.wrapper {
	position: relative;
	width: 100%;
	margin: 0 auto;
}
@media screen and (min-width: 769px) {
	.wrapper {
		min-width: 1200px;
	}
}
@media screen and (max-width: 768px) {
	.wrapper {
		width: 100% !important;
		overflow-x: hidden;
	}
}

/*===============================
 Header
===============================*/
.header {
	width: 100%;
	height: 95px;
	position: absolute;
	margin: 0 auto;
	z-index: 100;
	left: 0;
	top: 0;
}
.header_inner {
    /* max-width: 1280px; */
    margin-left: auto;
    margin-right: auto;
    padding: 10px 2.5% 0;
	width: 100%;
	/* margin: 0 auto;
	padding: 0 2.5%;
	display: -webkit-flex;
	display: flex; */
}
.header_lg {
	margin-top: 30px;
	width: 60px;
	height: 150px;
	position: absolute;
	right: 40px;
	top: 0;
}
.header_lg {
	display: block;
	max-width: 340px;
	width: 40%;
	height: 150px;
	background: url("../img/h1_logo.png") 0 0 / 100% auto no-repeat;
	text-indent: -9999px;
	/* cursor: pointer; */
}
.cp_kinen{
	width: 220px;
	position: fixed;
	top: 60%;
	left: 0;
}
.page-top {
	width: 15%;
	margin: 0 ;
	padding: 0 ;
	position: fixed;
	top: 60%;
	left: 0;
	-webkit-transition:all 0.3s ;
	-moz-transition:all 0.3s ;
	transition:all 0.3s ;
}

@media screen and (max-width: 768px) {
	.header {
		height: 45px;
		z-index: 1;
	}
	.header_inner {
		padding: 0 3.4375%;
	}
	.header_lg {
		margin-top: 15px;
		width: 70%;
		position: absolute;
		left: 20px;
		top: 0;
	}
	.header_lg {
		width: 70%;
		max-width: 70%;
		height: 70px;
		background: url(../img/h1_logo.png) left top / 80% auto no-repeat;
		text-align: left;
		margin-left: auto;
		margin-right: auto;
	}
	.page-top {
		display: none !important;
	}
}

/*===============================
 Key visual 
===============================*/
.kv {
	position: relative;
	width: 100%;
	padding-top: 52.5%;
	background: url("../img/bg_pc_kv.jpg?date=211122") center center / cover no-repeat;
}
.kv_catch {
	position: absolute;
    top: 0px;
    left: calc(50% - 27%);
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    width: 52%;
    height: auto;
}
.kv_catch img {
	width: 100%;
	height: auto;
}
.kv_catch_sp img {
	display: none;
}
.kv_cam {
	left: 23.04%;
	bottom: 81.53%;
	width: 64.36%;
}

@media screen and (max-width: 768px) {
	.kv {
		padding-top: 156.25%;
		background: url("../img/bg_sp_kv.jpg?date=211028") center top / contain no-repeat;
        position: relative;
	}
	.kv_catch {
		position: absolute;
		top: 60px;
    	width: 95%;
		left: 2%;
	}
	/* .kv_catch_sp {
		position: absolute;
		top: 10px;
    	width: 95%;
		left: 2%;
	} */

}


/*===============================
 Campaign
===============================*/
/* .camp {
	background: url("../img/back.jpg") center top / auto repeat;
} */
.camp_inner {
	padding: 0 5.58% 90px;
	margin: 0 auto;
	display: block;
}

.camp_sche{
	background: #796A56;
	text-align: center;
	font-size: 3.2rem;
	font-weight: 400;
	color: #fff;
	margin: 20px 0 00px;
	padding: .5rem 0 .8rem;
}
.camp_sche span {
	color: #fff;
	font-size: 1.9rem;
	padding-top: 3px;
}

.camp_tokuten{
	/* background-image: url(../img/cp_back.jpg); */
	background-color: #fff;
	margin: 20px 0 15px;
	/* padding: 44px 4.28%; */
    position: relative;
	border: 16px solid #A6D1CA;
}
.cp_tit {
	background-color: #319C9F;
	padding: 2rem;
	text-align: center;
	font-family: ten-mincho-text, serif;
	font-style: normal;
	font-weight: 400;
	font-size: 5rem;
	color: #fff;
}
.camp_rank_inner {
	padding: 44px 4.28% 44px;
}
.camp_entry{
	padding: 0px 4.28% 44px;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: space-between;
}
.camp_entry01, .camp_entry02 {
	width: 49%;
	line-height: 160%;
}

.ol {
	padding: 1rem 0 1rem;
	border-top: 1px solid #A38A77;
}
.ol:last-of-type {
	border-bottom: 1px solid #A38A77;
}

.ol_head {
	width: 100%;
	margin-right: 12px;
	text-align: center;
	font-size: 1.4rem;
	font-weight: 700;
	color: #fff;
	letter-spacing: .02em;
	padding: 5px 0;
	border-radius: 25px;
	background: #3D3A39;
	box-sizing: border-box;
}
.ol_data{
	color: #3D3A39;
	font-size: 2.2rem;
    font-weight: 700;
	text-align: center;
    padding: .7rem 0rem 1rem;
}
.ol_data span{
    font-size: 1.4rem;
}
.ol_txt{
	color: #3D3A39;
	font-size: 1.7rem;
    font-weight: 700;
    text-align: center;
    padding: .9rem 0rem 0rem;
    letter-spacing: 0;
	line-height: 150%;
}
.ol_txt span{
    font-size: 1.4rem;
	font-weight: 400;
	text-align: right;
}

.camp_img img {
    width: 100%;
    height: auto;
}
.mab20 {
    margin-bottom: 20px;
}
.mab60 {
    margin-bottom: 20px;
}
.conf{
	margin-top: 30px;
}

@media screen and (min-width: 769px) {
.camp_inner {
	width: 1200px;
}

}
.camp_rankItem {
    width: 100%;
    display: block;
    margin-left: auto;
    margin-right: auto;
}
@media screen and (max-width: 768px) {
.camp {
	padding: 0 5.35% 32px;
	/* background: url("../img/back.jpg") center top / 150% repeat; */
}
.camp_inner {
	padding: 0 5.58% 90px;
}
.camp h2{
font-size: 2.6rem;
margin: 0 auto 20px;
}

.camp_rank {
	padding: 30px 5.35% 15px;
	margin: 30px 0;
	display: block;
}
.camp_rank .camp_rank_inner{
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
}

.camp_rank .camp_rankItem1:nth-of-type(1){
	width: 100%;
	padding-bottom: 20px;
}
.camp_rank_right p:nth-of-type(1){
border-top: solid 1px #221815;
}
.camp_rank_right{
	width: 100%;
	margin: 0 auto;
	border: 0;
}

.camp_tokuten{
	background-image: url(../img/cp_back.jpg);
	background-size: cover;
	margin: 20px 0 15px;
	/* padding: 30px 4.28%; */
    position: relative;
	border: 8px solid #A6D1CA;
}
.cp_tit {
	background-color: #319C9F;
	padding: 2rem .5rem;
	text-align: center;
	font-family: ten-mincho-text, serif;
	font-style: normal;
	font-weight: 400;
	font-size: 3rem;
	color: #fff;
}
.camp_sche{
	background: #796A56;
	text-align: center;
	font-size: 2rem;
	font-weight: 400;
	color: #fff;
	margin: 0px 0 10px;
	padding: .5rem 0 .8rem;
}
.camp_sche span {
	color: #fff;
	font-size: 1.2rem;
	padding-top: 3px;
}
.camp_copy {
	color: #73162B;
	font-size: 2.4rem;
	font-weight: 700;
	padding: 8px 10px;
	margin-right: 15px;
	letter-spacing: 0em;
    text-align: left;
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
}

.ol {
padding: 0 0 10px;
display: block;
}
.ol_head {
margin-top: 15px;
}
.ol_head {
	width: 100%;
	margin-right: 12px;
	text-align: center;
	font-size: 1.4rem;
	font-weight: 700;
	color: #fff;
	letter-spacing: .02em;
	padding: 5px 0;
	border-radius: 25px;
	background: #3D3A39;
	box-sizing: border-box;
}

.ol_data{
	margin-top: 8px;
	font-size: 2.2rem;
	letter-spacing: .02rem;
	padding: 0;
}
.ol_data span {
font-size: 1.2rem;
}
.camp_entry{
	font-size: 1rem;
	margin: 10px 0 15px;
	padding: .6rem 1rem;
	display: block;
}
.camp_entry01, .camp_entry02 {
	width: 100%;
}
}
/*==================================================
ふわっ
===================================*/

.box{
	opacity: 0;
  }

.fadeUp {
	animation-name:fadeUpAnime;
	animation-duration:0.5s;
	animation-fill-mode:forwards;
	opacity: 0;
	}
	
	@keyframes fadeUpAnime{
	  from {
		opacity: 0;
	  transform: translateY(100px);
	  }
	
	  to {
		opacity: 1;
	  transform: translateY(0);
	  }
	}
	/* アニメーションスタートの遅延時間を決めるCSS*/
	.delay-time02{
	animation-delay: 0.2s;
	}
	
	.delay-time04{
	animation-delay: 0.4s;
	}

	.delay-time04{
	animation-delay: 0.6s;
	}
	
	.fadein {
	  opacity: 0;
	  -webkit-transform: translateY(50px);
		  -ms-transform: translateY(50px);
			  transform: translateY(50px);
	  -webkit-transition: all 1s;
	  -o-transition: all 1s;
	  transition: all 1s;
	}
@media screen and (max-width: 768px) {
	.fadein {
		opacity: 1;
		transform: none;
		transition: none;
		}
}
/*===============================
 bg
===============================*/
.bg_navy {
	background-color: #0F1C37;
}
.bg_wh {
	background-color: #fff;
}

/*===============================
 reservation_area
===============================*/
#reservation_area {
	/* background: url("../img/back.jpg") center top / auto repeat; */
	margin: 60px 0 0 0;
}
#reservation_area .inner {
	padding: 0 5.58% 90px;
	margin: 0 auto;
	display: block;
}
@media screen and (min-width: 769px) {
	#reservation_area .inner {
		width: 1200px;
	}
}
.showrooms_list {
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content: space-between;
	padding: 0px 1.28% 0px;
}
.itemCard {
	width: 32% !important;
	position: relative;
	padding: 1.6rem;
	border: 1px solid #000;
	position: relative;
	min-height: 660px;
	margin-top: 24px;
}
.itemCard p {
	font-size: 1.4rem;
}
.itemCard p.fs_xs {
	font-size: 1.2rem;
}
.showrooms_list:after {
    content: "";
    display: block;
    width: 32%;  /* .boxに指定したwidthと同じ幅を指定する */
    height: 0;
}
.catmark01 {
	position: absolute;
	top: 0;
	left: 0;
	background-color: #86BD20;
	padding: .7rem 1.5rem;
	font-size: 1.6rem;
	font-family: zen-maru-gothic, sans-serif;
	font-style: normal;
    font-weight: 500;
	color: #fff;
}
.catmark02 {
	position: absolute;
	top: 0;
	left: 0;
	background-color: #FF9E2C;
	padding: .7rem 1.5rem;
	font-size: 1.6rem;
	font-family: zen-maru-gothic, sans-serif;
	font-style: normal;
    font-weight: 500;
	color: #fff;
}
.catmark03 {
	position: absolute;
	top: 0;
	left: 0;
	background-color: #4CC9FE;
	padding: .7rem 1.5rem;
	font-size: 1.6rem;
	font-family: zen-maru-gothic, sans-serif;
	font-style: normal;
    font-weight: 500;
	color: #fff;
}
.showrooms_name {
	font-family: zen-maru-gothic, sans-serif;
	font-style: normal;
    font-weight: 700;
	font-size: 2.4rem;
	padding: .8rem 0;
	line-height: 140%;
}
.showrooms_address {
	font-size: 1.6rem;
}
.itemCard dl {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	font-size: 1.6rem;
	line-height: 1.8;
	margin: 1rem 0;
}
.commentBox {
	background-color: #EAEAEA;
	padding: .8rem;
	margin-top: 15px;
}
.commentBox p {
	font-size: 1.2rem;
}
.sec_titBox {
	margin: 80px auto 40px;
	text-align: center;
}
.sec_tit {
	display: inline-block;
	background: linear-gradient(transparent 60%, #ffff66 60%);
	font-size: 3.6rem;
	font-weight: 700;
	color: #354756;
	letter-spacing: .2rem;
}
.showroomTit  {
	background-color: #354756;
	padding: .7rem 4rem;
	color: #fff;
	font-size: 2.8rem;
	font-weight: 700;
	text-align: center;
	display: inline-block;
}
/* 白ボタン */
.yoyaku_btn {
	text-align: center;
	margin: 20px auto 0;
	position: absolute;
	bottom: 20px;
	left: 5%;
	width: 90%;
}
.yoyaku_btn a {
	display: inline-block;
	height: auto;
	width: 100%;
	padding: 2rem 4rem;
	text-decoration: none;
	color: #fff !important;
	background-color: #3ABEC1;
	border-radius: 4rem;
	/* box-shadow: 0 10px 10px 0 rgba(0,0,0,.5); */
	transition: .4s;
	line-height: 150% !important;
	font-family: zen-maru-gothic, sans-serif;
	font-style: normal;
	font-weight: 700;
	font-size: 2rem;
	position: relative;
	text-align: center;
}
.yoyaku_btn a:hover {
	display: inline-block;
	height: auto;
	padding: 2rem 4rem;
	background-color: #009D95;
	color: #fff !important;
	line-height: 150% !important;
}

.yoyaku_btn02 {
	text-align: center;
	margin: 20px auto 0;
	position: absolute;
	bottom: 20px;
	left: 5%;
	width: 90%;
}
.yoyaku_btn02 a {
	display: inline-block;
	height: auto;
	width: 100%;
	padding: 2rem 4rem;
	text-decoration: none;
	color: #fff !important;
	background-color: #4CC9FE;
	border-radius: 4rem;
	/* box-shadow: 0 10px 10px 0 rgba(0,0,0,.5); */
	transition: .4s;
	line-height: 150% !important;
	font-family: zen-maru-gothic, sans-serif;
	font-style: normal;
	font-weight: 700;
	font-size: 2rem;
	position: relative;
	text-align: center;
}
.yoyaku_btn02 a:hover {
	display: inline-block;
	height: auto;
	padding: 2rem 4rem;
	background-color: #37AFE1;
	color: #fff !important;
	line-height: 150% !important;
}
  #map {
	width: 100%;
	height: 500px;
	margin-top: 80px;
  }

@media screen and (max-width: 768px) {
	#reservation_area .inner {
		padding: 0 5.35% 32px;
	}
	.showrooms_list {
		display: block;
		padding: 0px 1.28% 0px;
	}
	.itemCard {
		width: 100% !important;
		position: relative;
		padding: 1.6rem;
		border: 1px solid #000;
		position: relative;
		min-height: auto;
		margin-top: 24px;
	}
	.sec_tit {
		display: inline;
		background: linear-gradient(transparent 60%, #ffff66 60%);
		font-size: 2.8rem;
		font-weight: 700;
		color: #354756;
		letter-spacing: .2rem;
	}
	.yoyaku_btn {
		text-align: center;
		margin: 20px auto 10px;
		position: static;
		width: 90%;
	  }
	  .yoyaku_btn a {
		display: inline-block;
		height: auto;
		width: 100%;
		padding: 2rem 0rem;
		text-decoration: none;
		color: #fff !important;
		background-color: #3ABEC1;
		border-radius: 4rem;
		/* box-shadow: 0 10px 10px 0 rgba(0,0,0,.5); */
		transition: .4s;
		line-height: 150% !important;
		font-family: zen-maru-gothic, sans-serif;
		font-style: normal;
		font-weight: 700;
		font-size: 2rem;
		position: relative;
		text-align: center;
		letter-spacing: 0;
	  }
	  .yoyaku_btn a:hover {
		display: inline-block;
		height: auto;
		padding: 2rem 0rem;
		background-color: #009D95;
		color: #fff !important;
		line-height: 150% !important;
	  }
	  .yoyaku_btn02 {
		text-align: center;
		margin: 20px auto 0;
		position: static;
		width: 90%;
	}
	.yoyaku_btn02 a {
		display: inline-block;
		height: auto;
		width: 100%;
		padding: 2rem 0rem;
		text-decoration: none;
		color: #fff !important;
		background-color: #4CC9FE;
		border-radius: 4rem;
		/* box-shadow: 0 10px 10px 0 rgba(0,0,0,.5); */
		transition: .4s;
		line-height: 150% !important;
		font-family: zen-maru-gothic, sans-serif;
		font-style: normal;
		font-weight: 700;
		font-size: 2rem;
		position: relative;
		text-align: center;
	}
	.yoyaku_btn02 a:hover {
		display: inline-block;
		height: auto;
		padding: 2rem 0rem;
		background-color: #37AFE1;
		color: #fff !important;
		line-height: 150% !important;
	}
}

/*===============================
 About
===============================*/
.feature {
	/* 方眼紙模様に必須のスタイル */
	background-image: linear-gradient(0deg, transparent calc(100% - 1px), #fff calc(100% - 1px)),
	linear-gradient(90deg, transparent calc(100% - 1px), #fff calc(100% - 1px));
	background-size: 16px 16px;
	background-repeat: repeat;
	background-position: center center;
	background-color: #EAEAEA;
	border: 1px solid #fff;

	/* 以下任意のスタイル */
	padding: 20px;
}
.about_box {
	margin: 20px 0 15px;
	padding: 44px 4.28%;
    position: relative;
}
.pat85 {
    padding-top: 85px;
}
.about_flex{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	align-items: center;
	/* padding: 52px 4.28% 26px; */
}

.about_box h2 {
	font-size: 4.2rem;
	color: #000;
	text-align: center;
	font-weight: 600;
	font-style: normal;
	padding: .4rem .7rem;
}
.about_box{
	width: 100%;
	position: relative;
}
.about_box_flex {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	align-items: center;
	margin-top: 80px;
}
.about_box_item01 {
	width: 66%;
	position: relative;
}
.about_box_item02 {
	width: 44%;
	height: auto;
	position: relative;
	padding: 4rem 2.4rem;
	background: url("../img/feature_back.jpg") center top / auto no-repeat;

}
.about_box_item01 p,.about_box_item02 p,.about_box_item03 p,.about_box_item04 p {
	letter-spacing: 0rem;
	font-size: 1.5rem;
	line-height: 160%;
}
.about_box_item02 figure,.about_box_item04 figure {
	text-align: center;
}
.about_box_item02 figure img {
	width: 130px;
	height: auto;
}

figure.iconsize img {
	width: 100px;
	height: auto;
}
.about_box_item03 {
	width: 66%;
	position: relative;
	order: 2;
}
.about_box_item04 {
	width: 44%;
	height: auto;
	position: relative;
	padding: 4rem 2.4rem;
	order: 1;
	background: url("../img/feature_back.jpg") center top / auto repeat;
}
.about_box_item04 figure img {
	width: 100px;
	height: auto;
}
.featuretit {
	font-family: zen-maru-gothic, sans-serif;
	font-style: normal;
    font-weight: 600;
	font-size: 2.4rem;
}
.mat10 {
    margin-top: 10px;
}
.mat20 {
    margin-top: 20px;
}
.mat40 {
    margin-top: 40px;
}
.mat80 {
    margin-top: 80px;
}
.pc_mat40 {
    margin-top: 40px;
}
.about_border {
	border-top: 1px solid #000;
	padding: 1.4rem 0;
}

.about_sp {
	display: block;
}


@media screen and (min-width: 769px) {
	.about_wallbox:first-of-type{
	margin-right: 11.11%;
}
}
@media screen and (max-width: 768px) {
	.about_box {
		background-color: #E9E9E9;
		margin: 20px 0 15px;
		padding: 44px 4.28%;
		position: relative;
		border: 8px solid #fff;
	}
	.pat85 {
		padding-top: 0px;
	}
	.about_box h2{
		font-size: 2.8rem;
		color: #000;
		text-align: center;
		font-weight: 600;
		font-style: normal;
		padding: .4rem .7rem;
	}
	.about_box_flex {
		display: block;
		margin-top: 40px;
	}
	.about_box_item01 {
		width: 100%;
		position: relative;
	}
	.about_box_item02 {
		width: 100%;
		height: auto;
		position: relative;
		padding: 4rem 3rem;
		background: url("../img/feature_back.jpg") center top / auto no-repeat;
	
	}
	.about_box_item02 figure,.about_box_item04 figure {
		text-align: center;
	}
	.about_box_item02 figure img {
		width: 130px;
		height: auto;
	}
	.about_box_item03 {
		width: 100%;
		position: relative;
	}
	.about_box_item04 {
		width: 100%;
		height: auto;
		position: relative;
		padding: 4rem 3rem;
		background: url("../img/feature_back.jpg") center top / auto repeat;
	}
	.featuretit {
		font-family: zen-maru-gothic, sans-serif;
		font-style: normal;
		font-weight: 600;
		font-size: 2.2rem;
	}
.pc_mat40 {
    margin-top: 0px;
}
}

/*===============================
 plan
===============================*/
.plan {
	position: relative;
	width: 100%;
	background: url("../img/back_house.jpg") center top / 100% auto no-repeat;
	padding-top: 27.083333333333332%;
}
.plan_inner {
	position: relative;
	padding: 20px 5.58% 20px;
	margin: 0 auto;
}
.plancont {
	padding-top: 80px;
}
.sec_titBox02 {
	position: absolute;
    top: 0px;
    left: calc(50% - 50%);
	margin: 40px auto 40px;
	text-align: center;
	width: 100%;
}
.sec_tit02 {
	display: block;
	font-size: 2.8rem;
	font-weight: 700;
	color: #354756;
	letter-spacing: .2rem;
	text-align: center;
}
.planTit p {
	font-size: 1.6rem;
	font-weight: 700;
    color: #fff;
    text-align: center;
}
.planTxt {
	text-align: center;
}
.planTit {
    text-align: left;
    margin-left: auto;
    margin-right: auto;
	font-size: 2.4rem;
	font-weight: 700;
	text-decoration: underline;
}
.plan_box_flex {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	align-items: center;
}
.plan_box_item01 {
	width: 50%;
	position: relative;
}
.plan_box_item02 {
	margin-top: 100px;
	width: 50%;
	height: 525px;
	position: relative;
	padding: 4rem 4rem;
	background-color: #EFEFEF;
}
.plan_box_item03 {
	width: 50%;
	position: relative;
	order: 2;
}
.plan_box_item04 {
	margin-top: 100px;
	width: 50%;
	height: 525px;
	position: relative;
	padding: 4rem 4rem;
	background-color: #EFEFEF;
	order: 1;
}
.planTitBox {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-around;
	justify-content: space-around;
	align-items: center;
}
.planIcon01 {
	width: 180px;
}
.planIcon02 {
	width: 120px;
}
.planTiten {
	/* margin: 0 auto 0px; */
	font-family: alternate-gothic-no-3-d, sans-serif;
	font-style: normal;
    font-weight: 400;
	font-size: 10rem;
	color: #EFEFEF;
	text-stroke: 1px #000;
	-webkit-text-stroke: 1px #000;
	text-align: left;
	line-height: .8;
	letter-spacing: -.04rem;
}
.planCopy {
	font-size: 1.75rem;
	line-height: 180%;
}
.pat60 {
	padding-top: 60px;
}

.plan_pc {
	display: block;
}
.plan_sp {
	display: none;
}

.navyBox {
	border: 2px solid #00053A;
	padding: 1rem;
	margin-bottom: 60px;
}
.navytit {
	font-size: 1.6rem;
	color: #00053A;
	font-weight: 400;
}
.navytitB {
	font-size: 2.2rem;
	color: #00053A;
	font-weight: 400;
}
.graytit {
	font-size: 1.6rem;
	color: #3E3A39;
	font-weight: 700;
	letter-spacing: 0;
}
.text-center {
	text-align: center;
}
.mat10 {
	margin-top: 10px;
}

@media screen and (min-width: 769px) {
.plan_inner {
	width: 1200px;
}
.planimg_PC {
	display: block;
	padding-top: 40px;
}
.planimg_SP {
	display: none;
}
.pc_on {
	display: block !important;
}
.pc_no {
	display: none !important;
	}
.sp_on {
	display: none;
}
.sp_no {
  display: none;
}
}
@media screen and (max-width: 768px) {
	.plan {
		background: url("../img/back_housesp.jpg") center top / 100% auto no-repeat;
	}
	.sec_titBox02 {
		margin: 40px auto 40px;
		text-align: center;
	}
	.sec_tit02 {
		display: block;
		font-size: 2.2rem;
		font-weight: 700;
		color: #354756;
		letter-spacing: 0rem;
		text-align: center;
	}
	.plan_box_flex {
		display: block;
		margin-top: 40px;
	}
	.plan_box_item01 {
		width: 100%;
		position: relative;
	}
	.plan_box_item02 {
		margin-top: 0px;
		width: 100%;
		height: auto;
		position: relative;
		padding: 4rem 3rem;
		background-color: #EFEFEF;
	}
	.plan_box_item03 {
		width: 100%;
		position: relative;
	}
	.plan_box_item04 {
		margin-top: 0px;
		width: 100%;
		height: auto;
		position: relative;
		padding: 4rem 3rem;
		background-color: #EFEFEF;
	}

	.planTitBox {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-around;
		justify-content: space-around;
		align-items: center;
	}
	.planIcon01 {
		width: 40%;
	}
	.planIcon02 {
		width: 30%;
	}
	.planTiten {
		/* margin: 0 auto 0px; */
		font-family: alternate-gothic-no-3-d, sans-serif;
		font-style: normal;
		font-weight: 400;
		font-size: 6rem;
		color: #EFEFEF;
		text-stroke: 1px #000;
		-webkit-text-stroke: 1px #000;
		text-align: left;
		line-height: .8;
		letter-spacing: -.04rem;
	}


.pc_no {
	display: none;
	}
.pc_on {
	display: none;
}
.sp_on {
	display: block;
}
	.plan_sp{
	display: block;
}

.pab40 {
	padding-bottom: 10px !important;
}

.navyBox {
	border: 2px solid #00053A;
	padding: 1rem;
	margin-bottom: 30px;
}
.navytit {
	font-size: 1.6rem;
	color: #00053A;
	font-weight: 400;
}
.navytitB {
	font-size: 2.4rem;
	color: #00053A;
	font-weight: 400;
}
.graytit {
	font-size: 1.6rem;
	color: #3E3A39;
	font-weight: 700 !important;
	letter-spacing: 0;
}
}

/*===============================
	anchor
===============================*/
.anchor {
	background: #fff;
}
.anchor_inner {
	position: relative;
	padding: 60px 5.58% 20px;
	margin: 0 auto;
}
.anchor_box_flex {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	align-items: center;
}
.anchor_btnlist {
	display: block;
	text-align: center;
	font-size: 2rem;
}
.anchor_box_flex li {
	text-align: center;
	width: 20%;
	height: 100%;
}
figure.arrowIcon {
	width: 40px;
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 1rem;
}
.anchorBtn a {
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 186px;
    height: 186px;
    background: #3ABEC1;
    color: #FFF;
    text-decoration: none;
    text-align: center;
    margin: 0px 0;
}
.anchorBtn a:hover {
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 186px;
    height: 186px;
    background: #05DFD7;
    color: #FFF;
    text-decoration: none;
    text-align: center;
    margin: 0px 0;
}
@media screen and (min-width: 769px) {
	.anchor_inner {
		width: 1200px;
	}
}
@media screen and (max-width: 768px) {
	.anchor_inner {
		position: relative;
		padding: 60px 5.58% 20px;
		margin: 0 auto;
		text-align: center;
	}
	.anchor_box_flex {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		align-items: center;
	}
	.anchor_box_flex li {
		text-align: center;
		width: 19.66666%;
		height: auto;
		margin-top: 30px;
	}
	figure.arrowIcon {
		width: 14px;
		margin-left: auto;
		margin-right: auto;
		padding-bottom: 0;
	}
	figure.downIcon {
		transform:rotate(180deg); 
	}
	.anchor_btnlist {
		display: block;
		text-align: center;
		font-size: 1.4rem;
		line-height: 1.8rem;
	}
	.anchor_btnlist02 {
		display: block;
		text-align: center;
		font-size: 1.4rem;
		line-height: 1.8rem;
	}
	.anchor_btnlist p {
		padding-top: 0px;
	}
	.anchor_btnlist02 p {
		padding-bottom: 0px;
	}
	.anchorBtn a {
		border-radius: 15px;
		padding: 1.4rem .5rem;
		border: 1px solid #54BAB9;
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: auto;
		background: #F9F9F9;
		color: #116A7B;
		text-decoration: none;
		text-align: center;
		margin: 0px 0;
		line-height: 1.8rem;
	}
	.anchorBtn a:hover {
		border-radius: 15px;
		padding: 1.4rem .5rem;
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: auto;
		background: #54BAB9;
		color: #FFF;
		text-decoration: none;
		text-align: center;
		margin: 0px 0;
		line-height: 1.8rem;
	}
}

/*===============================
 FAQ
===============================*/
.faq {
	background: #EAEAEA;
}
.faq_inner {
	position: relative;
	padding: 10px 5.58% 80px;
	margin: 0 auto;
}

  /* アコーディオン全体 */
  .accordion {
	max-width: 1000px;
	margin: 60px auto 40px;
	border-top: 1px solid #9A9B9B;
  }
  
  /* アコーディオン */
  .accordion__item {
	border-bottom: 1px solid #9A9B9B;
	margin-top: 10px;
	cursor: pointer;
  }
  
  /* アコーディオンのタイトル */
  .accordion__title {
	position: relative;
	padding: 20px 60px 20px 20px;
	font-weight: 400;
	cursor: pointer;
  }
  
  /* (+)アイコン */
  .accordion__title::before,
  .accordion__title::after {
	content: "";
	position: absolute;
	right: 20px;
	top: 0;
	bottom: 0;
	margin: auto 0;
	background-color: #9BABB8;
	width: 20px;
	height: 2px;
	transition: all 0.3s;
  }
  
  .accordion__title::after {
	transform: rotate(90deg);
  }
  
  /* アコーディオンのコンテンツ */
  .accordion__content {
	padding: 20px 20px 20px 20px;
	display: none;
	cursor: pointer;
	background-color: #fff;
  }
  
  .accordion__content.is-open {
	display: block;
  }
  
  /* アコーディオン展開時の(-)アイコン */
  .accordion__item.is-active .accordion__title::before {
	transform: rotate(180deg);
  }
  
  .accordion__item.is-active .accordion__title::after {
	transform: rotate(180deg);
	opacity: 0;
  }
  .faqflex {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	align-items: center;
}
p.qpoint {
	font-family: alternate-gothic-no-3-d, sans-serif;
	font-style: normal;
    font-weight: 400;
	font-size: 6rem;
	color: #2EA2DB;
	line-height: 0;
	padding-right: 1rem;
}
p.apoint {
	font-family: alternate-gothic-no-3-d, sans-serif;
	font-style: normal;
    font-weight: 400;
	font-size: 6rem;
	color: #E95383;
	line-height: 0;
	padding-right: 1rem;
}

/* faq_area */
#faq_area {
	/* background: url("../img/faq_bg.jpg") no-repeat center top;
	background-size: cover; */
	margin: 80px 0 0 0;
	padding: 40px 0;
}
#faq_area .inner {
	width: 1000px;
	margin: 0 auto;
}
#faq_area .inner h2 {
	opacity: 0;
	transition: opacity 1s linear 0s, transform 1s cubic-bezier(0.075, 0.82, 0.165, 1) 0s;
	transform: translateY(25px);
}
#faq_area .inner h2.active {
	opacity: 1;
	transform: translateY(0);
}
#faq_area .inner .acc_box {
	margin: 55px 0 0 0;
	opacity: 0;
	transition: opacity 1s linear 0s, transform 1s cubic-bezier(0.075, 0.82, 0.165, 1) 0s;
	transform: translateY(25px);
}
#faq_area .inner .acc_box.active {
	opacity: 1;
	transform: translateY(0);
}
#faq_area .inner .acc_box .toggle {
	display: none;
}
#faq_area .inner .acc_box .Label {
	padding: 25px 0 25px 65px;
	display: block;
	color: #000;
	border-bottom: 1px solid #000;
	position: relative;
}
#faq_area .inner .acc_box .Label:hover {
	cursor: pointer;
}
#faq_area .inner .acc_box .Label::before {
	content: "Q.";
	font-family: alternate-gothic-no-3-d, sans-serif;
	font-style: normal;
    font-weight: 400;
	font-size: 6rem;
	color: #2EA2DB;
	letter-spacing: 0.15em;
	position: absolute;
	top: 50%;
	left: 10px;
	transform: translate(0, -50%);
}
#faq_area .inner .acc_box .acc_ans::before {
	content: "A.";
	font-family: alternate-gothic-no-3-d, sans-serif;
	font-style: normal;
    font-weight: 400;
	font-size: 6rem;
	color: #E95383;
	letter-spacing: 0.15em;
	position: absolute;
	top: 50%;
	left: 10px;
	transform: translate(0, -50%);
}
#faq_area .inner .acc_box .Label::after {
	content: "";
	width: 20px;
	height: 20px;
	background: url("../img/faq_ico01.jpg") no-repeat;
	background-size: 20px 20px;
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translate(0, -50%);
}
#faq_area .inner .acc_box .Label,
#faq_area .inner .acc_box .acc_ans {
	backface-visibility: hidden;
	transform: translateZ(0);
	transition: all 0.3s;
}
.acc_ans {
	background: rgba(255, 255, 255, 1);
	height: 0;
	margin-bottom:10px;
	padding: 0 65px;
	overflow: hidden;
	color: #000;
	line-height: 1.7;
	letter-spacing: 0.05em;
}
.toggle:checked + .Label + .acc_ans {
	height: auto;
	padding: 20px 65px;
	transition: all .3s;
}
.toggle:checked + .Label::after {
	background: url("../img/faq_ico02.jpg") no-repeat !important;
	background-size: 20px 20px !important;
}
@media only screen and (max-width: 768px) {
#faq_area {
	margin: 65px 0 0 0;
	padding: 5px 0;
}
#faq_area .inner {
	width: 90vw;
}
#faq_area .inner .acc_box {
	margin: 35px 0 0 0;
}
#faq_area .inner .acc_box .Label {
	padding: 25px 45px 25px 45px;
	line-height: 1.5;
}
#faq_area .inner .acc_box .Label::before {
	font-size: 3.2rem;
}
#faq_area .inner .acc_box .acc_ans::before {
	font-size: 3.2rem;
}
.toggle:checked + .Label + .acc_ans {
	padding: 25px 45px 25px 45px;
}
}
@media screen and (min-width: 769px) {
	.faq_inner {
		width: 1200px;
	}
}

/*===============================
 flow
===============================*/
.flow {
	background: #354756;
}
.flow_inner {
	position: relative;
	padding: 10px 5.58% 80px;
	margin: 0 auto;
}
@media screen and (min-width: 769px) {
	.flow_inner {
		width: 1200px;
	}
}
.sec_tit03 {
    display: inline-block;
    background: linear-gradient(transparent 60%, #009D95 60%);
    font-size: 3.6rem;
    font-weight: 700;
    color: #fff;
    letter-spacing: .2rem;
}
.flow_box_flex {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	align-items: center;
}
.flowItem {
	background-color: #fff;
	border-radius: 20px;
	text-align: center;
	padding: 4rem 2rem;
	width: 18.55%;
	min-height: 360px;
}
.flowItem05 {
	background-color: #E8F6EF;
	border-radius: 20px;
	text-align: center;
	padding: 4rem 2rem;
	width: 18.55%;
	min-height: 360px;
}
p.num {
	font-family: alternate-gothic-no-3-d, sans-serif;
	font-style: normal;
    font-weight: 400;
	font-size: 6rem;
	line-height: 1;
	color: #009D95;
}
figure.flowIcon {
	width: 70%;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}
figure.flowIcon img {
	width: 100%;
}
h4.flowTit {
	font-size: 2rem;
	font-family: zen-maru-gothic, sans-serif;
	font-style: normal;
    font-weight: 600;
	color: #009D95;
	margin-top: 10px;
}
.flowtxt {
	font-size: 1.4rem;
	text-align: center;
	margin-top: 10px;
}
@media screen and (max-width: 768px) {
	.sec_tit03 {
		display: inline-block;
		background: linear-gradient(transparent 60%, #009D95 60%);
		font-size: 2.8rem;
		font-weight: 700;
		color: #fff;
		letter-spacing: .2rem;
	}
	.flow_box_flex {
		display: block;
	}
	.flowItem {
		background-color: #fff;
		border-radius: 20px;
		text-align: center;
		padding: 2rem 2rem;
		width: 100%;
		min-height: auto;
		margin-top: 30px;
	}
	.flowItem05 {
		background-color: #E8F6EF;
		border-radius: 20px;
		text-align: center;
		padding: 4rem 2rem;
		width: 100%;
		min-height: auto;
		margin-top: 30px;
	}
}

/*===============================
 Detail
===============================*/
.detail {
	background: #fff;
}
.detail_inner {
	padding: 80px 5.58% 90px;
	margin: 0 auto;
	background-color: #fff;
}

.detail_flex {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	align-items: flex-start;
	margin-top: 20px;
}
.detail h2{
	position: relative;
	margin: 0 auto 40px;
	text-align: center;
	color: #009D95;
	font-size: 3.0rem;
	letter-spacing: 0.05em;
	font-weight: 700;
	line-height: 1.2;
    text-align: center;
	display: block;
	/* -webkit-transform: translateX(-50%);
	transform: translateX(-50%); */
}
.detail_tab {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
    line-height: 180%;
}
.detail_tab {
	width: 81%;
}
ul.detaillist {
	padding: 60px 5.58% 90px;
}
ul.detaillist li {
	list-style: disc;
	line-height: 180%;
}
.txtred {
	color: #E95383;
}
.txtred02 {
	color: #E95383;
	font-weight: 700;
}
.txtbold {
	font-weight: 700;
}

.mat15 {
    margin-top: 15px;
}
.mat30 {
    margin-top: 30px;
}
.mat60 {
    margin-top: 60px;
}
.detail_data p,.detail_data li {
    line-height: 180%;
}
.text-center {
    text-align: center;
}
/* .detail_data li:first-of-type{
	padding-top: 18px;
} */
.detail_data_pt{
	padding-top: 18px;
}
.detail_data_pb{
	padding-bottom: 18px;
}
.detail_privacy{
	font-size: 1.4rem;
	padding: 18px 0;
}
.detail_privacy li{
	list-style: none;
}
.detail_privacy a{
	text-decoration: underline;
  color: inherit;
}
.detail_privacy li span:first-of-type{
	width: 2.87%;
}
.detail_privacy li span:last-of-type{
	width: 97.1%;
}
/* .detail_data ul:nth-of-type(1){
	margin: 18px 0;
} */
.detail_data li span:first-of-type{
	width: 2.87%;
}
.detail_data li span:last-of-type{
	width: 97.1%;
}
@media screen and (min-width: 769px) {
	.detail_inner {
	width: 1200px;
}
}
@media screen and (max-width: 768px) {
	.detail h2{
	font-size: 2.1rem;
	margin-bottom: 20px;
	line-height: 1.5;
}
.detail h2:before{
	width: 6px;
	height: 30px;
}
.detail_flex {
	display: block;
	margin-top: 20px;
}
	.detail_tab {
		display: block;
	}
	.detail_tab {
		width: 100%;
	}
	.detail_inner{
		padding: 50px 5.58% 45px;
	}
	.detail_head {
		position: relative;
		display: block;
		width: 100%;
		font-size: 1.8rem;
		font-weight: 700;
		color: #7A6A56;
		text-align: left;
	}
	.detail_head:after {
		display: none;
	}
	.detail_midashi {
		font-size: 1.6rem;
		font-weight: 700;
		line-height: 160%;
		color: #7A6A56;
		text-align: left;
		padding-top: 1rem;
	}
	.indent_midashi {
		text-indent: -1rem;
	}
	.detail_data {
		width: 100%;
		padding: 1rem 1.4rem 14px;
		font-size: 1.4rem;
	}
	.detail_privacy{
		font-size: 1.4rem;
		padding: 18px 0 30px;
		word-break: break-all;
	}
	.detail_data li span:first-of-type{
		width: 6.87%;
	}
	.detail_data li span:last-of-type{
		width: 100%;
	}
}

/*===============================
 Footer
===============================*/
.footer {
	width: 100%;
	color: #000;
	text-align: center;
	max-width: 1296px;
	padding: 45px 5.83%;
	font-size: 1.2rem;
	margin: 0 auto;
}
.copyright {
	background: #3ABEC1;
	color: white;
}
.footer a {
	color: white;
	text-decoration: underline;
}
.footer_lg {
	width: 40.52%;
}
.footer_lg p{
	text-align: left;
	font-weight: bold;
}
.footer_lg p a{
	color: #000;
}
.footer_lg img{
	width: 100%;
	height: auto;
	margin-bottom: 12px;
}
.footer_nav {
	font-size: 1.4rem;
	margin-bottom: 30px;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.footer_qr{
	width: 36.26%;
}
.footer_qr p{
	text-align: left;
	font-weight: bold;
}
.footer_qr img{
	width: 100%;
	height: auto;
	margin-bottom: 10px;
}
.footer_nav li {
	line-height: 2;
	text-align: left;
}
.footer_nav p {
	font-size: 1.2rem;
}
.footer_copy {
	font-size: 1.2rem;
	text-align: center;
	padding: 15px 0 13px;
}
.footer_caption{
	text-align: left;
	font-size: 1.2rem;
	font-weight: bold;
	padding: 0 11.55%;
	text-align: center;
}
@media screen and (max-width: 768px) {
	.footer {
		padding: 30px 5.625% 50px;
	}
	.footer_lg {
		width: 100%;
		margin: 0 auto 25px;
	}
	.footer_qr{
		width: 100%;
	}
	.footer_nav {
		font-size: 1.2rem;
		margin-bottom: 20px;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.footer_caption{
	padding: 0;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
	.footer_caption p{
	width: 100%;
	text-align: left;
}
	.footer_copy {
		font-size: 1rem;
		padding: 12px 5.625%;
	}
}

/*===============================
 CV
===============================*/
.cv-top {
	width: 860px;
	padding-top: 60px;
	margin-top: -100px;
	margin-bottom: 40px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
	display: block;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.cv-top a img{
    width: 100%;
	max-width: 860px;
}
.cv-top a{
  margin-left: auto;
  margin-right: auto;  
}
.cv-top a:hover {
	/* transform: translateY(0.1875em); */
    animation-play-state: paused;
}
.yureru-j{
    animation: yureru-j 3s  infinite;
}
/* @keyframes yureru-j {
	0% {
    	top: -4px;
			box-shadow: 0px 8px 4px 0px rgba(0,0,0,0.4);
  }
  50% {
			top: 0;
			box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.4);
	}
} */
@keyframes yureru-j {
	0% {transform: translate(0px, 4px);}
	50% {transform: translate(0px, -4px);}
	100% {transform: translate(0px, 4px);}
	/* 15% {transform: translate(0px, -4px);}
	20% {transform: translate(0px, 4px);}
	25% {transform: translate(0px, -4px);} */
	/* 30% {transform: translate(0px, 0px);} */
}
/* @keyframes yureru-j {
	0% {transform: translate(0px, 2px);}
	5% {transform: translate(0px, -2px);}
	10% {transform: translate(0px, 2px);}
	15% {transform: translate(0px, -2px);}
	20% {transform: translate(0px, 2px);}
	25% {transform: translate(0px, -2px);}
	30% {transform: translate(0px, 0px);}
} */

.cv a {
	width: 860px;
	padding-top: 60px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
	position: relative;
	display: block;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.cv a img{
    width: 100%;
	max-width: 860px;
}

.cv {
  margin-left: auto;
  margin-right: auto;
}
.cv a:hover {
	animation-play-state: paused;
}

@media screen and (min-width: 769px) {

}
@media screen and (max-width: 768px) {
.cv-top {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 10px;
	position: relative;
	top: -90px;
}
.cv {
width: 100%;
margin: 40px auto 40px;
position: relative;
}

.cv-top a img{
    width: 100%;
	max-width: 100%;
}
.cv a {
	width: 100%;
	padding-top: 00px;
    margin: 0 auto 0;
    position: relative;
}
.cv a img{
    width: 100%;
	max-width: 100%;
}
.yureru-j{
    animation: yureru-j 3s  infinite;
}
@keyframes yureru-j {
	0% {transform: translate(0px, 4px);}
	50% {transform: translate(0px, -4px);}
	100% {transform: translate(0px, 4px);}
	/* 15% {transform: translate(0px, -4px);}
	20% {transform: translate(0px, 4px);}
	25% {transform: translate(0px, -4px);} */
	/* 30% {transform: translate(0px, 0px);} */
	}

}
