@charset "utf-8";
* {
	box-sizing: border-box;
}
body {
	margin: 0;
	padding: 0;
	height: 100%;
	font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "Helvetica Neue", Helvetica, Arial, sans-serif;
	background-color: #fff;
	letter-spacing : 0.1em;
}
header {
	z-index: 9999;
	padding: 10px 4% 10px;
	margin-top: 0px;
	position: fixed;
	top: 0;
	width: 100%;
	background-color: #fff;
	display: flex!important;
	align-items: center;
	transition: all .2s ease-out;
	color: #000;
}
header.min-header {
	padding: 10px 4%;
	background-color: #fff;
}
h1 {
	margin: 0;
	padding: 0;
	font-size: 20px;
}
a {	
	text-decoration: none;
	color: #111;
}
p {
	line-height: 2rem;
}

nav {
	margin: 0 0 0 auto;
}
ul {
	margin: 0;
	padding: 12px 0;
}
ul.news_page {
	list-style: none;
	margin: 0;
	padding: 0;
}
#header ul,.about_left ul,#footer ul {
	display: flex!important;
	list-style: none;
}
#guide ul,ul.news,.leftinfoarea ul {
	list-style: none;
}
li {
	margin: 0 7px;
	font-size: 14px;
}
.main-visual {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 40vh;
	background: url('img/topimg.jpg') top center / cover no-repeat;
	padding-top: 70px;
}
.main-visual h2 {
	margin: 100px 0 40px 0;
	font-size: 30px;
	font-weight: normal;
	color: #fff;
}
.sp-nav {
	display: none;
}

/*リンクボタン*/
a.button {
	display: block;
	width: 80%;
	margin: 0 auto;
	padding: 10px 30px;
	text-align: center;
	border: 1px solid #fff;
	transition: all .3s ease-out;
}
a.button-s {
	display: block;
	width: 80%;
	margin: 0 auto;
	padding: 10px 30px;
	text-align: center;
	border: 1px solid #fff;
	transition: all .3s ease-out;
}
a.button-r {
	display: block;
	width: 100%;
	margin: 0 auto;
	padding: 20px 30px!important;
	text-align: center;
	border: 1px solid #fff;
	transition: all .3s ease-out;
	border-radius: 10px;
	font-weight: bold;
	font-size: 1.6rem!important;
}
.reservebtn {
	padding: 10px 0;
}
a.button:hover,a.button-s:hover,a.button-r:hover {
	color: #505050;
	background-color: #fff;
}
/* section */
.flex {
	display: flex;
}
section {
	overflow: hidden;
	text-align: center;
	padding: 10px 0;
}
section h2 {
	margin: 0 0 7px 0;
	color: #000;
	text-align: center;
	line-height: 3rem;
	font-size: 1.6rem;
}
section p {
	color: #293f4d;
}
.photo {
	width: 55%;
	height: 500px;
	background: #fff url(section-bg.jpg) center/ cover no-repeat;
}
.photo + div {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 45%;
}
#information,#nonodenpub {
	background-color: #f7f7f7;
}
#service,#guide {
	background-color: #f7f7f7;
}
#service .icon_list,#guide .icon_list {
    display: block;
    margin: 0 auto;
    max-width: 800px;
}
#service ul,#guide ul {
	margin: 0;padding: 0;
    flex-direction: row;
    justify-content: space-between;
    flex-wrap: wrap;
}
#service ul li,#guide ul li {
    width: 25%;
    margin: 0;
    text-align: center;
}
#service ul li:nth-of-type(2),#guide ul li:nth-of-type(2),.cont-inner:nth-of-type(2){
	transition-delay: .2s;
}
#service ul li:nth-of-type(3),#guide ul li:nth-of-type(3),.cont-inner:nth-of-type(3){
	transition-delay: .4s;
}
#service ul li:nth-of-type(4),#guide ul li:nth-of-type(4),.cont-inner:nth-of-type(4){
	transition-delay: .6s;
}
#service ul li img {
    max-width: 116px;
}
#guide ul li img {
    max-width: 100%;
}
#service ul li p,#guide ul li p {
    font-size: 14px;
    color: #f73f6f;
    padding-top: 12px;
}
#service p,#guide p {
	margin: 0 0 40px 0;
}
#service a.button,#guide a.button,#access a.button-s,#event a.button-s,#about a.button-s,#about a.button-r,#intro a.button-s {
	color: #293f4d;
	border: 1px solid #293f4d;
}
#service a.button:hover,#guide a.button:hover,#access a.button-s:hover,#event a.button-s:hover,#about a.button-s:hover,#about a.button-r:hover,#intro a.button-s:hover {
	color: #fff;
	background-color: #293f4d;
}
#about a.button-r {
	color: #318b1c;
	border: 1px solid #318b1c;
}
#about a.button-r:hover {
	color: #fff;
	background-color: #318b1c;
}
#about a.button-s  {
	margin-top: 12px;
}
.abouttoptitle {
	text-align: center;
	line-height: 3.3rem;
	font-size: 1.8rem;
	font-weight: 300;
}
.abouttoptext {
	text-align: center;
	line-height: 2.5rem;
	font-size: 1.2rem;
	font-weight: 300;
}
.aaimgarea {
	padding: 20px 0 40px 0;
}
.aboutarea {
	padding: 40px 0 50px 0;
}
#access p {
	text-align: left;
}
#access p.titlecap {
	text-align: center;
}

.newsbanner {
	padding-bottom: 20px;
}
.flow table {
  border-collapse: collapse;
  margin: 0 auto;
  padding: 0;
  width: 100%;
  table-layout: fixed;
  color: #4CAF50;
}

.flow table tr {
  background-color: #fff;
  padding: .35em;
  border-bottom: 1px dotted #8BC34A;
}
.flow table tr:last-child{
   border-bottom: 2px solid #18521b;
}
.flow table th,
.flow table td {
  padding: 1em 10px 1em 10px;
}
.flow tbody th {
    color: #0f7d13;
}
.flow .txt{
   text-align: left;
   font-size: .85em;
}
.flow .price{
   text-align: right;
   color: #000;
}
.flow h4.tatitle {
	text-align: center;
	font-size: 1.2rem;
	padding-top: 20px;
}
.flowtextarea {
	padding: 10px 20px 30px 20px;
}
.pricearea {
	padding-bottom: 40px;
}
.pricearea h4 {
	font-size: 1rem;
	padding: 20px 0 5px 0;
}
h4.pricearea_title {
	text-align: left;
	font-size: 1.1rem;
	padding: 30px 0 14px;
}
h4.pricearea_title {
	text-align: left;
	font-size: 1.1rem;
	padding: 30px 0 14px;
}
h5.inpaq {
	margin: 40px 0 0 10px;
	padding: .25em 0 .25em .75em;
  	border-left: 6px solid #F39800;
}
p.inpaq_p {
	padding: 5px 0 0 10px!important;
}
@media screen and (max-width: 600px) {
  .flow table {
    border: 0;
    width:100%;
  }
  .flow table th{
    display: block;
    border-right: none;
    border-bottom: 1px solid #0f7d13;
    padding-bottom: .6em;
    margin-bottom: .6em;

  }
  .flow table thead {
    border: none;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
  }
  
  .flow table tr {
    display: block;
    margin-bottom: 2em;
        border-bottom: 1px solid #0f7d13;
        padding: 0;
  }
  
  .flow table td {
    border-bottom: 1px solid #bbb;
    display: block;
    font-size: .8em;
    text-align: right;
    position: relative;
    padding: .625em .625em .625em 4em;
    border-right: none;
  }
  
  .flow table td::before {
    content: attr(data-label);
    font-weight: bold;
    position: absolute;
    left: 10px;
  }
  
  .flow table td:last-child {
    border-bottom: 0;
  }

  .flow table tr:last-child{
   border-bottom: 1px solid #0f7d13;
	}

}
h3.accesstitle{
	font-size: 1.2rem;
	text-align: left;
	padding-top: 10px;
}
.accesstext {
	text-align: left;
}
.accessarea h4{
	text-align: left;
	font-size: 1rem;
	padding-top: 7px;
	padding: .15em 0 .15em .65em;
	border-left: 4px solid #ccc;
}
/* footer */
footer {
	padding: 20px 0 20px;
	background-color: #fff;
	text-align: center;
	color: #000;
}
@media screen and (max-width: 768px) {
	/*ハンバーガーメニュー*/
	.pc-nav {
		display: none;
	}
	.sp-nav {
		z-index: 1;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		display: block;
		width: 100%;
		background: rgba(0, 0, 0, .8);
		opacity: 0;
		transform: translateY(-100%);
		transition: all .2s ease-in-out;
	}
	#hamburger {
		position: relative;
		display: block;
		width: 30px;
		height: 25px;
		margin: 0 0 0 auto;
		color: #000
	}
	#hamburger span {
		position: absolute;
		top: 50%;
		left: 0;
		display: block;
		width: 100%;
		height: 2px;
		background-color: #000;
		transform: translateY(-50%);
	}
	#hamburger::before {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 2px;
		background-color: #000;
	}
	#hamburger::after {
		content: '';
		display: block;
		position: absolute;
		bottom: 0;
		left: 0;
		width: 70%;
		height: 2px;
		background-color: #000;
	}
	/*スマホメニュー*/
	.sp-nav ul {
		padding: 0;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		height: 100%;
	}
	.sp-nav li {
		margin: 0;
		padding: 0;
	}
	.sp-nav li span {
		font-size: 15px;
		color: #ccc;
	}
	.sp-nav li a, .sp-nav li span {
		display: block;
		padding: 20px 0;
		color: #fff;
	}
	/*-閉じるアイコンー*/
	.sp-nav .close {
		position: relative;
		padding-left: 20px;
	}
	.sp-nav .close::before {
		content: '';
		position: absolute;
		top: 50%;
		left: 0;
		display: block;
		width: 16px;
		height: 1px;
		background: #fff;
		transform: rotate( 45deg );
	}
	.sp-nav .close::after {
		content: '';
		position: absolute;
		top: 50%;
		left: 0;
		display: block;
		width: 16px;
		height: 1px;
		background: #fff;
		transform: rotate( -45deg );
	}
	.toggle {
		transform: translateY( 0 );
		opacity: 1;
	}
	.main-visual {
		padding: 0 4%;
	}
	h1 img {
		width: 60%;
	}
	h2 {
		line-height: 1.6;
		text-align: center;
	}
	/* section */
	#service ul li,#guide ul li {
		width: 50%;
	}
	#concept,#contentimg{
		margin-top: 10px!important;
	}
	.cinfomation {
		display: none;
	}
	.conti-float-img-pc {
		display: none;
	}
	.logo-img-pc {
		display: none;
	}
	.menu_text02 {
		padding-left: 15px!important;
	}
	/*.menu_title_border_foot {
		padding: 0.5em 8.7em!important;
	}*/
	.footertitle {
		padding: 25px 0 10px 0!important;
	}
	.reservearea {
		margin-top: 0px!important;
	}
}
@media screen and (min-width: 640px) {
	.conti-float-img-sp {
		display: none;
	}
	.logo-img-sp {
		display: none;
	}
	.br-sp {
		display:none;
	}
}

table {
	max-width: auto;
	margin: 0 auto;
	margin-bottom: 2px!important;
}

#about table {
	color: #4e4e4e;
	margin-top: 18px;
}

.cinfomation table {
	color: #4e4e4e;
}

table {
	color: #000;
}

/* フェードイン用のCSS */

/* 上からフェードイン */
.slide-top {
	opacity: 0;
	transform: translate(0, -20px);
	transition: all 1s ease-out;
 }

/* 下からフェードイン */
.slide-bottom {
	opacity: 0;
	transform: translate(0, 20px);
	transition: all 1s ease-out;
 }

 /* 左からフェードイン */
.slide-left {
	opacity: 0;
	transform: translate(-20px, 0);
	transition: all 1s ease-out;
 }

/* 右からフェードイン */
.slide-right {
	opacity: 0;
	transform: translate(20px, 0);
	transition: all 1s ease-out;
 }

/* コンテンツ */
.newsarea {
	background-color: #fff;
}
.newsarea .infotitle {
	font-size: 1.6rem;
	padding-top: 35px;
}
#information ul.news li{
	border-bottom: dotted 1px #ccc;
	padding: 20px 0;
}
#information ul.news li:first-child{
	border-top: dotted 1px #ccc;
}
#information ul.news li.date{
	
}
ul.news,ul.cmenu {
	display: block!important;
	text-align: left;
	margin-top: 1rem;
}
.titlecap {
	font-size: .9rem;
	color: #be8c46;
}
.infoimage p{
	padding: 12px 0;
}
.nonoac h3 {
	color: #be8c46;
	padding: 10px 0 7px 0;
	font-weight: 400;
	font-size: 1.2rem;
	text-align: left;
}
.nonoac p {
	line-height: 1.8rem;
	text-align: left;
}
.nonoac img.left {
	float: left;
	padding-right: 20px;
}
.nonoac img.right {
	float: right;
}
.fvav {
	text-align: center;
	display: block;
}
h3.abouttitle {
	font-size: 1rem;
	line-height: 1.8rem;
	padding: 15px 0 7px;
}
h3.abouttitle2 {
	font-size: 1.5rem;
	line-height: 1.8rem;
	padding: 15px 0 30px 0;
}
.check01 {
	border-bottom: double 5px #FFC778;
	padding-bottom: 10px;
}
.abouttext {
	margin-bottom: 0;
	text-align: center;
	line-height: 1.7rem;
}
.abouttext2 {
	margin-bottom: 30px;
	text-align: center;
	line-height: 1.7rem;
}
.aboutmenu,.footermenu {
	display: flex;
	justify-content: center;
	align-items: center;
}
.aboutimage,.infoimage,.nonoac {
	padding: 20px 0;
}
.aboutimage li {
	padding: 0!important;
}
#about ul.news li{
	border-bottom: dotted 1px #ccc;
	padding: 15px 0;
}
#about ul.news li:first-child{
	border-top: dotted 1px #ccc;
}
#about ul.news li.date{
	
}
.excerpt{
	padding-left: 12px;
}
.inline-item + .inline-item::before {
	content: "/";
	margin-left: .5em;  
	margin-right: 1.5em;  
}
.menu_text02 {
	text-align: left;
	font-size: 1rem;
	line-height: 2rem;
	padding-top: 12px;
	padding-left: 24px;
	border-top: dotted 1px #ccc;
}
.reservearea {
	border: 1px solid #ddd;
	padding: 15px 20px;
	text-align: left;
	margin-top: 40px;
}
.reservearea img{
	padding-top: 20px;
}
h3.guidetitle,p.guidetext {
	text-align: left;
}
h3.guidetitle {
	padding: 20px 0;
	line-height: 2.7rem;
}
.guidearea {
	padding-bottom: 40px;
}
.galleryarea {
	padding: 40px 0;
}
.galleryarea img {
	padding: 20px 0;
}
.gallery li {
	margin: 0;
}
#concept{
	background: url(img/main_image01.jpg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	color: #cfcfcf;
	padding: 0;
}
#concept .overlay{
	background: -moz-linear-gradient(top,  rgba(0,0,0,0.8) 0%, rgba(0,0,0,0.73) 17%, rgba(0,0,0,0.66) 35%, rgba(0,0,0,0.55) 62%, rgba(0,0,0,0.4) 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,0,0,0.8)), color-stop(17%,rgba(0,0,0,0.73)), color-stop(35%,rgba(0,0,0,0.66)), color-stop(62%,rgba(0,0,0,0.55)), color-stop(100%,rgba(0,0,0,0.4))); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  rgba(0,0,0,0.8) 0%,rgba(0,0,0,0.73) 17%,rgba(0,0,0,0.66) 35%,rgba(0,0,0,0.55) 62%,rgba(0,0,0,0.4) 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  rgba(0,0,0,0.8) 0%,rgba(0,0,0,0.73) 17%,rgba(0,0,0,0.66) 35%,rgba(0,0,0,0.55) 62%,rgba(0,0,0,0.4) 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  rgba(0,0,0,0.8) 0%,rgba(0,0,0,0.73) 17%,rgba(0,0,0,0.66) 35%,rgba(0,0,0,0.55) 62%,rgba(0,0,0,0.4) 100%); /* IE10+ */
	background: linear-gradient(to bottom,  rgba(0,0,0,0.8) 0%,rgba(0,0,0,0.73) 17%,rgba(0,0,0,0.66) 35%,rgba(0,0,0,0.55) 62%,rgba(0,0,0,0.4) 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cc000000', endColorstr='#66000000',GradientType=0 ); /* IE6-9 */
	height: auto;
	background-attachment: fixed;
}
.concepttext {
	padding: 8% 0 8% 0;
	text-align: center;
}
#concept h2{
	color: #fff;
}
#concept a{
	color: #fff;
}
#concept a:hover{
	color: #000;
}
.message h2{
	line-height: 50px;
}
.message {
	letter-spacing: 0.1em
}
section #contentstitle {
	padding: 100px 0 0 0;
}
#contentstitle h2{
	padding-top: 50px;
}
#contentimg{
	background: url(img/topimg.jpg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	color: #cfcfcf;
	padding: 0;
	margin-top: 150px;
}
#contentimg .overlay{
	background: -moz-linear-gradient(top,  rgba(0,0,0,0.8) 0%, rgba(0,0,0,0.73) 17%, rgba(0,0,0,0.66) 35%, rgba(0,0,0,0.55) 62%, rgba(0,0,0,0.4) 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,0,0,0.8)), color-stop(17%,rgba(0,0,0,0.73)), color-stop(35%,rgba(0,0,0,0.66)), color-stop(62%,rgba(0,0,0,0.55)), color-stop(100%,rgba(0,0,0,0.4))); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  rgba(0,0,0,0.8) 0%,rgba(0,0,0,0.73) 17%,rgba(0,0,0,0.66) 35%,rgba(0,0,0,0.55) 62%,rgba(0,0,0,0.4) 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  rgba(0,0,0,0.8) 0%,rgba(0,0,0,0.73) 17%,rgba(0,0,0,0.66) 35%,rgba(0,0,0,0.55) 62%,rgba(0,0,0,0.4) 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  rgba(0,0,0,0.8) 0%,rgba(0,0,0,0.73) 17%,rgba(0,0,0,0.66) 35%,rgba(0,0,0,0.55) 62%,rgba(0,0,0,0.4) 100%); /* IE10+ */
	background: linear-gradient(to bottom,  rgba(0,0,0,0.8) 0%,rgba(0,0,0,0.73) 17%,rgba(0,0,0,0.66) 35%,rgba(0,0,0,0.55) 62%,rgba(0,0,0,0.4) 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cc000000', endColorstr='#66000000',GradientType=0 ); /* IE6-9 */
	height: auto;
	background-attachment: fixed;
}
#contentsarea,#contentsarea2 {
	padding: 10px 0;
}
.ca2 {
	padding-top: 50px;
}
.ca2 h3,.ca2text {
	text-align: center;
}
.leftinfoarea {
	padding: 0 10px;
}
.cont-inner {
	padding: 20px 10px 40px 10px;
	text-align: left;
}
.conti-float-img-pc img{
	margin: 10px 0 15px 15px;
}
.cont-inner p {
	padding: 7px 0;
}
h4.contih4 {
	padding: 7px 0 0 0;
	font-size: 1.2rem;
	line-height: 2rem;
	color: #dcb974;
}
table.cschedule {
	margin: 20px 0 0;
}
h2.conttoparea img {
	padding-bottom: 10px;
}
h3.cttext {
	font-size: 1.3rem;
	color: #be8c46;
	padding: 10px 0;
	line-height: 2.5rem;
}
h3.menu_title_head {
	text-align: center;
	font-size: 1.1rem;
	padding: 0px 0 5px;
}
h3.menu_title_foot{
	text-align: center;
	font-size: 1.1rem;
	padding: 10px 0 5px;
	float: left;
}
h3.menu_title_middle{
	text-align: center;
	font-size: 1.1rem;
	padding: 10px 0 5px;
}
h3.menu_title {
	text-align: center;
	font-size: 1.1rem;
	padding: 40px 0 25px;
}
h3.reserve_title {
	text-align: center;
	font-size: 1.5rem;
	color: #318b1c;/*文字色*/
	border: solid 3px #318b1c;/*線色*/
	padding: 1em 2em;/*文字周りの余白*/
	border-radius: 3em;/*角丸*/
}
h3.job_title {
	text-align: center;
	font-size: 1.2rem;
	color: #318b1c;/*文字色*/
	border: solid 3px #318b1c;/*線色*/
	padding: 1em 2em;/*文字周りの余白*/
	border-radius: 3em;/*角丸*/
}
h4.reserve_cap {
	text-align: center;
	font-size: 1.2rem;
	padding-top: 10px;
}
h4.recruit_on,h4.recruit_off,h4.recruit_on_l,h4.recruit_off_l {
	font-size: 1.1rem;
	padding-top: 10px;
}
h4.recruit_on_l,h4.recruit_off_l {
	text-align: left;
}
h4.recruit_on,h4.recruit_off {
	text-align: center;
}
h4.recruit_on,h4.recruit_on_l {
	color: #cc0000;
}
.menu_title_border {
	color: #318b1c;/*文字色*/
	border: solid 3px #318b1c;/*線色*/
	padding: 0.5em 4em;/*文字周りの余白*/
	border-radius: 2em;/*角丸*/
}
.menu_title_border_top {
	color: #318b1c;/*文字色*/
	border: solid 3px #318b1c;/*線色*/
	padding: 0.5em 2em;/*文字周りの余白*/
	border-radius: 2em;/*角丸*/
}
.menu_title_border_foot {
	color: #318b1c;/*文字色*/
	border: solid 3px #318b1c;/*線色*/
	padding: 0.5em 2em;/*文字周りの余白*/
	border-radius: 2em;/*角丸*/
}
.cmenu h3 {
	font-size: 1.5rem;
	border-bottom: dotted 1px #333;
	padding-bottom: 14px;
	font-weight: 200;
}
h3.cmenu_title {
	text-align: left;
	font-size: 1.1rem;
	padding: 30px 0 14px;
}
.cmenu_title_border {
	color: #364e96;/*文字色*/
	border: solid 3px #364e96;/*線色*/
	padding: 0.5em 1em;/*文字周りの余白*/
	border-radius: 2em;/*角丸*/
	line-height: 3rem;
}
.maintearea {
	padding-bottom: 10px;
}
.maintecheck,.reservetextred {
	color: #cc0000;
}
.mcarea {
	padding: 20px 0;
	margin: 20px 0;
	background-color: #eee;
	border-radius: 50px;
}
h4.cmainte_title {
	font-size: 1rem;
	padding: 20px 0 5px 0;
}
h5.maintelist {
	line-height: 2.2rem;
	padding-top: 7px;
	margin-bottom: 0;
}
.cont-inner p.maintetext {
	padding: 0;
}
.cmainte_title_border {
	color: #364e96;/*文字色*/
	border: solid 3px #364e96;/*線色*/
	padding: 0.5em 1em;/*文字周りの余白*/
	border-radius: 2em;/*角丸*/
}
.cmenu_cap01 {
	font-size: 1rem;
	border-radius: 20px;
	background-color: #ccc;
	padding: 7px 15px;
	margin-right: 15px;
}
.cmenu_cap02,.cmenu_cap03 {
	vertical-align: middle;
}
.cmenu_cap03 {
	font-size: 1.2rem;
}
.cmenu_text01 {
	text-align: left;
	font-size: 1.6rem;
	margin-bottom: 0;
}
.cmenu_text02 {
	text-align: left;
	font-size: 1rem;
	line-height: 1.8rem;
	padding-top: 12px;
	padding-left: 5px;
	border-top: dotted 1px #ccc;
}

h2.cth2 {
	padding: 30px 0 10px 0;
}
h2.cth3 {
	padding: 10px 0;
	margin-top: 20px;
	background-color: #f49814;
	color: #fff;
}
h2.cth4 {
	padding: 10px 0;
	margin-top: 20px;
	font-size: 1.2rem;
	text-align: left;
}
p.restext {
	text-align: left;
}
p.restext_border {
	text-align: left;
	border: 1px solid #333;
	padding:  20px 30px;
}
h3.restitle{
	padding: 0.25em 0.5em;/*上下 左右の余白*/
	color: #000;/*文字色*/
	background: transparent;/*背景透明に*/
	border-left: solid 10px #31652c;/*左線*/
	text-align: left;
	margin-top: 20px;
	font-size: 1.5rem;
}
h4.reserve_cap02 {
	text-align: center;
	font-size: 1rem;
	padding: 10px 0;
	margin-bottom: 20px;
	color: #bd1722;
	line-height: 2rem;
}
.resred {
	color: #bd1722;
}
.proarea {
	padding-bottom: 10px;
}
.proarea ul{
	padding-bottom: 10px;
	text-align: left;
	padding-left: 10px;
	font-size: 1.2rem;
}
.proarea li{
	padding-bottom: 10px;
	font-size: 1rem;
	line-height: 2rem;
	color: #293f4d;
}
.proarea_text {
	text-align: left;
	margin-bottom: 0px;
}
.underline {
  text-decoration: underline;
  text-decoration-color: #293f4d;
}
.rectitle {
	font-size: 1.2rem;
	text-align: left;
	padding: 30px 0 10px 0;
}
.rectoptext {
	padding-top: 40px;
}
.rectoptext2 {
	padding-top: 40px;
	text-align: left;
}
.recarea {
	text-align: left;
}

.recarea ul {
	margin: 0px 0px 0 10px;
}
.recarea ul li{
	padding-bottom: 4px;
}
.recbtn {
	padding-bottom: 30px;
}
.ffst01 {
	font-weight: bold;
	text-decoration: underline;
}
#news {
	background-color: #ffffff;
}
p.pastnews {
	text-align: right;
}
.news.date {
	padding: 0px 10px;
}

/* チェックボックス*/
input#consent1{
  text-align: left;
  margin: 0;
}
input#consent1 + label{
  text-align: left;
  width: 80%;
}
#interlock{
  pointer-events: none;　/*クリックをキャンセル*/
  width: 100%;
}
.interlock-btn{
  width: 100%;
}
#consent1:checked ~  #interlock {
  pointer-events: auto;　/*キャンセルを解除*/
}
@media screen and (max-width:767px)  { 
input#consent1 + label{
width: 100%;
}
}/* SP END */


/*ContactForm7カスタマイズ*/
.wpcf7 {
	max-width: 100%!important;
	text-align: left;
}
table.CF7_table{
	width:100%;
	margin:0 auto;
	border: 1px solid #e5e5e5;
	vertical-align: middle;
}

table.CF7_table tr{
	border-top: 1px solid #e5e5e5;
}

.single .entry-content table.CF7_table,
.page .entry-content table.CF7_table{
	display:table;
}

/*入力欄*/
.CF7_table input, .CF7_table textarea {
	border: 1px solid #d8d8d8;
}

.CF7_table ::placeholder {
	color:#797979;
}

/*「必須」文字*/
.CF7_req{
	font-size:.9em;
	padding: 5px;
	background: #f79034;/*オレンジ*/
	color: #fff;
	border-radius: 3px;
	margin-right:1em;
}

/*「任意」文字*/
.CF7_unreq{
	font-size:.9em;
	padding: 5px;
	background: #bdbdbd;/*グレー*/
	color: #fff;
	border-radius: 3px;
	margin-right:1em;
}

/* タイトル列 */
@media screen and (min-width: 768px){
	.CF7_table th{
	width:30%;/*横幅*/
	background-color:#ebedf5;/*ブルーグレー*/
	}
}

/* レスポンシブ */
@media screen and (max-width: 768px){
	table.CF7_table{
	width:95%;
	}
	.CF7_table tr, .CF7_table td, .CF7_table th{
	display: block;
	width: 100%;
	line-height:2.5em;
	}
	.CF7_table th{
	background-color:#ebedf5;
	}
}

/* 「送信する」ボタン */
.wpcf7 input.wpcf7-submit {
	background-color:#f79034;/* オレンジ*/
	border:0;
	color:#fff;
	font-size:1.2em;
	font-weight:bold;
	margin:0 auto;
}

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

.wpcf7-spinner{
	width:0;
	margin:0;
}

/* recruit table  */
.table-fixed th:first-child, td:first-child {
  position: sticky;  position: -webkit-sticky;
  left: 0;
}
.table-fixed tr:nth-of-type(odd) th:first-child {
  background-color: #fff;
}
.table-fixed tr:nth-of-type(odd) td:first-child {
  background-color: #fff;
}
.table-fixed tr:nth-of-type(even) td:first-child {
  background-color: #fff;
}
.recruit table {
  border-collapse: collapse;
  margin: 0 auto;
  padding: 0;
  width: 100%;
  table-layout: fixed;
  color: #4CAF50;
}

.recruit table tr {
  background-color: #fff;
  padding: .35em;
  border-bottom: 1px dotted #8BC34A;
}
.recruit table tr:last-child{
   border-bottom: 2px solid #18521b;
}
.recruit table th,
.recruit table td {
  padding: 1em 10px 1em 10px;
  text-align: left;
}
.recruit tbody th {
    text-align: left;
}
.recruit .txt{
   text-align: left;
   font-size: .85em;
}
.recruit .price{
   text-align: left;
   color: #000;
}
.recruit h4.tatitle {
	text-align: center;
	font-size: 1.2rem;
	padding-top: 20px;
}
@media screen and (max-width: 600px) {
  .recruit table {
    border: 0;
    width:100%;
  }
  .recruit table th{
    display: block;
    border-right: none;
    border-bottom: 1px solid #0f7d13;
    padding-bottom: .6em;
    margin-bottom: .6em;

  }
  .recruit table thead {
    border: none;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
  }
  
  .recruit table tr {
    display: block;
    margin-bottom: 2em;
        border-bottom: 1px solid #0f7d13;
        padding: 0;
  }
  
  .recruit table td {
    border-bottom: 1px solid #bbb;
    display: block;
    font-size: .8em;
    text-align: right;
    position: relative;
    padding: .625em .625em .625em 4em;
    border-right: none;
  }
  
  .recruit table td::before {
    content: attr(data-label);
    font-weight: bold;
    position: absolute;
    left: 10px;
  }
  
  .recruit table td:last-child {
    border-bottom: 0;
  }

  .recruit table tr:last-child{
   border-bottom: 1px solid #0f7d13;
	}

}
ul.cmenu li{
	padding-bottom: 12px;
}
ul.cmenu {
  border: solid 7px #9ed987;
  border-radius: 5px;
  position: relative;
}

ul.cmenu li.top {
  padding: 0.5em 1em 0.5em 0.8em;
}

ul.cmenu li.cli {
  line-height: 1.5;
  padding: 0.5em 1em 0.5em 2.6em;
  list-style-type: none!important;
}

ul.cmenu li.cli:before {
  font-family: "Font Awesome 5 Free";
  content: "\f138";/*アイコンの種類*/
  position: absolute;
  left : 1.3em;/*左端からのアイコンまでの距離*/
  color: #9ed987;/*アイコン色*/
}
table {
  width: 100%;
  table-layout: fixed;
  word-break: break-all;
  word-wrap: break-all;
}
.cinfomation table th,.cinfomation table td {
	padding: 0.75em 0;
}
hr.cinfohr {
	margin-top: 30px;
}
.cont-inner h3 {
	font-size: 1.7rem;
	font-weight: 200;
	margin-bottom: 15px;
	padding-top: 0px;
	position: relative;
  	padding-bottom: .5em;
  	line-height: 3rem;
}
.cont-inner h3::after {
  position: absolute;
  bottom: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 0;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #fff;
}
.conti-border {
	background-color: #fffded;
	padding: 15px 25px;
	border-radius: 20px;
}
.ci01_03_under {
	border: 1px solid #ccc;
	padding: 10px 20px;
}
.footinfoarea {
	padding: 20px 0;
}
.footinfoarea p,.footinfoarea img{
	text-align: left;
}
.footinfoarea img{
	padding-bottom: 10px;
}
.footertitle {
	font-size: 1.3rem;
	padding: 0 0 10px 0;
	text-align: left;
}
.footerinfotime {
	font-size: .9rem;
	text-align: left;
}
.footermenu {
	padding-bottom: 12px;
}
.footermenu li {
	margin: 0 14px;
}
.footermenu a {
	color: #000;
}
.pc-nav ul {
	float: right;
}
.pc-nav ul.topul {
	margin-bottom: 0;
}
.pc-nav ul.menuul li{
	padding-right: 10px;
	font-size: 1rem;
}
.guidevideo {
	padding-top: 20px;
}

.introcap {
	margin: 30px 0 15px 0;
}
.maparea {
	padding: 20px 0;
}
.concept img {
	padding: 20px 0;
}
.concept2 img {
	padding: 20px 0 0 0;
}
/*左右の矢印の色を変える*/
.slick-prev:before,
.slick-next:before {
    color: #000;
}
/*左右の矢印の位置を変える*/
.slick-next {
    right: 20px;
    z-index: 99;
}
.slick-prev {
     left: 15px;
    z-index: 100;
}
/*スライド数のドットの色を変える*/
.slick-dots li.slick-active button:before,
.slick-dots li button:before {
    color: #fff;
}
/*スライド画像の横幅可変*/
img {
    max-width: 100%;
     height: auto;
}
.slick ul{
	list-style: disc;
}

.slick__bg {
    padding-bottom: 30px;
    margin-bottom: 30px;
    background-size: cover;
    background-repeat: no-repeat;
    height: 35vh;
}
.slick__bg01 {
    background-image: url(https://nonoden.jp/nonodenwp/wp-content/themes/understrap-child/img/main_image01_s.jpg);
}
.slick__bg02 {
    background-image: url(https://nonoden.jp/nonodenwp/wp-content/themes/understrap-child/img/main_image02_s.jpg);
}
.slick__bg03 {
    background-image: url(https://nonoden.jp/nonodenwp/wp-content/themes/understrap-child/img/main_image03_s.jpg);
}
.slick__bg04 {
    background-image: url(https://nonoden.jp/nonodenwp/wp-content/uploads/2021/02/ctimg01.jpg);
}
.slick__bg05 {
    background-image: url(https://nonoden.jp/nonodenwp/wp-content/uploads/2021/02/ctimg06.jpg);
}
.slick__bg06 {
    background-image: url(https://nonoden.jp/nonodenwp/wp-content/uploads/2021/02/ctimg03.jpg);
}
.slick__bg07 {
    background-image: url(https://nonoden.jp/nonodenwp/wp-content/uploads/2021/02/ctimg07.jpg);
}
.slick__bg08 {
    background-image: url(https://nonoden.jp/nonodenwp/wp-content/uploads/2021/02/ctimg02.jpg);
}
.slick__bg09 {
    background-image: url(https://nonoden.jp/nonodenwp/wp-content/uploads/2021/02/ctimg01.jpg);
}


.bg-slider {
	width: 100%;
    height: 0;
    padding-top: 60%;
	background-position:center center;
	background-size: cover;
	display: flex;
	align-items: center;
	justify-content: center;
}
.bg-slider__title{
	color: #fff;
	font-size: 48px;
	line-height: 1.5;
	font-weight: bold;
	text-align:center;
	text-shadow: 1px 1px 1px #000;
}

.youtube {
	width: 100%;
	padding: 0;
	box-sizing: border-box;
}

.youtube .inner {
	padding-top: 56.25%;
	position: relative;
	height: 0;
	overflow: hidden;
}

.youtube .inner iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* timeline  */
.worktime {
	text-align: left;
}
.worktime01 {
	text-align: left;
	padding: 20px 0;
}
.worktime h3{
	font-size: 1rem;
}
.worktime h4{
	font-size: 1rem;
	border-left: 8px #ff9900 solid;
	padding: 7px 0 7px 10px;
	margin: 30px 15px 15px 0px;
}
.worktime h5{
	font-size: 1rem;
}
.timeline {
  list-style: none;
}
.timeline > li {
  margin-bottom: 60px;
}

.timeline-staff {
    background: #fafafa;
    border-left: solid 6px #6fc173;
    box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.33);
	padding: 20px 20px 5px 20px;
	margin: 15px; 
}

/* questionnaire */
ul.questionnaire {
	list-style: none;
}

ul.questionnaire li {
	font-size: 1.2rem;
	border: 3px solid #339900;
	border-radius: 10px;
	padding: 20px;
}

ul.questionnaire li a {
	color: #339900;
	font-weight: bold;
}

/* for Desktop */
@media ( min-width : 640px ){
  .timeline > li {
    overflow: hidden;
    margin: 0;
    position: relative;
  }
  .timeline-date {
    width: 90px;
    float: left;
    margin-top: 15px;
  }
  .timeline-content {
    width: 85%;
    float: left;
    border-left: 3px #e5e5d1 solid;
    padding-left: 20px;
    padding-top: 20px;
  }
  .timeline-content:before {
    content: '';
    width: 12px;
    height: 12px;
    background: #6fc173;
    position: absolute;
    left: 86px;
    top: 24px;
    border-radius: 100%;
  }

}

/* for smart */
@media ( max-width : 640px ){
	.worktime h4{
		font-size: 1rem;
		border-left: 8px #ff9900 solid;
		padding: 7px 0 7px 10px;
		margin: 30px 15px 15px 0px;
	}
	.timeline-staff {
		background: #fafafa;
	    border-left: solid 6px #6fc173;
	    box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.33);
		padding: 20px 20px 5px 20px;
		margin: 15px; 
	}
	.timeline-right {
		padding: 20px 0 10px 0;
	}
}

/* for flowarea */
h3.flwtitle{
	padding: 0.5em;/*上下 左右の余白*/
	color: #31652c;/*文字色*/
	background: transparent;/*背景透明に*/
	border-left: solid 10px #31652c;/*左線*/
	border-bottom: solid 1px #31652c;/*下線*/
	text-align: left;
	margin-top: 20px;
	font-size: 1.5rem;
}
.flwareatext {
	text-align: left;
	padding: 20px 0;
	line-height: 1.9rem;
}
.flwarea_box {
	border: solid 1px #ccc;
	padding: 20px;
	line-height: 1.9rem;
}
.flwarea_box2 {
	border: solid 2px #cc0000;
	padding: 20px;
	line-height: 1.9rem;
}
h4.flwh4 {
	font-size: 1.3rem;
	line-height: 2rem;
}
h4.reserve_cap02 {
	text-align: center;
	font-size: 1rem;
	padding: 10px 0;
	margin-bottom: 20px;
	color: #bd1722;
	line-height: 2rem;
}
.flwarea_r {
	border-left: solid 1px #ccc;/*左線*/
}
.flowqaarea {
	text-align: left;
}
.flowqaul {
	text-decoration: underline;
}
.flwup {
	padding-top: 15px;
}
.flwtop {
	padding-bottom: 30px;
}
.Qa-Box .Qa{
	padding-bottom: 30px;
}

.Qa-Box .Qa dt,
.Qa-Box .Qa dd {
  display: flex;
  align-items: baseline;
  margin: 15px 0;
}

.Qa-Box .Qa dt p {
  margin: 0;
  padding-left: 15px;
  font-weight: bold;
  width: 100%;
  font-size: 1.2rem;
}

.Qa-Box .Qa dd p {
  margin: 0;
  padding-left: 15px;
  width: 100%;
}

.Qa-Box .Qa dt::before {
  content: "Q";
  display: flex;
  justify-content: center;
  align-items: center;
  background: #31652c;
  color: #fff;
  width: 50px;
  height: 50px;
  font-size: 1.5rem;
}

.Qa-Box .Qa dd::before {
  content: "A";
  display: flex;
  justify-content: center;
  align-items: center;
  color: #31652c;
  width: 50px;
  height: 50px;
  font-size: 1.5rem;
}

@media screen and (max-width: 960px) {
  .Qa-Box {
    width: 95%;
  }
  .flwarea_r {
	border-left: none;/*左線*/
  }
  h4.flwh4 {
	font-size: 1.3rem;
	line-height: 2rem;
	border-bottom: solid 1px #ccc;
	padding-bottom: 10px;
	margin-bottom: 20px;
  }
}


/* for single */
.singlearea {
	width: 100%;
	padding: 50px 3%;
	text-align: left;
}
.singlearea h2 {
	text-align: left;
	font-size: 1.3rem;
	padding-bottom: 20px;
}
.singlearea p{margin-bottom:0 !important;}
.singlearea img{margin-bottom:15px !important;}
/*** Blog info ***/
div.blog_info{
	background: rgba(0, 0, 0, 0.1);
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#20000000,endColorstr=#20000000); /* IE */
	zoom: 1; /* IE */
	color: #666;
	font-size:85%;
	padding: 5px;
	margin: 0 0 20px;
	}
	div.blog_info ul{margin:0;}
		div.blog_info li{
			float: left;
			padding-left:20px;
			margin:0 15px 0 5px !important;
			list-style: none !important
			}
			div.blog_info li a{color: #666}
				div.blog_info li a:hover{color: #333}
	div.blog_info li.cal{background: url(img/icon_cal.png) no-repeat 0 2px;}
	div.blog_info li.cat{background: url(img/icon_cat.png) no-repeat 0 2px;}
	div.blog_info li.tag{background: url(img/icon_tag.png) no-repeat 0 2px;}
/*** Bottom Navigation, Comment Navigation ***/
div.nav-below{margin: 40px 0 0;overflow:auto;}
div.navigation{overflow:auto;}
	div.navigation a{margin-bottom:10px}

	.nav-previous a, .nav-next a,
	div.navigation .alignleft a, div.navigation .alignright a{
		color:#333;
		font-size:85%;
		text-decoration:none;
		}
		.nav-previous a:hover, .nav-next a:hover,
		div.navigation .alignleft a:hover, div.navigation .alignright a:hover{
			color: #999
			}
			
	.nav-previous a, div.navigation .alignleft a{
		float:left;
		padding:2px 10px 2px 20px;
		background:url("img/arrow_prev.png") no-repeat left top;
		}
	.nav-next a, div.navigation .alignright a{
		float:right;
		text-align:right;
		padding:2px 20px 2px 10px;
		background:url("img/arrow_next.png") no-repeat right top;
		}

.titlecap {
	font-size: .9rem;
	color: #be8c46;
	padding-bottom: 15px;
}
.toptitle {
	text-align: center;
	line-height: 3.3rem;
	font-size: 1.3rem;
	padding-bottom: 0px;
	font-weight: 300;
}
.imagetitle {
	text-align: center;
	line-height: 3.3rem;
	font-size: 1.3rem;
	padding-bottom: 30px;
	font-weight: 300;
}

/* コンテンツ */
.titlecap {
	font-size: .9rem;
	color: #be8c46;
	padding-bottom: 15px;
}
.toptitle {
	text-align: center;
	line-height: 3.3rem;
	font-size: 1.3rem;
	padding-bottom: 0px;
	font-weight: 300;
}
ul.news_page {

}
ul.news_page li.np_li{
	border-bottom: dotted 1px #ccc;
	padding: 20px 15px;
	text-align: left;
}
ul.news_page li.np_li .date{
	padding-right: 20px;
}
ul.news_page li.np_li h3{
	font-size: 1.1rem;
}
.pastnews {
	text-align: right;
	padding-top: 12px;
}
.pagenumber {
	text-align: center;
}
.contarea {
	margin: 50px 10px;
	padding: 20px 0 0 0;
	text-align: left;
	width: 100%;
}
.contarea h2{
	text-align: left;
}
.c_title {
	text-align: left;
}
/* information */
#news ul.news li{
	border-bottom: dotted 1px #ccc;
	padding: 20px 0;
	text-align: left;
}
#news ul.news li:first-child{
	border-top: dotted 1px #ccc;
}
#news ul.news li.date{
	
}