/* <system section="theme" selected="short"> */
@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;700&display=swap";/*!
    Short
    Author: Hatena Blog Team
    Responsive: Yes
*//*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}:root{--font: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--font-entry-title: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;--font-size-50: 12px;--font-size-65: 13px;--font-size-75: 14px;--font-size-85: 15px;--font-size-95: 16px;--font-size-100: 17px;--font-size-200: 20px;--font-size-300: 24px;--font-size-400: 32px;--font-size-500: 40px;--font-size-600: 48px;--font-size-700: 56px;--font-size-800: 64px;--font-size-900: 72px;--line-height-none: 1;--line-height-xs: 1.25;--line-height-sm: 1.4;--line-height-base: 1.6;--line-height-lg: 1.75;--letter-spacing-200: .25px;--letter-spacing-300: 2px;--letter-spacing-400: 1em;--space-1: 4px;--space-2: 8px;--space-3: 16px;--space-4: 24px;--space-5: 32px;--space-6: 40px;--space-7: 48px;--space-8: 64px;--space-9: 80px;--col-width: 90vw;--col-width-sm: 520px;--col-width-md: 940px;--col-width-lg: 1200px;--border-radius-img: 6px;--border-radius-btn: 6px;--border-radius-box: 12px;--z-index-back: 1;--z-index-front: 2;--z-index-modal: 10;--box-shadow-modal: 0 4px 24px rgba(0, 0, 0, .25);--color-white: #fff;--color-dark: #333;--color-gray: #75817c;--color-gray-50: #f9f9f9;--color-gray-100: #f3f4f5;--color-gray-150: #eaebed;--color-gray-200: #dfe7e5;--color-blue: #1852c7;--color-green: #229308;--color-green-dark: #1d5e0e;--color-lightblue: #EAEFFC;--color-bg: var(--color-white);--color-bg-white: var(--color-white);--color-bg-light: var(--color-gray-100);--color-bg-category: var(--color-lightblue);--color-bg-entry-footer: var(--color-gray-50);--color-text: var(--color-dark);--color-text-secondary: var(--color-gray);--color-text-link: var(--color-blue);--color-text-highlight: var(--color-green);--color-text-white: var(--color-white);--color-text-white-secondary: var(--color-gray-100);--color-border: var(--color-gray-200);--color-border-entry: rgba(0, 0, 0, .04);--color-spacing-entry-mobile: rgba(0, 0, 0, .06);--color-btn-default-bg: rgba(25, 48, 70, .1);--color-btn-default-bg-hover: rgba(25, 48, 70, .2);--color-btn-default-text: var(--color-dark);--color-btn-primary-bg: rgba(53, 165, 38, .14);--color-btn-primary-bg-hover: rgba(53, 165, 38, .24);--color-btn-primary-text: var(--color-green-dark)}*{box-sizing:border-box;word-wrap:break-word;word-break:break-word}body{font-family:var(--font);background:var(--color-bg-light);color:var(--color-text);line-height:var(--line-height-base);font-size:var(--font-size-100)}@media(min-width:576px){body{background:var(--color-bg);font-size:var(--font-size-95)}}#container{margin:0 auto}#container{margin:auto;max-width:var(--col-width-md)}#main{max-width:var(--col-width-sm);margin:auto}#globalheader-container{position:sticky;top:0;background:var(--color-bg)}#blog-title{margin:var(--space-6) 0;text-align:center}@media(min-width:576px){#blog-title{margin:var(--space-7) 0}}#title{font-size:var(--font-size-300);margin:0;font-weight:400}#title a{color:inherit;text-decoration:none}#blog-description{font-size:var(--font-size-85);color:var(--color-text-secondary);font-weight:400}.header-image-enable #blog-title-inner{display:flex;justify-content:center;align-items:center}#top-editarea{margin:0 var(--space-3);max-width:var(--col-width-sm)}@media(min-width:576px){#top-editarea{margin:0 auto}}#top-box{margin:0 var(--space-3);max-width:var(--col-width-sm)}@media(min-width:576px){#top-box{margin:0 auto}}.breadcrumb{font-size:var(--font-size-50);color:var(--color-text-secondary)}.breadcrumb a{color:inherit;text-decoration:none}.entry+.entry{margin-top:var(--space-4)}@media(min-width:576px){.entry+.entry{margin-top:var(--space-5)}}.entry .entry-inner{position:relative;padding:var(--space-3);background:var(--color-bg)}@media(min-width:576px){.entry .entry-inner{border-radius:var(--border-radius-box);box-shadow:0 0 0 6px var(--color-border-entry);margin:6px}}.entry .date{color:var(--color-text-highlight);font-weight:700;font-size:var(--font-size-75)}.entry .date a{color:inherit;text-decoration:none}.entry .categories .entry-category-link{display:inline-block;margin-right:var(--space-1);font-size:var(--font-size-75);line-height:var(--line-height-sm);padding:var(--space-1) var(--space-2);font-size:var(--font-size-50);background:var(--color-bg-category);color:var(--color-text);text-decoration:none;border-radius:24px}.entry .entry-header-menu a{position:absolute;top:var(--space-3);right:var(--space-3);display:inline-block;line-height:var(--line-height-base);font-family:inherit;text-decoration:none;text-align:center;transition:all .25s;font-weight:400;border:0;cursor:pointer;padding:var(--space-2) var(--space-3);font-size:var(--font-size-85);border-radius:var(--border-radius-btn);font-size:var(--font-size-65);color:var(--color-btn-primary-text);background:var(--color-btn-primary-bg)}.entry .entry-header-menu a:hover{background:var(--color-btn-primary-bg-hover)}.entry-header{margin-bottom:var(--space-3)}.entry-header .entry-title{font-size:var(--font-size-200);color:var(--color-text);margin:0 0 var(--space-2)}.entry-header .entry-title a{color:inherit;text-decoration:none}.entry-footer{padding:var(--space-3);margin:var(--space-3) calc(var(--space-3) * -1) calc(var(--space-3) * -1);background:var(--color-bg-entry-footer);font-size:Var(--font-size-75);color:var(--color-text-secondary)}@media(min-width:576px){.entry-footer{border-radius:0 0 var(--border-radius-box) var(--border-radius-box)}}.entry-footer a{color:inherit}.entry-footer .hatena-star-container,.entry-footer .hatena-module{margin:var(--space-3) 0}.entry-footer .hatena-module .hatena-module-title{font-size:var(--font-size-85);border-bottom:2px solid var(--color-border);font-weight:700;margin:0 0 var(--space-3)}.entry-footer .hatena-module .urllist-title-link{color:var(--color-text)}.entry-footer .hatena-module .urllist-image{width:64px;height:64px}.entry-content{line-height:var(--line-height-lg)}.entry-content a{color:var(--color-text-link)}.entry-content .keyword{border-bottom:1px solid var(--color-border);text-decoration:none}.entry-content p{margin:1em 0}.entry-content img{max-width:100%}.entry-content img.hatena-fotolife{border-radius:var(--border-radius-img)}.entry-content h1,.entry-content h2,.entry-content h3,.entry-content h4,.entry-content h5,.entry-content h6{margin:1.75em 0 .75em;line-height:var(--line-height-sm)}.entry-content h1,.entry-content h3{border-bottom:2px solid var(--color-border);padding:0 0 var(--space-1)}.entry-content h1{font-size:140%}.entry-content h2{font-size:130%}.entry-content h3{font-size:120%}.entry-content h4{font-size:110%}.entry-content h5{font-size:100%}.entry-content h6{font-size:90%}.entry-content h1,.entry-content h2,.entry-content h3,.entry-content h4,.entry-content h5,.entry-content h6,.entry-content .footnote-number{scroll-margin-top:56px}.entry-content table{border-collapse:collapse;border-spacing:0;margin:1.5em auto;font-size:90%}.entry-content table img{max-width:none}.entry-content table th{background:var(--color-bg-light);white-space:nowrap}.entry-content table th,.entry-content table td{border:1px solid var(--color-border);padding:.5em}.entry-content .help-table{overflow:auto}.entry-content blockquote{border-left:4px solid var(--color-border);margin:1em 0;padding-left:.75em;color:var(--color-text-secondary)}.entry-content blockquote p{margin-top:0;margin-bottom:0}.entry-content blockquote a{color:inherit}.entry-content pre.code{font-size:var(--font-size-85)}.entry-content pre>code{margin:0;padding:0;white-space:pre;border:0;background:transparent;font-family:Monaco,Consolas,Courier New,Courier,monospace,sans-serif}.entry-content .hatena-asin-detail li{line-height:1.4}.entry-content ul,.entry-content ol{padding-left:1.75em}.entry-content ul>li:not(:first-child),.entry-content ol>li:not(:first-child){margin-top:.3em}.entry-content ul ul li,.entry-content ol ul li{margin-top:.3em}.entry-content .table-of-contents{background-color:var(--color-bg-light);border-radius:var(--border-radius-box);padding:1.5em 1.5em 1.5em 2.5em;margin:1.5rem 0;font-size:var(--font-size-85)}.entry-content .table-of-contents li{margin:0}.comment-box .leave-comment-title{display:inline-block;line-height:var(--line-height-base);font-family:inherit;text-decoration:none;text-align:center;transition:all .25s;font-weight:400;border:0;cursor:pointer;padding:var(--space-2) var(--space-3);font-size:var(--font-size-85);border-radius:var(--border-radius-btn);background:var(--color-bg-white);color:var(--color-btn-default-text);font-size:var(--font-size-65)}.comment-box .leave-comment-title:hover{color:var(--color-text-link)}.comment{margin:var(--space-3) 0 0;padding:0;list-style:none}.comment li{margin-bottom:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border)}.comment .entry-comment{position:relative;padding-left:40px}.comment .hatena-id-icon{width:32px;height:32px;border-radius:32px;position:absolute;top:0;left:0}.comment .comment-user-name{font-weight:700;margin:0 0 var(--space-2)}.comment .comment-metadata{margin-bottom:0}.pager{text-align:center;display:flex;justify-content:center;color:var(--color-text);gap:var(--space-2);margin:var(--space-4) var(--space-3) 0}@media(min-width:576px){.pager{margin-left:auto;margin-right:auto}}.pager>*{flex:1}.pager a{display:inline-block;line-height:var(--line-height-base);font-family:inherit;text-decoration:none;text-align:center;transition:all .25s;font-weight:400;border:0;cursor:pointer;padding:var(--space-2) var(--space-3);font-size:var(--font-size-85);border-radius:var(--border-radius-btn);color:var(--color-btn-default-text);background:var(--color-btn-default-bg);width:100%;display:block}.pager a:hover{background:var(--color-btn-default-bg-hover)}#box2{margin:var(--space-5) var(--space-3) 0;font-size:var(--font-size-85)}@media(min-width:576px){#box2{font-size:var(--font-size-75)}}#box2-inner{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-4)}#box2-inner .hatena-module{background-color:var(--color-bg);padding:var(--space-3);border-radius:var(--border-radius-box)}#box2-inner .hatena-module-title{margin:0 0 var(--space-3);border-bottom:2px solid var(--color-border);color:var(--color-text-secondary);font-weight:700}#box2-inner .hatena-module-title a{color:inherit;text-decoration:none}#box2-inner .hatena-module-body a{color:inherit}.hatena-urllist{list-style:none;margin:0;padding:0}.hatena-urllist li{margin-bottom:calc(var(--space-2) + var(--space-1));padding-bottom:calc(var(--space-2) + var(--space-1));border-bottom:1px solid var(--color-border)}.hatena-urllist li a{text-decoration:none}.hatena-urllist li a:hover{text-decoration:underline}.hatena-urllist .urllist-date-link{color:var(--color-text-secondary)}.hatena-urllist .urllist-date-link a{color:inherit}.hatena-urllist .urllist-entry-body{color:var(--color-text-secondary)}.hatena-urllist .urllist-category-link{display:inline-block;margin-right:var(--space-1);line-height:var(--line-height-sm);padding:var(--space-1) var(--space-2);font-size:var(--font-size-50);background:var(--color-bg-category);color:var(--color-text);text-decoration:none;border-radius:24px}.hatena-urllist .urllist-image{border-radius:var(--border-radius-img)}.hatena-module-profile .profile-icon{border-radius:64px}.hatena-module-profile .profile-icon-link{text-decoration:none}.hatena-module-search-box .search-form{display:flex;justify-content:center;border:1px solid var(--color-border);border-radius:var(--border-radius-box);overflow:hidden;position:relative}.hatena-module-search-box .search-form .search-module-input{width:100%;outline:0;border:none;margin:0;padding:var(--space-2)}.hatena-module-search-box .search-form .search-module-button{width:24px;height:24px;background:transparent url(https://cdn.blog.st-hatena.com/images/theme/search@2x.png?version=f55d41c1f1e9d553c20fd41f441dc0) no-repeat center;background-size:20px 20px;position:absolute;top:4px;right:6px;border:none;outline:0;text-indent:-9999px;opacity:.5;cursor:pointer}.hatena-module-search-box .search-form .search-module-button:hover,.hatena-module-search-box .search-form .search-module-button:focus{transition:color .3s;opacity:1}#footer{text-align:center;margin:var(--space-6) var(--space-3) var(--space-3);font-size:var(--font-size-75);color:var(--color-text-secondary)}#footer a{color:var(--color-text);text-decoration:none}.page-about .entry-content dl{margin:0}.page-about .entry-content dt{font-size:var(--font-size-75);font-weight:700;color:var(--color-text-secondary);border-bottom:2px solid var(--color-border);margin-bottom:var(--space-2)}.page-about .entry-content dd{margin-left:0}.page-about .entry-content dd+dt{margin-top:var(--space-4)}.archive-entries{display:grid;gap:var(--space-4);background-color:var(--color-spacing-entry-mobile)}@media(min-width:576px){.archive-entries{background-color:transparent}}.archive-heading{font-size:var(--font-size-200)}.archive-entry{padding:var(--space-3);background:var(--color-bg)}@media(min-width:576px){.archive-entry{border:6px solid var(--color-border-entry);border-radius:var(--border-radius-box)}}.archive-entry .archive-entry-header{margin-bottom:var(--space-2)}.archive-entry .archive-entry-header .entry-title{font-size:var(--font-size-200);color:var(--color-text);margin:0 0 var(--space-2)}.archive-entry .archive-entry-header .entry-title a{color:inherit;text-decoration:none}.archive-entry .date{color:var(--color-text-highlight);font-weight:700;font-size:var(--font-size-75)}.archive-entry .date a{color:inherit;text-decoration:none}.archive-entry .categories{margin-bottom:var(--space-2)}.archive-entry .archive-category-link{display:inline-block;margin-right:var(--space-1);font-size:var(--font-size-75);line-height:var(--line-height-sm);padding:var(--space-1) var(--space-2);font-size:var(--font-size-50);background:var(--color-bg-category);color:var(--color-text);text-decoration:none;border-radius:24px}.archive-entry .entry-description{margin:0;font-size:var(--font-size-75)}.archive-entry .entry-thumb{border-radius:var(--border-radius-img)}.search-result{margin:0 var(--space-3) var(--space-5);max-width:var(--col-width-sm)}@media(min-width:576px){.search-result{margin-left:auto;margin-right:auto}}

/* </system> */

/* <system section="background" selected="undefined"> */


/* </system> */

/** 記事はてなID非表示 **/
span.author.vcard {
display:none;
}

/** 見出し **/
.entry-content h1,
.entry-title {
position: relative;
font-size: 2em;
padding: 0.6em 1em;
border-left: 8px solid #46a0d3;
background: linear-gradient(to right, #e6f5fb, #ffffff);
color: #222;
font-weight: bold;
}

.entry {
position: relative;
z-index: 1;
}
.entry-content h2 {
position: relative;
padding: 1em;
border: 2px solid #333;
}
.entry-content h2::before {
content: "";
position: absolute;
bottom: -7px;
left: 20%;
transform: translateX(-50%) rotate(-45deg);
width: 10px;
height: 10px;
border: 2px solid #333;
border-top: none;
border-right: none;
background-color: #b1ddf5;
}
.entry-content h2::after {
content: "";
position: absolute;
top: 4px;
left: 4px;
width: 100%;
height: 100%;
background-color: #b1ddf5;
z-index: -1;
}

.entry-content h3 {
background-image: linear-gradient(45deg, #f0f8ff 25%, transparent 25%, transparent 50%, #f0f8ff 50%, #f0f8ff 75%, transparent 75%, transparent);
background-size: 20px 20px;
padding: 0.5em;
}

.entry-content h4 {
position: relative;
padding: 0.5em;
}
.entry-content h4::before,
.entry-content h4::after {
content: "";
position: absolute;
bottom: 0;
left: 0;
height: 2px;
}
.entry-content h4::before {
width: 20%;
background-color: #333;
}
.entry-content h4::after {
width: 80%;
background-color: #46a0d3;
left: 20%;
}

.entry-content h5 {
border-left: 4px solid #46a0d3;
padding-left: 0.5em;
}

/** サイドバーの見出し **/
.hatena-module-title {
font-size: 1em;
font-weight: bold;
color: #333;
border-bottom: 2px solid #46a0d3;
padding: 0.4em 0;
margin-bottom: 0.8em;
background-color: transparent;
}

/** セールボタン **/
.sale-btn {
font-size: 15px;
margin-left: auto;
margin-right: auto;
display: block;
margin: 1em 0 2em 0;
}

.sale-btn a {
display: block;
position: relative;
z-index: 2;
overflow: hidden;
width: 100%;
font-weight: bold ;
box-shadow:2px 2px 2px #555; 
color: #4b5563 !important;
padding: 14px 0;
text-align: center;
text-decoration: none;
transition: .25s linear;
-webkit-transition: .25s linear;
-moz-transition: .25s linear;
}

.sale-btn a:hover {
-ms-transform: translateY(3px);
-webkit-transform: translateY(3px);
transform: translateY(2px);/** 動く(下方向) **/
border-bottom: none;
box-shadow:none;
}

/*** カエレバ用トラッキングimg対策 ***/
.kaerebalink-link1 img, .booklink-link2 img{display:none;}

/* ===============消しちゃダメ============== */
/* kaereba/yomereba Customize Settings 1.0.0 ver */
/* Created by Cazuki Hoshina */
/* Copyright (c) @cazuki All rights Reserved. */
/* ======================================== */

.kaerebalink-box, .booklink-box {
width: 100%;
margin: 0 0 2rem;
padding: 1rem;
background: #ffffff;
border: 1px solid;
border-color: #eaeaea #dddddd #d0d0d0;
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
box-sizing: border-box;
/zoom:1;
}
.kaerebalink-box:after, .booklink-box:after {
content:"";
display:block;
visibility:hidden;
height:0;
clear:both;
}
.kaerebalink-image, .booklink-image {
float:left;
width:128px;
margin:0;
text-align:center;
}
.kaerebalink-image img, .booklink-image img { width:128px; height:auto; }
.kaerebalink-info, .booklink-info { margin: 0 0 0 140px; line-height: 1.6rem; }
.kaerebalink-name, .booklink-name {
font-size: 1.0625rem;
font-weight: bold;
margin: 0;
}
.kaerebalink-name a, .booklink-name a { color: #2b2b2b; }
.kaerebalink-name a:hover, .booklink-name a:hover { text-decoration: underline; }
.kaerebalink-powered-date, .booklink-powered-date { font-size: 0.75rem; font-weight: normal; }
.kaerebalink-detail, .booklink-detail { font-size: 0.9375rem; margin: 0 0 0.5em; }
.kaerebalink-link1, .booklink-link2 { width:100%; }
.kaerebalink-link1 div, .booklink-link2 div {
float: left;
width: 49.5%;
margin-bottom: 1%;
font-size: 0.875rem;
font-weight: bold;
text-align: center;
box-sizing: border-box;
}
.kaerebalink-link1 div:nth-child(even), .booklink-link2 div:nth-child(even) { margin-left: 1%; }
.kaerebalink-link1 div a, .booklink-link2 div a { display:block; padding:3px 0; text-decoration:none; }
.shoplinkamazon a, .shoplinkrakuten a, .shoplinkrakukobo a, .shoplinkyahoo a, .shoplinkyahooAuc a,
.shoplinkseven a, .shoplinkbellemaison a, .shoplinkcecile a, .shoplinkkakakucom a,
.shoplinkkindle a, .shoplinkbk1 a, .shoplinkehon a, .shoplinkkino a,
.shoplinkjun a, .shoplinktoshokan a {
display:block;
text-decoration:none;
}
.shoplinkamazon a { color:#ffffff; background:#ff9900; }
.shoplinkkindle a { color:#ffffff; background:#1882c9; }
.shoplinkrakuten a { color:#ffffff; background:#bf0000; }
.shoplinkrakukobo a { color:#ffffff; background:#ff2626; }
.shoplinkyahoo a { color:#ffffff; background:#fc1d2f; }
.shoplinkyahooAuc a { color:#252525; background:#ffdb00; }
.shoplinkseven a { color:#ffffff; background:#225093; }
.shoplinkbellemaison a { color:#ffffff; background:#83be00; }
.shoplinkcecile a { color:#ffffff; background:#6b053d; }
.shoplinkkakakucom a { color:#ffffff; background:#00138e; }
.shoplinkbk1 a { color:#ffffff; background:#0484d2; }
.shoplinkehon a { color:#ffffff; background:#00006a; }
.shoplinkkino a { color:#ffffff; background:#003e9d; }
.shoplinkjun a { color:#4b5854; background:#d8c9b7; }
.shoplinktoshokan a { color:#ffffff; background:#29b6e9; }
.shoplinkwowma a { color:#ffffff; background:#eb5505; }
.shoplinkdocomo a { color:#ffffff; background:#cc0033; }
.booklink-footer { clear:both !important; }

@media only screen and (min-width:460px) and (max-width:640px) {
.kaerebalink-link1 div, .booklink-link2 div { float: none; width: 100%; }
.kaerebalink-link1 div:nth-child(even), .booklink-link2 div:nth-child(even) { margin-left: 0; }
}
@media only screen and (max-width:459px) {
.kaerebalink-image, .booklink-image {
float:none;
width:100%;
margin:0;
text-align:center;
}
.kaerebalink-image img, .booklink-image img { width:180px; height:auto; }
.kaerebalink-info, .booklink-info { margin: 0; }
.kaerebalink-link1 div, .booklink-link2 div { float: none; width: 100%; }
.kaerebalink-link1 div:nth-child(even), .booklink-link2 div:nth-child(even) { margin-left: 0; }
}

/* トップページボタン */
.button-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px;
  margin: 20px 0;
}

.button-link {
  display: block;
  color: #333;
  font-weight: bold;
  text-align: center;
  padding: 12px;
  border-radius: 8px;
  text-decoration: none;
  transition: filter 0.2s ease;
}

.button-link:hover {
  filter: brightness(0.95);
}

/* グラデーション背景（パステル系） */
.category-clean {
  background: linear-gradient(135deg, #ffb2b2, #ffefef);
}

.category-suimin {
  background: linear-gradient(135deg, #ffb2d8, #ffeff7);
}

.category-ikuji {
  background: linear-gradient(135deg, #ffb2ff, #ffefff);
}

.category-laundry {
  background: linear-gradient(135deg, #d8b2ff, #f7efff);
}

.category-kitchen {
  background: linear-gradient(135deg, #b2b2ff, #efefff);
}

.category-comfort {
  background: linear-gradient(135deg, #b2d8ff, #eff7ff);
}

.category-selfcare {
  background: linear-gradient(135deg, #b2ffff, #efffff);
}

.category-preparation {
  background: linear-gradient(135deg, #b2ffd8, #effff7);
}

.category-pet {
  background: linear-gradient(135deg, #b2ffb2, #efffef);
}

.category-hobby {
  background: linear-gradient(135deg, #d8ffb2, #f7ffef);
}

.category-laundry {
  background: linear-gradient(135deg, #ffffb2, #ffffef);
}

.category-other2 {
  background: linear-gradient(135deg, #ffd8b2, #fff7ef);
}

/* ====== 商品ボックス ====== */
.hb-product {
  display: grid;
  grid-template-columns: 150px 1fr; /* PC時：画像/本文の比率 */
  gap: 14px;
  padding: 14px;
  border: 1px solid #eee;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 2px 6px rgba(0,0,0,.04);
  margin: 18px 0;
  align-items: start;
  font-size: 14px;
  line-height: 1.6;
}

/* 画像 */
.hb-img {
  width: 100%;
  max-width: 300px; /* 楽天300x300推奨 */
  height: auto;
  border-radius: 8px;
  object-fit: cover;
  display: block;
}

/* 本文エリア */
.hb-body {
  display: grid;
  grid-template-rows: auto auto;
  gap: 10px;
}

.hb-title { 
  font-weight: 700; 
  margin: 2px 0 4px; 
}

/* ボタン縦2個 */
.hb-btns {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
  max-width: 360px;
}
.hb-btn {
  display: inline-block;
  text-align: center;
  padding: 10px 14px;
  border-radius: 999px;
  text-decoration: none;
  font-weight: 700;
  border: 1px solid transparent;
  white-space: nowrap;
  transition: background 0.2s ease, color 0.2s ease;
}
.hb-btn-rakuten {
  background: #f8b4b4;
  color: #4b5563 !important;
  border: 1px solid #f8b4b4;
}
.hb-btn-rakuten:hover {
  background: #fca5a5;
  color: #4b5563 !important;
}
.hb-btn-amazon {
  background: #fcd48d;
  color: #4b5563 !important;
  border: 1px solid #fcd48d;
}
.hb-btn-amazon:hover {
  background: #fbbf24;
  color: #4b5563 !important;
}

/* ====== スマホ対応 ====== */
@media (max-width: 640px) {
  .hb-product { 
    grid-template-columns: 1fr; 
  }

  /* ボタン幅を小さめにして中央寄せ */
  .hb-btns { 
    max-width: 80%; 
    margin: 0 auto; 
  }

  /* 画像：縮小＆中央寄せ */
  .hb-img {
    width: auto !important;
    max-width: 180px !important;       /* 古いブラウザ用フォールバック */
    max-width: clamp(150px, 42vw, 300px) !important; /* 近代ブラウザ */
    height: auto !important;
    margin: 0 auto 8px;
  }

  /* 商品名：ボタン幅に合わせて中央寄せ */
  .hb-title {
    max-width: 80%;
    margin: 0 auto 8px;
    text-align: center;
    padding-left: 0;
    overflow-wrap: anywhere;  
    word-break: break-word;   
  }
  .hb-title a { 
    display: inline-block; 
    max-width: 100%; 
  }
}