@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:#a80f0f;
	sub-color:#6cc7a6;
	main-color-rgb : 45, 175, 128;
	color:#a80f0f;
*/
* {
	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.5rem;
	}
}
body {
	font-family: "Yu Mincho","游明朝体", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	line-height: 160%;
}
.character {
	letter-spacing:0.1em;
	font-family:  "Yu Mincho","游明朝体", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
/*****************************************************************************
common
*****************************************************************************/
.none {
	display:none;
}
a {
	text-decoration: none;
	color:inherit;
	cursor:pointer;
}
figure {
	margin:0;
}
li {
	list-style: none;
}
h1,h2,h3{
	position:relative;
	text-align:center;
	font-weight:normal;
	line-height:120%;
	margin:0;
	word-break:break-all;
	color:#a80f0f;
}
hr {
	border:none;
	margin:2em 0 3em 0;
	border-top:1px solid #9a9a9a
}

.stress {
	color:#ec727f;
}
.col {
	height:auto;
}
.bold {
	font-weight: bold;
}
.tc {
	text-align:center;
}
.tl {
	text-align:left;
}
.tr {
	text-align:right;
}
.ib {
	display:inline-block;
}
.cen {
	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%;
}
.ma {
	margin-left:auto;
	margin-right:auto;
}
.z1 {
	z-index:1;
}
span.tri {
	display:block;
	-webkit-transform:scale(0.6) rotate(90deg);
			transform:scale(0.6) rotate(90deg);
}
/*****************************************************************************
トップページへ戻るボタン
*****************************************************************************/

.toTop {
	position:fixed;
	width:60px;
	height:60px;
	z-index:99;
	display:none;
	text-align:center;
}
.toTop {
	right:4em;
	bottom:4em;
}

@media screen and (max-width:767px){
	.toTop {
		right:1em;
	}
	.toTop	img {
		width:inherit;
	}
}

/*****************************************************************************
	ヘッダー
*****************************************************************************/
header {
	width:100%;
	position:fixed;
	z-index:10;
	transition: all 0.5s ease-in-out;
}
header.active {
	padding-top:0px;
	background: #a80f0fcf;
	border-bottom: 3px solid #ca9e71;
}
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: #a80f0fcf;
	}
	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 {
		margin: 15px 0px 0 -90px;
		max-height:45px;
	}

	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: #a80f0f;
		border-bottom: solid 3px #ca9e71;
	}
	
	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:210px;
	}
	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:#a80f0f6e;
		}
h1.logo {
text-align: center;
z-index:2;
color:#ffffff;
white-space:nowrap;
font-size:14px;
font-size:1.8rem;
max-width: 120px;
}
	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:#a80f0f6e;
		border-bottom: 1px solid #a80f0f;
	}
	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: -8px;
        left: -7px;
        width: 100%;
        height: 30px;
        border-left: 4px double #ffff;
        color: #a80f0f;
		transition: transform 0.3s ease;
		transform: scale3d(0, 1, 0);
		transform-origin: 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:#a80f0f;
}

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


/*****************************************************************************
	Section / Article
*****************************************************************************/
section {
	width:100%;
	position:relative;
	padding-left:40px;
	padding-right:40px;
}
section.main {
	position:relative;
	background:rgba(255, 255, 255, 1);
	padding:40px;
}

section.np {
	padding:0;
}
section.ffctm {
	padding-bottom:0;
}
section > article {
	position:relative;
	max-width:1050px;
	width:100%;
	margin:0 auto;
}

@media screen and (max-width:767px){
	main{
	}
	section {
		padding:0em 0;
	}
	section.main {
		padding:10px;
	}
	section > article {
		width:100%;
		padding:0 0.8em;
	}
	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
*****************************************************************************/

.instacol {
	background:rgba(240, 240, 240, 1);
}
.picture {
	height:240px;
}

/*****************************************************************************
	Title Decoration
*****************************************************************************/
h2 {
	font-size:30px;
	font-size:3rem;
}
h2.mainmenu {
	font-size:35px;
	font-size:3.5rem;
	text-align:left;
}
h2.title {
	letter-spacing: 0.1em;
    line-height: 120%;
    border-top: 4px double #a80f0f;
    border-bottom: 4px double #a80f0f;
    padding: 0.4em;
    color: #a80f0f;
	z-index:1;
	background: #a80f0f40;
}
h2+p {
	font-size:16px;
	font-size:1.6rem;
	color:#a80f0f;
}
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:#a80f0f;
	margin-bottom:1.5em;
}
h3.single {
	font-size:30px;
	font-size:3.0rem;
	margin:0.5em 0;
	text-align: left;
}
h3.single+p {
	line-height:200%;
}

@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.mainmenu, figure.menu, 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.mainmenu {
		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;
}
figure div.dia::after {
	content:none;
}
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.ba {
		padding:2em;
	}
}
.date {
	padding:0;
	line-height:100%;
	color:#9a9a9a;
}
.category {
	font-size: 10px;
	font-size: 1.4rem;
	display: inline-block;
	background: #a80f0fcc;
	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.mainmenu {
	min-height:300px;
	background:#a80f0f17;
	padding:1em 4em;
}
div.mainmenu00 {
	min-height:300px;
	background:#a80f0f30;
	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:#a80f0f;
	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.mainmenu {
		padding:1em;
	}
		div.mainmenu00 {
		padding:1em;
	}
}
@media screen and (min-width:768px){

}

/******************************************************************************
	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:#a80f0fcc;
	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 #a80f0f;
}

/* 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:50%;
	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:#a80f0f;
	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.8rem;
	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.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;
	}
}

/*****************************************************************************
	Flex Box
*****************************************************************************/
/***********
horizon
************/
.disfr {
	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;
}
.jusfr {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
}
.justfr {
	-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;
}
.alitfr {
	-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;
}
.alifr {
	-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;
}

/*****************************************************************************
	common media
*****************************************************************************/
.col {
	width:100%;
}
@media screen and (max-width:767px){
	/* for Mobile */
	.confr {
		-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.space {
		height:25px;
	}
	div.spacex2 {
		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 */
	.confr {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		-webkit-justify-content: space-between;
		justify-content: space-between;
	}
	div.space {
		height:50px;
	}
	div.spacex2 {
		height:100px;
	}
	div.spacex3 {
		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);
	}
	.w45p {
		width:45%;
		padding: 0 10px;
	}	
	.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%;
		height: 400px;
	}
	.w51 {
		width:51%;
		min-width:51%;
		padding: 10px 35px;
	}
	.w50l {
		width:calc(50% + 1em);
	}.wleft {
		width:50%;
		min-width:50%;
/* 		height: 400px; */
		float: left;
	}
	.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%;
	}
}


/* --- カスタマイズ --- */
/* トップ文言箇所 */
.width1200 {
    max-width: 1200px;
    margin: 0 auto;
	overflow: hidden;
}
.pd_60 {
    padding: 60px 0px 60px 0px;
}
.pd_100 {
    padding: 0px 100px;
}
#top_main_catch {
    font-size: 1.5em;
    line-height: 1.5em;
    text-align: center;
    padding: 0px 0px 30px 0px;
}
#top_sub_catch {
    text-align: center;
    line-height: 1.8em;
    padding: 0px 15px 30px 15px;
}

@media only screen and (max-width: 767px){
.pd_100 {
    padding: 0px 0px;
}
#top_main_catch {
    font-size: 1.4em;
	line-height: 1.5em;
    text-align: left;
    padding: 0px 15px 30px 15px;
}
#top_sub_catch {
    text-align: left;
    line-height: 1.8em;
    padding: 0px 15px 30px 15px;
}
}

/* タイトル箇所 */
.title_h2 {
    text-align: center;
    padding: 20px 0px 0px 0px;
}
.white_title_bg {
    background-color: #a80f0f7a;
    padding: 0 0 20px 0;
}
.title_h2 span {
	color: #ffff;
    line-height: 1.5em;
    font-size: 1.2em;
    letter-spacing: 0.1em;
    border-bottom: 2px solid #ffff;
}
.white_col {
    width: 320px;
    text-align: center;
    padding: 5px 0;
    margin: 0 auto;
	color: #ffff;
}
.menu_time {
    width: 320px;
    text-align: center;
    padding: 5px 0;
    margin: 35px auto 0 auto;
	color: #ffff;
    border: 1px solid #ffff;
}
.menu_text {
    width: 600px;
    text-align: center;
    padding: 5px 0;
    margin: 35px auto 0 auto;
	color: #ffff;
}

.gray_title_bg {
    color: #fff;
    background-color: #333333;
    padding: 0 0 60px 0;
}
.title_h2_wh span {
    line-height: 1.5em;
    font-size: 1.75em;
    letter-spacing: 0.1em;
    border-bottom: 2px solid #ffffff;
}
.menu_time_wh {
    width: 320px;
    text-align: center;
    padding: 5px 0;
    margin: 0 auto;
    border: 1px solid #ffffff;
}

@media only screen and (max-width: 767px){
.menu_text {
    width: 100%;
    text-align: center;
    padding: 5px 4px;
    margin: 15px auto 0 auto;
    color: #ffff;
}
}

/* メニュー箇所 */
.sec2 .sec-inner {
    width: 900px;
    margin-left: auto;
    margin-right: auto;
}
.sec2 .sec-inner {
    width: 900px;
    min-height: 1px;
}

.max-list h4 {
    margin: 1em 2em;
    line-height: 1.4;
	text-align: center;
    background-color: #a80f0f7d;
    color: #f7f7f7;
    font-weight: normal;
    border-bottom: 4px double #ffff;
    box-shadow: 1px 3px 1px rgba(0, 0, 0, 0.2);
    margin-bottom: 1em;
    padding: 0.5em 0;
    letter-spacing: 0.2em;
}
.max-list dl {
    margin: 1em 2.5em;
}
.max-list dl dt {
    width: 100%;
    margin-top: 1em;
    min-height: 10px;
}
.max-list dl dt span {
    float: right;
    font-size: 1em;
}

.menu-list-left h4, .menu-list-right h4, .menu-list2-left h4, .menu-list2-right h4 {
    margin: 1em 2em;
    line-height: 1.4;
	text-align: center;
    background-color: #a80f0f7d;
    color: #f7f7f7;
    font-weight: normal;
    border-bottom: 4px double #ffff;
    box-shadow: 1px 3px 1px rgba(0, 0, 0, 0.2);
    margin-bottom: 1em;
    padding: 0.5em 0;
    letter-spacing: 0.2em;
}
.menu-list-left, .menu-list-right, .menu-list2-left, .menu-list2-right {
    width: 50%;
}

.menu-list-left dl, .menu-list-right dl, .menu-list2-left dl, .menu-list2-right dl {
    margin: 1em 2.5em;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2);
}
.menu-list-left dl dt, .menu-list-right dl dt, .menu-list2-left dl dt, .menu-list2-right dl dt {
    width: 100%;
    margin-top: 1em;
    min-height: 1px;
}
.menu-list-left dl dt span, .menu-list-right dl dt span, .menu-list2-left dl dt span, .menu-list2-right dl dt span {
    float: right;
    font-size: 0.8em;
}

@media only screen and (max-width: 767px){

.sec2 .sec-inner {
    width: 50%;
    margin-left: 0;
    margin-right: 0;
}
	.max-list h4 {
    font-size: 1.8em;
}
.max-list dl {
    font-size: 0.8em;
    margin: 1em 1em;
}
.max-list dl dt {
    font-size: 1.4em;
}
.menu-list-left, .menu-list-right, .menu-list2-left, .menu-list2-right {
    width: 100%;
}
.menu-list-left h4, .menu-list-right h4, .menu-list2-left h4, .menu-list2-right h4 {
    font-size: 1.8em;
}	
.menu-list-left dl, .menu-list-right dl, .menu-list2-left dl, .menu-list2-right dl {
    font-size: 1.4em;
    margin: 1em 3em;
}
.menu-list-left dl dt, .menu-list-right dl dt, .menu-list2-left dl dt, .menu-list2-right dl dt {
    font-size: 1.4em;
}
.max-list h4 {
    margin: 0em 0.3em;
    line-height: 1;
	text-align: center;
    background-color: #a80f0f7d;
    color: #f7f7f7;
    font-weight: normal;
	font-size: 20px;
    border-bottom: 4px double #ffff;
    box-shadow: 1px 3px 1px rgba(0, 0, 0, 0.2);
    margin-bottom: 1em;
    padding: 0.5em 0;
    letter-spacing: 0.2em;
}
.menu-list-left h4, .menu-list-right h4, .menu-list2-left h4, .menu-list2-right h4 {
    margin: 0em 0.3em;
    line-height: 1;
	text-align: center;
    background-color: #a80f0f7d;
    color: #f7f7f7;
    font-weight: normal;
    border-bottom: 4px double #ffff;
    box-shadow: 1px 3px 1px rgba(0, 0, 0, 0.2);
    margin-bottom: 1em;
    padding: 0.5em 0;
    letter-spacing: 0.2em;
}
}



/* --- お問い合わせフォーム --- */
/* デザインカスタマイズ */
div.wpcf7 p { padding:20px 20px 0; margin:0; font-size:14px; padding-bottom: 10px;}
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:#a80f0fcc; border:1px solid #a80f0fcc;
}
div.wpcf7 input.wpcf7-submit:hover { background:#a80f0f; box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.5), inset 0px 32px 0px -12px #a80f0f; border:1px solid #a80f0f; }
.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: #ffff; background-color: #a80f0fd1; border: 1px solid #a80f0f;}
.wpcf7 .wpcf7-mail-sent-ok {color: #ffffff; background-color: #a80f0fd1; border: 1px solid #a80f0f;}
 
/* 必須赤色表示 */
.wpcf7 .required { color: #f00;}
/* 任意緑色表示 */
.wpcf7 .any{ color: #080;}


.square_btn{
    position: relative;
    display: inline-block;
    font-weight: bold;
    padding: 1em 5.5em;
    text-decoration: none;
    border-left: solid 4px #a80f0f;
    border-right: solid 4px #a80f0f;
    color: #a80f0f;
    background: #a80f0f30;
    transition: .4s;
}

.square_btn:hover {
    background: #a80f0f;
    color: #FFF;
}


@media only screen and (max-width: 767px){
.square_btn{
    position: relative;
    display: inline-block;
    font-weight: bold;
    padding: 1em 2em;
    text-decoration: none;
    border-left: solid 4px #a80f0f;
    border-right: solid 4px #a80f0f;
    color: #a80f0f;
    background: #a80f0f30;
    transition: .4s;
}

.square_btn:hover {
    background: #a80f0f;
    color: #FFF;
}
}