@charset "utf-8";

:root {
	--main-color: ;
	--text-color: #4F4845;
	--text-color02: #323232;
	--pink-color: #F4838C;
	--green-color: #57C215;
	--blue-color: #4CBEE6;
	--orange-color: #EF9321;
	--red-color: #D40000;
	--border-color: #BFBFBF;
	--bg-color: #FBF7E7;

	--vw: calc(100vw / 1920);
}
/* 汎用 */
a:hover img { opacity: 0.8; filter: alpha(opacity=80); -moz-opacity: 0.8; }
.mb10 { margin-bottom: 10px; }
.mb15 { margin-bottom: 15px; }
.mb20 { margin-bottom: 20px; }
.mb30 { margin-bottom: 30px; }
.mb40 { margin-bottom: 40px; }
.mb45 { margin-bottom: 45px; }
.mb50 { margin-bottom: 50px; }
.mb60 { margin-bottom: 60px; }
.mb70 { margin-bottom: 70px; }
.mb80 { margin-bottom: 80px; }
.mb90 { margin-bottom: 90px; }
.mb100 { margin-bottom: 100px; }
.mr10 { margin-right: 10px; }
.mr15 { margin-right: 15px; }
.mr20 { margin-right: 20px; }
.mr30 { margin-right: 30px; }
.mr40 { margin-right: 40px; }
.tal { text-align: left; }
.tac { text-align: center; }
.tar { text-align: right; }
.st { font-weight: bold; }
.fl { float: left; }
.fr { float: right; }
.fs16 { font-size: 16px; }
.fs18 { font-size: 18px; }
.fs20 { font-size: 20px; }
.fs22 { font-size: 22px; }
.fs24 { font-size: 24px; }
.fw300 { font-weight: 300; }
.fw400 { font-weight: 400; }
.fw500 { font-weight: 500; }
.fw600 { font-weight: 600; }
.fw700 { font-weight: 700; }
.fw800 { font-weight: 800; }
.flex { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; justify-content: space-between; }
.flex_not_justify { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; }

/* メインの日本語フォント */
.f_min { font-family: "游明朝", "Yu Mincho", "Hiragino Mincho Pro", serif; }
.f_hira { font-family: "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", sans-serif; }
.f_gothic { font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "Yu Gothic M", "YuGothic", sans-serif; }
.f_hirago { font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", sans-serif; }
.f_noto { font-family: "Noto Sans JP", sans-serif; }
.f_zenmaru { font-family: "Zen Maru Gothic", sans-serif; }


/* 英字用フォント */
.f_times { font-family: TimesNewRoman, "Times New Roman", Times, Baskerville, Georgia, serif; }
.f_arial { font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; }
.f_poppins { font-family: "Poppins", sans-serif; }

/* 画像フィット用 */
.fit_img { display: flex; justify-content: center; align-items: center; /*IE用*/ flex-direction: column; }
.fit_img img { max-width: 100%; max-height: 100%; width: auto; height: auto; }
.regacy_fit_img { display: relative; overflow: hidden; }
.regacy_fit_img img { position: absolute; left: -50%; right: -50%; top: -50%; bottom: -50%; margin: auto; max-width: 100%; max-height: 100%; width: auto; height: auto; }
.ofi { object-fit: cover; font-family: 'object-fit:cover; '; }

/*===========
inview
===========*/

.inview {
  opacity: 0;
  transform: translate(0, 20%);
  transition: 1s;
}
.inview.is-show {
  transform: translate(0, 0);
  opacity: 1;
}
/* ズレ表示用sample */
.works_list .parts:nth-child(2) {
  transition-delay: .2s;
}
.works_list .parts:nth-child(3) {
  transition-delay: .4s;
}



/*PC用*/
@media print, screen {
	

	.wave_sec {
		position: relative;
		background: url(../../images/src/common/section_bg.webp) no-repeat center top / 100%;
		background-size: 100%;
	}
	.wave_sec .wave_bg {
		background: url(../../images/src/common/section_wrap_bg.webp);
	}
	.wave_sec::after {
		content:'';
		position: absolute;
		width: 100%;
		height: 22.4rem;
		z-index: -1;
	}
	.wave_sec::after {
		bottom: 0;
		background: url(../../images/src/common/section_bg_btm.webp) no-repeat left top / cover;
	}
	.inner_1200 {
		margin: 0 auto;
		width:  1200px;
		max-width: 85%;
	}
	.inner_1120 {
		margin: 0 auto;
		width:  1120px;
		max-width: 90%;
	}
	.ttl_en {
		font-size: 1.8rem;
		font-weight: 700;
		font-family: "Poppins", sans-serif;
	}
	h2.ttl_jp {
		font-size: 3rem;
		font-weight: 900;
	}
	.txt {
		font-size: 1.6rem;
		font-weight: 500;
		line-height: 2.1;
	}


	table.tb01 tr {
		border-top: 1px solid var(--border-color);
		border-bottom: 1px solid var(--border-color);
	}
	table.tb01 th,
	table.tb01 td {
		padding: 3.7rem 0;
		font-size: 1.8rem;
		line-height: 2.1;
	}
	table.tb01 th {
		width: 18%;
		padding-left: 5.8rem;
		font-weight: 900;
	}



	/* TOP */
	.hero__block {
		position: relative;
		height: 724px;
		background: url(../../images/src/top/hero_bg.webp) no-repeat left top / 100%;
		z-index: 1;
		/*overflow: hidden; */
	}
	.hero__block::after {
		content: '';
		position: absolute;
		bottom: -8.5rem;
		right: 0;
		left: 0;
		margin: auto;
		width: 192rem;
		height: 23.4rem;
		background: url(../../images/src/top/hero_animals02.webp) no-repeat left bottom / 100%;
	}
	.hero__block .hero_image {
		margin: 0 auto;
		width: 1920px;
		max-width: 100%;
		position: absolute;
	}
	.hero__block .img01 {
		position: absolute;
		top: 119px;
		right:  calc( (100vw - 1280px) * (103 / 640) );
		width: 79.8rem;
	}
	.hero__block .img01 .birds {
		position: absolute;
		left: -6.6rem;
		top: -2.1rem;
		width: 7.613rem;
	}
	.hero__block .img04 {
		position: absolute;
		bottom: 0;
		left:  calc( (100vw - 1280px) * (309 / 640) );
		width: 32.1rem;
	}
	.hero__block .h1_bx {
		position: absolute;
		top: 50%;
		left: calc(10px + (247  * ((100vw - 1280px) / 640)));
		transform: translateY(-50%);
	}
	.hero__block .h1_bx .birds {
		position: absolute;
		top: -6.4rem;
		left: 0;
		width: 5.3rem;
	}
	.hero__block h1 {
		position: relative;
		font-size: 3.7053rem;
		font-weight: 900;
		line-height: 1.8;
	}
	.hero__block h1 .orange,
	.hero__block h1 .green {
		position: relative;
		margin: 0 1.1rem;
		padding: 0 1.1rem;
		font-size: 4.9404rem;
		font-weight: 900;
		vertical-align: sub;
		border-radius: 10px;
	}
	.hero__block h1 .orange {
		color: var(--orange-color);
		/*background: rgba(239, 147, 33, 0.14);*/
		background: #FDF0E0;
	}
	.hero__block h1 .green {
		color: var(--green-color);
		/*background: rgba(87, 194, 21, 0.16);*/
		background: #E4F5DA;
	}
	
	.hero__block h1 .orange::before,
	.hero__block h1 .orange::after,
	.hero__block h1 .green::before,
	.hero__block h1 .green::after {
		content: '';
		position: absolute;
		width: 2.4rem;
		height: 1.7rem;
	}
	.hero__block h1 .orange::before {
		left: -1.5rem;
		top: -1rem;
		background: url(../../images/src/top/quote_orange01.svg) no-repeat left top / 100%;
	}
	.hero__block h1 .orange::after {
		right: -1rem;
		bottom: -1rem;
		background: url(../../images/src/top/quote_orange02.svg) no-repeat left top / 100%;
	}
	.hero__block h1 .green::before {
		left: -1.5rem;
		top: -1rem;
		background: url(../../images/src/top/quote_green01.svg) no-repeat left top / 100%;
	}
	.hero__block h1 .green::after {
		right: -1rem;
		bottom: -1rem;
		background: url(../../images/src/top/quote_green02.svg) no-repeat left top / 100%;
	}
	.hero__block h1 .hero_ttl {
		display: block;
		font-size: 6.2rem;
		font-weight: 900;
	}
	.top_sec01 {
		margin-top: -9.7rem;
		padding: 11rem 0 0;
		background-size: 100% 82%;
	}
	.top_sec01 .wave_bg {
		padding: 12rem 0 10rem;
		background: none;
	}
	.top_sec01 .wave_bg .inner_1200.flex {
		flex-wrap: nowrap;
	}
	.top_sec01 .left_col {
		/*width: 690px;*/
		width: calc(60% - 16px);
	}
	.top_sec01 .right_col {
		/*width: 510px;*/
		width: calc(40% + 3rem);
	}
	.top_sec01 .right_col img {
		object-position: left;
		height: 636px;
	}
	.top_sec01 .ttl_en {
		margin-left: 0.6rem;
		color: var(--green-color);
	}
	.top_sec01 .ttl_jp {
		margin-bottom: 3.4rem;
	}
	
	.top_sec01 .ttl {
		position: relative;
		display: inline-block;
		margin-bottom: 3.7rem;
		font-size: 4.2rem;
		font-weight: 900;
		line-height: 1.57;
	}
	.top_sec01 .ttl::before,
	.top_sec01 .ttl::after {
		content: '';
		position: absolute;
		width: 2.4rem;
		height: 1.7rem;
		opacity: 0.28;
	}
	.top_sec01 .ttl::before {
		left: -2rem;
		top: 0;
		background: url(../../images/src/top/quote_green01.svg) no-repeat left top / 100%;
	}
	.top_sec01 .ttl::after {
		right: 3rem;
		bottom: 3.7rem;
		background: url(../../images/src/top/quote_green02.svg) no-repeat left top / 100%;
	}
	.top_sec01 .ttl .green {
		color: var(--green-color);
		font-weight: 900;
	}
	.top_sec01 .txt + .txt {
		margin-top: 3rem;
	}
	.top_sec01 .btn {
		position: relative;
		margin-top: 4.8rem;
	}
	.top_sec01 .btn::after {
		content: '';
		position: absolute;
		right: 21.5rem;
		bottom: -3rem;
		width: 11.6rem;
		height: 11.2rem;
		background: url(../../images/src/top/sec01_flower.webp) no-repeat right top / 100%;
	}
	.top_sec01 .btn a {
		position: relative;
		display: flex;
		align-items: center;
		padding-left: 6.8rem;
		height: 4.4rem;
		font-size: 1.8rem;
		font-weight: 900;
	}
	.top_sec01 .btn a::before {
		content: '';
		position: absolute;
		left: 0;
		top: 0;
		width: 4.4rem;
		height: 4.4rem;
		background: url(../../images/src/common/arrow_green_right02.svg) no-repeat left top / 100%;
	}
	.top_sec02 {
		padding: 3rem 0 13rem;
	}
	.top_sec02 .ttl_block {
		text-align: center;
	}
	.top_sec02 .ttl_block h2 {
		display: inline-block;
		margin-bottom: 2.4rem;
		position: relative;
	}
	.top_sec02 .ttl_block h2::before,
	.top_sec02 .ttl_block h2::after {
		content:'';
		position: absolute;
	}
	.top_sec02 .ttl_block h2::before {
		left: -4.9rem;
		bottom: 1rem;
		width: 2.4rem;
		height: 4.5rem;
		background: url(../../images/src/top/sec02_ico01.svg) no-repeat left top / 100%;
	}
	.top_sec02 .ttl_block h2::after {
		right: -8.3rem;
		bottom: 1rem;
		width: 5.7rem;
		height: 5.4rem;
		background: url(../../images/src/top/sec02_ico02.svg) no-repeat left top / 100%;
	}
	.top_sec02 .ttl_block .ttl_en {
		color: var(--orange-color);
	}
	.top_sec02 .ttl_block .txt {
		font-size: 1.8rem;
	}
	
	.top_sec02 .parts {
		margin-top: 7rem;
	}
	.top_sec02 .parts + .parts {
		padding-top: 7rem;
		border-top: 1px solid var(--border-color);
	}
	.top_sec02 .parts .eyecatch {
		order: 2;
		/*width: 60rem;*/
		width: calc(50%);
		text-align: center;
	}
	.top_sec02 .parts:first-of-type .eyecatch {
		order: 1;
	}
	.top_sec02 .parts .eyecatch img {
		height: 455px;
	}
	.top_sec02 .parts .text_block {
		order: 1;
		/*width: 529px;*/
		width: calc(45% - 10px);
	}
	.top_sec02 .parts:first-of-type .text_block {
		order: 2;
	}
	.top_sec02 .parts .text_block .sub_ttl {
		font-size: 2rem;
		font-weight: 900;
	}
	.top_sec02 .parts .text_block .ttl {
		margin-bottom: 3rem;
		font-size: 4.2rem;
		font-weight: 900;
		line-height: 1.57;
		letter-spacing: 0.1em;
	}
	.top_sec02 .parts .text_block .text_info {
		position: relative;
		margin-bottom: 3rem;
		padding: 3.5rem 0 3.5rem 4rem;
		border-radius: 10px;
		background: var(--bg-color);
	}
	.top_sec02 .parts .text_block .text_info::before,
	.top_sec02 .parts .text_block .text_info::after,
	.top_sec02 .parts .text_block .text_info .dots::before,
	.top_sec02 .parts .text_block .text_info .dots::after {
		content:'';
		position: absolute;
		width: 1.2rem;
		height: 1.2rem;
		border-radius: 50%;
		background: rgba(239, 147, 33, 0.32);
	}
	.top_sec02 .parts .text_block .text_info::before {
		top: 1.2rem;
		left: 1.2rem;
	}
	.top_sec02 .parts .text_block .text_info::after {
		top: 1.2rem;
		right: 1.2rem;
	}
	.top_sec02 .parts .text_block .text_info .dots::before {
		bottom: 1.2rem;
		left: 1.2rem;
	}
	.top_sec02 .parts .text_block .text_info .dots::after {
		bottom: 1.2rem;
		right: 1.2rem;
	}
	.top_sec02 .parts .text_block .text_info dl {
		justify-content: left;
		line-height: 2.2;
	}
	.top_sec02 .parts .text_block .text_info dl dt {
		position: relative;
		padding-left: 3.4rem;
		width: 18%;
		font-size: 1.6rem;
		font-weight: 500;
	}
	
	.top_sec02 .parts .text_block .text_info dl dt::before {
		content: '';
		position: absolute;
		left: 0;
		top: 0.6rem;
		width: 2.4rem;
		height: 2.4rem;
		background: no-repeat left top / 100%;
	}
	.top_sec02 .parts .text_block .text_info dl:nth-of-type(1) dt::before {
		background-image: url(../../images/src/top/facility_ico01.svg);
	}
	.top_sec02 .parts .text_block .text_info dl:nth-of-type(2) dt::before {
		background-image: url(../../images/src/top/facility_ico02.svg);
	}
	.top_sec02 .parts .text_block .text_info dl:nth-of-type(3) dt::before {
		background-image: url(../../images/src/top/facility_ico03.svg);
	}
	.top_sec02 .parts .text_block .text_info dl:nth-of-type(4) dt::before {
		top: 0.4rem;
		width: 2.6rem;
		height: 2.6rem;
		background-image: url(../../images/src/top/facility_ico04.svg);
	}
	.top_sec02 .parts .text_block .text_info dl dd {
		width: 66%;
		font-size: 1.6rem;
		font-weight: 500;
	}
	.top_sec02 .parts .text_block .btn a {
		position: relative;
		display: flex;
		align-items: center;
		padding-left: 6.5rem;
		height: 4.4rem;
		font-size: 1.8rem;
		font-weight: 900;
	}
	.top_sec02 .parts .text_block .btn a::before {
		content: '';
		position: absolute;
		left: 0;
		top: 0;
		width: 4.4rem;
		height: 4.4rem;
		background: url(../../images/src/common/arrow_orange_right02.svg) no-repeat left top / 100%;
	}
	


	/* 下層 */
	.hero__block.inner_wrap {
		/*height: 526px;*/
		height: 489px;
		background: url(../../images/src/top/hero_bg_inner.webp) no-repeat left top / 100%;
		z-index: 2;
	}
	.hero__block.inner_wrap::after {
		left: 1.3rem;
		bottom: 3.2rem;
		margin: auto;
		width: 101.1rem;
		height: 12.6rem;
		background: url(../../images/src/top/hero_animals_inner.png) no-repeat left bottom / 100%;
	}
	.hero__block.inner_wrap .mv_ttl {
		height: 100%;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	.hero__block.inner_wrap .mv_ttl .ttl_en {
		color: var(--orange-color);
	}
	
	.hero__block.inner_wrap.pink .ttl_en {
		color: var(--pink-color);
	}
	.hero__block.inner_wrap.green .ttl_en {
		color: var(--green-color);
	}
	.hero__block.inner_wrap.blue .ttl_en {
		color: var(--blue-color);
	}
	.hero__block.inner_wrap .mv_ttl h1 {
		font-size: 4rem;
		letter-spacing: 0.1em;
	}
	.er404 {
		padding: 10rem 0;
	}
	.er404 .ttl {
		margin-bottom: 4rem;
		font-size: 2rem;
		font-weight: 900;
		line-height: 1.5;
		letter-spacing: 0.1em;
		text-align: center;
	}
	.er404 .btn {
		margin: 0 auto;
		width: 32rem;
	}
	.er404 .btn a {
		display: block;
		width: 100%;
		padding: 2.4rem 0;
		color: #fff;
		font-size: 2rem;
		font-weight: 900;
		text-align: center;
		letter-spacing: 0.1em;
		border: none;
		border-radius: 180px;
		background: url(../../images/src/common/arrow_white_left.svg) #777 no-repeat left 1.8rem center;
		box-shadow: 6px 6px 0 #d4d4d4;
	}

	.breadcrumbs {
		margin-right: 3rem;
		text-align: right;
		font-size: 1.6rem;
		font-weight: 500;
	}
	.breadcrumbs span {
		font-size: 1.6rem;
		font-weight: 500;
	}
	.breadcrumbs span > span {
		padding: 0.5rem 1.1rem;
		color: #fff;
		font-size: 1.6rem;
		font-weight: 700;
		border-radius: 180px;
		background: var(--orange-color);
	}

	.breadcrumbs span a span {
		text-decoration: underline;
	}
	
	#contact .breadcrumbs span > span,
	#faq .breadcrumbs span > span {
		background: var(--pink-color);
	}
	#recruit .breadcrumbs span > span {
		background: var(--blue-color);
	}
	#company .breadcrumbs span > span,
	#about .breadcrumbs span > span,
	#guide .breadcrumbs span > span {
		background: var(--green-color);
	}

	.wp-pagenavi {
		text-align: center;
	}
	
	.wp-pagenavi a,
	.wp-pagenavi .current{
		display: inline-block;
		margin: 0 1rem;
		width: 3.4rem;
		height: 3.4rem;
		font-size: 2rem;
		font-weight: 900;
		border-radius: 50%;
	}
	.wp-pagenavi .current {
		background: var(--orange-color);
		color: #fff;
	}


	/* グループホームについて 
	-----------------------*/
	
	#about .sec01 {
		margin-top: -104px;
		padding-top: 101px;
		height: 860px;
		background: url(../../images/src/about/sec01_bg.webp) no-repeat center top / cover;
		overflow: hidden;
		position: relative;
		z-index: 1;
	}
	#about .sec01 .block01 {
		margin-top: 40px;
		position: relative;
		height: 100%;
	}
	#about .sec01 .block01 .img01 {
		position: absolute;
		top: 0;
		left: calc((100vw - 1280px) * (231 / 640));
		width: 46.7rem;
	}
	#about .sec01 .block01 .img01 img {
		height: 573px;
	}
	#about .sec01 .block01 .img02 {
		position: absolute;
		top: 0;
		right: calc((100vw - 1280px) * (181 / 640));
		width: 47.9rem;
	}
	#about .sec01 .block01 .img02 img {
		height: 567px;
	}
	#about .sec01 .block01 .text_block {
		padding-top: 24rem;
		display: flex;
		flex-direction: column;
		align-items: center;
		height: 100%;
	}
	#about .sec01 .block01 .text_block h2 {
		position: relative;
		margin-bottom: 4rem;
		font-size: 4.2rem;
		font-weight: 900;
		line-height: 1.57;
		letter-spacing: 0.1em;
		text-align: center;
	}
	#about .sec01 .block01 .text_block h2::before,
	#about .sec01 .block01 .text_block h2::after,
	#about .sec02 h3::before,
	#about .sec02 h3::after {
		content: '';
		position: absolute;
		width: 2.3rem;
		height: 1.7rem;
		opacity: 0.28;
	}
	#about .sec01 .block01 .text_block h2::before,
	#about .sec02 h3::before {
		left: -1.5rem;
		top: 0;
		background: url(../../images/src/top/quote_green01.svg) no-repeat left top / 100%;
	}
	#about .sec01 .block01 .text_block h2::after,
	#about .sec02 h3::after  {
		right: -2.5rem;
		bottom: 3.5rem;
		background: url(../../images/src/top/quote_green02.svg) no-repeat left top / 100%;
	}
	#about .sec01 .block01 .text_block h2 .green {
		color: var(--green-color);
		font-weight: 900;
	}
	#about .sec01 .block01 .text_block .ttl {
		font-size: 1.8rem;
		font-weight: 900;
		letter-spacing: 0.1em;
		text-align: center;
	}
	#about .sec01 .block01 .text_block .ttl span {
		font-size: 3rem;
		font-weight: 900;
		line-height: 1.7;
	}
	#about .sec02 {
		position: relative;
		margin-top: -152px;
		padding: 180px 0 137px;
		background: url(../../images/src/about/sec02_bg.webp) no-repeat center top / cover;
	}
	#about .ttl_en,
	#about .sec02 h3 span {
		color: var(--green-color);
	} 
	#about .inner_1200 {
	}
	#about .sec02 h3 {
		position: relative;
		margin: 4rem 0 7.8rem;
		font-size: 4.2rem;
		font-weight: 900;
		letter-spacing: 0.1em;
	}
	#about .sec02 h3 span {
		font-weight: 900;
	}
	#about .sec02 .parts {
		padding: 6rem;
		background-color: #fff;
	}
	#about .sec02 .parts + .parts {
		margin-top: 5rem;
	}
	#about .sec02 .parts .img {
		width: calc(50%);
	}
	#about .sec02 .parts .left_col {
		width: calc(50% - 60px);
	}
	#about .sec02 .parts .left_col .num {
		display: inline-block;
		margin-bottom: 1.4rem;
		padding: 0.1rem 2.3rem;
		color: #fff;
		font-size: 1.8rem;
		font-weight: 700;
		letter-spacing: 0.1em;
		border-radius: 180px;
		background-color: var(--green-color);
	}
	#about .sec02 .parts .left_col .ttl {
		margin-bottom: 2.9rem;
		font-size: 3rem;
		font-weight: 900;
		line-height: 1.66;
		letter-spacing: 0.1em;
	}
	#about .top_sec02 .ttl_block .ttl_en {
		color: var(--orange-color);
	} 


	/* 施設紹介 
	----------------*/
	#facility .sec01,
	#guide .sec01,
	#faq .sec01,
	#recruit .sec01,
	#company .sec01 {
		margin-top: -10.7rem;
		padding: 10.5rem 0 0;
	}
	#facility .sec01.wave_sec::after {
		display: none;
	}
	#facility .wave_sec .wave_bg {
		padding-bottom: 13.5rem;
	}
	#facility .sec01 .block01 {
		margin-bottom: 9.2rem;
		padding-top: 7rem;
		text-align: center;
	}
	#facility .sec01 .block01 h2 {
		position: relative;
		display: inline;
		font-size: 3.8rem;
		font-weight: 900;
		text-align: center;
		line-height: 1.68;
		letter-spacing: 0.1em;
	}
	#facility .sec01 .block01 h2::before,
	#facility .sec01 .block01 h2::after {
		content: '';
		position: absolute;
		width: 2.1rem;
		height: 1.5rem;
		opacity: 0.4;
	}
	#facility .sec01 .block01 h2::before {
		left: -3rem;
		top: 3px;
		background: url(../../images/src/top/quote_orange01.svg) no-repeat left top / 100%;
	}
	#facility .sec01 .block01 h2::after {
		right: 1rem;
		bottom: 3.5rem;
		background: url(../../images/src/top/quote_orange02.svg) no-repeat left top / 100%;
	}
	#facility .sec01 .block01 h2 .orange {
		color: var(--orange-color);
		font-weight: 900;
	}
	
	#facility .sec01 .block01 .txt {
		margin-top: 4.7rem;
	}
	#facility .facility_list {
		margin-bottom: 9.1rem;
		gap: 6rem 0;
	}
	#facility .facility_list .parts {
		padding: 3rem;
		width: calc(50% - 30px);
		border-radius: 10px;
		background: #fff;
	}
	#facility .facility_list .parts .eyecatch {
		margin-bottom: 2.8rem;
		text-align: center;
	}
	#facility .facility_list .parts .eyecatch img {
		height: 386px;
	}
	#facility .facility_list .parts .sub_ttl {
		margin-bottom: -1rem;
		font-size: 2rem;
		letter-spacing: 0.1em;
		font-weight: 900;
	}
	#facility .facility_list .parts .ttl {
		margin-bottom: 0.6rem;
		font-size: 3.2rem;
		font-weight: 900;
		line-height: 2;
		letter-spacing: 0.1em;
	}
	#facility .facility_list .parts .flex {
		align-items: center;
	}
	#facility .facility_list .parts .faci_add {
		position: relative;
		margin-left: -0.8rem;
		padding-left: 3.4rem;
		font-size: 1.8rem;
		font-weight: 500;
	}
	#facility .facility_list .parts .faci_add::before {
		content: '';
		position: absolute;
		left: 0;
		top: 0;
		width: 3rem;
		height: 3rem;
		background: url(../../images/src/top/facility_ico01.svg) no-repeat left top / 100%;
	}
	
	#facility .facility_list .parts .empty_room {
		margin-right: 1rem;
		padding: 0.5rem 1.4rem;
		border-radius: 6px;
		border: 1px solid var(--red-color);
		color: var(--red-color);
		font-size: 1.8rem;
		font-weight: 500;
	}
	#facility .facility_list .parts .arrow {
		margin: 3rem 1rem 0 0;
		padding-top: 2.9rem;
		border-top: 1px solid var(--border-color);
		text-align: right;
	}
	#facility .facility_list .parts .arrow span {
		position: relative;
		padding-left: 6.4rem;
		font-size: 1.8rem;
		font-weight: 900;
	}
	#facility .facility_list .parts .arrow span::before {
		content:'';
		position: absolute;
		left: 0;
		top: 0;
		bottom: 0;
		margin: auto;
		width: 4.4rem;
		height: 4.4rem;
		background: url(../../images/src/common/arrow_orange_right02.svg) no-repeat left top / 100%;
	}

	
	#facility .facility_detail {
		padding: 6rem 8rem;
		border-radius: 10px;
		background: #fff;
	}
	#facility .facility_detail .sub_ttl {
		font-size: 2rem;
		font-weight: 900;
		letter-spacing: 0.1em;
	}
	#facility .facility_detail h2 {
		position: relative;
		font-size: 4.2rem;
		font-weight: 900;
		line-height: 1.57;
		letter-spacing: 0.1em;
	}
	#facility .facility_detail h2::after {
		content:'';
		position: absolute;
		bottom: -2.3rem;
		left: 0;
		right: 0;
		margin: auto;
		width: 8rem;
		height: 0.3rem;
		background: var(--orange-color);
	}
	#facility .facility_detail .eyecatch {
		margin: 7.3rem auto 6rem;
	}
	#facility .facility_detail .eyecatch img {
		max-height: 1040px;
		width: 100%;
	}
	#facility .facility_detail .price {
		margin-bottom: 4.6rem;
		padding: 3rem 5rem 5rem;
		border-radius: 10px;
		background: var(--bg-color);
		text-align: center;
	}
	#facility .facility_detail .price p {
		font-size: 2rem;
		font-weight: 900;
	}
	#facility .facility_detail .price span {
		font-size: 3.2rem;
		font-weight: 900;
	}

	#facility .facility_detail .room {
		margin-bottom: 6rem;
		gap: 5rem 11rem;
	}
	#facility .facility_detail  .room .room_parts {
		flex: 1;
	}
	#facility .facility_detail .room .circle {
		margin: 0 auto 1rem;
		padding-top: 0.5rem;
		width: 6rem;
		height: 6rem;
		color: #fff;
		font-size: 3rem;
		font-weight: 900;
		text-align: center;
		border-radius: 50%;
		background-color: var(--orange-color);
	}

	#facility .facility_detail .room .circle span {
		font-size: 2rem;
	}
	#facility .facility_detail .gallery {
		margin-bottom: 5rem;
		justify-content: left;
		gap: 1rem;
	}
	#facility .facility_detail .gallery li {
		width: calc(34% - 14px);
	}
	#facility .facility_detail .gallery li img {
		width: 100%;
		height: 22rem;
	}
	#facility .facility_detail .text_info {
		position: relative;
		margin-bottom: 5rem;
		padding: 3.5rem 0 3.5rem 4rem;
		border-radius: 10px;
		background: var(--bg-color);
	}
	#facility .facility_detail .text_info::before,
	#facility .facility_detail .text_info::after,
	#facility .facility_detail .text_info .dots::before,
	#facility .facility_detail .text_info .dots::after {
		content:'';
		position: absolute;
		width: 1.2rem;
		height: 1.2rem;
		border-radius: 50%;
		background: rgba(239, 147, 33, 0.32);
	}
	#facility .facility_detail .text_info::before {
		top: 1.2rem;
		left: 1.2rem;
	}
	#facility .facility_detail .text_info::after {
		top: 1.2rem;
		right: 1.2rem;
	}
	#facility .facility_detail .text_info .dots::before {
		bottom: 1.2rem;
		left: 1.2rem;
	}
	#facility .facility_detail .text_info .dots::after {
		bottom: 1.2rem;
		right: 1.2rem;
	}
	#facility .facility_detail .text_info dl {
		justify-content: left;
		line-height: 2.2;
	}
	#facility .facility_detail .text_info dl dt {
		position: relative;
		padding-left: 3.4rem;
		width: 9rem;
		font-size: 1.6rem;
		font-weight: 500;
	}
	
	#facility .facility_detail .text_info dl dt::before {
		content: '';
		position: absolute;
		left: 0;
		top: 0.6rem;
		width: 2.4rem;
		height: 2.4rem;
		background: no-repeat left top / 100%;
	}
	#facility .facility_detail .text_info dl:nth-of-type(1) dt::before {
		background-image: url(../../images/src/top/facility_ico01.svg);
	}
	#facility .facility_detail .text_info dl:nth-of-type(2) dt::before {
		background-image: url(../../images/src/top/facility_ico02.svg);
	}
	#facility .facility_detail .text_info dl:nth-of-type(3) dt::before {
		background-image: url(../../images/src/top/facility_ico03.svg);
	}
	#facility .facility_detail .text_info dl:nth-of-type(4) dt::before {
		top: 0.4rem;
		width: 2.6rem;
		height: 2.6rem;
		background-image: url(../../images/src/top/facility_ico04.svg);
	}
	#facility .facility_detail .text_info dl dd {
		width: 66%;
		font-size: 1.6rem;
		font-weight: 500;
	}
	
	#facility .facility_detail .g_map iframe {
		width: 100%;
	}
	#facility .pdf_btn {
		margin: 6rem auto 13.8rem;
		width: 42rem;
	}
	#facility .pdf_btn a {
		display: block;
		padding: 3.7rem 0;
		width: 100%;
		text-align: center;
		border-radius: 180px;
		background: var(--orange-color);
		box-shadow: 6px 6px 0 #EDE1B5;
	}
	#facility .pdf_btn a span {
		position: relative;
		padding-left: 4.8rem;
		color: #fff;
		font-size: 2.2rem;
		font-weight: 900;
	}
	#facility .pdf_btn a span::before {
		content: '';
		position: absolute;
		left: 0;
		top: 0;
		bottom: 0;
		margin: auto;
		width: 3rem;
		height: 3rem;
		background: url(../../images/src/common/ico_dl.svg) no-repeat left center / 100%;
	}
	
	#facility .facility_detail table {
		margin: 2.6rem 0 0;
		border: 1px solid var(--border-color);
	}
	#facility .facility_detail table th,
	#facility .facility_detail table td {
		border: 1px solid var(--border-color);
	}
	#facility .facility_detail table th {
		padding: 0 3rem;
		font-size: 1.8rem;
		font-weight: 900;
		line-height: 2.84;
		letter-spacing: 0.1em;
		vertical-align: middle;
	}
	#facility .facility_detail table td {
		padding: 1.5rem 3rem;
		text-align: left;
		font-size: 1.8rem;
		font-weight: 500;
	}
	#facility .facility_detail table td .kome {
		font-size: 1.4rem;
		font-weight: 500;
	}



	/* ご利用案内 
	----------------*/
	#guide .sec01 .wave_bg {
		padding-bottom: 17rem;
	}
	#guide .sec01 .inner_btn {
		margin: 4.5rem 0 12rem;
		justify-content: center;
		gap: 0 6rem;
	}
	#guide .sec01::after {
		display: none;
	}
	#guide .sec01 .inner_btn li a {
		position: relative;
		display: block;
		padding: 1.4rem 0;
		width: 422px;
		color: #fff;
		font-size: 2.4rem;
		font-weight: 900;
		line-height: 2.13;
		letter-spacing: 0.1em;
		text-align: center;
		border-radius: 10px;
		background-color: var(--green-color);
	}
	#guide .sec01 .inner_btn li a::after {
		content: '';
		position: absolute;
		right: 3rem;
		top: 0;
		bottom: 0;
		margin: auto;
		width: 3.8rem;
		height: 3.8rem;
		background: url(../../images/src/common/arrow_green_btm.svg) no-repeat right center / 100%;
	}

	#guide .guide_wrap .ttl_en {
		color: var(--green-color);
	}
	#guide .guide_wrap h3 {
		margin: 2.6rem 0 3.9rem;
		font-size: 4rem;
		font-weight: 900;
		line-height: 2.1;
		letter-spacing: 0.1em;
	}
	#guide .guide_wrap .parts {
		position: relative;
		padding: 3rem;
		/*width: 366px; */
		width: calc(31% - 6px);
		border-radius: 10px;
		background-color: #fff;
	}
	#guide .guide_wrap .parts::after {
		content: '';
		position: absolute;
		top: 0;
		bottom: 0;
		right: -3.6rem;
		margin: auto;
		width: 2rem;
		height: 3.3rem;
		background: url(../../images/src/common/triangle_green.svg) no-repeat right center / 100%;
	}
	#guide .guide_wrap .parts:last-of-type::after {
		display: none;
	}
	#guide .guide_wrap .parts .num {
		position: absolute;
		display: inline;
		top: 2rem; 
		left: 2rem;
		padding: 0.4rem 2rem;
		color: #fff;
		font-size: 1.6rem;
		font-weight: 700;
		line-height: 1.5;
		letter-spacing: 0.1em;
		border-radius: 180px;
		background-color: var(--green-color);
	}
	#guide .guide_wrap .parts .ttl {
		margin: 2.4rem 0 1.6rem;
		font-size: 2.6rem;
		font-weight: 900;
		text-align: center;
	}
	#guide .guide_wrap .parts .txt {
		font-size: 1.8rem;
		line-height: 1.9;
	}
	#guide .guide_wrap .block {
		margin: 12rem auto 18rem;
	}
	#guide .guide_wrap .block .left_col {
		width: calc(50% - 87px);
	}
	#guide .guide_wrap .block .left_col .ttl {
		margin-bottom: 1.2rem;
		font-size: 2.8rem;
		font-weight: 900;
		line-height: 1.8;
		letter-spacing: 0.1em;
	}
	#guide .guide_wrap .block .left_col .txt {
		font-size: 1.8rem;
	}
	#guide .guide_wrap .block .img {
		width: calc(50%);
	}
	#guide .guide_wrap .step_parts {
		position: relative;
		margin-top: 5.8rem;
		padding: 3rem 6rem 3rem 3rem;
		width: 100%;
		justify-content: left;
	}
	#guide .guide_wrap .step_parts::after {
		content: '';
		position: absolute;
		top: auto;
		left: 0;
		right: 0;
		bottom: -4.5rem;
		margin: auto;
		width: 7.2rem;
		height: 2.6rem;
		background: url(../../images/src/common/triangle_green_btm.svg) no-repeat center bottom / 100%;
	}
	#guide .guide_wrap .step_parts:last-of-type::after {
		display: none;
	}
	#guide .guide_wrap .step_parts .img {
		display: flex;
		align-items: center;
		justify-content: center;
		/*width: 274px;*/
		width: calc(25% - 4px);
	}
	#guide .guide_wrap .step_parts .right_col {
		/*width: 836px;*/
		width: calc(76% - 8px);
	}
	#guide .guide_wrap .step_parts .right_col .ttl {
		text-align: left;
	}
	#guide .guide_wrap .step_parts .right_col .cta_wrap {
		margin-top: 2rem;
		justify-content: left;
		gap: 0 2rem;
	}
	#guide .guide_wrap .step_parts .right_col .cta_wrap .box {
		padding: 2rem;
		width: calc(50% - 10px);
		border-radius: 10px;
		background: rgba(228, 245, 217, 0.50);
	}
	#guide .guide_wrap .step_parts .right_col .cta_wrap .box .sub_ttl {
		margin-bottom: 0.9rem;
		font-size: 1.8rem;
		font-weight: 900;
		letter-spacing: 0.1em;
		text-align: center;
	}
	#guide .guide_wrap .step_parts .right_col .cta_wrap .box .btn {
		margin: 0 auto;
		width: 31rem;
	}
	#guide .guide_wrap .step_parts .right_col .cta_wrap .box .btn a {
		position: relative;
		display: block;
		padding: 1.5rem 0;
		width: 100%;
		border-radius: 180px;
		color: #fff;
		font-size: 1.6rem;
		font-weight: 700;
		text-align: center;
		background-color: var(--green-color);
		box-shadow: 5px 5px 0 rgba(87, 194, 21, 0.3);
	}
	#guide .guide_wrap .step_parts .right_col .cta_wrap .box .btn a::before,
	#guide .guide_wrap .step_parts .right_col .cta_wrap .box .btn a::after {
		content: '';
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
	}
	#guide .guide_wrap .step_parts .right_col .cta_wrap .box .btn a::before {
		left: 2.5rem;
		width: 2rem;
		height: 1.6rem;
		background: url(../../images/src/common/ico_mail.svg) no-repeat left center / 100%;
	}
	#guide .guide_wrap .step_parts .right_col .cta_wrap .box .btn a::after {
		right: 1.5rem;
		width: 3rem;
		height: 3rem;
		background: url(../../images/src/common/arrow_green_right.svg) no-repeat left center / 100%;
	}
	#guide .guide_wrap .step_parts .right_col .cta_wrap .box .tel {
		text-align: center;
	}
	#guide .guide_wrap .step_parts .right_col .cta_wrap .box .tel a {
		position: relative;
		padding-left: 3.4rem;
		color: var(--green-color);
		font-size: 3.6rem;
		font-weight: 600;
		letter-spacing: 0.1em;
	}
	#guide .guide_wrap .step_parts .right_col .cta_wrap .box .tel a::before {
		content: '';
		position: absolute;
		left: 0;
		top: 0;
		bottom: 0;
		margin: auto;
		width: 2.5rem;
		height: 2.6rem;
		background: url(../../images/src/common/ico_tel_green.svg) no-repeat left center / 100%;
	}

	#guide .guide_wrap .step_parts .right_col .green_bx {
		margin-top: 2rem;
		padding: 2rem 3rem;
		border-radius: 10px;
		background: rgba(228, 245, 217, 0.50);
	}
	#guide .guide_wrap .step_parts .right_col .green_bx .txt {
		font-weight: 900;
	}
	#guide .guide_wrap .step_parts ul li {
		position: relative;
		padding-left: 2rem;
		font-size: 1.6rem;
		font-weight: 500;
		line-height: 2.1;
	}
	#guide .guide_wrap .step_parts ul li::before {
		content: '';
		position: absolute;
		top: 1.3rem;
		left: 0;
		width: 0.9rem;
		height: 0.9rem;
		border-radius: 50%;
		background-color: var(--green-color);
	}
	#guide .guide_wrap .step_parts .lower_wrap {
		margin: 4rem 0 0 3rem;
		padding: 2rem 0;
		border-top: 1px solid var(--border-color);
	}
	#guide .guide_wrap .step_parts .lower_wrap .ttl {
		font-size: 2.2rem;
		text-align: left;
	}
	#guide .guide_wrap .step_parts .lower_wrap .sub_ttl {
		margin-bottom: 2rem;
		padding-left: 1.6rem;
		border-left: 0.4rem solid var(--green-color);
		font-size: 1.8rem;
		font-weight: 900;
	}
	#guide .guide_wrap .step_parts .lower_wrap ul {
		margin-bottom: 3rem;
		justify-content: left;
		gap: 3rem;
	}
	#guide .guide_wrap .step_parts .lower_wrap ul.lst {
		margin-bottom: 0;
	}






	/* 運営会社 
	----------------*/
	#company .sec01 .box {
		position: relative;
		margin: 0 auto 14rem;
		padding: 6rem;
		max-width: 920px;
		border-radius: 10px;
		background: #fff;
	}
	#company .sec01 .box::before,
	#company .sec01 .box::after,
	#company .sec01 .box .dots:before,
	#company .sec01 .box .dots:after {
		content: '';
		position: absolute;
		width: 1.2rem;
		height: 1.2rem;
		border-radius: 50%;
		background: rgba(87, 194, 21, 0.32);
	}
	#company .sec01 .box::before {
		left: 1.4rem;
		top: 1.4rem;
	}
	#company .sec01 .box::after {
		right: 1.4rem;
		top: 1.4rem;
	}
	#company .sec01 .box .dots::before {
		left: 1.4rem;
		bottom: 1.4rem;
	}
	#company .sec01 .box .dots::after {
		right: 1.4rem;
		bottom: 1.4rem;
	}
	#company .ttl_en {
		color: var(--green-color);
	}
	#company .ttl_jp {
		margin-bottom: 3rem;
		font-size: 3rem;
		font-weight: 900;
		letter-spacing: 0.1em;
	}
	#company .sec01 .box .txt {
		line-height: 1.78;
		text-align: center;
	}
	#company .sec01 .box .txt span {
		position: relative;
		font-size: 2.8rem;
		font-weight: 900;
		letter-spacing: 0.1em;
	}
	#company .txt span::before,
	#company .txt span::after {
		content: '';
		position: absolute;
		width: 2.1rem;
		height: 1.5rem;
		opacity: 0.32;
	}
	#company .txt span::before {
		top: 0;
		left: -2rem;
		background: url(../../images/src/top/quote_green01.svg) no-repeat left top / 100%;
	}
	#company .txt span::after {
		bottom: 2rem;
		right: 0;
		background: url(../../images/src/top/quote_green02.svg) no-repeat left top / 100%;
	}
	#company .sec01 .block .left_col {
		width: calc(40% - 80px);
	}
	#company .sec01 .block .left_col .ttl_en {
		color: var(--green-color);
	}
	#company .sec01 .block .left_col .ttl_jp {
		margin-bottom: 3rem;
		font-size: 3rem;
		font-weight: 900;
		line-height: 1.7;
		letter-spacing: 0.1em;
	}
	#company .sec01 .block .left_col .txt {
		font-size: 1.8rem;
	}
	#company .sec01 .block .img {
		width: calc(50% + 132px);
	}
	#company .sec01 .wave_bg {
		padding-bottom: 16.6rem;
	}
	#company .sec01::after {
		display: none;
	}
	#company .sec02 {
		margin: 3.6rem auto 0.1vw;
		padding: 6rem 8rem 8rem;
		border-radius: 10px;
		background-color: #fff;
	}



	/* よくあるご質問 
	----------------*/
	#faq .block01 {
		padding-bottom: 13rem;
	}
	#faq .wave_sec::after {
		display: none;
	}
	#faq .block01 .txt {
		margin-bottom: 6rem;
		font-size: 1.8rem;
		line-height: 2.1;
		letter-spacing: 0.1em;
		text-align: center;
	}
	#faq dl {
		padding: 6rem 4.4rem;
		border-radius: 10px;
		background: #fff;
	}
	#faq dl + dl {
		margin-top: 3rem;
	}
	
	#faq dl dt,
	#faq dl dd {
		position: relative;
	}
	#faq dl dt::before,
	#faq dl dd::before {
		position: absolute;
	}
	#faq dl dt::before {
		content: '';
		top: -1rem;
		left: 0;
		width: 4.6rem;
		height: 4.6rem;
		background: url(../../images/src/faq/ico_q.svg) no-repeat left top / 100%;
	}
	#faq dl dd::before {
		content: 'A.';
		top: 0.5rem;
		left: 0;
		font-family: "Poppins", sans-serif;
		color: var(--pink-color);
		font-size: 2.4rem;
		font-weight: 700;
		line-height: 1;
	}
	#faq dl dt {
		margin-bottom: 1.5rem;
		padding-left: 6.1rem;
		font-size: 2rem;
		font-weight: 900;
	}
	#faq dl dd {
		margin-left: 6rem;
		padding-left: 3.5rem;
		font-size: 1.8rem;
		font-weight: 500;
		line-height: 2.1;
	}

	/* お問い合わせ 
	----------------*/
	.hero__block.inner_wrap.contacthero {
		height: 489px;
	}
	.hero__block.inner_wrap.contacthero .ttl_en {
		color: var(--pink-color);
	}
	.contacthero::after {
		display: none;
	}
	#contact .wave_sec {
		padding: 3rem 0 0;
		background: url(../../images/src/common/cta_bg.webp);
	}
	#contact .wave_sec::after {
		display: none;
	}
	#contact .wave_sec .cta_sec {
		padding-top: 2.4rem;
	}
	#contact .wave_sec .cta_sec .inner_1120 {
		width: 846px;
		justify-content: center;
	}
	#contact .wave_sec .cta_sec .inner_1120 .parts {
		width: 57rem;
	}
	#contact .wave_sec .cta_sec .hito01 {
		left: 0.3rem;
	}
	#contact .wave_sec .cta_sec .hito02 {
		right: -1.66rem;
	}
	#contact .sec02 {
		margin: 10rem auto 20rem;
	}
	#contact .sec02 h2 {
		position: relative;
		margin-bottom: 7.1rem;
		font-size: 2.8rem;
		font-weight: 900;
		line-height: 1.82;
		letter-spacing: 0.1em;
	}
	#contact .sec02 h2::after {
		content: '';
		position: absolute;
		left: 0;
		right: 0;
		bottom: -0.8rem;
		margin: auto;
		width: 7rem;
		height: 0.3rem;
		background: var(--pink-color);
	}
	
	#contact .sec02 table {
		margin-bottom: 7rem;
	}
	#contact .sec02 table tr {
		border-top: 1px solid var(--border-color);
		border-bottom: 1px solid var(--border-color);
	}
	#contact .sec02 table tr th {
		width:  270px;
		padding: 3rem 0 3rem 5.7rem;
		vertical-align: top;
	}
	#contact .sec02 table tr th p {
		font-size: 1.8rem;
		font-weight: 900;
		letter-spacing: 0.1em;
		align-items: center;
	}
	#contact .sec02 table tr th .kome {
		margin-left: auto;
		padding: 0.6rem;
		color: #fff;
		font-size: 1.4rem;
		font-weight: 900;
		line-height: 1;
		border-radius: 3px;
		background-color: #D01818;
	}
	#contact .sec02 table tr td {
		width: 77.5%;
		padding: 3rem 5.8rem 3rem 6.8rem;
		font-size: 1.8rem;
		font-weight: 500;
	}
	#contact .sec02 table tr td input[type="text"],
	#contact .sec02 table tr td textarea {
		width: 100%;
		padding: 1rem;
		box-sizing: border-box;
		border: none;
		background-color: #eee;
		font-size: 1.8rem;
		font-weight: 500;
	}
	#contact .sec02 table tr td textarea {
		height: 220px;
	}
	#contact .sec02 table tr .mwform-radio-field {
		margin-right: 4rem;
	}
	#contact .sec02 table tr .mwform-radio-field .mwform-radio-field-text {
		font-size: 1.8rem;
		font-weight: 500;
	}
	.radio-input {
		display: none;
	}
	.radio-input + .mwform-radio-field-text {
		padding-left: 4.1rem;
		position: relative;
		margin-right: 20px;
		font-weight: 700;
	}
	.radio-input + .mwform-radio-field-text::before {
		content: "";
		display: block;
		position: absolute;
		top: -2px;
		left: 0;
		width: 30px;
		height: 30px;
		border: 1px solid #999;
		border-radius: 50%;
	}
	.radio-input:checked + .mwform-radio-field-text {
		color: var(--pink-color);
	}
	.radio-input:checked + .mwform-radio-field-text::after {
		content: "";
		display: block;
		position: absolute;
		top: 6px;
		left: 8px;
		width: 16px;
		height: 16px;
		background: var(--pink-color);
		border-radius: 50%;
	}
	
	#contact .sec02 table tr td .sl {
		font-size: 1.8rem;
		font-weight: 500;
	}
	#contact .sec02 table tr td .sl + .sl {
		margin-top: 1rem;
	}
	#contact .sec02 table tr td .selectbx[type="text"] {
		width: 40%;
	}
	#contact .sec02 table tr td select {
		display: block;
		padding: 0.5rem 2.4rem;
		width: 330px;
		font-size: 1.8rem;
		font-weight: 500;
		line-height: 2.1;
		-webkit-appearance: none;
		appearance: none;
		background: url(../../images/src/common/triangle_pink.svg) no-repeat right 17px center / 14px auto;
	}
	#contact .sec02 table tr td select + select {
		margin-top: 2rem;
	}
	#contact .sec02 .privacy_box {
		margin-bottom: 6rem;
		padding: 3rem 6rem;
		height: 336px;
		overflow-y: scroll;
		border: 1px solid var(--border-color);
	}
	#contact .sec02 .privacy_box h3 {
		margin-bottom: 1.6rem;
		font-size: 2rem;
		font-weight: 900;
		line-height: 2.55;
		letter-spacing: 0.1em;
		text-align: center;
	}
	#contact .sec02 .privacy_box .txt {
		font-size: 1.8rem;
	}
	#contact .sec02 .btn_area {
		justify-content: center;
		gap: 3.6rem;
	}
	#contact .sec02 .btn_area input {
		cursor: pointer;
		padding: 2.4rem 0;
		width: 32rem;
		font-family: "Zen Maru Gothic";
		color: #fff;
		font-size: 2rem;
		font-weight: 900;
		letter-spacing: 0.1em;
		border: none;
		border-radius: 180px;
	}
	#contact .sec02 .btn_area .back_btn {
		background: url(../../images/src/common/arrow_white_left.svg) #777 no-repeat left 1.8rem center;
		box-shadow: 6px 6px 0 #d4d4d4;
	}
	#contact .sec02 .btn_area .send_btn {
		background: url(../../images/src/common/arrow_pink_right.svg) var(--pink-color) no-repeat right 1.8rem center;
		box-shadow: 6px 6px 0 #F3C8CB;
	}
	#contact .sec02 .complete .ttl {
		margin-bottom: 3rem;
		font-size: 2.8rem;
		font-weight: 900;
		line-height: 1.82;
		letter-spacing: 0.1em;
	}
	#contact .sec02 .complete .btn {
		margin: 5rem auto 0;
		width: 32rem;
	}
	#contact .sec02 .complete .btn a {
		display: block;
		width: 100%;
		padding: 2.4rem 0;
		color: #fff;
		font-size: 2rem;
		font-weight: 900;
		text-align: center;
		letter-spacing: 0.1em;
		border: none;
		border-radius: 180px;
		background: url(../../images/src/common/arrow_white_left.svg) #777 no-repeat left 1.8rem center;
		box-shadow: 6px 6px 0 #d4d4d4;
	}
	/* 採用情報 
	----------------*/
	.hero__block.blue .mv_ttl .ttl_en,
	#recruit .ttl_en {
		color: var(--blue-color);
	}
	#recruit .ttl {
		font-size: 3rem;
		font-weight: 900;
	}
	#recruit .sec01::after,
	#company .sec01::after {
		bottom: -20rem;
	}
	#recruit .sec01 .block01 {
		margin-top: 6.7rem;
	}
	#recruit .sec01 .block01 .left_col {
		/*width: 590px;*/
		width: calc(50% - 10px);
	}
	#recruit .sec01 .block01 .ttl_en {
		margin-bottom: 0.6rem;
	}
	#recruit .sec01 .block01 h2 {
		margin-bottom: 3rem;
		font-size: 3.5rem;
		font-weight: 900;
		line-height: 1.46;
		letter-spacing: 0.1rm;
	}
	#recruit .sec01 .block01 .txt {
		font-size: 1.8rem;
	}
	#recruit .sec01 .block01 .img {
		/*width: 562px;*/
		width: calc(50% - 38px);
	}

	#recruit .sec02 {
		margin: 24.3rem auto 12rem;
	}
	#recruit .sec02 .job_ttl {
		position: relative;
		margin: 10rem 0 0;
		padding-left: 1.4rem;
		font-size: 3rem;
		font-weight: 900;
	}
	#recruit .sec02 .job_ttl::before {
		content: '';
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
		left: 0;
		width: 0.4rem;
		height: 90%;
		border-radius: 10px;
		background-color: var(--blue-color);
	}
	#recruit .sec02 table {
		margin-top: 3rem;
	}
	#recruit .sec03 {
		padding: 8rem 0 9rem;
		background: #f5f5f5
	}
	#recruit .sec03 ul {
		margin-top: 6rem;
		justify-content: center;
		gap: 0 6rem;
	}

	
	#recruit .sec02 .job_list {
		margin: 5rem auto 0;
		max-width: 960px;
		width: 100%;
		gap: 0 3rem;
		justify-content: center;
	}
	#recruit .sec02 .job_list li {
		flex: 1;
	}
	#recruit .sec02 .job_list li a {
		position: relative;
		display: block;
		padding: 1rem 0;
		width: 100%;
		color: #fff;
		font-size: 2.2rem;
		font-weight: 900;
		line-height: 2.32;
		letter-spacing: 0.1em;
		text-align: center;
		border-radius: 10px;
		background-color: var(--blue-color);
	}
	#recruit .sec02 .job_list li:last-of-type a {
		padding-right: 5rem;
	}
	#recruit .sec02 .job_list li a::after {
		content: '';
		position: absolute;
		top: 0;
		bottom: 0;
		right: 3rem;
		margin: auto;
		width: 3.8rem;
		height: 3.8rem;
		background: url(../../images/src/common/arrow_blue_btm.svg) no-repeat right center / 100%;
	}

}


@media screen and (max-width:1380px) {
	.top_sec02 .parts .text_block .text_info dl dt {
		width: 20%;
	}
	.top_sec02 .parts .text_block .text_info dl dd {
		width: 74%;
	}
}
/*小さめ画面 */
@media screen and (max-width:1280px) {
	.hero__block .h1_bx {
		left: 1rem;
	}
	.hero__block .img01 {
		width: 67.7rem;
	}
	.hero__block .img01 .ofi {
		height: 637px;

	}
	.hero__block .img04 {
		left: 15.6rem;
	}
	.hero__block::after {
		bottom: -11.5rem;
		width: 100%;
		height: 23.8rem;
		background-image: url(../../images/src/top/hero_animals02_1280.webp);
	}
	#facility .facility_list .parts .faci_add {
		width: 55%;
	}
	#guide .guide_wrap .step_parts .right_col .cta_wrap .box {
		padding: 2rem 1rem;
	}
	#guide .guide_wrap .step_parts .right_col .cta_wrap .box .tel a {
		font-size: 3rem;
	}
}

/*タブレット */
@media screen and (max-width:1180px) {
	.top_sec02 .parts .text_block .text_info dl dt {
		width: 22%;
	}
	.top_sec01 .left_col {
		width: calc(58% - 16px);
	}
	.top_sec01 .btn::after {
		right: 14.5rem;
		width: 8.6rem;
		height: 8.2rem;
	}
}

/*SP用*/
@media screen and (max-width:828px) {
	img { max-width: 100%; height: auto; width: auto; }
	body { min-width: auto !important; overflow: inherit !important; }
	.sp_tac { text-align: center !important; }
	.sp_tar { text-align: right !important; }
	.sp_mb15 { margin-bottom: 15px !important; }
	.sp_mb20 { margin-bottom: 20px !important; }
	.sp_mb30 { margin-bottom: 30px !important; }
	.sp_mb40 { margin-bottom: 40px !important; }
	.sp_mb45 { margin-bottom: 45px !important; }
	.sp_mb50 { margin-bottom: 50px !important; }
	.sp_mb60 { margin-bottom: 60px !important; }
	.sp_mb70 { margin-bottom: 70px !important; }
	.sp_mb80 { margin-bottom: 80px !important; }
	.sp_mb90 { margin-bottom: 90px !important; }
	.sp_mb100 { margin-bottom: 100px !important; }
	div, p, dd, dl, dt, th, td, span, li { box-sizing: border-box; }

	/* メインの日本語フォント 太字 */
	.f_min_bold { font-weight: 700; }
	.f_hira_bold { font-weight: 700; }
	.f_gothic_bold { font-weight: 700; }
	.f_hirago_bold { font-weight: 700; }



	
	.inner_1200,
	.inner_1120 {
		margin: 0 auto;
		width:  auto;
		max-width: initial;
	}
	.ttl_en {
		font-size: 3.623vw;
	}
	h2.ttl_jp {
		font-size: 6.522vw;
	}
	.txt {
		font-size: 3.382vw;
	}

	
	table.tb01 th,
	table.tb01 td {
		display: block;
		width: 100%;
		padding: 0 4.831vw 4.831vw 4.831vw;
		font-size: 3.623vw;
	}
	table.tb01 th {
		width: 100%;
		padding: 4.831vw 4.831vw 1.208vw 4.831vw;
	}

	.wave_sec {
		position: relative;
		background: url(../../images/src/common/sp/section_bg.webp) no-repeat center top / 100%;
		background-size: 100%;
	}
	.wave_sec.inner {
		position: relative;
		background: url(../../images/src/common/sp/section_bg_02.webp) no-repeat center top / 100%;
		background-size: 100%;
	}
	.wave_sec .wave_bg {
		background: url(../../images/src/common/section_wrap_bg.webp);
	}
	.wave_sec::after {
		content:'';
		position: absolute;
		width: 100%;
		height: 17.512vw;
		bottom: 0;
		background: url(../../images/src/common/sp/section_bg_btm.webp) no-repeat left top / 100%;
		z-index: -1;
	}


	/* TOP */
	.hero__block {
		height: 127.536vw;
		background-image: url(../../images/src/top/sp/hero_bg.webp);
		background-position: center top -7vw;
	}
	.hero__block::after {
		bottom: -16vw;
		right: 0;
		width: 84.42vw;
		height: 28.502vw;
		background-image: url(../../images/src/top/sp/hero_animals02.webp);
	}
	.hero__block .hero_image {
		width: auto;
		max-width: initial;
	}
	.hero__block .img01 {
		top: 77.536vw;
		left: 0;
		right: 0;
		margin:0 auto;
		width: 68.478vw;
	}
	.hero__block .birds02 {
		position: absolute;
		right: 3.348vw;
		top: 20.29vw;
		width: 16.667vw;
	}
	.hero__block .img01 .ofi {
		height: auto;
	}
	.hero__block .img04 {
		top: 7.85vw;
		bottom: auto;
		left:  48.188vw;
		width: 34.662vw;
	}
	.hero__block .h1_bx {
		top: 35.729vw;
		left: 2.657vw;
		transform: none;
	}
	.hero__block .h1_bx .birds {
		display: none;
	}
	.hero__block h1 {
		font-size: 5.447vw;
	}
	.hero__block h1 .orange,
	.hero__block h1 .green {
		margin: 0 1.812vw;
		padding: 0 1.932vw;
		font-size: 7.262vw;
		border-radius: 1.47vw;
	}
	
	.hero__block h1 .orange::before,
	.hero__block h1 .orange::after,
	.hero__block h1 .green::before,
	.hero__block h1 .green::after {
		width: 3.502vw;
		height: 2.536vw;
	}
	
	.hero__block h1 .hero_ttl {
		font-size: 9.114vw;
		line-height: 1.3;
	}

	.top_sec01 {
		margin-top: -23vw;
		padding: 42.7vw 0 16vw;
	}
	.top_sec01 .wave_bg {
		padding: 0 4.831vw;
		
	}
	.top_sec01 .wave_bg .inner_1200.flex {
		flex-wrap: wrap
	}
	.top_sec01 .left_col {
		width: auto;
	}
	.top_sec01 .right_col {
		margin-top: 9.179vw;
		width: 82.609vw;
	}
	.top_sec01 .right_col img {
		height: auto;
	}
	.top_sec01 .ttl_en {
		margin-left: 0;
	}
	.top_sec01 .ttl_jp {
		margin-bottom: 6.522vw;
	}
	.top_sec01 .ttl {
		margin-bottom: 6.522vw;
		font-size: 6.522vw;
		line-height: 1.55;
	}
	.top_sec01 .ttl::before,
	.top_sec01 .ttl::after {
		width: 3.502vw;
		height: 2.536vw;
	}
	.top_sec01 .ttl::after {
		bottom: 6vw;
	}
	.top_sec01 .btn {
		margin-top: 8.454vw;
	}
	.top_sec01 .btn::after {
		right: 3.865vw;
		bottom: -1rem;
		width: 19.444vw;
		height: 18.841vw;
	}
	.top_sec01 .btn a {
		padding-left: 10.749vw;
		height: 7.729vw;
		font-size: 3.623vw;
	}
	.top_sec01 .btn a::before {
		width: 7.729vw;
		height: 7.729vw;
	}
	.top_sec02 {
		padding: 2.657vw 4.831vw 10.87vw;
	}
	.top_sec02 .ttl_block h2 {
		margin-bottom: 5.314vw;
	}
	.top_sec02 .ttl_block h2::before {
		left: -7.85vw;
		bottom: 1rem;
		width: 4.106vw;
		height: 7.609vw;
	}
	.top_sec02 .ttl_block h2::after {
		right: -13.527vw;
		bottom: 1rem;
		width: 9.662vw;
		height: 9.179vw;
	}
	.top_sec02 .ttl_block .txt {
		font-size: 3.623vw;
	}
	
	.top_sec02 .parts {
		margin-top: 6.522vw;
	}
	.top_sec02 .parts + .parts {
		padding-top: 9.662vw;
	}
	.top_sec02 .parts .eyecatch {
		order: 1;
		margin-bottom: 4.831vw;
		width: 100%;
	}
	.top_sec02 .parts .eyecatch img {
		height: 68.478vw;
	}
	.top_sec02 .parts .text_block {
		order: 2;
		width: 100%;
	}
	.top_sec02 .parts .text_block .sub_ttl {
		font-size: 3.865vw;
	}
	.top_sec02 .parts .text_block .ttl {
		margin-bottom: 4.831vw;
		font-size: 6.522vw;
		line-height: 1.22;
	}
	.top_sec02 .parts .text_block .text_info {
		margin-bottom: 4.831vw;
		padding: 7.246vw 0 7.246vw 4.831vw;
		border-radius: 1.519vw;
	}
	.top_sec02 .parts .text_block .text_info::before,
	.top_sec02 .parts .text_block .text_info::after,
	.top_sec02 .parts .text_block .text_info .dots::before,
	.top_sec02 .parts .text_block .text_info .dots::after {
		width: 1.824vw;
		height: 1.824vw;
	}
	.top_sec02 .parts .text_block .text_info::before {
		top: 1.824vw;
		left: 1.775vw;
	}
	.top_sec02 .parts .text_block .text_info::after {
		top: 1.824vw;
		right: 1.775vw;
	}
	.top_sec02 .parts .text_block .text_info .dots::before {
		bottom: 1.824vw;
		left: 1.775vw;
	}
	.top_sec02 .parts .text_block .text_info .dots::after {
		bottom: 1.824vw;
		right: 1.775vw;
	}
	.top_sec02 .parts .text_block .text_info dl dt {
		padding-left: 5.918vw;
		width: 17.5vw;
		font-size: 3.382vw;
	}
	.top_sec02 .parts .text_block .text_info dl dt::before {
		top: 1.5vw;
		width: 4.769vw;
		height: 4.769vw;
	}
	.top_sec02 .parts .text_block .text_info dl:nth-of-type(4) dt::before {
		top: 1.5vw;
		width: 5.167vw;
		height: 5.167vw;
	}
	.top_sec02 .parts .text_block .text_info dl dd {
		width: 65.879vw;
		font-size: 3.382vw;
	}
	.top_sec02 .parts .text_block .btn a {
		padding-left: 10.87vw;
		height: 7.729vw;
		font-size: 3.623vw;
	}
	.top_sec02 .parts .text_block .btn a::before {
		width: 7.729vw;
		height: 7.729vw;
	}
	


	/* 下層 */
	.hero__block.inner_wrap {
		height: 75.845vw;
		background: url(../../images/src/top/sp/hero_bg_inner.webp) no-repeat left top / 100%;
	}
	.hero__block.inner_wrap::after {
		left: 9.541vw;
		bottom: 3.2rem;
		width: 81.039vw;
		height: 22.585vw;
		background: url(../../images/src/top/sp/hero_animals_inner.png) no-repeat left bottom / 100%;
	}
	.hero__block.inner_wrap .mv_ttl .ttl_en {
		font-size: 3.382vw;
	}
	.hero__block.inner_wrap .mv_ttl h1 {
		font-size: 4.831vw;
	}

	
	.er404 {
		padding: 12.077vw 0;
	}
	.er404 .ttl {
		margin-bottom: 4.831vw;
        font-size: 3.865vw;
	}
	.er404 .btn {
		margin: 0 auto;
        width: 68.599vw;
	}
	.er404 .btn a {
		padding: 3.865vw 0;
        font-size: 3.865vw;
        border-radius: 21.739vw;
		background: url(../../images/src/common/arrow_white_left.svg) #777 no-repeat left 2.899vw center / 7.729vw;
        box-shadow: 6px 6px 0 #d4d4d4;
    }
	.breadcrumbs {
		margin-right: 5.435vw;
		font-size: 3.382vw;
	}
	.breadcrumbs span {
		font-size: 3.382vw;
	}
	.breadcrumbs span > span {
		padding: 0.5rem 2.053vw;
		font-size: 3.382vw;
		border-radius: 21.739vw;
	}

	
	.wp-pagenavi a,
	.wp-pagenavi .current{
		margin: 0 1rem;
		width: 6.039vw;
		height: 6.039vw;
		font-size: 3.865vw;
	}



	/* グループホームについて 
	-----------------------*/
	#about .sec01 {
		margin-top: -22.343vw;
		padding-top: 22.343vw;
		height: 231.57vw;
		background: url(../../images/src/about/sp/sec01_bg.webp) no-repeat center top / cover;
		z-index: 0;
	}
	#about .sec01 .block01 {
		margin-top: 4.831vw;
		padding: 0 4.831vw;
		height: auto;
	}
	#about .sec01 .block01 .img01_sp {
		margin-left: 0;
		width: 81.884vw;
	}
	#about .sec01 .block01 .img02_sp {
		margin: 8.454vw auto 0;
		width: 64.251vw;
	}
	#about .sec01 .block01 .text_block {
		padding-top: 7.246vw;
		display: block;
		height: auto;
	}
	#about .sec01 .block01 .text_block h2 {
		margin-bottom: 4.831vw;
		font-size: 6.522vw;
		line-height: 1.55;
	}
	#about .sec01 .block01 .text_block h2::before,
	#about .sec01 .block01 .text_block h2::after,
	#about .sec02 h3::before,
	#about .sec02 h3::after {
		width: 3.623vw;
		height: 2.778vw;
	}
	#about .sec01 .block01 .text_block h2::before {
		left: 16vw;
		top: 0;
	}
	#about .sec01 .block01 .text_block h2::after,
	#about .sec02 h3::after  {
		right: 14vw;
		bottom: 6vw;
	}
	#about .sec01 .block01 .text_block .ttl {
		font-size: 3.623vw;
	}
	#about .sec01 .block01 .text_block .ttl span {
		font-size: 5.072vw;
		line-height: 1.58;
	}
	#about .sec02 {
		position: relative;
		margin-top: -43.256vw;
		padding: 24.739vw 4.831vw 13.913vw;
		background: url(../../images/src/about/sp/sec02_bg.webp) no-repeat center top / cover;
	}
	#about .sec02 h3::before {
		left: 16vw;
		top: 0;
	}
	#about .sec02 h3::after {
		right: 18vw;
		bottom: 5vw;
	}
	#about .sec02 h2.ttl_jp {
		font-size: 5.072vw;
	}
	#about .sec02 h3 {
		margin: 6.522vw 0 10.454vw;
		font-size: 6.522vw;
	}
	#about .sec02 .parts {
		padding: 4.831vw;
	}
	#about .sec02 .parts + .parts {
		margin-top: 7.246vw;
	}
	#about .sec02 .parts .img {
		order: 1;
		margin-bottom: 4.831vw;
		width: 100%;
	}
	#about .sec02 .parts .left_col {
		order: 2;
		width: 100%;
	}
	#about .sec02 .parts .left_col .num {
		margin-bottom: 2.053vw;
		padding: 0.242vw 3.623vw;
		font-size: 3.623vw;
		border-radius: 21.739vw;
	}
	#about .sec02 .parts .left_col .ttl {
		margin-bottom: 2.657vw;
		font-size: 5.072vw;
		line-height: 1.57;
	}
	#about .top_sec02 {
		margin-top: 12.9vw;
	}



	/* 施設紹介 */
	#facility .sec01,
	#recruit .sec01,
	#company .sec01,
	#guide .sec01,
	#faq .sec01 {
		margin-top: -21vw;
		padding: 22vw 0 0;
	}
	#facility .wave_sec .wave_bg {
		padding-bottom: 24.155vw;
	}
	#facility .sec01 .block01 {
		margin-bottom: 6.039vw;
		padding-top: 7.367vw;
	}
	#facility .sec01 .block01 h2 {
		font-size: 5.072vw;
		line-height: 1.52;
	}
	#facility .sec01 .block01 h2::before,
	#facility .sec01 .block01 h2::after {
		width: 3.623vw;
		height: 2.778vw;
	}
	#facility .sec01 .block01 h2::before {
		left: -3rem;
		top: 3px;
	}
	#facility .sec01 .block01 h2::after {
		right: 1rem;
		bottom: 3.5rem;
	}
	#facility .facility_list {
		margin: 0 4.831vw 10.145vw;
		gap: 7.246vw 0;
	}
	#facility .facility_list .parts {
		padding: 4.831vw;
		width: 100%;
		border-radius: 1.208vw;
	}
	#facility .facility_list .parts .eyecatch {
		margin-bottom: 3.382vw;
	}
	#facility .facility_list .parts .eyecatch img {
		height: 61.111vw;
	}
	#facility .facility_list .parts .sub_ttl {
		margin-bottom: 0;
		font-size: 3.865vw;
	}
	#facility .facility_list .parts .ttl {
		margin-bottom: 1.449vw;
		font-size: 5.314vw;
		line-height: 1.5;
	}
	#facility .facility_list .parts .faci_add {
		width: 42vw;
		margin-left: -0.8rem;
		padding-left: 6.401vw;
		font-size: 3.623vw;
	}
	#facility .facility_list .parts .faci_add::before {
		width: 6.401vw;
		height: 6.401vw;
	}
	
	#facility .facility_list .parts .empty_room {
		margin-right: 0;
		padding: 0.483vw 3.502vw 0.483vw 1.812vw;
		border-radius: 0.725vw;
		font-size: 3.623vw;
	}
	#facility .facility_list .parts .arrow {
		margin: 6.039vw 0 0 0;
		padding-top: 4.287vw;
		border-top: 1px solid var(--border-color);
		text-align: right;
	}
	#facility .facility_list .parts .arrow span {
		padding-left: 8.696vw;
		font-size: 3.623vw;
	}
	#facility .facility_list .parts .arrow span::before {
		width: 6.522vw;
		height: 6.522vw;
	}
	
	#facility .sec01 .detail.block01 {
		margin: 0 4.831vw 7.246vw;
	}
	#facility .sec01 .detail.block01 h2 {
		margin-bottom: 2.415vw;
		font-size: 6.522vw;
	}
	#facility .sec01 .detail.block01 h2::after {
		right: -3vw;
	}
	#facility .detail.block01 .txt {
		text-align: left;
	}
	#facility .facility_detail {
		margin: 0 4.831vw;
		padding: 6.039vw 4.831vw;
		border-radius: 1.208vw;
	}
	#facility .facility_detail .sub_ttl {
		font-size: 3.865vw;
	}
	#facility .facility_detail h2 {
		font-size: 6.522vw;
		line-height: 1.2;
	}
	#facility .facility_detail h2::after {
		bottom: -4.191vw;
		width: 12.077vw;
		height: 0.604vw;
	}
	#facility .facility_detail .eyecatch {
		margin: 10.266vw auto 3.623vw;
	}
	#facility .facility_detail .eyecatch img {
		max-height: 125.604vw;
		width: 100%;
	}
	#facility .facility_detail .price {
		margin-bottom: 7.246vw;
		padding: 3.623vw 3.623vw 7.246vw;
		border-radius: 1.208vw;
	}
	#facility .facility_detail .price p {
		font-size: 3.623vw;
	}
	#facility .facility_detail .price span {
		font-size: 5.797vw;
	}
	
	#facility .facility_detail .room {
		margin-bottom: 6.039vw;
		gap: 6.039vw 0;
	}
	#facility .facility_detail  .room .room_parts {
		flex: auto;
	}
	#facility .facility_detail .room .circle {
		margin: 0 auto 2.053vw;
		padding-top: 0.5rem;
		width: 11.157vw;
		height: 11.157vw;
		font-size: 6.039vw;
	}

	#facility .facility_detail .room .circle span {
		font-size: 3.865vw;
	}
	#facility .facility_detail .room .room_map img {
		max-height: 125.604vw;
	}
	#facility .facility_detail .gallery {
		margin-bottom: 7.246vw;
		gap: 3.623vw 0;
	}
	#facility .facility_detail .gallery li {
		width: 100%;
	}
	#facility .facility_detail .gallery li img {
		width: 100%;
		height: 52.174vw;
	}
	#facility .facility_detail .text_info {
		margin-bottom: 7.246vw;
		padding: 6.039vw 4.831vw;
		border-radius: 1.208vw;
	}
	#facility .facility_detail .text_info::before,
	#facility .facility_detail .text_info::after,
	#facility .facility_detail .text_info .dots::before,
	#facility .facility_detail .text_info .dots::after {
		width: 1.812vw;
		height: 1.812vw;
	}
	#facility .facility_detail .text_info::before {
		top: 1.812vw;
		left: 1.691vw;
	}
	#facility .facility_detail .text_info::after {
		top: 1.812vw;
		right: 1.691vw;
	}
	#facility .facility_detail .text_info .dots::before {
		bottom: 1.812vw;
		left: 1.691vw;
	}
	#facility .facility_detail .text_info .dots::after {
		bottom: 1.812vw;
		right: 1.691vw;
	}
	#facility .facility_detail .text_info dl dt {
		padding-left: 5.918vw;
		width: 16.7vw;
		font-size: 3.382vw;
	}
	
	#facility .facility_detail .text_info dl dt::before {
		top: 0.6rem;
		width: 4.831vw;
		height: 4.831vw;
	}
	#facility .facility_detail .text_info dl:nth-of-type(4) dt::before {
		top: 0.4rem;
		width: 5.193vw;
		height: 5.193vw;
	}
	#facility .facility_detail .text_info dl dd {
		width: 52vw;
		font-size: 3.382vw;
	}
	
	#facility .facility_detail .g_map iframe {
		width: 100%;
		height: 36.353vw;
	}
	#facility .pdf_btn {
		margin: 9.42vw auto 15.7vw;
		width: 68.599vw;
	}
	#facility .pdf_btn a {
		padding: 3.865vw 0;
		border-radius: 21.739vw;
		box-shadow: 6px 6px 0 #EDE1B5;
	}
	#facility .pdf_btn a span {
		padding-left: 7.85vw;
		font-size: 3.865vw;
	}
	#facility .pdf_btn a span::before {
		width: 4.348vw;
		height: 4.348vw;
	}

	
	#facility .facility_detail table {
		margin: 2.6rem 0 0;
		border: none;
	}
	#facility .facility_detail table th,
	#facility .facility_detail table td {
		display: block;
		width: 100%;
		border: 0.121vw solid var(--border-color);
	}
	#facility .facility_detail table th {
		padding: 1.57vw 3.623vw;
		font-size: 3.623vw;
		line-height: 1.7;
		border-bottom: 0;
	}
	#facility .facility_detail table td {
		padding: 0 3.623vw 2vw;
		text-align: left;
		font-size: 3.623vw;
		border-top: 0;
		border-bottom: 0;
	}
	#facility .facility_detail table tr:last-child td {
		border-bottom: 0.121vw solid var(--border-color);
	}
	#facility .facility_detail table td .kome {
		display: block;
		margin-top: 1vw;
		font-size: 3.14vw;
	}

		/* ご利用案内 
	----------------*/
	#guide .sec01 .wave_bg {
		padding-bottom: 20.531vw;
	}
	#guide .sec01 .inner_btn {
		margin: 6.039vw 4.831vw 13.285vw;
		gap: 0;
		justify-content: space-between;
	}
	#guide .sec01 .inner_btn li a {
		padding: 2.415vw 0 9.903vw;
		width: 43.357vw;
		font-size: 4.348vw;
		line-height: 1.42;
		border-radius: 1.208vw;
	}
	#guide .sec01 .inner_btn li a::after {
		left: 0;
		right: 0;
		top: 10.024vw;
		bottom: auto;
		margin: auto;
		width: 6.039vw;
		height: 6.039vw;
	}
	#guide .guide_wrap h2 {
		font-size: 5.072vw;
	}
	#guide .guide_wrap {
		margin: 0 4.831vw;
	}
	#guide .guide_wrap h3 {
		margin: 6.522vw 0 6.039vw;
		font-size: 5.797vw;
		line-height: 1.75;
	}
	#guide .guide_wrap .parts + .parts {
		margin-top: 12.039vw;
	}
	#guide .guide_wrap .parts {
		padding: 4.831vw;
		width: 100%;
		border-radius: 1.208vw;
	}
	#guide .guide_wrap .parts.sp_pb30 {
		padding-bottom: 12vw;
	}
	#guide .guide_wrap .parts::after {
		top: auto;
		bottom: -8.213vw;
		left: 0;
		right: 0;
		margin: auto;
		width: 10.628vw;
		height: 3.865vw;
		background: url(../../images/src/common/triangle_green_btm.svg) no-repeat center bottom / 100%;
	}
	#guide .guide_wrap .parts .num {
		top: 2.415vw; 
		left: 2.415vw;
		padding: 0.483vw 2.657vw;
		font-size: 3.382vw;
		border-radius: 21.739vw;
	}
	#guide #flow.guide_wrap .parts .img {
		display: flex;
		align-items: center;
		margin-bottom: 3.623vw;
	}
	#guide #flow.guide_wrap .parts .img img {
		width: 40.58vw;
	}
	#guide .guide_wrap .parts .ttl {
		margin: 0;
		width: 50%;
		font-size: 4.589vw;
	}
	#guide .guide_wrap .parts .txt {
		font-size: 3.623vw;
	}
	#guide .guide_wrap .block {
		margin: 14.493vw auto 21.739vw;
	}
	#guide .guide_wrap .block .left_col {
		width: 100%;
	}
	#guide .guide_wrap .block .left_col .ttl {
		margin-bottom: 3.14vw;
		font-size: 4.831vw;
		line-height: 1.27;
	}
	#guide .guide_wrap .block .left_col .txt {
		margin-bottom: 6.039vw;
		font-size: 3.623vw;
		line-height: 1.9;
	}
	#guide .guide_wrap .block .img {
		width: 100%;
	}
	#guide .guide_wrap .step_parts {
		margin-top: 6.039vw;
		padding: 4.831vw;
		width: 100%;
	}
	#guide .guide_wrap .step_parts::after {
		top: auto;
		bottom: -8.213vw;
		left: 0;
		right: 0;
		margin: auto;
		width: 10.628vw;
		height: 3.865vw;
		background: url(../../images/src/common/triangle_green_btm.svg) no-repeat center bottom / 100%;
	}
	#guide .guide_wrap .step_parts .img {
		display: flex;
		margin-top: 7.631vw;
		margin-bottom: 3.623vw;
		width: 100%;
		justify-content: left;
	}
	#guide .guide_wrap .step_parts .img .ttl {
		text-align: left;
	}
	#guide .guide_wrap .step_parts .img img {
		margin: 0 9.662vw;
		width: 14.855vw;
	}
	#guide .guide_wrap .step_parts .right_col {
		width: 100%;
	}
	#guide .guide_wrap .step_parts .right_col .cta_wrap {
		margin-top: 4.831vw;
		gap: 4.831vw 0;
	}
	#guide .guide_wrap .step_parts .right_col .cta_wrap .box {
		padding: 3.623vw 0 5vw;
		width: 100%;
		border-radius: 1.208vw;
	}
	#guide .guide_wrap .step_parts .right_col .cta_wrap .box .sub_ttl {
		margin-bottom: 2.415vw;
		font-size: 3.623vw;
	}
	#guide .guide_wrap .step_parts .right_col .cta_wrap .box .btn {
		width: 68.599vw;
	}
	#guide .guide_wrap .step_parts .right_col .cta_wrap .box .btn a {
		padding: 3.623vw 0;
		border-radius: 21.739vw;
		font-size: 3.865vw;
	}
	#guide .guide_wrap .step_parts .right_col .cta_wrap .box .btn a::before,
	#guide .guide_wrap .step_parts .right_col .cta_wrap .box .btn a::after {
		content: '';
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
	}
	#guide .guide_wrap .step_parts .right_col .cta_wrap .box .btn a::before {
		left: 4.227vw;
		width: 3.744vw;
		height: 3.019vw;
	}
	#guide .guide_wrap .step_parts .right_col .cta_wrap .box .btn a::after {
		right: 2.899vw;
		width: 7.729vw;
		height: 7.729vw;
	}
	#guide .guide_wrap .step_parts .right_col .cta_wrap .box .tel a {
		padding-left: 5.676vw;
		font-size: 7.005vw;
	}
	#guide .guide_wrap .step_parts .right_col .cta_wrap .box .tel a::before {
		width: 4.589vw;
		height: 4.71vw;
	}

	#guide .guide_wrap .step_parts .right_col .green_bx {
		margin-top: 4.831vw;
		padding: 3.623vw 4.831vw;
		border-radius: 1.208vw;
	}
	#guide .guide_wrap .step_parts ul li {
		padding-left: 4.831vw;
		font-size: 3.382vw;
		line-height: 1.9;
	}
	#guide .guide_wrap .step_parts ul li::before {
		top: 2.5vw;
		left: 1.208vw;
		width: 1.449vw;
		height: 1.449vw;
	}
	#guide .guide_wrap .step_parts .lower_wrap {
		margin: 8.454vw 0 0;
		padding: 6.039vw 0 0;
	}
	#guide .guide_wrap .step_parts .lower_wrap .ttl {
		margin-bottom: 2.415vw;
		font-size: 4.106vw;
		width: 100%;
	}
	#guide .guide_wrap .step_parts .lower_wrap .sub_ttl {
		margin-bottom: 4.348vw;
		padding-left: 1.932vw;
		border-left-width: 0.483vw;
		font-size: 3.623vw;
	}
	#guide .guide_wrap .step_parts .lower_wrap ul {
		margin-bottom: 3.623vw;
		gap: 0.121vw 0;
	}
	#guide .guide_wrap .step_parts .lower_wrap ul li {
		width: 48%;
		white-space: nowrap;
	}
	#guide .guide_wrap .step_parts .lower_wrap ul.lst {
		margin-bottom: 0;
	}



	/* 運営会社 
	----------------*/
	#company .sec01 .box {
		position: relative;
		margin: 6.039vw 4.831vw 13.285vw;
		padding: 9.662vw 9.42vw 10.87vw;
		max-width: initial;
		border-radius: 1.208vw;
	}
	#company .sec01 .box::before,
	#company .sec01 .box::after,
	#company .sec01 .box .dots:before,
	#company .sec01 .box .dots:after {
		width: 1.812vw;
		height: 1.812vw;
	}
	#company .sec01 .box::before {
		left: 1.812vw;
		top: 1.812vw;
	}
	#company .sec01 .box::after {
		right: 1.812vw;
		top: 1.812vw;
	}
	#company .sec01 .box .dots::before {
		left: 1.812vw;
		bottom: 1.812vw;
	}
	#company .sec01 .box .dots::after {
		right: 1.812vw;
		bottom: 1.812vw;
	}
	#company .ttl_jp {
		margin-bottom: 7.85vw;
		font-size: 5.072vw;
	}
	#company .sec01 .box .txt {
		line-height: 1.52;
		text-align: left;
	}
	#company .sec01 .box .txt span {
		font-size: 5.072vw;
	}
	#company .txt span::before,
	#company .txt span::after {
		width: 3.623vw;
		height: 2.778vw;
	}
	#company .txt span::before {
		top: -1vw;
		left: -4vw;
	}
	#company .txt span::after {
		bottom: 3vw;
		right: 0;
	}
	#company .sec01 .block {
		padding: 0 4.831vw 7vw;
	}
	#company .sec01 .block .left_col {
		width: 100%;
	}
	#company .sec01 .block .left_col .ttl_jp {
		margin-bottom: 6.039vw;
		font-size: 5.072vw;
		line-height: 1.21;
	}
	#company .sec01 .block .left_col .txt {
		margin-bottom: 6.039vw;
		font-size: 3.623vw;
	}
	#company .sec01 .block .img {
		width: 100%;
	}
	#company .sec02 {
		margin: 26.691vw 4.831vw 15.7vw;
	}
	#company .sec02 iframe {
		width: 100%;
		height: 38.647vw;
	}

	#company .sec01 .wave_bg {
		padding-bottom: 12vw;
	}
	#company .sec01::after {
		display: none;
	}
	#company .sec02 {
		margin: 7.246vw;
		padding: 7.246vw 4.831vw;
		border-radius: 1.208vw;
	}


	/* よくあるご質問 
	----------------*/
	.hero__block.inner_wrap.faqhero {
		height: 75.845vw;
	}
	#faq .block01 {
		padding: 6.039vw 4.831vw 15.7vw;
	}
	#faq .block01 .txt {
		margin-bottom: 4.589vw;
		font-size: 3.623vw;
		line-height: 1.6;
		text-align: left;
	}
	#faq dl {
		padding: 5.556vw 4.831vw;
		border-radius: 1.208vw;
	}
	#faq dl + dl {
		margin-top: 4.831vw;
	}
	#faq dl dt::before {
		top: -1rem;
		width: 8.213vw;
		height: 8.213vw;
	}
	#faq dl dd::before {
		top: 1.5vw;
		font-size: 4.348vw;
	}
	#faq dl dt {
		margin-bottom: 3.623vw;
		padding-left: 9.903vw;
		font-size: 3.865vw; 
	}
	#faq dl dd {
		margin-left: 3.019vw;
		padding-left: 6.763vw;
		font-size: 3.623vw;
		line-height: 1.9;
	}



	/* お問い合わせ 
	----------------*/
	.hero__block.inner_wrap.contacthero {
		padding-top: 16.71vw;
		height: 55.556vw;
	}
	#contact .wave_sec {
		padding: 3rem 0 0;
		background: url(../../images/src/common/cta_bg.webp);
	}
	#contact .wave_sec::after {
		display: none;
	}
	#contact .wave_sec .cta_sec {
		padding-top: 5.797vw;
	}
	#contact .wave_sec .cta_sec .inner_1120 {
		padding-bottom: 4.831vw;
		width: auto;
		justify-content: center;
	}
	#contact .wave_sec .cta_sec .inner_1120 .parts {
		width: 90.338vw;
	}
	#contact .wave_sec .cta_sec .hito01 {
		left: 0;
		width: 19.928vw;
	}
	#contact .wave_sec .cta_sec .hito02 {
		right: 0;
		width: 19.082vw;
	}
	#contact .sec02 {
		margin: 7.246vw 4.831vw 20vw;
	}
	#contact .sec02 h2 {
		margin-bottom: 8.575vw;
		font-size: 4.831vw;
		line-height: 2.1;
	}
	#contact .sec02 h2::after {
		bottom: -0.845vw;
		width: 10.87vw;
		height: 0.483vw;
	}
	
	#contact .sec02 table {
		margin-bottom: 9.662vw;
	}
	#contact .sec02 table tr th {
		display: block;
		width:  100%;
		padding: 4.831vw 0 2.415vw 4.831vw;
	}
	#contact .sec02 table tr th p {
		display: block;
		font-size: 3.623vw;
	}
	#contact .sec02 table tr th .kome {
		margin-left: 2.415vw;
		padding: 0 0.966vw;
		font-size: 2.657vw;
		border-radius: 0.46vw;
	}
	#contact .sec02 table tr td {
		display: block;
		width: 100%;
		padding: 0 4.831vw 4.831vw 4.831vw;
	}
	#contact .sec02 table tr td input[type="text"],
	#contact .sec02 table tr td textarea {
		width: 100%;
		padding: 2.415vw;
		font-size: 3.623vw;
		box-sizing: border-box;
	}
	#contact .sec02 table tr td textarea {
		height: 26.57vw;
	}
	
	#contact .sec02 table tr td .sl {
		font-size: 3.623vw;
	}
	#contact .sec02 table tr td .sl + .sl {
		margin-top: 3vw;
	}
	#contact .sec02 table tr td .selectbx[type="text"] {
		width: 78%;
	}
	#contact .sec02 table tr .mwform-radio-field {
		display: block;
		margin-right: 0;
	}
	.mw_wp_form .horizontal-item + .horizontal-item {
		margin-top: 3vw;
		margin-left: 0;
	}
	#contact .sec02 table tr .mwform-radio-field .mwform-radio-field-text {
		font-size: 3.623vw;
	}
	.radio-input + .mwform-radio-field-text {
		padding-left: 6.401vw;
	}
	.radio-input + .mwform-radio-field-text::before {
		top: 1px;
		width: 4.589vw;
		height: 4.589vw;
	}
	.radio-input:checked + .mwform-radio-field-text::after {
		top: 1.6vw;
		left: 1.25vw;
		width: 2.415vw;
		height: 2.415vw;
	}
	
	#contact .sec02 table tr td select {
		padding: 2.899vw 3.623vw;
		width: 100%;
		font-size: 3.623vw;
		line-height: 1.26;
		-webkit-appearance: none;
		appearance: none;
		background: url(../../images/src/common/triangle_pink.svg) no-repeat right 17px center / 14px auto;
	}
	#contact .sec02 table tr td select + select {
		margin-top: 3.623vw;
	}
	#contact .sec02 .privacy_box {
		margin-bottom: 9.3vw;
		padding: 4.831vw;
		height: 64.251vw;
	}
	#contact .sec02 .privacy_box h3 {
		margin-bottom: 0.725vw;
		font-size: 3.865vw;
		line-height: 1.59;
	}
	#contact .sec02 .privacy_box .txt {
		font-size: 3.623vw;
	}
	#contact .sec02 .btn_area {
		gap: 5.556vw;
	}
	#contact .sec02 .btn_area input {
		padding: 3.865vw 0;
		width: 68.599vw;
		font-size: 3.865vw;
		border-radius: 21.739vw;
	}
	#contact .sec02 .btn_area .back_btn {
		background: url(../../images/src/common/arrow_white_left.svg) #777 no-repeat left 2.899vw center / 7.729vw;
		box-shadow: 6px 6px 0 #d4d4d4;
	}
	#contact .sec02 .btn_area .send_btn {
		background: url(../../images/src/common/arrow_pink_right.svg) var(--pink-color) no-repeat right 2.899vw center / 7.729vw;
		box-shadow: 6px 6px 0 #F3C8CB;
	}

	#contact .sec02 .complete .ttl {
        margin-bottom: 8.575vw;
        font-size: 4.31vw;
        line-height: 2.1;
	}
	#contact .sec02 .complete .btn {
		margin: 6vw auto 0;
		width: 68.599vw;
	}
	#contact .sec02 .complete .btn a {
        padding: 3.865vw 0;
        font-size: 3.865vw;
        border-radius: 21.739vw;
        background: url(../../images/src/common/arrow_white_left.svg) #777 no-repeat left 2.899vw center / 7.729vw;
        box-shadow: 6px 6px 0 #d4d4d4;
    }

	/* 採用情報 
	----------------*/
	.hero__block.inner_wrap.recruithero {
		height: 75.845vw;
	}
	#recruit .sec02 {
		margin: 25.845vw 4.831vw 14.493vw;
	}

	#recruit .sec01::after,
	#company .sec01::after {
		bottom: -16vw;
	}
	#recruit .sec01 .block01 {
		margin: 6.039vw 4.831vw 0;
	}
	#recruit .sec01 .block01 .left_col {
		width: auto;
	}
	#recruit .sec01 .block01 .ttl_en {
		margin-bottom: 2.536vw;
	}
	#recruit .sec01 .block01 h2 {
		margin-bottom: 6.039vw;
		font-size: 6.039vw;
		line-height: 1.02;
	}
	#recruit .sec01 .block01 .txt {
		font-size: 3.623vw;
	}
	#recruit .sec01 .block01 .img {
		margin-top: 6.039vw;
		width: 100%;
	}

	#recruit .sec02 {
		margin: 25.845vw 4.831vw 14.493vw;
	}
	#recruit .ttl {
		font-size: 5.072vw;
	}
	#recruit .sec02 .job_ttl {
		margin: 7.246vw 0 0;
		font-size: 5.072vw;
	}
	#recruit .sec02 .job_ttl::before {
		width: 0.483vw;
		border-radius: 1.208vw;
	}
	#recruit .sec02 table {
		margin-top: 3.623vw;
	}
	#recruit .sec03 {
		padding: 9.662vw 4.831vw 10.628vw;
	}
	#recruit .sec03 ul {
		margin-top: 7.246vw;
		gap: 6.039vw 0;
	}

	#recruit .sec02 .job_list {
		margin: 6.039vw auto 0;
		max-width: initial;
		gap: 0 3.502vw;
	}
	#recruit .sec02 .job_list li a {
		padding: 4.227vw 0 0;
		width: 100%;
		height: 20.773vw;
		font-size: 3.623vw;
		line-height: 1.26;
		border-radius: 1.208vw;
	}
	#recruit .sec02 .job_list li:last-of-type a {
		padding-right: 0;
		padding-top: 2vw;
	}
	#recruit .sec02 .job_list li a::after {
		top: auto;
		bottom: 2.053vw;
		right: 0;
		left: 0;
		width: 6.039vw;
		height: 6.039vw;
	}




}


/* pcのみのhoverアクションはここ */
@media (hover: hover) and (pointer: fine) {
	a:hover {
	  opacity: 0.7
	}
	.breadcrumbs span a:hover span {
		text-decoration: none;
	}
	
	.wp-pagenavi a:hover {
		background: var(--orange-color);
		color: #fff;
	}
	.top_sec01 .btn a:hover {
		color: var(--green-color);
	}
	
	.top_sec02 .parts .text_block .btn a:hover {
		color: var(--orange-color);
	}
	
	#facility .facility_list .parts a:hover .arrow span {
		color: var(--orange-color);
	}
	.top_sec01 .btn a:hover,
	.top_sec02 .parts .text_block .btn a:hover,
	#about .parts a:hover {
		opacity: 1;
	}
}
  
 /*IE11用に以下のコードも追加*/
  @media (-ms-high-contrast: none), (-ms-high-contrast: active) {
	a:hover {
	  opacity: 0.7
	}
}



/* 印刷用 */
@media print {
	body { zoom: 0.6; -webkit-print-color-adjust: exact; }
}

/* 印刷用 IE10以上 */
@media print and (-ms-high-contrast:none) {
	@page { size: A4; margin: 12.7mm 9.7mm; }
	body { zoom: 1.8; width: 1200px; transform: scale(0.5); transform-origin: 0 0; }
}