@charset "UTF-8";
/*
Theme Name: cocoon-master Child
Template: cocoon-master
*/

body, #header-container, .navi{
	background:#F4F4F4;
}

body{ animation: ani_fadein 3.5s;}
@keyframes ani_fadein { from { opacity: 0; }  to {opacity: 1;} }

.pc_view{
	display:block;
}

.smp_view{
	display:none;
}

.wrap {
    width: 960px;
    margin: 0 auto;
}

.tagline {
    text-align: center;
    font-size: 12px;
    margin: 0 0 15px 0;
    color: #433033;
}

.logo-image {
    padding: 30px 0 0 0;
    font-size: inherit;
}

ul#menu-g-menu {
    background: #433033;
	justify-content: left;
	font-family: "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}

.navi-in a {
	font-size: 13px;
	letter-spacing: 1.2px;
   font-weight: lighter;
	color:#fff;

	/*2025年01月追記*/
	font-family: meiryo;
	font-size: 12px;
}

#navi .navi-in a:hover{
	background:#bc4c4b;
	color:#fff;
}

.navi-in > ul .sub-menu{
	background:#bc4c4b !important;
}

.navi-in > ul .sub-menu li a:hover{
	background:#922524 !important;
}

.navi-in > ul > .menu-item-has-children > a::after {
    content: "";
}

div#navi-in {
    position: relative;
}

.cl-slim #navi-in > ul li .menu-item {
    height: 35px;
    line-height: 35px;
}

.cl-slim #navi-in > ul li {
    height: 40px;
    line-height: 40px;
    border-right: 1px solid #706265;
}

.main {
    padding: 0;
    border: none;
    background: none;
	 width: 690px;
    margin-right: 30px;
    border-radius: 0;
    position: relative;
}
.ect-3-columns {
    justify-content: inherit;
}
.ect-3-columns .entry-card-wrap {
    width: 32%;
    padding: 12px;
    background: #fff;
    margin-right: 1%;
}
.ect-3-columns .entry-card-wrap:nth-child(3n) {
    margin-right: 0;
}

div#sidebar {
    background: none;
	 width: 240px;
    border: none;
    padding: 0px;
    border-radius: 0;
}

.sidebar h3 {
    background-color: #f3f4f5;
    padding: 0 0 5px 0;
    margin: 0;
    border-radius: 0px;
    border-bottom: 3px solid #333;
    color: #333;
    font-size: 16px;
}

a.LINE-bnr{
	transition: all 0.2s ease-out;
}

a.LINE-bnr:hover {
    opacity: 0.7;
    transition: all 0.2s ease-out;
}


.widget_recent_entries ul li a, .widget_categories ul li a, .widget_archive ul li a, .widget_pages ul li a, .widget_meta ul li a, .widget_rss ul li a, .widget_nav_menu ul li a {
    color: #333;
    text-decoration: none;
    padding: 8px 0;
    display: block;
    padding-right: 4px;
    padding-left: 4px;
    font-size: 13px;
    border-bottom: 1px solid #ccc;
}

.pager-post-navi {
    margin: 38px 0;
    display: inherit;
    justify-content: initial;
    flex-direction: column;
    width: 100%;
    padding: 0;
}

.tagcloud {
    margin-top: 10px;
}

.tagcloud a {
    background: none;
    border: 1px solid #006699;
    border-radius: 5px;
    padding: 3px 8px;
    text-decoration: none;
    font-size: 12px;
    margin: 2px;
    flex: inherit;
    display: inline-block;
    justify-content: inherit;
    color: #006699;
}

.tagcloud a .tag-caption::before {
    content: "";
}

.tagcloud a:hover{
	 background: #006699;
    border: 1px solid #006699;
    border-radius: 5px;
    padding: 3px 8px;
    text-decoration: none;
    font-size: 12px;
    margin: 2px;
    flex: inherit;
    display: inline-block;
    justify-content: inherit;
    color: #fff;
}

.pager-post-navi a.prev-post {
    flex-direction: row;
    padding-left: 5px;
    width: 48%;
}

.pager-post-navi a.next-post {
    flex-direction: row-reverse;
    padding-right: 5px;
    width: 48%;
    float: right;
}

.pager-post-navi a.prev-post:hover, .pager-post-navi a.next-post:hover{
	    background: #e8e8e8;
}

.ect-vertical-card .entry-card-wrap{
	    margin-bottom: 4%;
}


.ect-vertical-card .entry-card-wrap .entry-card-thumb {
    line-height: 1;
}

.cat-label {
    position: absolute;
    top: 100%;
    left: 0;
     border: none;
    font-size: 11px;
    color: #fff;
    background-color: rgba(51, 51, 51, 0.9);
    padding: 5px 7px;
    max-width: 80%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.ect-vertical-card .entry-card-wrap .entry-card-content {
    margin: 48px 0 0 0;
}
.entry-card-title, .related-entry-card-title {
    font-size: 16px;
    margin: 0;
    line-height: 1.2;
    margin-bottom: 5px;
    font-weight: normal;
    color: #006699;
    text-decoration: underline;
}

.ect-3-columns .entry-card-wrap:hover .entry-card-title{
	 text-decoration: none;
	color:#333333;
}

.entry-card-meta, .related-entry-card-meta {
    top:7.5em;
    position: absolute;
    left: 0;
    text-align: right;
    line-height: 1;
    font-size: 20px;
}

a.entry-card-wrap.a-wrap.border-element.cf {
    box-shadow: 0px 1px 7px rgba(0,0,0,0.1);
}

a.entry-card-wrap.a-wrap.border-element.cf:hover{
	opacity:0.7;
}

span.popular-entry-card-pv.widget-entry-card-pv {
    position: absolute;
    width: 80px;
    bottom: 12px;
    left: 0;
    color: #fff;
    font-style: inherit;   
}

.widget {
    margin-bottom: 28px;
}

.widget-entry-cards.ranking-visible .card-thumb::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 27%;
    background: #222;
    left: 0;
    bottom: 0;
}

.widget-entry-cards.ranking-visible .card-thumb::before{
	display:none;
}

.popular-entry-card.widget-entry-card.e-card.cf {
    border-bottom: 1px solid #ccc;
    padding-bottom: 10px;
}

.e-card-info {
    display: flex;
    flex-wrap: wrap;
    justify-content: inherit;
    align-items: center;
}

.entry-card-info > * {
    font-size: 0.6em;
    padding: 2px;
    font-weight: bold;
}

.entry-card-content.card-content.e-card-content {
    padding: 0;
}

.widget_categories ul li a .post-count {
    display: inline-block;
    float: inherit;
    margin-left: 12px;
    position: relative;
}

.widget_categories ul li a .post-count:before {
    content: '(';
    position: absolute;
    left: -7px;
}

.widget_categories ul li a .post-count:after {
    content: ')';
    position: absolute;
    right: -7px;
}

ul.sub-menu li a {
    font-family: sans-serif;
    font-size: 12px;
}

.side-btns{
width: 240px;
display: block;
line-height:1;
}

.side-btns a{
width: 100%;
display: block;
}

.side-btns a img{
width: 100%;
}

.widget-entry-cards .a-wrap {
    padding: 2px 3px;
    line-height: 1.3;
    margin-bottom: 4px;
}

.widget-entry-cards .a-wrap:hover{
	opacity:0.7;
}

.follow-us {
    width: 240px;
    background: #f4f4f4;
    padding: 10px 0px 10px 0px;
    margin: 0 auto 0;
	}

.followus-ttl {
    line-height: 1;
    font-size: 16px;
    font-weight: 500;
    margin-bottom: 15px;
}

.follow-us p{
font-size: 14px;
color: #000;
line-height: 1;
margin-bottom: 10px;
font-weight: 600;
}

.follow-us ul{
display: flex;
justify-content: space-between;
line-height: 1;
}

.follow-us li{
list-style: none;
float: left;
	width:15%;
}

.follow-us li a {
    width: 100%;
	 transition: all 0.2s ease-out;
}

.follow-us li a:hover{
	opacity:0.7;
	transition: all 0.2s ease-out;
}

.follow-us li a img {
    width: 100%;
}

aside#custom_html-5 a{
	transition: all 0.2s ease-out;
}
aside#custom_html-5 a:hover{
	opacity: 0.7;
	transition: all 0.2s ease-out;
}

span.popular-entry-card-title.widget-entry-card-title.card-title {
    font-size: 13px;
    margin: 0;
    line-height: 1.2;
    font-weight: normal;
    color: #006699;
    text-decoration: underline;
}

a.popular-entry-card-link.a-wrap:hover span.popular-entry-card-title.widget-entry-card-title.card-title{
	text-decoration: none;
	color: #333;
}

.widget-entry-cards .widget-entry-card-content {
    margin-left: 128px;
}

.footer {
    margin-top: 0; 
    padding-top: 0;
    background: #f4f4f4;
    color: #fff;
}

.footer-bottom {
    margin-top: 24px;
    padding: 8px 0;
    position: relative;
    font-size: 14px;
	 border-top: 3px solid #333;
}

.copyright {
    color: #333;
}

/*アコーディオンメニュー*/

.accordion_menu ul {
  display: none;
}

.accordion_menu span {
  cursor: pointer;
  display:block;
}

.accordion_menu li {
  cursor: pointer;
   line-height: 1;
}

#global-menu li.accordion_menu{
    background: #f4f4f4;
    color: #fff;
    border: none;
}

#global-menu li.accordion_menu span {
    padding: 10px 0px 10px 0;
    display: block;
    position: relative;
    color: #222;
	cursor: pointer !important;
}	


#global-menu li.accordion_menu span.main_cate {
	font-weight: bold;
	color: #222;
	padding: 0 0 15px 0;
   border-bottom: 3px solid #333;
	font-size: 16px;
}	

#global-menu li.accordion_menu span.main_cate:after {
    content: '';
    color: #222;
    font-size: 20px;
    position: absolute;
    top: 20%;
    right: 22px;
    width: 8px;
    height: 8px;
    border-top: 2px #999 solid;
    border-right: 2px #999 solid;
    transform: rotate(135deg);
	transition: all 0.2s ease-out;
}

#global-menu li.accordion_menu span.main_cate.open:after{
    content: '';
    color: #222;
    font-size: 20px;
    position: absolute;
    top: 24%;
    right: 22px;
    width: 8px;
    height: 8px;
    border-top: 2px #999 solid;
    border-right: 2px #999 solid;
    transform: rotate(-45deg);
	transition: all 0.2s ease-out;
}


#global-menu li.accordion_menu span.main_cate.no-sub:after{
	display: none;
}


#global-menu li.accordion_menu span a{
	padding:0;
	color: #fff;
	border:none;
}


#global-menu li.accordion_menu ul{
	background:#f4f4f4;
}


/*
#global-menu li.accordion_menu > ul > li:first-child{
	border:none;
}
*/

#global-menu li.accordion_menu.purchage > ul > li > a{
	padding: 0;
	border-bottom: 1px solid #cdcdcd;
}

#global-menu li.accordion_menu.purchage > ul > li:last-child a{
	border-bottom: none;
}

#global-menu li.accordion_menu > ul > li > a{
	padding:10px 0px 10px 0;
	position: relative;
	display: block;
	transition: all 0.2s ease-out;
}

#global-menu li.accordion_menu > ul > li > a:hover{
	opacity: 0.7;
	transition: all 0.2s ease-out;
}


/*
#global-menu li.accordion_menu > ul > li > span:after{
    content: '+';
    position: absolute;
    top: 50%;
    right: 14px;
    border-top: #666666 1px solid;
    border-right: #666666 1px solid;
    width: 9px;
    height: 9px;
	
	transform: rotate(0deg);
    margin-top: -10px;
	color: #666;
	font-size:16px;
}

#global-menu li.accordion_menu > ul > li > span.open:after{
    content: '';
    position: absolute;
    top: 50%;
    right: 14px;
    width: 9px;
    height: 1px;
	background: #666;
	font-size:18px;
	margin-top: 0;
}
*/

#global-menu li.accordion_menu > ul > li >ul >li > a{
	padding:13px 0px 13px 15px;
	border-top:none;
	background:#fff;
	position: relative;
	display: block;
}

/*
#global-menu li.accordion_menu > ul > li >ul >li > a:before{
	content: '';
    position: absolute;
    top: 50%;
    left:0;
    width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 0 5px 5px;
	border-color: transparent transparent transparent #666666;
	margin-top: -5px;
	left: 10%;
}
*/

#global-menu li.accordion_menu > ul > li > ul > li > ul> li span,
#global-menu li.accordion_menu > ul > li >ul >li > ul > li > a{
	padding:13px 0px 13px 40px;
	border-top:none;
	background:#fff;
}
#global-menu .font_small{
	font-size:10px;
	margin:0 0 0 13px;
	display:inline;
	font-style:normal;
	font-weight:normal;
}


ul.second_cate {
    padding: 10px 0 !important;
}

ul.third_cate {
    background: #efefef !important;
    padding: 12px !important;
}

ul.third_cate li a{
    background: none !important;
	padding: 10px !important;
	transition: all 0.2s ease-out;
}

ul.third_cate li a:hover{
    background: #fff !important;
	transition: all 0.2s ease-out;
}

#global-menu li ul li span:hover {
    text-decoration: underline;
    color: #006699;
}

input.wpcf7-form-control.wpcf7-submit {
    background: #fff;
    border-radius: 5px;
    border: 1px solid #ccc;
    font-size: 16px;
    letter-spacing: 10px;
}


/*pager*/
.pagination .current {
    background-color: #006699;
    color: #fff;
    border-radius: 30px;
    box-shadow: 0px 1px 2px 2px rgba(0,0,0,0.2);
    line-height: 1;
    width: 30px;
    height: 30px;
    padding: 6px 0 0 0;
    font-size: 16px;
}

.pagination-next {
    margin: 50px 0 15px 0;
}

.page-numbers {
    color: #006699;
    text-decoration: none;
    border: 1px solid #006699;
    border-radius: 50px;
    background: #fff;
    margin: 0 4px;
    line-height: 1;
    text-align: center;
    display: inline-flex;
    justify-content: center;
    box-shadow: 0px 1px 2px 2px rgba(0,0,0,0.2);
    width: 30px;
    height: 30px;
    padding: 6px 0 0 0;
    font-size: 16px;
}

.pagination-next-link, .comment-btn {
    background-color: #fff;
    border: 1px solid #006699;
    color: #006699;
    font-size: 1.25em;
    text-decoration: none;
    width: 100%;
    text-align: center;
    padding: 12px 0;
    display: block;
    line-height: 1;
    border-radius: 6px;
	 box-shadow: 0px 1px 2px 2px rgba(0,0,0,0.2);
}
/*pager*/

/*online shop btn*/
div.online-shop-btn:nth-child(2){
	display:none;
}

.online-shop-btn {
    position: absolute;
    top: 3px;
    right: 3px;
	width: 236px;
	height: 34px;
}

.online-shop-btn a{
	width:100%;
	height: 100%;
	display: block;	
	transition: all 0.2s ease-out;
}

.online-shop-btn a:hover{
	opacity: 0.7;
	transition: all 0.2s ease-out;
}

/*投稿*/

.breadcrumb {
	 margin-top: 0;
    margin-bottom: 1em;
    color: #777;
    font-size: 13px;
}

h1.entry-title{
    margin: 0 0 10px 0;
    border-bottom: 1px dotted #333;
    padding-bottom: 15px;
    font-size: 22px;
}

#content-in #main article.article{
	background: #fff;
    padding: 25px;
    box-shadow: 1px 1px 1px 1px rgba(0,0,0,0.1);
}

#content-in #main article.category-content.article {
    background: none;
    box-shadow: none;
    padding: 0;
}

.cat-link {
    text-decoration: none;
    display: inline-block;
    margin-right: 5px;
    padding: 2px 6px;
    font-size: 12px;
    border-radius: 2px;
    word-break: break-all;
    color: #222;
	 background: none;
}

.cat-link:hover{
	color: #222;
}

.entry-tags:before {
    font-family: FontAwesome;
    content: "";
    color: #222;
    font-size: 12px;
    padding-left: 6px;
	padding-right: 2px;
}

.entry-tags a:first-child {
    padding-left: 0;
}

.tag-link, .comment-reply-link {
    color: #44829e;
    text-decoration: none;
    display: inline-block;
    margin-right: 5px;
    padding: 1px 5px;
    font-size: 12px;
    border-radius: 2px;
    word-break: break-all;
    text-decoration: underline;
	 border: none;
}

.tag-link::before, .comment-reply-link::before {
    font-family: FontAwesome;
    content: "";
    padding-right: 0;
}

 .comment-reply-link:hover {
	background:none;
	color:#333;
}

.entry-categories-tags.ctdt-two-rows {
    background: #f4f4f4;
    padding: 8px;
}

.entry-categories-tags > div {
    margin-bottom: 0;
}

.related-entry-card .cat-label {
    font-size: 9px;
    display:none;
}

a.related-entry-card-wrap.a-wrap.border-element.cf {
    background: #fff;
}

figure.related-entry-card-thumb.card-thumb.e-card-thumb {
    margin: 0;
    line-height: 0;
}

.related-entry-card-meta.card-meta.e-card-meta {
    position: absolute;
    right: 0;
    text-align: right;
    line-height: 1;
    font-size: 20px;
    bottom: 0;
	 top: auto;
    left: auto;
}


/*instagram*/
.insta{
	width:100%;
}

.insta .wrap{
	width:100%;
}

.insta h3 {
    line-height: 1;
    height: 58px;
    margin-bottom: 28px;
    padding-bottom: 4px;
    border-bottom: 3px solid #333;
    box-sizing: content-box;
}

/*search*/
.search-box {
    margin: 0.6em 0;
    position: relative;
}

.search-edit, input[type="text"], input[type="password"], input[type="date"], input[type="datetime"], input[type="email"], input[type="number"], input[type="search"], input[type="tel"], input[type="time"], input[type="url"], textarea, select {
    padding: 6px;
    border: 1px solid #ccc;
	 border-radius: 0;
    font-size: 13px;
    width: 100%;
}

.search-submit {
    position: absolute;
    right: 0;
    top: 0;
    font-size: 17px;
    cursor: pointer;
    line-height: 34px;
    border: none;
    color: #ccc;
    padding: 0 8px;
    background-color: rgba(255, 255, 255, 0);
}


/*snsbtn*/
.sns-share-buttons {
    flex-wrap: wrap;
    justify-content: inherit;
    align-content: center;
}

.sns-share.ss-col-6 a {
    width: 12%;
}

.sns-share-buttons a {
    margin-bottom: 8px;
    font-size: 14px;
    display: inline-flex;
    align-content: center;
    align-items: center;
    justify-content: center;
    position: relative;
	 box-shadow: 1px 1px 2px 1px rgba(0,0,0,0.2);
}

.sns-share-buttons a .button-caption {
    font-size: 11px;
    margin-left: 4px;
}

.sns-buttons {
    display: inherit;
    align-items: center;
}

.sns-buttons a {
    text-align: center;
    color: #fff;
    text-decoration: none;
    border-radius: 4px;
    height: 32px;
}

.sns-share, .sns-follow {
    margin: 24px 0 15px 0;
    border-top: 1px #333 dotted;
    padding-top: 15px;
}

.posts-not-found p {
    font-size: 16px;
}

h1#archive-title {
    margin-bottom: 0;
	 line-height:1;
}

#main > .pagination {
    margin: 10px 0 25px 0;
}


.go-to-top {
    position: fixed;
    display: none;
    right: 50px;
    bottom: 50px;
    z-index: 99999;
}

.go-to-top-button {
    background-color: #ddd;
    color: #333;
    text-decoration: none;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 60px;
    height: 60px;
    cursor: pointer;
    text-align: center;
    line-height: 1;
    border-radius: 5px;
    font-size: 22px;
}


@media screen and (max-width: 1024px) {
	.main {
		width: 70%;
	}
}

@media screen and (max-width: 959px){
			.pc_view{
			display:none;
		}

		.smp_view{
			display:block;
		}
}



@media screen and (max-width: 768px) {
	.wrap {
		width: 100%;
		margin: 0 auto;
	}
	
	.no-scrollable-main .main {
		width: 96%;
		margin: 0 auto 0;
	}
	
  .follow-us-navi {
      display: none;
  }
	
	a.entry-card-wrap.a-wrap.border-element.cf {
      width: 32%;
  }
	
	.ect-vertical-card .entry-card-wrap .post-date, .ect-vertical-card .entry-card-wrap .post-update {
		margin-right: 0;
		margin-top: 8px;
	}
	
	.pagination {
		margin: 0 0 20px 0;
	}
	
	div#slide-in-sidebar {
		background: #f3f4f5;
	}
	div#navi-menu-content {
		background: #f4f4f4;
	}
	.menu-drawer a {
		padding-left: 15px;
	}
	.menu-content {
		max-width: 260px;
		background: #f4f4f4;
	}
	.menu-drawer .sub-menu {
		padding-left: 20px;
		margin: 0 0 10px 0;
	}
	
	.accordion_menu span.main_cate {
		background-color: #f3f4f5;
		padding: 0 0 5px 0;
		margin: 0;
		border-radius: 0px;
		border-bottom: 3px solid #333;
		color: #333;
		font-size: 16px;
		font-weight: bold;
		position: relative;
	}
	.accordion_menu span.main_cate:after {
			content: '';
			color: #222;
			font-size: 20px;
			position: absolute;
			top: 20%;
			right: 22px;
			width: 8px;
			height: 8px;
			border-top: 2px #999 solid;
			border-right: 2px #999 solid;
			transform: rotate(135deg);
			transition: all 0.2s ease-out;
	}
	
	.online-shop-btn{
		display: none;
	}
	
	.search-menu-content {
		transition: .3s ease-in-out;
		position: fixed;
		top: 70%;
		z-index: 9999;
		width: 90%;
		left: 5%;
		right: 5%;
		-webkit-transform: translateY(600%);
		transform: translateY(600%);
	}
	.pagination-next {
		margin: 50px 0 20px 0;
	}
	.tagline {
		font-size: 10px;
	}
	.entry-card-meta, .related-entry-card-meta {
		position: absolute;
		right: 0;
		text-align: right;
		line-height: 1;
		font-size: 20px;
	}

}

@media screen and (max-width: 414px) {
		.tagline {
		font-size: 10px;
		padding: 0 30px;
	}
	div#header-container {
		border-bottom: 1px solid #777;
	}
		a.entry-card-wrap.a-wrap.border-element.cf {
		width: 48%;
	}
	.ect-3-columns .entry-card-wrap:nth-child(3n) {
		margin-right: auto;
	}
	.entry-card-meta, .related-entry-card-meta {
		top: 6.9em;
		font-size: 18px;
	}
	.ect-vertical-card .entry-card-wrap .post-date, .ect-vertical-card .entry-card-wrap .post-update {
		margin-right: 0;
		margin-top: 0;
	}
	.entry-card-title, .related-entry-card-title {
		font-size: 14px;
	}
	ul.sub-menu li a {
		font-family: sans-serif;
		font-size: 13px;
		padding-left: 5px;
	}
	.footer-bottom {
		margin-top: 0px;
		padding: 8px;
		position: relative;
		font-size: 12px;
		line-height: 1;
	}
}

@media screen and (max-width: 375px) {
	.logo {
		text-align: center;
		width: 60%;
		margin: 0 auto 0;
	}
	.logo-image {
    padding: 0;
   }
	.entry-card-meta, .related-entry-card-meta {
		top: 6.2em;
	}
	.entry-title, .article h2 {
		font-size: 20px;
		padding: 0 0 1em 0;
	}
	.entry-content>*, .demo .entry-content p {
		font-size: 14px;
		line-height: 1.6;
	}
	.breadcrumb {
		margin-top: 0px;
		font-size: 10px;
	}
	.sns-share-buttons.sns-buttons {
		display: flex;
		justify-content: space-between;
	}
	.sns-share.ss-top.ss-col-6 a, .sns-share.ss-bottom.ss-col-6 a {
		width: 32%;
	}
}


@media screen and (max-width: 320px) {
	.entry-title, .article h2 {
		font-size: 16px;
		padding: 0 0 1em 0;
	}
	.entry-card-meta, .related-entry-card-meta {
		top: 10.4em;
	}
}