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

/************************************
** 子テーマ用のスタイルを書く
************************************/

*, *:before, *:after {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}

.home .entry-title {
display: none;
}
a:hover img {
opacity: 0.7;
filter: alpha(opacity=70);
-ms-filter: "alpha(opacity=70)";
}
a{
margin:0;
padding:0;
text-decoration:underline;
outline:0;
vertical-align:baseline;
background:transparent;
font-size:100%;
color:#0066ff;
}

.clearfix:after{
content:"";
display:block;
clear:both;
}
ul li {
	list-style:none;
}

.article {
    margin-bottom: 0 !important;
}
.entry-content {
    margin-top: 0;
    margin-bottom: 0;
	padding-bottom:50px;
	min-height: 600px;
}
.footer {
    margin-top: 0;
    padding: 8px;
}


.header-container-in.hlt-top-menu .navi {
width: 100%;
    clear: both;
    margin: 120px auto 30px;
    max-width: 1300px;
}

/*背景の幅を100％にする*/

.home #content .wrap {
    width: 100%;}
.home #content .wrap .main {
 padding: 0;}

.header-container-in.hlt-top-menu {
    display: inline;
}
#header-in {
	max-width:1300px;
	margin:0 auto;
	text-align:left;
	top: 90px;
    position: relative;
}
.header-container-in.hlt-top-menu .logo-header {
    max-height: 60px;
    text-align: left;
}
.header-btn {
    width: 1300px;
     z-index: 500;
    margin: 0 auto;
    display: flex;
            align-items: center;
            gap: 20px;
	justify-content: right;
	    margin-bottom: -150px;
    padding-top: 10px;
	padding-right:50px;
	position: relative;
}
/* ボタン共通スタイル */
.header-btn .action-buttons {
            display: flex;
            gap: 12px;
        }

.header-btn .btn {
            padding: 10px 24px;
            border: none;
            border-radius: 6px;
            font-size: 15px;
            font-weight: 600;
            cursor: pointer;
            display: inline-flex;
            align-items: center;
            gap: 8px;
            transition: all 0.3s ease;
            text-decoration: none;
            box-shadow: 0 2px 4px rgba(0,0,0,0.1);
        }

.header-btn .btn-icon {
            width: auto;
    height: 31px;
            object-fit: contain;
        }

        /* ご予約ボタン */
.header-btn .btn-appointment {
            background-color: #F39800;
            color: white;
        }

.header-btn .btn-appointment:hover {
            background-color: #E08800;
            transform: translateY(-1px);
            box-shadow: 0 4px 8px rgba(243,152,0,0.3);
        }

        /* 採用情報ボタン */
.header-btn .btn-recruitment {
            background-color: #6DB33F;
            color: white;
        }

.header-btn .btn-recruitment:hover {
            background-color: #5DA030;
            transform: translateY(-1px);
            box-shadow: 0 4px 8px rgba(109,179,63,0.3);
        }

.home #content .wrap .main section .inner{
width: 1300px;
margin:0 auto;}
.main-img {
	text-align:center;
	
}

.home .article h2 {
    padding: 0;
	text-align:center;
    background-color: transparent;
    border-radius: 0;
}
.home .article h3 {
    border-left: 0;
    border-right: 0;
    border-top: 0;
    border-bottom: 0;
}
.navi-in > ul li {
    display: block;
    width: 16%;
    height: 80px;
    position: relative;
    color: #222222;
    border-left: #cccccc 1px solid;
    font-weight:bold;
    font-size: 120%;
}
.navi-in > ul li:first-child {
    border-left: 0;	
}
.navi-in > ul li .sub-caption {
    color:#f09721;
    font-weight:bold;
    font-size: 1em;
}

/* 全てのメニュー項目を中央揃えに */
.navi-in > ul li .item-label {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    height: auto;
    justify-content: center; /* 垂直方向も中央揃え */
}

/* 各メニューのアイコン設定 */
.navi-in > ul li.nav-home .item-label:before {
    content: "";
    background-image: url(https://sakura-family-clinic.jp/wdp/wp-content/uploads/2025/08/ico01.png);
    background-size: contain;
    background-repeat: no-repeat;
    width: 39px;
    height: 38px;
    display: block;
    margin-bottom: 0px;
}

.navi-in > ul li.nav-about .item-label:before {
    content: "";
    background-image: url(https://sakura-family-clinic.jp/wdp/wp-content/uploads/2025/08/ico02.png);
    background-size: contain;
    background-repeat: no-repeat;
    width: 39px;
    height: 38px;
    display: block;
    margin-bottom: 0px;
}

.navi-in > ul li.nav-medical .item-label:before {
    content: "";
    background-image: url(https://sakura-family-clinic.jp/wdp/wp-content/uploads/2025/08/ico03.png);
    background-size: contain;
    background-repeat: no-repeat;
    width: 39px;
    height: 38px;
    display: block;
    margin-bottom: 0px;
}

.navi-in > ul li.nav-clinic .item-label:before {
    content: "";
    background-image: url(https://sakura-family-clinic.jp/wdp/wp-content/uploads/2025/08/ico04.png);
    background-size: contain;
    background-repeat: no-repeat;
    width: 39px;
    height: 38px;
    display: block;
    margin-bottom: 0px;
}

.navi-in > ul li.nav-staff .item-label:before {
    content: "";
    background-image: url(https://sakura-family-clinic.jp/wdp/wp-content/uploads/2025/08/ico05.png);
    background-size: contain;
    background-repeat: no-repeat;
    width: 52px;
    height: 38px;
    display: block;
    margin-bottom: 0px;
}

.navi-in > ul li.nav-access .item-label:before {
    content: "";
    background-image: url(https://sakura-family-clinic.jp/wdp/wp-content/uploads/2025/08/ico06.png);
    background-size: contain;
    background-repeat: no-repeat;
    width: 33px;
    height: 38px;
    display: block;
    margin-bottom: 0px;
}
.navi-in a {
    height: auto;
}

.tab-img { display:none;}
.tabsmt-img { display:none;}
.smt-img { display:none !important;}



/** トップページ　お知らせ・ブログ表示 **/

.home .article-header {
    background: #f5f0ec url("https://sakura-family-clinic.jp/wdp/wp-content/uploads/2025/08/bg01.png") repeat-x top center;
    padding: 60px 0 40px;
}
/* 内側に共通のコンテナクラスを作る */
.article-header {
    padding-left: calc((100% - 1300px) / 2) !important;
    padding-right: calc((100% - 1300px) / 2)!important;
}

@media (max-width: 1340px) {
    .article-header {
      
    }
}

/* 一覧へボタン */
#custom_html-2,
#custom_html-3 {
    position: absolute;
    top:70px;
    z-index: 10;
}

#custom_html-2 {
    right: 52%;
}

#custom_html-3 {
    right: calc((100% - 1300px) / 2 + 2%);
}

.blog-link a {
    display: inline-flex;
    transition: all 0.3s ease;
}

.blog-link a:hover {
    transform: translateY(-2px);

}
table tr:nth-of-type(2n+1) {
    background-color: #FFF;
}
/* メインコンテナ */
#info_list-2,
#php_code_widget-2 {
    width: 48%;
    margin: 0 1%;
    float: left;
    position: relative;
}

/* タイトル部分 */
#info_list-2 .widget-page-content-top-title,
#php_code_widget-2 .blog-header {  
    margin-bottom: 20px;
    padding-left: 10px;
    letter-spacing: 0.1em;
}

#info_list-2 .widget-page-content-top-title {
    text-indent:-9999px;
    background: url(http://sakura-family-clinic.jp/wdp/wp-content/uploads/2025/08/news-ttl.png) no-repeat 0 0;
    height:80px;
}

/* ブログタイトル画像 */
#php_code_widget-2 .blog-title-image {
    max-width: 100%;
    height: auto;
    display: block;
    margin-bottom: 20px;
}

/* リストコンテナ - 背景を透明に */
#info-list,
#blog-list,
#php_code_widget-2 .blog-list {
    background: transparent;
    border-radius: 0;
    padding: 0;
    box-shadow: none;
    list-style: none;
    margin: 0;
}

/* お知らせリスト項目 - 個別に白背景、角丸を大きく */
.info-list-item {
    display: flex !important;
    align-items: center;
    padding: 20px 25px;
    margin-bottom: 15px;
    background: #fff;
    border-radius: 50px; /* 15px から 25px に変更 */
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
    position: relative;
    border: none !important; /* 全てのボーダーを削除 */
}

/* お知らせリストの点線を削除 */
.info-list-item::before {
    display: none !important;
}

.info-list-item:last-child {
    margin-bottom: 0;
    border: none !important; /* 最後の項目のボーダーも削除 */
}

/* お知らせの日付を左側に配置 */
.info-list-item-meta {
    font-size: 15px;
    color: #f09721;
    font-weight: 600;
    min-width: 110px;
    max-width: 110px;
    position: static !important;
    top: auto !important;
    left: auto !important;
    margin-right: 20px;
    order: 1;
}

/* お知らせのタイトル */
.info-list-item-content {
    flex: 1;
    font-size: 15px;
    color: #333;
    position: static !important;
    top: auto !important;
    left: auto !important;
    line-height: 1.6;
    margin-left: 0;
    order: 2;
}

/* お知らせの矢印 */
.info-list-item::after {
    content: "▶";
    position: absolute;
    right: 25px;
    top: 50%;
    transform: translateY(-50%);
    color: #f09721;
    font-size: 12px;
}

#info-list .info-list-item-categorys {
    display: none;
}

/* ブログリスト項目 - 個別に白背景、角丸を大きく */
#php_code_widget-2 .blog-list-item {
    margin-bottom: 15px;
    background: #fff;
    border-radius: 50px; 
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
    border: none !important; /* 全てのボーダーを削除 */
    padding: 0;
}

#php_code_widget-2 .blog-list-item:last-child {
    margin-bottom: 0;
    border: none !important;
}

#php_code_widget-2 .blog-list-item:first-child {
    border: none !important;
}

#php_code_widget-2 .blog-link {
    display: block !important;
    padding: 20px 25px;
    text-decoration: none;
    color: #333;
    transition: all 0.3s ease;
    position: relative;
    border-radius: 25px; /* 15px から 25px に変更 */
}

#php_code_widget-2 .blog-link:hover {
    background-color: rgba(139, 166, 139, 0.05);
    transform: translateX(3px);
}

/* ブログの日付を表示し左側に配置 */
#php_code_widget-2 .post-date {
    display: inline-block !important;
    font-size: 15px;
    color: #66b337;
    font-weight: 600;
    width: 110px;
    margin-right: 20px;
    vertical-align: top;
}

/* ブログのタイトル */
#php_code_widget-2 .post-title {
    display: inline-block;
    width: calc(100% - 160px);
    font-size: 15px;
    color: #333;
    line-height: 1.6;
    vertical-align: top;
}

/* ブログの矢印 */
#php_code_widget-2 .post-arrow {
    position: absolute;
    right: 25px;
    top: 50%;
    transform: translateY(-50%);
    color: #66b337;
    font-size: 12px;
}

/* 二重表示を防ぐため::beforeを削除 */
#php_code_widget-2 .post-arrow::before {
    display: none;
}

#php_code_widget-2 .no-posts {
    color: #999;
    font-size: 14px;
    text-align: center;
    padding: 20px;
    background: #fff;
    border-radius: 25px; /* 15px から 25px に変更 */
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

/* ホバー時のアニメーション追加 */
.info-list-item:hover {
    transform: translateX(3px);
    transition: all 0.3s ease;
}

/* レスポンシブ対応 */
@media (max-width: 768px) {
    #info_list-2,
    #php_code_widget-2 {
        width: 100%;
        margin: 0 0 30px 0;
        float: none;
    }
    
    #custom_html-2,
    #custom_html-3 {
        position: relative;
        top: auto;
        right: auto;
        text-align: right;
        margin-bottom: 10px;
    }
    
    .info-list-item,
    #php_code_widget-2 .blog-link {
        padding: 15px 20px;
    }
    
    .info-list-item-meta,
    #php_code_widget-2 .post-date {
        font-size: 14px;
        min-width: 85px;
        max-width: 85px;
        margin-right: 15px;
    }
    
    .info-list-item-content,
    #php_code_widget-2 .post-title {
        font-size: 14px;
        width: calc(100% - 120px);
    }
    
    .info-list-item::after,
    #php_code_widget-2 .post-arrow {
        right: 15px;
    }
    
    .info-list-item,
    #php_code_widget-2 .blog-list-item {
        margin-bottom: 10px;
    }
}

/* 下層ページ */
h1.entry-title {
            margin-bottom: 30px;
            padding-bottom: 15px;
            border-bottom: 3px solid #66b337;
        }

.article h2 {
	background-color:transparent;
}
.article h3 {
    border-left: 0;
    border-right: 0;
    border-top: 0;
    border-bottom: 0;
    font-size: 22px;
    padding: 0;
    margin-bottom: 0 !important;
}
.red-txt {
	color:#ff0000;
}
.marker {
	background:linear-gradient(transparent 70%, #fff4ad 70%);
}

/**************************************/
/** YouTube動画を横幅いっぱいにする **/
/*************************************/
.video-container {
	max-width: none;
}


/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1300px以下*/
@media screen and (max-width: 1300px){
.home #content .wrap .main section .inner{
width: 96%;
margin:0 auto;}
.header-btn {
		width:100%;
		max-width:100%;
	padding: 10px;
	}
	.header-btn img {
width: 20%;		
	}
#custom_html-3 {
    right: 3%;
}
#header-in {
	max-width:96%;
	margin:0 auto;
	text-align:left;
	top: 90px;
    position: relative;
}
.header-container-in.hlt-top-menu .logo-header img {
    max-height: 50px;
}
}
/*1023px以下*/
@media screen and (max-width: 1023px){
.header-btn,
.header-container{
display:none !important;}

	/*スライドインメニューを右から*/
.navi-menu-content{
	left: auto;
	right: 0;
	background-color: #FFF;
	transform: translateX(101%);
}

.wrap {
    width: 100%;
}	
#header {
		display:none;
	}
#menu-header-mobile{
		padding:0 5px;
	}
.logo-menu-button {
		text-align:left;
		width:50%;
	}
.has-logo-button .logo-menu-button {
    flex-grow: 0;
	    width: 100% !important;
}
.logo-menu-button img {
    max-height: 25px;
    display: block;
    margin: 1%;
}
.mobile-menu-buttons .menu-button {
    position: relative;
    width: 60px;
    cursor: pointer;
    display: flex
;
    align-items: center;
    justify-content: normal;
}
.fa-phone,
.fa-user {
color:#66b337;
}

.fa-laptop,
.navi-menu-icon {
color:#f09721;
}
.custom-menu-caption {
font-size:11px;
}
.pc-img { display:none !important;}
.tab-img { display:inline !important;}
}

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

	    #info_list-2, #php_code_widget-2 {
        width: 100%;
        margin: -100px 0 30px 0;
        float: none;
    }

.pctab-img { display:none !important;}
.tab-img { display:none !important;}
.smt-img { display:inline !important;}

}

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