@charset "utf-8";
/*
Theme Name:食彩 市
Theme URI: http://wordpress.org/
Description:食彩 市
Author:食彩 市
Version: 1.0
License: GNU General Public License
License URI: license.txt
Tags:食彩 市
*/
@import url("css/sanitize.css");
@import url("css/hamburgers.css");
@import url("css/slick.css");
/*
@import url("css/grey.css");
*/
:root {
	font-size:62.5%;
	color:#333333;
}
/*
	main-color:#32441b;
	sub-color:#6cc7a6;
	main-color-rgb : 45, 175, 128;
	color:#32441b;
*/
* {
	margin:0;
	padding: 0;
	outline:none;
	-webkit-tap-highlight-color: rgba(255,255,255,0.5);
}
html,body{
	font-size: 14px;
	font-size: 1.4rem;
	width: 100%;
	overflow-x:hidden;
}
@media screen and (max-width:767px){
	html,body{
		font-size: 16px;
		font-size: 1.6rem;
	}
}
body {
	font-family:  '游ゴシック体', 'Yu Gothic',  'メイリオ', 'Meiryo',  'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro',  'Osaka', 'ＭＳ Ｐゴシック', 'MS PGothic', 'sans-serif';
	line-height: 160%;
}
.min {
	font-family:"Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.got {
	font-family: '游ゴシック体', 'Yu Gothic', 'メイリオ', 'Meiryo',  'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro',  'Osaka', 'ＭＳ Ｐゴシック', 'MS PGothic', 'sans-serif';
}
.gf {
	letter-spacing:0.1em;
	font-family: 'Hammersmith One',"Times Roman", "Times New Roman",  '游ゴシック体', 'Yu Gothic', 'メイリオ', 'Meiryo', 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro',  'Osaka', 'ＭＳ Ｐゴシック', 'MS PGothic', 'sans-serif';
}
/*****************************************************************************
common
*****************************************************************************/
.none {
	display:none;
}
a {
	text-decoration: none;
	color:inherit;
	cursor:pointer;
}
figure {
	margin:0;
}
li {
	list-style: none;
}
h1,h2,h3,h4{
	position:relative;
	text-align:center;
	font-weight:normal;
	line-height:120%;
	margin:0;
	word-break:break-all;
	color:#000000;
}
hr {
	border:none;
	margin:2em 0 3em 0;
	border-top:1px solid #9a9a9a
}
button {
}
address {
	font-size:12px;
	font-size:1.2rem;
	font-style:normal;
	line-height:160%;
	width:100%;
	padding:1.5em 0;
}
address p {
}
.stress {
	color:#ec727f;
}
.shadow{
	box-shadow:0 0px 50px 0px rgba(10,10,10,0.2);
}
.white {
	color:#ffffff;
}
.base {
	color: #32441b;
}
.red {
    color: #ec7280;
}
.purple {
	color: #8f82bc;
}

.col {
	height:auto;
}
.bold {
	font-weight: bold;
}
.tc {
	text-align:center;
}
.tl {
	text-align:left;
}
.tr {
	text-align:right;
}
.ib {
	display:inline-block;
}
.f_cc {
	display:-webkit-box;
	display:-ms-flexbox;
	display: -webkit-flex;
	display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}
.nowrap {
	white-space:nowrap;
}
.none {
	display:none;
}
.lh100 {
	line-height:100%;
}
.mr1 {
	margin-right:1em;
}
.mr2 {
	margin-right:2em;
}
.mb1 {
	margin-bottom:1em;
}
.mt1 {
	margin-top:1em;
}
.ma {
	margin-left:auto;
	margin-right:auto;
}
.pa1 {
	padding:0 1em 1em 1em;
}
.rad {
	border-radius:0.3em;
}
.z1 {
	z-index:1;
}
span.tri {
	display:block;
	-webkit-transform:scale(0.6) rotate(90deg);
			transform:scale(0.6) rotate(90deg);
}
/*****************************************************************************
button gimic
*****************************************************************************/
.btn {
	position:relative;
	display:inline-block;
}
.btn.main {
	position: relative;
	margin-top:2em;
	text-align:center;
	color: #ffffff;
	max-width: 310px;
	width:100%;
	padding:1.3em 2em;
	z-index: 2;
	transition: .2s .2s ease-out all;
	overflow: hidden;
	background:#32441ba8;
}
.btn.main::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 50%;
	background:#32441bcc;
	z-index: -1;
	transition: .3s ease-in all;
}
.btn.main::after {
	content: '';
	position: absolute;
	left: -5%;
	top: 5%;
	height: 90%;
	width: 0%;
	z-index: 0;
	background:rgba(255, 255, 255, 0.8);
	transition: .3s .02s ease-in all;
}
.btn.main:hover {
	color:#ede4da;
	background:#32441bf5;
}
.btn.main:hover::before {
	left: 100%;
	width: 25%;
}
.btn.main:hover::after {
	left: 120%;
	width: 50%;
}
.btn.main:hover .icon-right {
	transition: .3s .2s ease all;
	opacity:0;
}
.btn.main:hover .icon-right.after {
	opacity:1;
}

.icon-right {
	position: absolute;
	top: 0;
	right: 1em;
	color: #32441b;
}
.icon-right.after {
	top: 0;
	left: -2em;
	right: 0;
}

.icon-right::after {
	font-family: "FontAwesome";
	content: '\f138';
	font-size: 1.1em;
	display: inline-block;
	position: relative;
	top: 1.9em;
	transform: translate3D(0, -50%, 0);
	color: #ffffff;
}
.icon-right.after::after {
	left: -50%;
	color: #32441b;
	transition: .3s .25s ease left, .3s .05s ease color;
}
.icon-right.after::before {
	position:absolute;
	top: 1.3em;
	left: -5%;
	content:"MORE";
	transition: .3s .25s ease left, .3s .05s ease color;
}
.btn.main:hover .icon-right.after::after {
	left: 3.0em;
}
.btn.main:hover .icon-right.after::before {
	left: calc(50% - 1em);
	color: #32441b;
}
.btn.main.form, .btn.main.single {
	max-width:250px;
	width:100%;
	margin:3em 0.3em 0 0.3em;
}
.btn.main.form:hover {
	color: #32441b;
}

.toTop {
	position:fixed;
	width:60px;
	height:60px;
	z-index:99;
	display:none;
	text-align:center;
}
.toTop {
	right:4em;
	bottom:4em;
}
@media screen and (min-width:768px) {
}
@media screen and (max-width:767px){
	.toTop {
		right:1em;
	}
	.toTop	img {
		width:inherit;
	}
	.btn.main {
		width:100%;
		white-space:nowrap;
	}
	.btn.main.single {
		width:140px;
	}
	.btn.main.header {
		text-align:left;
		background:none;
		margin:0 0 1.5em 0;
		padding: 1.2em 1em 1em 1.5em;
	}
}

/*****************************************************************************
	Instagram Setting (all Important)
*****************************************************************************/
article.instagram {
	max-width:1040px;
}
#sb_instagram .sbi_follow_btn a {
	color: #666666 !important;
	position:relative !important;
	display:block !important;
	text-align:center !important;
	background: #63c5c5 !important;
	border-radius: 0.2em !important;
	background:#eeeeee !important;
	margin-top:2em !important;
	padding:1em 5em !important;
	box-shadow: 0 2px 2px 0px rgba(10, 10, 10, 0.2) !important;
	min-width:90% !important;
}

#sb_instagram .sbi_follow_btn a:after {
	content: "";
	margin-left: 0.5em;
	margin-top: -4px;
	position: absolute;
	background: url(./img/common/arrow.png) center center /20px 20px no-repeat;;
	width: 26px;
	height: 26px;
}

.sbi_photo_wrap {
	border: 8px solid #ffffff;
	box-shadow: 0 0 2px 2px rgba(10,10,10,0.1);
}
@media screen and (max-width: 767px) {
	#sb_instagram.sbi_col_4 #sbi_images .sbi_item{
		width: 50% !important;
	}
}
/*****************************************************************************
	Header
*****************************************************************************/
header {
	width:100%;
	position:fixed;
	z-index:10;
	transition: all 0.5s ease-in-out;
}
header.active {
	padding-top:0px;
	background: #32441bcf;
	border-bottom: 3px solid #a56c31;
}
header h1 {
	text-align:left;
	line-height:100%;
	max-width:240px;
	width:100%;
}
h1.logo {
	text-align: center;
	z-index:2;
	color:#ffffff;
	white-space:nowrap;
	font-size:14px;
	font-size:1.8rem;
}
.navigation {
	padding:0;
	position:relative;
}
@media screen and (max-width:767px) {
	header {
		padding:0;
		width:100%;
		height:75px;
		z-index:100;
	}
	header .navi .tel {
		width:55px;
		height:55px;
		margin:10px 0 0 auto;
		background: #32441bcf;
	}
	header .tel i {
		font-size:24px;
		font-size:2.4rem;
		transform:rotate(10deg);
		color:#ffffff;
	}
	header .toggle {
		margin:10px 10px 0 0;
		width:55px;
		height:55px;
		background: rgba(255, 255, 255, 1);
	}
	header section , header section article {
		height:100%;
		padding:0;
	}
	header .sp.navi {
		width:100%;
		position:fixed;
		top:0;
		left:0;
		z-index:1;
		height:60px;
		padding:0 0 0 0.5em;
	}
	header #logo {
		margin:0;
	}
	header .logo img {
		max-height:60px;
		max-width:150px;
	}
	header .sp.navi img {
		max-height:50px;
		max-width:150px;
	}
	header .navigation {
		width:calc(100% - 100px);
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		-webkit-justify-content: center;
		justify-content: center;
	}
	header .navigation > div {
		height:100%;
		margin:0 0 0 15px;
		white-space:nowrap;
	}
}
@media screen and (min-width:768px) {
	header {
		padding:3px 0;
		min-width:768px;
		background: #32441b;
		border-bottom: 3px solid #a56c31;
	}
	
	header h1 {
		color:#ffffff;
		font-size: 25px;
		font-size: 2.5rem;
	}
	header h1 span{
		/*font-size: 0.4em;*/
		line-height:0;
	}
	header  .logo {
		height:inherit;
	}
	header .logo img {
		max-height:90px;
		max-width:250px;
	}
	header .guide {
		padding:1em 0;
		position:relative;
		z-index:1;
	}
	header .open {
		font-size: 12px;
		font-size: 1.2rem;
		line-height:140%;
	}
	header .tel {
		font-size: 30px;
		font-size: 3.0rem;
		font-weight:bold;
	}
	header nav .logo {
		display:none;
	}
	header nav .logo {
	}
	header nav {
	}
	header .navigation {
		width:100%;
		position:relative;
		z-index:1;
		height:70px;
		transition: all 0.3s ease;
	}
	header .navigation > div {
		height:inherit;
		margin:0 auto;
		padding:0 30px 0 30px;
	}
	
}
@media screen and (max-width:350px) {
	h1.logo {
		font-size: 10px;
		font-size: 1rem;
	}
}
/*****************************************************************************
	Navigation / MENU
*****************************************************************************/
nav.menu {
	height:inherit;
	z-index:10;
	text-align:center;
}
nav.menu li {
	text-align:center;
}
nav.menu a{
	display:block;
	color:#ffffff;
	line-height:100%;
	position:relative;
	transition: all 0.3s ease-in-out;
}
nav.menu a span {
}
/* SP Navigation */
@media screen and (max-width:767px){
	ul#navi {
		padding:75px 0 0 0;
		width:100%;
		-webkit-box-lines:multiple;
		-webkit-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
		background:#32441b6e;
	}
	nav > h1 {
		padding:0 1em;
		max-width:50%;
	}
	nav > h1 img {
		width:100%;
	}
	header nav.menu {
		position:fixed;
		left:0;
		top:0;
		width:100%;
		z-index:1;
		margin-left: 8.2em;
        padding: 0 2em;
		line-height:150%;
		height:auto;
		-webkit-transform:translate3d(100% , 0, 0) ;
				transform:translate3d(100% , 0 , 0) ;
		transition: all 0.3s ease-in-out;
		/*-webkit-transform-origin:100% 0;
		-webkit-transform:scale3d(0, 1, 1) ;
				transform:scale3d(0, 1, 1) ;*/
	}
	header nav.menu.active {
		-webkit-transform:translate3d(0 , 0, 0) ;
				transform:translate3d(0 , 0, 0) ;
	}
	nav.menu a, footer nav.menu a {
		color:#ffff;
		font-size:14px;
		font-size:1.4rem;
		text-align:left;
		display:block;
		width:100%;
		position:relative;
		padding:0.8em 0em 0.8em 4em;
		line-height:120%;
		background-color:#32441b6e;
		border-bottom: 1px solid #32441b;
	}
	nav.menu a.reserve {
		display:-webkit-box;
		display:-ms-flexbox;
		display: -webkit-flex;
		display:flex;
		padding:1em 0em;
		background:none;
		background: rgba(33, 140, 71, 0.8);
		text-align:center;
		color:#ffffff;
	}
	footer nav.menu {
		margin-bottom:1em;
	}
	nav.menu a span {
		font-size:12px;
		font-size:1.2rem;
	}
}
/* PC Navigation */
@media screen and (min-width:768px){
	ul#navi {
		display:-webkit-box;
		display:-ms-flexbox;
		display: -webkit-flex;
		display:flex;
	}
	nav.menu {
		padding: 2em 0;
		height:inherit;
	}
	nav.menu a span {
		line-height:150%;
		font-size:0.8em;
	}
	nav.menu a i {
		display:none;
	}
	header .navigation nav.menu a {
		height:inherit;
	}
	header nav.menu > div > div {
		width:inherit;
		padding:0em;
		height:100%;
	}
	header nav.menu > ul > li {
		position:relative;
		padding:0 1.5em;
	}
	header nav.menu > ul > li > a::after {
		content:"";
		position:absolute;
		bottom:-5px;
		left:0;
		width:100%;
		height:2px;
		background: rgba(255, 255, 255, 1);
		transition: transform 0.3s ease;
		transform: scale3d(0, 1, 0);
		transform-origin: right top;
	
	}
	header nav.menu > ul > li:hover > a::after, header nav.menu > ul > li > a.active::after {
		transform-origin: left top;
		transform: scale3d(1, 1, 1);
	}
	footer nav.menu a {
		padding:0.5em 1em;
	}
	footer nav.menu ul > li:last-child > a {
		padding-right:0;
	}
	footer nav.menu {
		width:initial;
		margin:2em 0 2em 0;
	}
	footer nav a {
		padding:0.2em 2.7em;
	}
	footer nav a:not(:last-child) {
	}
	footer nav.menu a:hover {
		opacity:0.5;
	}
}
@media screen and (min-width:1000px) {
	header .navigation nav.menu a {
	}
}
/*****************************************************************************
	Header PullDown
*****************************************************************************/
ul#navi ul {
	width:200px;
	position:absolute;
	font-size:12px;
	font-size:1.2rem;
	top:3.5em;
	left:0;
	z-index:1;
	visibility:hidden;
	opacity:0;
	transition: all 0.3s ease-in-out;
}
ul#navi ul li {
	padding:0 0.5em;
	background:rgba(33, 140, 71, 0.9);
	transition: all 0.3s ease-in-out;
}
ul#navi ul li a{
	text-align:left;
	padding:1.2em 1em 1em 1em;
	border-bottom:1px solid #ede4da;
}
ul#navi li:hover ul {
	visibility:visible;
	opacity:1;
}
ul#navi ul > li:last-child a{
	border:none;
}
ul#navi ul > li:hover{
	background:rgba(255, 255, 255, 0.9);
}
ul#navi ul > li:hover a{
	color:#32441b;
}

@media screen and (max-width:767px) {
	ul#navi li:hover ul {
		visibility:hidden;
	}
}



/*****************************************************************************
	Key Visual
*****************************************************************************/
#mv, #kv {
	margin:0 auto;
	max-width:100%;
	width:100%;
	position:relative;
}
#mv img, #kv img{
	width:100%;
}
#kv {
	max-height:100%;
	height:360px;
}
#mv+.button, #kv+.button  {
	position:absolute;
	bottom:40px;
	left:0;
	width:100%;
	padding:0 40px;
	height:80px;
	z-index:3;
}
#mv+.button a.link, #kv+.button a.link {
	font-size:14px;
	font-size:1.4rem;
	padding:1.7em 2em 1.5em 2em;
	text-align:center;
	background:rgba(255, 255, 255, 1);
	position:relative;
	line-height:130%;
	min-height:80px;
	min-width:170px;
}
#mv+.button a.link span, #kv+.button a.link span{
	font-size:0.8em;
}
#mv+.button > a.link:not(:first-child)::before, #kv+.button > a.link:not(:first-child)::before {
	content:"";
	position:absolute;
	top:1.5em;
	left:0;
	width:1px;
	height:calc(100% - 3em);
}
.down {
	position:absolute;
	width:calc(100% - 80px);
	height:inherit;
	left:40px;
	bottom:0;
	color:#ffffff;
}
#arrows {
	position:relative;
	z-index:2;
	height:80px;
	background: rgba(255, 255, 255, 1);
}
.mv-prev, .mv-next {
	font-size:16px;
	font-size:1.6rem;
	padding:0em 2.5em;
	text-align:center;
	position:relative;
	height:100%;
	cursor:pointer;
	color:#333333;
}
.mv-prev i, .mv-next i {
	font-weight:bold;
}
.mv-prev::after {
	content:"";
	position:absolute;
	right:0;
	top:30%;
	height:40%;
	width:1px;
	border-right:1px solid #cccccc;
	z-index:3;
}
@media screen and (max-width:767px) {
	#arrows {
		height:50px;
	}
	#mv+.button, #kv+.button {
		bottom:10px;
		padding:0 10px;
		height:50px;
	}
	.mv-prev, .mv-next {
		font-size:10px;
		font-size:1.0rem;
		padding:0em 2.5em;
	}
	.down {
		width:calc(100% - 20px);
		left:10px;
	}
	#kv {
		height: 250px;
	}
}
#Scroll {
	line-height:0;
	position:relative;
	cursor:pointer;
}
#Scroll::after {
	content:"";
	position:absolute;
	width:0px;
	height:70%;
	left:50%;
	bottom:0;
	border-left:1px solid #ffffff;
}
.feather {
	width:40px;
	height:40px;
	border-radius:100%;
	background:rgba(33, 140, 71, 1);
	margin-right:0.5em;
}
#mv figure {
	margin:0;
}
#mv figcaption {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index:2;
}
#mv figcaption p , .picture p{
	font-size:30px;
	font-size:3.0rem;
	padding:0.5em;
	color:#ffffff;
	background: rgba(33, 140, 71, 0.8);
	margin-bottom:0.5em;
	letter-spacing:0.3em;
}
#kv figcaption {
	padding-top:0.5em;
	color:#ffffff;
	font-size:50px;
	font-size:5.0rem;
}
#kv figcaption span {
	display:block;
	padding-top:1em;
	letter-spacing:0;
	font-size:0.3em;
}
#kv figcaption h2 {
	color:inherit;
	font-size:inherit;
	line-height:40%;
}


#kv button.slick-next {
	left:initial;
	right:10px;
	transform:scaleX(-1);
}

#kv.about {
	background:url(./img/about/kv_about.jpg) center center /cover no-repeat;
}
#kv.lunch {
	background:url(./img/lunch/kv_lunch.jpg) center center /cover no-repeat;
}
#kv.menu {
	background:url(./img/menu/kv_menu.jpg) center center /cover no-repeat;
}
#kv.access {
	background:url(./img/access/kv_access.jpg) center center /cover no-repeat;
}
#kv.blog {
	background:url(./img/blog/kv_blog.jpg) center center /cover no-repeat;
}
#kv.voice {
	background:url(./img/voice/kv_voice.jpg) center center /cover no-repeat;
}
#kv.contact {
	background:url(./img/contact/kv_contact.jpg) center center /cover no-repeat;
}
#kv.course {
	background:url(./img/course/kv_course.jpg) center center /cover no-repeat;
}
#mv figure.fst {
	background:url(./img/index/kv_index_01.png) center center / cover no-repeat;
}
#mv figure.snd {
	background:url(./img/index/kv_index_02.png) center center / cover no-repeat;
}
#mv figure.trd {
	background:url(./img/index/kv_index_03.png) center center / cover no-repeat;
}
@media screen and (max-width:767px){
	#mv figcaption p , .picture p{
		font-size:18px;
		font-size:1.8rem;
	}
	#mv figure.snd {
		background:url(./img/index/kv_index_02.png) 55% center / cover no-repeat;
	}
	#kv.access {
		background:url(./img/access/kv_access.png) 30% center /cover no-repeat;
	}
}
@media screen and (min-width:768px){
	#mv figure {
		width:100%;
		max-height:100%;
		min-height:600px;
	}
}

/*****************************************************************************
slick
*****************************************************************************/
/*****************************************************************************
icon
*****************************************************************************/
.social {
	width:100px;
}
.social a {
	font-size:20px;
	font-size:2.0rem;
	width:42px;
	height:42px;
	color:#ffffff;
	border-radius:100%;
}
.social a.twitter {
	background:#32441b;
}
.social a.facebook {
	background:#32441b;
}
.social a.instagram {
	background:#32441b;
}
header .social {
	position:relative;
	z-index:1;
}
.social img {
	max-width:2.5em;
}
/*****************************************************************************
	Map
*****************************************************************************/
.gmap {
	position:relative;
	width: 100%;
	height: 300px;
	z-index:0;
}
/*****************************************************************************
	Section / Article
*****************************************************************************/
section {
	width:100%;
	position:relative;
	padding-left:40px;
	padding-right:40px;
}
section.kv {
	position:relative;
	background:rgba(255, 255, 255, 1);
	padding:40px;
}

section.np {
	padding:0;
}
section.nptop {
	padding-top:0;
}
section.npbtm {
	padding-bottom:0;
}
section > article {
	position:relative;
	max-width:1050px;
	width:100%;
	margin:0 auto;
}
section.list > article {
	margin-bottom:4em;
}
section.list > article:last-child {
	margin-bottom:2em;
	padding:0.5em
}
section.flow > article {

}
section.flow > article:not(:last-child)::before {
	content:"";
	position:absolute;
	top:0;
	left:39px;
	width:1px;
	height: 100%;
	min-height: 200px;
	border-left:1px solid rgba(33, 140, 71, 1);
}
section.question > article {
	margin-bottom:2em;
}
section.menu > article {
	margin-bottom:3em;
}

main{
}
@media screen and (max-width:767px){
	main{
	}
	section {
		padding:0em 0;
	}
	section.kv {
		padding:10px;
	}
	section > article {
		width:100%;
		padding:0 1.2em;
	}
	footer > section > article {
		padding:0;
	}
	section.flow > article:not(:last-child)::before {
		left:58px;
	}
}
@media screen and (min-width:768px){
	main.index{
	}
	section {
		padding:0em 0px;
	}
}
.kv+section {
	padding-top:0px;
}
/*****************************************************************************
	background
*****************************************************************************/

.bg_base {
	
}
.bg_gray {
	background:rgba(240, 240, 240, 1);
}
.picture {
	height:240px;
}
.picture.about {
	background:url(./img/about/bg_about_01.jpg) center center /cover no-repeat;
}
.picture.flow {
	background:url(./img/flow/bg_flow_01.jpg) center center /cover no-repeat;
}
.bg_result {
	padding:2em 0;
	background:url(./img/common/bg_result.jpg) center center /90% 100% no-repeat;
}
.bg_cta {
	background:url(./img/common/bg_cta.jpg) center center /cover no-repeat;
}
.bg_lead {
	background:url(./img/index/bg_lead.jpg) center center /cover no-repeat;
}
@media screen and (max-width:767px){
	.bg_lead {
		background:url(./img/index/bg_lead_sp.jpg) left top /cover no-repeat;
	}
	.bg_result {
		padding:1.5em;
		background:url(./img/common/bg_result.jpg) center center /auto 100% no-repeat;
	}
	.bg_cta {
		background:url(./img/common/bg_cta.jpg) center center /auto 100% no-repeat;
	}
}
@media screen and (max-width:767px){
	.picture {
		height:180px;
	}
}
/*****************************************************************************
	Title Decoration
*****************************************************************************/
h2 {
	font-size:30px;
	font-size:3rem;
}
h2.about {
	font-size:35px;
	font-size:3.5rem;
	text-align:left;
}
h2.title {
	letter-spacing:0.1em;
	line-height:120%;
	background:#32441b;
	padding:0.4em;
	color:#ffff;
	text-shadow: 0 0 3px rgba(0, 0, 0, 0.5);
	box-shadow: 0 0 5px rgba(0,0,0,0.5);
	z-index:1;
}
h2+p {
	font-size:16px;
	font-size:1.6rem;
	color:#32441b;
}
h2+p+div {
	border-top:1px solid #9a9a9a;
	margin-top:2em;
	margin-bottom:2em;
	padding-top:2em;
}
h2.title+p+div, h3.title+div {
	border-top:1px solid #9a9a9a;
	margin-top:1.2em;
	margin-bottom:0em;
	padding-top:1em;
	overflow:hidden;
}
h2.title+p+div.lead {
	border-top:1px solid #cccccc;
	margin-top:2em;
	margin-bottom:3em;
	padding-top:2em;
	height:initial;
	overflow:visible;
}
h2.title+p+div.intro {
	max-height:4em;
}
h2.balloon {
	position:relative;
	font-size:20px;
	font-size:2.0rem;
	padding:1em;
	background:rgba(255, 255, 255, 1);
	margin-bottom:0.5em;
	z-index:2;
}
h2.balloon::after {
	content:"";
	position:absolute;
	width: 0;
	height: 0;
	bottom:-14px;
	left:calc((100% - 28px) / 2);
	border-style: solid;
	border-width: 16px 14px 0 14px;
	border-color: #ffffff transparent transparent transparent;
}
h2.lead {
	font-weight:bold;
	font-size:20px;
	font-size:2.0rem;
	padding:0.5em 0;
	margin-bottom:0.5em;
	margin-bottom:1em;
}

h3 {
	text-align:center;
}
h3 span{
	font-weight:bold;
	font-size:15px;
	font-size:1.5rem;
	margin-top:0.5em;
}
h3.title{
	font-weight:bold;
	font-size:22px;
	font-size:2.2rem;
	margin-top:0.5em;
}
h3.title+div {
	height:initial;
}
h3.ba, h3.ba+p {
	text-align:center;
	font-size:20px;
	font-size:2.0rem;
	color:#ffffff;
}
h3.ba {
	font-size:20px;
	font-size:2.0rem;
}
h3.ba+p {
	font-size:12px;
	font-size:1.2rem;
}
h3.blog {
	font-size:16px;
	font-size:1.6rem;
	color:#555555;
	text-align: left;
	font-weight:bold;
	margin:1em 0;
	max-height:2.3em;
	overflow:hidden;
	line-height:130%;
}
h3.blog.index {
	height:1em;
}
h3.blog+div {
	height:3.0em;
	overflow:hidden;
}
h3.blog+div+p {
	position:absolute;
	bottom:0;
	left:0;
}
h3.name {
	font-size:25px;
	font-size:2.5rem;
	color:#333333;
	margin:1em 0 0 0;
}
h3.name+p{
	color:#32441b;
	margin-bottom:1.5em;
}
h3.menu.price {
	font-size:16px;
	font-size:1.6rem;
	color:#666666;
	margin-bottom:0.5em;
}
h3.menu.title {
	font-size:28px;
	font-size:2.8rem;
	color:#ffffff;
	margin:0;
	letter-spacing:0;
}
h3.menu.title+p {
	border-top:1px solid #ffffff;
	padding-top:1.5em;
	margin-top:1.5em;
	color:#ffffff;
}
h3.menu+p.notice {
	font-size:12px;
	font-size:1.2rem;
	line-height:130%;
}
h3.voice {
	font-size:18px;
	font-size:1.8rem;
	color:#666666;
	font-weight:bold;
	margin:1em 0;
	line-height:140%;
}
h3.voice > span {
	display:block;
	margin:-0.2em 0.5em 0 0;
}
h3.voice+div {
	margin-bottom:2em;
}
h3.single {
	font-size:30px;
	font-size:3.0rem;
	margin:0.5em 0;
	text-align: left;
}
h3.single+p {
	line-height:200%;
}
h4 {
	text-align:left;
	font-weight:bold;
	font-size:18px;
	font-size:1.8rem;
	border-bottom:1px solid #9a9a9a;
	margin-bottom:1em;
	padding-bottom:1em;
}

@media screen and (max-width:767px){
	h3.blog+div {
		height: 3em;
	}
	h3.blog.index+div {
		height: 1.5em;
	}
	h3.blog {
		margin:0.5em 0;
	}
	h2.title+p+div.lead {
		margin-bottom:3em;
	}
	h2.title+p+div.lead.message {
		margin-bottom:0em;
	}
}
@media screen and (min-width:768px){
}
/*****************************************************************************
	figure
*****************************************************************************/
figure {
	position:relative;
	overflow:hidden;
	text-align:center;
	margin-bottom:2em;
}
figure img {
	max-width:100%;
	width:100%;
	height:auto;
}
figure.lead {
	box-shadow:0 0px 50px 0px rgba(10,10,10,0.2);
}
figure.lead:nth-child(1) {
	margin-top:3em;
}
figure.lead:nth-child(2) {
	margin-left:-3em;
}
figure.ba figcaption {
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	padding:1.5em;
	background:rgba(33, 140, 71, 0.8);
	line-height:120%;
}
figure.blog {
	min-width: 160px;
	max-width:160px;
	width:100%;
	height:160px;
	margin:0 1.5em 0 0;
}
figure.blog+div {
	position:relative;
	padding-bottom:2em;
}
figure.blog+div > p, h3.single+p {
	line-height:200%;
}
figure.about, figure.menu, figure.access, figure.ba {
	margin-bottom:0em;
}

@media screen and (max-width:767px){
	figure {
		width:100%;
	}
	figure img{
		width:100%;
		height:auto;
	}
	figure.index {
		padding :1em 0;
	}
	figure.ba {
		width:40%;
		margin:0 0 1em 0;
	}
	figure.ba figcaption {
		padding:0.5em;
	}
	figure.blog.index {
		max-width:100px;
		min-width:100px;
		width:100%;
		height:100px;
	}
	figure.staff {
		max-width:300px;
	}
	figure.step {
		margin-top:2em;
	}
	figure.menu ,figure.about {
		height:200px;
	}
}

/* Image Fill Gray */
figure:after , picture:after{
	/* use copy
	*/
	position:absolute;
	z-index:1;
	left:0;
	top:0;
	width:100%;
	height:100%;
	background:#9a9a9a;
	border:1px solid #bababa;
}
/*****************************************************************************
	index
*****************************************************************************/
article.lead a {
	display:block;
	width:100%;
	padding:1em 0;
	background:rgba(240, 240, 240, 1);
	text-align:center;
	border-radius:0 0 0.5em 0.5em;
}
div.index {
	z-index:1;
	background:rgba(255, 255, 255, 1);
	padding:1em 4em;
}
article.ba > div {
	margin:0 1em 0 0;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
article.ba > div.deg {
	margin:0 0 0 auto;
}

div.ba {
	z-index:1;
	background:rgba(255, 255, 255, 1);
	padding:4em 3em;
}

div.dia {
	width:40px;
	height:40px;
	background:#32441b;
	z-index:1;
	margin:2em;
	line-height:100%;
	transform:rotate(45deg);
}
div.dia.num {
	position:absolute;
	z-index:1;
	left:-3.4em;
	top:32%;
}
figure div.dia::after {
	content:none;
}
div.dia.num p{
	color:#ffffff;
	transform:rotate(-45deg);
	font-size:16px;
	font-size:1.6rem;
}
div.dia.arrow {
	margin:0;
}
div.dia.arrow::after {
	content:"";
	position:absolute;
	left:30%;
	bottom:30%;
	width:35%;
	height:35%;
	border-top:1px solid #ffffff;
	border-right:1px solid #ffffff;
}


@media screen and (max-width:767px){
	article.ba > div {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		-webkit-justify-content: center;
		justify-content: center;
		margin: 0;
	}
	article.ba > div.deg:last-child {
		margin:0 auto;
	}
	div.dia {
		width:30px;
		height:30px;
	}
	div.dia.arrow {
		transform:rotate(45deg);
		margin:1em auto;
	}
	div.dia.arrow::after {
	}
	div.index {
		padding:1em 2em 2em 2em;
	}
	div.lead+div {
		text-align:center;
	}
	div.dia.num {
		position:absolute;
		margin:0;
		z-index:1;
		left:1.4em;
		top:-1.4em;
		width:40px;
		height:40px;
	}
	div.ba {
		padding:2em;
	}
}
.date {
	padding:0;
	line-height:100%;
	color:#9a9a9a;
}
.category {
	font-size: 10px;
	font-size: 1.4rem;
	display: inline-block;
	background: #32441bcc;
	padding: 3px 19px;
	color: #fff;
	width: auto;
	text-align: center;
	font-weight: normal;
	margin: 6px 8px;
}
 .category2 {
	font-size: 10px;
	font-size: 1.4rem;
	display: inline-block;
	background: rgba(171, 171, 171,1);
	padding: 3px 19px;
	color: #fff;
	width: auto;
	text-align: center;
	font-weight: normal;
	margin: 6px 8px;
}


.category.voice {
	font-size:14px;
	font-size:1.4rem;
	padding:0.3em 0.8em;
	margin-right:0.5em;
}
/*****************************************************************************
	Under
*****************************************************************************/
div.about {
	min-height:300px;
	background:rgba(255, 255, 255, 1);
	padding:1em 4em;
}
article:not(:last-child) > div.staff {
	padding-bottom:3em;
	border-bottom:1px solid #9a9a9a;
}
div.step {
	width:80px;
	min-width:80px;
	text-align:center;
	color:#ffffff;
	font-size:16px;
	font-size:1.6rem;
	font-weight:bold;
	padding:0.8em 0.1em;
	background: rgb(45, 175, 128);
	background: linear-gradient(to right, rgba(33, 140, 71,1) 1%,rgba(33, 140, 71, 1) 50%,rgba(33, 140, 71, 0.7) 50%,rgba(33, 140, 71, 0.7) 100%);
	position:relative;
}
div.step p {
	margin-top:0.3em;
	padding-top:0.5em;
	font-size:1.5em;
	border-top:1px solid #ffffff;
}

div.step::before {
	content:"";
	position:absolute;
	bottom:-20px;
	left:0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 40px 20px 0;
	border-color: transparent rgba(33, 140, 71, 1) transparent transparent;
}
div.step::after {
	content:"";
	position:absolute;
	bottom:-20px;
	right:0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 20px 40px 0 0;
	border-color: rgba(33, 140, 71, 0.7) transparent transparent transparent;
}
div.step+div {
	margin:0 0 2em 2em;
}
div.question {
	padding:1.5em;
	background:#f8f8f8;
	cursor:pointer
}
div.answer {
	padding:1.5em;
	background:rgba(33, 140, 71, 0.3);
	display:none;
}
p.mark {
	position:relative;
	font-size:17px;
	font-size:1.7rem;
	color:#ffffff;
	background:rgba(33, 140, 71, 1);
	line-height:100%;
	padding:0.4em 0 0.3em 0;
	text-align:center;
	min-width:30px;
}
p.mark+div {
	padding:0.4em 1em;
}
p.mark::after {
	content:"";
	position:absolute;
	bottom:-10px;
	left:30%;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 10px 15px 0;
	border-color: transparent rgba(33, 140, 71, 1) transparent transparent;
}
p.toggle {
	font-size:34px;
	font-size:3.4rem;
	line-height:100%;
	width:30px;
	min-width:30px;
	height:30px;
	margin:0 0 0 auto;
	color:#32441b;
	transition: all 0.3s ease;
}
div.question.active p.toggle {
	transform:rotate(45deg);
}
div.menu {
	position:relative;
	padding:0 4em;
	height:300px;
	background:rgba(33, 140, 71, 1);
}
div.menu p.num {
	position:absolute;
	width:100%;
	height:100%;
	top:0;
	left:0;
	color:#ffffff;
	font-weight:bold;
	opacity:0.1;
	font-size:240px;
	font-size:24rem;
	letter-spacing:0;
	padding-top:0.1em;
}
div.menu p.num+div {
	width:100%;
}
div.price {
	background:#f5f5f5;
	padding:1em 2em;
}

@media screen and (max-width:767px){
	div.menu {
		height:initial;
		padding:2em 1em;
	}
	div.menu p.num {
		font-size:140px;
		font-size:14rem;
	}
	div.about {
		padding:2em;
	}
}
@media screen and (min-width:768px){

}
/******************************************************************************
	CTA
******************************************************************************/
.cta {
	color:#ffffff;
	padding:5.5em 0;
}
.cta > div {
	width:50%;
	height:100px;
}
.cta  a.btn {
	display:block;
	font-size:18px;
	font-size:1.8rem;
	padding:0.8em 0;
	text-align:center;
	background: #84848463;
	border-radius:0;
	border:1px solid #ffffff;
	margin:0.5em 1em 1em 1em;
	transition: all 0.3s ease;
}
.cta  a.btn:hover {
	color:#ffff;
	background:#444444;
}
.cta .tel {
	background:none;
}
.cta h2, .cta h2+p {
	color:#ffffff;
}
.cta h2+p {
	margin-bottom:1em;
}
@media screen and (max-width:767px){
	.cta {
		font-size:14px;
		font-size:1.4rem;
		padding:2em 0;
	}
	.cta > div > a {
		padding:0.5em 0;
	}
	.cta div {
		width:100%;
	}
	.cta h3 {
	}
	.cta h3 span {
		font-size:14px;
		font-size:1.4rem;
	}
	.cta .web a:after {
		display:none;
	}
	.cta  a.btn {
		display:block;
		font-size:18px;
		font-size:1.8rem;
		padding:0.8em 0;
		text-align:center;
		border-radius:0;
		border:1px solid #ffffff;
		margin:0.5em 0em 1em 0em;
	}
}
@media screen and (min-width:768px){
	.cta > div > a {
		max-width:500px;
	}
}
/*****************************************************************************
	footer
*****************************************************************************/
footer {
	color:#ffffff;
	background:#32441b;
}
footer .logo img {
	max-height: 250px;
	max-width: 250px;
	padding-left:60px;
}
p.copy {
	color:#ffffff;
	padding:1em 0;
	text-align:center;
	font-size:12px;
	font-size:1.2rem;
	margin:0 auto;
	max-width:1050px;
	width:100%;
}
footer .social {
	margin:0.5em auto;
}
@media screen and (max-width:767px){
	footer address {
		padding-bottom:3em;
	}
	footer article {
		display:-webkit-box;
		display:-ms-flexbox;
		display: -webkit-flex;
		display:flex;
	}
	footer article > * {
		width:50%;
	}
	footer h1 {
		max-width:100%;
	}
	footer .logo img {
		width: 100%;
	}
	p.copy {
		border:none;
	}
}
@media screen and (min-width:768px){
	footer address {
		margin:0 auto;
	}
}
/******************************************************************************
	Post
******************************************************************************/
#post {
}
#post ul {
	margin-bottom:3em;
}
#post ul.index {
	margin-bottom:0em;
}
#post ul.blog a {
	width:300px;
}
#post ul.blog li {
	margin-bottom:2em;
}

#post ul.blog a {
	width:100%;
}
#post ul.blog.index a {
	width:100%;
	display:-webkit-box;
	display:-ms-flexbox;
	display: -webkit-flex;
	display:flex;
	padding:0em 1em 0em 0em;
	margin-bottom:0em;
	transition:all 0.2s linear;
}
#post ul.blog a:hover {
	background:rgba(33, 140, 71, 0.1);
}
#post h3.tl {
	font-size:14px;
	font-size:1.4rem;
	height:3.5em;
	padding:0.5em 0.5em 0.5em 0;
	color:#333333;
	overflow:hidden;
}
#post ul.blog.index h3.tl {
	overflow:hidden;
}

#post .list a {
    max-width: 500px;
    height: auto;
}
#post .new {
	position:absolute;
	z-index:1;
}
@media screen and (min-width: 768px) {
	#post ul.blog a {
	}
	#post ul.list a:not(:nth-of-type(2n)) {
	    margin-right: 0.9em;
	}
}
@media screen and (max-width: 767px) {
	#post ul.blog a {
		width:100%;
		display:-webkit-box;
		display:-ms-flexbox;
		display: -webkit-flex;
		display:flex;
	}
	#post ul.list a {
	    width: 100%;
	    height: auto;
	}
}
/* #post .side */
#post .side > div {
	margin-bottom:2em;
}
#post .side h3 {
	color:#ffffff;
	font-size:18px;
	font-size:1.8rem;
	letter-spacing:0;
	background:#32441bcc;
	padding:0.5em 1.2em;
	line-height:100%;
}
#post .side li a:hover {
	background:rgba(33, 140, 71, 0.1);
}
#post .side li a {
	padding:1em 1em 1em 1em;
	width:100%;
}
#post .side li{
	position:relative;
	font-size:14px;
	font-size:1.4rem;
	line-height:100%;
	border-bottom: 1px dotted #32441b;
}

#post .side li p.deco {
	position:relative;
	width:1em;
	margin-right:1em;
	height:0.3em;
	background:#32441bcc;
	line-height:100%;
}
#post .side li p.deco::before, #post .side li p.deco::after {
	content:"";
	position:absolute;
	width:1.5em;
	height:0.3em;
	background:#32441bcc;
	top:-0.5em;
	left:0;
}
#post .side li p.deco::after {
	width:0.5em;
	background:#32441b80;
	top:initial;
	bottom:-0.5em;
}


/* Category */
#category li a {
	display:block;
}
/* Recent */
#post .side #recent li a {
	font-size:12px;
	font-size:1.2rem;
	padding:1.5em 0 1.5em 0;
}
#recent p {
	margin-top:0.5em;
	line-height:160%;
}
#recent figure {
	text-align:center;
	min-width:85px;
	width:85px;
	min-height:85px;
	height:85px;
	margin:0 1em 0 0;
	overflow:hidden;
}
/* Archive */
#post .side #archive li a {
	display:block;
	padding:1em 0 1em 1.2em;
}
#post .side #archive li:before {
	color:#cfa972;
	position:absolute;
	top:0;
	left:0;
	height:100%;
	width:1em;
	line-height:300%;
}
/* Search */
#post #search .s {
	display: block;
	padding: 0.5em 0.5em 0.5em 1em;
	border: 1px solid #cccccc;
	width: 100%;
	z-index: 1;
	background: url(./img/icon/search.png) right top  / auto 100%  no-repeat;
	margin-top: 1em;
}
#post #search .searchsubmit {
	display: none;
}
/******************************************************************************
	Post:Single
******************************************************************************/
#post .content {
	border-top:1px solid #cccccc;
	font-size:14px;
	font-size:1.4rem;
	padding-top: 1em;
	margin-top:1.5em;
	min-height:300px;
}
#post .content img {
	max-width:40%;
	height:auto;
}
#post.single h2 {
	font-size:26px;
	font-size:2.6rem;
	line-height:140%;
	margin:1em 0;
	padding-bottom:0.5em;
	color:#333333;
}
/************************************************************************************
	single paging
************************************************************************************/
.single_paging {
	width:100%;
	margin:20px 0;
	padding:0;
}
/******************************************************************************
	Pager
******************************************************************************/
#pager {
	margin:5em 0;
}
#pager .pages {
	display:none;
}
#pager .wp-pagenavi {
	display:-webkit-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:flex;
	-webkit-box-lines:multiple;
	-webkit-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
}
#pager .wp-pagenavi * {
	padding:0;
	min-width:3em;
	height:3em;
	margin:0 3px;
	text-align:center;
	border:1px solid rgba(33, 140, 71, 1);
	color:#32441b;
	line-height:3em;
	font-size:14px;
	font-size:1.4rem;
}
#pager .current, .wp-pagenavi > *:hover, #pager .wp-pagenavi a:hover {
	color:#ffffff;
	background:rgba(33, 140, 71, 0.9);
}
.wp-pagenavi .page {
}
.wp-pagenavi .current {
}
.wp-pagenavi .previouspostslink {
	border:none;
	margin-right:40px;
}
.wp-pagenavi .nextpostslink {
	border:none;
	margin-left:40px;
}
#pager .wp-pagenavi a {
	display: block;
	line-height:140%;
	padding: 0.8em;
	text-align: center;
	background:rgba(255, 255, 255, 1);
	margin-bottom:0.2em;
}
/*****************************************************************************
	ul / dl
*****************************************************************************/
ul.balloon {
	padding-bottom:1em;
}
ul.balloon li {
	font-size:18px;
	font-size:1.7rem;
	padding:0.5em 1em 0.5em 0;
	border-bottom:1px solid #9a9a9a;;
}
ul.balloon li p {
	line-height:100%;
	margin-right:0.5em;
}
ul.balloon li:last-child {
	border:none;
}

ul.menu > li {
	padding:1em 0;
	border-bottom:1px solid #cccccc;
}
ul.menu > li p {
	font-size:16px;
	font-size:1.6rem;
	margin-top:1em;
}
ul.menu > li:last-child {
	border:none;
}
ul.voice li {
	padding:2.5em 0;
	border-bottom:1px solid #9a9a9a;
}
ul.voice li:first-child {
	padding:0 0 2.5em 0;
}
ul.access li {
	padding:0.5em 0.5em 0.5em 0;
	border-bottom:1px dotted #cccccc;
}
ul.access li:last-child {
	border:none;
}
ul.access li p {
	font-size:12px;
	font-size:1.2rem;
	letter-spacing:0;
	width:20%;
}


@media screen and (max-width:767px){
	div.price > ul:not(:last-child) {
		border-bottom:1px solid #cccccc;
	}
	ul.access li {
		-webkit-box-lines:multiple;
		-webkit-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
	}
	ul.access li p {
		width:100%;
	}
}
@media screen and (min-width:768px){

}
/************************************************************************************
	bread
************************************************************************************/
nav#bread {
	width:100%;
	overflow:hidden;
	font-size:11px;
	font-size:1.1rem;
	line-height:120%;
	z-index:2;
	bottom:0;
	color:#ffffff;
}
nav#bread ol{
	margin:0 auto;
	padding:2em 3em;
}
nav#bread ol li {
	padding-top:0px;
	white-space:nowrap;
	min-height: 0;
	margin:0;
	display: inline-block;
	font: normal normal normal 14px/1 FontAwesome;
	font-size: inherit;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
nav#bread ol li a {
	border-bottom:1px solid #ffffff;
}
nav#bread ol li:after {
	content: "\f0da";
	padding-left:1em;
	padding-right:1em;
}
nav#bread ol li:first-child:before {
	content:"";
}
nav#bread ol li:nth-of-type(1):before {
	content:"";
}
nav#bread ol li:last-child {
	color:#ffffff;
}
nav#bread ol li:last-child:after {
	content:"";
	padding:0;
}
@media screen and (min-width:768px){
	nav#bread ol li:first-child{
	}
}
@media screen and (max-width:767px){
	nav#bread {
		margin-bottom:1em;
	}
	nav#bread ol{
		width:100%;
		margin:0 auto;
		padding:0.5em 1em;
	}
}
/************************************************************************************
 contact
************************************************************************************/
#contact{
	font-size: 14px;
	font-size: 1.4rem;
}
#contact dl {
	margin:0 auto;
}
#contact dt {
	width:100%;
	padding: 0.5em 0;
	margin-right:2em;
}
#contact dt span, #contact li .label span {
	font-size: 12px;
	font-size: 1.2rem;
	color:#ffffff;
	background:rgba(33, 140, 71, 1);
	padding:0.3em 1em;
	margin-right:1em;
	line-height:140%;
	height:2em;
}
#contact dt span.nn, #contact li .label span.nn {
	background:#cccccc;
}
.mw_wp_form_confirm li span {
	display:none;
}
#contact dt p {
	font-size: 12px;
	font-size: 1.2rem;
	color:#f79783;
}
#contact dd {
	width:100%;
	margin-bottom:1em;
}
#contact li .label {
	margin-bottom:1em;
}
#contact .memo {
	width: 100%;
	font-weight: bold;
	padding: 0 0 2em 0;
}
#contact  input[type="text"],
#contact  input[type="email"],
#contact  textarea {
	font-size: 14px;
	font-size: 1.4rem;
	width:100%;
	padding: 0.5em 1em;
	resize:none;
	border:1px solid #cccccc;
	background:rgba(255, 255, 255, 0.8);
	font-family: sans-serif;
}
#contact  textarea {
	height:200px;
}
#contact  input:focus,
#contact  textarea:focus {
	content:"";
	border:1px solid #666666;
}
#contact  input[type="submit"] {
	cursor:pointer;
	border: none;
}
#contact p {
	text-align:center;
	line-height: 170%;
}
@media screen and (max-width:767px) {
	#contact p {
		text-align:left;
	}
}

#contact .confirm, .sending, .backform {
	cursor: pointer;
	color: #fff;
	font-weight: bold;
	font-size: 14px;
	font-size: 1.4rem;
	width: 200px;
	height: 45px;
	margin-top: 5px;
	background: #888;
}
.mw_wp_form_confirm .send {
	display:none;
}

p.message {
	display:none;
}
.mw_wp_form_input p.message:nth-child(1) {
	display:block;
}
.mw_wp_form_confirm p.message:nth-child(2) {
	display:block;
}

/*****************************************************************************
	Flex Box
*****************************************************************************/
/***********
horizon
************/
.f_box {
	display:-webkit-box;
	display:-ms-flexbox;
	display: -webkit-flex;
	display:flex;
}
.f_item {
    -webkit-flex:1 0 auto;
    -ms-flex:1 0 auto;
    flex:1 0 auto;
}
.f_h_start {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
}
.f_h_center {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: center;
	justify-content: center;
}
.f_h_end {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
}
.f_h_sb {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.f_h_sa {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-around;
	justify-content: space-around;
}
.f_wrap {
	-webkit-box-lines:multiple;
	-webkit-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
}
/***********
vertical
************/
.f_column {
	-webkit-box-direction:column;
	-webkit-flex-direction:column;
	flex-direction:column;
}
.f_start {
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
}
.f_end {
	-webkit-align-items: flex-end;
	-ms-flex-align: end;
	align-items: flex-end;
}
.f_center {
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}
.f_baseline {
	-webkit-align-items: baseline;
	-ms-flex-align: baseline;
	align-items: baseline;
}
.f_stretch {
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
}
/*****************************************************************************
	Gimic with jQuery
*****************************************************************************/
.trans {
	-webkit-transition:all 0.3s ease;
			transition:all 0.3s ease;
}
.zoom {
	-webkit-transition:all 0.3s ease;
			transition:all 0.3s ease;
}
.zoom:hover {
    -webkit-transform: scale3d(1.1,1.1,1);
    transform: scale3d(1.1,1.1,1);
}
/*  3D Appear */
.deg {
	position:relative;
	perspective:1000px;
}
.deg.back {
	z-index:-1;
}
.deg > [data-type="left"] {
	transition:all 1s ease;
	transform: rotateY(90deg) translateX(-100px);
	opacity:0;
}
.deg > [data-type="right"] {
	transition:all 1s ease;
	transform: rotateY(-90deg) translateX(100px);
	opacity:0;
}
.deg.active > *{
	transform: rotateY(0deg);
	opacity:1;
}
/*  Scrolling Appear */
.scroll {
			transition:all 1.0s ease;
}
.scroll[data-type="up"] {
	transform: translate3d(0, 100px, 0);
	opacity:0.01;
}
.scroll[data-type="down"] {
	transform: translate3d(0, -100px, 0);
	opacity:0.01;
}
.scroll[data-type="left"] {
	transform: translate3d(-100px, 0, 0);
	opacity:0.01;
}
.scroll[data-type="right"] {
	transform: translate3d(100px, 0, 0);
	opacity:0.01;
}
.scroll[data-type="up"].active, .scroll[data-type="down"].active, .scroll[data-type="left"].active, .scroll[data-type="right"].active  {
	transform: translate3d(0, 0, 0);
	opacity:1;
    text-align: left;
}
.dur {
	transition-delay: 0.2s;
}
.dur4 {
	transition-delay: 0.4s;
}
/*  Parallax Setting */
.para {
	position: relative;
	background-repeat: no-repeat;
	background-color: rgba(255, 255, 255, 1);
}

.para[data-id="p1"] {
    background-image: url("./img/index/index_para_01.png");
}
.para[data-id="p2"] {
    background-image: url("./img/index/index_para_02.png");
}
.para[data-id="p3"] {
    background-image: url("./img/index/index_para_03.png");
}
.para[data-id="p4"] {
    background-image: url("./img/index/index_para_04.png");
}
@media screen and (max-device-width:1024px) {
	/* for Mobile and Tablet */
	.para {
		background-size: cover;
		height: 400px;
		background-position: center center;
	}
}
@media screen and (min-device-width:1024px)  {
	/* for PC */
	.para {
		background-attachment: fixed;
		background-size:100% auto;
		background-position: center 100%;
		height: 300px;
	}
}
@media screen and (max-width:768px) {
	/* for Mobile */
	.para {
		height: 190px;
	}
	.deg {
		width:100%;
	}
}
/*****************************************************************************
	common media
*****************************************************************************/
.col {
	width:100%;
}
@media screen and (max-width:767px){
	/* for Mobile */
	.f_res {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-box-lines:multiple;
		-webkit-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
	}
	div.blank {
		height:25px;
	}
	div.blankx2 {
		height:50px;
	}
	.pc {
		display:none;
	}
	.order_top {
		-webkit-order:-1;
		-ms-order:-1;
		order:-1;
	}
	.order_1 {
		-webkit-order:1;
		-ms-order:1;
		order:1;
	}
	address {
	}
}
@media screen and (min-width:768px){
	/* for Tablet and PC */
	.f_res {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		-webkit-justify-content: space-between;
		justify-content: space-between;
	}
	div.blank {
		height:50px;
	}
	div.blankx2 {
		height:100px;
	}
	div.blankx3 {
		height:150px;
	}
	.sp {
		display:none;
	}
	.w10 {
		width:10%;
		min-width:10%;
	}
	.w15 {
		width:15%;
		min-width:15%;
	}
	.w20 {
		width:20%;
		min-width:20%;
	}
	.w20s {
		width:calc(20% - 1em);
		min-width:calc(20% - 1em);
	}
	.w20l {
		width:calc(20% + 1em);
		min-width:calc(20% + 1em);
	}
	.w25 {
		width:25%;
		min-width:25%;
	}
	.w25s {
		width:calc(25% - 1em);
	}
	.w33{
		width:calc(100% / 3);
	}
	.w33s{
		width:calc(100% / 3 - 0.5em);
	}
	.w30 {
		width:30%;
		min-width:30%;
	}
	.w30s {
		width:calc(30% - 1em);
		min-width:calc(30% - 1em);
	}
	.w30l {
		width:calc(30% + 1em);
	}
	.w35 {
		width:35%;
		min-width:35%;
	}
	.w35s {
		width:calc(35% - 1em);
		min-width:calc(35% - 1em);
	}
	.w40 {
		width:40%;
		min-width:40%;
	}
	.w40s {
		width:calc(40% - 1em);
		min-width:calc(40% - 1em);
	}
	.w45 {
		width:45%;
	}
	.w45s {
		width:calc(45% - 1em);
		min-width:calc(45% - 1em);
	}
	.w45l {
		width:calc(45% + 1em);
		min-width:calc(45% + 1em);
	}
	.w60 {
		width:60%;
		min-width:60%;
	}
	.w60s {
		width:calc(60% - 1em);
	}
	.w60l {
		width:calc(60% + 1em);
	}
	.w66 {
		width:66%;
	}
	.w50s {
		width:calc(50% - 1em);
	}
	.w50 {
		width:50%;
		min-width:50%;
	}
	.w51 {
		width:51%;
		min-width:51%;
		padding: 10px 17px;
	}
	.w50l {
		width:calc(50% + 1em);
	}
	.w55 {
		width:calc(55%);
		min-width:calc(55%);
	}
	.w55s {
		width:calc(55% - 1em);
		min-width:calc(55% - 1em);
	}
	.w65 {
		width:65%;
		min-width:65%;
	}
	.w65s {
		width:calc(65% - 1em);
		min-width:calc(65% - 1em);
	}
	.w75 {
		width:75%;
	}
	.w75s {
		width:calc(75% - 1em);
	}
	.w70 {
		width:70%;
	}
	.w70s {
		width:calc(70% - 1em);
	}
	.w70l {
		width:calc(70% + 1em);
	}
	.w80 {
		width:80%;
	}
	.w80s {
		width:calc(80% - 1em);
	}
	.w80l {
		width:calc(80% + 1em);
	}
	.w85 {
		width:85%;
	}
	.w90 {
		width:90%;
	}
	.w95 {
		width:95%;
	}
}




/* --- お問い合わせフォーム --- */
/* デザインカスタマイズ */
div.wpcf7 p { padding:20px 20px 0; margin:0; font-size:14px; }
div.wpcf7 input, .wpcf7 textarea { border:1px solid #ccc; padding:8px; font-size:14px; }
div.wpcf7 textarea { width:93.5%; height:130px; }
div.wpcf7 input.wpcf7-submit {
   cursor:pointer; color:#fff; font-weight:bold; font-size:14px; width:200px; height:45px; margin:0 auto; display:block;
   -moz-border-radius:5px; -khtml-border-radius:5px; -webkit-border-radius:5px; border-radius:5px;
   background:#32441bcc; border:1px solid #32441bcc;
}
div.wpcf7 input.wpcf7-submit:hover { background:#32441b; box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.5), inset 0px 32px 0px -12px #32441b; border:1px solid #32441b; }
.wpcf7 input.wpcf7-submit:active { box-shadow:none; bottom:-2px; position:relative; }
.wpcf7 input:focus, .wpcf7 textarea:focus { border:1px solid #009de1; }
.wpcf7-captchac { border:1px solid #ccc; }
 
 
/* エラー個所をわかりやすく表示 */
.wpcf7 .wpcf7-not-valid { background: #ffb6c1; }
.wpcf7 span.wpcf7-not-valid-tip {font-size: 80%;}
.wpcf7 .wpcf7-response-output {margin: 10px 0 0; padding: 8px 35px 8px 14px; text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
    -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; }
.wpcf7 .wpcf7-validation-errors {color: #B94A48; background-color: #F2DEDE; border: 1px solid #EED3D7;}
.wpcf7 .wpcf7-mail-sent-ok {color: #DF9265; background-color: #DF9265; border: 1px solid #BCE8F1;}
 
/* 必須赤色表示 */
.wpcf7 .required { color: #f00;}
/* 任意緑色表示 */
.wpcf7 .any{ color: #080;}



.square_btn{
    position: relative;
    display: inline-block;
    font-weight: bold;
    padding: 1em 2em;
    text-decoration: none;
    border-left: solid 4px #32441b;
    border-right: solid 4px #32441b;
    color: #32441b;
    background: rgba(33, 140, 71, 0.28);
    transition: .4s;
}

.square_btn:hover {
    background: #32441b;
    color: #FFF;
}
