/*
Theme Name: POCKET
Theme URI: http://demo.pocket-sinior.jp
Author URI: http://demo.pocket-sinior.jp
Description: simple so simple.suport smartphone, tablet, laptop, or desktop computer.
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: lescinq co,.ltd.
*/

/*--------------------------------------------------------------
1.0 - Reset
--------------------------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	border: 0;
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	outline: 0;
	padding: 0;
}
html {
	font-size: 63.5%; /* Corrects text resizing oddly in IE6/7 when body font-size is set using em units http://clagnut.com/blog/348/#c790 */
	overflow-y: scroll; /* Keeps page centered in all browsers regardless of content height */
	-webkit-text-size-adjust: 100%; /* Prevents iOS text size adjust after orientation change, without disabling user zoom */
	-ms-text-size-adjust:     100%; /* www.456bereastreet.com/archive/201012/controlling_text_size_in_safari_for_ios_without_disabling_user_zoom/ */
}
*,
*:before,
*:after { /* apply a natural box layout model to all elements; see http://www.paulirish.com/2012/box-sizing-border-box-ftw/ */
	-webkit-box-sizing: border-box; 
	-moz-box-sizing:    border-box;
	box-sizing:         border-box;
}
body {}
div,article,aside,details,figcaption,figure,footer,header,main,nav,section {
	display: block;
	box-sizing:border-box;
}
ol, ul {
	list-style: none;
}
caption,th, td{
	font-weight: normal;
	text-align: left;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: "";
}
blockquote, q {
	quotes: "" "";
}
a:focus {outline: none;}
a:hover,a:active {
	outline: 0;
}
img{
	display: inline-block;
	border: 0;
}
img.fix{
	width: 100%!important;
	height: auto!important;
	display: block!important;
}
/*--------------------------------------------------------------
2.0 Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
textarea {
	color: #222;
	font-family:'Lucida Grande','Hiragino Kaku Gothic ProN',Meiryo,メイリオ,sans-serif;
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.6;
	letter-spacing:0.1em;
	-webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4, h5, h6 {clear: both;}
p {text-align: justify;}
b, strong {font-weight: bold;}
dfn, cite, em, i {}
blockquote {}
address {}
pre {text-align: justify;}

/*--------------------------------------------------------------
3.0 Elements
--------------------------------------------------------------*/
hr {
	border: 0;
	height: 0px;
	margin: 1.2em 0em;
	border-top:1px #ccc solid;
	border-bottom:1px #fff solid;
}
hr.dot {
	border: 0;
	height: 0px;
	margin: 1.2em 0em;
	border-bottom:1px #eee dotted;
}
br.for_pc{display: block;}
@media screen and (max-width:640px){
	br.for_pc{display: none;}
}

/*--------------------------------------------------------------
5.1 Links
--------------------------------------------------------------*/
a {
	text-decoration:none;
	color:#333;
}
a:visited {}
a:hover,a:focus,a:active {
}
a.alpha:hover{
	filter: alpha(opacity=60);
	-moz-opacity:0.6;
	opacity:0.6;
}
/*--------------------------------------------------------------
4.0 Forms
--------------------------------------------------------------*/
button,
input,
select,
textarea {
	font-size: 100%; /* Corrects font size not being inherited in all browsers */
	margin: 0; /* Addresses margins set differently in IE6/7, F3/4, S5, Chrome */
	vertical-align: baseline; /* Improves appearance and consistency in all browsers */
	*vertical-align: middle; /* Improves appearance and consistency in IE6/IE7 */
}
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: none;
	border-radius: 3px;
	color: rgba(0, 0, 0, .8);
	cursor: pointer; /* Improves usability and consistency of cursor style between image-type 'input' and others */
	-webkit-appearance: button; /* Corrects inability to style clickable 'input' types in iOS */
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 1;
	padding: .6em 1em .4em;
}
input[type="checkbox"],
input[type="radio"] {
	padding: 0; /* Addresses excess padding in IE8/9 */
}
input[type="search"] {
	-webkit-appearance: textfield; /* Addresses appearance set to searchfield in S5, Chrome */
	-webkit-box-sizing: content-box; /* Addresses box sizing set to border-box in S5, Chrome (include -moz to future-proof) */
	-moz-box-sizing:    content-box;
	box-sizing:         content-box;
}
input[type="search"]::-webkit-search-decoration { /* Corrects inner padding displayed oddly in S5, Chrome on OSX */
	-webkit-appearance: none;
}
button::-moz-focus-inner,
input::-moz-focus-inner { /* Corrects inner padding and border displayed oddly in FF3/4 www.sitepen.com/blog/2008/05/14/the-devils-in-the-details-fixing-dojos-toolbar-buttons/ */
	border: 0;
	padding: 0;
}
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="tel"],
input[type="search"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
textarea:focus {
	color: #111;
}
textarea {
	overflow: auto; /* Removes default vertical scrollbar in IE6/7/8/9 */
	padding-left: 3px;
	vertical-align: top; /* Improves readability and alignment in all browsers */
	width: 98%;
	white-space:pre-wrap;
}


/*--------------------------------------------------------------
LAYOUT
--------------------------------------------------------------*/
.inner{width:100%;max-width:1100px;margin: 0 auto;}
.inner_mid{width:100%;max-width:900px;margin: 0 auto;}
.inner_wide{width:100%;max-width:1200px;margin: 0 auto;}
.flex{
	display:flex;
	justify-content: space-between;
}
.sidebar{
	width:240px;
	padding:20px;
	background-color:#fff;
	border-radius: 5px;
}
.content{
	width:100%;
	padding:0px 30px;
	margin-right:20px;
}
@media screen and (max-width:700px){
	.flex{display:block;}
	.content {
	    padding: 0px 10px;
	    margin-right: 0px;
	}
	.sidebar{
		width:100%;
	}
}

/*--------------------------------------------------------------
FOOTER
--------------------------------------------------------------*/
.diagnosis{
	padding:50px 20px;
	color:#fff;
	background-color: #55afaf;
}
.diagnosis h3{
	font-size: 26px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 5px;
}
.diagnosis .diagnosis__sub{
	font-size: 16px;
	text-align: center;
	margin-bottom: 25px;
}

.diagnosis__grid{
	display: flex;
	justify-content: space-between;
}
.diag{
	width: 100%;
	flex-basis: 30%;
}
.diag .diag__title{
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 10px;
}
.diag ul li{
	font-size: 14px;
	font-weight: bold;
}
.diagnosis__cta .btn{
	display: block;
	width: 80%;
	max-width: 300px;
	height: 50px;
	line-height: 50px;
	text-align: center;
	background-color: #f0a33a;
	color:#fff;
	font-weight: bold;
	margin: 30px auto;
	border-radius: 25px;
}
@media screen and (max-width:700px){
	.diagnosis__grid{
		display: block;
	}
	.diag .diag__title{
		margin-top: 10px;
	}
}

/*--------------------------------------------------------------
SIDEBAR
--------------------------------------------------------------*/
.sidebar{}
.sidebar .menu_item{
	padding:5px 0px;
	border-bottom: 1px #eb961e solid;
}
.sidebar .menu_item h3{
	display: block;
	font-weight: bold;
	padding:4px 0px;
	margin:5px 0px;
}
.sidebar .menu_item ul{
	display: block;
	margin:4px 0px;
}
.sidebar .menu_item ul li{
	font-size: 13px;
	font-weight: bold;
	padding:4px;
}
.sidebar .bnr_store{
	margin:15px 0px;
	padding:10px 0px;
	font-size: 13px;
	font-weight: bold;
}
.sidebar .bnr_store img{
	margin-bottom: 5px;
}
.sidebar .bnr_store a{
	display: block;
	width: 80%;
	height: 30px;
	line-height: 30px;
	border-radius: 15px;
	text-align: center;
	margin: 5px auto;
	border:1px #55afaf solid;
	color:#55afaf;
}

/*--------------------------------------------------------------
TOP
--------------------------------------------------------------*/
#top_hero{
	width:100%;
	max-width: 1250px;
	margin: 0 auto;
}
#top_hero main{
	position: relative;
}
#top_hero main div{
	position: absolute;
	bottom:40px;
	left:20px;
	background-color:rgba(255,255,255,0.8);
	padding:30px;
}
#top_hero main h2#top_catchphrase{
	font-size:38px;
}
#top_hero footer{
	padding:15px;
}
#top_hero footer p{
	font-size: 22px;
	font-weight: 600;
	margin-bottom: 15px;
}
.keyword_hash{
	margin-bottom: 15px;
}
.keyword_hash ul{
	display: flex;
	flex-wrap: wrap;
}
.keyword_hash ul li{
	font-size: 18px;
	color:#55afaf;
	font-weight: bold;
	padding-right: 10px;
}
.convartion_btns{
	display: flex;
	align-items: center;
	padding:20px 0px;
	margin-top: 20px;
	justify-content: center;
}
.convartion_btns a{
	display: block;
	height: 50px;
	font-size: 18px;
	line-height: 30px;
	font-weight: bold;
	color:#eb961e;
	padding:9px 20px;
	border:2px #eb961e solid;
	margin-right: 20px;
	border-radius: 5px;
}
.convartion_btns a.btn_sodan{
	background-color: #eb788c;
	border:2px #eb788c solid;
	color:#fff;
}
.convartion_btns a.btn_sodan:hover{
	background-color: #fff;
	color: #eb788c;
}
.convartion_btns a.btn_event:hover{
	background-color: #eb961e;
	color:#fff;
}

@media screen and (max-width:900px){
	#top_hero main h2#top_catchphrase{
		font-size:30px;
	}	
}
@media screen and (max-width:700px){
	#top_hero main h2#top_catchphrase{
		font-size:24px;
		left:10px;
	}
	#top_hero main div{
		bottom:20px;
		padding:20px;
	}
	.keyword_hash ul li{
		font-size: 13px;
	}
	.convartion_btns{
		display: block;
	}
	.convartion_btns a{
		margin-bottom:15px;
	}
}

#top_qa{
	padding:40px 20px;
	background-color: #55afaf;
}
#top_qa h3{
	font-size: 36px;
	font-weight: bold;
	text-align: center;
	padding:20px 0px;
	color:#fff;
}
.top_qa_list{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.top_qa_list_item{
	width: 100%;
	flex-basis: 48%;
	height:80px;
	display: flex;
	align-items: center;
	background-color:#fff;
	font-size: 18px;
	line-height: 27px;
	font-weight: bold;
	padding:0px 45px;
	margin-bottom: 20px;
	border-radius: 40px;
}
.top_qa_list_item span{
	border-bottom: 3px #ffff00 solid;
}
@media screen and (max-width:700px){
	#top_qa h3 {
		font-size: 22px;
	}
	.top_qa_list{
		display: block;
	}
	.top_qa_list_item{
		font-size: 15px;
		line-height: 22px;
		padding:0px 35px;
	}
}

#top_about{
	padding:5% 20px;
}
#top_about main{
	display:flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom:45px;
}
#top_about main .image{
	width:100%;
	flex-basis: 50%;
}
#top_about main .text{
	width:100%;
	flex-basis: 45%;
}
#top_about main .text h3{
	font-size: 32px;
    line-height: 1.5em;
	font-weight: bold;
	margin-bottom: 25px;
}
#top_about main .text h3 span{
	display: block;
	font-size:22px;
}
#top_about main .text p{
	font-size:18px;
}
#top_about footer{
	width:100%;
	max-width: 700px;
	padding:20px 40px;
	margin: 15px auto;
	background-color: #eb788c;
	color:#fff;
	font-size: 16px;
	font-weight: bold;
	border-radius: 5px;
}
@media screen and (max-width:700px){
	
	#top_about{
		padding:40px 20px;
	}
	#top_about main{
		display:block;
	}
	#top_about main .text h3{
		font-size: 28px;
	}
	#top_about main .text p {
	    font-size: 16px;
	    margin-bottom: 15px;
	}
}

#top_services{
	padding:5% 10px;
	background-color: #55afaf;
	color:#fff;
}
#top_services h3{
	text-align: center;
	font-size:24px;
	font-weight: bold;
	padding:2% 15px;
}
#top_services footer{
	font-size:20px;
	padding:3% 15px;
}
#top_services footer p{
	text-align: center;
}
.top_service_list{
	display:flex;
	justify-content: center;
	flex-wrap: wrap;
	color:#333;
	padding:20px 0px;
}
.top_service_list_item{
	width:100%;
	flex-basis: 31%;
	padding:30px 5px;
	margin:0 1%;
	margin-bottom: 15px;
	background-color: #fff;
	border-radius: 10px;
}
.top_service_list_item .service_title{
	display: block;
	width:100%;
	padding:0px 30px;
	margin-bottom: 10px;
}
.top_service_list_item .service_content{
	width:100%;
	padding:0px 30px;
}

.top_service_list_item h2{
	font-size:22px;
	font-weight:bold;
	color: #55afaf;
	text-align: center;
	margin-bottom:10px;
}
.top_service_list_item h2 span{
	display: block;
	font-size:12px;
	color: #333;
}
.top_service_list_item h5{
	font-size:14px;
	font-weight:bold;
	text-align: center;
	margin-bottom:10px;
}
.top_service_list_item img{
	max-width: 130px;
	margin: 10px auto;
}
.top_service_list_item p{
	display: -webkit-box;
	font-size: 13.5px;
	line-height: 1.6;
	max-height: calc(1.6em * 4 + 10px);
	margin-bottom:10px;
	overflow:hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
}
.top_service_list_item ul{
	font-size:12.5px;
	padding:15px 20px;
	background-color:#f6f6f6;
	border-radius: 5px;
}
.top_service_list_item ul h6{
	font-weight: bold;
}
.top_service_list_item ul li{
	padding:2px 0px;
}

.top_service_list_item.btn_more{
	position: relative;
	background:none;
	text-align: center;
}
.top_service_list_item.btn_more a{
	position: absolute;
	display: block;
	width:80%;
	height: 64px;
	top:0;
	bottom: 0;
	left:0;
	right: 0;
	margin: auto;
	background-color: #fff;
	color: #55afaf;
	font-weight: bold;
    line-height: 22px;
	padding:10px 15px;
	border-radius: 32px;
}
@media screen and (max-width:700px){
	
	.top_service_list{
		display:block;
	}	
}

#top_pocket{
	padding:80px 10px;
	background-color:#eb788c;
}
#top_pocket main {
	padding:50px 40px;
	background-color:#fff;
	margin-bottom: 20px;
	border-radius: 10px;
}
#top_pocket main h3{
  	width: 200px;
  	height: 88px;
  	margin:0 auto;
  	background-image: url('./images/site_logo.png');
  	background-size: contain;
  	background-repeat: no-repeat;
  	background-position: center center;
  	text-indent: -999em;
  	overflow: hidden;
  	text-decoration: none;
	margin-bottom: 30px;
}

#top_pocket main .flex{
	justify-content: space-around;
	align-items: center;
}
#top_pocket main .text{
	width:100%;
	flex-basis: 53%;
	margin-bottom:15px;
}
#top_pocket main .text p{
	margin-bottom: 10px;
}
#top_pocket main .info{
	width:100%;
	flex-basis: 38%;
}
#top_pocket main .info .sodan_title{
	margin-bottom: 15px;
}
#top_pocket main .info .sodan_tel{
	margin-bottom: 10px;
}
#top_pocket main .info .sodan_main{
}

#top_pocket footer{
	padding:40px 40px;
	background-color:#fff;
	border-radius: 10px;
}
#top_pocket footer p{
	color: #55afaf;
	font-weight: bold;
	text-align: center;
}

#top_store{
	padding:40px 0px;
	background-color: rgb(0,0,0,0.02);
}
.top_store_images{
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	align-items: center;
}
.top_store_images .top_store_images_info{
	width:100%;
	flex-basis: 30%;
}
.top_store_images .top_store_images_store{
	width:100%;
	flex-basis: 65%;
}
.top_store_contact{
	display: flex;
	justify-content: space-around;
	align-items: center;
	padding:40px 20px;
}
.top_store_contact_tel{
	width:100%;
	flex-basis: 52%;
}
.top_store_contact_sns{
	width:100%;
	flex-basis: 33%;
}
.top_store_contact_line{
	margin-bottom: 10px;
}
@media screen and (max-width:700px){
	.top_store_images{
		display: block;
	}
	.top_store_images .top_store_images_info{
		width:80%;
		margin:0 auto;
	}
	.top_store_contact{
		display: block;
	}
	.top_store_contact_tel{
		width:90%;
		margin:0 auto;
		margin-bottom: 25px;
	}
	.top_store_contact_sns{
		width:70%;
		margin:0 auto;
	}
	
}

#top_voice{
	padding:40px 20px;
}
#top_voice h3{
	text-align: center;
	font-size:24px;
	font-weight: bold;
	color:#eb788c;
	padding:2% 15px;
}
#top_voice_list{
	display: flex;
	justify-content: space-between;
}
.top_voice_list_item{
	width:100%;
	flex-basis: 20%;
	padding:20px;
	margin:15px;
	border:1px #eb788c solid;
	border-radius: 5px;
}
.top_voice_list_item p{
	margin-bottom: 15px;
}
.top_voice_list_item h5{
	font-weight: bold;
}

/*--------------------------------------------------------------
パンクズリスト
--------------------------------------------------------------*/
.page_navigation{
	margin-bottom:10px;
}
.page_navigation ul{
	display:flex;
}
.page_navigation ul li{
	display: block;
	padding:0px 5px;
}
.page_navigation ul li a{
	display:block;
	font-weight: bold;
}

/*--------------------------------------------------------------
PAGE
--------------------------------------------------------------*/
.page_header{
	position: relative;
	width:100%;
	aspect-ratio: 16/3;
	text-align: center;
	background-color: #55afaf;
}
.page_header .page_title{
	position: absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	margin: auto;
	width:80%;
	max-width: 400px;
	height: 50px;
	line-height: 50px;
	font-size:20px;
	font-weight: bold;
	background-color: rgba(255,255,255,1);
	border-radius: 5px;
}
.page_main{
	background-color:rgba(240,240,240,1);
	padding:3% 10px;
}


/*--------------------------------------------------------------
相談事例
--------------------------------------------------------------*/
.case_list{
	padding:20px 0px;
}
.case_list_item{
	padding:30px;
	background-color:#fff;
	margin-bottom:15px;
}
.case_list_item .customer{
	position: relative;
	width:100%;
	flex-basis:22%;
	padding:40px 0px;
}
.case_list_item .customer div{
	position: absolute;
	width:100%;
	height: 50px;
	line-height: 50px;
	text-align: center;
	font-weight: bold;
	color:#eb788c;
	top:0;
	left:0;
	right:0;
	bottom:0;
	margin: auto;
}
.case_list_item .text{
	width:100%;
	flex-basis:75%;
}
.case_list_item .text h2{
	font-size: 22px;
	font-weight: bold;
	color:#55afaf;
	margin-bottom: 5px;
}
.case_list_item .text p{
	font-size:15px;
	margin-bottom:15px;
}
.case_list_item .text h5{
	display: inline-block;
	padding:5px 10px;
	background-color: #eb788c;
	color:#fff;
	font-size: 14px;
	font-weight: bold;
	border-radius: 3px;
	margin-bottom: 10px;
}

.case_list_item .text a{
	display: inline-block;
	height:40px;
	line-height: 40px;
	padding:0px 20px;
	background-color:#55afaf;
	color:#fff;
	font-size:14px;
	font-weight: bold;
	border-radius: 20px;
}

@media screen and (max-width:700px){
	.case_list_item{display: block;}
}

/*--------------------------------------------------------------
サービス
--------------------------------------------------------------*/
.service_list{
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding:40px 0px;
}
.service_list_item{
	display: flex;
	justify-content: center;
	align-items: center;
	width:100%;
	flex-basis: 100%;
	padding:50px 5px;
	margin-bottom: 15px;
	background-color: #fff;
	border-radius: 10px;
}
.service_list_item .service_title{
	display: block;
	width:100%;
	flex-basis: 35%;
}
.service_list_item .service_content{
	width:100%;
	flex-basis: 58%;
}

.service_list_item h2{
	font-size:24px;
	color: #55afaf;
	font-weight:bold;
	text-align: center;
	margin-bottom:10px;
}
.service_list_item h2 span{
	display: block;
	font-size:12px;
	color:#333;
}
.service_list_item h5{
	font-size:16px;
	font-weight:bold;
	text-align: center;
}
.service_list_item img{
	max-width: 65%;
	margin: 10px auto;
}
.service_list_item p{
	font-size: 15px;
	margin-bottom:20px;
}
.service_list_item ul{
	font-size:12.5px;
	padding:15px 20px;
	background-color:rgba(235,120,140,0.1);
	border-radius: 5px;
}
.service_list_item ul h6{
	font-weight: bold;
	color:#eb788c;
}
.service_list_item ul li{
	position: relative;
	padding:2px 0px;
	padding-left:20px;
}
.service_list_item ul li::before{
	position: absolute;
	display: block;
	width:15px;
	height:20px;
	content:"□";
	top:0;
	left:0;
	margin: auto;
}

/*--------------------------------------------------------------
ご相談までの流れ
--------------------------------------------------------------*/
.flow_list{
	padding:20px 0px;
}
.flow_row_1{}
.flow_row_2{
	display:flex;
	justify-content: space-between;
}
.flow_item{
	display:flex;
	justify-content: center;
	align-items: center;
	width:100%;
	padding:20px 10px;
	background-color:#fff;
	border-radius:5px;
}
.flow_item .image{
	width:100%;
	flex-basis: 30%;
	max-width:120px;
}
.flow_item .text{
	width:100%;
	flex-basis: 65%;
	max-width: 400px;
	padding:15px;
}
.flow_item .text h4{
	font-size:25px;
	font-weight: bold;
	margin-bottom: 8px;
}

.flow_row_2 .flow_item{
	flex-basis: 48%;
}

.node_center{
	position: relative;
	padding:40px 0px;
}
.node_center p{
	position: absolute;
	width:80%;
	font-weight: bold;
	text-align: center;
	background-color:rgba(250,250,250,1);
	top:20px;
	left:0;
	right:0;
	margin: auto;
}
.node_center::after{
	position: absolute;
	content:'';
	width: 1px;
	border-left:4px #55afaf solid;
	top:0;
	bottom:0;
	left:0;
	right:0;
	margin: auto;
}

.node_2{
	display:flex;
	justify-content: space-between;
}
.node_2 .node_left{
	position: relative;
	width:100%;
	flex-basis: 50%;
	padding:40px 0px;
}
.node_2 .node_left p{
	position: absolute;
	width:80%;
	padding:5px;
	font-weight: bold;
	text-align: center;
	background-color:rgba(250,250,250,1);
	top:20px;
	left:0;
	right:0;
	margin: auto;
}
.node_2 .node_left::before{
	position: absolute;
	content:'';
	width: 1px;
	border-left:4px #55afaf solid;
	top:0;
	bottom:0;
	left:0;
	right:0;
	margin: auto;
}
.node_2 .node_left.non_border::before{
	border:none;
}
.node_2 .node_right{
	position: relative;
	width:100%;
	flex-basis: 50%;
	padding:40px 0px;
}
.node_2 .node_right p{
	position: absolute;
	width:80%;
	padding:5px;
	font-weight: bold;
	text-align: center;
	background-color:rgba(250,250,250,1);
	top:20px;
	left:0;
	right:0;
	margin: auto;
}
.node_2 .node_right::before{
	position: absolute;
	content:'';
	width: 1px;
	border-left:4px #55afaf solid;
	top:0;
	bottom:0;
	left:0;
	right:0;
	margin: auto;
}
.node_2 .node_right.non_border::before{
	border:none;
}


/*--------------------------------------------------------------
よくある質問
--------------------------------------------------------------*/
.faq_list{
	padding:20px 0px;
}
.faq_list_item{
	padding:20px;
	background-color:#fff;
	border-radius: 5px;
	margin-bottom:25px;
}
.faq_list_item .faq_question{
	position: relative;
	padding-left: 34px;
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 10px;
	line-height: 1.5;
}
.faq_list_item .faq_question::before{
	position: absolute;
	left: 0;
	top: 0;
	content: "Q";
	color: #55afaf;
	font-size: 22px;
	font-weight: 700;
	line-height: 1;
}
.faq_list_item .faq_answer{
	position: relative;
	padding-left: 34px;
	line-height: 1.8;
}
.faq_list_item .faq_answer::before{
	position: absolute;
	left: 0;
	top: 1px;
	content: "A";
	color: #eb788c;
	font-size: 22px;
	font-weight: 700;
	line-height: 1;
}



/*--------------------------------------------------------------
イベントコンテンツ
--------------------------------------------------------------*/
.layout_new_events{
	margin:2% auto;
	margin-bottom: 5%;
}
.layout_new_events header{
	display: block;
	margin-bottom: 20px;
}
.layout_new_events h4{
	padding:3% 15px;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	color: #f0a33a;
}
.new_event_list_item{
	margin:10px;
}

#single_event{
	padding:5% 0px;
}
.event_poster{
	flex-basis: 45%;
}
.event_info{
	flex-basis: 53%;
	padding:15px;
}
.event_info header{
	display: block;
	padding: 15px 0px;
	font-weight: bold;
}
.event_info header span{
	display: block;
	font-size: 18px;
}
.event_info header h2{
	font-size: 34px;
}
.event_info .event_date_box{
	background-color: #4983c9;
	color:#fff;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	padding:15px;
	border-radius: 5px;
	padding-bottom: 15px;
	margin-bottom: 25px;
}
.event_info .event_date{
	display: block;
	font-size: 30px;
}
.event_info .lead{
	font-weight: bold;
	font-size: 14px;
	padding: 15px 0px;
	margin-bottom: 25px;
}
table.event_data tr{
}
table.event_data .data_title{
	background-color: #4983c9;
	color:#fff;
	font-size: 13px;
	font-weight: bold;
	padding:7px 15px;
	vertical-align: middle;
	white-space: nowrap;
}
table.event_data .data_content{
	line-height: 30px;
	padding:7px 15px;
	font-weight: bold;
	vertical-align: middle;
}
@media screen and (max-width:850px){
	#single_event .flex{
		display: block;
	}
	.event_info header h2{
		font-size: 24px;
	}
}


/*--------------------------------------------------------------
店舗情報
--------------------------------------------------------------*/
.store_information{
	padding:30px;
	background-color: #fff;
	margin:30px 0px;
	border-radius: 10px;
}
.store_information table{
	width:100%;
}
.store_information table th{
	padding:10px 10px;
	font-weight: bold;
	border-bottom: 1px #ccc solid;
}
.store_information table td{
	padding:10px 5px;
	border-bottom: 1px #ccc solid;
}

/*--------------------------------------------------------------
問い合わせフォーム
--------------------------------------------------------------*/
.contact_content{
	padding:2% 0px;
}
.contact_form{
	padding:2%;
	padding-bottom: 2%;
	background-color:#fafafa;
}
.contact_form table{
	width: 100%;
}
.contact_form table th{
	font-size:13px;
	font-weight: bold;
	text-align: right;
	width:200px;
	padding:5px 15px;
	background-color: #fff;
}
.contact_form table td{
	padding:8px 15px;
}
.contact_form input[type="text"]{
	width: 100%;
}
.contact_form input[type="text"][name="your-company"]{
	max-width: 400px;
}
.contact_form input[type="text"][name="your-tel"]{
	max-width: 400px;
}
.contact_form input[type="text"][name="your-name"]{
	max-width: 400px;
}
.contact_form input[type="email"]{
	width: 100%;
	max-width: 400px;
}
.contact_form textarea{
	width: 100%;
}
.contact_form span.wpcf7-radio{
	display: block;
	padding:5px;
}
.contact_form .label_for_submit{
	display: block;
	width: 100%;
	max-width: 300px;
	padding:0px 15px;
	line-height: 40px;
	background-color:#eb961e;
	color:#fff;
	text-align: center;
	border-radius: 20px;
	margin: 2% auto;
}
.contact_form .label_for_submit .wpcf7-spinner{
	display: none;
}
.contact_form .label_for_submit input[type="submit"]{
	display: none;
}

.contact_form h5{
	font-size:13px;
	font-weight: bold;
	margin-top: 8px;
}
.contact_form span{
	font-size: 12px;
}
.form_caution{
	padding:3%;
}
.form_caution h5{
	font-size:15px;
	color:#bd9756;
	margin-bottom: 10px;
}
.form_caution ul{
	list-style: disc;
}
.form_caution ul li{
	font-size:14px;
	padding:4px 0px;
}
.form_flow{
	padding:3%;
	background-color:rgba(85,175,175, 0.4);
	margin-bottom: 3%;
	border-radius: 10px;
}
.form_flow h5{
	font-size:15px;
	background-color:#55afaf;
	color:#fff;
	padding:10px 10px;
	margin-bottom: 15px;
}
.form_flow div{
	font-weight: bold;
	padding:15px 10px;
	border-bottom: 1px #ebe2d2 dotted;
}
.form_flow div:last-child{
	border-bottom: none;
	padding-bottom: 0px;
}
.form_flow div span{
	font-size:15px;
	color:#fff;
}
.privacy_policy{
	padding:20px;
	border:1px #ccc solid;
}
.privacy_policy h5{
	font-size: 15px;
	line-height: 25px;
}
.privacy_policy_item{
	margin: 20px 10px;
	font-size: 13.5px;
	line-height: 20px;
}
.privacy_policy_item span{
	font-size: 11px;
}
.privacy_policy_item h6{
	font-weight: bold;
	padding:5px 0px;
}
.privacy_policy_item ul{
	display: block;
	margin-top: 5px;
}
.privacy_policy_item .contact{
	padding:15px;
	background-color: #f3f3f3;
	margin-top: 7px;
	line-height: 24px;
	font-size: 13px;
	font-weight: bold;
}

@media screen and (max-width:640px){
	.contact_form table th{display: block;width: 100%;max-width:none;text-align: left;}
	.contact_form table td{display: block;}
	.form_flow div{font-size: 13px;}
}

