@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*色
オレンジ：#eb5f36
明るいオレンジ：#ff9200
グレー　：#727171

黄　：#FFA727
明黄：#FECA00
薄黄：#FEE480
青　：#00569B
薄青：#0086B1
水色：#B2DBE8
灰　：#B3B3B4
*/


.article h2{margin-bottom:0.5em;}
.article h3{margin-bottom:0.5em;}
.article h4{margin-bottom:0.5em;}
.article h5{margin-bottom:0.5em;}
.article h6{margin-bottom:0.5em;}

.single-post p{padding-left:0.5em;}

html {scroll-behavior: smooth;}
.header-container{display:none;}
.widget-content-top-title{display:none;}
.home .entry-title{color:#fff;}
.date-tags{display:none;}
.footer-meta{display:none;}
.article.post-5{margin-bottom:0;}
.main{padding:0;border:none;}
.content-bottom{margin-top:0;margin-bottom:0;}
.footer-widgets{margin-top:0;}
.id-point{height:1em;}
.breadcrumb{display:none;}

.home .entry-content{margin-bottom:0;}
body:not(.home) .entry-content{margin:4em auto 0 auto;width:86%;max-width:700px;}
body:not(.home) .content{margin-top:120px;}
body:not(.home) .entry-title{width:90%;max-width:600px;margin:0 auto;text-align:center;color:#eb5f36;padding:0.6em 2em;letter-spacing:0.1em;border:5px solid #eb5f36;border-radius:5px;}

.article h2{
	background-color:#eb5f36;color:#fff;padding:0.5em 0.8em;
}



#custom_html-4.widget{margin-bottom:0;}
#custom_html-5.widget{margin-bottom:0;}

reCAPTCHA v3のバッジ非表示
.recaptcha_policy{
  padding: 0;
  margin: 0;
  text-align: center;
  font-size: 0.9em !important;
  color: #333 !important;
}
.recaptcha_policy a {
  font-size: 0.9em !important;
  color: #000 !important;
	margin-left:0.2em;
	margin-right:0.2em;
}
.grecaptcha-badge { visibility: hidden; }

/*メールフォーム*/
.wpcf7-form{}
.wpcf7-submit{
	width:80%!important;
	margin:1em 0 0 10%!important;
	background-color: #eb5f36!important;
	border:none!important;
	font-size:1.5em;
	color:#fff!important;
	border-radius:10px;
}
.wpcf7-submit:hover{
	background-color:#ff9200!important;
	transition:0.5s;
}
.wpcf7-textarea{line-height:2em;}


/*トップのロゴ*/
.jsn-logo_top-img {
	width:400px;
	margin:150px auto 0 auto;
	position: relative;
	height:500px;
}
.jsn-logo_top{
	width:100%;
	position: absolute;
}
.jsn-logo_left{
	width:100%;
	position: absolute;
}
.jsn-logo_right{
	width:100%;
	position: absolute;
}
.jsn-logo_name{
	width:100%;
	position: absolute;
	top:340px;
}
.jsn-logo_name-jp{
	width:100%;
	position: absolute;
	top:400px;
}

.top-copy{
	width:90%;
	max-width:700px;
	margin:0 auto;
	text-align:left!important;
}

/*ヘッドナビ*/
.content-top{margin:0 auto;}
.head-nav_box{
	margin-left: calc(-50vw + 50%);margin-right: calc(-50vw + 50%);
}

.head-nav_inner{
	position   : fixed;
	top:0;
	z-index    : 100;
	background-color:rgba(50,50,50,0.9);
	width:100%;
	padding:0.5em 1em 0.5em 1.5em;
	animation-name: head-nav_inner_back;
	animation-duration:4s;
}

@keyframes head-nav_inner_back {
	0% {
    transform: translateY(-100%);
	opacity:0;
  }
	70% {
    transform: translateY(-100%);
	opacity:0;
  }
  100% {
    transform: translateY(0%);
	opacity:1;
  }
}

.head-nav_logo{width:40px;float:left;}
.head-nav_content-box{float:right;margin-top:10px;}
.head-nav_content-box a{color:#fff;float:left;text-decoration:none;margin-right:2em;padding:0.2em 0;}
.head-nav_content-box a:hover{color:#eb5f36;transition:0.3s;}
.ask-link{padding:0.2em 3em!important;background-color:#eb5f36;color:#fff;}
.ask-link:hover{background-color:#fff;color:#eb5f36!important;transition:0.3s;}
.head-nav_content-box a.ask-link:hover{color:#00569B;transition:0.3s;}

/*セカンドページ用ナビ*/
.second-nav_box{
	margin-left: calc(-50vw + 50%);margin-right: calc(-50vw + 50%);
}

.second-nav_inner{
	position   : fixed;
	top:0;
	z-index    : 100;
	background-color:rgba(245,245,245,0.9);
	width:100%;
	padding:0.5em 1em 0.5em 1.5em;
}
.second-nav_logo{width:40px;float:left;}
.second-nav_content-box{float:right;margin-top:10px;}
.second-nav_content-box a{color:#727171;float:left;text-decoration:none;margin-right:2em;padding:0.2em 0;}
.second-nav_content-box a:hover{color:#eb5f36;transition:0.3s;}
.second-nav_ask-link{padding:0.2em 3em!important;background-color:#eb5f36;color:#fff!important;}
.second-nav_ask-link:hover{background-color:#ff9200;color:fff!important;transition:0.3s;}
.second-nav_content-box a.ask-link:hover{color:#00569B;transition:0.3s;}



.top-copy{
	text-align:center;
	line-height:2.5em;
}

.business-box{
	margin-left: calc(-50vw + 50%);margin-right: calc(-50vw + 50%);
	margin-bottom:0;
	background-color:#fff0e5;
	padding-top:3em;padding-bottom:4em;
	color:#727171;
}
.business-box_inner{
	width:90%;max-width:800px;
	margin:0 auto;
}
.business-box_title{
	font-size:3em;
	font-weight:100;
	width:fit-content;
	margin:0 auto;
	line-height:1.2em;
	color:#eb5f36;
}
.business-box_title-jp{
	font-size:1.2em;
	text-align:center;
	font-weight:200;
	border-top:1px solid #eb5f36;
	width:12em;
	margin:0 auto;
	padding-top:0.4em;
	color:#eb5f36;
}
.business-content_title{
	font-size:1.3em;
	text-align:center;
	line-height:1.5em;
	width:90%;
	max-width:1000px;
	margin:2.5em auto 0.7em auto;
	padding:0.5em 0 0.3em 0;
	border:solid 3px #727171;
	border-radius:3px;
	color:#727171;
	font-weight:600;
}
.business-content_sub-title{
	font-size:1.1em;
	text-align:center;
	width:86%;
	max-width:900px;
	margin:2em auto 0 auto;
	background-color:#eb5f36;
	color:#fff;
	border-radius:3px;
}
.business-content_text{
	width:82%;
	max-width:840px;
	margin:1em auto 0 auto;
}
.business-content_sub-title2{
	font-weight:600;
	width:80%;
	max-width:800px;
	margin:1em auto 0 auto;
	border-bottom:solid 1px #727171;
	padding:0 0.5em ;
}
.business-content_text2{
	width:80%;
	max-width:800px;
	margin:1em auto 0 auto;
}
.business-content_link{
	width:80%;
	max-width:800px;
	padding-left:0.5em;
	margin:0.5em auto 0 auto;
	font-weight:600;
	line-height:1.5em;
}
.business-content_link a{
	text-decoration:none;
}
.business-content_link a:hover{
	color:#ff9200;
	transition:0.3s;
}


.company-box_title{
	font-size:3em;
	color:#eb5f36;
	font-weight:100;
	width:fit-content;
	margin:0 auto;
	line-height:1.2em;
}
.company-table{
	width:90%;
	max-width:600px;
	margin:2em auto 0 auto;
}
.company-table th{
	width:7em;
	text-align:left;
	font-weight:200;
	border-top:none;
	border-right:none;
	border-left:none;
	background-color:#fff;
	border-bottom:1px solid #eb5f36;
}
.company-table td{
	text-align:left;
	font-weight:200;
	border-top:none;
	border-right:none;
	border-left:none;
	background-color:#fff;
	border-bottom:1px solid #727171;
}
.company-box_subtitle{
	font-size:1.7em;
	color:#eb5f36;
	font-weight:100;
	width:fit-content;
	margin:2em auto 0.5em auto;
	line-height:1.2em;
}
.philosophy{
	font-size:1.3em;
	text-align:center;
}
.philosophy span{
	font-size:1.4em;
	font-weight:600;
}

.access_map{
	width:90%;
	max-width:800px;
	margin:0 auto;
	aspect-ratio: 16 / 9;
}
.access_map iframe {
  width: 100%;
  height: 100%;
}

.shop-img{
	width:90%;
	max-width:800px;
	margin:0 auto;
}


.information-area{
	margin-left: calc(-50vw + 50%);margin-right: calc(-50vw + 50%);
	margin-bottom:0;
	background-color:#f0f0f0;
	padding-top:3em;padding-bottom:4em;
}
.information-area_inner{
	width:90%;max-width:800px;
	margin:0 auto;
}
.information-area_title{
	font-size:3em;
	color:#727171;
	font-weight:100;
	width:fit-content;
	margin:0 auto 0.5em auto;
	line-height:1.2em;
}


.bottom-box{
	margin-left: calc(-50vw + 50%);margin-right: calc(-50vw + 50%);
	margin-bottom:0;
	background-color:#FFA727;
	padding-top:3em;padding-bottom:3em;
}

.bottom-logo{
	width:200px;
	margin:0 auto;
	padding-top:4em;
	padding-bottom:3em;
}

.bottom_company-name{
	text-align:center;
	font-size:1.2em;
	padding-bottom:1em;
}

.bottom_company-address{
	text-align:center;
	padding-bottom:0.5em;
}

.bottom_company-tel{
	text-align:center;
	font-size:1.1em;
	padding-bottom:2em;
}


/*　ハンバーガーボタン　*/
#custom_html-20.widget,#custom_html-21.widget{margin-bottom:0;}
*, *:before, *:after {
	padding: 0;
	margin: 0;
	box-sizing: border-box;
}
/*.cp_menu ol, ul {
	list-style: none;
}*/
.cp_menu li{margin-top:1em;}
.cp_menu a {
	text-decoration: none;
color: inherit;
}
a:hover {
color:#80aaff;
}
.cp_cont {
	z-index:999;
}
.cp_offcm01 {
	position: absolute;
	top: 10px;
	right: 20px;
	display: inline-block;
}
.cp-logo{
	width:15%;
	max-width:30px;
	margin:1.5em auto 0 auto;
}
.cp-contact_link{
	width:fit-content;
	padding:0.2em 2em;
	margin:2em auto 1em auto;
	border:1px solid #fff;
	font-size:1.1em;
	letter-spacing:0.1em;
}
.cp-contact_link a{
	color:#fff;
}
/* menu */
.cp_offcm01 .cp_menu {
	position: fixed;
	top: 0;
	right: -100vw;
	width: 250px;
	height: 100%;
	cursor: pointer;
	-webkit-transition: 0.53s transform;
	        transition: 0.53s transform;
	-webkit-transition-timing-function: cubic-bezier(.38,.52,.23,.99);
	        transition-timing-function: cubic-bezier(.38,.52,.23,.99);
	background-color: #727171;
	opacity: 0.9;
	z-index:999;
}
.cp_offcm01 .cp_menu ul {
	margin: 0;
	padding: 0;
}
.cp_offcm01 .cp_menu li {
	list-style: none;
	padding-left:1em;
	font-size:1em;
}
.cp_offcm01 .cp_menu li a {
	display: block;
	padding: 0.3em 1em 0.1em 0.5em;
	text-decoration: none;
	color: #ffffff;
	border-bottom: 1px solid #ffffff;
}

.cp_offcm01 #cp_toggle01 {
	position: absolute;
	display: none;
	opacity: 0;
}
.cp_offcm01 #cp_toggle01:checked ~ .cp_menu {
	-webkit-transform: translateX(-100vw);
	        transform: translateX(-100vw);
}
/* menu toggle */
.cp_offcm01 #cp_toggle01 ~ label {
	display: block;
	padding: 0;
	cursor: pointer;
	-webkit-transition: 0.5s transform;
	        transition: 0.5s transform;
	-webkit-transition-timing-function: cubic-bezier(.61,-0.38,.37,1.27);
	        transition-timing-function: cubic-bezier(.61,-0.38,.37,1.27);
	text-align: center;
	color: #2e3852;
	position:fixed;
	right: 20px;
	top:0;
	z-index:999;
}
/*body:not(.home) .cp_offcm01 #cp_toggle01 ~ label {
	color:#eee;
}*/
.cp_offcm01 #cp_toggle01:checked ~ label {
	-webkit-transform: translateX(-250px);
	        transform: translateX(-250px);
}
.cp_offcm01 #cp_toggle01 ~ label::before {
	font-family: 'FontAwesome';
	content: '\f0c9';
	font-size: 2em
}
.cp_offcm01 #cp_toggle01:checked ~ label::before {
	content: '\f00d';
}
/* contents */
.cp_contents {
	color: #333333;
	text-align: center;
}


.footer-widgets-mobile{margin:0 auto;}


.page-numbers.current {
    color: #fff;
    background-color: #eb5f36;
}
.wpsp-load-more{
	width:fit-content;
	margin:0 auto;
}
.prev{width:5em;}
.next{width:5em;}

#wpsp-262 .wp-show-posts-single{
	background-color:#fff;
	padding:1em;
	border-radius:5px;
}
#wpsp-262 .wp-show-posts-entry-title{
	background-color:#fff;
	padding:0 0 0.3em 0;
	border-bottom:1px solid #eb5f36;
}
#wpsp-262 .wp-show-posts-entry-title a{
	color:#727171;
}
#wpsp-262 .wp-show-posts-entry-title a:hover{
	color:#eb5f36;
	transition:0.3s;
}
#wpsp-262 .wp-show-posts-entry-meta{
	margin-top:1em;
	pointer-events: none;
	float:left;
}
#wpsp-262 .wp-show-posts-entry-meta a{
	text-decoration:none;
}
#wpsp-262 .wpsp-read-more{
	float:right;
}
#wpsp-262 .wpsp-read-more a{
	padding:0.2em 0.6em;
	color:#727171;
	border:1px solid #727171;
	border-radius:3px;
}
#wpsp-262 .wpsp-read-more a:hover{
	color:#fff;
	border:1px solid #eb5f36;
	background-color:#eb5f36;
	transition:0.3s;
}

#wpsp-295 .wp-show-posts-single{
	background-color:#f0f0f0;
	padding:1em;
	border-radius:5px;
}
#wpsp-295 .wp-show-posts-entry-title{
	background-color:#f0f0f0;
	padding:0 0 0.3em 0;
	border-bottom:1px solid #eb5f36;
}
#wpsp-295 .wp-show-posts-entry-title a{
	color:#727171;
}
#wpsp-295 .wp-show-posts-entry-title a:hover{
	color:#eb5f36;
	transition:0.3s;
}
#wpsp-295 .wp-show-posts-entry-meta{
	margin-top:1em;
	pointer-events: none;
	float:left;
}
#wpsp-295 .wp-show-posts-entry-meta a{
	text-decoration:none;
}
#wpsp-295 .wpsp-read-more{
	float:right;
}
#wpsp-295 .wpsp-read-more a{
	padding:0.2em 0.6em;
	color:#727171;
	border:1px solid #727171;
	border-radius:3px;
}
#wpsp-295 .wpsp-read-more a:hover{
	color:#fff;
	border:1px solid #eb5f36;
	background-color:#eb5f36;
	transition:0.3s;
}


.information-link-outer{}
.information-link-outer a{
	text-decoration:none;
}
.information-link-btn{
	text-align:center;
	width:80%;
	max-width:300px;
	margin:2em auto 0 auto;
	color:#eb5f36;
	border:2px solid #eb5f36;
	border-radius:5px;
	padding:0.3em;
}
.information-link-btn:hover{
	color:#fff;
	background-color:#eb5f36;
	transition:0.3s;
}


.footer_logo{
	margin:3em auto 2em auto;
	width:30%;
	max-width:120px;
}
.footer_company-name{
	text-align:center;
	font-size:1.1em;
}
.footer_address{
	margin-top:0.5em;
	text-align:center;
	font-size:0.9em;
}
.footer_tel{
	text-align:center;
	font-size:0.9em;
}

.footer-link-outer{}
.footer-link-outer a{
	text-decoration:none;
}
.footer-link-btn{
	text-align:center;
	width:80%;
	max-width:300px;
	margin:2em auto 0 auto;
	color:#fff;
	background-color:#eb5f36;
	border-radius:5px;
	padding:0.3em;
}
.footer-link-btn:hover{
	background-color:#ff9200;
	transition:0.3s;
}

.footer {
    margin-top: 0;
    padding: 0;
}
.footer-link{
	text-align:center;
	padding-top:3em;
}
.footer-link a{
	text-decoration:none;
	line-height:2em!important;
	font-weight:200!important;
	color:#eb5f36!important;
}


/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*834px以下*/
@media screen and (max-width: 834px){
main.main{
	padding:1em 0 0 0;
}
table th, table td{
	font-size:0.95em;
}
.profile-text{
	font-size:0.95em;
}
}
	
	/*760px以下*/
@media screen and (max-width: 760px){
.head-nav_content-box a {margin-right: 1em;}
}

/*651px以上*/
@media screen and (min-width: 651px){
.br650{display:none;}
.sp-nav_box{display:none;}
.sp-nav_box-ask{display:none;}
.second-page_logo{display:none;}
.cp_cont {display: none;}
}
/*650px以下*/
@media screen and (max-width: 650px){
.br650{display:block;}
body:not(.home) .content{margin-top:40px;}
.head-nav_inner{display:none;}
.second-nav_box{display:none;}
.sp-nav_box{
	width:fit-content;
	margin:0 auto;
	line-height:2.5em;}
.sp-nav_box a{text-decoration:none;}
.sp-nav_box a:hover{color:#FFA727;transition:0.3s}
.sp-nav_box-ask a{text-decoration:none;}
.sp-nav_ask{
	width:200px;
	text-align:center;
	margin:0.8em auto 0 auto;
	background-color:#00569B;
	color:#FFA727;
	padding:0.3em;}
.sp-nav_ask:hover{
	background-color:#FFA727;
	color:#00569B;
	transition:0.3s;}
	
.second-page_logo{
	width:30%;
	margin:2em auto 0 auto;
}
.company-box_title{
	font-size:2.5em;
}
.company-box2_inner-left{
	width:140px;
}
.company-box2_inner-right{
	float:left;
	width:calc(100% - 170px);
	margin-left:30px;
	line-height:2.5em;
}
.profile-subtitle{text-align:center;width:90%;}
.profile-table{width:90%;}
.profile-text{width:fit-content;}
.profile-content-box{width:fit-content;margin:0 auto;}
}


/*601px以上*/
@media screen and (min-width: 601px){
.br600{display:none;}
}
	
/*600px以下*/
@media screen and (max-width: 600px){
.br600{display:block;}
}
	
/*481px以上*/
@media screen and (min-width: 481px){
.br480{display:none;}
}
	
/*480px以下*/
@media screen and (max-width: 480px){
.br480{display:block;}
.company-box_inner{
    width: 84%;
}
.company-box_text {
    padding: 1em 0 0 0;
    line-height: 2.2em;
}
.company-box {padding-bottom:3em;}
.company-box2 {padding-top:3em;padding-bottom:1.5em;}
.company-box2_inner{
    width: 86%;
}
.company-box2_inner-left{
	float:none;
	width:100%;
}
.company-box2_inner-left img{
	float:left;
	width:45%;
}
.company-box2_inner-left_text{
	float:left;
	width:40%;
	margin-left:15%;
}
.company-box2_inner-right{
	float:none;
	width:100%;
	margin-top:1.5em;
	margin-left:0;
	line-height:2.2em;
}
.profile-title {width:88%;}
.profile-subtitle {width:86%;}
.profile-table{width:86%;}
table th, table td{
font-size:0.9em;
}

.qualification-box{padding-top:3em;}
.qualification_content-left{
	width:80px;
	margin-right:20px;
}
.qualification_content-right{
	width:calc(100% - 100px);
}
.qualification_content-right_title{
	font-size:0.9em;
	padding:0 0 0.5em 0;
}
.qualification_content-right_data{
	font-size:0.8em;
}
.bottom-box{padding-top:1em;}
.bottom-logo{width:170px;}
.bottom_company-address{font-size:0.9em;}
.bottom_company-tel{font-size:1em;}
.bottom_map {width: 86%;}
.company-box2b_name{font-size:1em;}
.company-box2b_name span{font-size:1.4em;}
.philosophy{font-size:1.2em;}
.philosophy span{font-size:1.2em;}
.jsn-logo_top-img {
	width:300px;
	margin:80px auto 0 auto;
	position: relative;
	height:350px;
}
.jsn-logo_name{
	width:100%;
	position: absolute;
	top:260px;
}
.jsn-logo_name-jp{
	width:100%;
	position: absolute;
	top:300px;
}
}


/*色
黄　：#FFA727
明黄：#FECA00
薄黄：#FEE480
青　：#00569B
薄青：#0086B1
水色：#B2DBE8
灰　：#B3B3B4
*/