@charset "UTF-8";

/* ---------------------------------------
  基本情報
-----------------------------------------*/

html,
body {
	height: 100%;
}

html {
	font-size: 62.5%;
	overflow-y: scroll;
}

body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
address,
ul,
ol,
li,
dl,
dt,
dd,
table,
th,
td,
img,
form,
figure {
	margin: 0;
	padding: 0;
	border: none;
	line-height: 100%;
	list-style-type: none;
	font-style: normal;
	font-weight: 600;
	font-family: YakuHanJP, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", Meiryo, sans-serif;
	text-align: left;
	color: #323232;
}

input,
button,
textarea,
select {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font-family: YakuHanJP, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", Meiryo, sans-serif;
	font-weight: 700;
	color: #323232;
}

.mfp-close {
	font-family: YakuHanJP, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", Meiryo, sans-serif;
}

textarea {
	resize: vertical;
}

select::-ms-expand {
	display: none;
}

a {
	text-decoration: none;
	color: inherit;
	outline: none;
}

img {
	vertical-align: bottom;
	max-width: 100%;
	height: auto;
}

*,
*:after,
*:before {
	box-sizing: border-box;
}

.preload * {
	-webkit-transition: none !important;
	-moz-transition: none !important;
	-ms-transition: none !important;
	-o-transition: none !important;
	transition: none !important;
}

/* responsive
--------------------------------*/
@media screen and (min-width: 1351px) {
	.ham {
		display: none !important;
	}
}

@media screen and (max-width: 1350px) {
	.megaOnly {
		display: none !important;
	}
}

@media screen and (min-width: 768px) {
	.sp {
		display: none !important;
	}
}

@media screen and (max-width: 767px) {
	.pc {
		display: none !important;
	}
}

/* base
--------------------------------*/
p,
dt,
dd,
li,
th,
td,
input,
button,
textarea,
select {
	font-size: 1.6rem;
	line-height: 1.875;
}

html.fixed {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

body {
	position: relative;
}

.wrap {
	max-width: 1560px;
	width: calc(100% - 80px);
	margin: 0 auto;
}

.wrap .wrap {
	width: 100%;
}

.wrap1160 {
	max-width: 1160px;
}

.wrap1560 {
	max-width: 1560px;
}

.wrap1720 {
	max-width: 1720px;
}

.aligncenter {
	display: block;
	margin: 0 auto;
}

.alignright {
	float: right;
}

.alignleft {
	float: left;
}

.tac {
	text-align: center !important;
}

#ouchitop+section p.tac {
	font-size: 1.8rem;
}

.tar {
	text-align: right !important;
}

.tal {
	text-align: left !important;
}

.fade {
	transition: opacity .4s;
}

.fade:hover {
	opacity: .7;
}

.oswald {
	font-family: 'Oswald', sans-serif;
	font-weight: 400;
	text-transform: uppercase;
}

.img_fit {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	font-family: 'object-fit: cover; object-position: center;'
}

.img_fit.scale-down {
	object-fit: contain;
	object-position: center;
	font-family: 'object-fit: contain; object-position: center;'
}

@media screen and (min-width: 768px) {
	body {
		min-width: 1200px;
	}
}

@media screen and (max-width: 767px) {
	body {
		-webkit-text-size-adjust: 100%;
	}

	img {
		width: 100%;
	}

	p,
	dt,
	dd,
	li,
	th,
	td,
	input,
	button,
	textarea,
	select {
		font-size: 4vw;
	}

	.wrap {
		width: 90%;
	}

	.sp_tac {
		text-align: center !important;
	}

	.sp_tar {
		text-align: right !important;
	}

	.sp_tal {
		text-align: left !important;
	}
}

/* カラーパターン
--------------------------------*/
.color1 {
	color: #00a53c !important;
}

.color2 {
	color: #33b763 !important;
}

.color3 {
	color: #66c98a !important;
}

.color4 {
	color: #99dbb1 !important;
}

.color5 {
	color: #ccedd8 !important;
}

.color6 {
	color: #2e9994 !important;
}

.bg_color1 {
	background-color: #00a53c !important;
}

.bg_color2 {
	background-color: #33b763 !important;
}

.bg_color3 {
	background-color: #66c98a !important;
}

.bg_color4 {
	background-color: #99dbb1 !important;
}

.bg_color5 {
	background-color: #ccedd8 !important;
}

.bg_color6 {
	background-color: #2e9994 !important;
}

/* 余白
--------------------------------*/
.mt20 {
	margin-top: 20px !important;
}

.mt40 {
	margin-top: 40px !important;
}

.mt80 {
	margin-top: 80px !important;
}

.mb00 {
	margin-bottom: 0 !important;
}

.mb10 {
	margin-bottom: 10px !important;
}

.mb20 {
	margin-bottom: 20px !important;
}

.mb40 {
	margin-bottom: 40px !important;
}

.mb80 {
	margin-bottom: 80px !important;
}

.pt20 {
	padding-bottom: 20px !important;
}

.pt40 {
	padding-bottom: 40px !important;
}

.pt80 {
	padding-bottom: 80px !important;
}

.pb20 {
	padding-bottom: 20px !important;
}

.pb40 {
	padding-bottom: 40px !important;
}

.pb80 {
	# padding-bottom: 80px !important;
}

@media screen and (max-width: 767px) {
	.sp_mt00 {
		margin-top: 0 !important;
	}
}

#contents {
	opacity: 0;
	height: 100%;
	overflow: hidden;
	position: relative;
}

main {
	display: block;
	margin: 0 !important;
}

/* ---------------------------------------------
  loading
-----------------------------------------------*/
#loading {
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background: #fff;
	z-index: 999999;
	display: none;
}

#loading .inner {
	width: 100%;
	height: 100%;
	position: relative;
}

#loading .txt {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

#loading .logo {
	width: 300px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

#wrap_all path,
#wrap_all rect,
#wrap_all polygon {
	fill: #00a53c;
	stroke: #00a53c;
	stroke-width: 1px;
	opacity: 0;
}

.start #wrap_all path,
.start #wrap_all rect,
.start #wrap_all polygon {
	opacity: 1;
}

.start #wrap_all .logo_01 {
	animation: logo_01 5s ease-in;
}

.start #wrap_all .logo_02 {
	animation: logo_02 5s ease-in;
}

.start #wrap_all .logo_03 {
	animation: logo_03 5s ease-in;
}

.start #wrap_all .logo_04 {
	animation: logo_04 5s ease-in;
}

.start #wrap_all .txt_t01 {
	animation: txt_t01 5s ease-in;
}

.start #wrap_all .txt_a01 {
	animation: txt_a01 5s ease-in;
}

.start #wrap_all .txt_k01 {
	animation: txt_k01 5s ease-in;
}

.start #wrap_all .txt_k02 {
	animation: txt_k01 5s ease-in;
}

.start #wrap_all .txt_a02 {
	animation: txt_a02 5s ease-in;
}

.start #wrap_all .txt_s01 {
	animation: txt_s01 5s ease-in;
}

.start #wrap_all .txt_u01 {
	animation: txt_u01 5s ease-in;
}

.start #wrap_all .txt_g01 {
	animation: txt_g01 5s ease-in;
}

.start #wrap_all .txt_i01 {
	animation: txt_i01 5s ease-in;
}

.start #wrap_all .txt_ta01 {
	animation: txt_ta01 5s ease-in;
}

.start #wrap_all .txt_ka01 {
	animation: txt_ka01 5s ease-in;
}

.start #wrap_all .txt_su01 {
	animation: txt_su01 5s ease-in;
}

.start #wrap_all .txt_gi01 {
	animation: txt_gi01 5s ease-in;
}

.start #wrap_all .txt_kabu01 {
	animation: txt_kabu01 5s ease-in;
}

.start #wrap_all .txt_shiki01 {
	animation: txt_shiki01 5s ease-in;
}

.start #wrap_all .txt_kai01 {
	animation: txt_kai01 5s ease-in;
}

.start #wrap_all .txt_sha01 {
	animation: txt_sha01 5s ease-in;
}

@keyframes logo_01 {
	0% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	10% {
		fill: transparent;
		stroke-dashoffset: 0;
	}

	55% {
		fill: transparent;
	}

	70% {
		fill: #00a53c;
	}
}

@keyframes logo_02 {
	0% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	2% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	12% {
		fill: transparent;
		stroke-dashoffset: 0;
	}

	55% {
		fill: transparent;
	}

	70% {
		fill: #00a53c;
	}
}

@keyframes logo_03 {
	0% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	4% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	14% {
		fill: transparent;
		stroke-dashoffset: 0;
	}

	55% {
		fill: transparent;
	}

	70% {
		fill: #00a53c;
	}
}

@keyframes logo_04 {
	0% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	6% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	16% {
		fill: transparent;
		stroke-dashoffset: 0;
	}

	55% {
		fill: transparent;
	}

	70% {
		fill: #00a53c;
	}
}

@keyframes txt_t01 {
	0% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	8% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	18% {
		fill: transparent;
		stroke-dashoffset: 0;
	}

	55% {
		fill: transparent;
	}

	70% {
		fill: #00a53c;
	}
}

@keyframes txt_a01 {
	0% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	10% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	20% {
		fill: transparent;
		stroke-dashoffset: 0;
	}

	55% {
		fill: transparent;
	}

	70% {
		fill: #00a53c;
	}
}

@keyframes txt_k01 {
	0% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	12% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	22% {
		fill: transparent;
		stroke-dashoffset: 0;
	}

	55% {
		fill: transparent;
	}

	70% {
		fill: #00a53c;
	}
}

@keyframes txt_k02 {
	0% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	14% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	24% {
		fill: transparent;
		stroke-dashoffset: 0;
	}

	55% {
		fill: transparent;
	}

	70% {
		fill: #00a53c;
	}
}

@keyframes txt_a02 {
	0% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	16% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	26% {
		fill: transparent;
		stroke-dashoffset: 0;
	}

	55% {
		fill: transparent;
	}

	70% {
		fill: #00a53c;
	}
}

@keyframes txt_s01 {
	0% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	18% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	28% {
		fill: transparent;
		stroke-dashoffset: 0;
	}

	55% {
		fill: transparent;
	}

	70% {
		fill: #00a53c;
	}
}

@keyframes txt_u01 {
	0% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	20% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	30% {
		fill: transparent;
		stroke-dashoffset: 0;
	}

	55% {
		fill: transparent;
	}

	70% {
		fill: #00a53c;
	}
}

@keyframes txt_g01 {
	0% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	22% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	32% {
		fill: transparent;
		stroke-dashoffset: 0;
	}

	55% {
		fill: transparent;
	}

	70% {
		fill: #00a53c;
	}
}

@keyframes txt_i01 {
	0% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	24% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	34% {
		fill: transparent;
		stroke-dashoffset: 0;
	}

	55% {
		fill: transparent;
	}

	70% {
		fill: #00a53c;
	}
}

@keyframes txt_ta01 {
	0% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	26% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	36% {
		fill: transparent;
		stroke-dashoffset: 0;
	}

	55% {
		fill: transparent;
	}

	70% {
		fill: #00a53c;
	}
}

@keyframes txt_ka01 {
	0% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	28% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	38% {
		fill: transparent;
		stroke-dashoffset: 0;
	}

	55% {
		fill: transparent;
	}

	70% {
		fill: #00a53c;
	}
}

@keyframes txt_su01 {
	0% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	30% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	40% {
		fill: transparent;
		stroke-dashoffset: 0;
	}

	55% {
		fill: transparent;
	}

	70% {
		fill: #00a53c;
	}
}

@keyframes txt_gi01 {
	0% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	32% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	42% {
		fill: transparent;
		stroke-dashoffset: 0;
	}

	55% {
		fill: transparent;
	}

	70% {
		fill: #00a53c;
	}
}

@keyframes txt_kabu01 {
	0% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	34% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	44% {
		fill: transparent;
		stroke-dashoffset: 0;
	}

	55% {
		fill: transparent;
	}

	70% {
		fill: #00a53c;
	}
}

@keyframes txt_shiki01 {
	0% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	36% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	46% {
		fill: transparent;
		stroke-dashoffset: 0;
	}

	55% {
		fill: transparent;
	}

	70% {
		fill: #00a53c;
	}
}

@keyframes txt_kai01 {
	0% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	38% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	48% {
		fill: transparent;
		stroke-dashoffset: 0;
	}

	55% {
		fill: transparent;
	}

	70% {
		fill: #00a53c;
	}
}

@keyframes txt_sha01 {
	0% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	40% {
		fill: transparent;
		stroke-dasharray: 2000px;
		stroke-dashoffset: 2000px;
	}

	50% {
		fill: transparent;
		stroke-dashoffset: 0;
	}

	55% {
		fill: transparent;
	}

	70% {
		fill: #00a53c;
	}
}

@media screen and (max-width: 767px) {
	#loading .logo {
		width: 75vw;
	}
}

/* ---------------------------------------------
  header
-----------------------------------------------*/
/*header{
	position: fixed;
	top: 30px;
	left: 0;
	right: 0;
	margin-left: 40px;
	max-width: 1840px;
	min-width: calc(1200px - 80px);
	width: calc(100% - 80px);
	background: #fff;
	border-radius: 5px;
	z-index: 1000;
	transition: border-radius .4s;
	transition: all .4s;
}
header .wrap{
	max-width: 100%;
	width: auto;
	padding: 0 20px;
	height: 90px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	transition: all .4s;
}
header .logo{
	width: 223px;
}
.head02{
	margin-left: auto;
}
.gnav{
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.gnav .main{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	margin-right: 20px;
}
.gnav .main > li > a{
	font-size: 1.4rem;
	color: #00a53c;
	padding: 0 15px;
	height: 90px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	transition: all .4s;
}
.gnav .main > li > a::before{
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 6px;
	background: #00a53c;
	opacity: 0;
	transition: opacity .4s;
}
header.is-scroll .gnav .main > li > a::before{
	bottom:10px;
}
.gnav .main > li.current > a::before,
.gnav .main > li:hover > a::before{
	opacity: 1;
}
.gnav .mega_cnt{
	display: none;
}
.head03 .form{
	display: flex;
	align-items: center;
	justify-content: flex-start;
}
.head03 .form > li:not(:last-child){
	margin-right: 10px;
}
.head03 .form > li > a{
	font-size: 1.4rem;
	line-height: 1.29;
	text-align: center;
	color: #fff;
	width: 150px;
	height: 50px;
	border: 2px solid #00a53c;
	border-radius: 25px;
	background: #00a53c;
	display: flex;
	align-items: center;
	justify-content: center;
}
.head03 .form > li.web > a{
	color: #00a53c;
	background: #fff;
}
.menu_trigger{
	display: none;
}
#overlay{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,.7);
	z-index: 1000;
	display: none;
}
.mega-open{
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}
.gnav .mega_cnt{
	display: none;
	position: absolute;
	left: 0;
	width: 100%;
	padding: 20px;
	background: #00a53c;
	background: linear-gradient(45deg,  #00a53c 0%,#33b763 100%);
	border-radius: 0 0 5px 5px;
}
header.is-scroll .gnav .mega_cnt{
	top:70px;
}
.gnav .mega_cnt .inner{
	max-width: 1160px;
	margin: 0 auto;
}
.gnav .mega_cnt .ttl_30{
	color: #fff;
	margin-bottom: 20px;
}
.gnav .mega_cnt .ttl_30 .en{
	vertical-align: baseline;
	margin-left: .5em;
}
.gnav .mega_cnt .ttl_18{
	color: #fff;
	margin-top: 0;
	padding-bottom: 12px;
	border-bottom: 1px solid #fff;
	margin-bottom: 20px;
}
.gnav .mega_cnt .btn_wrap{
	max-width: 100%;
}
.gnav .mega_cnt .btn_normal{
	height: 50px;
	max-width: 100%;
}
.gnav .mega_cnt .btn_flex .btn_normal{
	height: 80px;
}
header.is-scroll{
	top: 0;
	width: 100%;
	max-width: 100%;
	margin-left: 0;
	border-radius: 0;
}
header.is-scroll .wrap{
	height: 70px;
}*/
/*header.is-scroll .gnav .main > li > a{
	height: 70px;
}*/
@media screen and (max-width: 1490px) and (min-width: 1351px) {
	header .logo {
		width: 180px;
	}

	.gnav .main>li>a {
		padding: 0 10px;
	}

	.head03 .form>li>a {
		width: 125px;
	}
}

@media screen and (max-width: 1350px) {
	.head_ham {
		display: flex;
		justify-content: space-between;
		align-items: center;
		padding: 60px 3% 40px;
	}

	.head03 {
		display: flex;
		align-items: center;
		justify-content: flex-start;
		position: relative;
		z-index: 0;
	}

	.menu_trigger {
		width: 49px;
		height: 49px;
		background: #00a53c;
		padding: 10px 0 0;
		margin-left: 10px;
		border-radius: 50%;
		display: block;
		cursor: pointer;
	}

	.menu_trigger .line {
		width: 20px;
		height: 14px;
		display: block;
		margin: 0 auto;
		position: relative;
	}

	.menu_trigger .line span {
		width: 100%;
		height: 2px;
		background: #fff;
		display: block;
		position: absolute;
		left: 0;
		right: 0;
		margin: 0 auto;
	}

	.menu_trigger .line span:nth-child(1) {
		top: 0;
	}

	.menu_trigger .line span:nth-child(2) {
		top: 50%;
		transform: translateY(-50%);
	}

	.menu_trigger .line span:nth-child(3) {
		bottom: 0;
	}

	.menu_trigger .txt {
		font-size: 1rem;
		line-height: 1;
		color: #fff;
		margin: 5px 0 0 .2em;
		text-align: center;
	}

	.menu-open .menu_trigger {
		background: #fff;
		opacity: 1 !important;
	}

	.menu-open .menu_trigger .line span {
		background: #00a53c;
	}

	.menu-open .menu_trigger .line span:nth-child(1) {
		top: 50%;
		transform: translateY(-50%) rotate(-135deg);
	}

	.menu-open .menu_trigger .line span:nth-child(2) {
		opacity: 0;
	}

	.menu-open .menu_trigger .line span:nth-child(3) {
		bottom: auto;
		top: 50%;
		transform: translateY(-50%) rotate(135deg);
	}

	.menu-open .menu_trigger .txt {
		color: #00a53c;
	}

	.menu-open .menu_trigger .txt::before {
		content: 'COLSE';
	}

	.menu-open .menu_trigger .txt span {
		display: none;
	}

	.head02 {
		position: fixed;
		top: 0;
		right: 0;
		transform: translateX(100%);
		height: 100%;
		overflow-y: auto;
		background: linear-gradient(135deg, #00a53c 0%, #33b763 100%);
		transition: transform .4s ease-out, width 0s .4s ease-out;
		z-index: 5;
		width: 0;
	}

	.menu-open .head02 {
		padding-top: 0px;
		transform: translateX(0);
		width: 100%;
		transition: transform .4s ease-out, width 0s 0s ease-out;
	}

	.gnav {
		display: block;
	}

	.gnav .main {
		display: block;
		margin-right: 0;
		padding: 0 3%;
	}

	.gnav .main>li {
		border-top: 1px solid #fff;
		position: relative;
	}

	.gnav .main>li:last-child {
		border-bottom: 1px solid #fff;
	}

	.gnav .main>li>a {
		font-size: 1.8rem;
		color: #fff;
		text-align: left;
		height: auto;
		padding: 0;
		padding: 20px 0;
		display: block;
		position: relative;
	}

	.gnav .main>li>a::before {
		display: none;
	}

	.gnav .main>li .arw {
		position: absolute;
		top: 0;
		right: 0;
		width: 73px;
		height: 73px;
		display: block;
	}

	.gnav .main>li .arw::before {
		content: '';
		position: absolute;
		width: 15px;
		height: 15px;
		top: 50%;
		right: 10px;
		border-right: 2px solid #fff;
		border-bottom: 2px solid #fff;
		margin-top: -5px;
		transform: translateY(-50%) rotate(45deg);
	}

	.gnav .main>li .arw.is-open::before {
		margin-top: 4px;
		transform: translateY(-50%) rotate(-135deg);
	}

	.gnav .mega_cnt {
		display: none;
		position: static;
		padding: 0;
		background: none;
		border-radius: 0;
	}

	.gnav .mega_cnt .inner {
		max-width: 100%;
	}

	.gnav .mega_cnt .ttl_30,
	.gnav .mega_cnt .ttl_18 {
		display: none;
	}

	.gnav .mega_cnt .h_grid3,
	.gnav .mega_cnt .h_grid4 {
		display: block;
	}

	.gnav .mega_cnt .h_grid3>*,
	.gnav .mega_cnt .h_grid4>* {
		margin: 0;
		width: auto;
	}

	.gnav .other {
		padding-top: 20px;
	}

	.gnav .sub .btn_wrap {
		margin-bottom: 20px;
	}

	.gnav .sub .btn_normal,
	.gnav .sub .btn_flex .btn_normal {
		font-size: 1.4rem;
		text-align: left;
		color: #fff;
		height: auto;
		padding: 0;
		border-radius: 0;
		background: none;
		display: block;
	}

	.gnav .sub .btn_normal::before {
		display: none;
	}

	.gnav .sub .btn_img {
		display: none;
	}

	.gnav .info {
		display: flex;
		justify-content: flex-start;
		padding: 25px 3%;
		background: #00a53c;
	}

	.gnav .info li {
		margin-right: 20px;
	}

	.gnav .info li a {
		font-size: 1.2rem;
		color: #fff;
		display: block;
	}
}

@media screen and (max-width: 767px) {
	header {
		top: 4vw;
		margin-left: 2.5%;
		max-width: 1840px;
		min-width: 1px;
		width: calc(100% - 5%);
		border-radius: 1.25vw;
	}

	header .wrap {
		max-width: 100%;
		padding: 0 20px;
		height: 70px;
	}

	header .logo {
		width: 155px;
	}

	.head_ham {
		padding: 5% 3% 10%;
		padding: 20px 3% 40px;
	}

	.gnav .main {
		padding: 0 3%;
	}

	.gnav .main>li>a {
		font-size: 4.5vw;
		padding: 2.8% 0;
	}

	.gnav .main>li>a::before {
		display: none;
	}

	.gnav .main>li .arw {
		right: 0;
		width: 13.3vw;
		height: 13.3vw;
	}

	.gnav .main>li .arw::before {
		width: 3.5vw;
		height: 3.5vw;
		right: 12%;
	}

	.gnav .other {
		padding-top: 5.5%;
	}

	.gnav .sub .btn_wrap {
		margin-bottom: 5.5%;
	}

	.gnav .sub .btn_normal,
	.gnav .sub .btn_flex .btn_normal {
		font-size: 3.5vw;
	}

	.gnav .info {
		padding: 6% 3%;
	}

	.gnav .info li {
		margin-right: 5vw;
	}

	.gnav .info li a {
		font-size: 3vw;
	}

	.head03 .form {
		display: none;
	}
}


/* ---------------------------------------------
  main
-----------------------------------------------*/

/* タイトル (ttl_fontsize）
--------------------------------*/
.ttl_30 {
	font-size: 3rem;
	line-height: 1.5;
}

.ttl_30 .en {
	font-size: 1.2rem;
	line-height: 1.6;
	text-transform: uppercase;
}

.ttl_24 {
	font-size: 2.4rem;
	line-height: 1.25;
}

.ttl_20 {
	font-size: 2rem;
	line-height: 1.25;
}

.ttl_24 .small {
	font-size: 1.4rem;
	display: block;
	margin-bottom: .3em;
}

.ttl_18 {
	font-size: 1.8rem;
	line-height: 1.6;
}

.ttl_sec {
	text-align: center;
	margin-bottom: 60px;
}

.ttl_sec .en {
	font-size: 1.4rem;
	color: #33b763;
	display: block;
	margin-bottom: .2em;
}

.ttl_c_line {
	text-align: center;
	position: relative;
}

.ttl_c_line::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	height: 1px;
	background: #c8c8c8;
}

.ttl_c_line .txt {
	position: relative;
	z-index: 1;
	background: #fff;
	padding: 0 .5em;
}

.ttl_c_line .txt.bg_gray {
	background: #e6e6e6;
}

.ttl_b_line {
	padding-bottom: 20px;
	margin-top: 80px;
	margin-bottom: 40px;
	border-bottom: 1px solid #c8c8c8;
}

@media screen and (max-width: 767px) {
	.ttl_30 {
		font-size: 6vw;
	}

	.ttl_30 .en {
		font-size: 3.5vw;
	}

	.ttl_24 {
		font-size: 5vw;
	}

	.ttl_24 .small {
		font-size: 3.5vw;
		display: block;
		margin-bottom: .3em;
	}

	.ttl_18 {
		font-size: 4.5vw;
		line-height: 1.6;
	}

	.ttl_sec {
		margin-bottom: 9.8%;
	}

	.ttl_sec .en {
		margin-bottom: 0;
	}

	.ttl_c_line {
		text-align: center;
		position: relative;
	}

	.ttl_c_line::before {
		content: '';
		position: absolute;
		top: 50%;
		left: 0;
		width: 100%;
		height: 1px;
		background: #c8c8c8;
	}

	.ttl_c_line .txt {
		position: relative;
		z-index: 1;
		background: #fff;
		padding: 0 .5em;
	}

	.ttl_c_line .txt.bg_gray {
		background: #e6e6e6;
	}

	.ttl_b_line {
		padding-bottom: 1.8vw;
		margin-top: 11.2%;
		margin-bottom: 5.8%;
	}
}

/* ボタン
--------------------------------*/
.btn_wrap {
	display: block;
	transition: opacity .4s;
	max-width: 300px;
}

.btn_wrap:hover {
	opacity: .7;
}

.btn_normal {
	color: #00a53c;
	text-align: center;
	max-width: 300px;
	width: 100%;
	height: 60px;
	border-radius: 5px;
	background: #fff;
	padding: 0 10px;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	cursor: pointer;
}

.btn_normal::before {
	content: '';
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 10px;
	border: 5px solid transparent;
	border-left: 5px solid #00a53c;
}

.btn_normal.btn_green {
	background: #00a53c;
	color: #fff;
}

.btn_normal.btn_green::before {
	border-left-color: #fff;
}

.btn_normal.btn_green2 {
	background: #2e9994;
	color: #fff;
}

.btn_normal.btn_green2::before {
	border-left-color: #fff;
}

.btn_normal.btn_center {
	margin: 0 auto;
}

.btn_img {
	width: 100%;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	overflow: hidden;
}

.btn_img+.btn_normal {
	border-top-right-radius: 0;
	border-top-left-radius: 0;
}

.btn_flex {
	display: flex;
}

.btn_flex .btn_img {
	width: auto;
	border-radius: 5px 0 0 5px;
}

.btn_flex .btn_normal {
	flex: 1;
	text-align: left;
	justify-content: flex-start;
	height: 80px;
	border-radius: 0 5px 5px 0;
}

@media screen and (max-width: 767px) {
	.btn_wrap {
		display: block;
		transition: opacity .4s;
		max-width: 300px;
	}

	.btn_wrap:hover {
		opacity: .7;
	}

	.btn_normal {
		line-height: 1.4;
		max-width: 75vw;
		height: 15vw;
		border-radius: 1.25vw;
		padding: 0 2%;
	}

	.btn_normal::before {
		right: 2.5vw;
		border-width: 1.25vw;
		border-left-width: 1.5vw;
	}

	.btn_img {
		border-top-left-radius: 1.25vw;
		border-top-right-radius: 1.25vw;
	}

	.btn_flex .btn_img {
		width: auto;
		border-radius: 1.25vw 0 0 1.25vw;
	}

	.btn_flex .btn_normal {
		height: 80px;
		border-radius: 0 1.25vw 1.25vw 0;
	}

	.sp_btn_center {
		margin: 0 auto !important;
	}
}

/* グリッド
--------------------------------*/
@media screen and (min-width: 768px) {

	.grid2,
	.grid3,
	.grid4,
	.grid5,
	.h_grid3,
	.h_grid4 {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
	}

	.grid2>* {
		width: calc((100% - 40px) / 2);
		margin-right: 40px;
	}

	.grid3>* {
		width: calc((100% - 40px * 2) / 3);
		margin-right: 40px;
	}

	.grid4>* {
		width: calc((100% - 40px * 3) / 4);
		margin-right: 40px;
	}

	.grid5>* {
		width: calc((100% - 12px * 4) / 5);
		margin-right: 12px;
		max-height: 150px;
		overflow: hidden;
	}

	.h_grid3>* {
		width: calc((100% - 29px * 2) / 3);
		margin-right: 29px;
	}

	.h_grid4>* {
		width: calc((100% - 20px * 3) / 4);
		margin-right: 20px;
	}

	.grid2>*:nth-child(2n),
	.grid3>*:nth-child(3n),
	.grid4>*:nth-child(4n),
	.grid5>*:nth-child(5n),
	.h_grid3>*:nth-child(3n),
	.h_grid4>*:nth-child(4n) {
		margin-right: 0;
	}

	.grid2>*:nth-child(n+3) {
		margin-top: 35px;
	}

	.grid3>*:nth-child(n+4) {
		margin-top: 35px;
	}

	.grid4>*:nth-child(n+5) {
		margin-top: 35px;
	}

	.grid5>*:nth-child(n+6) {
		margin-top: 12px;
	}

	.h_grid3>*:nth-child(n+4) {
		margin-top: 10px;
	}

	.h_grid4>*:nth-child(n+5) {
		margin-top: 20px;
	}
}

@media screen and (max-width: 767px) {
	.sp_grid1>*+* {
		margin-top: 11.2%;
	}

	.sp_grid2 {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
	}

	.sp_grid2>* {
		width: calc((100% - 5.6%) / 2);
		margin-right: 5.6%;
	}

	.sp_grid2>*:nth-child(2n) {
		margin-right: 0;
	}

	.sp_grid2>*:nth-child(n+3) {
		margin-top: 5.6%;
	}
}

/* タブ
--------------------------------*/
.tab_btn {
	display: flex;
	justify-content: center;
}

.tab_btn li {
	font-size: 1.8rem;
	color: #fff;
	padding: .75em 3.35em;
	margin-right: 10px;
	border-radius: 5px;
	background: #969696;
	cursor: pointer;
}

.tab_btn li:last-child {
	margin-right: 0;
}

.tab_btn li.current {
	background: #00a53c;
}

.tab_cnt {
	margin-top: 40px;
}

.tab_cnt>div {
	display: none;
}

.tab_cnt>.show {
	display: block;
}

@media screen and (max-width: 767px) {
	.tab_btn li {
		font-size: 4vw;
		margin-right: 2.5vw;
		border-radius: 1.25vw;
		padding: .65em 3.35em;
	}

	.tab_cnt {
		margin-top: 5.7%;
	}
}

/* ブロック
--------------------------------*/
.cmn_txt .info {
	display: flex;
	/*justify-content: flex-end;*/
	/*flex-direction: row-reverse;*/
}

.cmn_txt .info .areatag {
	display: flex;
	white-space: nowrap;
	max-width: fit-content;
	grid-gap: 10px 0;
	grid: 10px 0;
	margin: 0;
}

#detail .cmn_txt .info .areatag {
	display: flex;
	grid-gap: 10px 0;
	grid: 10px 0;
	max-width: fit-content;
	margin: 0;
}

.cmn_txt .info .areatag li {
	font-size: 1.4rem;
	color: #fff;
	padding: .25em 1.15em;
	margin-right: 10px;
	border-radius: 5px;
}

.cmn_txt .info .areatag li.tag1 {
	background: #00a53c;
}

.cmn_txt .info .areatag li.tag2 {
	background: #2e9994;
	width: fit-content;
	margin: 0 10px 0 0;
	display: block;
}

.cmn_txt .info p.addr {
	/*width: 95%;*/
}

#detail .cmn_txt .info p.addr {
	/*width: 100%;*/
}

.cmn_txt .txt {
	margin-top: 10px;
}

.table_info {
	width: 100%;
	border-collapse: collapse;
}

.table_info th,
.table_info td {
	width: 140px;
	padding: 13px 0;
	border-bottom: 1px solid #c8c8c8;
}

.table_info th .icon {
	width: 16px;
	margin-top: -.3em;
	margin-right: 5px;
	text-align: center;
	vertical-align: middle;
	display: inline-block;
}

.table_info th .icon img {
	vertical-align: middle;
}

.table_info .t_price img {
	width: 85%;
}

.table_info .t_addr img {
	width: 90%;
}

.table_info td {
	width: calc(100% - 140px);
}

@media screen and (max-width: 1400px) and (min-width: 768px) {
	.cmn_txt .info.v1400 {
		display: block;
		margin-top: -10px;
	}

	.cmn_txt .info.v1400 .date {
		margin-bottom: 10px;
	}
}

@media screen and (max-width: 767px) {
	.cmn_txt .info .areatag li {
		font-size: 3.5vw;
		margin-right: 2.5vw;
		border-radius: 1.5vw;
	}

	.cmn_txt .txt,
	.cmn_txt .ttl_24 {
		font-size: 4vw;
		margin-top: 3%;
	}

	.table_info th,
	.table_info td {
		font-size: 3.5vw;
		width: 28.75vw;
		padding: 1.25vw 0;
	}

	.table_info th .icon {
		width: 4vw;
		margin-top: -.3em;
		margin-right: 1.25vw;
	}

	.table_info .t_price img {
		width: 85%;
	}

	.table_info .t_addr img {
		width: 90%;
	}

	.table_info td {
		width: calc(100% - 28.75vw);
	}
}

/* 詳細
--------------------------------*/
.detail_head .cmn_txt {
	margin-bottom: 20px;
}

.detail_head .info {
	margin-bottom: 5px;
}

.detail .balloon {
	padding-bottom: 8px;
}

.detail .balloon span {
	font-size: 1.8rem;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	height: 50px;
	padding: 3px 20px 0;
	border-radius: 50px;
	color: #fff;
	background: #00a53c;
	position: relative;
}

.detail .balloon span::before {
	content: '';
	position: absolute;
	bottom: -16px;
	left: 50%;
	transform: translateX(-50%);
	border: 10px solid transparent;
	border-top: 10px solid #00a53c;
}

.detail .balloon span img {
	width: 14px;
	margin-right: 10px;
	margin-top: -6px;
}

.detail .ttl_24 {
	color: #00a53c;
	margin-top: 10px;
}

.detail .point li {
	margin-top: 7px;
	padding-left: .5em;
	text-indent: -.5em;
}

.detail .point li:first-child {
	margin-top: 15px;
}

.detail .point li::before {
	content: '・';
}

.table_info2 {
	display: flex;
	flex-wrap: wrap;
	border: 1px solid #c8c8c8;
	border-radius: 5px;
	overflow: hidden;
	margin-top: 30px;
}

.table_info2 dl {
	width: 50%;
	padding: 13px 0 10px;
}

.table_info2 dl.bt {
	border-top: 1px solid #c8c8c8;
}

.table_info2 dl.br {
	border-right: 1px solid #c8c8c8;
}

.table_info2 dl.col1 {
	width: 100%;
}

.table_info2 .ttl_18 {
	text-align: center;
	margin-bottom: 5px;
}

.table_info2 .ttl_18 .icon {
	width: 16px;
	line-height: 1;
	margin-top: -.3em;
	margin-right: 5px;
	text-align: center;
	vertical-align: middle;
	display: inline-block;
}

.table_info2 dd {
	font-size: 1.8rem;
	text-align: center;
	line-height: 1.6;
}

.table_info2 dd .big {
	font-size: 4.5rem;
	line-height: 1;
}

@media screen and (max-width: 767px) {
	.detail_head {
		padding-top: 11.2%;
	}

	.detail_head .info {
		margin-bottom: 0;
	}

	.detail_head .cmn_txt {
		margin-bottom: 5%;
	}

	.detail_head .ttl_30 {
		margin-top: 2%;
	}

	.land_box .detail {
		margin-top: 6%;
	}

	.detail .balloon {
		padding-bottom: 4.4vw;
	}

	.detail .balloon span {
		font-size: 4.5vw;
		height: 13.5vw;
		padding: 1% 5vw;
	}

	.detail .balloon span::before {
		bottom: -4.2vw;
		border-width: 2.2vw;
		border-top-width: 2.2vw;
	}

	.detail .balloon span img {
		width: 3vw;
		margin-right: 2vw;
		margin-top: -1vw;
	}

	.detail .ttl_24 {
		margin-top: 3%;
	}

	.detail .point li {
		margin-top: 2%;
	}

	.detail .point li:first-child {
		margin-top: 4%;
	}

	.table_info2 {
		border-radius: 1.25vw;
		margin-top: 4%;
	}

	.table_info2 dl {
		padding: 3% 0 4%;
	}

	.table_info2 .ttl_18 {
		margin-bottom: 2vw;
	}

	.table_info2 .ttl_18 .icon {
		width: 4vw;
		margin-top: -.3em;
		margin-right: 1.25vw;
	}

	.table_info2 dd {
		font-size: 4.5vw;
	}

	.table_info2 dd .big {
		font-size: 6vw;
	}
}

/* アクセス
--------------------------------*/
.access_area dt {
	font-size: 1.8rem;
	padding: 8px;
	background: #ccedd8;
	margin-bottom: 20px;
}

.access_area dt .ttl {
	padding: 3px 10px;
	background: #fff;
	display: inline-block;
	margin-right: 20px;
}

.access_area dt img {
	width: 30px;
	vertical-align: middle;
	display: inline-block;
	margin-top: -3px;
	margin-right: 10px;
}

.access_area .map {
	height: 490px;
	width: 100%;
}

.access_area .map iframe {
	width: 100%;
	height: 100%;
}

@media screen and (max-width: 767px) {
	.access_area dt {
		font-size: 4.5vw;
		text-align: center;
		padding: 3vw 2vw 2vw;
		margin-bottom: 4vw;
		display: block;
	}

	.access_area dt .ttl {
		text-align: center;
		padding: 1.5% 4%;
		background: #fff;
		display: block;
		width: 54vw;
		margin: 0 auto 2%;
	}

	.access_area dt img {
		width: 8vw;
		margin-top: -1vw;
		margin-right: 3vw;
	}

	.access_area .map {
		height: 70vw;
	}
}

/* 詳細ページお問い合わせ
--------------------------------*/
.contact_area {
	max-width: 1122px;
	padding: 45px 0 40px;
	margin: 60px auto 0;
	border-radius: 5px;
	border: 3px solid #00a53c;
	position: relative;
	background: #fff;
}

.contact_area .ttl {
	color: #fff;
	text-align: center;
	position: absolute;
	top: -17px;
	left: 0;
	right: 0;
	margin: 0 auto;
}

.contact_area .ttl span {
	border-radius: 18px;
	background: #00a53c;
	padding: 5px 35px;
}

.contact_area .txt {
	text-align: center;
}

.contact_area .tel {
	text-align: center;
	margin-top: 10px;
}

.contact_area .tel a {
	font-size: 6rem;
	line-height: 1;
	color: #00a53c;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	pointer-events: none;
}

.contact_area .tel .free {
	font-size: 1.8rem;
	color: #00a53c;
	border-radius: 5px;
	background: #ccedd8;
	width: 205px;
	height: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 5px;
	margin-right: 10px;
}

.contact_area .tel .icon {
	margin-right: 10px;
}

.contact_area .time {
	font-size: 1.8rem;
	text-align: center;
	margin-top: 15px;
}

@media screen and (max-width: 767px) {
	.contact_area {
		max-width: 100%;
		padding: 10% 4% 5%;
		margin: 16% 20px 0;
		border-radius: 1.25vw;
		border-width: 2px;
	}

	.contact_area .txt {
		text-align: left;
	}

	.contact_area .ttl {
		top: -4vw;
	}

	.contact_area .ttl span {
		border-radius: 5vw;
		padding: 1.5vw 4vw;
	}

	.contact_area .tel {
		margin-top: 4%;
	}

	.contact_area .tel a {
		font-size: 10.5vw;
		display: block;
		pointer-events: auto;
	}

	.contact_area .tel .free {
		font-size: 4vw;
		border-radius: 1.25vw;
		width: 92%;
		height: 12vw;
		margin: 0 auto 2%;
	}

	.contact_area .tel .icon {
		width: 16.5vw;
		margin-right: 2.5vw;
		display: inline-block;
	}

	.contact_area .time {
		font-size: 4vw;
		text-align: center;
		margin-top: 15px;
	}
}

/* スライダー
--------------------------------*/
.slick-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 40px;
	height: 40px;
	background: #00a53c;
	border-radius: 50%;
	text-indent: 101%;
	overflow: hidden;
	z-index: 1;
	cursor: pointer;
	transition: opacity .4s;
}

.slick-arrow:hover {
	opacity: .7;
}

.slick-arrow.slick-prev {
	left: -20px;
}

.slick-arrow.slick-next {
	right: -20px;
}

.slick-arrow.slick-prev::before,
.slick-arrow.slick-next::before {
	content: '';
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}

.slick-arrow.slick-prev::before {
	left: 12px;
	border: 5px solid transparent;
	border-right: 5px solid #fff;
}

.slick-arrow.slick-next::before {
	right: 12px;
	border: 5px solid transparent;
	border-left: 5px solid #fff;
}

@media screen and (max-width: 767px) {
	.slick-arrow {
		top: 53vw;
		transform: translateY(0);
		width: 7.5vw;
		height: 7.5vw;
	}

	.slick-arrow.slick-prev {
		left: -3vw;
	}

	.slick-arrow.slick-next {
		right: -3vw;
	}

	.slick-arrow.slick-prev::before {
		left: 1.3vw;
		border-width: 1.5vw;
		border-right-width: 1.5vw;
	}

	.slick-arrow.slick-next::before {
		right: 1.3vw;
		border-width: 1.5vw;
		border-left-width: 1.5vw;
	}
}

/* 分譲地
--------------------------------*/
.land_box {
	display: flex !important;
	justify-content: flex-start;
}

.land_box .cmn_txt .ttl_24 {
	margin-top: 20px;
}

.land_box .cmn_txt .table_info {
	margin-top: 15px;
}

.land_box .btn_area {
	display: flex;
	justify-content: space-between;
	margin-top: 20px;
}

.land_box .btn_area.col1 {
	display: block;
}

#land .land_box .btn_area.col1 {
	display: block;
	margin-top: 60px;
}
.land_box .btn_area p {
	width: 48.8%;
}

.land_box .btn_area.col1 p {
	width: 100%;
	margin-top: 15px;
}

.land_box .btn_area.col1 p .btn_normal {
	max-width: 100%;
}

@media screen and (max-width: 767px) {
	.land_box {
		display: block !important;
	}

	.land_box .cmn_txt {
		margin-top: 3%;
	}

	.land_box .cmn_txt .ttl_24 {
		margin-top: 3%;
	}

	.land_box .cmn_txt .table_info {
		margin-top: 3%;
	}

	.land_box .btn_area {
		display: flex;
		justify-content: space-between;
		margin-top: 3%;
	}
	#land .land_box .btn_area.col1 {
		display: flex;
		justify-content: space-between;
		margin-top: 3%;
	}

	.land_box .btn_area p {
		width: 48.8%;
	}

	.land_box .btn_area .btn_normal {
		font-size: 3.5vw;
	}

	.land_box .btn_area.col1 p {
		margin-top: 3%;
	}
}

/* モデルハウス
--------------------------------*/
.model_slider {
	width: calc(100% + 40px);
	margin-left: -20px;
}

.model_slider .slick-arrow.slick-prev {
	left: 0;
}

.model_slider .slick-arrow.slick-next {
	right: 0;
}

.model_box {
	padding: 20px;
	position: relative;
}

.model_box a {
	display: block;
	overflow: hidden;
	background: #fff;
	border-radius: 5px;
	box-shadow: 0 0 10px rgba(0, 0, 0, .1);
}

.model_box .cmn_txt {
	padding: 20px 20px;
}

.model_box .room_area {
	display: flex;
	justify-content: flex-start;
	border: 1px solid #c8c8c8;
	border-radius: 5px;
	margin-top: 10px;
}

.model_box .room_area .room1,
.model_box .room_area .room2 {
	padding: 2px 5px;
}

.model_box .room_area .room1 {
	text-align: center;
	width: 85px;
	border-right: 1px solid #c8c8c8;
}

.model_box .room_area .room2 {
	font-size: 1.4rem;
	width: calc(100% - 85px);
}

.model_box .room_area .room2 .big {
	font-size: 1.6rem;
}

.model_box_slider {
	padding: 0;
}

.model_box_slider a {
	height: 100%;
}

.model_box_slider .col1_slider .item {
	height: 230px;
	overflow: hidden;
}

.model_box_slider .arrow .slick-arrow {
	margin-top: -85px;
	background: #fff;
}

.model_box_slider .arrow .slick-arrow.slick-prev::before {
	border-right-color: #00a53c;
}

.model_box_slider .arrow .slick-arrow.slick-next::before {
	border-left-color: #00a53c;
}

.model_box_slider .dot_position {
	display: block;
	height: 20px;
}

.model_box_slider .slick-dots {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 240px;
	width: 100%;
}

.model_box_slider .slick-dots li {
	line-height: 0;
}

.model_box_slider .slick-dots button {
	text-indent: 101%;
	font-size: 0;
	overflow: hidden;
	width: 10px;
	height: 10px;
	background: #c8c8c8;
	border-radius: 50%;
	margin: 0 5px;
}

.model_box_slider .slick-dots .slick-active button {
	background: #00a53c;
}

.model_slider_big {
	width: calc(100% + 40px);
	margin-left: -20px;
}

.model_slider_big .slick-arrow.slick-prev {
	left: 0;
}

.model_slider_big .slick-arrow.slick-next {
	right: 0;
}

.model_slider_big .model_box {
	padding: 0 20px;
}

.model_slider_big .model_box a {
	box-shadow: none;
	border-radius: 0;
	background: transparent;
}

.model_slider_big .model_box .cmn_txt {
	padding: 0;
	margin-top: 20px;
}

@media screen and (max-width: 767px) {
	.model_slider {
		width: calc(100% + 10%);
		margin-left: -5%;
		margin-top: -5vw;
	}

	.model_slider .slick-arrow.slick-prev {
		left: 2vw;
	}

	.model_slider .slick-arrow.slick-next {
		right: 2vw;
	}

	.model_box {
		padding: 5vw 5vw;
	}

	.model_box a {
		border-radius: 1.25vw;
		box-shadow: 0 0 2.5vw rgba(0, 0, 0, .1);
	}

	.model_box .cmn_txt {
		padding: 5.7% 5.7% 12.5%;
	}

	.model_box .room_area {
		border-radius: 1.25vw;
		margin-top: 3.2%;
	}

	.model_box .room_area .room1,
	.model_box .room_area .room2 {
		padding: 2px 5px;
	}

	.model_box .room_area .room1 {
		width: 21.25vw;
	}

	.model_box .room_area .room2 {
		font-size: 3.5vw;
		width: calc(100% - 21.25vw);
	}

	.model_box .room_area .room2 .big {
		font-size: 4vw;
	}

	.model_box_slider {
		padding: 0;
	}

	.model_box_slider .col1_slider .item {
		height: 58vw;
	}

	.model_box_slider .arrow .slick-arrow {
		margin-top: -25vw;
	}

	.model_box_slider .dot_position {
		height: 5vw;
	}

	.model_box_slider .slick-dots {
		top: 60vw;
	}

	.model_box_slider .slick-dots button {
		width: 2.7vw;
		height: 2.7vw;
		margin: 0 1.5vw;
	}

	.wrap:has(.model_slider_big){
		width: 100%;
	}

	.model_slider_big {
		width: 100%;
		margin-left: 0;
	}

	.model_slider_big .slick-arrow.slick-prev {
		/* top: calc(50% - 50px); */
		top: 50%;
		left: -2vw;
		transform: translateY(-50%);
	}

	.model_slider_big .slick-arrow.slick-next {
		/* top: calc(50% - 50px); */
		top: 50%;
		right: -2vw;
		transform: translateY(-50%);
	}
	.model_slider_big .slick-arrow.slick-prev,
	.model_slider_big .slick-arrow.slick-next{
		display: none!important;
	}

	.model_slider_big .model_box {
		padding: 0;
	}

	.model_slider_big .model_box .cmn_txt {
		padding: 0;
		margin-top: 3%;
	}
}

/* 同じ分譲地
--------------------------------*/
#model_bunjo {
	padding: 80px 0 60px;
	position: relative;
}

#model_bunjo:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 350px;
	background: #e6e6e6;
	z-index: -1;
}

@media screen and (max-width: 767px) {
	#model_bunjo {
		padding: 10% 0;
	}

	#model_bunjo:before {
		height: 61vw;
	}
}

/* 同じエリア
--------------------------------*/
#model_area {
	padding: 80px 0;
}

@media screen and (max-width: 767px) {
	#model_area {
		padding: 10% 0;
	}
}

/* select_area
--------------------------------*/
.select_area {
	margin-top: 30px;
}

.select_area .txt {
	text-align: center;
	margin-top: 20px;
}

.select_area .marker {
	text-align: center;
	background: linear-gradient(transparent 70%, #ffff00 70%);
}

.select_area .area {
	display: flex;
	flex-wrap: wrap;
	max-width: 900px;
	margin: 20px auto 0;
}

.select_area .area li {
	position: relative;
	margin-right: 10px;
}

.select_area .area li:nth-child(5n) {
	margin-right: 0;
}

.select_area .area li:nth-child(n+6) {
	margin-top: 10px;
}

.select_area .area label {
	display: inline-block;
}

.select_area .area label input {
	visibility: hidden;
	width: 1px;
	position: absolute;
	top: 0;
}

.select_area .area label span {
	font-size: 1.8rem;
	color: #969696;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 170px;
	height: 60px;
	border: 5px solid #969696;
	border-radius: 5px;
	cursor: pointer;
}

.ie .select_area .area label span {
	padding-top: 1px;
}

.select_area .area label span::before,
.select_area .area label span::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 15px;
}

.ie .select_area .area label span::before,
.ie .select_area .area label span::after {
	margin-top: -4px;
}

.select_area .area label span::before {
	width: 20px;
	height: 20px;
	background: #969696;
	border-radius: 50%;
	transform: translateY(-50%);
}

.select_area .area label span::after {
	left: 20px;
	border-left: 2px solid #fff;
	border-bottom: 2px solid #fff;
	width: 10px;
	height: 8px;
	transform: translateY(-65%) rotate(-45deg);
}

.select_area .area label input:checked+span {
	color: #00a53c;
	border-color: #00a53c;
}

.select_area .area label input:checked+span::before {
	background: #00a53c;
}

.select_area .btn {
	margin-top: 40px;
}

@media screen and (max-width: 767px) {
	.select_area {
		margin-top: 3%;
	}

	.select_area .txt {
		margin-top: 4%;
	}

	.select_area .area {
		max-width: 100%;
		margin: 4% auto 0;
	}

	.select_area .area li,
	.select_area .area li:nth-child(5n) {
		position: relative;
		width: 49%;
		margin-right: 2%;
	}

	.select_area .area li:nth-child(2n) {
		margin-right: 0;
	}

	.select_area .area li:nth-child(n+3) {
		margin-top: 2%;
	}

	.select_area .area label {
		display: block;
		width: 100%;
	}

	.select_area .area label span {
		font-size: 4vw;
		width: 100%;
		height: 12.7vw;
		border-width: 3px;
		border-radius: 1.25vw;
	}

	.select_area .area label span::before,
	.select_area .area label span::after {
		left: 3.5vw;
	}

	.select_area .area label span::before {
		width: 5.5vw;
		height: 5.5vw;
	}

	.select_area .area label span::after {
		left: 4.9vw;
		width: 2.7vw;
		height: 2vw;
	}

	.select_area .btn {
		margin-top: 11.2%;
	}
}

/* result_list
--------------------------------*/
.result_list {
	margin-top: 45px;
}

.result_list>div:first-of-type {
	margin-top: 0;
	padding-top: 0;
	border-top: 0;
}

.result_list>div {
	margin-top: 40px;
	padding-top: 40px;
	/* border-top: 1px solid #c8c8c8; */
}

.result_list .result {
	padding-bottom: 20px;
	margin-bottom: 40px;
	border-bottom: 1px solid #c8c8c8;
}

.thumb_slider .slick-arrow {
	top: calc(50% - 44px);
	background: #fff;
}

.thumb_slider .slick-arrow.slick-prev::before {
	border-right-color: #00a53c;
}

.thumb_slider .slick-arrow.slick-next::before {
	border-left-color: #00a53c;
}

.thumb_slider .slick-dots {
	display: flex;
	margin-top: 10px;
}

.thumb_slider .item {
	height: 370px;
	background: #f2f2f2;
}

.thumb_slider .slick-dots>li {
	width: calc((100% - 15px * 3) / 4);
	height: 78px;
	background: #f2f2f2;
	margin-right: 15px;
	position: relative;
}

.thumb_slider .slick-dots>li.slick-active::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 3px solid #00a53c;
}

.thumb_slider .slick-dots>li:nth-child(4n) {
	margin-right: 0;
}

.thumb_slider .slick-dots>li:nth-child(n+5) {
	margin-top: 10px;
}

@media screen and (max-width: 767px) {
	.result_list {
		margin-top: 11.2%;
	}

	.result_list>div {
		margin-top: 11.2%;
		padding-top: 11.2%;
	}

	.result_list .result {
		padding-bottom: 5.6%;
		margin-bottom: 11.2%;
	}

	.thumb_slider .slick-arrow {
		top: calc(50% - 9vw);
	}

	.thumb_slider .slick-dots {
		margin-top: 2%;
	}

	.thumb_slider .item {
		height: 60vw;
	}

	.thumb_slider .slick-dots>li {
		width: calc((100% - 2% * 3) / 4);
		height: 14vw;
		margin-right: 2%;
	}

	.thumb_slider .slick-dots>li:nth-child(n+5) {
		margin-top: 2%;
	}
}

/* pagination
--------------------------------*/
.pagination {
	display: flex;
	justify-content: center;
	margin-top: 60px;
}

.pagination li {
	margin: 0 7px;
}

.pagination li a {
	width: 40px;
	height: 40px;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #e6e6e6;
	border-radius: 50%;
}

.pagination li.current a {
	color: #fff;
	background: #00a53c;
}

@media screen and (max-width: 767px) {
	.pagination {
		margin-top: 11.2%;
	}

	.pagination li {
		margin: 0 2vw;
	}

	.pagination li a {
		width: 10.7vw;
		height: 10.7vw;
	}
}

/* フォーム
--------------------------------*/
/*.form input[type="text"],
.form input[type="email"],
.form textarea{
	border: 1px solid #c8c8c8;
	border-radius: 5px;
	width: 100%;
	height: 45px;
	padding: 0 1em;
}
.form textarea{
	min-height: 145px;
	padding: 1em;
}
.form .select_arw{
	border: 1px solid #c8c8c8;
	border-radius: 5px;
	width: 100%;
	position: relative;
}
.form .select_arw::before{
	content: '';
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 10px;
	margin-top: 3px;
	border: 5px solid transparent;
	border-top: 5px solid #323232;
	pointer-events: none;
}
.form .select_arw select{
	height: 45px;
	padding: 0 1em;
	width: 100%;
}
.form .select_arw.short,
.form input[type="text"].short{
	max-width: 350px;
}
.form input[type="text"]::placeholder {
	color: #c8c8c8;
}
.form input[type="text"]:-ms-input-placeholder {
	color: #c8c8c8;
}
.form input[type="text"]::-ms-input-placeholder {
	color: #c8c8c8;
}
.form input[type="email"]::placeholder {
	color: #c8c8c8;
}
.form input[type="email"]:-ms-input-placeholder {
	color: #c8c8c8;
}
.form input[type="email"]::-ms-input-placeholder {
	color: #c8c8c8;
}
.form .checkbox{
	display: inline-block;
	position: relative;
}
.form .checkbox input{
	position: absolute;
	visibility: hidden;
	width: 1px;
}
.form .checkbox span{
	padding-left: 23px;
	display: inline-block;
}
.form .checkbox span::before,
.form .checkbox span::after{
	content: '';
	position: absolute;
	top: 4px;
	left: 0;
}
.form .checkbox span::before{
	border: 1px solid #c8c8c8;
	width: 15px;
	height: 15px;
}
.form .checkbox span::after{
	top: 2px;
	left: 4px;
	width: 8px;
	height: 12px;
	border-right: 2px solid #323232;
	border-bottom: 2px solid #323232;
	transform: rotate(45deg);
	opacity: 0;
}
.form .checkbox input:checked + span::after{
	opacity: 1;
}
@media screen and (max-width: 767px) {
	.form input[type="text"],
	.form input[type="email"],
	.form textarea{
		border-radius: 1.25vw;
		height: 12.6vw;
	}
	.form textarea{
		min-height: 45vw;
	}
	.form .select_arw{
		border-radius: 1.25vw;
	}
	.form .select_arw::before{
		right: 3vw;
		margin-top: 1vw;
		border-width: 1.5vw;
		border-top-width: 1.5vw;
	}
	.form .select_arw select{
		height: 12.6vw;
	}
	.form .select_arw.short,
	.form input[type="text"].short{
		max-width: 100%;
	}
	.form .checkbox span{
		padding-left: 6vw;
	}
	.form .checkbox span::before,
	.form .checkbox span::after{
		top: 1.2vw;
		left: 0;
	}
	.form .checkbox span::before{
		width: 4vw;
		height: 4vw;
	}
	.form .checkbox span::after{
		top: .7vw;
		left: 1vw;
		width: 2.5vw;
		height: 3.5vw;
	}
}*/


/* 見学予約
--------------------------------*/
#reservation .bg {
	padding: 45px 20px;
	background: #ccedd8;
}

#reservation .form {
	background: #fff;
	padding: 40px;
	border-radius: 5px;
	margin-top: 40px;
}

#reservation .form .ttl {
	text-align: center;
}

#reservation .form dl {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 20px;
}

#reservation .form dt,
#reservation .form dd {
	line-height: 1.5;
	padding: 20px 0;
	border-bottom: 1px dashed #c8c8c8;
}

#reservation .form dt:last-of-type,
#reservation .form dd:last-of-type {
	border-bottom: 0;
}

#reservation .form dt {
	padding-top: 28px;
	width: 245px;
	position: relative;
	font-size: 16px;
}

#reservation .form .req {
	font-size: 1.2rem;
	text-align: center;
	color: #fff;
	background: #2e9994;
	border-radius: 5px;
	display: inline-block;
	vertical-align: middle;
	margin-top: -3px;
	margin-left: 10px;
	padding-top: 3px;
	width: 44px;
	height: 24px;
	position: absolute;
	top: 36px;
	right: 0;
}

#reservation .form dt.agree .req {
	top: 25px;
}

#reservation .form dd {
	width: calc(100% - 245px);
	padding: 20px 40px;
}

#reservation .form dd>*+* {
	margin-top: 8px;
}

#reservation .form dd .note {
	padding-left: 1em;
	text-indent: -1em;
}

#reservation .form .check_area {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}

#reservation .form .check_area>* {
	width: 33.333%;
	padding-right: 5px;
}

#reservation .form .check_area>*.x2 {
	width: 66.666%;
}

#reservation .form .check_area>*:nth-child(n+4) {
	margin-top: 15px;
}

#reservation .form .ul {
	border-bottom: 1px solid #323232;
}

@media screen and (max-width: 767px) {
	#reservation {
		background: #ccedd8;
	}

	#reservation .bg {
		padding: 11.2% 0;
	}

	#reservation .form {
		padding: 5%;
		border-radius: 1.25vw;
		margin-top: 6%;
	}

	#reservation .form dl {
		display: block;
		margin-top: 7%;
		margin-bottom: 3%;
	}

	#reservation .form dt,
	#reservation .form dd {
		padding: 0;
		width: 100%;
	}

	#reservation .form dt {
		padding: 4% 0 3%;
		width: 100%;
		border-bottom: 0;
	}

	#reservation .form .req {
		font-size: 3vw;
		border-radius: 1.25vw;
		margin-top: -.2vw;
		margin-left: 5vw;
		padding-top: 1.2vw;
		width: 12vw;
		height: 6.6vw;
		top: 3vw;
		right: 0;
	}

	#reservation .form dt.agree {
		border-bottom: 0;
		padding: 0;
		margin-bottom: 0;
	}

	#reservation .form dt.agree .req {
		top: 3vw;
	}

	#reservation .form dt.agree+dd {
		padding-top: 4%;
	}

	#reservation .form dd {
		width: 100%;
		padding: 0 0 5%;
	}

	#reservation .form dd>*+* {
		margin-top: 2vw;
	}

	#reservation .form .check_area>*,
	#reservation .form .check_area>*.x2 {
		width: 50%;
		padding-right: 1vw;
	}

	#reservation .form .check_area>*.sp_x2 {
		width: 100%;
	}

	#reservation .form .check_area>*:nth-child(n+2) {
		margin-top: 2.5vw;
	}
}

/* オンライン相談会
--------------------------------*/
#online {
	padding-top: 80px;
}

#online .bnr a {
	display: block;
	background: url(../img/common/online_bnr_bg.png) no-repeat right top;
	background-size: auto 100%;
	border: 1px solid #00a53c;
	border-radius: 5px;
}

#online .bnr .txt_area {
	max-width: 710px;
	padding: 40px 0 15px;
	text-align: center;
}

#online .bnr .txt {
	font-size: 1.8rem;
	line-height: 1.3;
	text-align: center;
	color: #00a53c;
}

#online .bnr .txt span {
	padding: 0 30px;
	position: relative;
	display: inline-block;
}

#online .bnr .txt span::before,
#online .bnr .txt span::after {
	content: '';
	position: absolute;
	bottom: -.5em;
	width: 1px;
	height: calc(100% + .8em);
	background: #00a53c;
}

#online .bnr .txt span::before {
	left: 0;
	transform: rotate(-30deg);
}

#online .bnr .txt span::after {
	right: 0;
	transform: rotate(30deg);
}

#online .bnr .ttl {
	font-size: 4rem;
	line-height: 1.1;
	text-align: center;
	color: #00a53c;
	margin-top: 18px;
}

#online .bnr .ttl strong {
	font-size: 6.5rem;
	display: block;
}

#online .bnr .ttl strong img {
	vertical-align: middle;
	margin-right: 10px;
	margin-top: -10px;
}

#online .bnr .time {
	font-size: 1.8rem;
	color: #fff;
	background: #00a53c;
	padding: 3px 30px;
	border-radius: 18px;
	display: inline-block;
	margin-top: 15px;
}

#online .bnr .note {
	font-size: 1.4rem;
	text-align: center;
	margin-top: 15px;
}

@media screen and (max-width: 767px) {
	#online {
		padding-top: 10%;
	}

	#online .bnr a {
		background-position: right bottom;
		background-size: 190% auto;
		border-radius: 1.25vw;
	}

	#online .bnr .txt_area {
		max-width: 100%;
		padding: 8% 5% 60%;
	}

	#online .bnr .txt {
		font-size: 4vw;
	}

	#online .bnr .txt span {
		padding: 0 2vw;
	}

	#online .bnr .txt span::before,
	#online .bnr .txt span::after {
		bottom: -.5em;
		height: calc(100% + .8em);
	}

	#online .bnr .ttl {
		font-size: 6vw;
		line-height: 1.3;
		margin-top: 5%;
	}

	#online .bnr .ttl strong {
		font-size: 8.7vw;
	}

	#online .bnr .ttl strong img {
		width: 6.5vw;
		margin-right: 2vw;
		margin-top: -3vw;
	}

	#online .bnr .time {
		font-size: 4vw;
		text-align: center;
		line-height: 1.6;
		padding: 1vw 5vw;
		border-radius: 10vw;
		margin-top: 4%;
	}

	#online .bnr .note {
		font-size: 3.5vw;
		line-height: 1.3;
		margin-top: 4%;
	}
}

/* contact
--------------------------------*/
#contact {
	padding: 80px 0 90px;
	background: #00a53c;
	background: -webkit-linear-gradient(bottom left, #00a53c 0%, #33b763 100%);
	background: -o-linear-gradient(bottom left, #00a53c 0%, #33b763 100%);
	background: linear-gradient(to top right, #00a53c 0%, #33b763 100%);
}

#contact .txt {
	color: #fff;
	text-align: center;
}

#contact .btn {
	margin-top: 35px;
}

#contact .btn_normal {
	font-size: 3rem;
	height: 110px;
	max-width: 100%;
}

#contact .tel_area {
	display: flex;
	justify-content: center;
	margin-top: 40px;
}

#contact .tel_area p {
	margin-right: 20px;
	width: 336px;
}

#contact .tel_area p:last-child {
	margin-right: 0;
}

#contact .tel_area p a {
	font-size: 3rem;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	border-radius: 5px;
	padding: 0;
	border: 1px solid #fff;
	pointer-events: none;
	flex-wrap: wrap;
}

#contact .tel_area .pref {
	font-size: 2.4rem;
	text-align: center;
	color: #00a53c;
	border-radius: 3px 3px 0 0;
	background: #fff;
	display: block;
	width: 100%;
	height: 40px;
	margin-right: 0;
	line-height: 40px;
}

#contact .tel_area .icon {
	width: 69px;
	line-height: 1;
	display: inline-block;
	margin-right: 10px;
	margin-left: 18px;
}

#contact .tel_area p.telnum {
	margin-right: 0;
	width: min(590px, 100%);
}

#contact .tel_area p.telnum a {
	justify-content: center;
}

#contact .tel_area p.telnum .icon img {
	display: block;
}

#contact .tel_area p.telnum span.oswald {
	font-size: 6rem;
	line-height: 1.4;
}


@media screen and (max-width: 767px) {
	#contact {
		padding: 7.5% 0 10%;
	}

	#contact .txt {
		font-size: 3.5vw;
		text-align: left;
	}

	#contact .btn {
		margin-top: 4.2%;
	}

	#contact .btn_normal {
		font-size: 4.5vw;
		height: 21vw;
		max-width: 100%;
	}

	#contact .tel_area {
		display: block;
		width: 94.5%;
		margin: 5.7% auto 0;
	}

	#contact .tel_area p {
		margin-right: 0;
		margin-top: 5.7%;
		width: 100%;
	}

	#contact .tel_area p:first-child {
		margin-top: 0;
	}

	#contact .tel_area p a {
		font-size: 7.5vw;
		border-radius: 1.25vw;
		padding: 0;
		justify-content: center;
		pointer-events: auto;
	}

	#contact .tel_area .pref {
		font-size: 5vw;
		border-radius: 3px 3px 0 0;
		width: 100%;
		height: 40px;
		margin-right: 0;
		line-height: 40px;
	}

	#contact .tel_area .icon {
		width: 13.5vw;
		margin-right: 2.5vw;
	}

	#contact .tel_area p.telnum span.oswald {
		font-size: 10vw;
		line-height: 1.4;
	}
}

/* sns
--------------------------------*/
#sns {
	padding: 75px 0 80px;
}

#sns .ttl_sec {
	position: relative;
}

#sns .ttl_sec img {
	position: absolute;
	top: -30px;
	left: -450px;
	right: 0;
	margin: 0 auto;
}

#sns .ttl_24 {
	padding-bottom: 15px;
	margin-bottom: 20px;
	border-bottom: 1px solid #c8c8c8;
}

#sns .list+.ttl_24 {
	margin-top: 40px;
}

#sns .list li a {
	padding: 20px;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	box-shadow: 0 0 10px rgba(0, 0, 0, .1);
	border-radius: 5px;
}

#sns .list li .oswald {
	text-transform: none;
}

#sns .list li .icon {
	width: 61px;
	margin-right: 10px;
}

#sns .list li .txt_area {
	width: calc(100% - 61px - 10px - 40px);
}

#sns .list li .txt_area .ttl {
	font-size: 3rem;
}

#sns .list li .txt_area .url,
#sns .list li .txt_area .txt {
	font-size: 1.2rem;
	line-height: 1.17;
	margin-top: 5px;
}

@media screen and (max-width: 767px) {
	#sns {
		padding: 15% 0 8.8%;
	}

	#sns .ttl_sec img {
		top: -4vw;
		left: -70vw;
		width: 25.5vw;
		right: 0;
	}

	#sns .ttl_24 {
		padding-bottom: 1.8vw;
		margin-bottom: 5.8%;
	}

	#sns .list+.ttl_24 {
		margin-top: 14%;
	}

	#sns .list li:not(:first-child) {
		margin-top: 5.7%;
	}

	#sns .list li a {
		padding: 5.8%;
		box-shadow: 0 0 2.5vw rgba(0, 0, 0, .1);
		border-radius: 1.25vw;
	}

	#sns .list li .icon {
		width: 15vw;
		margin-right: 2.5vw;
	}

	#sns .list li .txt_area {
		width: calc(100% - 15vw - 2.5vw);
	}

	#sns .list li .txt_area .ttl {
		font-size: 7.5vw;
	}

	#sns .list li .txt_area .url,
	#sns .list li .txt_area .txt {
		font-size: 3vw;
		margin-top: 3%;
	}
}

/* bnr
--------------------------------*/
#bnr {
	padding: 25px 0;
	background: #e6e6e6;
}

@media screen and (max-width: 767px) {
	#bnr {
		padding: 6.3% 0;
	}
}

/* page_ttl
--------------------------------*/
#page_ttl {
	padding: 165px 0 150px;
	background: linear-gradient(135deg, #00a53c 0%, #33b763 100%);
	margin: 0;
}

#page_ttl .ttl {
	font-size: 4.5rem;
	line-height: 1.5;
	color: #fff;
}

#page_ttl .ttl .en {
	font-size: 1.6rem;
	line-height: 1.6;
	text-transform: uppercase;
	display: block;
}

@media screen and (max-width: 767px) {
	#page_ttl {
		padding: calc(4vw + 70px + 9.5%) 0 16vw;
		margin: 0 !important;
	}

	#page_ttl .ttl {
		font-size: 7.5vw;
		text-align: center;
	}

	#page_ttl .ttl .en {
		font-size: 3vw;
	}
}

/* breadcrumb
--------------------------------*/
#breadcrumb {
	margin-top: -100px;
}

#breadcrumb .bg {
	padding: 0 3%;
	height: 100px;
	background: #fff;
	border-radius: 5px 5px 0 0;
	display: flex;
	justify-content: flex-start;
	align-items: center;
}

#breadcrumb ul {
	display: flex;
	justify-content: flex-start;
	align-items: center;
}

#breadcrumb ul li,
#breadcrumb ul li a {
	font-size: 1.4rem;
}

#breadcrumb ul li::after {
	content: '/';
	margin: 0 .7em;
	font-weight: 400;
}

#breadcrumb ul li:last-child::after {
	display: none;
}

#breadcrumb ul li a {
	text-decoration: underline;
	display: inline-block;
}

@media screen and (max-width: 767px) {
	#breadcrumb {
		display: none;
	}
}

/* under_bnr
--------------------------------*/
/*
#under_bnr {
	margin:80px 0;
}
@media screen and (max-width: 767px) {
	#under_bnr{
		padding: 16% 0;
	}
}
*/

/* ---------------------------------------------
  footer
-----------------------------------------------*/
.foot01 {
	padding: 55px 0;
}

.foot01 .logo {
	width: 220px;
}

.foot01 .info {
	display: flex;
	align-items: center;
	/*justify-content: space-between;*/
	padding-bottom: 40px;
	margin-bottom: 40px;
	border-bottom: 1px solid #c8c8c8;
}

.foot01 .tel_area {
	display: flex;
	justify-content: center;
	align-items: center;
}

.foot01 .tel_area p {
	margin-right: 10px;
}

.foot01 .tel_area p:last-child {
	margin-right: 0;
}

.foot01 .tel_area p a {
	font-size: 2.8rem;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	pointer-events: none;
}

.foot01 .tel_area .pref {
	font-size: 1.2rem;
	padding-top: 2px;
	text-align: center;
	border-radius: 5px;
	background: #fff;
	display: inline-block;
	width: 50px;
	height: 30px;
	margin-right: 10px;
	border: 2px solid #323232;
}

.foot01 .tel_area .icon {
	width: 53px;
	line-height: 1;
	display: inline-block;
	margin-right: 10px;
}

.foot01 .sitemap {
	display: flex;
	justify-content: space-between;
}

.foot01 .sitemap li {
	line-height: 1.65;
}

.foot01 .sitemap .main>li:not(.group) {
	margin-top: 10px;
}

.foot01 .sitemap .main .group:not(:first-child) {
	margin-top: 35px;
}

.foot01 .sitemap .sub {
	margin-top: 5px;
}

.foot01 .sitemap .sub>li>a {
	font-size: 1.2rem;
}

.foot02 {
	padding: 15px 0;
	background: #323232;
}

.foot02 .wrap {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.foot02 .link {
	display: flex;
	justify-content: flex-start;
}

.foot02 .link li {
	margin-right: 50px;
}

.foot02 .link li a {
	font-size: 1.2rem;
	color: #fff;
}

.foot02 .copy {
	font-size: 1.2rem;
	color: #fff;
}

@media screen and (max-width: 767px) {
	.foot01 {
		padding: 10.2% 0 3.5%;
	}

	.foot01 .logo {
		width: 55vw;
		margin-bottom: 5.5%;
	}

	.foot01 .info {
		display: block;
		padding-bottom: 0;
		border-bottom: 0;
		margin-bottom: 7%;
	}

	.foot01 .tel_area {
		display: block;
	}

	.foot01 .tel_area p {
		margin-right: 0;
		margin-top: 2.5%;
	}

	.foot01 .tel_area p:first-child {
		margin-right: 0;
		margin-top: 0;
	}

	.foot01 .tel_area p a {
		font-size: 6vw;
		line-height: 1.8;
		pointer-events: auto;
	}

	.foot01 .tel_area .pref {
		font-size: 3vw;
		padding-top: .5vw;
		border-radius: 1.25vw;
		width: 50px;
		height: 30px;
		margin-right: 2vw;
	}

	.foot01 .tel_area .icon {
		width: 53px;
		line-height: 1;
		display: inline-block;
		margin-right: 10px;
	}

	.foot01 .sitemap {
		display: block;
	}

	.foot01 .sitemap li {
		line-height: 1.65;
	}

	.foot01 .sitemap .main>li {
		border-top: 1px solid #c8c8c8;
	}

	.foot01 .sitemap .main>li>a {
		font-size: 4.5vw;
		padding: 4.2% 0;
		display: block;
		position: relative;
	}

	.foot01 .sitemap .main>li:not(.group) {
		margin-top: 0;
	}

	.foot01 .sitemap .main .group:not(:first-child) {
		margin-top: 0;
	}

	.foot01 .sitemap .main .group {
		position: relative;
		margin-top: 0;
	}

	.foot01 .sitemap .main .group .sub {
		display: none;
	}

	.foot01 .sitemap .main .arw {
		position: absolute;
		top: 0;
		right: 0;
		width: 15vw;
		height: 15vw;
		display: block;
	}

	.foot01 .sitemap .main .arw::before {
		content: '';
		position: absolute;
		width: 15px;
		height: 15px;
		top: 50%;
		right: 10px;
		border-right: 2px solid #323232;
		border-bottom: 2px solid #323232;
		margin-top: -5px;
		transform: translateY(-50%) rotate(45deg);
	}

	.foot01 .sitemap .main .arw.is-open::before {
		margin-top: 4px;
		transform: translateY(-50%) rotate(-135deg);
	}

	.foot01 .sitemap .sub {
		margin-top: 0;
	}

	.foot01 .sitemap .main>.other,
	.foot01 .sitemap .sub>li {
		margin-bottom: 4.8%;
	}

	.foot01 .sitemap .main>.other.group {
		padding-top: 4.8%;
	}

	.foot01 .sitemap .main>.other:not(.group) {
		border-top: 0;
	}

	.foot01 .sitemap .main>.other>a,
	.foot01 .sitemap .sub>li>a {
		font-size: 3.5vw;
		display: block;
		padding: 0;
	}

	.foot02 {
		padding: 5% 0 6%;
		/*margin-bottom: 100px;*/
	}

	.foot02 .wrap {
		display: block;
	}

	.foot02 .link li {
		margin-right: 5vw;
	}

	.foot02 .link li a {
		font-size: 3vw;
	}

	.foot02 .copy {
		font-size: 3vw;
		margin-top: 4%;
	}
}


/* ---------------------------------------------
  animation
-----------------------------------------------*/
.is-anime.fade-in {
	opacity: 0;
	transform: translateY(20px);
	transition: opacity .8s cubic-bezier(.445, .05, .55, .95), transform .8s cubic-bezier(.445, .05, .55, .95);
}

.is-anime.anime-active.fade-in {
	opacity: 1;
	transform: translateY(0);
	font-size: 30px;
}

/* ------------------------------
clearfix
------------------------------ */

.cf:after {
	content: ".";
	display: block;
	height: 0;
	font-size: 0;
	clear: both;
	visibility: hidden;
}

.cf {
	display: inline-block;
}

/* Hides from IE Mac */
* html .cf {
	height: 1%;
}

.cf {
	display: block;
}

/* End Hack */


/************************************
	20200903　新下層ページ
**************************************/
main section:not(#page_ttl):not(#under_bnr):not(#contact):not(#sns):not(#bnr):not(#land):not(#mv) {
	margin-bottom: 80px;
}

section#tenjijo_list {
	margin-bottom: 80px !important;
}

.red {
	color: #e60000;
}

.f14 {
	font-size: 1.4rem;
}

.f16 {
	font-size: 1.6rem;
}

.f18 {
	font-size: 1.8rem;
	letter-spacing: 1px;
}

.f20 {
	font-size: 2rem;
}

.f24 {
	font-size: 2.4rem;
}

.green {
	color: #00a53c;
}

.green2 {
	color: #2e9994;
}

.bg_green {
	background: #00a53c;
	color: #fff;
	padding: 5px 10px;
	border-radius: 5px;
}

.inline {
	display: inline-block;
}

.flex {
	display: flex;
	flex-wrap: wrap;
}

.flex_bw {
	justify-content: space-between;
}

.flex_wrap {
	flex-wrap: wrap;
}

.flex_full-w {
	width: 100%;
}

.kurashi_top div dl {
	position: relative;
	z-index: 0;
	padding-top: 100px;
	width: 565px;
}

#ffc01.kurashi_top div dl:before {
	content: "04";
	font-size: 250px;
	color: #ccedd8;
	position: absolute;
	z-index: -1;
	font-family: Oswald;
	font-style: italic;
	top: 90px;
	left: -75px;
}

#sg01.kurashi_top div dl:before {
	content: "01";
	font-size: 250px;
	color: #ccedd8;
	position: absolute;
	z-index: -1;
	font-family: Oswald;
	font-style: italic;
	top: 90px;
	left: -75px;
}

#hgs01.kurashi_top div dl:before {
	content: "02";
	font-size: 250px;
	color: #ccedd8;
	position: absolute;
	z-index: -1;
	font-family: Oswald;
	font-style: italic;
	top: 90px;
	left: -75px;
}

#pb01.kurashi_top div dl:before {
	content: "03";
	font-size: 250px;
	color: #ccedd8;
	position: absolute;
	font-family: Oswald;
	font-style: italic;
	top: 90px;
	left: -75px;
	z-index: -1;
}

#str01.kurashi_top div dl:before {
	content: "05";
	font-size: 250px;
	color: #ccedd8;
	position: absolute;
	z-index: -1;
	font-family: Oswald;
	font-style: italic;
	top: 90px;
	left: -75px;
}

#qm01.kurashi_top div dl:before {
	content: "06";
	font-size: 250px;
	color: #ccedd8;
	position: absolute;
	z-index: -1;
	font-family: Oswald;
	font-style: italic;
	top: 90px;
	left: -75px;
}

#warr01.kurashi_top div dl:before {
	content: "07";
	font-size: 250px;
	color: #ccedd8;
	position: absolute;
	z-index: -1;
	font-family: Oswald;
	font-style: italic;
	top: 90px;
	left: -75px;
}

#ls01.kurashi_top div dl:before {
	content: "08";
	font-size: 250px;
	color: #ccedd8;
	position: absolute;
	z-index: -1;
	font-family: Oswald;
	font-style: italic;
	top: 90px;
	left: -75px;
}

#one01.kurashi_top div dl:before {
	content: "09";
	font-size: 250px;
	color: #ccedd8;
	position: absolute;
	z-index: -1;
	font-family: Oswald;
	font-style: italic;
	top: 90px;
	left: -75px;
}

.kurashi_top div dl dt {
	font-size: 3.8rem;
	color: #00a53c;
	line-height: 1.7em;
	margin-bottom: .7em;
}

.kurashi_top div dl dt span:not(.inline) {
	display: inline-block;
	font-size: 60px;
	position: relative;
	width: fit-content;
}

.kurashi_top div dl dt span.point {
	font-weight: normal;
}

.kurashi_top div dl dd.f24 {
	line-height: 1.5em;
	margin-bottom: .5em;
}

#str01.kurashi_top div dl dt span.yellow_line {
	display: block;
	font-size: 56px;
}

#qm01.kurashi_top div dl dt span.yellow_line {
	font-size: 5.2rem;
}

.yellow_line {
	position: relative;
}

.yellow_line:before {
	content: "";
	display: block;
	width: 100%;
	height: .3em;
	background: #ffff00;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
}

.kurashi_top div dl dt span.yellow_line:before {
	height: .2em;
}

/*.kurashi_top div dl dt span:nth-of-type(2):before{
    content: "";
    display: block;
    width: 100%;
    height: .3em;
    background: #ffff00;
    position: absolute;
    bottom: 0;
    z-index: -1;
}*/
.kurashi_top div dl dt span.point {
	font-size: 30px;
	background: linear-gradient(-76deg, #fff 10%, #20ad50 10%, #20ad50 90%, #fff 90%);
	color: #fff;
	font-style: italic;
	padding: 5px 25px;
	position: absolute;
	top: 0;
	left: 220px;
	line-height: 1.5em;
	font-family: Oswald;
}

_::-webkit-full-page-media,
_:future,
:root .kurashi_top div dl dt span.point {
	font-size: 30px;
	background: linear-gradient(-76deg, #fff 10%, #20ad50 10%, #20ad50 90%, #fff 90%);
	color: #fff;
	font-style: italic;
	padding: 5px 25px;
	position: absolute;
	top: 0;
	left: 220px;
	line-height: 1.5em;
}

/*.kurashi_top div dl dd{
	font-weight: normal;
}*/
div.point5 dl dt.point_title {
	background: #ccedd8;
	padding: 8px 10px;
	margin-bottom: 1em;
	font-size: 24px;
	position: relative;
	padding-left: 120px;
	line-height: 1.4;
}

div.point5 dl dt.point_title span.green {
	background: #fff;
	padding: 0px 10px;
	font-size: 30px;
	font-family: Oswald;
	margin-right: 2rem;
	display: inline-block;
	line-height: 1.3em;
	position: absolute;
	top: 8px;
	left: 10px;
}

div.point5>dl>dd {
	margin-bottom: 40px;
}

div.point5>dl {
	margin-bottom: 40px;
}

div.point5 dl dt.point_title span.green:before {
	content: "POINT";
	display: inline-block;
	font-size: 18px;
	margin-right: .5rem;
}

dl.red_box {
	display: table;
	border: 1px solid #e60000;
	width: 100%;
}

dl.red_box dt {
	background: #e60000;
	color: #fff;
	padding: 0 20px;
	text-align: center;
	display: table-cell;
	vertical-align: middle;
}

dl.red_box dd {
	display: table-cell;
	padding: 20px;
	color: #e60000;
	font-size: 1.6rem;
}

dl.green_box {
	display: table;
	border: 1px solid #00a53c;
	width: 100%;
}

dl.green_box dt {
	background: #00a53c;
	color: #fff;
	padding: 0 20px;
	text-align: center;
	display: table-cell;
	vertical-align: middle;
	line-height: 1.5em;
}

.co2 {
	font-size: .6em;
}

dl.green_box dd {
	display: table-cell;
	padding: 20px;
	color: #00a53c;
	max-width: 800px;
	font-size: 1.6rem;
}

dl.dl-point dt {
	border-bottom: 1px solid #dedede;
	line-height: 1.5em;
	font-size: 1.8rem;
	padding: 10px 0;
}

dl.dl-point dt.f24 {
	font-size: 2.4rem;
}

dl.dl-point dd {
	padding: 20px 0;
}

dl.point03_dl {
	width: calc(100% / 4 - 10px);
}

.table01 table {
	border-collapse: collapse;
	border: 1px solid #00a53c;
	margin: 20px 0;
}

.table01 table th,
.table01 table td {
	border: 1px solid #00a53c;
	vertical-align: middle;
	padding: 10px 20px;
	text-align: center;
}

.table01 table td {
	font-size: 24px;
}

.table01 table td span {
	font-size: 12px;
	color: #333;
	font-weight: normal;
}

.table01 table td dl dt {
	text-align: center;
}

.table01 table td dl dd {
	font-size: 16px;
	line-height: 1.5em;
	padding: 15px 0;
}

.table01 table th,
.table01 table th {
	text-align: center;
	background: #ccedd8;
}

.table01 table tr:first-child th {
	background: #fff;
}

.table01 table tr th:first-child {
	width: 12em;
}

#sg03 {
	background: #e6e6e6;
	padding: 40px 0;
}

#sg03 .sg03_left {
	width: 230px;
	display: inline-block;
	position: relative;
}

#sg03 .sg03_left figcaption {
	position: absolute;
	bottom: 10px;
	background: #00a53c;
	color: #fff;
	font-size: 16px;
	padding: 10px 20px;
	line-height: 1.4em;
	border-radius: 5px;
	left: 10px;
}

#sg03 .sg03_right {
	display: inline-block;
	width: calc(100% - 260px);
	margin-left: 30px;
}

.enq_box {
	width: 670px;
	background: #ccedd8;
	border-radius: 5px;
	padding: 20px;
}

div.sg03_right div figure {
	width: 210px;
}

div.sg03_right div figure figcaption {
	font-size: 14px;
	line-height: 1.3em;
	padding: 10px 0;
}

dl.enq_box dd p {
	font-size: 14px;
	background: #fff;
	padding: 15px;
	width: 510px;
	border-radius: 5px;
	position: relative;
}

dl.enq_box dd p:before {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 25px 25px 25px 0;
	border-color: transparent #ffffff transparent transparent;
	left: -25px;
	bottom: 50px;
}

dl.enq_box dd figure img {
	background: #fff;
	border-radius: 100px;
}

dl.enq_box dd figure {
	width: 90px;
	text-align: center;
}

dl.enq_box dd figure figcaption {
	font-size: 12px;
	text-align: center;
}

dl.enq_box dt {
	text-align: center;
	line-height: 1.5em;
	margin-bottom: 1em;
}

dl.enq_box dt img {
	margin-right: 10px;
}

div.sg03_right>div {
	margin-top: 10px;
}

#sg04>div.wrap,
.green_box {
	border: 5px solid #00a53c;
}

#sg04>div.wrap>div {
	padding: 40px 20px;
}

#sg04>div.wrap>div>p:first-child {
	text-align: center;
}

h2.shita-san {
	background: #00a53c;
	text-align: center;
	color: #fff;
	padding: 10px;
	position: relative;
}

h2.shita-san:before {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 25px 30px 0 30px;
	border-color: #00a53d transparent transparent transparent;
	left: calc(50% - 30px);
	bottom: -25px;
}

.bg_green2 {
	background: #2e9994;
	color: #fff;
	padding: 10px;
}

#sg04>div.wrap>div>p:first-child span.bg_green2 {
	margin-right: 1em;
}

.hoshou-3 {
	margin: 40px 80px;
}

.hoshou-3 dt.ttl_30 {
	text-align: center;
	position: relative;
}

.hoshou-3 dt.ttl_30:before {
	content: "";
	display: inline-block;
	border-bottom: 40px solid #00a53c;
	border-left: 0px solid transparent;
	border-right: 10px solid transparent;
	height: 0;
	width: 0px;
	transform: rotate(150deg);
	position: absolute;
	bottom: 0;
	left: 150px;
}

.hoshou-3 dt.ttl_30:after {
	content: "";
	display: inline-block;
	border-bottom: 40px solid #00a53c;
	border-left: 0px solid transparent;
	border-right: 10px solid transparent;
	height: 0;
	width: 0px;
	transform: rotate(-150deg);
	position: absolute;
	bottom: 0;
	right: 165px;
}

.hoshou-3>dd {
	margin-top: 40px;
}

div.round {
	position: relative;
}

div.round dl {
	width: 280px;
	border: 5px solid #00a53c;
	border-radius: 200px;
	height: 280px;
	overflow: hidden;
	padding: 30px 0;
}

div.round p.hoshou_num {
	position: absolute;
	background: #ccedd8;
	top: 8px;
	left: calc(50% - 60px);
	padding: 0 10px;
	color: #00a53c;
	transform: rotate(-10deg);
}

div.round dl dt {
	font-size: 36px;
	text-align: center;
	background: #00a53c;
	color: #fff;
	line-height: 83px;
}

div.round dl dd {
	padding: 0 55px;
}

div.round dl dd>span {
	font-family: Oswald;
	font-size: 120px;
	line-height: 1em;
}

div.round dl dd>div {
	font-size: 50px;
	text-align: center;
	line-height: 1.2em;
	padding-top: 25px;
}

div.round dl dd>div span {
	display: block;
	background: #cbedd8;
	padding: 0px 10px;
	border-radius: 5px;
	letter-spacing: 1px;
	font-size: 25px;
	line-height: 1.5em;
}

div.hikaku>div dl {
	border: 1px solid #00a53c;
	width: 50%;
}

div.hikaku>div dl:nth-of-type(2) {
	border-left: none;
}

div.hikaku>div dl dt {
	border-bottom: 1px solid #00a53c;
	text-align: center;
	padding: 5px;
}

div.hikaku>div dl dd {
	padding: 15px;
}

div.hikaku>div dl dd:nth-of-type(1) {
	border-bottom: 1px solid #00a53c;
}

div.hikaku ul {
	flex-wrap: wrap;
}

div.hikaku ul li {
	width: calc(50% - 20px);
	font-size: 24px;
}

div.hikaku ul li>span:nth-of-type(1):before {
	display: inline-block;
	content: "●";
	margin-right: 5px;
}

div.hikaku ul li>span.green span {
	font-size: 18px;
}

div.hikaku dl dd.red,
div.hikaku dl dd.green {
	font-size: 16px;
}

p.ue-san {
	margin: 40px 0;
	border: 4px solid #00a53c;
	border-radius: 5px;
	padding: 10px;
	position: relative;
	font-size: 16px;
}

p.ue-san:before {
	content: "";
	display: block;
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 30px 25px 30px;
	border-color: transparent transparent #00a53d transparent;
	left: calc(50% - 30px);
	top: -25px;
}

p.ue-san:after {
	content: "";
	display: block;
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 29px 25px 29px;
	border-color: transparent transparent #fff transparent;
	left: calc(50% - 29px);
	top: -20px;
}

.bottom_link div {
	padding: 80px 25px 0;
	border-top: 1px solid #c8c8c8;
}

.bottom_link div a {
	display: flex;
	min-width: 300px;
	width: fit-content;
	width: -moz-fit-content;
	background: #2e9994;
	font-size: 16px;
	line-height: 1.5em;
	color: #fff;
	position: relative;
}

.bottom_link div a:nth-of-type(1) {
	padding: 20px 40px 20px 10px;
}

.bottom_link div a:nth-of-type(1):before {
	content: "";
	display: block;
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 44px 25px 44px 0;
	border-color: transparent #2e9994 transparent transparent;
	top: 0;
	left: -25px;
}

.bottom_link div a:nth-of-type(1):after {
	content: "";
	display: block;
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 44px 25px 44px 0;
	border-color: transparent #fff transparent transparent;
	top: 0;
	right: 0;
}

.bottom_link div a:nth-of-type(2) {
	padding: 20px 10px 20px 35px;
}

.bottom_link div a:nth-of-type(2):before {
	content: "";
	display: block;
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 44px 0 44px 25px;
	border-color: transparent transparent transparent #fff;
	top: 0;
	left: 0;
}

.bottom_link div a:nth-of-type(2):after {
	content: "";
	display: block;
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 44px 0 44px 25px;
	border-color: transparent transparent transparent #2e9994;
	top: 0;
	right: -25px;
}

.bottom_link div a span {
	font-size: 24px;
	font-family: Oswald;
	font-weight: normal;
	font-style: italic;
	background: #fff;
	border-radius: 100px;
	color: #2e9993;
	line-height: 46px;
	width: 48px;
	padding-left: 9.5px;
	margin-right: 10px;
}

.hgs_shikumi {
	background: url(../img/life/hgs/hgs_img02_04.png), #f5f5f5;
	background-repeat: no-repeat;
	background-size: 50%;
	background-position: 545px 170px;
	position: relative;
}

.hgs_shikumi h3 {
	position: absolute;
	right: 0;
	background: linear-gradient(55deg, #f5f5f5 9.5%, #cbedd8 9.5%);
	padding: 15px 20px 15px 45px;
}

.hgs_shikumi>div {
	padding: 80px 40px;
	position: relative;
}

.hgs_shikumi_left {
	/* width: 45%; */
}

.hgs_shikumi_left>div {
	margin-bottom: 80px;
	padding-bottom: 10px;
	border-bottom: 1px solid;
	position: relative;
}

.hgs_shikumi_left>div:nth-of-type(1):before {
	content: "";
	width: 100px;
	height: 100px;
	border: 3px solid #ff0000;
	position: absolute;
	right: -150px;
	border-radius: 100px;
	bottom: -210px;
}

.hgs_shikumi_left>div:nth-of-type(1):after {
	content: "";
	width: 140px;
	height: 1px;
	border-bottom: 1px solid #333;
	position: absolute;
	right: -108px;
	bottom: -60px;
	transform: rotate(57deg);
}

.hgs_shikumi_left>div:nth-of-type(2):before {
	content: "";
	width: 65px;
	height: 65px;
	border: 3px solid #ff0000;
	position: absolute;
	right: -121px;
	border-radius: 100px;
	bottom: -117px;
}

.hgs_shikumi_left>div:nth-of-type(2):after {
	content: "";
	width: 90px;
	height: 1px;
	border-bottom: 1px solid #333;
	position: absolute;
	right: -77px;
	bottom: -33px;
	transform: rotate(45deg);
}

.hgs_shikumi_left>div:nth-of-type(3):before {
	content: "";
	width: 65px;
	height: 65px;
	border: 3px solid #ff0000;
	position: absolute;
	right: -253px;
	border-radius: 100px;
	bottom: 132px;
}

.hgs_shikumi_left>div:nth-of-type(3):after {
	content: "";
	width: 245px;
	height: 1px;
	border-bottom: 1px solid #333;
	position: absolute;
	right: -222px;
	bottom: 69px;
	transform: rotate(-35deg);
}

.hgs_shikumi_left>div:last-child {
	margin-bottom: 0;
}

.hgs_shikumi_left>div dl {
	padding-left: 15px;
	width: 335px;
}

.hgs_shikumi_left>div img {
	width: 150px;
	height: 150px;
}

.hgs_shikumi.higai {
	background: url(../img/life/hgs/hgs_img02_04_v2.png), #f5f5f5;
	background-repeat: no-repeat;
	background-size: 50%;
	background-position: 544px 290px;
	position: relative;
}

.hgs_shikumi_left>.hgs_h4 {
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 20px;
}

.hgs_shikumi_left>.hgs_text {
	font-size: 16px;
	line-height: 1.7;
}

.hgs_shikumi_left>.hgs_higai {
	width: min(100%, 348px);
}

.hgs_shikumi_left>.hgs_higai dt {
	text-align: center;
	color: #fff;
	font-size: 24px;
}

.hgs_shikumi_left>.hgs_higai dd figure figcaption {
	font-size: 14px;
	margin-top: 10px;
}

.hgs_shikumi_left>div dl dd {
	line-height: 1.5em;
	margin-top: .5em;
}

.hgs_shikumi_right p:nth-of-type(2):before {
	content: "";
	width: 3em;
	height: 1em;
	background: #0f8d92;
	border: 1px solid #333;
	display: inline-block;
	margin-right: 10px;
	vertical-align: middle;
}

.dl_table01 dl dt {
	background: #cbedd8;
}

.dl_table01 dl dt,
.dl_table01 dl dd {
	padding: 10px;
	width: calc(100% / 3);
	border-top: 1px solid;
	border-left: 1px solid;
}

.dl_table01 dl:last-child {
	border-bottom: 1px solid;
}

.dl_table01 dl dt div {
	padding: 1em 0 0 1.5em;
	display: table-cell;
}

.dl_table01 dl:nth-of-type(2) dt div {
	font-size: 2.4rem;
	line-height: 1.5em;
}

.dl_table01 dl dd {
	padding: 1.5em 15px 0;
}

.dl_table01 dl dd:last-child {
	border-right: 1px solid;
}

#hgs02 .point5 dl:nth-of-type(3) dd p {
	width: 48%;
}

#hgs02 .point5 dl:nth-of-type(3) dd div {
	width: 47%;
}

#hgs02 .point5 .ovf_box {
	padding: 60px 0;
	overflow-x: auto;
}

#hgs02 .point5 dl:nth-of-type(5)>dd:nth-of-type(1) p {
	width: 55%;
}

#hgs02 .point5 dl:nth-of-type(5)>dd:nth-of-type(1)>div {
	width: 40%;
}

#hgs02 .point5 dl:nth-of-type(5)>dd:nth-of-type(1) div dl {
	margin-bottom: 5px;
	width: 100%;
}

#hgs02 .point5 dl:nth-of-type(5)>dd:nth-of-type(1) div dl dt {
	background: #00a53c;
	color: #fff;
	padding: 20px 0;
	width: 125px;
	display: inline-block;
	text-align: center;
	border: 3px solid #00a53c;
}

#hgs02 .point5 dl:nth-of-type(5)>dd:nth-of-type(1) div dl dd {
	border: 3px solid #c0c0c0;
	border-left: none;
	width: 157px;
	text-align: center;
	padding: 5px 0;
	font-size: 30px;
	line-height: 1em;
}

#hgs02 .point5 dl:nth-of-type(5)>dd:nth-of-type(1) div dl:nth-of-type(1) dd span {
	display: block;
}

#hgs02 .point5 dl:nth-of-type(5)>dd:nth-of-type(1) div dl:nth-of-type(2) dd {
	padding-top: 20px;
}

#hgs02 .point5 dl:nth-of-type(5)>dd:nth-of-type(1) img {
	width: 160px;
	height: 158px;
	margin-right: 5px;
}

#hgs02 .point5 dl:nth-of-type(5) dl.dl-point dd p {
	width: 45%;
}

#hgs02 .point5 dl:nth-of-type(5) dl.dl-point dd p+div {
	width: 52%;
	height: 180px;
	margin-top: 12px;
}

#hgs02 .point5 dl:nth-of-type(5) dl.dl-point dd p+div dl {
	border-right: 1px solid #c0c0c0;
	width: calc(100% / 3);
}

#hgs02 .point5 dl:nth-of-type(5) dl.dl-point dd p+div dl dt {
	text-align: center;
	border: none;
}

#hgs02 .point5 dl:nth-of-type(5) dl.dl-point dd p+div dl dd {
	text-align: center;
	line-height: 1.3em;
}

#hgs02 .point5 dl:nth-of-type(5) dl.dl-point dd p+div dl dd span {
	display: block;
}

#pb02 div>div.land_box p {
	width: 63%;
}

#pb02 div>div.land_box {
	margin-bottom: 40px;
}

#pb02 dd.green_box {
	padding: 20px;
	margin-top: 20px;
}

#pb03 .green_box .ovf_box {
	padding: 40px 0;
}

#pb03 .green_box p {
	padding: 0 20px 20px;
}

#pb03 div.point5 dl:nth-of-type(2) dd figure {
	border: 1px solid #dedede;
	padding: 20px;
}

#pb03 div.point5 dl:nth-of-type(3) dd div.ovf_box {
	border: 1px solid #dedede;
	margin-top: 20px;
	padding: 40px;
}

#pb03 div.point5 dl:nth-of-type(3) dd>p {
	width: 50%;
}

#pb03 div.point5 dl:nth-of-type(3) dd>div img {
	width: 48%;
}

#pb03 div.point5 dl:nth-of-type(3) dd>div.ovf_box img {
	width: 100%;
}

#pb03 div.point5 dl:nth-of-type(4) dd p,
#pb03 div.point5 dl:nth-of-type(5) dd p {
	width: 56%;
}

#pb03 div.point5 dl:nth-of-type(4) dd img,
#pb03 div.point5 dl:nth-of-type(5) dd>div {
	width: 40%;
}

#pb03 div.point5 dl:nth-of-type(5) dd>div {
	background: #dadada;
	padding: 15px;
}

#pb03 div.point5 dl:nth-of-type(5) dd>div img {
	width: 57%;
	height: 200px;
}

#pb03 div.point5 dl:nth-of-type(5) dd>div dl dt {
	line-height: 1.3em;
	font-size: 2.1rem;
	border-bottom: 1px solid #8d8d8d;
	padding-bottom: 15px;
}

#pb03 div.point5 dl:nth-of-type(5) dd>div dl {
	width: 38%;
}

#pb03 div.point5 dl:nth-of-type(5) dd>div dl dd {
	font-size: 1.4rem;
	padding: 20px 0 0;
	line-height: 1.5em;
}

#pb04>div.wrap {
	background: #ccedd8;
	padding: 40px 20px;
}

#pb04>div.wrap>div,
#pb04>div.wrap>dl {
	background: #fff;
	padding: 20px;
	border-radius: 5px;
	margin-bottom: 20px;
}

#pb04>div.wrap>div p {
	margin-left: 40px;
}

#pb04>div.wrap>dl dt {
	line-height: 1em;
	padding: 0 0 15px;
	font-size: 2rem;
}

#pb04>div.wrap>dl dd p {
	width: 48%;
}

#ffc02 div.point5 {
	width: 55%;
}

#ffc02 div.point5 div.land_box {
	justify-content: space-between;
	flex-wrap: wrap;
}

#ffc02 div.point5 div.land_box dl {
	width: calc(50% - 10px);
	border: 5px solid #00a53c;
	border-radius: 10px;
	margin-bottom: 40px;
	padding: 20px;
	position: relative;
	background: #fff;
}

#ffc02 div.point5>dl {
	border: 5px solid #00a53c;
	border-radius: 10px;
	margin-bottom: 40px;
	padding: 20px;
	position: relative;
	background: #fff;
}

#ffc02 div.point5 dl dt {
	position: relative;
	text-align: center;
	color: #00a53c;
	font-size: 2.4rem;
	padding: 10px 0 0;
}

#ffc02 div.point5 dl dt span {
	font-family: Oswald;
	background: #00a53c;
	border-radius: 100px;
	width: 56px;
	display: block;
	font-size: 3rem;
	color: #fff;
	text-align: center;
	position: absolute;
	top: -50px;
	left: calc(50% - 28px);
}

#ffc02 div.point5 dl dd {
	font-size: 1.6rem;
}

#ffc02 div.point5>dl>dd {
	margin-bottom: 0px;
}

#ffc02 {
	background: url(../img/life/ffc/housing_img02.png)no-repeat;
	background-position: bottom;
}

#ffc03 div.point5 dl dt.point_title span.green:before {
	content: "BENEFITS";
	display: inline-block;
	font-size: 18px;
	margin-right: .5rem;
}

#ffc03 div.point5 dl dd.land_box .text-area {
	width: 50%;
}

#ffc03 div.point5 dl dd.land_box {
	justify-content: space-between;
}

#ffc03 div.point5 dl dd.land_box .img-area {
	width: 48%;
	justify-content: space-around;
}

#ffc03 div.point5 dl dd.land_box .img-area figure figcaption {
	color: #00a53c;
	font-size: 1.6rem;
	line-height: 2em;
}

#ffc03 div.point5 dl:nth-of-type(2) dd.land_box .img-area figure figcaption {
	line-height: 1.3em;
	padding-top: 10px;
}

dl.ion {
	width: 430px;
	border: 1px solid #00a53c;
	margin-right: 40px;
	display: table !important;
}

dl.ion>dt {
	display: table-cell;
	vertical-align: middle;
	padding: 20px;
	width: 135px;
	background: #cbedd8;
	border-right: 1px solid #00a53c;
	color: #00a53c;
	line-height: 1.5em;
}

dl.ion>dd.land_box {
	padding: 14px 10px;
}

dl.ion>dd.land_box dt {
	font-size: 1.6rem;
}

dl.ion>dd.land_box dl:nth-of-type(1) dt span {
	background: #007daf;
	color: #fff;
	border-radius: 100px;
	text-align: center;
	display: inline-block;
	width: 20px;
	line-height: 18px;
	padding: 0 0 2px 0;
	margin-right: 5px;
}

dl.ion>dd.land_box dl:nth-of-type(1) dd {
	font-family: Oswald;
	font-size: 3.6rem;
	text-align: center;
	line-height: 1em;
	color: #067caf;
}

dl.ion>dd.land_box dl:nth-of-type(2) dt span {
	background: #ff0000;
	color: #fff;
	border-radius: 100px;
	text-align: center;
	display: inline-block;
	width: 20px;
	line-height: 18px;
	padding: 0 0 2px 0;
	margin-right: 5px;
}

dl.ion>dd.land_box dl:nth-of-type(2) dd {
	font-family: Oswald;
	font-size: 3.6rem;
	text-align: center;
	line-height: 1em;
	color: #ff0000;
}

dl.ion:nth-of-type(1) {
	position: relative;
}

dl.ion:nth-of-type(1):after {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 8.5px 0 8.5px 9px;
	border-color: transparent transparent transparent #969696;
	display: block;
	position: absolute;
	right: -27px;
	top: 40px;
}

#ffc03 div.point5 dl:nth-of-type(3) dd>div.land_box {
	margin: 20px 0;
}

#str02 .point5 dl:nth-of-type(1) dd figure {
	width: 40%;
	margin-left: 40px;
}

#str02 .point5 dl:nth-of-type(1) dd figure figcaption {
	font-size: 1.4rem;
	line-height: 1.7em;
	margin-top: 10px;
}

#str02 .point5 dl:nth-of-type(2) dd h2 span {
	font-size: 1.4rem;
	display: block;
	margin-bottom: 10px;
}

#str02 .point5 dl:nth-of-type(2) dd.green_box .ovf_box {
	padding: 40px 0 10px;
}

#str02 .point5 dl:nth-of-type(2) dd.green_box .kome {
	margin-right: 10px;
}

.kome {
	font-size: 1.6rem;
}

.t_r {
	text-align: right;
}

#str02 .point5 dl:nth-of-type(2) dd.bg_gray {
	background: #e6e6e6;
	padding: 20px 40px;
}

ul.disc li {
	list-style: inside;
}

#str02 .point5 dl:nth-of-type(2) dd.bg_gray dl.dl-point dd>p {
	font-size: 1.4rem;
	margin: 20px 0;
}

#str02 .point5 dl:nth-of-type(2) dd.bg_gray dl.dl-point dd ul {
	margin: 20px 0;
}

.bg_w {
	background: #fff;
	padding: 20px;
	border-radius: 5px;
}

#str03 div.point5 dl:nth-of-type(1) dd p,
#str03 div.point5 dl:nth-of-type(2) dd p,
#str03 div.point5 dl:nth-of-type(4) dd p,
#str03 div.point5 dl:nth-of-type(5) dd>div:nth-of-type(1) {
	width: 74%;
}

#str03 div.point5 dl:nth-of-type(3) dd p {
	width: 65%;
}

#str03 div.point5 dl dd figcaption {
	font-size: 1.4rem;
	margin-top: 10px;
}

#str03 div.point5 dl:nth-of-type(5) dd dl.bg_gray {
	background: #e6e6e6;
	border-radius: 5px;
	padding: 0px 20px 10px;
	margin-top: 40px;
}

#str03 div.point5 dl:nth-of-type(5) dd dl.bg_gray figure {
	width: 280px;
}

#str03 div.point5 dl:nth-of-type(5) dd dl.bg_gray figure+p {
	width: 190px;
	margin-left: 20px;
}

#str03 div.point5 dl:nth-of-type(5) dd dl.bg_gray figure:nth-of-type(1) {
	margin-right: 45px;
	position: relative;
}

#str03 div.point5 dl:nth-of-type(5) dd dl.bg_gray figure:nth-of-type(1):after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 20px 0 20px 15px;
	border-color: transparent transparent transparent #00a53c;
	position: absolute;
	right: -32px;
	top: calc(50% - 30px);
}

#str03 div.point5 dl:nth-of-type(5) dd>div:nth-of-type(2) figure {
	margin-bottom: 20px;
}

#str03 div.point5 dl:nth-of-type(6) dl {
	width: 52%;
}

#str03 div.point5 dl:nth-of-type(6) dd>div {
	width: 45%;
}

#str03 div.point5 dl:nth-of-type(6) dl.dl-point dt {
	font-size: 1.8rem;
}

#qm02 .bg_gray {
	background: #e6e6e6;
	padding: 20px 20px 30px;
}

#qm02 .bg_gray div dl {
	width: 42%;
	position: relative;
}

#qm02 .bg_gray div dl dt {
	text-align: center;
	background: #ed5b5b;
	color: #fff;
	padding: 20px;
	font-size: 2.4rem;
	line-height: 1.5em;
	border-radius: 5px;
	margin: 35px 10px;
}

#qm02 .bg_gray>div dl:before {
	position: absolute;
	content: "＋";
	font-weight: 600;
	font-size: 4rem;
	left: -70px;
	top: calc(50% - 65px);
}

#qm02 div dl.dl-point dd p {
	width: 39%;
	margin-right: 20px;
}

#qm02 div dl.dl-point dd figure:nth-of-type(1) {
	margin-right: 25px;
	width: 200px;
}

#qm02 div dl.dl-point dd figure a {
	display: block;
	position: relative;
	transition: .3s;
}

#qm02 div dl.dl-point dd figure a:after {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: url(../img/life/qm/look_icon.png), rgba(0, 0, 0, .7);
	background-repeat: no-repeat;
	background-position: center;
	opacity: 0;
	transition: .3s;
}

#qm02 div dl.dl-point dd figure a:hover:after {
	opacity: 1;
}

#qm02 div dl.dl-point dd figure figcaption {
	font-size: 1.4rem;
	margin-top: 10px;
}

#qm03>div {
	background: #ccedd8;
	padding: 30px;
}

#qm03>div .bg_w {
	margin-bottom: 40px;
	padding: 30px;
}

.tate {
	writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
}

#qm03 ul.flow {
	width: 80%;
	justify-content: space-around;
	position: relative;
}

#qm03 ul.flow:before {
	content: "";
	width: 105%;
	height: 5px;
	background: #c0c0c0;
	left: 0;
	position: absolute;
	bottom: 30px;
}

#qm03 ul.flow:after {
	content: "";
	display: block;
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 7.5px 0 7.5px 15px;
	border-color: transparent transparent transparent #c0c0c0;
	right: -52px;
	bottom: 25px;
}

ul.flow li {
	writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	position: relative;
	padding-top: 60px;
}

ul.flow li:after {
	content: "";
	display: block;
	width: 20px;
	height: 20px;
	background: #00a53c;
	border: 3px solid #fff;
	border-radius: 100px;
	position: absolute;
	bottom: 22px;
	left: calc(50% - 10px);
}

ul.flow li span {
	position: absolute;
	font-family: Oswald;
	writing-mode: horizontal-tb;
	background: #00a53c;
	color: #fff;
	width: 45px;
	padding-left: 10px;
	border-radius: 100px;
	font-size: 2.4rem;
	top: 0;
	left: calc(50% - 22.5px);
	font-style: italic;
	font-weight: normal;
}

ul.flow li:nth-of-type(1) span {
	padding-left: 9px;
}

ul.flow li:nth-of-type(2) span {
	padding-left: 8px;
}

ul.flow li:nth-of-type(3) span {
	padding-left: 7px;
}

ul.flow li:nth-of-type(4) span {
	padding-left: 8px;
}

ul.flow li:nth-of-type(5) span {
	padding-left: 8px;
}

ul.flow li:nth-of-type(6) span {
	padding-left: 8px;
}

ul.flow li:nth-of-type(7) span {
	padding-left: 9px;
}

ul.flow li:nth-of-type(8) span {
	padding-left: 8px;
}

ul.flow li:nth-of-type(9) span {
	padding-left: 8px;
}

ul.flow li:nth-of-type(10) span {
	padding-left: 9px;
}

ul.flow+p.tate {
	font-size: 2.4rem;
	background: #00a53c;
	color: #fff;
	padding: 40px 10px;
	border-radius: 5px;
}

#qm03 .bg_w>div {
	justify-content: space-around;
	margin-top: 40px;
}

#qm03 dl.dl-point {
	width: 61%;
}

#qm03 div.wrap div figure {
	width: 380px;
	position: relative;
}

#qm03 div.wrap div figure figcaption {
	font-size: 2.6rem;
	font-family: Oswald;
	font-style: italic;
	background: #00a53c;
	position: absolute;
	width: 40px;
	line-height: 40px;
	border-radius: 100px;
	color: #fff;
	padding-left: 7px;
	font-weight: normal;
	top: -15px;
	left: -10px;
}

#qm03 div.wrap div:nth-of-type(2) figure figcaption {
	padding-left: 6px;
}

#qm03 div.wrap div:nth-of-type(3) figure figcaption {
	padding-left: 5px;
}

#qm03 div.wrap div:nth-of-type(4) figure figcaption {
	padding-left: 5px;
}

#qm03 div.wrap div:nth-of-type(5) figure figcaption {
	padding-left: 4px;
}

#qm03 div.wrap div:nth-of-type(6) figure figcaption {
	padding-left: 4px;
}

#qm03 div.wrap div:nth-of-type(7) figure figcaption {
	padding-left: 4px;
}

#qm03 div.wrap div:nth-of-type(8) figure figcaption {
	padding-left: 5px;
}

#qm03 div.wrap div:nth-of-type(9) figure figcaption {
	padding-left: 5px;
}

#qm03 div.wrap div:nth-of-type(10) figure figcaption {
	padding-left: 5px;
}

#qm03 div.wrap div:nth-of-type(11) figure figcaption {
	padding-left: 5px;
}


.modal {
	display: none;
	height: 100vh;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 1;
}

.modal__bg {
	background: rgba(0, 0, 0, 0.8);
	height: 100vh;
	position: absolute;
	width: 100%;
}

.modal__content {
	left: 50%;
	padding: 7vh 0 4vh;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: fit-content;
	width: -moz-fit-content;
	height: 100%;
	margin: 0 auto;
	text-align: center;
}

.modal__content img {
	height: 100%;
}

.modal__content a {
	background: #fff;
	padding: 5px;
	font-size: 1.4rem;
	text-align: center;
	display: block;
	width: 100px;
	margin: 10px auto;
	border-radius: 5px;
}

#warr03 div.green_box div:nth-of-type(1) {
	padding: 60px 20px 20px;
}

#warr03 div.green_box div:nth-of-type(1) dl {
	width: calc(100% / 3 - 20px);
}

#warr03 div.green_box div:nth-of-type(1) dl dt {
	background: #00a53c;
	color: #fff;
	padding: 15px;
	font-size: 2.4rem;
	border-radius: 5px 0px 0 5px;
	line-height: 1.2em;
	text-align: center;
	width: 120px;
}

#warr03 div.green_box div:nth-of-type(1) dl:not(:nth-of-type(3)) dt {
	padding: 30px 15px 15px;
}

#warr03 div.green_box div:nth-of-type(1) dl dd {
	font-size: 2.1rem;
	position: relative;
	padding: 35px 10px 0px 10px;
	color: #00a53c;
	width: 250px;
	border: 4px solid;
	border-radius: 0px 5px 5px 0px;
}

#warr03 div.green_box div:nth-of-type(1) dl dd>span {
	font-size: 6rem;
	position: absolute;
	top: -15px;
}

#warr03 div.green_box div:nth-of-type(1) dl dd>span {
	font-family: Oswald;
}

#warr03 div.green_box div:nth-of-type(1) dl:not(:nth-of-type(1)) dd span span {
	font-size: 4.2rem;
	margin-left: 5px;
}

#warr03 div.green_box div:nth-of-type(1) dl:not(:nth-of-type(1)) dd span {
	margin-left: 5px;
}

#warr03 div.green_box div:nth-of-type(1) dl:nth-of-type(1) dd>span {
	left: 10px;
}

#warr03 div.green_box div:nth-of-type(1) dl:nth-of-type(1) dd {
	padding: 35px 10px 0 100px;
}

#warr03 div.green_box div:nth-of-type(2) {
	margin: 20px 0;
	padding: 0 20px;
}

#warr03 div.green_box div:nth-of-type(2) dl {
	display: table;
}

#warr03 div.green_box div:nth-of-type(2) dl:nth-of-type(1) {
	width: 125px;
}

#warr03 div.green_box div:nth-of-type(2) dl:nth-of-type(2) {
	width: 360px;
}

#warr03 div.green_box div:nth-of-type(2) dl:nth-of-type(1) dt {
	padding: 0 10px;
}

#warr03 div.green_box div:nth-of-type(2) dt,
#warr03 div.green_box div:nth-of-type(2) dd {
	display: table-cell;
	vertical-align: middle;
	padding: 0 10px;
}

.bg_b {
	background: #333;
	color: #fff;
}

.li_maru li {
	margin-left: 1.5em;
}

.li_maru li:before {
	content: "●";
	display: inline-block;
	margin-left: -1.5em;
	margin-right: .5em;
}

#warr03 div.green_box div:nth-of-type(2) p.kome {
	border: 1px solid;
	padding: 5px 10px;
	font-size: 1.4rem;
}

.t_r a.back_btn {
	font-size: 1.4rem;
	padding: 30px 15px 30px 40px;
	display: inline-block;
	margin: 40px 0;
	border-radius: 5px;
}

.t_r a.back_btn:after {
	content: "▲";
	display: inline-block;
	margin-left: 25px;
}

#warr04 dd.ovf_box {
	margin: 40px 0;
}

#warr04 .kome {
	font-size: 1.6rem;
}

#warr04 dl:nth-of-type(5) dd {
	text-align: center;
}

#warr05 .dl-point dd p {
	width: 52%;
}

#warr05 .dl-point dd p .kome {
	font-size: 1.6rem;
}

#warr05 .dl-point dd dl {
	width: 44%;
}

#warr05 .dl-point dd dl dt {
	border: none;
}

#warr05 .dl-point dd dl dd.kome {
	font-size: 1.4rem;
	padding: 0;
}

#warr05 .ovf_box {
	padding: 40px 0 0;
}

#warr06 dl dd p {
	width: 46%;
}

#warr06 dl dd div.green_box2 {
	width: 50%;
	border: 5px solid #6ba733;
	border-radius: 15px;
	padding: 15px;
}

#warr06 dl dd div.green_box2 dl dt {
	color: #fff;
	font-size: 3rem;
	text-align: center;
	border-radius: 5px;
	padding: 16px 0 0;
	width: 280px;
}

.bg_blue {
	background: #309fc5;
	width: 265px;
}

#warr06 dl dd div.green_box2 dl dd.kome {
	font-size: 1.4rem;
	padding: 0 0 0 15px;
}

#warr06 dl dd div.green_box2 dl dt span {
	font-size: 4.8rem;
	letter-spacing: 0px;
	margin-left: -7px;
}

#warr06 dl dd div.green_box2 dl {
	margin-top: 20px;
}

.green_box2 {
	border: 5px solid #6ba733;
	border-radius: 15px;
	padding: 20px;
	position: relative;
}

.green3 {
	color: #6ba733;
}

.bg_green3 {
	background: #d7f5ba;
}

#warr06 .green_box2>span {
	font-size: 1.6rem;
	text-align: center;
	background: #6ba733;
	display: block;
	width: 80px;
	height: 80px;
	border-radius: 100px;
	color: #fff;
	line-height: 1.2em;
	padding: 20px 0px;
	position: absolute;
	top: -25px;
	left: -27px;
}

#warr06 .green_box2 h2 {
	font-size: 2.4rem;
	text-align: center;
	margin-bottom: 40px;
}

#warr06 .green_box2 figcaption {
	font-size: 1.6rem;
	line-height: 2.5em;
	text-align: center;
}

#warr06 .green_box2>div>div {
	width: 73%;
}

#warr06 .green_box2>div p {
	font-size: 2.2rem;
	padding: 20px;
	border-radius: 5px;
	position: relative;
}

#warr06 .green_box2>div p:before {
	content: "";
	display: block;
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 30px 35px 30px 0;
	border-color: transparent #ccedd8 transparent transparent;
	left: -30px;
	top: 70px;
}

#warr06 .green_box2>div p span.yellow_line {
	z-index: 1;
}

#warr06 .green_box2>div div div dl {
	display: table;
}

#warr06 .green_box2>div div div dl dt,
#warr06 .green_box2>div div div dl dd {
	display: table-cell;
	font-size: 1.4rem;
	padding: 3px 5px;
}

#warr06 .green_box2>div p+div {
	margin: 40px 0 0 60px;
}

#warr06>div>img {
	margin: 20px auto 110px;
	display: block;
	position: relative;
}

#warr06 .dl-point+.green_box2 {
	margin-top: 40px;
}

#warr06 .dl-point+.green_box2:before {
	content: "";
	display: block;
	background: #6ba733;
	width: 100px;
	height: 70px;
	position: absolute;
	bottom: -70px;
	left: calc(50% - 50px);
}

#warr06 .dl-point+.green_box2:after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 75px 100px 0 100px;
	border-color: #6ba733 transparent transparent transparent;
	position: absolute;
	bottom: -140px;
	left: calc(50% - 100px);
}

#warr06 div.point5 dl dt.point_title {
	background: #309fc5;
	color: #fff;
}

#warr06 div.point5 dl dt.point_title span:not(.inline) {
	background: #fff;
	padding: 0px 10px;
	font-size: 30px;
	font-family: Oswald;
	margin-right: 2rem;
	display: inline-block;
	line-height: 1.3em;
	color: #309fc5;
}

#warr06 div.point5 dl dt.point_title span:before {
	content: "特長";
	display: inline-block;
	font-size: 2.4rem;
	margin-right: .5rem;
}

#warr06 div.point5 dl dd .kome {
	font-size: 1.6rem;
}

#ls02 div.green_box {
	padding: 20px;
}

#ls02 div.green_box>div.land_box {
	margin: 40px 0 0;
}

#ls02 div.green_box>div.land_box p,
#ls02 div.green_box>div.land_box div {
	width: 50%;
}

#ls02 div.green_box>div.land_box p {
	padding: 0 10px;
}

#ls02 div.green_box>div.land_box div figcaption {
	padding: 10px 0;
}

.bg_gray {
	background: #e6e6e6;
}

#ls02 div.green_box+dl.dl-point {
	padding: 20px;
	margin: 80px 0
}

#ls02 div.green_box+dl.dl-point div {
	width: 53%;
	flex-wrap: wrap;
}

#ls02 div.green_box+dl.dl-point dd ol {
	width: 200px;
}

#ls02 div.green_box+dl.dl-point dd ol li {
	margin-bottom: .5em;
}

#ls02 div.green_box+dl.dl-point dd ol:nth-of-type(2) {
	margin-right: 120px;
}

#ls02 div.green_box+dl.dl-point dd figcaption {
	padding: 10px 0;
}

dl.dl-point {
	margin-bottom: 20px;
}

.bg_green3 {
	background: #ccedd8;
	padding: 40px 20px 1px;
}

#ls03 .bg_green3 h2 {
	text-align: center;
	margin-bottom: 40px;
}

#ls03 .bg_green3 div dl {
	width: calc(50% - 20px);
}

#ls03 .bg_green3 div dl dt {
	border-bottom: 1px solid #333;
}

#one02 {
	background: url(../img/life/one/one_img02_bg.png), linear-gradient(to top, #efefef 70%, transparent 70%);
	background-repeat: no-repeat;
	background-position: center 84%, center top;
	position: relative;
	padding-top: 250px;
	height: 850px;
}

#one02 h2 {
	display: inline-block;
	border: 4px solid;
	padding: 10px 15px;
	position: absolute;
	top: 60px;
}

#one02 ul li {
	background: #00a53c;
	display: inline-block;
	border-radius: 100px;
	width: 175px;
	height: 175px;
	text-align: center;
	position: absolute;
}

#one02 ul li dl dt {
	text-align: center;
}

#one02 ul li dl dd {
	text-align: center;
	color: #fff;
	font-size: 2.4rem;
}

#one02 ul li:nth-of-type(5) dl dd {
	line-height: 1em;
}

#one02 ul li p {
	font-size: 1.12rem;
	color: #00a53c;
	background: #fff;
	padding: 7px 10px;
	border-radius: 20px;
	display: inline;
	margin: 0 auto;
}

#one02 ul li p span {
	font-size: 1rem;
	margin-left: 3px;
}

#one02 p.en {
	font-size: 1.6rem;
	position: absolute;
	bottom: 5px;
	display: block;
	width: 1160px;
}

#one02 ul li:nth-of-type(1) {
	left: calc(50% - 103px);
	top: 160px;
}

#one02 ul li:nth-of-type(2) {
	right: calc(50% - 335px);
	top: 310px;
}

#one02 ul li:nth-of-type(3) {
	right: calc(50% - 335px);
	bottom: 55px;
}

#one02 ul li:nth-of-type(4) {
	left: calc(50% - 103px);
	bottom: -95px;
}

#one02 ul li:nth-of-type(5) {
	left: calc(50% - 370px);
	bottom: 55px;
}

#one02 ul li:nth-of-type(6) {
	left: calc(50% - 370px);
	top: 310px;
}

#one03 {
	margin-top: 240px;
}

.one_ttl {
	border: 4px solid #00a53c;
	margin-bottom: 20px;
}

.one_ttl span:nth-of-type(1) {
	padding: 20px;
	display: inline-block;
	color: #fff;
	background: #00a53c;
	margin-right: 2em;
	position: relative;
}

.red.kome {
	font-size: 1.8rem;
}

.one_ttl span:after {
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 29px 0 29px 20px;
	border-color: transparent transparent transparent #00a53d;
	position: absolute;
	top: 0;
	right: -20px;
}

.box_1-3 p {
	width: 68%;
}

#one03 div>dl,
#one05 dl.dl-point,
#one07 dl {
	margin-top: 60px;
}

#one03 div>dl>dt {
	margin-bottom: 20px;
}

dd.kodawari6 {
	flex-wrap: wrap;
}

dd.kodawari6 dl {
	width: calc(100% / 3 - 20px);
	border: 3px solid #dedede;
	padding: 15px;
	margin-bottom: 30px;
}

dd.kodawari6 dl dt {
	text-align: center;
	position: relative;
}

dd.kodawari6 dl dt span {
	position: absolute;
	font-family: Oswald;
	color: #fff;
	background: #00a53c;
	width: 42px;
	height: 42px;
	border-radius: 100px;
	line-height: 42px;
	font-style: italic;
	top: -10px;
	left: -11px;
	padding-right: 4px;
}

.t_c {
	text-align: center;
}

dd.kodawari6 dl dd {
	line-height: 1.5em;
	padding: 15px 0 0;
}

#one05 dl.dl-point dl {
	width: calc(100% / 3 - 20px);
	border: 3px solid #00a53c;
	border-radius: 5px;
}

#one05 dl.dl-point dl dt {
	background: #00a53c;
	border: none;
	width: 55%;
	text-align: center;
	color: #fff;
	line-height: 60px;
	font-size: 2rem;
}

#one05 dl.dl-point dl:nth-of-type(3) dt {
	line-height: 1.5em;
}

#one05 dl.dl-point dl dd {
	font-size: 6rem;
	font-weight: 600;
	color: #00a53c;
	line-height: 1rem;
	padding: 32px 0 0 47px;
}

#one05 dl.dl-point dl dd span {
	font-size: 2.4rem;
}

#one05 dl.dl-point dl:nth-of-type(3) dd {
	padding-left: 60px;
}

#one07 dl {
	border: 2px solid #c0c0c0;
}

#one07 dl dt {
	display: inline-block;
	padding: 5px 20px;
	background: #c0c0c0;
}

#one07 dl dd {
	padding: 5px 20px 20px;
}

.f45 {
	font-size: 4.5rem
}

.f60 {
	font-size: 6rem;
}

.life_topttl h2 {
	color: #00a53c;
	text-align: center;
	line-height: 1.5em;
	margin-bottom: 80px;
}

.life_sec img {
	width: 560px;
}

.life_sec div.wrap div {
	width: 555px;
	margin-top: 60px;
}

.life_sec div.wrap div .oswald {
	font-style: italic;
}

.life_sec div.wrap div dl dt {
	padding: 20px 0;
}

.life_sec div.wrap div dl dt span.yellow_line {
	z-index: 1;
}

.life_sec:nth-of-type(odd) div.wrap {
	flex-flow: row-reverse;
}

.life_sec {
	background: linear-gradient(to right, #fff 50%, transparent 50%), linear-gradient(to top, #ccedd8 85%, transparent 85%);
}

.life_sec:nth-of-type(odd) {
	background: linear-gradient(to left, #fff 50%, transparent 50%), linear-gradient(to top, #ccedd8 85%, transparent 85%);
}

.life_sec:nth-of-type(even) div.wrap {
	background: linear-gradient(to right, #fff 8%, transparent 8%), linear-gradient(to top, #ccedd8 85%, transparent 85%);
	padding-bottom: 40px;
}

.life_sec:nth-of-type(odd) div.wrap {
	background: linear-gradient(to left, #fff 8%, transparent 8%), linear-gradient(to top, #ccedd8 85%, transparent 85%);
	padding-bottom: 40px;
}

.life_sec a.link_green_btn {
	font-size: 1.6rem;
	background: #00a53c;
	color: #fff;
	width: 280px;
	display: block;
	text-align: center;
	padding: 20px;
	border-radius: 5px;
	margin-top: 20px;
	position: relative;
}

.life_sec a.link_green_btn:after {
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 0 5px 5px;
	border-color: transparent transparent transparent #ffffff;
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
}

span.r_mark,
.kurashi_top div dl dt span.r_mark {
	display: inline-block;
	font-size: .6em;
	line-height: 1.5em;
	vertical-align: top;
}

.kurashi_top div dl dt span.r_mark {
	line-height: 0.5em;
}

dl.dl-point dt.f20 {
	font-size: 2rem;
}

.kome2 {
	margin-left: 1em;
}

.kome2:before {
	content: "※";
	display: inline-block;
	margin-left: -1em;
}

#support_contact .form .checkbox span.wpcf7-list-item-label {
	padding-left: 14px;
	display: inline-block;
	font-size: 1.6rem;
}

#support_contact .form .lf14 .checkbox span.wpcf7-list-item-label {
	font-size: 1.4rem;
}

#support_contact_in .form .checkbox span.wpcf7-list-item-label::before,
#support_contact_in .form .checkbox span.wpcf7-list-item-label::after {
	content: '';
	position: absolute;
	top: 10px;
	left: 0px;
}

#support_contact .form .checkbox.radio span.wpcf7-list-item-label::before {
	border-radius: 100px;
}

#support_contact .form .checkbox.radio span.wpcf7-list-item-label::after {
	background: #333;
	border: none;
	width: 11px;
	border-radius: 100px;
	top: 12px;
	left: 2px;
	height: 11px;
}

.life_topttl span.yellow_line:before {
	height: .2em;
}

#ls02 dl.dl-point dt.green {
	border-bottom: 1px solid #c8c8c8;
}

#qm03 h2.ttl_sec {
	margin-bottom: 40px;
}

#sg02 .point5 dl:nth-of-type(3) dl.point03_dl dd:nth-of-type(2) {
	font-size: 1.6rem;
}

.contact_omakase dl dt .nec {
	top: 5px !important;
	right: 40px;
}

#support_contact dl.dl_pry a.ul {
	text-decoration: underline;
}

#support_contact .wpcf7-list-item {
	margin-bottom: 0 !important;
}

.contact_omakase_submit input {
	cursor: pointer;
}

span.wpcf7-not-valid-tip {
	color: #f00;
	font-size: 1.6rem !important;
	display: block;
	line-height: 2.4rem;
}

div.wpcf7-response-output {
	font-size: 1.6rem !important;
	line-height: 2.4rem;
}

.contact_omakase dl div.flex:first-child {
	padding-bottom: 20px !important;
}

#support_contact .form .checkbox .wpcf7-list-item:nth-of-type(5),
#support_contact .form .checkbox .wpcf7-list-item:nth-of-type(13) {
	width: 33.333%;
}

#support_contact .form .checkbox>*:nth-child(n+4),
#support_contact #reservation .form .check_area>*:nth-child(n+4) {
	margin-top: 0;
}

span.shuhenkankyo span.wpcf7-list-item,
#support_contact .form .shuhenkankyo .checkbox .wpcf7-list-item:nth-of-type(5) {
	width: fit-content;
	width: -moz-fit-content;
	padding-right: 40px;
}

.shuhenkankyo input[type="text"].wpcf7-free-text {
	width: 100%;
	display: inline-block;
	visibility: unset;
	position: unset;
}

#support_contact .form .shuhenkankyo span.has-free-text {
	width: 100%;
}

.tenjijo_box {
	position: relative;
	height: 648px;
	margin: 40px 0 80px;
}

.tenjijo_box .grid2 .thumb {
	width: 800px;
}

.tenjijo_box .thumb_slider .item {
	height: 465px;
	background: #f2f2f2;
}

.tenjijo_txt {
	width: 320px;
}

.tenjijo_box .slick-dots {
	width: 565px;
}

.tenjijo_box .land_box .btn_area.col1 p {
	width: 48%;
}

.tenjijo_box .land_box .btn_area.col1 {
	display: flex;
	width: 565px;
}

.tenjijo_date {
	width: 560px;
	border: 3px solid #00a53c;
	height: 168px;
	position: absolute;
	bottom: 0;
	right: 0;
	padding: 5px 20px;
}

.tenjijo_date dl {
	display: flex;
}

.t_cen {
	text-align: center;
}

.tenjijo_txt>div.t_cen {
	font-size: 24px;
	line-height: 30px;
	padding-bottom: 30px;
	border-bottom: 1px solid #e6e6e6;
}

.tenjijo_txt>div.t_cen img {
	display: block;
	margin: 20px 0;
}

.tenjijo_bland {
	margin-top: 40px;
}

dt.bland span {
	display: block;
	font-size: 14px;
	line-height: 24px;
}

dt.bland {
	background: #ccedd8;
	border-radius: 5px 5px 0px 0;
	font-size: 24px;
	padding: 15px;
	line-height: 24px;
	border: 1px solid #ccedd8;
	border-bottom: none;
}

.tenjijo_bland dd dl {
	display: flex;
	flex-wrap: wrap;
}

.tenjijo_bland>dd {
	border-radius: 0 0 5px 5px;
	border: 1px solid #e6e6e6;
	border-top: none;
}

.tenjijo_bland dd dl dt {
	width: 30%;
	font-size: 14px;
	border-right: 1px solid #e6e6e6;
	padding: 13.5px 10px;
}

.tenjijo_bland dd dl dt:nth-of-type(1):before {
	content: "";
	display: inline-block;
	background: url(../img/tenjijo/icon_madori.png) no-repeat;
	width: 16px;
	height: 16px;
	margin: 0 5px -4px 0;
}

.tenjijo_bland dd dl dt:nth-of-type(2):before {
	content: "";
	display: inline-block;
	background: url(../img/tenjijo/icon_menseki.png) no-repeat;
	width: 16px;
	height: 16px;
	margin: 0 5px -4px 0;
}

.tenjijo_bland dd dl dd {
	width: 70%;
	font-size: 14px;
	padding: 13.5px 10px;
}

.tenjijo_bland dd dl dt:nth-of-type(1),
.tenjijo_bland dd dl dd:nth-of-type(1) {
	border-bottom: 1px solid #e6e6e6;
}

.tenjijo_date dl dt,
.tenjijo_date dl dd {
	font-size: 16px;
	padding: 5px 0 5px 10px;
}

dt.icon_map:before {
	content: "";
	display: inline-block;
	width: 20px;
	height: 20px;
	background: url(../img/tenjijo/icon_map.png) no-repeat;
	margin: 0 3px -5px 0;
}

dt.icon_time:before {
	content: "";
	display: inline-block;
	width: 20px;
	height: 20px;
	background: url(../img/tenjijo/time_clock_icon.png) no-repeat;
	margin: 0 3px -6px 0;
}

dt.icon_tel:before {
	content: "";
	display: inline-block;
	width: 20px;
	height: 20px;
	background: url(../img/tenjijo/icon_tel.png) no-repeat;
	margin: 0 3px -8px 0;
}

.tenjijo_date dl dt {
	width: 120px;
}

.tenjijo_date dl:not(:last-child) {
	border-bottom: 1px solid #e6e6e6;
}

#tenjijo_list .btn_area:not(.col1) a.btn_normal {
	margin: 20px auto;
	font-size: 16px;
}

.thumb_slider .slick-dots>li:not(.slick-active):before {
	content: "";
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	background: #ffffff85;
}

#tenjijo_kouhou ul {
	flex-wrap: wrap;
}

#tenjijo_kouhou ul li {
	width: calc(50% - 10px);
	line-height: 60px;
	margin-bottom: 40px;
}

#tenjijo_kouhou ul li span:before {
	content: "";
	width: 30px;
	height: 24px;
	display: inline-block;
	background: url(../img/tenjijo/icon_memo.png) no-repeat;
	margin: 0 0px -5px -2em;
}

#tenjijo_kouhou ul li span {
	padding-left: 2em;
	display: block;
}

#tenjijo_kouhou ul li dl {
	display: flex;
}

#tenjijo_kouhou ul li dl dt {
	width: 270px;
	margin-right: 20px;
}

#tenjijo_kouhou ul li dl dd {
	width: 270px;
	font-size: 16px;
}

ul.check_3th dl dt span {
	font-size: 1.8rem;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	height: 50px;
	padding: 3px 20px 0;
	border-radius: 50px;
	color: #fff;
	background: #00a53c;
	position: relative;
	margin-bottom: 20px;
}

ul.check_3th dl dt span::before {
	content: '';
	position: absolute;
	bottom: -16px;
	left: 50%;
	transform: translateX(-50%);
	border: 10px solid transparent;
	border-top: 10px solid #00a53c;
}

ul.check_3th dl dt span img {
	width: 14px;
	margin-right: 10px;
	margin-top: -6px;
}

.joho dl dd:nth-of-type(1) {
	max-width: 250px;
}

.page-id-49943 .mv_txt01 {
	font-size: 2.5rem;
}

#tenjijo_list ul li a {
	display: block;
}

section#tenjijo_list .land_box .btn_area.col1 p .btn_normal {
	font-size: 16px;
}

section#tenjijo_list h2.ttl_30 {
	margin-top: 40px;
}

.news_wrap figure {
	border: 1px solid #c8c8c8;
}

.ttl_24 span#Web {
	color: #323232;
	font-size: 24px;
}

#single_news form dl dt {
	font-size: 16px;
}

.bland_list_wrap {
	background: linear-gradient(to top, rgba(189, 189, 189, .3), rgba(230, 230, 230, .3)), #e6e6e6;
	margin: 60px 0;
}

.bland_list_wrap:nth-of-type(even) {
	flex-flow: row-reverse;
}

.bland_list_in {
	padding: 30px 40px;
	position: relative;
}

p.c_copy {
	font-size: 2.4em;
	font-family: serif;
	line-height: 1.5em;
	text-align: right;
	margin: 20px 0 10px;
}

.bland_list_in ul {
	margin: 0 0 35px auto;
	width: fit-content;
}

.bland_list_in ul li {
	border: 1px solid #333;
	font-size: 1.6em;
	padding: 0 10px;
}

.bland_list_in ul li:not(:last-child) {
	margin-right: 10px;
}

.bland_list_in a {
	font-size: 1.6em;
	width: 275px;
}

.bland_list_in a.btn_green {
	margin: 10px 0;
}

.bland_list_in .link_area {
	position: absolute;
	bottom: 30px;
	right: 40px;
}

.bland_list_wrap:nth-of-type(even) .bland_list_in .link_area {
	position: absolute;
	bottom: 30px;
	left: 40px;
}

.bland_list_wrap:nth-of-type(even) p.c_copy {
	text-align: left;
}

.bland_list_wrap:nth-of-type(even) .bland_list_in ul {
	margin: 0 auto 35px 0;
	width: fit-content;
}

#t-box02 div.wrap {
	background: #f7f7f7;
	padding: 20px 20px 40px;
}

#t-box02 h3 {
	font-size: 2.4rem;
	background: #00a53c;
	color: #fff;
	padding: 20px;
	position: relative;
	margin-bottom: 40px;
}

#t-box02 h3 img {
	margin-right: 10px;
}

#t-box02 h3:before {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0px 20px 35px 0;
	border-color: transparent #00a53d transparent transparent;
	position: absolute;
	bottom: -35px;
	left: 50px;
}

#t-box02 .flex figure {
	padding: 40px 0 0 50px;
}

#t-box02 li {
	counter-increment: number;
	font-size: 1.8rem;
	line-height: 48px;
	border-bottom: 1px solid #e6e6e6;
	letter-spacing: 1px;
}

#t-box02 li:before {
	content: "0" counter(number) ".";
	margin-right: 5px;
	color: #00a53c;
}

#t-box02 .flex>div {
	width: 50%;
	padding: 0 20px 0 10px;
}

#t-box02 a.t-box_btn {
	display: block;
	width: 485px;
	text-align: center;
	padding: 20px 20px 5px;
	background: #fff;
	margin: 20px auto;
	font-size: 2rem;
	line-height: 30px;
	border: 6px solid #00a53c;
	box-sizing: border-box;
	color: #00a53c;
	box-shadow: 5px 5px 0 #00a53c;
	position: relative;
}

#t-box02 a.t-box_btn span {
	font-size: 1.4rem;
	display: block;
}

#t-box02 a.t-box_btn:after {
	content: "";
	width: 16px;
	height: 12px;
	background: url(../img/brand/t-box/icon_tab.png) no-repeat;
	display: block;
	position: absolute;
	top: 42%;
	right: 20px;
}

.form .checkbox.plan>span,
.form .checkbox.plan>.wpcf7-list-item:nth-of-type(5),
.form .checkbox.trigger>.wpcf7-list-item:nth-of-type(13) {
	width: calc(100% / 3 - 30px);
}

.form .checkbox.trigger>span {
	min-width: calc(100% / 3 - 20px);
}

.bland_list_box_wrap.slick-initialized .bland_list_box.slick-slide {
	display: flex;
}

.bland_list_box {
	width: calc(50% - 20px);
	background: #e6e6e6;
	margin-bottom: 40px;
}

.bland_list_box>div {
	width: 35.5%;
	padding: 20px;
	position: relative;
}

.bland_list_box a.btn_normal {
	height: 34px;
	font-size: 1.4rem;
}

.bland_list_box a.btn_normal:nth-of-type(1) {
	margin-bottom: 10px;
}

.bland_list_box a.btn_normal::before {
	right: 2px;
}

.bland_list_box>figure {
	width: 64.5%;
	height: 202px;
}

.bland_list_box>figure img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.bland_list_box .link_area {
	position: absolute;
	left: 20px;
	bottom: 20px;
	width: calc(100% - 40px);
}

.bland_list_box>div figure {
	width: 90%;
	display: block;
	margin: 0 auto;
}

.bland_list_box>div figure img {
	max-height: 70px;
	margin: 0 auto;
	display: block;
}

#chumon01 {
	margin-top: 40px;
}

#chumon02>div {
	position: relative;
	z-index: 1;
}

#chumon02>div:before {
	content: "";
	display: block;
	width: 100vw;
	height: 400px;
	background: url(../img/chumon/chumon_bgimg.png) no-repeat;
	background-size: cover;
	background-position: center;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}

#chumon02>div:after {
	content: "";
	display: block;
	width: 100vw;
	height: 400px;
	background: rgba(0, 0, 0, .6);
	background-size: cover;
	background-position: center;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}

#chumon02>div>p {
	text-align: center;
	color: #fff;
	padding: 40px 0;
	letter-spacing: 0.04em;
}

#chumon02 .tenjijo_box {
	position: relative;
	height: auto;
	margin: 40px 0 20px;
	background: #fff;
	border: 5px solid #e6e6e6;
	width: calc(100% / 3 - 27px);
}

#chumon02 .tenjijo_box:nth-of-type(2),
#chumon02 .tenjijo_box:nth-of-type(5) {
	margin: 40px 40px 20px;
}

#chumon02 .tenjijo_box figure {
	position: relative;
}

#chumon02 .tenjijo_box figure figcaption {
	position: absolute;
	width: 35%;
	top: 0;
	right: 0;
	background: #fff;
	padding: 5px 10px;
	height: 50px;
}

#chumon02 .tenjijo_box dl {
	padding: 20px;
}

#chumon02 .tenjijo_box dl dt {
	text-align: center;
	background: #d7ffd7;
	padding: 10px;
	font-size: 2.4rem;
	line-height: 1em;
}

#chumon02 .tenjijo_box dl dt span {
	display: block;
	font-size: 1.4rem;
}

#chumon02 .tenjijo_box dl dd.add {
	padding-left: 55px;
	position: relative;
	font-size: 1.8rem;
	margin: 20px 0;
}

#chumon02 .tenjijo_box dl dd.add span {
	font-size: 1.4rem;
	display: block;
}

#chumon02 .tenjijo_box dl dd.add:before {
	content: "";
	display: block;
	width: 50px;
	height: 50px;
	background: url(../img/chumon/chumon_mapicon.png) no-repeat;
	position: absolute;
	top: 0;
	left: 0;
	background-size: contain;
}

#chumon02 .img_fit.scale-down {
	object-fit: cover;
}

#chumon03 {
	background: #d7ffd7;
	padding: 80px 0;
}

#chumon03>div {
	background: #fff;
	padding: 40px;
	position: relative;
}

#chumon03 h3 {
	background: linear-gradient(45deg, #00a53c, #33b763);
	color: #fff;
	font-size: 2rem;
	padding: 15px 30px;
	border-radius: 100px;
}

#chumon03 #madori_num {
	display: inline-block;
	position: absolute;
	top: -15px;
	right: 65px;
	z-index: 1;
}

#chumon03 #madori_num span {
	font-size: 6rem;
	position: absolute;
	top: 149px;
	right: 112px;
	font-weight: 600;
	color: #00a53c;
}

#chumon03 div.box01 {
	margin: 30px;
	background: url(../img/chumon/chumon_img03.png) no-repeat;
	height: 359px;
}

#chumon03 div.box01 figure {
	width: 57%;
	height: 100%;
	margin: 0 0 0 auto;
	display: block;
	background: #fff;
	padding: 20px 20px 20px 25px;
	border: 5px solid #e6e6e6;
	position: relative;
}

#chumon03 div.box01 figure:before {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 25px 50px 25px 0;
	border-color: transparent #e6e6e6 transparent transparent;
	position: absolute;
	left: -50px;
	top: 40px;
}

#chumon03 div.box01 figure:after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 18px 40px 18px 0;
	border-color: transparent #fff transparent transparent;
	position: absolute;
	left: -40px;
	top: 47.5px;
}

#chumon03 div.box02 {
	background: #e6e6e6;
	padding: 20px 0px 20px 40px;
	margin: 0 30px;
}

#chumon03 div.box02>div {
	width: 590px;
	padding-right: 40px;
	border-right: 1px solid #c0c0c0;
}

#chumon03 div.box02 a.btn_normal {
	font-size: 1.6rem;
	margin: auto;
}

#chumon04>div {
	background: #dbf4f2;
	padding: 20px 40px;
	position: relative;
}

#chumon04>div>p {
	font-size: 2rem;
	color: #fff;
	background: #2e9994;
	display: inline-block;
	padding: 0 20px;
	border-radius: 100px;
	position: relative;
	margin-bottom: 30px;
	z-index: 3;
}

#chumon04>div>p:before {
	content: "";
	display: block;
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 20px 0px 0 15px;
	border-color: #2e9994 transparent transparent transparent;
	bottom: -19px;
	left: 35px;
}

#chumon04 h3 {
	font-size: 7rem;
	color: #2e9994;
}

#chumon04 h3 span {
	background: #fff;
	padding: 5px;
	margin-right: 10px;
}

#chumon04 h3 span.bg_g {
	background: #2e9994;
	color: #fff;
}

#chumon04 h3 {
	position: relative;
	z-index: 2;
}

#chumon04 h3:before {
	content: "";
	background: url(../img/chumon/chumon_img06.png) no-repeat;
	width: 167px;
	height: 110px;
	display: block;
	position: absolute;
	top: -75px;
	left: 495px;
	z-index: -1;
}

#chumon04 .wrap>div {
	width: 603px;
	background: #fff;
	margin: 40px 0 10px;
	padding: 20px;
	position: relative;
	z-index: 1;
}

#chumon04 .wrap>div:after {
	content: url(../img/chumon/chumon_img08.png);
	position: absolute;
	bottom: -20px;
	right: -117px;
}

#chumon04 .wrap>div p {
	border-bottom: 1px solid #e6e6e6;
	text-align: center;
}

#chumon04 .wrap>div a.btn_normal {
	font-size: 1.6rem;
	margin: 20px auto 0;
}

#chumon04 .wrap>img:nth-of-type(1) {
	position: absolute;
	top: 185px;
	left: 0;
	z-index: 1;
}

#chumon04 .wrap>img:nth-of-type(2) {
	position: absolute;
	top: -25px;
	right: -10px;
}

.owner_form #reform_tel {
	border: 3px solid #00a53c;
	margin: 40px auto;
}

.owner_form #reform_tel h2 {
	background-color: #00a53c;
}

.owner_form #reform_tel .tel_area p a {
	color: #00a53c;
}

.owner_form #reform_tel .tel_area .pref {
	background: #00a53c;
}

#hiraya01 div {
	background: linear-gradient(to top, #ffffff 10%, transparent), url(../img/brand/hiraya/hiraya_img02.png) no-repeat;
	background-position: top center;
	padding: 80px 40px;
}

#hiraya01 h2 {
	display: block;
	font-size: 2.4rem;
	background: #00a53c;
	color: #fff;
	padding: 14px 20px;
	margin: 0px auto 80px;
	width: 265px;
}

#hiraya01 ul li {
	width: 528px;
	margin: 0 0 20px;
	border: 5px solid #00a53c;
	background: linear-gradient(135deg, #00a53c 12%, #FFF 10%);
	height: 148px;
	text-align: center;
	position: relative;
	font-size: 2.4rem;
	line-height: 1.5em;
	padding: 33px 0;
}

#hiraya01 ul li:nth-of-type(4) {
	padding: 52px 0;
}

#hiraya01 ul li span {
	font-size: 14px;
	position: absolute;
	top: 3px;
	left: 0;
	line-height: 1.7rem;
	color: #fff;
}

#brand_topimg .btn_normal::before {
	right: 3px;
}

.nolink {
	pointer-events: none;
}

.sec3_box .sec3_right dl.shiyou {
	background: unset;
	display: block;
	border: none;
}

.sec3_box .sec3_right dl.shiyou dt {
	width: 100%;
	border-right: unset;
	padding: 10px 0;
}

.sec3_box .sec3_right dl.shiyou dd {
	width: 100%;
	border: none;
	padding: 20px 0;
}

dl.shiyou dd ul {
	display: flex;
	flex-wrap: wrap;
}

dl.shiyou dd ul li {
	font-size: 1.4rem;
	border: 1px solid #333;
	padding: 0 5px;
	margin: 0 5px 10px 0;
}

#tenjijo_list ul {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
}

/*#tenjijo_list ul li{
		width: 31.2%;
		margin-right: 3.2%;
		margin-bottom: 30px;
	}
	#tenjijo_list ul li:nth-of-type(3n){
		margin-right: 0;
	}
	#tenjijo_list ul li img{
		display: block;
		width: 100%;
	}*/

h3.bland_list_title {
	text-align: center;
}

span.sp_p {
	font-size: 16px;
}

#p_policy h2.ttl_sec {
	margin-bottom: 20px;
}

#p_policy dl {
	padding: 80px 0 0;
}

#p_policy dl dt {
	font-size: 21px;
	border-bottom: 2px solid #e6e6e6;
	line-height: 2.5em;
}

#p_policy dl dd {
	line-height: 1.7em;
	padding: 20px 0 40px;
	letter-spacing: 1px;
}

#p_policy dl dd:last-child {
	padding-bottom: 0;
}

#p_policy dl dd ul {
	margin-top: 20px;
}

#p_policy dl dd li {
	list-style: inside;
}

#sitemap_area>ul {
	width: calc(100% / 3 - 40px);
}

#sitemap_area li.home_link {
	margin-bottom: 40px;
	position: relative;
}

#sitemap_area li.home_link:before {
	content: "";
	width: 1em;
	height: 1em;
	background: url(../img/common/home_icon.png) no-repeat;
	background-size: cover;
	display: inline-block;
	margin-right: .5em;
}

#sitemap_area>ul>li {
	font-size: 1.8rem;
}

#sitemap_area>ul>li li {
	font-size: 1.4rem;
	margin: 1em 0;
	line-height: 1.5em;
	position: relative;
}

#sitemap_area>ul>li li:before {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4.5px 0 4.5px 4px;
	border-color: transparent transparent transparent #00a53d;
	display: inline-block;
	left: -15px;
	position: absolute;
	top: 5px;
}

#sitemap_area>ul>li ul {
	padding-left: 1em;
	margin-bottom: 40px;
}

#sitemap_area>ul:nth-of-type(3) li.green:not(:first-child) {
	font-size: 1.4rem;
	margin-bottom: 10px;
}

#sitemap_area>ul:nth-of-type(2) li.green:not(:first-child) {
	margin-bottom: 40px;
}

input[type="date"]::-webkit-clear-button {
	-webkit-appearance: none;
	display: none;
}

.ui-datepicker,
.ui-datepicker-div {
	width: fit-content !important;
}

.ui-widget.ui-widget-content {
	border: 1px solid #c5c5c5;
	padding: 0 5px 0 !important;
}



/******************** 202009　下層スマホ ************************************************/

@media screen and (max-width: 767px) {
	.t_cen {
		text-align: center;
	}

	.kurashi_top div dl {
		padding-top: 60px;
		width: 100%;
		margin-bottom: 40px;
	}

	#sitemap_area>ul {
		width: 100%;
	}

	#sitemap_area {
		padding: 40px 0 0;
	}

	#sitemap_area>ul>li ul {
		padding-left: 1em;
		margin-bottom: 40px;
		display: flex;
		flex-wrap: wrap;
	}

	#sitemap_area>ul>li li {
		font-size: 1.4rem;
		margin: 1em 0;
		line-height: 1.5em;
		position: relative;
		display: inline-block;
		min-width: calc(50% - 0px);
	}

	/*
#tenjijo_list ul li{
			width: 48%;
			margin-right: 4%;
			margin-bottom: 30px;
		}
        
		#tenjijo_list ul li:nth-of-type(3n){
			margin-right: 4%;
		}
		#tenjijo_list ul li:nth-of-type(2n){
			margin-right: 0;
		}
        */
	#tenjijo_list ul li p {
		font-size: 3vw;
	}

	#photo .list li a figure img {
		height: 41vw;
	}

	.kurashi_top div dl dt {
		font-size: 2.4rem;
	}

	.kurashi_top div dl dt span.point {
		font-size: 2rem;
		left: unset;
		right: 0;
		width: 5em;
		top: 10px;
		padding: 5px 16px 5px 16px;
		display: inline-block;
		width: unset;
	}

	_::-webkit-full-page-media,
	_:future,
	:root .kurashi_top div dl dt span.point {
		font-size: 2rem;
		left: unset;
		right: 0;
		width: 5em;
		top: 10px;
		padding: 5px 16px 5px 16px;
		display: inline-block;
		width: unset;
	}

	.kurashi_top div dl dt span.yellow_line {
		font-size: 3.6rem;
		font-weight: 600;
	}

	.f24 {
		font-size: 2.1rem;
	}

	.f18 {
		font-size: 1.6rem;
	}

	div.point5 dl dt.point_title {
		padding: 15px 10px 5px 15px;
		font-size: 2.1rem;
		position: relative;
		line-height: 1.5em;
	}

	div.point5 dl dt.point_title span.green {
		padding: 0px 10px;
		font-size: 2.4rem;
		line-height: 1.3em;
		position: absolute;
		top: -22px;
		left: 10px;
		border: 1px solid #cbedd8;
	}

	dl.red_box {
		display: flex;
		width: 100%;
		flex-wrap: wrap;
	}

	dl.red_box dt {
		display: block;
		width: 100%;
		font-size: 1.6rem;
	}

	dl.red_box dd {
		padding: 10px 20px;
		color: #e60000;
	}

	dl.green_box {
		display: flex;
		width: 100%;
		flex-wrap: wrap;
	}

	dl.green_box dt {
		padding: 5px 20px;
		display: block;
		width: 100%;
		font-size: 1.6rem;
	}

	dl.green_box dd {
		padding: 10px 20px;
	}

	dl.point03_dl {
		width: 100%;
		margin-bottom: 40px;
	}

	dl.point03_dl dd {
		margin-top: 10px;
		font-size: 1.8rem;
		line-height: 1.5em;
	}

	dl.point03_dl dd:nth-of-type(2) {
		font-size: 1.6rem;
	}

	.inline {
		display: inline-block;
	}

	dl.dl-point dt {
		border-bottom: 1px solid #dedede;
		line-height: 3rem;
		font-size: 1.8rem;
	}

	.sp.table01 h4 {
		font-size: 1.8rem
	}

	.sp.table01>div {
		margin: 40px 0;
		background: #e6e6e6;
		padding: 20px;
		border-radius: 5px;
	}

	.sp.table01>div:last-child {}

	.sp.table01>div>dl>dt {
		text-align: center;
		background: #fff;
		border-radius: 5px;
		font-size: 1.8rem;
		margin-bottom: 10px;
	}

	.sp.table01>div:nth-of-type(3)>dl>dt {
		color: #00a53c;
	}

	.sp.table01>div>dl>dd dl {
		display: flex;
		justify-content: space-between;
	}

	.sp.table01>div>dl>dd dl dt {
		width: 39vw;
	}

	.sp.table01>div>dl>dd dl dd {
		font-size: 1.4rem;
		width: 81vw;
		margin-left: 10px;
	}

	.sp.table01 div.dl_table {
		margin-top: 15px;
	}

	.sp.table01 div.dl_table dl {
		display: table;
	}

	.sp.table01 div.dl_table dl:last-child {
		border-bottom: 1px solid #00a53c;
	}

	.sp.table01 div.dl_table dl dt,
	.sp.table01 div.dl_table dl dd {
		display: table-cell;
		text-align: center;
		vertical-align: middle;
		padding: 5px;
		border-top: 1px solid #00a53c;
		border-left: 1px solid #00a53c;
	}

	.sp.table01 div.dl_table dl dt {
		width: 60vw;
		background: #cbedd8;
	}

	.sp.table01 div.dl_table dl dd {
		background: #fff;
		border-right: 1px solid #00a53c;
		width: 19vw;
	}

	.sp.table01 div:last-child div.dl_table dl dd {
		color: #00a53c;
	}

	.sp.table01 div.dl_table dl dd span {
		font-size: 1rem;
		color: #333;
	}

	#sg03>div.land_box {
		display: flex !important;
		flex-wrap: wrap;
	}

	#sg03 .sg03_right {
		display: block;
		width: 100%;
		margin-left: 0;
	}

	#sg03 .sg03_right h2 {
		margin-bottom: 20px;
	}

	div.sg03_right div figure {
		width: 100%;
	}

	.enq_box {
		width: 100%;
		background: #ccedd8;
		border-radius: 5px;
		padding: 20px 0;
		margin: 20px 0;
	}

	dl.enq_box dt img {
		margin-right: 10px;
		width: 5%;
	}

	dl.enq_box dd figure {
		width: 100%;
	}

	dl.enq_box dd figure img {
		width: 80px;
	}

	dl.enq_box dd p {
		width: 95%;
		position: relative;
		margin: 0 auto;
	}

	dl.enq_box dd p:before {
		display: none;
	}

	#sg03 .sg03_left {
		width: 100%;
		display: inline-block;
		position: relative;
		margin-bottom: 40px;
	}

	#sg03 .sg03_left figcaption {
		font-size: 18px;
	}

	#sg04>div.wrap>div>p:first-child span.bg_green2 {
		margin-right: 0;
		display: block;
	}

	.hoshou-3 {
		margin: 20px 0;
	}

	.hoshou-3 dt.ttl_30:before {
		border-bottom: 35px solid #00a53c;
		border-left: 0px solid transparent;
		border-right: 5px solid transparent;
		bottom: 15px;
		left: -12px;
	}

	.hoshou-3 dt.ttl_30:after {
		border-bottom: 35px solid #00a53c;
		border-left: 0px solid transparent;
		border-right: 5px solid transparent;
		bottom: 17px;
		right: -8px;
	}

	.yellow_line {
		position: relative;
		display: inline-block;
	}

	div.round dl dd {
		padding: 0 25.5%;
		display: flex !important;
	}

	div.round {
		position: relative;
		margin-bottom: 20px;
	}

	div.hikaku>div dl {
		border: 1px solid #00a53c;
		width: 100%;
		margin-bottom: 20px;
	}

	div.hikaku>div dl dt {
		font-size: 1.8em;
	}

	div.hikaku ul li {
		width: 100%;
		font-size: 2.1rem;
		display: flex !important;
	}

	div.hikaku>div dl:nth-of-type(2) {
		border-left: 1px solid #00a53c;
	}

	.yellow_line:before {
		bottom: 3px;
	}

	.bottom_link div a:nth-of-type(1) {
		padding: 20px 40px 20px 10px;
		margin-bottom: 20px;
	}


	#hgs02 .point5 .ovf_box {
		padding: 40px 0;
		overflow-x: auto;
	}

	#hgs02 .ovf_box img {
		width: 750px;
		max-width: 1000px;
	}

	.hgs_shikumi>div {
		padding: 80px 20px;
		position: relative;
		display: flex !important;
		flex-flow: column-reverse;
	}

	.hgs_shikumi_left {
		width: 100%;
	}

	.hgs_shikumi_left>div {
		margin-bottom: 40px;
		padding-bottom: 10px;
		border-bottom: 1px solid;
		position: relative;
	}

	.hgs_shikumi_left>div dl {
		padding-left: 0;
		margin-top: 20px;
		width: 100%;
	}

	.hgs_shikumi_left>div img {
		width: 150px;
		height: 150px;
		margin: 0px auto;
		display: block;
	}

	.hgs_shikumi_left>div dl dt {
		font-size: 1.8rem;
		padding-left: 2em;
	}

	.hgs_shikumi_left>div:nth-of-type(1):before {
		content: "1";
		width: 3rem;
		height: 3rem;
		border: none;
		position: absolute;
		right: unset;
		border-radius: 100px;
		bottom: 86px;
		background: #ff0000;
		color: #fff;
		font-size: 1.8rem;
		text-align: center;
		line-height: 3rem;
	}

	.hgs_shikumi_left>div:nth-of-type(2):before {
		content: "2";
		width: 3rem;
		height: 3rem;
		border: none;
		position: absolute;
		right: unset;
		border-radius: 100px;
		bottom: 62px;
		background: #ff0000;
		color: #fff;
		text-align: center;
		line-height: 3rem;
	}

	.hgs_shikumi_left>div:nth-of-type(3):before {
		content: "3";
		width: 3rem;
		height: 3rem;
		border: none;
		position: absolute;
		right: unset;
		border-radius: 100px;
		bottom: 83px;
		background: #ff0000;
		color: #fff;
		text-align: center;
		line-height: 3rem;
	}

	_::-webkit-full-page-media,
	_:future,
	:root .hgs_shikumi_left>div:nth-of-type(1):before {
		content: "1";
		width: 3rem;
		height: 3rem;
		border: none;
		position: absolute;
		right: unset;
		border-radius: 100px;
		bottom: 86px;
		background: #ff0000;
		color: #fff;
		font-size: 1.8rem;
		text-align: center;
		line-height: 3rem;
	}

	_::-webkit-full-page-media,
	_:future,
	:root .hgs_shikumi_left>div:nth-of-type(2):before {
		content: "2";
		width: 3rem;
		height: 3rem;
		border: none;
		position: absolute;
		right: unset;
		border-radius: 100px;
		bottom: 62px;
		background: #ff0000;
		color: #fff;
		text-align: center;
		line-height: 3rem;
	}

	_::-webkit-full-page-media,
	_:future,
	:root .hgs_shikumi_left>div:nth-of-type(3):before {
		content: "3";
		width: 3rem;
		height: 3rem;
		border: none;
		position: absolute;
		right: unset;
		border-radius: 100px;
		bottom: 83px;
		background: #ff0000;
		color: #fff;
		text-align: center;
		line-height: 3rem;
	}

	.hgs_shikumi.higai {
		background: #f5f5f5;
	}

	.hgs_shikumi_left {
		background: url(../img/life/hgs/hgs_img02_04_v2.png), #f5f5f5;
		background-size: 90% auto;
		background-position: center 0;
		background-repeat: no-repeat;
		padding-top: 74vw;
	}

	.hgs_shikumi_right {
		/* margin-bottom: 350px; */
		margin-bottom: 50px;
	}

	.hgs_shikumi {
		background: url(../img/life/hgs/hgs_img02_04.png), #f5f5f5;
		background-repeat: no-repeat;
		background-size: 90%;
		background-position: 22px 170px;
		position: relative;
	}

	.hgs_shikumi>span {
		background: #ff0000;
		border-radius: 100px;
		color: #fff;
		text-align: center;
		line-height: 2.5rem;
		position: absolute;
		font-size: 1.6rem;
		width: 2.5rem;
	}

	.hgs_shikumi>span:nth-of-type(1) {
		top: 280px;
		left: 50px;
	}

	.hgs_shikumi>span:nth-of-type(2) {
		top: 360px;
		left: 50px;
	}

	.hgs_shikumi>span:nth-of-type(3) {
		top: 360px;
		left: 110px;
	}

	.hgs_shikumi_left>div:nth-of-type(1):after {
		/*content: "1";
    width: 2.5rem;
    height: 2.5rem;
    border-bottom: none;
    position: absolute;
    right: unset;
    bottom: 470px;
    transform: unset;
    background: #ff0000;
    border-radius: 100px;
    color: #fff;
    text-align: center;
    left: 30px;
    line-height: 2.5rem;*/
		display: none;
	}

	.hgs_shikumi_left>div:nth-of-type(2):after {
		/*content: "2";
    width: 2.5rem;
    height: 2.5rem;
    border-bottom: none;
    position: absolute;
    right: unset;
    bottom: 690px;
    transform: unset;
    background: #ff0000;
    border-radius: 100px;
    color: #fff;
    text-align: center;
    left: 30px;
    line-height: 2.5rem;*/
		display: none;
	}

	.hgs_shikumi_left>div:nth-of-type(3):after {
		/*content: "3";
    width: 2.5rem;
    height: 2.5rem;
    border-bottom: none;
    position: absolute;
    right: unset;
    bottom: 1020px;
    transform: unset;
    background: #ff0000;
    border-radius: 100px;
    color: #fff;
    text-align: center;
    left: 93px;
    line-height: 2.5rem;*/
		display: none;
	}

	_::-webkit-full-page-media,
	_:future,
	:root .hgs_shikumi_left>div:nth-of-type(1):after {
		content: "1";
		width: 2.5rem;
		height: 2.5rem;
		border-bottom: none;
		position: absolute;
		right: unset;
		bottom: 600px;
		transform: unset;
		background: #ff0000;
		border-radius: 100px;
		color: #fff;
		text-align: center;
		left: 30px;
		line-height: 2.5rem;
	}

	_::-webkit-full-page-media,
	_:future,
	:root .hgs_shikumi_left>div:nth-of-type(2):after {
		content: "2";
		width: 2.5rem;
		height: 2.5rem;
		border-bottom: none;
		position: absolute;
		right: unset;
		bottom: 1000px;
		transform: unset;
		background: #ff0000;
		border-radius: 100px;
		color: #fff;
		text-align: center;
		left: 30px;
		line-height: 2.5rem;
	}

	_::-webkit-full-page-media,
	_:future,
	:root .hgs_shikumi_left>div:nth-of-type(3):after {
		content: "3";
		width: 2.5rem;
		height: 2.5rem;
		border-bottom: none;
		position: absolute;
		right: unset;
		bottom: 1510px;
		transform: unset;
		background: #ff0000;
		border-radius: 100px;
		color: #fff;
		text-align: center;
		left: 93px;
		line-height: 2.5rem;
	}


	.dl_table01 dl dt,
	.dl_table01 dl dd {
		padding: 10px;
		width: 100%;
		border-top: 1px solid;
		border-left: 1px solid;
		display: flex !important;
		border-right: 1px solid;
	}

	.dl_table01 dl dt img {
		width: 33%;
	}

	.dl_table01 dl dd {
		padding: 1.5em 28px;
		text-align: center;
		position: relative;
	}

	.dl_table01 dl dd:nth-of-type(2) {
		padding-left: 32%;
	}

	.dl_table01 dl:nth-of-type(2) dd:nth-of-type(1) {
		padding-left: 25%;
	}

	#hgs02 .point5 dl:nth-of-type(3) dd p {
		width: 100%;
	}

	#hgs02 .point5 dl:nth-of-type(3) dd div {
		width: 100%;
		display: flex !important;
		justify-content: space-between;
		margin-top: 20px;
	}

	#hgs02 .point5 dl:nth-of-type(3) dd div img {
		width: 49%;
	}

	#hgs02 .point5 dl:nth-of-type(5)>dd:nth-of-type(1) p {
		width: 100%;
	}

	#hgs02 .point5 dl:nth-of-type(5)>dd:nth-of-type(1)>div {
		width: 100%;
		margin-top: 20px;
		display: flex !important;
	}

	#hgs02 .point5 dl:nth-of-type(5)>dd:nth-of-type(1)>div>div {
		width: 50%;
	}

	#hgs02 .point5 dl:nth-of-type(5)>dd:nth-of-type(1) div dl {
		margin-bottom: 5px;
		width: 100%;
	}

	#hgs02 .point5 dl:nth-of-type(5)>dd:nth-of-type(1) div dl dt {
		background: #00a53c;
		color: #fff;
		padding: 5px 0;
		width: 100%;
		display: inline-block;
		text-align: center;
		border: 3px solid #00a53c;
	}

	#hgs02 .point5 dl:nth-of-type(5)>dd:nth-of-type(1) div dl dd {
		border: 3px solid #c0c0c0;
		border-left: 3px solid #c0c0c0;
		width: 100%;
		text-align: center;
		padding: 5px 0;
		font-size: 30px;
		line-height: 1em;
		border-top: unset;
	}

	#hgs02 .point5 dl:nth-of-type(5)>dd:nth-of-type(1) img {
		width: 45%;
		height: 40vw;
		margin-right: 5px;
	}

	#hgs02 .point5 dl:nth-of-type(5) dl.dl-point dd p {
		width: 100%;
	}

	#hgs02 .point5 dl:nth-of-type(5) dl.dl-point dd p+div {
		width: 100%;
		height: auto;
		margin-top: 12px;
	}

	#hgs02 .point5 dl:nth-of-type(5) dl.dl-point dd p+div dl {
		border-right: unset;
		width: 100%;
		display: flex;
		margin-bottom: 10px;
	}

	#hgs02 .point5 dl:nth-of-type(5) dl.dl-point dd p+div dl dd {
		text-align: left;
		line-height: 1.5rem;
		width: 57%;
		padding-left: 20px;
	}

	#pb02 div>div.land_box p {
		width: 100%;
		margin-bottom: 20px;
	}

	.ovf_box {
		overflow-x: scroll;
		padding: 10px;
	}

	.ovf_box img {
		max-width: 1000px;
		width: 1000px;
		padding: 10px;
	}

	#pb03 div.point5 dl:nth-of-type(3) dd>div.ovf_box img {
		max-width: 100%;
		width: 100%;
		padding: 0px;
		height: 60vw;
	}

	#pb03 div.point5 dl:nth-of-type(3) dd div.ovf_box {
		padding: 20px;
	}

	#pb03 div.point5 dl:nth-of-type(3) dd>p {
		width: 100%;
		margin-bottom: 20px;
	}

	#pb03 div.point5 dl:nth-of-type(3) dd div {
		display: flex !important;
	}

	#pb03 div.point5 dl:nth-of-type(4) dd p,
	#pb03 div.point5 dl:nth-of-type(5) dd p {
		width: 100%;
		margin-bottom: 20px;
	}

	#pb03 div.point5 dl:nth-of-type(4) dd img,
	#pb03 div.point5 dl:nth-of-type(5) dd>div {
		width: 100%;
	}

	#pb03 div.point5 dl:nth-of-type(5) dd>div {
		background: #dadada;
		padding: 15px;
		display: flex !important;
	}

	#pb03 div.point5 dl:nth-of-type(5) dd>div dl dt {
		line-height: 1.5em;
		font-size: 1.8rem;
		border-bottom: 1px solid #b5b5b5;
		padding-bottom: 10px;
	}

	#pb03 div.point5 dl:nth-of-type(5) dd>div dl dd {
		font-size: 1.2rem;
		padding: 10px 0 0;
		line-height: 1.5em;
	}

	#pb03 div.point5 dl:nth-of-type(5) dd>div dl {
		width: 39%;
	}

	#pb03 div.point5 dl:nth-of-type(5) dd>div img {
		width: 57%;
		height: 38vw;
	}

	#pb04>div.wrap>div p {
		margin-left: 0;
		margin-top: 20px;
	}

	#pb04>div.wrap>dl dt {
		line-height: 1.5em;
		padding: 0 0 15px;
	}

	#pb04>div.wrap>dl dd p {
		width: 100%;
		margin-bottom: 20px;
	}

	#ffc02 div.point5 {
		width: 100%;
	}

	#ffc02 div.point5 div.land_box dl {
		width: 100%;
		border: 5px solid #00a53c;
		border-radius: 10px;
		margin-bottom: 40px;
		padding: 20px;
		position: relative;
		background: #fff;
	}

	#ffc02 div.point5 dl dt {
		position: relative;
		text-align: center;
		color: #00a53c;
		font-size: 2.1rem;
		padding: 10px 0 0;
	}

	#ffc02 {
		background: unset;
		background-position: bottom;
	}

	#ffc03 div.point5 dl dd.land_box .text-area {
		width: 100%;
		margin-bottom: 20px;
	}

	#ffc03 div.point5 dl dd.land_box .img-area {
		width: 100%;
		justify-content: space-around;
	}

	#ffc03 div.point5 dl dd.land_box .img-area figure {
		margin-bottom: 20px;
	}

	#ffc03 div.point5 dl:nth-of-type(2) dd.land_box .img-area figure figcaption {
		line-height: 1.3em;
		padding-top: 10px;
		text-align: center;
	}

	#ffc03 div.point5 dl:nth-of-type(2) dd.land_box .img-area {
		display: flex !important;
		flex-wrap: wrap;
	}

	#ffc03 div.point5 dl dd.land_box .img-area figure:nth-of-type(1) {
		width: 100%;
	}

	#ffc03 div.point5 dl:nth-of-type(2) dd.land_box .img-area figure:nth-of-type(2),
	#ffc03 div.point5 dl dd.land_box .img-area figure:nth-of-type(3) {
		width: 48%;
	}

	dl.ion {
		width: 100%;
		border: 1px solid #00a53c;
		margin-right: 40px;
		display: table !important;
	}

	dl.ion>dt {
		display: block;
		vertical-align: middle;
		padding: 10px;
		width: 100%;
		background: #cbedd8;
		border-right: unset;
		color: #00a53c;
		line-height: 1.5em;
		text-align: center;
	}

	#ffc03 div.point5 dl.ion dd.land_box {
		justify-content: space-between;
		display: flex !important;
		padding: 14px 30px;
	}

	#ffc03 div.point5 dl dd:nth-of-type(2) p {
		font-size: 1.2rem;
	}

	dl.ion:nth-of-type(1) {
		position: relative;
		margin-bottom: 40px;
	}

	dl.ion:nth-of-type(1):after {
		content: "";
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 12.5px 0 12.5px 20px;
		border-color: transparent transparent transparent #969696;
		display: block;
		position: absolute;
		right: calc(50% - 10px);
		top: 145px;
		transform: rotate(90deg);
	}

	#ffc03 div.point5 dl dd:nth-of-type(2) p.green {
		font-size: 1.8rem;
	}

	#str01.kurashi_top div dl dt span.point {
		display: block;
		font-size: 2rem;
	}

	#str01.kurashi_top div dl dt span:not(.point) {
		font-size: 3.1rem;
	}

	#str02 .point5 .dl-point {
		margin-bottom: 0;
	}

	#str02 .point5 dl:nth-of-type(1) dd figure {
		width: 100%;
		margin-left: 0;
		margin-top: 20px;
	}

	#str02 .point5 dl:nth-of-type(1) dd figure figcaption {
		font-size: 1.4rem;
		line-height: 1.5em;
	}

	#str02 .point5 dl:nth-of-type(2) dd h2 span {
		font-size: 1.1rem;
	}

	#str02 .point5 dl:nth-of-type(2) dd.bg_gray {
		background: #e6e6e6;
		padding: 20px 20px;
	}

	ul.disc li {
		list-style: disc;
		font-size: 1.4rem;
		margin-left: 15px;
	}

	#str03 div.point5 dl:nth-of-type(1) dd p,
	#str03 div.point5 dl:nth-of-type(2) dd p,
	#str03 div.point5 dl:nth-of-type(4) dd p,
	#str03 div.point5 dl:nth-of-type(5) dd>div:nth-of-type(1) {
		width: 100%;
		margin-bottom: 20px;
	}

	#str03 div.point5 dl:nth-of-type(3) dd p {
		width: 100%;
		margin-bottom: 20px;
	}

	#str03 div.point5 dl:nth-of-type(5) dd dl.bg_gray figure:nth-of-type(1) {
		margin-right: 0;
		position: relative;
		margin-bottom: 60px;
	}

	#str03 div.point5 dl:nth-of-type(5) dd dl.bg_gray figure:nth-of-type(1):after {
		right: calc(50% - 20px);
		top: unset;
		transform: rotate(90deg);
		bottom: -40px;
	}

	#str03 div.point5 dl:nth-of-type(5) dd dl.bg_gray figure+p {
		width: 100%;
		margin-left: 0;
		margin-top: 20px;
	}

	#str03 div.point5 dl:nth-of-type(6) dl {
		width: 100%;
	}

	#str03 div.point5 dl:nth-of-type(6) dd>div {
		width: 100%;
		display: flex !important;
	}

	#str03 div.point5 dl:nth-of-type(6) dd>div figure {
		width: 48%;
	}

	#qm01.kurashi_top div dl dt span:nth-of-type(2) {
		font-size: 3.1rem;
	}

	#qm02 .bg_gray div dl {
		width: 100%;
		position: relative;
		margin-top: 60px;
	}

	#qm02 .bg_gray>div dl:before {
		position: absolute;
		content: "＋";
		font-weight: 600;
		font-size: 4rem;
		left: calc(50% - .5em);
		top: -35px;
	}

	#qm02 .bg_gray div dl dt {
		text-align: center;
		background: #ed5b5b;
		color: #fff;
		padding: 20px;
		font-size: 2.4rem;
		line-height: 1.5em;
		border-radius: 5px;
		margin: 35px 0px 20px;
	}

	#qm02 .bg_gray div dl dd {
		display: flex !important;
	}

	#qm02 .bg_gray div dl dd img {
		width: calc(100% / 3 - 5px);
		height: auto;
	}

	#qm02 div dl.dl-point dd p {
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
	}

	ul.flow li {
		writing-mode: unset;
		-ms-writing-mode: unset;
		position: relative;
		padding-top: 0px;
		padding-left: 40px;
		margin: 20px 0;
		font-size: 1.8rem;
	}

	ul.flow li span {
		position: absolute;
		font-family: Oswald;
		writing-mode: horizontal-tb;
		background: #00a53c;
		color: #fff;
		width: 33px;
		padding-left: 6px;
		border-radius: 100px;
		font-size: 1.8rem;
		top: -1px;
		left: 0;
		font-style: italic;
		font-weight: normal;
	}

	#qm03 ul.flow:before {
		content: "";
		width: 5px;
		height: 105%;
		background: #c0c0c0;
		left: unset;
		position: absolute;
		bottom: unset;
		right: -30px;
		top: 0;
	}

	ul.flow li:after {
		content: "";
		display: block;
		width: 20px;
		height: 20px;
		background: #00a53c;
		border: 3px solid #fff;
		border-radius: 100px;
		position: absolute;
		bottom: 4px;
		left: unset;
		right: -38px;
	}

	#qm03 ul.flow:after {
		content: "";
		display: block;
		position: absolute;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 7.5px 0 7.5px 15px;
		border-color: transparent transparent transparent #c0c0c0;
		right: -35px;
		bottom: -40px;
		transform: rotate(90deg);
	}

	ul.flow+p.tate {
		font-size: 2.4rem;
		background: #00a53c;
		color: #fff;
		padding: 10px 10px;
		border-radius: 5px;
		writing-mode: unset;
		text-align: center;
		margin-top: 50px;
	}

	#qm03 div.wrap div figure {
		width: 100%;
		position: relative;
	}

	#qm03 dl.dl-point {
		width: 100%;
	}

	#qm03>div .bg_w {
		margin-bottom: 40px;
		padding: 20px;
	}

	.modal__content {
		left: 50%;
		padding: 0px;
		position: absolute;
		top: 50%;
		transform: translate(-50%, -50%);
		width: 80%;
		height: unset;
	}

	#qm02 div dl.dl-point dd figure:nth-of-type(1) {
		margin-right: 0;
		width: 100%;
		margin-bottom: 40px;
	}

	#qm02 div dl.dl-point dd figure:nth-of-type(1) figcaption {
		margin-top: 0;
	}

	#warr02 ul li {
		width: calc(50% - 10px);
		margin-bottom: 10px;
	}

	#warr02 ul {
		display: flex !important;
		flex-wrap: wrap;
	}

	#warr03 div.green_box div:nth-of-type(1) dl dt {
		background: #00a53c;
		color: #fff;
		padding: 15px 0;
		font-size: 2.4rem;
		border-radius: 5px 0px 0 5px;
		line-height: 1.2em;
		text-align: center;
		width: 35%;
	}

	#warr03 div.green_box div:nth-of-type(1) dl {
		width: 100%;
		display: flex !important;
		margin-bottom: 15px;
	}

	#warr03 div.green_box div:nth-of-type(1) dl:nth-of-type(1) dd {
		padding: 30px 0px 0 88px;
	}

	#warr03 div.green_box div:nth-of-type(1) dl dd>span {
		font-size: 5rem;
	}

	#warr03 div.green_box div:nth-of-type(1) dl:not(:nth-of-type(3)) dt {
		padding: 22px 5px 10px;
	}

	#warr03 div.green_box div:nth-of-type(1) dl dd {
		font-size: 1.8rem;
		position: relative;
		padding: 30px 10px 0px 10px;
		color: #00a53c;
		width: 205px;
		border: 4px solid;
		border-radius: 0px 5px 5px 0px;
	}

	#warr03 div.green_box div:nth-of-type(2) dt {
		width: 83px;
		line-height: 1.3em;
	}

	#warr03 div.green_box div:nth-of-type(2) dl {
		display: table;
		margin-bottom: 10px;
	}

	#warr03 .t_r,
	#warr04 .t_r,
	#warr05 .t_r,
	#warr06 .t_r {
		text-align: center;
	}

	#warr05 .dl-point dd p {
		width: 100%;
	}

	#warr05 .dl-point dd dl {
		width: 100%;
	}

	#warr06 dl dd p {
		width: 100%;
		margin-bottom: 20px;
	}

	#warr06 dl dd div.green_box2 {
		width: 100%;
	}

	#warr06 .green_box2 div img:nth-of-type(1) {
		margin-bottom: 20px;
	}

	#warr06 dl dd div.green_box2 dl dt {
		padding: 16px 0 8px;
		width: 100%;
	}

	#warr06 .green_box2>span {
		top: -50px;
		left: -15px;
	}

	.green_box2 {
		padding: 40px 20px 20px;
		position: relative;
	}

	#warr06 .dl-point+.green_box2 {
		margin-top: 80px;
	}

	#warr06 .green_box2 h2 {
		font-size: 2.1rem;
		line-height: 1.5em;
	}

	#warr06 .green_box2>div>div {
		width: 100%;
	}

	#warr06 .green_box2>div p {
		font-size: 1.6rem;
		padding: 20px;
		border-radius: 5px;
		position: relative;
	}

	#warr06 .green_box2>div p:before {
		display: none;
	}

	#warr06 .green_box2>div p+div {
		margin: 20px 0;
	}

	#warr06 .green_box2>div div div dl {
		display: block;
	}

	#warr06 .green_box2>div div div dl:not(:nth-of-type(1)) {
		display: inline;
		width: calc(50% - 10px);
	}

	#warr06 .green_box2>div div div dl:not(:nth-of-type(1)) dt {
		width: fit-content;
		padding: 0 5px;
	}

	#warr06 .green_box2>div div div dl:nth-of-type(1) dt {
		width: 100%;
		display: block;
	}

	#warr06>div>img {
		margin: 40px auto 80px;
		display: block;
		position: relative;
	}

	#warr06 div.point5 dl dt.point_title {
		padding: 15px 10px 5px 15px;
		font-size: 2.1rem;
		position: relative;
		line-height: 1.5em;
	}

	#warr06 div.point5 dl dt.point_title span:not(.inline) {
		padding: 0px 10px;
		font-size: 2.4rem;
		line-height: 1.3em;
		position: absolute;
		top: -22px;
		left: 10px;
		border: 1px solid #309fc5;
	}

	#ls02 div.green_box>div.land_box p,
	#ls02 div.green_box>div.land_box div {
		width: 100%;
		margin-bottom: 20px;
	}

	#ls02 div.green_box>div.land_box div figcaption {
		padding: 10px 0;
		margin-bottom: 20px;
	}

	dl.dl-point dd {
		padding: 20px 0 0;
		display: flex !important;
		flex-wrap: wrap;
	}

	#ls02 div.green_box+dl.dl-point dd ol {
		width: 48%;
	}

	#ls02 div.green_box+dl.dl-point dd ol:nth-of-type(2) {
		margin-right: 0;
	}

	#ls02 div.green_box+dl.dl-point div {
		width: 100%;
		flex-wrap: wrap;
		margin-top: 20px;
	}

	#ls02 div.green_box+dl.dl-point div figure {
		margin-bottom: 20px;
	}

	#ls03 .bg_green3 div dl {
		width: 100%;
	}

	#one02 ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	#one02 ul li {
		width: calc(50% - 10px);
		height: 159px;
		text-align: center;
		margin-bottom: 10px;
		position: unset;
	}

	#one02 ul li dl dd {
		font-size: 2.1rem;
	}

	#one02 {
		background: #efefef;
		position: relative;
		margin-top: 0px;
		height: auto;
		padding: 40px 0 20px;
	}

	#one02 h2 {
		display: inline-block;
		border: 4px solid;
		padding: 10px 15px;
		position: unset;
		font-size: 1.8rem;
		margin-bottom: 20px;
	}

	#one03 {
		margin-top: 0;
	}

	.one_ttl {
		border: 4px solid #00a53c;
		margin-bottom: 20px;
		line-height: 1.7em;
		text-align: center;
	}

	.one_ttl span:nth-of-type(1) {
		padding: 10px;
		display: block;
		color: #fff;
		background: #00a53c;
		margin-right: 0;
		position: relative;
		text-align: center;
		font-size: 2.1rem;
	}

	.box_1-3 p {
		width: 100%;
		margin-top: 20px;
	}

	dd.kodawari6 dl {
		width: 100%;
	}

	.one_ttl span:after {
		display: none;
	}

	.t_r a.back_btn {
		margin: 20px auto;
		border-radius: 5px;
	}

	.one_sec div.t_r {
		text-align: center;
	}

	#one05 dl.dl-point dl {
		width: 100%;
		margin-bottom: 20px;
		display: flex !important;
	}

	#one05 dl.dl-point dl dd span {
		font-size: 2.4rem;
		display: inline-block;
		margin-top: 15px;
		margin-left: 2px;
	}

	#one05 dl.dl-point dl dd {
		font-size: 6rem;
		font-weight: 600;
		color: #00a53c;
		line-height: 1rem;
		padding: 34px 0 0 38px;
	}

	#one05 dl.dl-point dl:nth-of-type(3) dd {
		padding-left: 60px;
	}

	.life_topttl h2 {
		font-size: 2.4rem;
		margin: 40px 0;
	}

	.life_sec div.wrap div {
		width: 100%;
		margin-top: 0px;
		position: relative;
	}

	.life_sec div.wrap div .oswald {
		font-style: italic;
		position: absolute;
		top: -75px;
		background: rgba(255, 255, 255, .7);
		display: block;
		line-height: 1.2em;
		width: 1.4em;
		padding: 4px 7px;
		right: -5px;
	}

	.life_sec a.link_green_btn {
		font-size: 1.6rem;
		background: #00a53c;
		color: #fff;
		width: 280px;
		display: block;
		text-align: center;
		padding: 20px;
		border-radius: 5px;
		margin: 20px auto;
		position: relative;
	}

	.life_sec:nth-of-type(even) div.wrap {
		background: linear-gradient(to right, #fff 0%, transparent 0%), linear-gradient(to top, #ccedd8 85%, transparent 85%);
		padding-bottom: 40px;
	}

	.life_sec:nth-of-type(odd) div.wrap {
		background: linear-gradient(to left, #fff 0%, transparent 0%), linear-gradient(to top, #ccedd8 85%, transparent 85%);
		padding-bottom: 40px;
	}

	.life_sec,
	.life_sec:nth-of-type(odd) {
		background: linear-gradient(to top, #ccedd8 85%, transparent 85%);
	}

	.dl_table01 dl:nth-of-type(2) dt div {
		font-size: 1.8rem;
		line-height: 1.5em;
	}

	.bottom_link div a:nth-of-type(1):before {
		top: 0;
		left: -24px;
	}

	.bottom_link div a:nth-of-type(1):after {
		top: 0;
		right: -1px;
	}

	.bottom_link div a:nth-of-type(2):before {
		top: 0;
		left: -1px;
	}

	.bottom_link div a:nth-of-type(2):after {
		top: 0;
		right: -24px;
	}

	h2.shita-san:before {
		left: calc(50% - 30px);
		bottom: -24px;
	}

	#warr03 div.green_box div:nth-of-type(2) dl:nth-of-type(1) {
		width: 100%;
	}

	div.round dl {
		width: 100%;
		border: 5px solid #00a53c;
		border-radius: 200px;
		overflow: hidden;
		padding: 30px 0;
		height: 75vw;
	}

	div.round dl dd>span {
		font-family: Oswald;
		font-size: 30vw;
		line-height: 1em;
	}

	div.round dl dd>div span {
		display: block;
		background: #cbedd8;
		padding: 0px 10px;
		border-radius: 5px;
		letter-spacing: 1px;
		font-size: 6vw;
		line-height: 1.5em;
	}

	div.round dl dd>div {
		font-size: 10vw;
		text-align: center;
		line-height: 1.2em;
		padding-top: 25px;
	}

	.hoshou-3 dt.ttl_30 {
		text-align: center;
		position: relative;
		font-size: 5.5vw;
	}

	#warr03 div.green_box div:nth-of-type(1) dl:nth-of-type(3) dd {
		padding-top: 35px;
	}

	#warr03 div.green_box div:nth-of-type(1) dl:nth-of-type(3) dd span {
		line-height: 2em;
	}

	#warr04 dl:nth-of-type(5) dd img {
		height: 53.8vw;
	}

	.ovf_box+.kome {
		font-size: 1.4rem;
	}

	#one02 ul li:nth-of-type(5) dl dd {
		line-height: 1em;
		margin-top: -2px;
		margin-bottom: 2px;
	}

	#one03 div>dl,
	#one05 dl.dl-point,
	#one07 dl {
		margin-top: 40px;
	}

	div.sg03_right>div {
		margin-top: 20px;
	}

	#str03 h2.ttl_sec {
		margin-bottom: 40px;
	}

	#qm03>div {
		background: #ccedd8;
		padding: 30px 20px;
	}

	#warr04 dd.ovf_box {
		margin: 20px 0;
		border: 3px solid #00a53c;
	}

	#warr04 dd.ovf_box img {
		max-width: 1180px;
		width: 1180px;
	}

	.contact_omakase dl dt .nec {
		right: 0px !important;
	}

	#support02 .form .checkbox>*,
	#support02 #reservation .form .check_area>* {
		width: fit-content;
		width: -moz-fit-content;
		padding-right: 0px;
		margin-left: 0;
		display: inline;
	}

	#support_contact .form .checkbox span.wpcf7-list-item-label {
		padding-left: 14px;
		display: inline-block;
		font-size: 1.6rem;
		padding-top: 2px;
	}

	#support_contact .form .lf14 .checkbox span.wpcf7-list-item-label {
		font-size: 1.4rem;
		padding-top: 3px;
	}

	#str02 .dl-point:nth-of-type(1) {
		margin-bottom: 60px;
	}

	span.shuhenkankyo span.wpcf7-list-item,
	#support_contact .form .shuhenkankyo .checkbox .wpcf7-list-item:nth-of-type(5) {
		padding-right: 0px;
	}

	.tenjijo_box .grid2 .thumb {
		width: 100%;
	}

	.tenjijo_box .thumb_slider .item {
		height: 200px;
		background: #f2f2f2;
	}

	.tenjijo_box .slick-dots {
		width: 100%;
	}

	.tenjijo_box .land_box .btn_area.col1 {
		display: flex;
		width: 100%;
		flex-wrap: wrap;
	}

	.tenjijo_box .land_box .btn_area.col1 p {
		width: 100%;
	}

	.tenjijo_box {
		height: auto;
		margin: 40px 0;
		padding-bottom: 40px;
		border-bottom: 5px dotted #00a53c;
	}

	.tenjijo_date {
		width: 100%;
		border: 3px solid #00a53c;
		height: auto;
		position: unset;
		bottom: 0;
		right: 0;
		padding: 5px 10px;
		margin-top: 20px;
	}

	.tenjijo_date dl {
		display: block;
	}

	.tenjijo_date dl dt,
	.tenjijo_date dl dd {
		font-size: 16px;
		padding: 3px 0 3px 20px;
	}

	.tenjijo_date dl dt {
		width: 100%;
		padding-left: 0;
	}

	.tenjijo_txt {
		width: 100%;
		margin-bottom: 20px;
	}

	.tenjijo_box>div.land_box {
		flex-flow: column-reverse;
		display: flex !important;
		flex-wrap: wrap;
	}

	#tenjijo_list .btn_area:not(.col1) a.btn_normal {
		margin: 20px auto !important;
		font-size: 14px;
	}

	.tenjijo_date dl dt,
	.tenjijo_date dl dd span {
		display: block;
	}

	.tenjijo_date dl:nth-of-type(3) {
		display: flex;
	}

	.tenjijo_date dl dt.icon_tel {
		width: 4em;
	}

	#tenjijo_kouhou ul li {
		width: 100%;
		line-height: 1.5em;
		margin-bottom: 40px;
	}

	#tenjijo_kouhou ul li figure {
		margin-top: 20px;
	}

	#tenjijo_kouhou ul li dl {
		display: block;
	}

	#tenjijo_kouhou ul li dl dt {
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
	}

	#tenjijo_kouhou ul li dl dd {
		width: 100%;
		font-size: 16px;
	}

	.rkk p.mv_txt01 {
		font-size: 2.5rem;
	}

	.rkk p.mv_txt02 {
		text-align: left;
	}

	.contact_area .tel .icon {
		width: 16.5vw;
		margin-right: 0;
		display: inline-block;
		vertical-align: top;
	}

	section#tenjijo_list .land_box .btn_area.col1 p .btn_normal {
		font-size: 14px;
	}

	#reservation .wrap {
		width: 100%;
	}

	.pagination.pnavi_bunjo .wp-pagenavi {
		width: 100%;
	}

	#news_list .pagination .wp-pagenavi>span,
	#news_list .pagination li {
		margin: 0 1vw;
	}

	#news_list .pagination .wp-pagenavi>a {
		margin: 5px 1vw 0;
	}

	.pagination .wp-pagenavi a,
	.pagination li a {
		width: 10.7vw;
		height: 8.7vw;
	}

	.mt20 {
		margin-top: 20px;
	}

	.bland_list_in {
		padding: 20px 20px;
		position: relative;
		width: 100%;
	}

	.bland_list_wrap:nth-of-type(even) {
		flex-flow: column;
	}

	.bland_list_in .link_area {
		position: unset;
	}

	.bland_list_wrap:nth-of-type(even) .bland_list_in .link_area {
		position: unset;
	}

	.bland_list_in a {
		max-width: 100%;
		width: 100%;
	}

	.bland_list_title img {
		width: 50%;
		margin: 0 auto;
		display: block;
	}

	.bland_list_wrap:nth-of-type(3) .bland_list_title img {
		width: 30%;
	}

	.bland_list_wrap:nth-of-type(6) .bland_list_title img {
		width: 70%;
	}

	p.c_copy,
	.bland_list_wrap:nth-of-type(even) p.c_copy {
		font-size: 2.1em;
		font-family: serif;
		line-height: 1.5em;
		text-align: center;
		margin: 20px 0 10px;
	}

	.bland_list_in ul,
	.bland_list_wrap:nth-of-type(even) .bland_list_in ul {
		margin: 20px auto;
		width: fit-content;
	}

	#t-box02 h3 {
		font-size: 2.1rem;
	}

	#t-box02 h3 img {
		margin-right: 5px;
		width: 20px;
	}

	#t-box02 .flex figure {
		padding: 0 0 0 40px;
	}

	#t-box02 .flex>div {
		width: 100%;
		padding: 0;
		margin-top: 40px;
	}

	#t-box02 li:before {
		margin-left: -4rem;
	}

	#t-box02 li {
		font-size: 1.8rem;
		line-height: 48px;
		padding-left: 2em;
		position: relative;
	}

	#t-box02 li {
		counter-increment: number;
		font-size: 1.8rem;
		line-height: 28px;
		border-bottom: 1px solid #e6e6e6;
		letter-spacing: 1px;
		padding: 10px 0 10px 2em;
	}

	#t-box02 a.t-box_btn {
		width: 100%;
		padding: 20px 10px 5px;
	}

	#t-box02 a.t-box_btn:after {
		top: 65%;
	}

	.form .checkbox.plan>span,
	.form .checkbox.plan>.wpcf7-list-item:nth-of-type(5),
	.form .checkbox.trigger>.wpcf7-list-item:nth-of-type(13) {
		width: calc(100% / 2 - 0px);
		margin-right: 1px;
	}

	.bland_list_box {
		width: 100%;
		flex-flow: column-reverse;
	}

	.bland_list_box>figure {
		width: 100%;
		height: auto;
	}

	.bland_list_box .link_area {
		position: unset;
		left: 20px;
		bottom: 20px;
		width: 100%;
		margin: 20px auto 0;
	}

	.bland_list_box>div {
		width: 100%;
		padding: 20px;
	}

	.bland_list_box a.btn_normal {
		height: 34px;
		width: 100%;
		max-width: 100%;
		padding: 20px;
		font-size: 1.8rem;
	}

	.bland_list_box>div figure img {
		max-height: 70px;
		margin: 0 auto;
		display: block;
		object-fit: contain;
	}

	#chumon02>div>p {
		padding: 40px 20px 0;
		margin-bottom: 40px;
	}

	#chumon02 .tenjijo_box {
		width: 100%;
		padding-bottom: 0;
	}

	#chumon02 .tenjijo_box dl dd.add {
		font-size: 1.6rem;
	}

	#chumon02 .tenjijo_box:nth-of-type(2),
	#chumon02 .tenjijo_box:nth-of-type(5) {
		margin: 40px 0 20px;
	}

	#chumon02 .model_box_slider .col1_slider .item {
		height: auto;
		aspect-ratio: 324/214;
	}

	#chumon03 #madori_num {
		display: inline-block;
		position: absolute;
		top: unset;
		/* right: calc(50% - 107px); */
		z-index: 1;
		bottom: 0;
		right: auto;
		left: 50%;
		transform: translateX(-50%);
	}

	#chumon03>div {
		background: #fff;
		padding: 20px;
		position: relative;
	}

	#chumon03 h3 {
		font-size: 1.6rem;
		padding: 10px 20px;
		line-height: 1.3em;
	}

	#chumon03 #madori_num {
		display: inline-block;
		position: relative;
		top: unset;
		right: calc(50% - 190px);
		z-index: 1;
		bottom: unset;
		margin: 20px auto 0;
	}

	#chumon03 div.box01 {
		position: relative;
		margin: 20px 0;
		background-size: contain;
		width: 100%;
		aspect-ratio: 511/339;
		margin-bottom: 40vw;
	}

	#chumon03 div.box01 figure {
		width: 100%;
		height: 52vw;
		margin: unset;
		display: block;
		background: #fff;
		padding: 20px 20px 20px 25px;
		border: 5px solid #e6e6e6;
		position: absolute;
		bottom: -35vw;
	}

	#chumon03 div.box01 figure:before {
		content: "";
		display: block;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 25px 30px 25px 0;
		border-color: transparent #e6e6e6 transparent transparent;
		position: absolute;
		left: calc(50% - 15px);
		top: -40px;
		transform: rotate(90deg);
	}

	#chumon03 div.box01 figure:after {
		content: "";
		display: block;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 18px 25px 18px 0;
		border-color: transparent #fff transparent transparent;
		position: absolute;
		left: calc(50% - 12px);
		top: -30px;
		transform: rotate(90deg);
	}

	#chumon03 div.box01 figure img {
		width: 100%;
		height: 100%;
		object-fit: contain;
	}

	#chumon03 div.box02 {
		background: #e6e6e6;
		padding: 20px;
		margin: 0 0px;
	}

	#chumon03 div.box02>div {
		width: 100%;
		padding-right: 0;
		border-right: unset;
		padding-bottom: 20px;
	}

	#chumon03 {
		background: #d7ffd7;
		padding: 80px 0;
	}

	#chumon04>div {
		background: #dbf4f2;
		padding: 20px 20px;
		position: relative;
	}

	#chumon04>div>p {
		font-size: 1.8rem;
		color: #fff;
		padding: 5px 20px;
		border-radius: 100px;
		position: relative;
		margin-bottom: 25px;
		line-height: 1.5em;
	}

	#chumon04 h3 {
		font-size: 3.5rem;
	}

	#chumon04 h3 span:nth-of-type(5) {
		margin-left: 130px;
	}

	#chumon04 h3 span.bg_g {
		background: #2e9994;
		color: #fff;
		margin-top: 13px;
		display: inline-block;
	}

	#chumon04 h3:before {
		content: "";
		background: url(../img/chumon/chumon_img06.png) no-repeat;
		width: 80px;
		height: 50px;
		display: block;
		position: absolute;
		top: 5px;
		left: unset;
		z-index: -1;
		right: 0px;
		background-size: cover;
	}

	#chumon04 .wrap>div {
		width: 100%;
		margin: 20px 0;
		z-index: 2;
	}

	#chumon04 .wrap>img:nth-of-type(1) {
		display: none;
		/*position: absolute;
    top: 150px;
    left: 0;
    z-index: 2;
    width: 19%;*/
	}

	#chumon04 .wrap>img:nth-of-type(2) {
		position: absolute;
		top: 133px;
		right: calc(50% - 0px);
		width: 35%;
		z-index: 1;
	}

	main section#chumon04 {
		margin-bottom: 120px;
	}

	#chumon04 .wrap>div:after {
		content: "";
		position: absolute;
		bottom: unset;
		right: calc(50% + 90px);
		display: block;
		width: 17%;
		height: 25%;
		background: url(../img/chumon/chumon_img08.png) no-repeat;
		background-size: contain;
		top: -34px;
	}

	.owner_form #reform_tel .tel_area_wrap {
		padding: 40px 0 0px;
	}

	.owner_form #reform_tel {
		width: 90%;
	}

	.owner_form #reform_tel h2 {
		width: 310px;
		background-color: #00a53c;
		height: 40px;
		border-radius: 20px;
		position: absolute;
		top: -20px;
		left: calc(50% - 155px);
		font-size: 16px;
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		justify-content: center;
		-ms-align-items: center;
		align-items: center;
	}

	.owner_form #reform_tel .tel_area p {
		margin-top: 5.7%;
	}

	#hiraya01 div {
		padding: 80px 10px;
	}

	#hiraya01 ul li span {
		font-size: 16px;
		position: unset;
		top: 3px;
		left: 0;
		line-height: 1.7rem;
		color: #fff;
		background: #00a53c;
		display: block;
		padding: 5px;
		margin-bottom: 10px;
	}

	#hiraya01 ul li {
		width: 528px;
		margin: 0 0 20px;
		border: 5px solid #00a53c;
		background: #fff;
		height: auto;
		text-align: center;
		position: relative;
		font-size: 2.1rem;
		line-height: 1.7em;
		padding: 0 0 10px;
	}

	#hiraya01 ul li:nth-of-type(4) {
		padding: 0 0 10px;
	}

	.sec3_box .sec3_right dl.shiyou {
		margin-bottom: 0;
	}

	#bland_list h2 {
		margin-top: 40px;
	}

	.is-anime.anime-active.fade-in {
		font-size: 24px;
	}

	#ouchitop+section p.tac {
		font-size: 1.6rem;
	}

	#ouchitop+section p.tac span.sp_p {
		font-size: 1.4rem;
	}

	#p_policy dl dd li {
		list-style: disc;
		margin-left: 20px;
	}

	#p_policy dl {
		padding: 40px 0 0;
	}

	main section#p_policy {
		padding-top: 40px;
		margin-bottom: 0 !important;
	}




}


.nohdft #page_ttl {
	padding: 90px 0 150px;
}

@media screen and (max-width: 767px) {
	.nohdft #page_ttl {
		padding: calc(4vw + 9.5%) 0 16vw;
	}
}




.point_flex2 {
	display: flex;
	flex-wrap: wrap;
	gap: 40px 0;
}

.point_flex2 .box_2c {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
}

.point_flex2 .box_2c>div {
	width: calc(60% - 40px);
}

.point_flex2 .box_2c>figure {
	width: 40%;
}

.point_flex2 .box_2c>figure img {
	border: 1px solid #eee;
}

.point_flex2 .box_1c .ttl_b_line,
.point_flex2 .box_2c>div .ttl_b_line {
	margin-top: 0;
}

@media screen and (max-width: 767px) {

	.point_flex2 .box_1c,
	.point_flex2 .box_2c {
		margin-bottom: 40px;
	}

	.point_flex2 .box_2c>div {
		width: 100%;
	}

	.point_flex2 .box_2c>figure {
		width: 100%;
	}

}


.model_slider_big{
	margin-top: 40px;
}
.chumon_land{
	padding: 80px 0;
	border-top: 1px solid #ccc;
}
.chumon_land .land_slider{
	margin-bottom: 40px;
}



	/* life
--------------------------------*/
#chumon_life {
	padding: 75px 0 80px;
	position: relative;
}

#chumon_life::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 500px;
	background: #ccedd8;
}

#chumon_life .wrap {
	position: relative;
	z-index: 1;
	max-width: 1160px;
}

#chumon_life li a {
	padding: 10px;
	background: #fff;
	display: block;
	position: relative;
	border-radius: 5px;
	box-shadow: 0 0 10px rgba(0, 0, 0, .1);
}

#chumon_life li a::before {
	content: "";
	display: block;
	width: calc(100% - 20px);
	height: 30%;
	background: rgb(0, 0, 0);
	background: -moz-linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 78%);
	background: -webkit-linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 78%);
	background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 78%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#000000", endColorstr="#000000", GradientType=1);
	position: absolute;
	bottom: 10px;
	left: 10px;
}

#chumon_life li figure {
	text-align: center;
	border-radius: 5px;
	overflow: hidden;
}

#chumon_life li .num {
	font-size: 6rem;
	line-height: 1;
	color: #00a53c;
	font-style: italic;
	position: absolute;
	top: -30px;
	left: -30px;
}

#chumon_life li .ttl_24 {
	color: #fff;
	text-align: right;
	position: absolute;
	right: 20px;
	bottom: 20px;
}

#chumon_life li .ttl_24 sup {
	font-size: .6em;
}

@media screen and (max-width: 767px) {
	#chumon_life {
		padding: 10% 0;
	}

	#chumon_life::before {
		height: 95%;
		background: #99dbb1;
	}

	#chumon_life li a {
		padding: 2.5vw;
		border-radius: 1.25vw;
		box-shadow: 0 0 2.5vw rgba(0, 0, 0, .1);
	}

	#chumon_life li figure {
		border-radius: 1.25vw;
		height: 84vw;
	}

	#chumon_life li .num {
		font-size: 15vw;
		top: -7vw;
		left: -1vw;
	}

	#chumon_life ol.home_slide li {
		padding: 25px 0;
	}

	#chumon_life li .ttl_24 {
		right: 5vw;
		bottom: 5vw;
	}

	#chumon_life li .ttl_24 sup {
		font-size: .6em;
	}

	#chumon_life .sp_grid1>button.slick-next {
		margin: 0;
	}

	#chumon_life .home_slide .slick-slide img {
		display: block;
		align-items: normal;
		object-fit: cover;
		object-position: 0px -5px;
	}
}


.select_area .frm_area_wrap{
	display: flex;
	flex-wrap: wrap;
	gap: 30px 4%;
}
.select_area .frm_area_wrap .clickmap{
	width: 48%;
}
.select_area .frm_area_wrap .area{
	width: 48%;
}
.select_area .frm_area_wrap .area label,
.select_area .frm_area_wrap .brand label{
	width: 48%;
}
.select_area .frm_area_wrap .area label span,
.select_area .frm_area_wrap .brand label span{
	width: 100%;
}