@charset "UTF-8";

:root{
--ink:#333; --muted:#666; --bg:#fff;
--tint:#fffbe5; --alt:#f4f6f7; --brand:#6f9e9a;
--ok:#2c4bc4; --ng:#c62828; --point:#ff8f00;
--border:#e5e5e5; --zebra:#fffdf2;
}
body{margin:0; color:var(--ink); line-height:1.8} .k_hinmoku_container{width:min(1080px,92%); margin:0 auto; padding:24px 0 64px} .k_section{
width:100vw;
margin-left:calc(50% - 50vw);
margin-right:calc(50% - 50vw);
padding:40px 0;
background:var(--bg);
overflow:hidden; box-sizing:border-box;
}
.k_section__inner{ width:min(1080px,92%); margin:0 auto; }
.section--tint { background: var(--tint); }
.section--alt  { background: var(--alt); }
.section--plain{ background: #fff; } .k_section-title{
text-align:center;
font-size:clamp(22px, 2.6vw, 32px);
font-weight:800; margin:0 0 24px;
}  .mainvisual.kaitori_hinmoku{
background:linear-gradient(180deg, rgba(198,197,197,1) 0%, rgba(249,247,242,1) 100%);
}
.k_hinmoku_mainvisual-inner{ max-width:1350px; margin:0 auto; }
.h1_section-title{ margin:1rem auto; font-size:2.2rem; color:#593918;}
.h1_section-title span{ color:red; }
.k_hinmoku_p{ margin:1rem auto; text-align:center; font-size:1.8rem; } .k_card{
background:#fff; border:1px solid var(--border);
border-radius:10px; padding:20px; box-shadow:0 1px 0 rgba(0,0,0,.03);
}
.card--media{
display:grid; grid-template-columns:280px 1fr; gap:30px; margin-bottom:20px; line-height: 2rem;
}
.card-media img{width:100%; border-radius:8px; margin-top:15%;}
.lead{color:var(--muted)}
.block-title{font-size:1.5rem; display:flex; align-items:center; gap:.5em; font-weight:700; margin: 1.2rem 0;} @media (max-width: 767.98px){
.card--media{ grid-template-columns:1fr; gap:12px; }
.card-media img{margin-top:0;}
.k_card{ padding:16px; }
.k_card li {font-size: 1.1rem;}
} .icon-list{list-style:none; padding:0}
.icon-list li{position:relative; padding-left:2em; margin:.4em 0; font-size: 1.1rem;}
.icon-list li::before{font-family: "Font Awesome 5 Free"; content:"\f075"; position:absolute; left:0;  color: #fac631; font-size: 1.4rem; font-weight:900;} .check-list{list-style:none; padding:0; margin-left: 1rem;}
.check-list li{position:relative; padding-left:2em; margin:.35em 0; font-size: 1.1rem;}
.check-list--ok li::before{content:"〇"; color:var(--ok); position:absolute; left:0; font-size: 1.2rem; font-weight:900}
.check-list--ng li::before{font-family: "Font Awesome 5 Free"; content:"\f00d"; color:var(--ng); position:absolute; left:0; font-size: 1.4rem; font-weight:900}
.dot-list{list-style:none; padding:0}
.dot-list li{position:relative; padding-left:2em; margin:.4em 0; font-size: 1.1rem;}
.dot-list li::before{font-family: "Font Awesome 5 Free"; content:"\f075"; position:absolute; left:0; color: #fac631; font-size: 1.4rem; font-weight:900} 
.mark{display:inline-grid; place-items:center; width:1.6em; height:1.6em; border-radius:50%}
.mark--ok{background:#b5cbf5; color:var(--ok)} .mark--ok::before{font-family: "Font Awesome 5 Free"; content:"\f044";}
.mark--ng{background:#ffebee; color:var(--ng)} .mark--ng::before{font-family: "Font Awesome 5 Free"; content:"\f044";}
.mark--point{background:#fcebd3; color:var(--point)} .mark--point::before{content:"!"}  .grid-list{
display:grid;
grid-template-columns:repeat(4, minmax(0,1fr)); list-style:none; padding:0; margin:0;
border:1px solid var(--border); border-bottom:none; gap:0;
}
.grid-list li{
background:#fff; border-right:1px solid var(--border); border-bottom:1px solid var(--border);
font-size:clamp(13px, 1.65vw, 16px); line-height:1.6;
padding:clamp(8px, 1.2vw, 14px) clamp(10px, 1.4vw, 16px);
word-break:break-word;
}
.grid-list li:nth-child(4n){ border-right:none; } .grid-list--rowzebra-gray li:nth-child(8n+1),
.grid-list--rowzebra-gray li:nth-child(8n+2),
.grid-list--rowzebra-gray li:nth-child(8n+3),
.grid-list--rowzebra-gray li:nth-child(8n+4){ background:#f3f4f5; }
.grid-list--rowzebra-cream li:nth-child(8n+1),
.grid-list--rowzebra-cream li:nth-child(8n+2),
.grid-list--rowzebra-cream li:nth-child(8n+3),
.grid-list--rowzebra-cream li:nth-child(8n+4){ background:var(--zebra); }
.icon-list li,
.check-list li,
.dot-list li {
margin: 1.1rem 0;
line-height: 1.4;
}
@media (max-width: 768px) {
.check-list {
margin-left: 0;
}
}
@media (max-width: 480px) {
.k_hinmoku_p {font-size: 1.1rem; text-align: left;}
.h1_section-title {font-size: 1.3rem; text-align: left;  padding: 0px;}
.section.kaitori_hinmoku {padding: 0 1%;}
.kaitori_hinmoku.card-wrapper {padding-top: 0px;}
.k_des {padding: 0.5rem;}
}