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

body {
	color:#6C5142;
	font-size:16px;
	line-height:1.8;
	font-family:'M PLUS 1p','Noto Sans JP', sans-serif, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	height:100%;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
}
img {
	border:none; vertical-align:middle;
}
img.top {
	vertical-align:top;
}
img.middle {
	vertical-align:middle;
}
address,
em {
	font-style:normal;
}
a {
	color:#111111;
	text-decoration: none;
	transition: 0.2s;
}
a:hover,
input[type="submit"]:hover,
input[type="reset"]:hover{
	opacity:0.8;
	filter:alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
	color:#331900;
}

/*********** class ****************************************/
/********** float ************/
.c-both {
	clear:both;
}
.clearfix:after {
	content: "";
	clear: both;
	display: block;
}
.left {
	float:left;
}

.right {
	float:right;
}
.center {
	display:block;
	margin-left:auto; margin-right:auto;
	text-align:center;
}
.block{
	display:block;
}

.red{ color:#F00
}
/******* flex box ***********/
.flex{
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.flex img {
    object-fit: cover;
    object-position: top;
}
.flex img.sum {
	object-fit: cover;
    object-position: top;
}
.height {
	justify-content: space-between;
  	flex-wrap: wrap;
	align-items: stretch;
}

.indent {
    font-weight:normal; margin:5px 0 5px 1em;
    text-indent:-1em;
}
img.banner {
	border:solid 1px #DDD;
}
span.memo {
	color:#666;
	font-size:0.9em;
}
span.error {
	display:block;
	color:#F03;
	font-size:0.9em;
}
hr {
	height: 5px;
	background-color: #006C3E;
	width: 100%;
	border: none;
	margin:60px 0 0 0;
}
.pr {
	position:relative;
}
.pa {
	position:absolute;
}

header, main, article, footer, section, aside, nav, cite, figure, figcaption { 
	display: block; 
}
img.img_size {
	display: block;
	height: auto;
	width: 100%;
}
dl.table {
	display:table; width:100%;
}
dl.table dt,
dltable dd {
	display:table-cell;
}
/***** btn **********/
a.more {
	position: relative;
	display: inline-block;
	width: 70%;
	max-width: 350px;
	padding: 1em 0 1em 0;
	font-size: 1em;
	text-align: center;
	margin-top: 1em;
	margin-bottom: 1em;
	font-weight: 500;
	color: #FFFFFF;
	background-color:#279E77;
}
a.more2 {
	position: relative;
	display: inline-block;
	width: 70%;
	max-width: 280px;
	padding: 1em 0 1em 0;
	font-size: 1em;
	text-align: center;
	margin-top: 1em;
	margin-bottom: 1em;
	font-weight: 500;
	color:#279E77;
	background-color:#FFFFFF;
}
a.more::after,
a.more2::after{
    content: "";
    position: absolute;
    right: -9px;
    bottom: -9px;
    width: 0;
    height: 0;
    border: 9px solid transparent;
    border-top-color: transparent;
    border-top-style: solid;
    border-top-width: 9px;
    border-top: 9px solid #000;
    transform: rotate(-45deg);
}
.sp {
	display: none;
}
.pc {
	display: block;
}

/*************** header start ***************************/
header span.border{
	height: 2.5em;
	display: inline-block;
	background: repeating-linear-gradient( 0deg,#fff, #fff 2px, #6C5142 2px,#6C5142 4px );
	width: 2px;
    vertical-align: super;
}
header#header {
	padding: 1.3em 0 1em 0;
}
header#header section {
	margin: 0 auto 0 auto;
}
header#header section h1.logo {
	display: block;
	width: 23%;
	max-width: 361px;
	margin:0.3em 0 0 0;
}
header#header section h1.logo.logo_sp{
    display: none;
}
header#header section h1.logo a {
	display:block; width:100%;
}
header#header section h1.logo a img {
	width:100%;
}
header#header nav {
	display:block;
	width:77%;
	text-align: right;
}
header#header nav ul#nav {
	list-style-type:none; padding-left: 0;
	margin:0;
	width: 87.5%;
}
header#header nav ul#nav li {
	display:inline-block; margin:0 3%;
}
header#header nav ul#nav li a{
	font-size:0.875em;
	color:#6C5142;
	display:block;
	font-weight:500;
	letter-spacing:1px;
}
header#header nav ul#nav li a img{
	display:block;
	margin:auto;
	padding-bottom: 0.5em;
}
header#header nav ul#nav li a.select {
	border-top:solid 4px #22A605; padding-top:3px;
}
header #spnav {
	display:none;
}
header#header #trans {
	margin: 1.6em 0 1em 0;
	width: 12.5%;
}

/******** 共通 layout *******************/

.inner {
	width:96%; max-width:1600px;
	margin:0 auto;
}
.middle_inner {
	width: calc(100% - 10%); max-width:1388px;
	margin:0 auto;
}
.lower_inner {
	width: calc(100% - 20%); max-width:1000px;
	margin:0 auto;
}
main {
	width:100%;
}
main .content {
	margin:0 0 100px 0; padding:0;
}
main img.heading{
	width:100%; margin-bottom:20px;
}

/***************** video start ***********************/

.mainVisual h1 {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 50%;
    height: 35%;
    margin: auto;
    /*line-height: 80px;*/
    text-align: center;
    color: #fff;
    font-size: 2.875em;
    /*border: 1px solid #fff;
    background: rgba( 0, 0, 0, 0.3 );*/
    /*padding: 1em;*/
}
.mainVisual h1 img {
	display:block; margin:0 auto; text-align:center;
}
.mainVisual {
  position: relative;
  width: 100%;
  /*height: 300px;*/ height:100vh;
  overflow: hidden;
  /*background: linear-gradient(-45deg, rgba(4, 114, 124, 0.4), rgba(17, 66, 99, 0.6));*/
  /*background: linear-gradient(-45deg, rgba(4, 114, 124, 0.3), rgba(17, 66, 99, 0.5));*/
  	background-image: url(../img/top/dot.png);
	background-repeat: repeat;

}
.mainVisual video {
  position: absolute;
  left: 0;
  top: 0;
  min-width: 100%;
  min-height: 100%;
  z-index: -1;
}
.kayahara_txt {
	display: block;
	position: absolute;
	left: 10%;
	top: 35%;
	height: auto;
	max-width: 808px;
	width: 45%;
}
img.kayahara_txt.sp{
	display:none;
}

.mainVisual .to_recruit {
	inset: auto 3.55% 15% auto;
	padding: 0.5em;
	inline-size: min(400px,30%);
	box-sizing: border-box;
	background: #fff;
	opacity: 1;
}
.mainVisual .to_recruit .bg {
	background-color: #92B674;
	box-sizing: border-box;
	padding: 1em 0.75em 0.7em 1.25em;	
}
.mainVisual .to_recruit .small {
	font-size: 1.2em;
	letter-spacing: 0.05em;
	inline-size: fit-content;
	line-height: 1em;
	font-weight: 900;
	padding: 3px 8px 3px 8px;
	background: #fff;
}
.mainVisual .to_recruit .text1 {
	font-size: 1.65em;
	line-height: 1.5em;
	text-shadow: 0 0 5px #444;
	letter-spacing: 0;
	margin-block-start: 0.05em;
	transform: translateX(-2px);
	font-weight: 600;
	color: #fff;
}
.mainVisual .to_recruit .img {
	inset: auto 7% 8% auto;
	inline-size: min(148px,42%);
}
.mainVisual .to_recruit .bottom {
	padding-block: 0.125em 0;
}
.mainVisual .to_recruit .text2 {
	font-size: 1.35em;
	letter-spacing: 0.05em;
	text-shadow: 2px 2px 1px #fff, -2px 2px 1px #fff, 2px -2px 1px #fff, -2px -2px 1px #fff, 2px 0px 1px #fff, 0px 2px 1px #fff, -2px 0px 1px #fff, 0px -2px 1px #fff;
	filter: drop-shadow(1px 2px 1px #AAA);
	padding-inline-start: 0.75em;
	font-weight: 900;
}
.mainVisual .to_recruit .text3 {
	font-size: 1.1em;
	color: #729951;
}
.mainVisual .to_recruit .fa-chevron-right {
	font-size: 1.300em;
	inset: 55% 1.9em auto auto;
	transform: translateY(-50%);
	line-height: 1em;
	inline-size: 1.55em;
	text-align: center;
	block-size: auto;
	box-sizing: border-box;
	aspect-ratio: 1;
	padding-block-start: 0.3em;
	border-radius: 50%;
	padding-inline-start: 2px;
	transition: all 0.3s;
	color: #FFF;
	background-color: #92B674;
}
.mainVisual .to_recruit:hover .fa-chevron-right {
  inset: 55% 1.6em auto auto;
}
@media (min-width: 768px) and (max-width: 1023px) {
.mainVisual .to_recruit .text1 {
	font-size: 1.7em;
}
.mainVisual .to_recruit .text2 {
  font-size: 1.21em;
}
}

@media screen and (min-width: 768px) {
  /*.mainVisual {
    height: 500px;
  }*/
}


/****************** form ****************************************************/

section#contact div.common{
	background-image: url(../img/contact/bg.jpg);
}
section#contact h2.common_h2 img {
	max-width: 69px;
	width: 6%;
	vertical-align: middle;
}
section#contact .middle_inner {
	padding:3em 0 5em 0;
}
section#contact form table {
	width:80%; margin:0 auto 30px auto;
}
section#contact form table th {
	width:30%; background-color:#FCF9F9; border-bottom:solid 3px #ebddc9;
	padding:12px 2% 12px 2%; text-align:right;
	color:#493118;
}
section#contact form table td {
	padding:12px 2% 12px 2%;
}
section#contact form table td a{
	color:#6C5142;
}
section#contact form table td input {
	width:80%; padding:1%; font-size:1em;
}
section#contact form table td textarea {
	width:80%; padding:1%; height:80px; font-size:1em;
}
section#contact form input[type=submit] {
	border-radius:0;
	-webkit-appearance: none;
	width:30%; marginm:30px auto 30px auto; height:41px; font-size:1.3em;
	background-color:#CCC; border:solid 1px #BBB;
	cursor:pointer;
	box-shadow:0px 0px 13px -5px rgba(0, 0, 0, 0.8);
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	-o-border-radius: 4px;
	-ms-border-radius: 4px;
	margin-bottom:50px;
}
form a.back {
	display:inline-block;
	text-align:center;
	text-decoration:none;
	line-height:41px;
	width:30%; margin-bottom:31px; height:41px; font-size:1.3em;
	background-color:#999; border:#777 solid 1px;
	color:#FFF; cursor:pointer;
	box-shadow:0px 0px 13px -5px rgba(0, 0, 0, 0.8);
	border-radius: 2px;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	-o-border-radius: 2px;
	-ms-border-radius: 2px;
}
form a.post {
	display: inline-block;
	text-align: center;
	text-decoration: none;
	line-height: 41px;
	width: 30%;
	margin-bottom: 31px;
	height: 41px;
	font-size: 1.3em;
	background-color:#CADCB5;
	border: solid 1px #9dba7b;
	color:#638837;
	cursor: pointer;
	box-shadow: 0px 0px 13px -5px rgba(0, 0, 0, 0.8);
	border-radius: 2px;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	-o-border-radius: 2px;
	-ms-border-radius: 2px;
}
form a.back + a.post{
	margin-left: 3%;
}
span.h {
	background-color:#E80032;
	color:#FFF; font-size:0.7em; font-weight:normal;
	display:inline-block;
	padding:1px 8px 0px 8px;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	-o-border-radius: 3px;
	-ms-border-radius: 3px;
}
span.n {
	background-color:#7FCDF1;
	color:#FFF; font-size:0.7em; font-weight:normal;
	display:inline-block;
	padding:1px 8px 0px 8px;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	-o-border-radius: 3px;
	-ms-border-radius: 3px;
}
.dark{
	color:#493118;
}

/********************************** footer start ****************************************/
footer#footer {
	overflow: hidden;
	background-color: #F3F7EF;
	background-image: url(../img/header/footer_bg.jpg);
	background-repeat: no-repeat;
	background-position: center bottom;	
	
}
footer#footer a{
	color:#6C5142;
}
footer#footer section {
	padding:2.5em 0 2em 0;
	max-width:1200px;
}
footer#footer section .footer_logo {
	width:35%;
}
footer#footer section h6 {
	font-size:1.4em; margin:0 0 1em 0;
}
footer#footer .middle_inner .footer_logo.left h6 {
	display:block; width:100%; max-width:361px;
	margin-bottom: 0.8em;
}
footer#footer .middle_inner .footer_logo.left h6 a {
	display:block; width:100%;
}
footer#footer .middle_inner .footer_logo.left h6 a img {
	width:100%;
}
footer#footer div.footer_logo address {
	font-size:0.875em;
}
footer#footer a.foot_tel {
	font-size: 0.875em;
	padding-top: 0.5em;
	display: block;
}
footer#footer a.foot_tel i {
	padding-right:0.5em;
}
footer#footer nav {
	width:65%;
}
footer#footer nav ul {
	list-style-type:none;
	margin:0; padding:1em 0 0 0;
	justify-content: flex-end;
}
footer#footer nav ul li {
	margin-bottom:0.5em; font-size:0.875em; 
	padding-left:3%;
}
footer#footer nav ul li a{
	text-indent:1px;
	letter-spacing: 1px;
	font-weight: 500;
}
footer p.copy {
	padding:14em 0 0 0; margin:0;
	font-size:0.75em;
	font-weight: normal;
}

/*****************  top_about  **********************/
section#top_about,
section#top_recruit {
	padding-bottom: 10em;
}
.bg_green{
	background-color:#F3F7EF;
}
h2.top_ttl{
	font-size:2.25em;	
	color:#92B674;
	letter-spacing: 6px;
	text-indent: 6px;
	margin-top: 0;
	padding-top: 2.5em;
}
h2.top_ttl img{
	padding-right: 0.4em;
}
section#top_about h2.top_ttl img{
	max-width: 76px;
	width: 5%;
}
h2.top_ttl span{
	font-family: 'M PLUS 1p', sans-serif;
	font-size:0.889em;
	color:#729951;
	font-weight: 500;
	padding-top: 0.3em;
}
p{
	font-weight: 500;
	letter-spacing: 1.5px;
}
p.brown{
	color:#AF823D;
	font-size:1.375em;
	font-weight: 500;
	letter-spacing: 2px;
	text-indent: 2px;
	margin-bottom: 0;
}
section#top_about div.flex,
section#top_recruit div.flex{
	margin-top: 3.5em;
}
div.tabox{
	position: relative;
	width: 32%;
}
div.tabox img{
	width: 100%;
}
div.tabtn{
	background-color:#FFF;
	width: 84%;
	margin: auto;
	position: absolute;
	bottom: -10%;
	left: 8%;
	right: 8%;
	box-shadow: 0px 0px 4px rgba(0,0,0,0.3);
	padding-top: 0.5em;
}
div.tabtn span{
	font-size: 0.813em;
	color:#FFF;
	background-color:#92B674;
    letter-spacing: 3px;
    text-indent: 3px;
    display: inline-block;
    font-weight: 500;
    padding: 0 0.8em;
}
div.tabtn h3{
	font-size: 1.375em;
	color:#729951;
	font-weight: 500;
	letter-spacing: 4px;
	margin: 0em auto 0.4em auto;
}
div.tabtn a{
	font-size:0.875em;
	color:#AF823D;
	font-weight: 500;
	letter-spacing: 2px;
	text-indent: 2px;
	background-color:#FBF7F2;
	padding: 0.7em 0;
	cursor: pointer;
}
div.tabtn a i{
	padding-left: 1em;
    vertical-align: middle;
}

/****************  top_staff  ********************/

section#top_staff{
	position: relative;
	padding: 7em 0 7.5em 0;
}
.half_green{
	background: linear-gradient(transparent 48%, #CADCB5 48%);
}
section#top_staff img.main{
	display: block;
	margin: 0 0 0 auto;
	width: 77%;
	max-width: 1460px;
}
section#top_staff img.main_sp{
	display:none;
}
section#top_staff div.inner{
	position: absolute;
	top: 35%;
	left: 0;
	right: 0;
	bottom: 36%;
}
div.ttl_box{
	display:block;
	box-shadow: 0px 0px 4px rgba(0,0,0,0.3);
	background-image: url(../img/top/btn_bg.jpg);
	background-repeat: no-repeat;
	background-position: center bottom;	
	background-size:contain;
	width: 31%;
	max-width: 490px;
	background-color: #FFF;
	padding-bottom: 2em;
}
div.ttl_box h2.top_ttl{
	padding-top: 1em;
	margin-bottom: 0;
}
div.ttl_box h2.top_ttl span{
	font-size: 0.72em;
	padding-top:0;
}
section#top_staff h2.top_ttl img{
	max-width: 64px;
	width: 13%;
}
p.btn{
	width: 88%;
	max-width: 230px;
}
p.btn a{
	color:#AF823D;
	border: 1px solid #AF823D;
	display: block;
	padding: 1.05em 0;
	background-color: #FFF;
	font-size: 0.875em;
}
p.btn a i{
	vertical-align: middle;
	padding-left: 1em;
}
p.s_txt{
	margin:0.5em 0 1.2em 0;
}

/******************  top_recruit  *********************/

section#top_recruit{
	background-image: url(../img/top/top_syaff02.jpg);
	background-repeat: no-repeat;
	background-position: center center;	
	background-size: cover;
}
section#top_recruit h2.top_ttl img{
	width: 3%;
    max-width: 46px;
}
section#top_recruit div.tabtn{
	bottom: -15%;
}

/******************  top_topics  ********************/
section#top_topics {
	padding-bottom: 6em;
}
section#top_topics h2.top_ttl img {
	max-width: 75px;
	width: 5%;
}
.bg_pink {
	background-color: #FBF7F2;
}
section#top_topics dl{
	margin:0 auto;
	max-width:800px; width:100%;
	padding-bottom: 2em;

}

section#top_topics dl dt{
	padding-top:0.5em;
}

section#top_topics dl dt time{
	display: block;
	font-size:0.8em;
}

section#top_topics dl dt a{
	display: block;
	font-size:0.9em;
	color:#6C5142;
	font-weight: 300;
	font-family:'Noto Sans JP', sans-serif, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}
section#top_topics dl dd{
	margin: 0;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #BAAC98;
	font-size:0.8em;
	padding-bottom:0.5em;
}



/******************  top_gallery  ********************/

.half_pink {
	background: linear-gradient(transparent 48%, #EBDDC9 48%);
}
section#top_gallery{
	position: relative;
	padding: 9em 0 7.5em 0;
}
section#top_gallery h2.top_ttl img{
	max-width: 68px;
	width: 14%;
}
section#top_gallery img.main{
	display: block;
	margin: 0 auto 0 0;
	width: 77%;
	max-width: 1460px;
}
section#top_gallery div.inner{
	position: absolute;
	top: 35%;
	left: 0;
	right: 0;
	bottom: 36%;
}
section#top_gallery div.ttl_box{
	margin: auto 0 auto auto;
}

/*******************************  gallery  ************************************/
div.common{
	background-size:cover;
	background-position:center center;	
}
h2.common_h2{
	color:#FFF;
	margin: 0;
	padding: 6.7em 0;
	max-height: 600px;
	font-size: 2.25em;
	letter-spacing: 8px;
	font-weight: 600;
}
h2.common_h2 img{
	display: inline-block;
    padding-right: 0.4em;
    vertical-align: top;
}
h2.common_h2 span{
	display: block;
	font-size: 0.722em;
	font-weight: 400;
	letter-spacing:5px;
}
section#gallery h2.common_h2 img{
	max-width: 68px;
    width: 4%;
}
section#gallery div.common{
	background-image: url(../img/gallery/bg.jpg);
}
section#gallery ul {
	list-style-type:none; padding:0;margin:0;
}
section#gallery ul li {
    width: calc(92% / 4);
    max-width: 326px;
    margin: 0 1% 1.5% 1%;
    padding: 0;
}
section#gallery ul li a img {
	width:100%;
}
h3.title{
	font-size: 1.5em;
	letter-spacing: 4px;
	font-weight: 500;
	padding-top: 3em;
	margin-bottom: 1.5em;
}
.bg01{
	background-color:#EBDDC9;
}
section#gallery .bg01{
	padding: 5em 0 6em 0;	
}

/**************  about  *******************/

section#about div.common{
	background-image: url(../img/about/bg.jpg);
}
section#about h2.common_h2 img {
    max-width: 76px;
	width: 6%;
	vertical-align: middle;
}
h3.bo_ttl{
	font-size:3.125em;
	color:#729951;
    font-weight: 500;
    letter-spacing: 6px;
	position: relative;
	margin:0 auto 0.6em auto;
	padding-top: 1.7em;
}
h3.bo_ttl div.h3_inner{
	position: relative;
	display: inline-block;
	padding-left: 1em;
	padding-right: 1em;
	background-color:#FFFFFF;
	z-index: 2;
}
h3.bo_ttl span{
	font-size:0.32em;
	display:block;
	letter-spacing: 2px;
	margin-top: -0.5em;
}
h3.bo_ttl:after{
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 1.55em;
	z-index: 0;
	border-bottom: solid 2px #729951;
	width: 100%;
}
p.cont{
	margin-bottom: 2em;
}
section#about section.half_green{
	background: linear-gradient(transparent 71%, #CADCB5 48%);
}
section#concept div.flex,
section#town div.flex{
	margin-top: 4em;
	padding-bottom: 4em;
}
section#concept div.flex img,
section#company div.flex img{
	width: 32%;	
}
section#town div.flex img{
	width: 48.1%;
}
section#about section.half_pink{
	background: linear-gradient(transparent 68%, #EBDDC9 48%);
}
section#company{
	padding-bottom: 7em;
}
table.data {
    width: 100%;
    border-collapse: collapse;
	margin-bottom: 2em;
	border-top: dotted 2px rgba(173,163,153,0.5);
	margin-top: 5em;
}
table.data th, table.data td {
    padding-top: 0.6em;
	padding-bottom: 0.6em;
    border-bottom: dotted 2px rgba(173,163,153,0.5);
    font-weight: 500;
	letter-spacing: 2px;
}
table.data th {
	padding-left:1.5em;
    text-align: left;
    width: 13.5em;
	vertical-align: text-top;
}
table.data td a{
	color:#6C5142;
}

/***************  staff  *****************/

section#staff div.common{
	background-image: url(../img/staff/common_bg.jpg);
	background-position: 77% center;
}
section#staff h2.common_h2 img{
	max-width: 64px;
	width: 5.5%;
}
div.staff_main{
	background-color:#CADCB5;
	padding:4em 0 3em 0;
}
section#staff div.staff_main dl.staff {
    width: 32%;
	max-width: 512px;
	margin-right: calc(13% / 6.5);
	margin-bottom: 2%;
}
section#staff div.staff_main dl.e_dl {
    margin-right: 0;
}
section#staff div.staff_main dl.staff dt.staff_ttl div.staff_img {
    background-size: contain;
    background-repeat: no-repeat;
    cursor: pointer;
	display:inline-block;
}
dl.staff dt.staff_ttl div#staff01 {
    background-image: url(../img/staff/staff01_on.jpg);
}
dl.staff dt.staff_ttl div#staff02 {
    background-image: url(../img/staff/staff02_on.jpg);
}
dl.staff dt.staff_ttl div#staff03 {
    background-image: url(../img/staff/staff03_on.jpg);
}
dl.staff dt.staff_ttl div#staff04 {
    background-image: url(../img/staff/staff04_on.jpg);
}
dl.staff dt.staff_ttl div#staff05 {
    background-image: url(../img/staff/staff05_on.jpg);
}
dl.staff dt.staff_ttl div#staff06 {
    background-image: url(../img/staff/staff06_on.jpg);
}
dl.staff dt.staff_ttl div#staff07 {
    background-image: url(../img/staff/staff07_on.jpg);
}
dl.staff dt.staff_ttl div#staff08 {
    background-image: url(../img/staff/staff08_on.jpg);
}
dl.staff dt.staff_ttl div#staff09 {
    background-image: url(../img/staff/staff09_on.jpg);
}
section#staff div.staff_main div.thanks dl.staff{
	float:none;
	margin:0 auto;
}
section#staff div.staff_main div.thanks h3.title{
	padding-top: 1em;
}
section#staff div.staff_main dl.staff dd.dd_box {
    margin: 0 0 -2.5em 0;
}
section#staff div.staff_main dl.staff dd.low{
	padding-bottom:0;
}
section#staff div.staff_main dl.staff dd.height{
	min-height: 210px;
}
section#staff div.staff_main dl.staff dt.staff_ttl img {
	width:100%;
}
section#staff div.staff_main dl.staff dt.staff_ttl img:hover {
    opacity: 0;
    filter: alpha(opacity=0);
    -ms-filter: "alpha( opacity=0 )";
    transition-property: opacity;
    transition-duration: 1s;
    transition-timing-function: ease-in-out;
}
section#staff div.staff_main p.coment_ttl{
	display:inline-block;
}
section#staff div.staff_main p.coment_ttl span{
	color:#FFF;
	background-color:#FF9224;
	font-size:0.875em;
	padding: 0.17em 1.75em;
	font-size: 0.875em;
	margin-right: 0.5em;
}
section#staff div.staff_main p.coment_txt{
	display:inline-block;
}
section#staff p.staff_data{
	width: 95%;
	margin: auto;
	padding-top: 1.3em;
	font-weight: 500;
	border-bottom: 1px solid #CCCCCC;
	font-size: 1.125em;
	padding-bottom: 0.5em;
}
section#staff p.staff_data span.year{
	float:right;
	font-size: 0.83em;
}
section#staff p.staff_data span.small_txt{
	font-size:0.938em;
	color:#24B8FF;
	padding-right: 1.3em;
	font-size: 0.83em;
}
section#staff dl.coment{
	width:95%;
	margin:auto;
}
section#staff dl.profile{
	width: 95%;
	margin: 1em auto 0 auto;
}
section#staff dl.profile + dl.profile{
	margin-top: 0.5em;
}
section#staff dl.profile dt {
    color: #FFF;
	background-color:#F0C000;
    font-size: 0.875em;
    font-weight: 500;
    text-align: center;
    width: 17.5%;
    margin: 0;
	letter-spacing: 4px;
	line-height: 1.4;
	padding: 0.2em 0;
	text-indent: 4px;	
}
section#staff dl.profile dt.coment_txt1 {
    background-color: #C10000;
}
section#staff dl.profile dd {
    text-align: left;
    width: 80%;
    margin: 0;
    font-size: 0.938em;
    font-weight: 500;
	line-height: 1.4;
	padding: 0.2em 0;
}
section#staff dl.profile dt.coment_txt3,
section#staff dl.profile dd.coment_txt3{
	margin-top: 0.5em;
	line-height: 1.4;
	padding: 0.2em 0;
}
section#staff div.tabtn{
	padding-top: 0.7em;
	padding-bottom: 1.3em;
	position: relative;
	left: 0;
	right: 0;
	margin: auto;
	bottom: 4.5em;	
}
section#staff div.tabtn span{
	font-size:0.938em;
}
section#staff div.tabtn span.year {
	color: #92B674;
    background: none;
    padding: 0;
    font-size: 0.7em;
}
dl.stf{
	margin-bottom: 0.3em;
}
dl.stf dt{
	font-size: 0.938em;
	display: inline-block;
	color:#FFF;
	font-weight: 500;
	letter-spacing: 3px;
	text-align: center;
	text-indent: 5px;
	width: 22%;
	line-height: 1.7;
}
dl.stf dt span{
	background-color:#DCC4A0;
	padding: 0;
	width: 100%;
	max-width: 84px;
	display: block;
}
dl.stf dd{
	margin: 0;
	font-size: 0.875em;
	display: inline-block;
	width: 77.5%;
	font-weight: 450;
}

/***** 趣味あり *****/
/*
section#staff div.tabtn h3{
	margin: 0em auto 0.8em auto;
	padding-bottom: 0.7em;
	border-bottom: 1px solid #CCC;
}

/****** 趣味なし ******/
section#staff div.tabtn h3 {
    margin: 0em auto 0.5em auto;
}
section#staff div.tabtn h3 span.helper{
	display: block;
	background-color: transparent;
	color: #6C5142;
	font-size: 0.75em;
	position: absolute;
	bottom: 0.5em;
	right: 0;
	left: 0;
	margin: auto;
}

/****************  recruit  ********************/

section#recruit div.common{
	background-image: url(../img/recruit/common_bg.jpg);
}
section#recruit h2.common_h2 img{
	max-width:46px;
	width: 4%;
}
section#message h3.bo_ttl div.h3_inner{
	background-color:#F3F7EF;
}
section#message p.brown{
	color:#C79F64;
	font-size:1.5em;
	margin-bottom: 3.5em;
}
section#message div.flex_a + div.flex_a{
	padding-top: 3.5em;
	border-top: 2px solid #ADA399;
    margin-top: 2.5em;
}
section#message div.flex div{
	max-width: 670px;
	width: 49%;
}
section#message div.flex dl dt{
	font-size: 1.5em;
    font-weight: bold;
    letter-spacing: 3px;
	border-bottom: 2px dotted #ADA399;
	padding-bottom: 0.5em;
	margin-bottom: 0.4em;
}
section#message div.flex dl dt i{
	color:#FC0;
	font-size: 1.25em;
	padding-left: 0.25em;
}
section#message div.flex dl dd{
	margin: 0;
	font-weight: 500;
	padding:0.9em 1.5em;
	letter-spacing: 2px;
}
section#message div.flex div.right_box img{
	width:100%;
	height:auto;
}
div.flex_b{
	margin-top: 4em;
	padding-bottom: 4em;
}
section#message div.flex_b div.flex{
	width: 49%;
	max-width: none;
}
div.flex_b img{
	max-width:326px;
	width: 48%;
	height:auto;
}
section#photo{
	background: linear-gradient(transparent 80%,#CADCB5 80%);
}
section#photo h3.title{
	padding-top: 1.2em;
}
section#photo div.flex{
	padding-bottom: 4em;
	flex-wrap: wrap;
}
section#photo div.flex img{
	max-width:444px;
	width: 32%;
	margin-block-start: 2em;
}
section#photo table{
	width: 95%;
    margin: auto;
	border-collapse: collapse;
	margin-bottom: 3.5em;
}
section#photo table th,
section#photo table td{
	padding: 10.5px 0.415em;
	font-weight: 500;
	background-color:#FFF;
	border: 1px solid #ADA399;
	color:#6C513F;
    vertical-align: text-top;
}
section#photo table th{
	width: 24.5%;
}
section#photo table th.bg_green{
	background-color:#F3F7EF;
}
section#photo table td{
	background-color:#FFF;
	padding-left: 1.5em;
	padding-right: 1.5em;
}
section#photo table tr.small th,
section#photo table tr.small td{
	padding-top: 15px;
	padding-bottom: 20px;
}
section#photo table tr.small td{
	font-size:0.875em;
}
span.leaf{
	font-size:1.125em;
	color:#729951;
	padding-bottom: 0.5em;
	font-weight: 500;
	padding-top: 1em;
}

h3.flow_h3{
	padding-top: 1.3em;
	margin-bottom: 1.5em;
}
section#flow{
	padding: 3.5em 0;
}
section#flow table{
	width: 95%;
    margin: auto;
	border-collapse: collapse;
}
section#flow table th,
section#flow table td{
	padding: 0.415em;
	border-bottom: 3px solid #EBDDC9;
	font-weight: 500;
	color:#463118;
}
section#flow table th{
	width: 18%;
}
section#flow table td{
	padding-left: 1.5em;
}

.lower_inner-day-th {
    background-color: #FFFAE4;
}


.lower_inner-noon-th {
    background-color: #DEC5A5 ;
}

.lower_inner-noon-td {
    background-color: #F4EEE6;
}

.lower_inner-evening-th,
.lower_inner-morning-th,
.lower_inner-night-th {
    background-color: #CADCB6;
}

.lower_inner-evening-td,
.lower_inner-morning-td,
.lower_inner-night-td {
    background-color: #EFF4EA;
}


div.car{
   margin-top:1em;
   margin-bottom: 0.5em;
}

ul#slide01{
	margin-top: 4em;
    padding-bottom: 4em;
}
ul#slide01 li{
	margin-inline-end: 3em;
	width: 19.268%;
}

ul#slide01 li img{
	max-width: 326px;
	width: 100%;
    height: auto;
}

/*** video ***/
p.sakunyu{
	font-size: 1.25em;
	padding-bottom: 0.5em;
	margin: 3em auto 1em auto;
}
p.sakunyu i{
	vertical-align: middle;
	font-size: 1.2em;
	padding-right: 0.2em;
}
div.video_container{
}
div.video_container video{
	margin: 0 auto;
	max-width: 100%;
	display: block;
}

/***botan***/
section#recruit p.contact_p {
	font-size: 1.5em;
    font-weight: 600;
    margin-top: 4em;
	margin-bottom: 0.3em;
}
section#recruit i.fa-chevron-down {
    color:#FF9900;
    font-size: 3.25em;
	font-weight: 500;
}
div.button_wrapper{
	padding-bottom: 6em;
}
section#recruit div.button_wrapper push_button {
    width: 80%;
}
section#recruit div.button_wrapper dl {
    width: 47%;
}
section#recruit div.button_wrapper dl dd {
    margin: 0;
    padding: 0;
    height: 3.8em;
	line-height: 3.8em;
}
section#recruit div.button_wrapper dl.tel dd a {
    background-color: #729951;
    font-size: 2em;
	letter-spacing: 2px;
}
section#recruit div.button_wrapper dl dd a {
    display: block;
    text-align: center;
    margin: 0;
    padding: 0;
    color: #FFF;
    height: 100%;
    border-radius: 7px;
    -moz-border-radius: 7px;
    -webkit-border-radius: 7px;
    -o-border-radius: 7px;
    -ms-border-radius: 7px;
	background-color:#6C5142;
	font-size: 1.5em;
    font-weight:600;
}
section#recruit div.button_wrapper dl.right dd a{
	font-family: 'Noto Sans JP', sans-serif, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	font-weight: 500;
	letter-spacing: 2px;
}
section#recruit div.button_wrapper a {
    color: #493118;
    text-decoration: none;
    transition: 0.2s;
}
section#recruit img.house_img{
	padding-top:1em;
}
section#recruit dl.tel a i{
	margin-right: 0.2em;
    font-size: 0.7em;
}
section#recruit dl.contact a i{
	margin-right: 0.2em;
	font-size: 1em;
	padding-right: 0.1em;
}
table.data td ul{
	list-style: none;
	padding: 0;
	margin: 0;
}
table.data td ul li:before{
	content: "◆";
}

/*************** iPad *********************************************************************/
@media (min-width: 768px) and (max-width: 1080px) {
body{
	font-size:12px;
}

/**************  header  ******************/

header#header section{
	position: relative;
	padding: 0.5em 0;
}
header#header section h1.logo{
	width: 30%;
	margin: 0;
}
header#header nav{
	width: 73%;
	padding-top: 0;
}
header#header #trans{
	display: block;
	width: 100%;
	margin: 0 0 0.5em 0;
}
header#header section h1.logo.logo_pc {
    display: none;
}
header#header section h1.logo.logo_sp {
    display: block;
	margin: 1.5em 0 0 0;
    max-width: 191px;
}
header#header nav ul#nav li a img{
	max-width: 3em;
	max-height: 3em;
}
header#header nav ul#nav{
	width:100%;
}
footer#footer{
	background-size: 150%;
}
footer p.copy{
	padding: 9em 0 0 0;
}

/**********  video  ***********/

.mainVisual{
	height: 53vh;
}

/********  top  **********/

.kayahara_txt{
	left: 3%;
	width: 56%;
	top: 34%;
}
img.kayahara_txt.sp{
	display:none;
}
div.tabtn{
	bottom: -20%;
}
section#top_staff div.inner{
	top: 28%;
}
section#top_recruit div.tabtn{
	bottom: -30%;
}
section#top_gallery div.inner{
	top: 29%;
}

/************  gallery  ***************/

section#gallery h2.common_h2 img{
	vertical-align: middle;
}

/**************  staff  ****************/

dl.stf dt{
	width: 25%;
	float: none;
}
dl.stf dd {
    display: block;
    float: none;
    margin: auto;
}

/************  recruit  ***************/

section#message div.flex_a{
	display: block;
}
section#message div.flex div{
	width: 100%;
	margin: auto;
}
div.flex_b img{
	width: 49%;
}

div.car{
   margin-top:1em;
   margin-bottom: 0.5em;
}

}