@charset "UTF-8";
/* CSS Document */

@font-face {
	font-family: "YuGothic M";
	src: local("Yu Gothic Medium");
}

/* =================================
reset
================================= */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	vertical-align: baseline;
}
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, main {
	display: block;
}

body{ margin:0px; padding:0px;color:#4d4d4d;overflow:hidden;}
p{ margin:0px; padding:0px}
a{color:#4d4d4d;}

img{
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
	image-rendering: -webkit-optimize-contrast;
}
*a:hover{
	text-decoration: none;
}
a img{
	transition : all 0.5s ease 0s;
}

/* ----------------------------------------------------------------------
 電話番号リンク禁止
---------------------------------------------------------------------- */
@media (min-width: 751px) {
	a[href*="tel:"] {
		pointer-events: none;
		cursor: default;
		text-decoration: none;
	}
}
@media (max-width: 750px){
	a[href*="tel:"]{
		text-decoration: none;
		color: inherit;
	}
}

/* ----------------------------------------------------------------------
inner
---------------------------------------------------------------------- */
@media only screen and (min-width: 1200px),print {
	.inner{
		width: 1200px;
	}
}
.innerOrigin{
	width:calc(100% - 30px);
	max-width:1200px;
	margin-left: auto;
	margin-right: auto;
}
.inner960{
	max-width:960px;
	width:calc(100% - 30px);
	margin-left: auto;
	margin-right: auto;
}
.inner768{
	max-width:768px;
	width:calc(100% - 30px);
	margin-left: auto;
	margin-right: auto;
}

/* ----------------------------------------------------------------------
flexbox
---------------------------------------------------------------------- */
.flexOrigin{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: stretch;    /*全ての要素の高さを揃える*/
}
.space-between{
	justify-content: space-between; /*均等に間隔をあける*/
}
.flex-start{
	justify-content: flex-start;/*要素を左寄せ*/
}
.flex-wrap{
	flex-wrap: wrap; /*flex繰り返し*/
}
.row-reverse{
	flex-direction:row-reverse;	/*flex逆順*/
}
@media screen and (max-width:767px)  {
	.flex-block{
		display: block; /*スマホ時フレックス解除*/
	}
}

/* ----------------------------------------------------------------------
float
---------------------------------------------------------------------- */
.left,.leftPc{
	float:left;
}
.right,.rightPc{
	float:right;
}

@media screen and (max-width:750px)  {
	.leftPc,.rightPc{
		width:100%;
	}
}

/*クリアフィックス*/
.clearfix:after{
	content:"";
	display:block;
	clear:both;
}

/* ----------------------------------------------------------------------
タブレット以上のみ表示
---------------------------------------------------------------------- */

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

/* ----------------------------------------------------------------------
スマホ以下のみ表示
---------------------------------------------------------------------- */
@media screen and (min-width: 768px),print {
	.sp_only{
		display:none !important;
	}
}

/* ----------------------------------------------------------------------
フォント（%）
---------------------------------------------------------------------- */
.font50 {
	font-size: 50% ;
}
.font60 {
	font-size: 60% ;
}
.font70 {
	font-size: 70% ;
}
.font80 {
	font-size: 80% ;
}
.font90 {
	font-size: 90% ;
}
.font100 {
	font-size: 100% ;
}
.font110 {
	font-size: 110% ;
}
.font120 {
	font-size: 120% ;
}
.font130 {
	font-size: 130% ;
}
.font150 {
	font-size: 150% ;
}
.font180 {
	font-size: 180% ;
}
.font200 {
	font-size: 200% ;
}
.font230 {
	font-size: 230% ;
}
.font250 {
	font-size: 250% ;
}

/* ----------------------------------------------------------------------
フォント（px）
---------------------------------------------------------------------- */
.font12px{
	font-size: 12px ;
}
.font14px{
	font-size: 14px ;
}
.font16px{
	font-size: 16px ;
}
.font18px{
	font-size: 18px ;
}
.font20px{
	font-size: 20px ;
}
.font25px{
	font-size: 25px ;
}
.font30px{
	font-size: 30px ;
}
.font35px{
	font-size: 35px ;
}
.font40px{
	font-size: 40px ;
}
.font45px{
	font-size: 45px ;
}
@media screen and (min-width: 768px) {
	.font12-14px{
		font-size: 14px ;
	}
	.font14-16px{
		font-size: 16px ;
	}
	.font15-20px{
		font-size: 20px ;
	}
	.font15-18px{
		font-size: 18px ;
	}
	.font16-18px{
		font-size: 18px ;
	}
	.font16-20px{
		font-size: 20px ;
	}
	.font18-20px{
		font-size: 20px ;
	}
	.font18-25px{
		font-size: 25px ;
	}
	.font18-22px{
		font-size: 22px ;
	}
	.font20-22px{
		font-size: 22px ;
	}
	.font20-25px{
		font-size: 25px ;
	}
	.font20-30px{
		font-size: 30px ;
	}
	.font22-25px{
		font-size: 25px ;
	}
	.font22-30px{
		font-size: 30px ;
	}
	.font25-30px{
		font-size: 30px ;
	}
	.font28-32px{
		font-size: 32px ;
	}
	.font30-35px{
		font-size: 35px ;
	}
	.font30-40px{
		font-size: 40px ;
	}
}
@media screen and (max-width: 767px) {
	.font12-14px{
		font-size: 12px ;
	}
	.font14-16px{
		font-size: 14px ;
	}
	.font15-20px{
		font-size: 15px ;
	}
	.font15-18px{
		font-size: 15px ;
	}
	.font16-18px{
		font-size: 16px ;
	}
	.font16-20px{
		font-size: 16px ;
	}
	.font18-20px{
		font-size: 18px ;
	}
	.font18-25px{
		font-size: 18px ;
	}
	.font18-22px{
		font-size: 18px ;
	}
	.font20-22px{
		font-size: 20px ;
	}
	.font20-25px{
		font-size: 20px ;
	}
	.font22-25px{
		font-size: 22px ;
	}
	.font20-30px{
		font-size: 20px ;
	}
	.font22-30px{
		font-size: 22px ;
	}
	.font25-30px{
		font-size: 25px ;
	}
	.font28-32px{
		font-size: 28px ;
	}
	.font30-35px{
		font-size: 30px ;
	}
	.font30-40px{
		font-size: 30px ;
	}
}

/* ----------------------------------------------------------------------
フォントファミリー
---------------------------------------------------------------------- */

.yu_font{
	font-family:"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;
}
.yugo_font{
	font-family: "游ゴシック体", YuGothic, "YuGothic M", sans-serif;
}

/* ----------------------------------------------------------------------
文字詰め
---------------------------------------------------------------------- */
.palt {
	font-feature-settings: "palt";
}

/* ----------------------------------------------------------------------
Adobe Font
---------------------------------------------------------------------- */
.notoR_font{
	font-family: "noto-sans", sans-serif;
	font-weight: 400;
	font-style: normal;
}
.notoM_font{
	font-family: "noto-sans", sans-serif;
	font-weight: 500;
	font-style: normal;
}
.notoB_font{
	font-family: "noto-sans", sans-serif;
	font-weight: 700;
	font-style: normal;
}
.m1R_font{
	font-family: m-plus-rounded-1p, sans-serif;
	font-weight: 400;
	font-style: normal;
}
.m1B_font{
	font-family: m-plus-rounded-1p, sans-serif;
	font-weight: 700;
	font-style: normal;
}

/* ----------------------------------------------------------------------
行間調整
---------------------------------------------------------------------- */
.lh10{
	line-height:1.0em;
}
.lh12{
	line-height:1.2em;
}
.lh15{
	line-height:1.5em;
}
.lh18{
	line-height:1.8em;
}
.lh20{
	line-height:2em;
}
.lh24{
	line-height:2.4em;
}

/* ----------------------------------------------------------------------
文字揃え
---------------------------------------------------------------------- */
.txtCenter{
	text-align:center;
}
.txtLeft{
	text-align:left;
}
.txtRight{
	text-align:right;
}

/* ----------------------------------------------------------------------
文字色
---------------------------------------------------------------------- */
.white{
	color:#fff;
}
.blk{
	color:#333;
}
.yellow{
	color:#fcd13e;
}
.orange{
	color:#f29600;
}
.pink{
	color:#f2aa9e;
}
.brown{
	color:#c3af97;
}

/* ----------------------------------------------------------------------
文字スタイル（ウエイト）
---------------------------------------------------------------------- */
.bold{
	font-weight: bold;
}
.normal{
	font-weight: normal;
}

/* ----------------------------------------------------------------------
文字間
---------------------------------------------------------------------- */
.ls01{
	letter-spacing: 0.1em;
}
.ls02{
	letter-spacing: 0.2em;
}

/* ----------------------------------------------------------------------
※印
---------------------------------------------------------------------- */
.kome{
	padding-left:1em;
	text-indent:-1em;
}

.komeUl{
	list-style:none;
}
.komeUl li{
	padding-left:1.2em;
	text-indent:-1.2em;
}
.komeUl li::before{
	content:"※";
	margin-right:0.2em;
}

/* ----------------------------------------------------------------------
PC・スマホ・タブレットのみ改行
---------------------------------------------------------------------- */

@media print, screen and (min-width: 768px) {
	.kaigyouSp {
		display: none;
	}
}
@media screen and (max-width: 767px) {
	.kaigyouPc {
		display: none;
	}
}

/* ----------------------------------------------------------------------
マーカーアニメーション
---------------------------------------------------------------------- */ 

.marker-animation.active{
	background-position: -100% .5em;
}
.marker-animation {
	background-repeat: repeat-x;
	background-size: 200% .8em;
	background-position: 0 .5em;
	transition: all 2s ease;
	font-weight:bold;
}
.marker-animation01{/*黄色*/
	background-image: -webkit-linear-gradient(left, transparent 50%, rgb(255,255,0) 50%);
	background-image: -moz-linear-gradient(left, transparent 50%, rgb(255,255,0) 50%);
	background-image: -ms-linear-gradient(left, transparent 50%, rgb(255,255,0) 50%);
	background-image: -o-linear-gradient(left, transparent 50%, rgb(255,255,0) 50%);
	background-image: linear-gradient(left, transparent 50%, rgb(255,255,0) 50%);
}

/* ----------------------------------------------------------------------
margin・padding
---------------------------------------------------------------------- */
/*margin top*/
.mt00 {
	margin-top: 0px;
}
.mt05 {
	margin-top: 5px;
}
.mt10 {
	margin-top: 10px;
}
.mt15 {
	margin-top: 15px;
}
.mt20 {
	margin-top: 20px;
}
.mt25 {
	margin-top: 25px;
}
.mt30 {
	margin-top: 30px;
}
.mt35 {
	margin-top: 35px;
}
.mt40 {
	margin-top: 40px;
}
.mt45 {
	margin-top: 45px;
}
.mt50 {
	margin-top: 50px;
}
.mt80 {
	margin-top: 80px;
}
.mt100 {
	margin-top: 100px;
}
/*margin bottom*/
.mb00 {
	margin-bottom: 0px;
}
.mb05 {
	margin-bottom: 5px;
}
.mb10 {
	margin-bottom: 10px;
}
.mb15 {
	margin-bottom: 15px;
}
.mb20 {
	margin-bottom: 20px;
}
.mb25 {
	margin-bottom: 25px;
}
.mb30 {
	margin-bottom: 30px;
}
.mb35 {
	margin-bottom: 35px;
}
.mb40 {
	margin-bottom: 40px;
}
.mb45 {
	margin-bottom: 45px;
}
.mb50 {
	margin-bottom: 50px;
}
.mb80 {
	margin-bottom: 80px;
}
.mb100 {
	margin-bottom: 100px;
}
/*margin left*/
.ml05{
	margin-left: 5px;
}
.ml10 {
	margin-left: 10px;
}
.ml15 {
	margin-left: 15px;
}
/*margin right*/
.mr30 {
	margin-right: 30px;
}
/*padding top*/
.pt05 {
	padding-top: 5px;
}
.pt10 {
	padding-top: 10px;
}
.pt15 {
	padding-top: 15px;
}
.pt20 {
	padding-top: 20px;
}
.pt25 {
	padding-top: 25px;
}
.pt30 {
	padding-top: 30px;
}
.pt35 {
	padding-top: 35px;
}
.pt40 {
	padding-top: 40px;
}
.pt45 {
	padding-top: 45px;
}
.pt50 {
	padding-top: 50px;
}
.pt80 {
	padding-top: 80px;
}
.pt100 {
	padding-top: 100px;
}
/*padding bottom*/
.pb05 {
	padding-bottom: 5px;
}
.pb10 {
	padding-bottom: 10px;
}
.pb15 {
	padding-bottom: 15px;
}
.pb20 {
	padding-bottom: 20px;
}
.pb25 {
	padding-bottom: 25px;
}
.pb30 {
	padding-bottom: 30px;
}
.pb35 {
	padding-bottom: 35px;
}
.pb40 {
	padding-bottom: 40px;
}
.pb45 {
	padding-bottom: 45px;
}
.pb50 {
	padding-bottom: 50px;
}
.pb80 {
	padding-bottom: 80px;
}
.pb100 {
	padding-bottom: 100px;
}
.pd10{
	padding: 10px;
}
.pd15{
	padding: 15px;
}
.pd20{
	padding: 20px;
}
.pd25{
	padding: 25px;
}
.pd30{
	padding: 30px;
}

/* ----------------------------------------------------------------------
画像
---------------------------------------------------------------------- */
img.img100{
	width:100%;
	display:block;
}
img.imgCenter{
	max-width: 100%;
	display:block;
	margin-left:auto;
	margin-right:auto;
}
img.imgLeft{
	max-width: 100%;
	display:block;
	margin-right:auto;
}
img.imgRight{
	max-width: 100%;
	display:block;
	margin-left:auto;
}

/* ----------------------------------------------------------------------
背景色
---------------------------------------------------------------------- */
.bgBeige{
	background:#f4f0e9;
}

/* ----------------------------------------------------------------------
 ページ内リンク
---------------------------------------------------------------------- */
@media screen and (min-width: 1201px){
	.scroll_point {
	 scroll-margin-top: 55px;
	}
}
@media screen and (max-width: 1200px){
	 .scroll_point {
	 scroll-margin-top: 0;
	}
}

/* ----------------------------------------------------------------------
 スクロールフェード
---------------------------------------------------------------------- */
.fade {
	opacity: 0;
	transform: translateY(50px);
}
.fade01 {
	transition: opacity 1.5s, transform 1s;	
}
.fade02 {
	transition: opacity 1.5s, transform 1s;
	transition-delay: 0.1s;
}
.fade03 {
	transition: opacity 1.5s, transform 1s;	
	transition-delay: 0.2s;
}
.fade04 {
	transition: opacity 1.5s, transform 1s;		
	transition-delay: 0.3s;
}
.fade.active {
	opacity: 1;
	transform: translateY(0px);
}


/* ----------------------------------------------------------------------
 ヘッダー
---------------------------------------------------------------------- */
.header-bar-fixed{
	box-shadow:none;
}
.innerHead{
	width:100%;
	max-width:1920px;
	margin-left: auto;
	margin-right: auto;
}
.header-bar-top{
	position:relative;
	width:100%;
}
.fixed_header{
	position: fixed;
	background:rgba(66,33,11,0.5);
	top: 0;
	left: 0;
	z-index:100;
	height:155px;
}
@media only screen and (max-width: 1200px), all{
	.header-bar{
		box-shadow:none;
		background:none;
		border-bottom:none;
	}
	.global-nav-button{
		border-left:none;
	}
}
@media only screen and (max-width: 1200px){
	.fixed_header{
		height:55px;
	}
}
@media only screen and (max-width: 1200px) {
	.global-nav-button:before{
		color:#fff;
	}
}
.head_top{
	position:relative;
}
@media screen and (min-width: 1201px),print {
	.head_top{
		max-width:1920px;
		width:100%;
		height:100px;
		margin:0 auto;
	}
}
.head_logo{
	position:relative;
}
.logo-image{
	position:absolute;
	display:block;
}
.header-bar-inner{
	display:block;
}
@media screen and (min-width: 1201px),print {
	/*ヘッダー部分*/
	.header-bar{
		height:155px;
		background:rgba(255,255,255,0.8);
	}
	.header-bar-fixed ~ .signage{
		margin-top:0;
	}
	/*ロゴ*/
	.logo-image{
		top:10px;
	}
	.logo{
		width:300px;
		height:60px;
		left:15px;
	}
	/*グローバルメニュー */
	.global-nav{
		text-align:center;
		margin-left:auto;
		margin-right:auto;
		float:none;
		height:55px;
	}
	.global-nav ul.menu {
		display:inline-block;
	}
	.global-nav > ul > li{
		font-weight: bold;
	}
	.global-nav  ul  li a{
		font-family: "century-gothic", sans-serif;
		font-weight: 700;
		font-style: normal;
		font-size:16px;
		letter-spacing:0.1em;
	}
	.global-nav > ul > li > a{
		line-height:55px;
		padding: 0 25px;
	}
	.global-nav .sub-menu a{
		background:#000;/*サブメニュー背景色*/
		width:220px;
	}
	.global-nav .sub-menu .current-menu-item > a{
		color:#fff;
	}
	.global-nav .sub-menu a:hover{
		background:#333;
	}
	/*キービジュアル*/
	.header-bar-fixed ~ .top-slider-wrapper{
		margin-top:155px;
	}
}

@media screen and (max-width: 1200px) {
	/*ヘッダー部分*/
	.header-bar{
		background:rgba(255,255,255,0.8);
		border-bottom:none;
		box-shadow:none;
	}
	.header-bar-fixed ~ .signage{
		margin-top:0;
	}
	/*ロゴ*/
	.logo{
		top:7.5px;
		width:180px;
	}
	.logo img{
		display:block;
		width:100%;
	}
	/*グローバルナビ*/
	.global-nav-button{
		border-left:none;
		cursor:pointer;
	}
	.global-nav-button::before{
		color:#333;/*ハンバーガーアイコン色*/
	}
	.global-nav a {
		font-size: 14px;
		font-weight:bold;
		background:#7e6b56;/*グローバルナビ背景色*/
	}
	.global-nav a:hover{
		background:#c7b299;/*グローバルナビホバー時背景色*/
	}	
	.global-nav .sub-menu a{
		background:#7e6b56;/*サブメニュー背景色*/
	}
}

@media screen and (max-width: 750px) {
	/*ロゴ*/
	.logo{
		top: 10.5px;
		width:150px;
	}
}

/* ----------------------------------------------------------------------
ヘッダーインフォメーション
---------------------------------------------------------------------- */
.head_info{
	float: right;
}
.head_info_pc{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
	justify-content: space-between;
	width:470px;
	height: 100px;
}
p.headTel{
	font-size:40px;
	line-height:1;
}
p.headTel::before{
	position:relative;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f095";
	top:-0.1em;
	font-size:75%;
	margin-right:0.2em;
}
.headInfoMail{
	width:120px;
	border-radius:0 0 0 20px;
	overflow:hidden;
}
.headInfoMail img{
	display:block;
	width:40px;
	margin:0 auto;
}
.headInfoMail a{
	display:flex;
	align-items:center;
	width:100%;
	height:100px;
	position:relative;
	text-decoration:none;
	text-align:center;
	z-index:0;
	color:#fff;
}
.headInfoMail a div{
	width:100%;
}
.headInfoMail a::before{
	content:"";
	width:100%;
	height:100%;
	position:absolute;
	z-index:-1;
	top:0;
	left:0;
	transition:0.5s;
	background:linear-gradient(#fcd13e,#f29600);
}
.headInfoMail a::after{
	content:"";
	width:100%;
	height:100%;
	position:absolute;
	z-index:-2;
	top:0;
	left:0;
	background:linear-gradient(#c7b299,#f4f0e9);
}
.headInfoMail a:hover::before{
	opacity:0;
}

@media screen and (min-width: 1201px),print {
	.head_info_sp{
		display:none;
	}
}
@media screen and (max-width: 1200px) {
	.head_info{
		float: none;
		position:absolute;
		top: 5px;
		right:60px;
		width:270px;
	}
	.head_info_sp{
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	.head_info_pc{
		display:none;
	}
	.headInfoMail{
		width:45px;
		border-radius:50%;
	}
	.headInfoMail a{
		height:45px;
	}
	.headInfoMail img{
		width:25px;
	}
}
@media screen and (min-width: 750px){
	.head_info_sp .headInfoTel a{
		display:none;
	}
	.head_info_sp p.headTel{
		font-size:25px;
	}
}
@media screen and (max-width: 750px){
	.head_info{
		width:100px;
	}
	.head_info_sp .headTel{
		display:none;
	}
	.head_info_sp .headInfoTel a{
		display:flex;
		align-items:center;
		justify-content:center;
		color:#fcd13e;
		font-size:20px;
		background:#fff;
		width:45px;
		height:45px;
		border-radius:50%;
		border:2px #fcd13e solid;
		box-sizing:border-box;
	}
}

/* ----------------------------------------------------------------------
グローバルメニュー
---------------------------------------------------------------------- */
.global-nav .current-menu-item > a{
	color:#fff;
}
.global-nav  ul  li  a:hover{
	color:#fcd13e;
}
.global-nav  ul  li  a{
	font-family: m-plus-rounded-1p, sans-serif;
	font-weight: 700;
	font-style: normal;
	letter-spacing:0.1em;
}
.global-nav-button::before{
	color:#fff;
}
@media only screen and (max-width: 1200px) {
	.header-bar-fixed .global-nav{
		top: 55px;
	}
}

/* ----------------------------------------------------------------------
メインビジュアル
---------------------------------------------------------------------- */
.swiper-wrapper,
.swiper-slide {
  margin: 0;
  padding: 0;
}
.header-bar-fixed ~ .top-slider-wrapper {
	margin-top: 0;
}
.swiper{
	position:relative;
	z-index:1;
}
/* スライドの動き等速 */
.swiper-wrapper {
	transition-timing-function: linear;
}
/* 画像のサイズ調整 */
.swiper-slide{
	width: 100%;
	height: 100svh;
}
.swiper-slide img {
	object-fit:cover;
	width: 100%;
	height: 100%;
}
.topPage{
	position:relative;
	top:-2px;
}
.mvTxt{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	width:100%;
	z-index:3;
}
.mvTxtInner{
	width:calc(100% - 40px);
	max-width:1200px;
	margin:0 auto;
}
img.mvLogo{
	display:block;
	width:73px;
	margin:0 auto;
}
.mvTxtInner h2{
	font-size:30px;
}
.mvTxtInner h2 span{
	font-size:70%;
}
.mvTxtInner p{
	font-size:18px;
}
img.mvBottom{
	position:absolute;
	z-index:2;
	display:block;
	width:100%;
	left:0;
	bottom:-1px;
}
@media only screen and (max-width: 768px) {
	.swiper-slide{
		height: 67svh;
	}
	.mvTxtInner h2{
		font-size:28px;
	}
	.mvTxtInner p{
		font-size:16px;
	}
}

/* ----------------------------------------------------------------------
signage
---------------------------------------------------------------------- */
@media screen and (min-width: 1201px),print{
	.signage {
		height: 500px;
	}
}
.signage-content {
    -webkit-animation: fadeIn 1s ease 0.5s;
    -moz-animation: fadeIn 1s ease 0.5s;
    -ms-animation: fadeIn 1s ease 0.5s;
    -o-animation: fadeIn 1s ease 0.5s;
    animation: fadeIn 1s ease 0.5s;
	animation-fill-mode: both;
}
img.signageWave{
	position:absolute;
	display:block;
	bottom:-1px;
	left:0;
	width:100%;
}
.signageTxt{
	width:calc(100% - 30px);
	max-width:1200px;
	margin:0 auto;
}
.signageTxt p{
	font-size:45px;
	line-height:1.5em;
}
@media screen and (max-width: 767px){
	.signageTxt p{
		font-size:35px;
	}
}

/* ----------------------------------------------------------------------
パンくずリスト
---------------------------------------------------------------------- */
.breadcrumb-wrapper{
	position:relative;
}

/* ----------------------------------------------------------------------
共通項目
---------------------------------------------------------------------- */
/*コンテンツ*/
.contents{
	margin-bottom:80px;
}
@media screen and (max-width: 767px){
	.contents{
		margin-bottom:60px;
	}
}

/*タイトル*/
.title{
	margin-bottom:60px;
}
@media screen and (max-width: 767px){
	.title{
		margin-bottom:50px;
	}
}


/* ----------------------------------------------------------------------
トップページ
---------------------------------------------------------------------- */

/*トップページ用ボタン*/
a.topBtn{
	position:relative;
	display:inline-block;
	text-align:center;
	height:60px;
	line-height:60px;
	width:100%;
	max-width:280px;
}
a.topBtn span{
	position:relative;
	display:inline-block;
	width:100%;
	height:100%;
	z-index:3;
}
a.topBtn span::after{
	position:absolute;
	font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f054";
	top: 50%;
    right:15px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	transition : all 0.5s ease 0s;
}
a.topBtn::before,
a.topBtn::after{
	content:"";
	width:100%;
	height:100%;
	box-sizing:border-box;
	position:absolute;
	border-radius:100px;
}
a.topBtn::before{
	border:2px #4d4d4d solid;
	left:0;
	top:0;
	z-index:2;
}
a.topBtn::after{
	background:#fcd13e;
	left:5px;
	top:5px;
	z-index:1;
	transition : all 0.5s ease 0s;
}
a.topBtn:hover::after{
	left:0;
	top:0;
}
a.topBtn:hover span::after{
	right:10px;
}

/*ごあいさつ*/
.topGreeting{
	padding-bottom:80px;
	background:#f4f0e9;
}
@media screen and (max-width: 767px){
	.topGreeting{
		padding-bottom:60px;
	}
}
img.topGreetingIllust{
	display:block;
	width:100%;
}
.topGreeting .flexOrigin{
	align-items:center;
	width:100%;
	max-width:1920px;
	margin:0 auto;
}
.topGreetingTxt,
.topGreetingImg{
	width:50%;
}
@media screen and (min-width: 961px), print {
    .topGreetingTxtInner {
        max-width: 600px;
        width: calc(100% - 25px);
        margin-left: auto;
        padding: 0 50px 0 0;
        box-sizing: border-box;
    }
}
.topGreetingTxt h3 span{
	display: inline-block;
	background: #fcd13e;
	background-image: linear-gradient(90deg, #fcd13e, #f26e84);
	color: #fff;
	padding: 0 10px;
	box-sizing: border-box;
}
.topGreetingTxt h3 span:first-child{
	margin-bottom:0.5em;
}
.topGreetingImg01,
.topGreetingImg02{
	position:relative;
	margin-left:auto;
	height:350px;
}
.topGreetingImg01::after,
.topGreetingImg02::after{
	content:"";
	background:#fcd13e;
	width:100%;
	height:100%;
	position:absolute;
	z-index:2;
	right:0;
	top:10px;
	border-radius:15px 0 0 15px;
}
.topGreetingImg01{
	width:100%;
	margin-bottom:30px;
}
.topGreetingImg02{
	width:calc(100% - 50px);
}
.topGreetingImg01 img,
.topGreetingImg02 img{
	position:relative;
	object-fit:cover;
	z-index:3;
	width:100%;
	height:100%;
	border-radius:15px 0 0 15px;
}
@media screen and (max-width: 960px){
	.topGreeting .flexOrigin{
		display:block;
	}
	.topGreetingTxt{
		width: calc(100% - 30px);
        max-width: 600px;
        margin: 0 auto 30px;
	}
	.topGreetingImg{
		width:100%;
	}
	.topGreetingImg01{
		width:calc(100% - 30px);
	}
	.topGreetingImg01,
	.topGreetingImg02{
		height:250px;
	}
}
@media screen and (max-width: 480px){
	.topGreetingImg01,
	.topGreetingImg02{
		height:200px;
	}
}

/*お知らせ*/
.topNewsInner{
	display:flex;
	justify-content:space-between;
	align-items:start;
}
.topNewsTit{
	width:250px;
}
a.newsLink{
	display:inline-block;
	border-bottom:1px #998675 dashed;
	padding-bottom:0.3em;
	transition : all 0.5s ease 0s;
}
a.newsLink:hover{
	color:#ccc;
}
.topNewsList{
	width:calc(100% - 250px);
}
.topNewsList ul li{
	margin-bottom:1em;
}
.topNewsList ul li a{
	position:relative;
	display:flex;
	justify-content:space-between;
	align-items:stretch;
	padding:15px;
	background:#f4f0e9;
	border-radius:10px;
	box-sizing:border-box;
}
.topNewsList ul li a::after{
	position:absolute;
	font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f105";
	color:#c7b299;
	right:10px;
	top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	transition : all 0.5s ease 0s;
}
.topNewsList ul li a:hover::after{
	right:5px;
}
.topNewsList ul li span{
	display:block;
}
.topNewsList ul li span.newsTime{
	width:100px;
	padding:0.5em 0;
	border-right:1px #c7b299 solid;
	box-sizing:border-box;
}
.topNewsList ul li span.newsTitle{
	width:calc(100% - 100px);
	padding:0.5em 2em 0.5em 1em;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	box-sizing:border-box;
}
@media screen and (max-width: 767px){
	.topNewsInner{
		display:block;
	}
	.topNewsTit{
		margin-bottom:20px;
	}
	.topNewsTit,.topNewsList{
		width:100%;
	}
}

/*施設紹介*/
.topFacilityBox{
	position:relative;
	width:calc((100% - 40px) / 2);
	padding-bottom:90px;
}
.topFacilityImg{
	position:relative;
	border-radius:15px 15px 0 0;
	overflow:hidden;
}
img.topFacilityLogo{
	position:absolute;
	bottom:30px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	display:block;
	width:300px;
}
@media screen and (max-width: 767px) {
	.topFacilityBox{
		width:100%;
		max-width:600px;
		margin-left:auto;
		margin-right:auto;
	}
	.topFacilityBox:first-child{
		margin-bottom:40px;
	}
}
.topFacilityBtn{
	position:absolute;
	bottom:0;
	left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	width: 100%;
	max-width: 280px;
}

/*採用情報*/
.topRecruitWrap{
	padding:80px 0;
	background:#f4f0e9;
	border-radius:20px;
}
@media screen and (max-width: 767px){
	.topRecruitWrap{
		padding:60px 0;
	}
}
@media screen and (min-width: 768px), print {
    .topRecruitWrap h3 {
        display: inline-block;
        background: #fcd13e;
        background-image: linear-gradient(90deg, #fcd13e, #f26e84);
        color: #fff;
        padding: 0 10px;
        box-sizing: border-box;
    }
}
@media screen and (max-width: 767px) {
	.topRecruitWrap h3 span {
		display: inline-block;
		background: #fcd13e;
		background-image: linear-gradient(90deg, #fcd13e, #f26e84);
		color: #fff;
		padding: 0 10px;
		box-sizing: border-box;
	}
	.topRecruitWrap h3 span:first-child {
		margin-bottom: 0.5em;
	}
}
/*ブログ*/
.thumbnailInner{
	position:relative;
	border-radius: 15px;
    overflow: hidden;
}
.topBlogTxt{
	position:relative;
	padding:15px;
	background:#fff;
	box-sizing:border-box;
}
.topBlogTxt::after{
	content:"";
	width:100%;
	height:5px;
	background-image: linear-gradient(90deg, #fcd13e, #eb727f);
	border-radius:5px;
	position:absolute;
	bottom:0;
	left:0;
}
.article03 {
	background:#fff;
}
.article03-thumbnail img{
	border-radius:15px 15px 0 0 ;
	object-fit:cover;
	height:250px;
}
@media only screen and (max-width: 991px){
	.top-blog{
		max-width:768px;
		margin-left:auto;
		margin-right:auto;
	}
	.article03 {
		width: calc((100% - 15px) / 2);
	}
	.article03:nth-of-type(2n){
		margin-right: 0;
	}
	.article03:nth-of-type(3n){
		margin-right: 10px;
	}
}
@media only screen and (max-width: 580px){
	.article03-thumbnail img{
		height:150px;
	}
}
.article03 a{
	position:relative;
	padding-top:20px;
}
.topCategoryName{
	color:#e8546b;
	background:#fff;
	line-height:1;
	position:absolute;
	display:inline-block;
	bottom:0;
	left:0;
	padding:2px 15px;
	box-sizing:border-box;
	z-index:2;
	border-radius:0 10px 0 0;
}
p.topBlogTit {
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-height:1.8em;
	height:4em;
}
.topBlog .article03-meta{
	text-align:right;
}


/* ----------------------------------------------------------------------
すまいるkids・すまいるハウス
---------------------------------------------------------------------- */
/*サービス*/
.kidsService .flexOrigin{
	align-items:center;
}
.kidsServiceImg img{
	display:block;
	width:100%;
	object-fit:cover;
	height:600px;
	border-radius:20px 0 0 20px;
}
@media screen and (min-width: 961px),print{
	.kidsServiceImg,
	.kidsServiceTxt{
		width:50%;
	}
	.kidsServiceTxtInner{
		max-width: 600px;
		width: calc(100% - 25px);
		margin-left: auto;
		padding: 0 50px 0 0;
		box-sizing: border-box;
	}
}
@media screen and (max-width: 960px){
	.kidsService .flexOrigin{
		display:block;
	}
	.kidsServiceImg{
		width:100%;
	}
	.kidsServiceImg img{
		width:calc(100% - 30px);
		height:400px;
		margin-left:auto;
	}
	.kidsServiceTxt{
		width:calc(100% - 30px);
		max-width:600px;
		margin:0 auto 30px;
	}
}
@media screen and (max-width: 480px){
	.kidsServiceImg img{
		height:300px;
	}	
}

/*特徴*/
.features{
	background:#f4f0e9;
	padding:80px 0;
	border-radius:20px;
}
@media screen and (max-width: 767px){
	.features{
		padding:60px 0;
	}
}
.features ul{
	list-style:none;
}
.features ul li{
	padding:15px;
	box-sizing:border-box;
	background:#fff;
	border-radius:10px;
	border:2px #4d4d4d solid;
	margin-bottom:0.5em;
}
.features ul li span{
	display:inline-block;
	padding-left:1.5em;
	text-indent:-1.5em;
}
.features ul li span::before{
	font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f058";
	color:#f2aa9e;
	margin-right:0.3em;
	font-size:120%;
}

/*利用条件*/
.termsBox{
	width:calc((100% - 80px) / 3);
}
.termsBox img.imgCenter{
	width:150px;
}
p.termsNo{
	position:relative;
	font-size:45px;
	line-height:1;
	-webkit-text-stroke-width: 2px;
	-webkit-text-stroke-color: #998675;
	color:#fcd13e;
	top:0.25em;
}
p.termsNo:first-letter{
	color:#fff;
}
@media screen and (max-width: 767px){
	.termsBox{
		width:100%;
		max-width:480px;
		margin:0 auto 30px;
	}
}

/*ご利用の流れ*/
.flow{
	background:#f4f0e9;
	padding:80px 0;
	border-radius:20px;
}
@media screen and (max-width: 767px){
	.flow{
		padding:60px 0;
	}
}
.flowBox{
	margin-bottom:50px;
}
.flowBoxImg{
	width:200px;
}
.flowBoxTxt{
	width:calc(100% - 250px);
}
.flowBoxImg img{
	border-radius:50%;
}
@media screen and (max-width: 767px){
	.flowBox{
		margin-bottom:40px;
	}
	.flowBoxImg{
		margin:0 auto 15px;
	}
	.flowBoxTxt{
		width:100%;
		max-width:600px;
		margin:0 auto;
	}
	p.flowNo,.flowBoxTxt h3{
		text-align:center;
	}
}
.staffBox{
	position:relative;
	border:2px #c7b299 solid;
	padding:85px 20px 20px;
	box-sizing:border-box;
	border-radius:15px;
	margin-top:75px;
}
.staffBox img{
	position:absolute;
	display:block;
	width:150px;
	top: -75px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}
.houseStaff .flexOrigin{
	justify-content:center;
}
@media screen and (min-width: 961px),print{
	.kidsStaffBox{
		width:calc((100% - 90px) / 4);
	}
	.houseStaffBox{
		width:calc((100% - 60px) / 3);
		margin-right:30px;
		margin-bottom:30px;
	}
	.houseStaffBox:nth-child(3n),
	.houseStaffBox:last-child{
		margin-right:0;
	}
}
@media screen and (max-width: 960px){
	.kidsStaffBox{
		width:calc((100% - 30px) / 2);
		margin-bottom:30px;
	}
	.houseStaffBox{
		width:calc((100% - 30px) / 2);
		margin-right:30px;
		margin-bottom:30px;
	}
	.houseStaffBox:nth-child(2n),
	.houseStaffBox:last-child{
		margin-right:0;
	}
}
@media screen and (max-width: 480px){
	.staffBox{
		padding:65px 20px 20px;
	}
	.kidsStaffBox,
	.houseStaffBox{
		width:100%;
	}
	.houseStaffBox{
		margin-right:0;
	}
	.staffBox img{
		width:100px;
		top: -50px;
	}
}

/*ご利用料金*/
table.feeTable{
	width:100%;
}
table.feeTable th,
table.feeTable td{
	font-size:18px;
	text-align:center;
	font-weight:bold;
	box-sizing:border-box;
	line-height:2em;
	padding:15px 10px;
}
table.feeTable th{
	background:#fcd13e;
	border-right:3px #fff solid;
}
table.feeTable th:first-child{
	border-radius:15px 0 0 0 ;
}
table.feeTable th:last-child{
	border-radius:0 15px 0 0 ;
}
table.feeTable td{
	border-right:3px #c7b299 solid;
}
table.feeTable th:last-child,
table.feeTable td:last-child{
	border-right:none;
}
table.feeTable tr{
	background:#ffffff;
}
table.feeTable tr:nth-child(odd) td{
	background:#f4f0e9;
}
@media screen and (max-width: 767px){
	table.feeTable th,
	table.feeTable td{
		font-size:14px;
		border-right-width:2px;
		padding:15px 5px;
	}
}
@media screen and (min-width: 481px){
	table.feeTable td br{
		display:none;
	}
}

/*ご利用についての注意事項*/
ul.worksCautionUl{
	list-style:none;
}
ul.worksCautionUl li{
	padding-left:1em;
	text-indent:-1em;
	padding:0.5em;
	border-bottom:1px #4d4d4d dashed;
}
ul.worksCautionUl li::before{
	content:"・";
}

/*アクセス*/
.accessWrap {
	align-items:center;
}
@media screen and (min-width: 961px),print{
	.accessTxt,
	.accessMap{
		width:50%;
	}
	.accessTxtInner{
		max-width: 600px;
		width: calc(100% - 25px);
		margin-left: auto;
		padding: 0 50px 0 0;
		box-sizing: border-box;
	}
}
@media screen and (max-width: 960px){
	.accessTxt{
		width:calc(100% - 30px);
		margin:0 auto 40px;
	}
	.accessMap{
		width:100%;
	}
}
.accessTxt ul li{
	padding-left:1.3em;
	text-indent:-1.3em;
	padding-bottom:0.5em;
	margin-bottom:0.5em;
	border-bottom:1px #4d4d4d dashed;
}
.accessTxt ul li::before{
	font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-right: 0.3em;
    color: #f2aa9e;
}
.accessTxt ul li:nth-child(1)::before{
	content: "\f238";
}
.accessTxt ul li:nth-child(2)::before{
	content: "\f55e";
}

/*アクセス*/
.worksContact{
	background:#f4f0e9;
	padding:80px 0;
	border-radius:20px;
}
@media screen and (max-width: 767px){
	.worksContact{
		padding:60px 0;
	}
}
.worksContactInner{
	width:calc(100% - 30px);
	max-width:460px;
	margin:0 auto;
}
.worksKidsContact hr,
.worksHouseContact hr,
.contactInfoBox hr,
.contactInfoBox hr{
	height: 0;
    border: 0;
}
.worksKidsContact hr,
.contactInfoBox:nth-child(1) hr{
	border-bottom: 3px #eb727f solid;
}
.worksHouseContact hr,
.contactInfoBox:nth-child(2)  hr{
	border-bottom: 3px #f29600 solid;
}
.worksContact table,
.contactInfoBox table{
	width:100%;
}
.worksContact table th,
.worksContact table td,
.contactInfoBox table th,
.contactInfoBox table td{
	text-align:left;
	border-bottom:1px #4d4d4d dashed;
	padding:5px 0;
}
@media screen and (max-width: 480px){
	.worksContact table,
	.worksContact table tbody,
	.worksContact table tr,
	.worksContact table th,
	.worksContact table td{
		display:block;
		text-align:center;
	}
	.contactInfoBox table,
	.contactInfoBox table tbody,
	.contactInfoBox table tr,
	.contactInfoBox table th,
	.contactInfoBox table td{
		display:block;
		text-align:center;
	}
	.worksContact table th,
	.contactInfoBox table th{
		background:#fff;
	}
	.worksContact table td,
	.contactInfoBox table td{
		border-bottom:2px #4d4d4d solid;
	}
}

a.worksContactBtn{
	display: flex;
    align-items: center;
	justify-content:center;
    width: 100%;
	max-width:300px;
    height: 70px;
    position: relative;
    text-decoration: none;
    text-align: center;
    z-index: 0;
    color: #fff;
	margin:0 auto;
	border-radius:15px;
	overflow:hidden;
}
a.worksContactBtn span{
	position:relative;
	display:inline-block;
	width:100%;
}
a.worksContactBtn span::after{
	position:absolute;
	font-family: "Font Awesome 5 Free";
    font-weight: 900;
	content: "\f054";
	top: 50%;
    right:15px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	transition : all 0.5s ease 0s;
}
a.worksContactBtn:hover span::after{
	right:10px
}
a.worksContactBtn::before{
	content:"";
	width:100%;
	height:100%;
	position:absolute;
	z-index:-1;
	top:0;
	left:0;
	transition:0.5s;
	background:linear-gradient(#fcd13e,#f29600);
}
a.worksContactBtn::after{
	content:"";
	width:100%;
	height:100%;
	position:absolute;
	z-index:-2;
	top:0;
	left:0;
	background:linear-gradient(#c7b299,#f4f0e9);
}
a.worksContactBtn:hover::before{
	opacity:0;
}


/* ----------------------------------------------------------------------
すまいるハウス
---------------------------------------------------------------------- */

/* ----------------------------------------------------------------------
会社概要
---------------------------------------------------------------------- */
/*会社概要*/
table.companyTb{
	width:100%;
}
table.companyTb th,
table.companyTb td{
	border-bottom:3px solid;
	padding:25px 15px;
	box-sizing:border-box;
}
table.companyTb th{
	width:200px;
	border-bottom-color:#fcd13e;
}
table.companyTb td{
	width:calc(100% - 200px);
	border-bottom-color:#c7b299;
}
table.companyTb td ol{
	list-style:decimal;
	margin-left:1.3em;
}
table.companyTb td ul li,
table.companyTb td ol li{
	margin-bottom:0.5em;
}
table.companyTb td ul li{
	padding-left: 0.8em;
    text-indent: -0.8em;
}
table.companyTb td ul li::before{
	font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f0da";
    margin-right: 0.3em;
    color: #fcd13e;
}
table.companyTb td a{
	text-decoration:none;
	color:#29abe2;
}
@media screen and (max-width: 767px){
	table.companyTb{
		border-top:3px #c7b299 solid;
	}
	table.companyTb,
	table.companyTb tbody,
	table.companyTb tr,
	table.companyTb th,
	table.companyTb td{
		display:block;
		width:100%;
	}
	table.companyTb th,
	table.companyTb td{
		width:100%;
		text-align:left;
	}
	table.companyTb th{
		background:#f4f0e9;
	}
}

/*沿革*/
table.historyTb{
	width:100%;
	padding:25px 0 20px;
	border-collapse: separate;
	border-bottom:1px #4d4d4d dashed;
}
table.historyTb:nth-child(odd){
	background:#f4f0e9;
}
table.historyTb:first-child{
	border-radius:20px 20px 0 0;
}
table.historyTb:last-child{
	border-radius:0 0 20px 20px;
	border-bottom:none;
}
table.historyTb th{
	width:150px;
}
table.historyTb td{
	box-sizing:border-box;
}
table.historyTb td.historyDate{
	width:150px;
	font-weight:700;
	text-align:center;
	padding-top:8px;
	padding-bottom:8px;
}
table.historyTb td.historyDate span{
	display:inline-block;
	width:100%;
	background:#f29600;
	border-radius:100px;
	color:#fff;
}
table.historyTb td.historyTxt{
	width:calc(100% - 300px);
	padding-left:15px;
	padding-right:15px;
	padding-top:8px;
	padding-bottom:8px;
}
table.historyTb td.historyTxt a{
	text-decoration:none;
	color:#29abe2;
}
@media screen and (max-width: 767px){
	table.historyTb,
	table.historyTb tbody,
	table.historyTb tr,
	table.historyTb th,
	table.historyTb td.historyDate,
	table.historyTb td.historyTxt{
		display:block;
		width:100%;
		text-align:center;
	}
	table.historyTb td.historyDate span{
		width:calc(100% - 30px);
		max-width:400px;
	}
}

/*代表挨拶*/
.greeting{
	background:#f4f0e9;
	border-radius:30px;
	padding:80px 0;
}
@media screen and (max-width: 767px){
	.greeting{
		padding:60px 0;
	}
}
.greetingTit{
	width:280px;
}
.greetingImg{
	width:calc(100% - 280px);
}
@media screen and (max-width: 767px){
	.greetingTit,.greetingImg{
		width:100%;
	}
}

/* ----------------------------------------------------------------------
採用情報
---------------------------------------------------------------------- */
@media screen and (min-width: 768px),print{
	.recruitIntroTit h2{
		display:inline-block;
		background:#fcd13e;
		background-image: linear-gradient(90deg, #fcd13e, #f26e84);
		color:#fff;
		padding:0 10px;
		box-sizing:border-box;
	}
}
@media screen and (max-width: 767px){
	.recruitIntroTit h2 span{
		display:inline-block;
		background:#fcd13e;
		background-image: linear-gradient(90deg, #fcd13e, #f26e84);
		color:#fff;
		padding:0 10px;
		box-sizing:border-box;
	}
	.recruitIntroTit h2 span:first-child{
		margin-bottom:0.5em;
	}
}

/*募集要項*/
.jobDesc{
	padding:80px 0;
	background:#f4f0e9;
	border-radius:20px;
}
@media screen and (max-width: 767px){
	.jobDesc{
		padding:60px 0;
	}
}
table.sepaTable{
	width:100%;
}
table.sepaTable th,
table.sepaTable td{
	padding:15px;
	border:2px #c7b299 solid;
	box-sizing:border-box;
	vertical-align:middle;
}
table.sepaTable th{
	background:#c7b299;
	color:#fff;
}
table.sepaTable td{
	background:#fff;
}
@media screen and (min-width: 768px),print{
	table.sepaTable{
		border-spacing: 5px 5px;
		border-collapse:separate;
	}
	table.sepaTable th{
		border-radius:10px 0 0 10px;
		width:230px;
	}
	table.sepaTable td{
		border-radius:0 10px 10px 0;
	}
}
@media screen and (max-width: 767px){
	table.sepaTable,
	table.sepaTable tbody,
	table.sepaTable tr,
	table.sepaTable th,
	table.sepaTable td{
		display:block;
		text-align:left;
	}
	table.sepaTable tr{
		margin-bottom:10px;
	}
	table.sepaTable th{
		border-radius:10px 10px 0 0;
		margin-bottom:5px;
	}
	table.sepaTable td{
		border-radius:0 0 10px 10px;
	}
}
table.sepaTable ul{
	list-style:disc;
	margin-left:1.3em;
}

/*採用例*/
.recruitExBox{
	position:relative;
	width:calc((100% - 90px) / 4 );
	border:2px #c3af97 solid;
	background:#fff;
	border-radius:15px;
	padding:25px 20px;
	box-sizing:border-box;
	margin-top:80px;
}
img.recruitExImg{
	position:absolute;
	top:-82px;
	left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	display:block;
	width:80px;
}
.recruitExBox h3{
	background:#c3af97;
	border-radius:100px;
	margin-bottom:10px;
}
@media screen and (max-width: 960px){
	.recruitExBox{
		width:calc((100% - 30px) / 2 );
		margin-bottom:30px;
	}
}
@media screen and (max-width: 480px){
	.recruitExBox{
		width:100%;
		margin-bottom:30px;
	}
	.recruitExBox:last-child{
		margin-bottom:0;
	}
}

/*代表コメント*/
.recruitCeo img.imgCenter{
	width:100%;
	border-radius:20px;
	object-fit:cover;
	height:400px;
	position:relative;
}
.recruitCeoTxt{
	position:relative;
	background:#f4f0e9;
	padding:25px 20px;
	box-sizing:border-box;
	border-radius:20px;
	width:calc(100% - 100px);
	margin:-80px auto 0;
}
@media screen and (max-width: 767px){
	.recruitCeo img.imgCenter{
		height:250px;
	}	
	.recruitCeoTxt{
		margin:-60px auto 0;
		width:calc(100% - 50px);
	}
}
@media screen and (max-width: 480px){
	.recruitCeo img.imgCenter,
	.recruitCeoTxt{
		border-radius:15px;
	}
	.recruitCeoTxt{
		width:calc(100% - 30px);
	}
}

/*スタッフコメント*/
.recruitCommentImg{
	width:200px;
	overflow:hidden;
}
.recruitCommentImg img{
	border-radius:50%;
}
.recruitCommentTxt{
	width:calc(100% - 250px);
}
@media screen and (max-width: 767px){
	.recruitComment .title{
		text-align:center;
	}
	.recruitCommentImg{
		margin:0 auto 30px;
	}
	.recruitCommentTxt{
		width:100%;
		max-width:600px;
		margin:0 auto;
	}
}

/*1日の流れ*/
.recruitScheBox{
	width:calc((100% - 40px) / 2);
}
.recruitScheBox img{
	width:250px;
}
.recruitScheBox hr{
	height: 0;
	border: 0;
}
.recruitScheBox:nth-child(1) hr{
	border-bottom:3px #eb727f solid;
}
.recruitScheBox:nth-child(2) hr{
	border-bottom:3px #f29600 solid;
}
.recruitScheBox table{
	width:100%;
}
.recruitScheBox table th,
.recruitScheBox table td{
	text-align:left;
	border-bottom:1px #4d4d4d dashed;
	padding:8px 3px;
	letter-spacing:0.1em;
}
.recruitScheBox table th{
	width:100px;
}
@media screen and (max-width: 767px){
	.recruitSche .flexOrigin{
		display:block;
	}
	.recruitScheBox{
		width:100%;
		max-width:480px;
		margin:0 auto 40px;
	}
}

/*パーソナルサポートの取り組み事例*/
.recruitWorkon .flexOrigin{
	align-items:center;
}
.recruitWorkonImg img{
	display:block;
	width:100%;
	object-fit:cover;
	height:800px;
	border-radius:0 20px 20px 0;
}
@media screen and (min-width: 961px),print{
	.recruitWorkonImg,
	.recruitWorkonTxt{
		width:50%;
	}
	.recruitWorkonTxtInner{
		max-width: 600px;
		width: calc(100% - 25px);
		margin-right: auto;
		padding: 0 0 0 50px;
		box-sizing: border-box;
	}
}
@media screen and (max-width: 960px){
	.recruitWorkon .flexOrigin{
		display:block;
	}
	.recruitWorkonImg{
		width:100%;
	}
	.recruitWorkonImg img{
		width:calc(100% - 30px);
		height:400px;
	}
	.recruitWorkonTxt{
		width:calc(100% - 30px);
		max-width:600px;
		margin:40px auto 0;
	}
}
@media screen and (max-width: 480px){
	.recruitWorkonImg img{
		height:300px;
	}	
}


/* ----------------------------------------------------------------------
よくあるご質問
---------------------------------------------------------------------- */
.faqLink ul{
	list-style:none;
	margin-left:0;
	display:flex;
	justify-content:space-between;
	align-items:center;
	border:1px #42210b solid;
	border-radius:100px;
	overflow:hidden;
}
.faqLink ul li{
	display:block;
	width:calc(100% / 3);
	border-right:1px #42210b solid;
}
.faqLink ul li:last-child{
	border-right:none;
}
.faqLink ul li a{
	position:relative;
	display:block;
	width:100%;
	background:#f4f0e9;
	box-sizing:border-box;
	text-align:center;
	padding:15px;
	line-height:2em;
	transition : all 0.5s ease 0s;
}
.faqLink ul li a:hover{
	background:#42210b;
	color:#f4f0e9;
}
.faqLink ul li a::after {
	position:absolute;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f054";
	top: 50%;
    right: 15px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	transition : all 0.5s ease 0s;
}
.faqLink ul li a:hover::after {
	right: 10px;
}
@media screen and (max-width: 960px){
	.faqLink ul{
		display:block;
		max-width:600px;
		margin-left:auto;
		margin-right:auto;
		border-radius:15px;
	}
	.faqLink ul li{
		width:100%;
		border-right:none;
		border-bottom:1px #42210b solid;
	}
	.faqLink ul li:last-child{
		border-bottom:none;
	}
}

.faqBox h3{
	margin-bottom:50px;
}
@media screen and (max-width: 767px){
	.faqBox h3{
		margin-bottom:40px;
	}
}
.faqDL{
	border:1px #42210b solid;
	border-image-slice: 1;
	padding-bottom:0.5em;
	margin-bottom:1em;
	padding:5px 15px;
	box-sizing: border-box;
	border-radius: 20px;
}
.faqDL dt,.faqDL dd{
	box-sizing: border-box;
	line-height:1.8em;
}
.faqDL dt {
	position: relative;
	padding:0.5em 30px 0.8em 1.8em;
	text-indent: -1.8em;
	color:#42210b;
}
.faqDL dt.open{
	padding:0.5em 30px 0.5em 1.8em;
}
.faqDL dd {
	display: none;
	padding:0 0 0.5em 1.8em;
	text-indent: -1.8em;
}
dl.faqDL dt::before{
	content:"Q";
	color:#f29600;
}
dl.faqDL dd::before{
	content:"A";
	color:#c7b299;
}
dl.faqDL dt::before,
dl.faqDL dd::before{
	font-family: m-plus-rounded-1p, sans-serif;
    font-weight: 700;
    font-style: normal;
	font-size:35px;
	line-height:1;
	position: relative;
	top:4px;
	margin-right: 0.3em;
}
dl.faqDL dt span::before,
dl.faqDL dt span::after {
	content: '';
	display: block;
	width: 15px;
	height: 2px;
	border-radius: 5px;
	background: #42210b;
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
}
dl.faqDL dt span::after {
	transform: translateY(-50%) rotate(90deg);
	transition: 0.5s;
}
dl.faqDL dt.open span::after {
	transform: rotate(0);
	transition: 0.5s;
}
@media screen and (max-width: 767px){
	dl.faqDL dt::before,
	dl.faqDL dd::before{
		font-size:31px;
	}
}

/* ----------------------------------------------------------------------
お問い合わせ
---------------------------------------------------------------------- */
.wpcf7 {
	border:none;
	background:none;
}
.wpcf7 form{
	margin:0;
}
.wpcf7 p {
	margin:0;
}
.wpcf7 input[type=text],.wpcf7 input[type=email],.wpcf7 select,.wpcf7 textarea,.wpcf7 input[type=text]:focus,.wpcf7 input[type=email]:focus,.wpcf7 textarea:focus{
	-webkit-appearance: none;
	outline: none;
	text-shadow:none;
	-webkit-box-shadow:none;
	border:none;
}
.wpcf7 input[type=text],.wpcf7 input[type=email],.wpcf7 textarea,.wpcf7 select{
	padding: 15px 0 10px;
	font-size:18px;
}
.wpcf7 select{
	font-family: "noto-sans", sans-serif;
	font-weight: 500;
	font-style: normal;
	color:#333;
}
.wpcf7 textarea{
	width:100%;
	height:85px;
	line-height:1.5em;
}
.wpcf7 input.wpcf7-submit {
	background: rgb(240, 203, 208);
	background: linear-gradient(90deg, rgba(252,209,62,1) 0%, rgba(242,110,132,1) 100%);
	color:#fff;
	width:100%;
	max-width:250px;
	height:70px;
	margin-top:50px;
	font-family: "noto-sans", sans-serif;
	font-weight: 500;
	font-style: normal;
	font-size:22px;
	border-radius:15px;
	transition : all 0.5s ease 0s;
}
.wpcf7 input.wpcf7-submit:hover {
	background: #fcd13e;
}
input::placeholder,textarea::placeholder {
	font-family: "noto-sans", sans-serif;
	font-weight: 500;
	font-style: normal;
}

.contactTit{
	display:table;
}
.item,.hissu{
	display:table-cell;
}
.item p{
	font-size:18px;
	line-height:1.0em;
}
.hissu p{
	display:inline-block;
	background:#fcd13e;
	border-radius:5px;
	line-height:1.0em;
	font-size:16px;
	color:#fff;
	padding:2px 5px 2px 4px;
	margin-left:10px;
}
p.itemEng{
	font-size:14px;
}
.ans{
	border-bottom: 3px #fcd13e solid;
	border-image: linear-gradient(90deg, rgba(252,209,62,1) 0%, rgba(242,110,132,1) 100%);
	border-image-slice: 1;
}
.contactForm .flexBox02{
	width: 48%;
}

@media screen and (max-width:767px){	
	.wpcf7 input[type=text],.wpcf7 input[type=email],.wpcf7 select,.wpcf7 textarea{
		font-size:16px;
	}
	input::placeholder,textarea::placeholder {
		font-size:16px;
	}
	.wpcf7 input.wpcf7-submit {
		font-size:20px;
	}
	.item p{
		font-size:16px;
	}
	.hissu p{
		font-size:14px;
	}
	p.itemEng{
		font-size:12px;
	}
	.contactForm .flexBox02{
		width:100%;
	}
}

.contactInfoBox{
	width:calc((100% - 40px) / 2);
}
@media screen and (max-width:767px){
	.contactInfo .flexOrigin{
		display:block;
	}
	.contactInfoBox{
		width:100%;
		margin-bottom:30px;
	}
}

/* ----------------------------------------------------------------------
プライバシーポリシー
---------------------------------------------------------------------- */
.privacyBox{
	margin-bottom:50px;
}
.privacyTitle{
	display:flex;
	justify-content:start;
	align-items:center;
	border-top:1px #4d4d4d solid;
	border-bottom:1px #4d4d4d solid;
	padding:1em 0;
	margin-bottom:1.5em;
}
.privacyTitle span{
	display:inline-block;
	font-size:40px;
	line-height:1;
	padding:0 0.3em;
	box-sizing:border-box;
}
@media screen and (max-width: 767px){
	.privacyTitle span{
		font-size:30px;
	}
}
.privacyBox h4{
	padding-left:1em;
	text-indent:-1em;
}
.privacyBox h4::before{
	content:"■";
	color:#fcd13e;
}
.privacyBox ul{
	list-style:disc;
	margin-left: 1.3em;
}


/* ----------------------------------------------------------------------
お知らせ
---------------------------------------------------------------------- */
.article04{
	background:#f4f0e9;
	border-radius:10px;
}
a.items-center{
	padding:20px;
	box-sizing:border-box;
}

/* ----------------------------------------------------------------------
フッター
---------------------------------------------------------------------- */

/*ご応募*/
.recruitAppBox{
	width:calc((100% - 40px) / 2);
}
@media screen and (max-width: 767px){
	.recruitAppBox{
		width:100%;
		max-width:480px;
		margin:0 auto 20px;
	}
}

/*フッターコンテンツ*/
.footerContents{
	padding:40px 0 60px;
}
.footerInfo,.footerSitemap{
	display:flex;
	justify-content:space-between;
	align-items:stretch;
}
.footerInfo{
	width:650px;
}
.footerSitemap{
	width:calc(100% - 650px);
}
.footerLogo{
	width:300px;
}
.footerLogo img{
	display:block;
	width:250px;
}
.footerInfoTxt{
	width:calc(100% - 300px);
}
p.footTel {
    font-size: 30px;
    line-height: 1;
}
p.footTel::before {
    position: relative;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f095";
    top: -0.1em;
    font-size: 75%;
    margin-right: 0.2em;
}
.footerSitemapBox{
	width:48%;
}
.footerSitemapBox ul li a::before{
	font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f0da";
	margin-right:0.3em;
	color:#fcd13e;
}
@media screen and (max-width: 1200px) and (min-width: 961px){
	.footerInfo{
		width:600px;
	}
	.footerSitemap{
		width:calc(100% - 600px);
	}
}
@media screen and (max-width: 960px){
	.footerInfo{
		display:block;
	}
	.footerLogo{
		margin-bottom:10px;
	}
	.footerInfo{
		width:320px;
	}
	.footerInfoTxt{
		width:100%;
	}
	.footerSitemap{
		width:calc(100% - 320px);
		max-width:400px;
	}
}
@media screen and (max-width: 640px){
	.footerContents .innerOrigin{
		display:block;
	}
	.footerInfo{
		width:100%;
		margin-bottom:20px;
	}
	.footerSitemap{
		width:100%;
		max-width:400px;
	}
}

/*reCAPTCHA非表示*/

.grecaptcha-badge { visibility: hidden; }