@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-green: #006036;
	--color-green2: #e7f2e2;
    --color-yellow: #8F7400;
	
}

body {
	background-color: #f5f5f5;
}

/* sidebar */
.sidebar {
    background: none;
    border: 0;
    padding: 0;
}
.side_block {
    background: #fff;
    padding: 18px;
	margin-bottom: 20px;
}

.side_ttl {
    font-size: 28px;
    font-weight: bold;
    position: relative;
	padding-left: 14px;
	display: flex;
    align-items: center;
}
.side_ttl::before {
	content: '';
	width: 8px;
	height: 8px;
	background-color: var(--color-green);
	border-radius: 50%;
	position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
}

.sidebar h2, .sidebar h3 {
    background: none;
    border-radius: 0;
    padding: 0;
    margin: 0;
    display: inline-block;
    font-size: 13px;
    margin-left: 12px;
}
.sidebar-scroll {
    background: #fff;
    padding: 18px;
}
.sidebar-scroll .widget_block {
    padding-top: 18px;
}

ul.wp-block-categories-list {
	
}
ul.wp-block-categories-list li a {
	position: relative;
	padding-left: 22px;
}
ul.wp-block-categories-list li a::before {
	content: '';
	position: absolute;
	width: 18px;
	height: 1px;
	background: var(--color-green);
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	
}
.search-box {
    margin: 0 0 30px;
}
.search-box input {
    border: 0;
    border-radius: 0;
    border-bottom: 2px solid var(--color-green);
}
.widget-entry-cards .a-wrap {
	padding: 0;
}
.a-wrap:hover {
	background: none;
}


/* header */

#header_top {
    background: var(--color-green);
    color: #fff;
	padding: 5px 0;
}
#header_top .h_title {
    font-size: 12px;
}
.header_top_block {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}
.header_share {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-left: auto;
}
.h_share_sns a {
    color: #fff;
    text-decoration: none;
    margin-left: 4px;
}
.header_share p {
    font-size: .8em;
    font-weight: 600;
}

.header-container-in.hlt-top-menu {
    padding: 20px 0;
}
#navi .navi-in>ul>li>a {
    font-weight: 600;
}


/* カテゴリ */
.cat-label {
    position: relative;
    top: auto;
    left: auto;
    display: inline-block;
    font-size: 12px;
    width: fit-content;
    border-radius: 30px;
    border: 0;
    padding: 1px 14px;
    font-weight: 600;
    margin: 8px 0 10px 1rem;
    background-color: var(--color-green2);
    color: #333;
}
.entry-card-info > * {
    font-size: 0.8em;
}

/* パンくず */
.breadcrumb.sbp-main-before, .breadcrumb.sbp-footer-before, .breadcrumb.pbp-main-before, .breadcrumb.pbp-footer-before {
    background: no-repeat;
}
.breadcrumb-item .fa-folder {
    display: none;
}
.breadcrumb-home .fa-home,.breadcrumb-item .fa-file-o {
    display: none;
}


/* ボタン */
.list-more-button {
    border: 0;
    background: var(--color-yellow);
    color: #fff;
    padding: 10px 0;
    font-size: 20px;
    width: 300px;
    position: relative;
    font-weight: 600;
	margin: 3em 0 4em;
}
.list-more-button:hover {
    color: #fff;
    background: #b1930d;
}
.list-more-button::after {
	content: '';
	background: url(./images/arrow_white.webp) no-repeat;
	background-size: contain;
	width: 10px;
	height: 10px;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 18px;
	margin: auto;
}

.a-wrap:hover img {
    opacity: 0.8;
}


/* Contents */
.main {
    border: 0;
    background: none;
    padding-top: 0;
}
.ect-vertical-card {
    justify-content: space-between;
}
.ect-vertical-card .entry-card-wrap {
    width: 48.5%;
}
.entry-card-wrap.a-wrap {
    background: #fff;
    padding: 0 0 16px;
}
.ect-vertical-card .entry-card-wrap .entry-card-content {
    padding: 0 1rem;
}


/* Index */
.ttl_main {
    display: flex;
    align-items: center;
    font-size: 38px;
    font-weight: 600;
    border-bottom: 1px solid #a8a8a8;
    margin-bottom: 2rem;
	position: relative;
}

.ttl_main h2 {
    font-size: 12px;
    margin-left: 14px;
}

.list-title {
    background: #fff;
    text-align: left;
    padding: 16px 20px;
    font-size: 20px;
    border-radius: 80px 0 0 80px;
    position: relative;
}
.list-title-in {
    padding: 0 0 0 36px;
}
.list-title-in:before {
    background-color: var(--color-green);
    width: 10px;
    height: 10px;
    border-radius: 50%;
    top: 0;
    bottom: 0;
    left: 10px;
    margin: auto;
}
.list-title-in:after {
    content: none;
}
.list-new-entries {
    position: relative;
}
ul.get_cat {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 0;
    list-style: none;
    position: absolute;
    top: 28px;
    right: 0;
}
ul.get_cat li {
	margin-left: 14px;
}
ul.get_cat li a {
    padding-left: 8px;
    position: relative;
    text-decoration: none;
    color: #333;
    font-size: 12px;
    font-weight: 600;
    display: block;
}
ul.get_cat li a::before {
    content: '';
    width: 4px;
    height: 4px;
    background: var(--color-green);
    border-radius: 50%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
}


/* Single */

.single .main, .page .main {
    background: #fff;
    padding-top: 30px;
	padding-bottom: 0;
}

.article-header.entry-header {
    position: relative;
}
.article-header.entry-header .date-tags {
	margin-bottom: 30px;
}
.post-date, .post-update, .post-author, .amp-back {
    font-size: .8em;
}
.article-header.entry-header .entry-categories {
	position: absolute;
}
.cat-link {
    background-color: var(--color-green2);
    color: #333;
    padding: 2px 12px;
    border-radius: 20px;
    font-weight: 600;
}
.cat-link span,.tag-link span {
	display: none;
}
.article-header.entry-header .entry-tags {
    margin-bottom: 16px;
}
.tag-link {
    background-color: #f2f2f2;
    border: 0;
    padding: 2px 8px;
}
.ico_tag {
    width: 14px;
    display: inline-block;
    vertical-align: middle;
    margin-right: 5px;
}
.entry-title, .archive-title {
    font-size: 30px;
}
.eye-catch-wrap {
    margin-bottom: 24px;
}


#toc {
    background: #f5f5f5;
    border: 1px solid #ddd;
}
label.toc-title {
    text-align: left;
    padding: 4px 0;
    position: relative;
    z-index: 2;
}
.toc-title::after {
    color: #0658c3;
}
span[id^="toc"] {
  padding-top: 100px;
  margin-top: -100px;
}
.toc a {
    position: relative;
    z-index: 1;
}

.article h2 {
    font-size: 24px;
    background: #fff;
    border-left: 8px solid var(--color-green);
    border-radius: 0;
    padding: 20px;
}
.article h3 {
    border: 0;
    background: var(--color-green2);
}
.article h4 {
    border: 0;
    position: relative;
    padding-left: 40px;
}
.article h4::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	margin: auto;
	width: 30px;
	height: 2px;
	background: var(--color-green);
}

table th, table td {
    padding: .8em;
    background: #fff;
    border-color: #d3d3d3;
}
table th {
	background: #f5f5f5;
}
table:not(.has-border-color) :where(th, td) {
    border: 1px solid #d3d3d3;
}

.sns-share-message {
    margin: 0 auto 10px;
    font-weight: 600;
    width: fit-content;
    position: relative;
}

.sns-share-message::before,.sns-share-message::after {
	content: '';
	background: url(./images/slash.webp) no-repeat;
	background-size: contain;
	width: 16px;
	height: 20px;
	position: absolute;
	top: 0;
	bottom: 0;
	left: -20px;
	margin: auto;	
}
.sns-share-message::after {
	left: auto;
	right: -20px;
	transform: scale(-1,1);
}
.button-caption {
    display: none !important;
}

#related-entries {
    background: #f5f5f5;
	padding: 30px 0 50px;
	margin-bottom: 0;
    border-image: linear-gradient(#f5f5f5, #f5f5f5) fill 0 / / 0 100vw 0 100vw;
}
.related-list {
    margin-bottom: 0;
}
/*
.related-entry-card .cat-label {
    margin-left: 0;
}*/
.rect-vertical-card .related-entry-card {
    background: #fff;
}
.rect-vertical-card .related-entry-card-content {
    padding: 0 10px 10px;
}
.pager-post-navi {
    display: flow;
	position: relative;
}
.pager-post-navi a {
    width: 50%;
    vertical-align: middle;
}
.pager-post-navi::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    border-left: 1px solid #ddd;
}


/* Archive */

#archive-title span {
    display: none;
}


/* Footer */
.footer {
    padding-bottom: 0;
	margin-top: 110px;
}

.footer-bottom {
    margin: 0;
    padding: 24px 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}
.footer-bottom-content {
    margin-left: auto;
    float: none;
}
.footer-bottom-logo {
    position: relative;
}
.logo {
    text-align: left;
}
.footer-bottom-logo a {
    text-align: left;
    padding: 0;
}
.footer-bottom-logo p {
    font-size: 12px;
}
.navi-footer-in > .menu-footer li {
	border-left: 0;
	border-right: 1px solid #ddd;
}
.navi-footer-in > .menu-footer li:last-child {
	border-right: 0;
}


.footer_credit {
    color: #fff;
    text-align: center;
    font-size: .8em;
    padding: 8px 0;
    line-height: 1;
	border-image: linear-gradient(var(--color-green), var(--color-green)) fill 0 / / 0 100vw 0 100vw;
}
.copyright {
    margin-top: 0;
}
#go-to-top {
    bottom: 170px;
}



/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1024px){
.header_top_block.wrap {
    width: 95%;
}
	
.search-box {
    width: 90%;
    margin: 0 auto 30px;
}
	
	
	
}

/*834px以下*/
@media screen and (max-width: 834px){
.header-container-in.hlt-top-menu {
    padding: 14px 0;
}
.header-container-in.hlt-top-menu .header {
    margin-right: auto;
}
	
.navi-footer-in > .menu-footer li.menu-item {
    width: auto;
    border-right: 1px solid #ddd;
    padding: 0 8px;
}
.navi-footer-in > .menu-footer li.menu-item:last-child {
	border: 0;
	
}
.sns-share.ss-bottom.ss-col-6 a {
	width: 15%;
}
	
	
}

/*599px以下*/
@media screen and (max-width: 599px){
.header_share {
    display: none;
}
#header_top .h_title {
    font-size: 2.4vw;
}	
.header-container-in.hlt-top-menu.hlt-tm-small .site-name-text-link {
    margin: 0;
}
	
	
.mobile-menu-buttons .menu-button > a > span, li.search-menu-button.menu-button, .menu-open.menu-button-in {
    color: var(--color-green);
	color: #7d877e;
}
.menu-close-button {
    text-align: right;
    padding-right: 16px;
    color: var(--color-green);
}	
	
	
	
.ttl_main {
    font-size: 8vw;
}
.list-title {
    font-size: 4.3vw;
    padding: 10px;
}
.list-title-in {
    padding: 0 0 0 28px;
}
.list-title-in:before {
    width: 8px;
    height: 8px;
}	
	
	
ul.get_cat {
    position: relative;
    top: auto;
    right: auto;
    margin: -10px 0 24px;
}
	
.cat-label {
    margin: 5px 5px 0 5px;
    font-size: 2.3vw;
}
.ect-vertical-card .entry-card-wrap .entry-card-content {
    padding: 0 5px;
}
.e-card-title {
        font-size: 14px;
    }
.entry-card-meta.card-meta.e-card-meta {
    font-size: 3.2vw;
}

	
	
.breadcrumb {
    font-size: 10px;
}
.article-header.entry-header .entry-categories {
    position: relative;
    margin-bottom: 5px;
}	
	
.entry-title, .archive-title {
    font-size: 22px;
    padding: .6em 0;
}
	
article h1, .article h2, .article h3, .article h4, .article h5, .article h6 {
    line-height: 1.4;
}
.article h2 {
    font-size: 20px;
    padding: 16px;
    border-width: 0 0 0 6px;
}	
	
	
.footer {
    margin-top: 0;
    padding-top: 20px;
}	
.footer-bottom {
    justify-content: center;
    padding: 0;
}
	
.footer-bottom-logo .logo-image {
    text-align: center;
}
.footer-bottom-logo {
    margin-bottom: 20px;
}
.footer-bottom-content {
    margin: 0 auto;
}
.navi-footer-in a {
    font-size: 3.2vw;
}
	
	
	

	
	
}

i.fa {
  display: none;
}

/* マニュアルリスト */
.category-content.article .entry-content {
    background-color: #fff;
    padding: 30px;
}
.category-content.article .entry-content h1 , .category-content.article .entry-content h2 , .category-content.article .entry-content h3 , .category-content.article .entry-content h5 , .category-content.article .entry-content h6 {
    margin-bottom: 16px;
}
.category-content.article .entry-content h4 {
    margin-bottom: 8px;
}
.category-content.article .entry-content ul , .category-content.article .entry-content ol {
    margin-bottom: 16px;
}
.category-content.article h2 {
    font-size: 20px;
    padding: 6px 12px;
    border-left: 4px solid var(--color-green);
}

.category-content.article h3 {
    font-size: 18px;
    padding: 6px 12px;
}
.category-content.article h4 {
    font-size: 18px;
    padding-left: 26px;
}
.category-content.article h4::before {
    width: 20px;
}
.category-content.article h5 , .category-content.article h6 {
    font-size: 18px;
}
.category-content.article ul {
    padding-left: 16px;
}
.category-content.article ol {
    padding-left: 22px;
}
.category-content.article a {
    text-decoration: none;
}
@media screen and (max-width: 834px) {
    .category-content.article .entry-content {
        padding: 16px;
    }
    .category-content.article h2 {
        font-size: 18px;
    }
    .category-content.article h3 {
        font-size: 16px;
    }
    .category-content.article h4 {
        font-size: 16px;
        padding-left: 20px;
    }
    .category-content.article h4::before {
        width: 14px;
    }
    .category-content.article h5 , .category-content.article h6 {
        font-size: 16px;
    }
    .category-content.article li , .category-content.article a {
        font-size: 14px;
    }
}

/************************************
250114_追加
ポップアップバナー
************************************/
.modal-area{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: rgba(255,255,255,.7);
    overflow: auto;
    opacity: 0;
    visibility: hidden;
    transition: .3s;
    z-index: 10;
}
.modal-area.active{
	opacity: 1;
	visibility: visible;
}
/*モーダル枠の指定*/
.modal-content{
	position: relative;
	display: inline-block;
	vertical-align: middle;
	max-width: 600px;
	width: 100%;
}
/*モーダルを閉じるボタンの指定*/
.modal-close{
	position: absolute;
	display: flex;
    align-items: center;
    justify-content: center;
	top: 10px;
	right: 10px;
	width: 25px;
	height: 25px;
	background-color: #fff;
	cursor: pointer;
    border-radius: 9999vh;
}
.modal-close::before{
    content: '';
    position: absolute;
    width: 15px;
    height: 1px;
    background-color: #333;
    transform: rotate(-45deg);
}
.modal-close::after{
    content: '';
    position: absolute;
    width: 15px;
    height: 1px;
    background-color: #333;
    transform: rotate(45deg);
}
.modal-image{
    box-shadow: 1px 1px 6px rgba(0,0,0,.2);
}

/************************************
250114_追加
table内の記述がはみ出ないように
************************************/
table:not(.has-border-color) :where(th, td){
    word-break: break-all;
}