@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
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/


:root {
	--color-white: #ffffff;
	--color-blue-dark: #247fb4;
	--color-green: #5f9207;
	--color-green-light: #eaf2ea;
	--color-green-deep: #779d7c;
	--color-yellow-light: #faf9ea;
	--color-brown: #674a11;
	--color-gray-light: #cccccc;
	--color-gray-dark: #555555;
	--color-beige: #f9f7df;
}


/* ============================================== */
/* None                                           */
/* ============================================== */
.none {
	display:none;
}
.none-sp {display:inline-block !important;}
.none-pc {display:none !important;}
@media only screen and (max-width: 768px) {
	.none-sp {display:none !important;}
	.none-pc {display:inline-block !important;}
	br.none-pc {display:block !important;}
}

/* ============================================== */
/* 共通                                           */
/* ============================================== */

@media screen and (max-width: 834px) {
	main.main {
		padding: 10px 20px 32px !important;
	}
}

h1.entry-title {
	margin: 1.0em 0 1.5em;
}

.article h2 {
	background-color: transparent;
}

@media screen and (max-width: 480px) {
	h2 {
		line-height: 1.5em;
	}
}

.article h3 {
	border:none;
}
h3.wp-block-heading {
	text-align: center;
	color: var(--color-brown);
	border-top: 1px solid var(--color-brown);
	border-bottom: 1px solid var(--color-brown);
}

.entry-content {
	margin-top: 1em;
}

.footer-bottom {
	margin-top: 1.0px;
}

table:not(.has-border-color) :where(th, td) {
	border: 1px solid var(--color-gray-dark);
}

table tr:nth-child(1) {
	background: #e1f6ff;
}

.copyright {
	font-size: 85%;
}


:root :where(.wp-element-button, .wp-block-button__link) {
	background-color: var(--color-green-deep) !important;
}

.new-entry-card img {
	border: 1px solid var(--color-gray-light);
}

.related-entry-card-title, .entry-card-title {
	border-bottom: 1px solid var(--color-green-deep) !important;
	color: var(--color-green-deep) !important;
}

.page .date-tags {
	display: none;
}

/*1023px以下*/
@media screen and (max-width: 1023px){

	.entry-content {
		margin-top: 0.5em;
	}

	/* スペーサー */
	.wp-block-spacer {
		margin-bottom: 0.2em;
	}
}

/*834px以下*/
@media screen and (max-width: 834px){

	main.main {
		padding: 10px 16px 32px;
	}
}


/*480px以下*/
@media screen and (max-width: 480px){

}


/*1023px以下*/
@media screen and (max-width: 1023px){
	.block-std01 {
		font-size: 15px;
		padding: 0 10px;
	}
}


/* ============================================== */
/* トップに戻るボタン                             */
/* ============================================== */
.go-to-top-button {
	background-color: var(--color-green-deep);
	color: var(--color-white);
}

/* ============================================== */
/* 告知バー                                       */
/* ============================================== */
.infobar {
	background-color: var(--color-green-light);
	padding: 8px 15px;
}
.infobar .tagline {
	margin: 0;
}

/* ============================================== */
/* ヘッダーに連絡先を表示する。                   */
/* ============================================== */

.header-container-in.hlt-top-menu {
	display: block;
}

.header-in {
	align-items: center;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

.header-in:after {
	content: none;
}

.logo-text {
	padding: 10px 0;
}

.header-contact {
	padding: 0.8em;
}

.header-contact > div {
	font-size: 14px;
}

.header-contact .header-contact-message {
	border: 1.0px solid var(--color-green-deep);
	padding: 3px 0;
	text-align: center;
	font-size: 0.9em;
    background: var(--color-green-light);
}

.header-contact .header-contact-phone,
.header-contact .header-contact-phone a {
	color: var(--color-brown);
	font-size: 1.2em;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
}


/*1023px以下*/
@media screen and (max-width: 1023px){

	/* ヘッダーの連絡先を非表示（表示したい場合はdisplay: block） */
	.header-container {
		display: none;
	}
	
	.header-container-in {
		margin-top: 15px;
	}
	
	.header-in .logo-image .site-logo-image {
		height: auto;
	}
	
	.mobile-header-menu-buttons .site-logo-image {
		max-width: 60%;
	}
}

/* 834px以下 */
@media screen and (max-width: 834px){

	.header-in {
		padding: 0 10px;
		justify-content: center !important;
	}
	
	.header-in .logo-header {
		display: none;
	}
}

@media (width > 768px) {
	a[href*="tel:"] {
		pointer-events: none;
	}
}

/*480px以下*/
@media screen and (max-width: 480px){
	

	.header-in .logo-image {
		padding: 15px 0 !important;
	}
	
	.header-in .header-contact {
		width: 100%;
	}
	
	.mobile-header-menu-buttons .site-logo-image {
		max-width: 70%;
	}
	
	
	.header-in .header-contact .header-contact-phone,
	.header-in .header-contact .header-contact-phone a {
		font-size: 1.2em;
	}
}

/* ============================================== */
/* フッター                                       */
/* ============================================== */
.footer {
	padding-top: 40px
}
.footer-contact h4 {
	margin-bottom: 0.6em;
}
.footer-contact p {
	font-size: 0.72em;
	line-height: 1.5em;
	padding-bottom: 0.5em;
}
.footer-contact-inner {
	background-color: var(--color-white);
	border-radius: 10px;
	padding: 1.2em;
}

/*480px以下*/
@media screen and (max-width: 480px){

	.footer {
		padding-top: 20px
	}

	.footer-contact p {
		font-size: 0.85em;
	}
	
	.footer-bottom {
		margin-top: 0;
	}
}

.footer-contact hr {
	height: 0;
	margin: 0;
	padding: 0;
	border: 0;
}
.footer-contact hr.line {
	margin: 5px 0 15px;
	border-top: 1px dotted var(--color-gray-dark);
}
.footer-contact-tel {
	color: var(--color-brown);
	font-size: 1.2em !important;
	font-weight: bold;
}


/* ============================================== */
/* ヘッダーメニュー                               */
/* ============================================== */

#navi .navi-in a:hover {
	transform: none!important;
}
.navi-in > ul .sub-menu a {
	padding: 0;
}
.navi-in > ul .sub-menu{
	box-shadow: 0px 2px 5px 0 rgba(0,0,0,.26);
	width: 360px;
}
.sub-menu .caption-wrap {
	color: var(--color-gray-dark);
	border-top: 1px solid var(--color-gray-dark);
	background: var(--color-white);
	padding:0 0 0 2em;
	margin:0;
}
.navi-in > ul .sub-menu a:hover {
	transform: none!important;
}
div#header-container {
	box-shadow: none;
}

/*1023px以下*/
@media screen and (max-width: 1023px){

	/* サブメニュー */
	ul.menu-drawer > li {
		padding: 0.8em 0;
		border-bottom: 1px solid var(--color-gray-dark);
	}
	ul.menu-drawer > li > a {
		color: var(--color-blue-dark);
	}
	ul.sub-menu > li {
		padding: 0.6em 0;
		border-top: 1px dotted var(--color-gray-dark);
	}
}

/* ---------------------------------------------- */
/* グローバルメニューのアイコンの位置             */
/* ---------------------------------------------- */
.item-label svg {
	vertical-align: -12%;
}

/* ---------------------------------------------- */
/* グローバルメニュー項目間の区切り               */
/* ---------------------------------------------- */
#navi .navi-in {
	padding-top: 15px;
}

#navi .navi-in > ul > li{
	border-right: 2px solid var(--color-beige);
}

#navi .navi-in > ul > li:last-child{
	border-right-width: 0;
}

.navi-in > ul > .menu-item-has-children > a::after{
	right: 10px;
} 

/* ---------------------------------------------- */
/* グローバルメニューの高さ                       */
/* ---------------------------------------------- */
#navi .navi-in > ul li {
	height: 45px;
}

@media screen and (max-width: 1023px) {
	ul.menu-drawer > li > a {
		color: var(--color-green-deep);
	}
}


/* ============================================== */
/* スライダー                                     */
/* ============================================== */
.slider {
	padding: 5px 0;
	background-color: var(--color-yellow-light) !important;
}


/*1023px以下*/
@media screen and (max-width: 1023px){
	.n2-ss-button-container a {
		font-size: 15px !important;
		padding: 5px 15px !important;
	}
}


/* ============================================== */
/* サイドバー                                     */
/* ============================================== */

.sidebar h2.wp-block-heading {
	padding: 12px 24px;
	background-color: var(--color-yellow-light) !important;
	border-radius: 15px;
	color: var(--color-brown);
}
.wp-block-search__label {
	display: none;
}
.wp-block-categories-list li a {
	padding: 5px 10px 5px !important;
	font-size:0.9em;
}

.wp-block-categories-list li {
	border-bottom: 1px dotted var(--color-gray-dark);
}

.widget-sidebar .widget-title {
	padding: 12px 24px !important;
	background-color: var(--color-yellow-light) !important;
	border-radius: 15px !important;
	color: var(--color-brown);
}

.widget-sidebar ul li a {
	padding: 5px 10px 5px !important;
	font-size:0.9em;
}

.widget-sidebar ul li {
	border-bottom: 1px dotted var(--color-gray-dark);
}


/*480px以下*/
@media screen and (max-width: 480px){

	.sidebar {
		padding-top: 0 !important;
		margin-top: 0 !important;
	}
}


/* ============================================== */
/* トップページ                                   */
/* ============================================== */
.home h1.entry-title {
	display: none;
}


/*480px以下*/
@media screen and (max-width: 480px){

	.block-greeting figure {
		margin-bottom: 0 !important;
		margin-inline-start: 1em !important;
	}
	.block-greeting figure img {
		width: 145px !important;
	}
}

/* ---------------------------------------------- */
/* ３PR                                           */
/* ---------------------------------------------- */
.block-3pr {
	background-color: var(--color-green-light);
	padding: 20px;
	border-radius: 15px;
}

.block-3pr .wp-block-column {
	background-color: var(--color-white);
	border: 1px solid var(--color-gray-light);
}
.block-3pr .wp-block-column .wp-block-image {
	margin-bottom: 0.8em;
}
.block-3pr .wp-block-column .wp-block-heading {
	border: none;
	margin-bottom: 0.6em;
	padding: 0 14px;
	color: var(--color-brown);
	font-size: 0.9em;
	font-weight: 600;
}
.block-3pr .wp-block-column p {
	font-size: 14px;
	line-height: 1.5em;
	padding: 10px 14px;
	margin-bottom: 0.8em;
}

.block-3pr .wp-block-buttons {
	justify-content:center;
}
.block-3pr .wp-block-button {
	margin-bottom: 15px !important;
}
.block-3pr .wp-block-button .wp-block-button__link {
	padding: 5px 15px !important;
	font-size: 15px;
}
.block-3pr .wp-block-button .wp-block-button__link:hover,
.block-3pr .wp-block-button .wp-block-button__link:focus,
.block-3pr .wp-block-button .wp-block-button__link:active {
	color: var(--color-white) !important;
}

/* ---------------------------------------------- */
/* お客様の声                                     */
/* ---------------------------------------------- */
.block-voice {
	border: 1px solid var(--color-gray-dark);
}

.block-voice .wp-block-heading {
	text-align: center;
	margin-bottom: 0.2em;
	padding: 10px 0;
	color: var(--color-white);
	background-color: var(--color-green-deep);
}
.block-voice p {
	font-size: 14px;
	line-height: 1.5em;
	padding: 20px 20px 0;
}

.block-voice .wp-block-buttons {
	justify-content:center;
	padding: 0 20px 20px;
}
.block-voice .wp-block-button {
	width: 320px;
}

.block-voice .wp-block-button .wp-block-button__link {
	border-radius: 30px;
	border: 1.5px solid var(--color-green-deep);
	background-color: var(--color-beige) !important;
	color: var(--color-green-deep);
	font-weight: 600;
}

/*480px以下*/
@media screen and (max-width: 480px){

	.block-voice .wp-block-button {
		width: 98%;
	}
}

/* ---------------------------------------------- */
/* お知らせ                                       */
/* ---------------------------------------------- */

.home h2.new-entry-title {
	padding-bottom: 10px;
	border-bottom: 2px solid var(--color-green-deep);
	color: var(--color-green-deep);
	font-weight: bold;
	text-align: left;
}
.home .new-entry-card {
	color: var(--color-gray-dark);
	background-color: transparent;
	padding: 8px 10px 10px;
	border-bottom: 1px solid var(--color-gray-light);
}
.home .new-entry-card .card-thumb {
  display: none;
}
.home .new-entry-card .card-content {
  margin-left: 0;
}

/* 日付 */
.home .new-entry-card-date {
	display: block;
}
.home .new-entry-card-date .post-date {
	margin-right: 20px;
	font-size: 16px;
}
.home .new-entry-card-date .fa {
	display: none;
}

.home .new-entry-card-title {
	font-size: 0.9em;
}
	
.home .new-entry-card-content {
	display: flex;
	flex-direction: row-reverse;
	justify-content: flex-end;
}
/* ボタン「お知らせ一覧」 */
.home .info-buttons {
	margin-bottom: 10px;
}
.home .info-buttons a {
	color: var(--color-white);
	background-color: var(--color-green-deep);
	display: inline-block;
	padding: 8px 20px;
	font-size: 1.0em;
	text-align: center;
	text-decoration: none;
	border-radius: 10px;
	box-shadow: none;
	cursor: pointer;
	word-break: break-word;
	box-sizing: border-box;
	position: relative;
}

/*1023px以下*/
@media screen and (max-width: 1023px){
	/* ボタン「お知らせ一覧」 */
	.home .info-buttons a {
		padding: 5px 15px;
		font-size: 0.8em;
	}
}


/* ---------------------------------------------- */
/* 個別ページ お知らせ                            */
/* ---------------------------------------------- */
.info {
	background-color: transparent;
	color: var(--color-gray-dark);
}
.single-info .prev-post-thumb, .single-info .next-post-thumb {
	display: none;
}
.single-info .prev-post-title, .single-info .next-post-title {
	width: 40%;
}

/* ---------------------------------------------- */
/* 個別ページ お知らせ一覧                        */
/* ---------------------------------------------- */
.post-type-archive .entry-card-thumb {
	display: none;
}
.post-type-archive .entry-card-content {
	margin-left: 0;
}

/* タイトル */
.related-entry-card-title, .entry-card-title {
	border-bottom: 1px solid var(--color-blue-dark);
	padding: 0.4em 0 0.5em;
	margin: 0 0 0.4em 0;
	color: var(--color-blue-dark);
}

/* 本文 */
.post-type-archive .entry-card-snippet {
	margin: 1.0em 0 0.4em 0;
}

/* カテゴリータグ */
.post-type-archive .cat-label {
	position: static;
	top: 0;
	left: 0;
	border: 1px solid var(--color-green);
	font-size: 12px;
	color: var(--cocoon-white-color);
	background-color: var(--color-green);
	padding: 4px 10px;
	max-width: 70%;
	margin-right: 5px;
}

@media screen and (max-width: 480px) {
	
	.no-sp-snippet .entry-card-snippet {
		display: block;
	}
	
	.related-entry-card-title, .entry-card-title {
		margin: 0 0 1.0em 0;
	}
}


/* ---------------------------------------------- */
/* 店主、店舗情報                                 */
/* ---------------------------------------------- */
.table-profile th {
	width: 20%;
}
.table-profile td {
	background-color: var(--color-white);
}


/* ---------------------------------------------- */
/* よくある質問ページ                             */
/* ---------------------------------------------- */
.faq-question {
	padding-bottom: 0.4em;
	margin-bottom: 0.6em;
	border-bottom: 1px solid var(--color-gray-light);
}
.faq-question-content {
	font-size: 1.0em;
	margin-right: 0;
}


/* ---------------------------------------------- */
/* 体質チェックページ                             */
/* ---------------------------------------------- */
.list-check ul {
	padding-left: 20px;
	margin-bottom: 0;
}

/* ---------------------------------------------- */
/* お客様の声ページ                               */
/* ---------------------------------------------- */
#voice-infertility .new-entry-cards,
#voice-atopic .new-entry-cards {
	padding: 1.5em;
	border: 1px solid var(--color-gray-light);
}

#voice-infertility h2.wp-block-heading,
#voice-atopic  h2.wp-block-heading {
	margin-bottom: 0;
}


#voice-infertility .new-entry-card-title,
#voice-atopic .new-entry-card-title {
	padding-top: 15px;
}

/*480px以下*/
@media screen and (max-width: 480px){

	#voice-infertility .new-entry-cards,
	#voice-atopic .new-entry-cards {
	    padding: 0.5em;
	}
	
	#voice-infertility .widget-entry-cards figure,
	#voice-atopic .widget-entry-cards figure {
	  width: 32%;
	}
	
	#voice-infertility .new-entry-card-title,
	#voice-atopic .new-entry-card-title {
		padding-top: 5px;
		font-size: 0.9em;
	}
	
	#voice-infertility .widget-entry-card-content,
	#voice-atopic .widget-entry-card-content {
		margin-left: 110px;
	}
}


/* ---------------------------------------------- */
/* お問い合わせページ                             */
/* ---------------------------------------------- */
.smf-form--business .smf-item {
	border-color: var(--color-gray-dark);
}

.smf-form--business .smf-item__col--label {
	border-color: var(--color-gray-dark);
}

.smf-action .smf-button-control__control {
	color: var(--color-white);
	background-color: var(--color-green-deep);
	background-image: none;
	display: inline-block;
	padding: 8px 20px;
	font-size: 1.0em;
	text-align: center;
	text-decoration: none;
	border-radius: 10px;
	box-shadow: none;
	cursor: pointer;
	word-break: break-word;
	box-sizing: border-box;
	position: relative;
}

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/




/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}
