@charset "UTF-8";
/* CSS Document */
#topBar{
	background-color:#3b2023;
	color: #fff;
	padding-top:0.5rem;
	padding-bottom: 0.5rem;
}
#gmLine{
	
	background-image: url("images/recrout/gmback.jpg");
}
.gMenu{
	text-align: center;
	padding-top:1.5rem;
	padding-bottom: 1.5rem;
	color: #fff;
	position: relative;
}
.gMenu span{
	color:#fff;
	text-decoration: none;
}
.gMenu span::before{
	content: "";
	border-left: 1px solid #fff;
	width:1px;
	height:1.8rem;
	position: absolute;
	left:0;
	top:1.25rem;
}
.gMenu:last-child span:last-child::after{
	content: "";
	border-left: 1px solid #fff;
	width:1px;
	height:1.8rem;
	position: absolute;
	right:0;
	top:1.25rem;
}
.gMenu a::after{
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	bottom: 0.8rem;/*三角をボタンの下のラインに合わせます*/
	left: 50%;/*三角を横方向中央にします*/
	margin-left: -10px;/*border-leftの10px分左にずらして完全な中央にします*/
	border-left: solid 10px transparent;/*border-rightと同じ幅にします*/
	border-right: solid 10px transparent;/*border-leftと同じ幅にします*/
}
.gMenu a:hover{
	text-decoration: none;
}
.gMenu a:hover::after{
	border-top: solid 10px #fff;
}

.recrouth2{
	margin:0;
	text-align: center;
	padding:3rem 0;
	position: relative;
	font-size:1.8rem;
}
.recrouth2::after{
	content: "";
	position: absolute;
	width: 2rem;
	height:1px;
	background-color:#6D1A1B;
	bottom:1rem;
	left:calc(50% - 1rem);
}
.middlefield{
	position: relative;
	height: calc(100vh - 200px);/*ヘッダ分マイナス*/
	width: 100%;
}
.middlefield>div{
	position: absolute;
	top:50%;
	-webkit-transform:translateY(-50%);
	transform:translateY(-50%);
	width: 100%;
}
.parallax-window-thin .middlefield{
	position: relative;
	height: calc(30vh - 30px);/*ヘッダ分マイナス*/
	width: 100%;
}
.parallax-window-thin .middlefield>div{
	position: absolute;
	top:50%;
	-webkit-transform:translateY(-50%);
	transform:translateY(-50%);
	width: 100%
}
.parallax-window-thin{
	height:30vh !important;
}
/*当館について*/
#ourhotel{
	text-align: center;
	color:#fff;
	
}
#ourhotel .recrouth2{
	color:#fff !important;
}
#ourhotel .recrouth2::after{
	background-color: #fff !important;
}
#ourhotelComment{
	line-height: 2rem;
}
#ourhotelComment strong{
	font-size:2rem;
	line-height: 4rem;
}


/* 基本情報 */
.information{
	width: 100%;
	position: relative;
	margin-top: 3em;
}
.information ul{
	position: relative;
	padding: 0;
}
.information li{
	position: relative;
	list-style-type: none;
	border-bottom: 1px dotted #cccccc;
	padding: 1rem 0 !important;
	margin: 0 !important;
}
.information li:first-child{
	border-top: 1px dotted #cccccc;
}
.information dl{
	width: 100%;
	margin: 0 !important;
	padding: 0 !important;
	position: relative;
}
.information dt,.information dd{
	display: inline-block;
	margin: 0 !important;
	vertical-align: middle;
}
.information dt{
	padding-left: 5%;
	width: 25%;
}
.information dd{
	padding-right: 5%;
	width: 75%;
}
/* 募集要項 */
#youkou{
	width: 90%;
	margin-top:3rem;
	margin-right: 5%;
	margin-bottom: 10rem;
	margin-left: 5%;
	box-sizing: border-box;
}
#youkou tr{
	border-bottom:1px dotted #cccccc;
}
#youkou th{
	vertical-align: top;
	width:20%;
	padding-left:1rem;
	padding-top:0.8rem;
	color: #3b2023;
}
#youkou td{
	width:80%;
	padding-right: 1rem;
	padding-top:0.8rem;
}
#youkou h3{
	margin: 0;
	padding: 0;
	font-size:1.2rem;
	border-left:5px solid #3b2023;
	padding-left:8px;
	margin-bottom:0.8rem;
	color: #3b2023;
}
#youkou th,#youkou td,#youkou dt,#youkou dd{
	line-height: 1.8rem;
}
#youkou dt{
	padding-left:13px;
}
#youkou dd{
	padding-left:calc(1rem + 13px);
}

/* エントリー */
#entry #telentry{
	border: 1px solid #3b2023;
	padding:1rem 3rem;
	width:90%;
	margin:0 auto 6rem;
}
#entry #entryTel{
	width:100%;
	text-align: center;
	margin-top:1.5rem;
	font-size:3rem;
	color:#3b2023;
}
#entryTable,#entryTable th, #entryTable td{
	 border-collapse: collapse;
	border:1px solid #3b2023;
}
#entryTable{
	width: 90%;
	margin-top:3rem;
	margin-right: 5%;
	margin-bottom: 3rem;
	margin-left: 5%;
}
#entryTable th{
	background-color: #f8d0cc;
	vertical-align: middle;
	width:20%;
	padding-left:1rem;
	color: #3b2023;
}
#entryTable td{
	background-color: #ffffff;
	width:80%;
	padding: 0.8rem 1rem;
}

.btn-square-soft:hover, .btn-square-soft:checked, .btn-square-soft:focus{
	color :#fff !important;
}
.btn-square-soft {
  display: inline-block;
  position: relative;
  text-decoration: none;
  /*color: #f9a9ae;*/
	color:#ffffff;
  width: 30%;
  height: 50px;
  line-height: 50px;
  border-radius: 5px;
  text-align: center;
  overflow: hidden;
  font-weight: bold;
  background: linear-gradient(#852f26 0%, #42201f 100%);
  text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.66);
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.28);
	margin:0 35% 3rem;
}

.btn-square-soft:active {
  /*押したとき*/
  -webkit-transform: translateY(2px);
  transform: translateY(2px);/*沈むように*/
  box-shadow: 0 0 1px rgba(0, 0, 0, 0.15);
  background-image: linear-gradient(#42201f 0%, #852f26 100%);/*グラデーションを明るく*/
	color: #fff !important;
}


/*フッター*/
footer{
	text-align: center;
	color:#fff;
	background-image: url("images/recrout/footerBack.jpg");
	padding-top: 2rem;
	padding-bottom:5rem;
}
#footerLogo img{
	width: 100%;
	height: auto;
}
/* ふわっと */
.effect-fade {
	opacity : 0;
	transform : translate(0, 45px);
	transition : all 1500ms;
}

.effect-fade.effect-scroll {
	opacity : 1;
	transform : translate(0, 0);
}


/*　エントリーフロー */
.flow {
    position: relative;
	width:60%;
	margin:0 20%;
}
.flow > li {
    position: relative;
	padding:0 0 0 !important;
	border-top: none !important;
	border-bottom: none !important;
}
.flow > li .icon {
    font-size: 12px;
    color: #fff;
	background-color: #6D1A1B;
    padding: 8px 20px;
    display: block;
    position: absolute;
    top: 0;
    left: 0px;
    z-index: 100;
}
.flow > li .icon::after {
    content: "";
    border-style: solid;
    border-width: 5px 0 5px 10px;
    border-color: transparent transparent transparent #6D1A1B;
    position: absolute;
    top: 50%;
    left: 100%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
.flow > li > dl > dt{
	width: 100%;
	padding-left: 120px;
	line-height: 38px;
	font-size: 1.6rem;
	color: #6D1A1B;
	border-bottom: 1px solid #6D1A1B;
}
.flow > li > dl> dd{
	width:100%;
	padding-left: 120px;
	padding-bottom: 2rem;
	line-height: 2rem;
}


/* トップへ戻る */
#page_top{
  width: 50px;
  height: 50px;
  position: fixed;
  right: 0.3rem;
  bottom: -50px;
  background: #42201f;
  opacity: 0.6;
  border-radius: 50%;
}
#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f0d8';
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -5px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}


/* ラジオボタン */
label{font-weight: normal !important;}
.radio-input{
  display: none;
}
.radio-input + label{
  padding-left: 1.4rem;
  position:relative;
  margin-right: 1rem;
}
.radio-input + label::before{
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 1.2rem;
  height: 1.2rem;
  border: 1px solid #999;
  border-radius: 50%;
}
.radio-input:checked + label{
  color: #d01137;
}
.radio-input:checked + label::after{
  content: "";
  display: block;
  position: absolute;
  top: 3px;
  left: 3px;
  width: calc(1.2rem - 6px);
  height: calc(1.2rem - 6px);
  background: #d01137;
  border-radius: 50%;
}

.contentSheet{width: 100%;margin:0 auto;}
/* lg */
@media screen and (min-width: 1200px) {
	html,body{
		font-size:100%;
	}
	.sp_br{display: none;}
	.sp_input{display: inline-block;}
	.contentSheet{
		max-width: 1200px;
	}
	.parallax-window-thin{
		height:75vw !important;
	}
	
}
/* md PC*/
@media only screen and (min-width: 992px) and (max-width: 1199px) {
	html,body{
		font-size:100%;
	}
	.sp_br{display: none}
	.sp_input{display: inline-block;}
	.contentSheet{
		max-width: 992px;
	}
	.btn-square-soft {
		width:60% !important;
		margin:0 20% 6vw !important;
	}
	
	#entry{width:100%;margin:0 0 6vw;}
	.flow {
		position: relative;
		width:80%;
		margin:0 10%;
	}
	.parallax-window-thin{
		height:75vw !important;
	}
}

/*  sm タブレット*/
@media only screen and (min-width: 768px) and (max-width: 991px) {
	.gMenu{
		padding-top: 2vw !important;
		padding-bottom: 2vw !important;
	}
	.gMenu span::before{
		content: none !important;
	}
	.gMenu a::after{
		content: none;
		bottom: 0.5vw;
	}
	.gMenu:last-child span:last-child::after{
		content: none !important;
	}
	.recrouth2{
		margin:0 0 1vw;
		text-align: center;
		padding:6vw 0 2vw !important;
		position: relative;
		font-size:3.6vw;
	}
	.recrouth2::after{
		content: "";
		position: absolute;
		width: 4vw;
		height:1px;
		background-color:#6D1A1B;
		bottom:-2vw;
		left:calc(50% - 2vw);
	}
	#ourhotelComment{
		line-height: 4vw;
		position: absolute;
		bottom:-60vw;
	}
	#ourhotelComment strong{
		font-size:5vw;
		line-height: 12vw;
		margin-bottom: 20vw;
	}
	#entryTable{
		width: 96%;
		margin:2vw 2% 2vw !important;
	}
	#entryTable th,#entryTable td{
		display: block;
		width: 100%;
	}
	.flow {
		position: relative;
		width:96%;
		margin:0 2%;
	}
	.flow > li {
		
	}
	.flow > li > dl > dd{padding-left: 3vw !important;}
	.btn-square-soft {
		width:80% !important;
		margin:0 10% 6vw !important;
	}
	.parallax-window-thin{
		height:75vw !important;
	}
}

/* xs スマホ*/
@media screen and (max-width: 767px) {
	.gMenu{
		padding-top: 2vw !important;
		padding-bottom: 2vw !important;
	}
	.gMenu span::before{
		content: none !important;
	}
	.gMenu a::after{
		content: none;
		bottom: 0.5vw;
	}
	.gMenu:last-child span:last-child::after{
		content: none !important;
	}
	#ourhotelComment{
		line-height: 6vw;
		position: absolute;
		bottom:-60vw;
	}
	#ourhotelComment strong{
		font-size:9vw;
		line-height: 12vw;
	}
	.flow {
		position: relative;
		width:96%;
		margin:0 2%;
	}
	.flow > li{
		margin-bottom: 10vw !important;
	}
	.flow > li > dl > dd{padding-left: 3vw !important;}
	#youkou{
		margin: 3vw 0 8vw !important;
		width: 100% !important;
	}
	#youkou h3{
		margin-top:6vw;
	}
	#youkou tr{border:none !important;}
	#youkou th,#youkou td{
		display: block;
		width:100%;
		box-sizing: border-box;
	}
	#youkou th{
		margin-top:10vw;
		background-color:#6D1A1B;
		color:#fff;
		font-weight: bold;
		font-size: 3.8vw;
		padding:1vw 2vw !important;
	}
	#entryTable{
		width: 96%;
		margin:0 2% 2vw;
	}
	#entryTable th,#entryTable td{
		display: block;
		width: 100%;
	}
	#telentry{
		width: 96% !important;
		margin-left: 2% !important;
		margin-right: 2% !important;
		padding-left:2vw !important;
		padding-right: 2vw !important;
	}
	#entryTel{
		font-size: 10vw !important;
	}
	.sp_input{
		margin-bottom:3vw;
	}
	.btn-square-soft {
		width:80% !important;
		margin:0 10% 6vw !important;
	}
	.parallax-window-thin{
		height:75vw !important;
	}
}


/* mw_wp_form 調整 */
#bikou,#mail{width:100% !important;}
#name,#family{display: inline !important;}