/*
僕を父親にしてくれた君へ
追加CSS
20230523
*/

/* サイト内検索 */
.search-button {
    border-style: none;
    background-color: transparent;
    height: 30px;
    position: absolute;
    top: 0;
    right: 5px;
    cursor: pointer;
}

.search-text {
    border: 0;
    color: #2f2f2f;
    font-size: 14px;
    width: 100%;
    height: 30px;
    padding: 4px 25px 4px 8px;
}

/* 箇条書きタグ */
.list-none {
    list-style: none;
}

/* コメント欄 */
.comment-metadata a,
.reply a {
    font-size: 0.9em;
    text-decoration: none;
    cursor: pointer;
    color: #6f6f6f;
}

.comment-content {
    margin-top: 1rem;
}

/*太字*/
.b {
    font-weight: bold!important;
}

/*文字サイズ*/
.f12em{
    font-size: 1.2em!important;
}

.f14em{
    font-size: 1.4em!important;
}

.f16em{
    font-size: 1.6em!important;
}

/*マーカー表示*/
/*青*/
.line-blue{
    background: linear-gradient(transparent 50%, #9ddff1 50%);
}

/*黄*/
.line-yellow{
    background: linear-gradient(transparent 50%, #fff499 50%);
}

/*橙*/
.line-orange{
    background: linear-gradient(transparent 50%, #f7d999 50%);
}

/*ピンク*/
.line-pink{
    background: linear-gradient(transparent 50%, #f7c2e1 50%);
}

/*黄緑*/
.line-lime{
    background: linear-gradient(transparent 50%, #aae59e 50%);
}

/*灰*/
.line-gray{
    background: linear-gradient(transparent 50%, #d6d6d6 50%);
}

/*フォントの色設定*/
/*赤*/
.red{
    color: #e00000!important;
}

/*青*/
.blue{
    color: #0329ce!important;
}

/*緑*/
.green{
    color: #01995e!important;
}

/*黄*/
.yellow{
    color: #ffe400!important;
}

/*紺*/
.navy{
    color: #133d94!important;
}

/*橙*/
.orange{
    color: #eca100!important;
}

/*ピンク*/
.pink{
    color: #eb67b5!important;
}

/*紫*/
.purple{
    color: #9940d2!important;
}

/*オリーブ*/
.olive{
    color: #9bb814!important;
}

/*黄緑*/
.lime{
    color: #2abe0d!important;
}

/*水色*/
.aqua{
    color: #0baedd!important;
}

/*黒*/
.black{
    color: #000!important;
}

/*灰*/
.gray{
    color: #999!important;
}

/*白*/
.white{
    color: #fff!important;
}

/*茶*/
.brown{
    color: #4b1c1c!important;
}

/*文字の横位置*/
.al-l{
    text-align: left!important;
}
.al-r{
    text-align: right!important;
}
.al-c{
    text-align: center!important;
}

/* サイト内検索の結果件数 */
.search-result {
    margin-top: 30px;
    text-align: center;
}

/* bootstrapの上書き */
label {
    display:initial;
}

/* 文字装飾 */

.red {
    font-weight: bold;
    color: red;
}

.f08em{
    font-size: 0.8em;
}

.f12em{
    font-size: 1.2em;
}

.br-sp {
    display: block;
}

@media screen and (min-width: 992px) {
    .br-sp {
        display: none;
    }
}

/* フッターメニューの装飾 */
.footer-menu ul {
    display: block;
    padding-left: 0;
    margin: auto;
}
    
.footer-menu a {
    text-decoration: none;
    color: #cfcfcf;
}

.footer-menu li {
    padding: 7px 0;
    text-align: center;
}

.footer-menu li:first-child {
    padding: 0 0 7px 0;
}

.footer-menu li:last-child {
    margin-bottom: 20px;
}

@media screen and (min-width: 992px) {
    .footer-menu ul {
        display: flex;
        margin-bottom: 1rem;
        justify-content: center;
    }
    
    .footer-menu li {
        text-align: left;
        display: block;
        padding: 0 20px;
        font-size: 1.0em;
        font-weight: bold;
        letter-spacing: 0.08rem;
        text-transform: uppercase;
    }
    
    .footer-menu li:first-child {
        padding-left: 0 20px;
    }

    .footer-menu li:last-child {
        margin-bottom: 0;
    }
}

/* コメントフォームの調整 */

.comment-respond {
    margin-top: 80px;
}

/* ウィジェットの調整 */

ul.bokuoya_widget {
    margin-top: 30px;
    padding-left: 0;
}

ul.bokuoya_widget {
    list-style: none;
}

ul.bokuoya_widget ul {
    padding-left: 10px;
}

.bokuoya_widget h2 {
    font-size: 18px;
    font-weight: bold;
    background: #2f2f2f;
    color: #ffffff;
    padding: 10px;
    margin-top: 30px;
}

.bokuoya_widget .cat-item {
    list-style: none;
    position: relative;
    padding-left: 10px;
    margin: 5px 0;
}
 
  li.cat-item:before {
    content: "";
    position: absolute;
    top: .35em;
    left: 0;
    width: 0;
    height: 0;
    border-width: 5px;
    border-style: solid;
    border-color: transparent transparent transparent #2f2f2f;
  }

.bokuoya_widget form {
    margin-top: 15px;
}

.bokuoya_widget form select {
    width: 100%;
}

.bokuoya_widget a {
    color: #2f2f2f;
}

/* 固定ページ */
.page {
    padding-top: 0;
}

/* スライダーに文字を重ねる */
.hero-content {
    position: relative;
}

.slider-text {
    position: absolute;
    font-size: 40px;
    font-weight: bold;
    font-family: 'Yomogi', cursive, 'BeyondTheMountains';
    color: #fff;
    text-shadow: 1px 1px 0 black, -1px -1px 0 black, -1px 1px 0 black, 1px -1px 0 black, 0px 1px 0 black, 0-1px 0 black, -1px 0 0 black, 1px 0 0 black;
    margin: auto;
}


@media screen and (min-width: 768px) {
	.slider-text {
	    font-size: 48px;
	}
}

.slider-anchor {
    width: 100%;
}

/* TOCを画面中央よせにする */
#toc_container {
	margin: 0 auto 1em auto;
	text-align: left;
}
/* ====== Beyond the Clouds: Hero + Featured 3 cards ====== */
.boc-container { max-width: 1100px; margin: 0 auto; padding: 0 20px; }
.boc-hero { padding: 72px 0; background: linear-gradient(180deg, #f6f9ff 0%, #ffffff 100%); text-align: center; }
.boc-hero__title { font-size: 2rem; letter-spacing: .02em; margin: 0; }
.boc-hero__sub { opacity: .85; margin: .35rem 0 1rem; }
.boc-hero__lead { color: #444; margin-bottom: 1.25rem; }
.boc-btn { display: inline-block; padding: .6em 1.1em; border-radius: 9999px; background: #9cc7e8; color: #073b5a; text-decoration: none; margin-right: .5rem; }
.boc-btn--ghost { background: transparent; border: 1px solid #9cc7e8; color: #2b5a73; }
.boc-featured { padding: 24px 0 56px; }
.boc-cards { display: grid; gap: 20px; grid-template-columns: 1fr; }
@media (min-width: 900px){ .boc-cards { grid-template-columns: repeat(3, 1fr); } }
.boc-card { border: 1px solid #eef3f8; border-radius: 16px; padding: 16px; background: #fff; }
.boc-card__kicker { font-size: .85rem; color: #5a7a95; }
.boc-card__title { font-size: 1.1rem; margin: .25rem 0 .5rem; }
.boc-card__thumb .boc-thumb-img { width: 100%; height: auto; aspect-ratio: 16/9; object-fit: cover; border-radius: 12px; }
.boc-card__excerpt { color: #444; }
.boc-card__more .boc-btn { margin-right: .5rem; }

/* Ensure images reserve space to reduce CLS */
img { height: auto; }
