/*
Theme Name: eases5-child
Template: eases5
Description: 絞染色・久野染工場 様
*/
/* 初期設定 ----------------------------------------------------------------------------------- */
:root {
	--es-wrap-max-width: 100%;
	--es-pagebody-max-width: 1024px;
	--es-main-max-width: 740px;
	--es-side-max-width: 210px;
	--es-main-font-color: #555;
	--es-primary-color: #0c2a57;
	--es-secondary-color: #E60012;
	--es-header-color: rgba(32, 32, 32, 0);
	--es-header-font-color: white;
	--es-side-color: rgba(32, 32, 32, 0);
	--es-side-font-color: #555;
	--es-side-a-color: #555;
	--es-footer-color: #0c2a57;
	--es-footer-font-color: white;
	--es-url-font-color: #2d6bb1;
	--es-header-hmg-color: white;
	--es-mobile-menu-color: #0c2a57;
}

ul, ol { padding: 5px; }

/* contents ------------------------------------------------------------------------------------- */

/* ■ h2 - h5
-------------------------------------------------------------- */
#main h1 {
	margin-bottom: 10px;
	padding: 5px;
    border-radius: 5px;
    text-shadow: 1px 1px #d0af4c;
    background-color: var(--es-primary-color); }

#main h2 {
	position: relative;
	margin: 0 auto 20px;
	text-decoration: none;
	text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
	font-family: 'Noto Serif JP', serif; }

#main h2::after{
	content: '';
	position: absolute;
	bottom: 0;
	width: 100%;
	height: 3px;
	background: repeating-linear-gradient(-45deg, #0c2a57, #0c2a57 2px, white 2px, white 4px); }

#main h2 span{
	display: inline-block;
	border-bottom: 2px solid var(--es-primary-color); }

#footer h2 { font-size: 2.2rem; }

#main h3 {
	margin: 0 auto 10px;
	text-decoration: none; }

#main h4 {
	color: crimson;
    margin-bottom: 5px; }

.navi-contents2 h5 { font-size: 1.8rem; }


/* レイアウト
-------------------------------------------------------------- */
#wrap {
	max-width: var( --es-wrap-max-width );
	margin: 0 auto;
	background-image: none; }


#wrap > .inner {
	display: flex;
	flex-direction: column;
	align-items: center; }

#pagebody {
	width: 100%;
	max-width: var( --es-pagebody-max-width );
	margin: 10px 0 50px;
	padding: 0; }
	@media screen and (min-width: 768px) {
		#pagebody { padding: 0 10px; } }
	
@media screen and (min-width: 768px) {
#pagebody > .inner {
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
	gap: 20px; } }

#main { overflow: hidden; }
	@media screen and (min-width: 768px) {
		#main { margin: 0; } }

/*ヘッダー*/
#header {
	max-width: var( --es-pagebody-max-width );
	padding: 0 10px 10px; }
.top-page #header { background-color: var( --es-primary-color ); }
	@media screen and (min-width: 768px) {
		#header {
			padding: 0 10px 30px;
			margin-bottom: 0;
			background: url(../../../images/bk2.jpg) right top no-repeat;
			background-size: 83%; } 
		.top-page #header {
			background-color: transparent;
			background: url(../../../images/bk.jpg) right top no-repeat;
			background-size: 83%; }	}

@media screen and (min-width: 768px) {
	.top-page .hgroup {
		padding: 70px 0 50px 5px;
		margin-left: 0;
		background-color: var( --es-primary-color ); } }

.hgroup {
    display: flex;
	max-width: var(	--es-side-max-width );
	padding: 10px 0 0 0;}
	@media screen and (min-width: 768px) {
		.hgroup  { margin-left: 0; } }

.title { 
	width: 100%; 
	font-family: 'Noto Serif JP', serif;
	color: var( --es-primary-color ); }

.title a { font-size: 3.2rem; }

.hgroup .information {
	display: inline;
	font-family: 'Noto Serif JP', serif; }

.hgroup .information p {
	font-size: 1.5rem;
	color: var( --es-primary-color ); }

.top-page .hgroup .title,
.top-page .hgroup .title a,
.top-page .hgroup .information p { color: #fff; }

/*サブメニュー*/
#sidebar { display: none; }
	@media screen and (min-width: 768px) {
		#sidebar {
			display: block;
			max-width: var(	--es-side-max-width ); } }

#sidebar .menu li {
    padding-bottom: 0;
	border-top: 1px solid #a0acba; }

#sidebar .menu a {
	display: block;
    padding: 5px;
	position: relative;
	z-index: 1; 
	background-color: white;
	color: #555;
	font-family: 'Noto Serif JP', serif; }

#sidebar .menu a::before {
	background: #d3d3d3;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	bottom: 0;
	margin: auto;
	transform: scale(0, 1);
	transform-origin: right top;
	transition: transform .3s;
	z-index: -1; }

#sidebar .menu a:hover {
	color: #555; }

#sidebar .menu a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1); }

#sidebar .menu li.current_page_item a {
	background-color:#d3d3d3;
	color: #555;}

#sidebar #menu-side_menu2 li:last-child { border-bottom: 1px solid #a0acba; }

#sidebar .office {
	padding: 5px!important;
	margin-top: 10px;
	border: 1px solid #a0acba; }

.office figure {
	width: 100%;
	border-top: none!important; }

.office img { 
	margin-bottom: 10px;
	width: 100%; }

/*フッター*/
#footer {
	width: 100%;
	color: #c2cad5; }

#footer .inner {
	max-width: var( --es-pagebody-max-width );
	padding: 40px 1em 20px;
	margin: 0 auto; }

#footer .inner > section {
	display: flex;
	gap: 1em; }

#footer .widgets_footer { width: 100%; }
#footer .widgets_footer:first-child { display: none; }
	@media screen and (min-width: 768px) {
	#footer .widgets_footer { width: calc(50% - 1em / 2); }
	#footer .widgets_footer:first-child { display: block; } }

#footer a:hover {
	text-decoration: underline;
	color: white; }

ul#menu-footer_menu { display: none; }
	@media screen and (min-width: 768px) {
		ul#menu-footer_menu {
    		display: flex;
    		flex-wrap: wrap; } }

ul#menu-footer_menu li { width: 50%; }

#footer a { color: #c2cad5; }

footer h2 {
	margin-bottom: 5px;
	border-bottom: 1px solid #c2cad5; }

.kuno_office { margin-top: 35px; }

.kuno_office img { 
	width: 50px;
	margin-top: 20px; }

/*モバイルメニュー*/
.navi-contents {
	height: calc(100vh - 70px);
	background: #f9f9f9; }

.navi-contents ul {
	position: relative;
	width: calc(100% - 40px);
	min-width: auto;
	margin: 60px 0 0 30px; }

/* コンテンツ
-------------------------------------------------------------- */
span{ display: inline-block; }

#main ul,ol{ padding-left: 40px; }

#main p,ul,ol{
	padding: 0; }

.wp-block-group{ 
	padding: 0;
	margin-bottom: 20px;}

.wp-block-image{ margin: 0; }

.wp-block-columns {
	margin-bottom: 1em;
    gap: 1em}

.wp-block-button a::after { background: var(--es-secondary-color); }

.img_animation img:hover {
	box-shadow: 0px 0px 15px 2px rgba(0, 0, 0, 0.2);
	transform: scale(0.95); }	

form p img,
.link-anime img { vertical-align: baseline; }

/* trable */
table { font-size: 1.6rem; }

.wp-block-table { margin: 0 1em 2em; }

/*トップページ*/


/*有松絞りとは*/
@media screen and (max-width: 767px) {
.textile {
	flex-direction: column;
	align-items: center!important; }

.textile .wp-block-column {	width: 300px; }
.textile .wp-block-column a { display: block; }
.textile .wp-block-column img {	margin: 0 auto; } }

.textile p {
	font-size: 1.3rem;
	line-height: 1.6rem; }

/*職人紹介*/

/*生地加工の種類*/
.Processing_type { 
	padding: 10px 0;
	gap: 0;
	border-bottom: #555555 dotted 1px;}
	@media screen and (min-width: 781px) {
		.Processing_type { 
			width: 100%; 
			margin: 0; 
			gap: 1em;} }

.Processing_type img { }
	@media screen and (min-width: 781px) {
		.Processing_type img { 
			width: 100%; } }

.Processing_type p { margin-bottom: 5px!important; }

.kinds_1 {
	margin: 0 0 10px;
    padding: 2px;
    border: #555555 solid 1px;
    width: 5em;
    text-align: center; }

.kinds_2 {
	padding: 2px;
    border: #717071 solid 1px;
    width: 5em;
    text-align: center;
    background-color: #717071;
    color: #fff; }

/*メディア掲載履歴*/
#media_history{
	padding-left: 0!important;
	list-style-type: none;
	font-size: 1.6rem; }

/*会社案内*/
#wrap.office table { width: 100%; }

#wrap.office tr, #wrap.office td { border-bottom: 1px dotted #888888;}
	@media screen and (max-width: 600px) {
		#wrap.office tr, #wrap.office td { display: block; } }

#wrap.office td:first-child { width: 120px; }
			
/*絞り染め体験*/
.Experience_plan h3 { 
	margin: 0 10px 0 0!important;
	display: inline-block; }

.Experience_plan p { display: inline-block; }

.memo_red {
	padding-top: 3px!important;
	color: crimson;
	font-size: 85%;
	font-weight: bold; }

.plan_box {
	border: 1px solid #B5B5B6;
	background-color: #EFEFF0; }

.plan_box ul {
	padding: 0 0 0 5px!important;
	list-style-type: none;
	font-size: 1.5rem; }

.plan_box span {
	display: inline;
	font-size: 1.2rem; }

@media screen and (max-width: 781px) {
.plan_box .wp-block-image { padding: 10px 10px 0; } }

.standard figure { 
	padding: 20px;
	background-color: white; } 

.special.plan_box .wp-block-image { margin: 0 auto!important; }

.special.plan_box .wp-block-image img { width: 300px; }

.navy_box{
	padding: 10px;
	font-size: 1.4rem; }

.l_space {
	letter-spacing: 0.5em;
	font-weight: bold; }

.text_l {
    font-size: 120%;
    line-height: 1.8em;
    text-align: center;
	font-weight: bold; }

.yukata_site {
	width: 80%;
	margin: 0 auto 15px!important;
	background: linear-gradient(#e4c3dd,#D51F71);
	border-radius: 20px;
	border: 1px solid #ffffff; }

.yukata_site:hover{ background: linear-gradient(#D51F71,#e4c3dd); }

.yukata_site a{ 
	color: white; }

/* お問い合わせ */
.wpcf7 {
	width: 100%;
	max-width: 600px;
	margin: 0 auto; }

.wpcf7-form p{
	padding-top: 10px!important;
	border-top: 1px dotted #555; }
	
.wpcf7 input, .wpcf7 textarea{ width: 100%; }

.contact input,
.contact textarea {
	width: 100%; }

input[type="submit"] {
	display: block;
	width: 170px;
	margin: 0 auto;
	padding: 15px; }

input[type="submit"]:hover { 
	background-color: var(--es-primary-color)!important;
	color: white; }

input[type="checkbox"] { width: auto; }

/*コンタクトフォーム*/
.wpcf7-checkbox .wpcf7-list-item {
	display: block;
	margin-top:5px; }

.wpcf7-checkbox .wpcf7-list-item span {
	margin-left:5px; }	

.wpcf7-validates-as-required{ height: 30px; }

/* ブログ */
.post-categories ul span[class*="label-"], .post-categories ul a[class*="label-"]{
	border:none;
	background-color: #FE7316; }
.profile{
	font-size: 1,5rem; }

.post-footer {
	text-align: center; }
#comment{
	width: 90%;
	margin: 0 auto; }

#index-page,#single-page{
	padding: 0 1em; }


