/* WordPress-specific styles: page content, Gutenberg basics and Contact Form 7, in the catalog's colours. */

/* Page content */
.entry{max-width:860px;margin:0 auto}
.entry-header{border:0;background:none}  /* site.css gives every <header> a bottom border */
.entry-title{margin:8px 0 28px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.entry-content{overflow-wrap:anywhere}
.entry-content>*:first-child{margin-top:0}
.entry-content h2{font-size:22px;margin:40px 0 14px;padding-left:12px;border-left:4px solid var(--green)}
.entry-content h3{font-size:18px;margin:30px 0 10px}
.entry-content img,.entry-content video{max-width:100%;height:auto}
.entry-content table{width:100%;border-collapse:collapse;margin:20px 0}
.entry-content th,.entry-content td{border:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top}
.entry-content th{background:#eef3eb;white-space:nowrap}
.entry-list{max-width:none}
.entry-grid{margin-bottom:32px}
.alignwide{max-width:1040px}
.alignleft{float:left;margin:0 20px 10px 0}
.alignright{float:right;margin:0 0 10px 20px}
.aligncenter{display:block;margin-left:auto;margin-right:auto}
.wp-caption-text,figcaption{color:var(--muted);font-size:12px}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.navigation.pagination{text-align:center}
.navigation.pagination .page-numbers{display:inline-block;margin:0 3px;padding:6px 12px;border:1px solid var(--line);border-radius:6px;text-decoration:none}
.navigation.pagination .current{background:var(--green);border-color:var(--green);color:#fff}
body.admin-bar .site-header{z-index:50}

/* Contact Form 7 */
.wpcf7{margin:28px 0}
.wpcf7 form{margin:0}
.wpcf7 form p{margin:0 0 22px}
.wpcf7 label{display:block;font-weight:700;font-size:14px}
.wpcf7 label .wpcf7-form-control-wrap{display:block;margin-top:8px;font-weight:400}
.wpcf7 .required,.wpcf7 .form-required{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:3px;background:#b3261e;color:#fff;font-size:11px;font-weight:700;vertical-align:1px}
.wpcf7 .form-optional{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:3px;background:#9eafa3;color:#fff;font-size:11px;font-weight:700;vertical-align:1px}
.wpcf7 input[type=text],.wpcf7 input[type=email],.wpcf7 input[type=tel],.wpcf7 input[type=url],.wpcf7 input[type=number],.wpcf7 input[type=date],.wpcf7 input[type=password],.wpcf7 select,.wpcf7 textarea{width:100%;max-width:100%;border:1px solid #9eafa3;border-radius:7px;padding:12px 16px;background:#fff;color:var(--ink);font:inherit;box-sizing:border-box}
.wpcf7 textarea{min-height:180px;line-height:1.8}
.wpcf7 input:focus,.wpcf7 select:focus,.wpcf7 textarea:focus{border-color:var(--green);outline:3px solid #c17c22;outline-offset:2px}
.wpcf7 .field-hint{display:block;margin-top:6px;color:var(--muted);font-size:12px;line-height:1.6}
.wpcf7 input[type=file]{max-width:100%}
.wpcf7 .wpcf7-list-item{display:block;margin:0 0 8px}
.wpcf7 .wpcf7-list-item label{display:inline;font-weight:400}
.wpcf7 input[type=checkbox],.wpcf7 input[type=radio]{margin-right:8px}
.wpcf7 .wpcf7-acceptance{display:block}
.wpcf7 input[type=submit],.wpcf7 .wpcf7-submit{display:inline-block;min-width:240px;padding:14px 28px;border:0;border-radius:6px;background:var(--green);color:#fff;font-weight:700;font-size:15px;cursor:pointer;transition:opacity .15s}
.wpcf7 input[type=submit]:hover{opacity:.88}
.wpcf7 input[type=submit]:disabled{background:#d8dfd5;color:#52634f;cursor:not-allowed}
.wpcf7 .wpcf7-spinner{margin:0 0 0 12px;vertical-align:middle}
.wpcf7-not-valid{border-color:#b3261e!important}
.wpcf7-not-valid-tip{display:block;margin-top:6px;color:#b3261e;font-size:12px}
.wpcf7 form .wpcf7-response-output{margin:24px 0 0;padding:14px 18px;border:2px solid #9eafa3;border-radius:8px;font-size:14px}
.wpcf7 form.sent .wpcf7-response-output{border-color:var(--green);background:#eef3eb}
.wpcf7 form.invalid .wpcf7-response-output,.wpcf7 form.unaccepted .wpcf7-response-output,.wpcf7 form.failed .wpcf7-response-output,.wpcf7 form.aborted .wpcf7-response-output,.wpcf7 form.spam .wpcf7-response-output{border-color:#b3261e;background:#fbeeed;color:#8a1b15}
.wpcf7 form[data-status=init] .wpcf7-response-output,.wpcf7 form.init .wpcf7-response-output{display:none}
@media(max-width:640px){.wpcf7 input[type=submit],.wpcf7 .wpcf7-submit{width:100%;min-width:0}.entry-title{font-size:26px}}

/* Enquiry form laid out like the original site: a heading per section, then rows of label | fields (docs/cf7-goods-inquiry.txt) */
.wpcf7 .inq h3{margin:30px 0 10px;font-size:18px}
.wpcf7 .inq-table{border-bottom:1px solid #ddd}
.wpcf7 .inq-row{display:grid;grid-template-columns:240px minmax(0,1fr);border-top:1px solid #ddd}
.wpcf7 .inq-th{padding:16px;background:#f2f2f2;font-size:14px;font-weight:700;line-height:1.6}
.wpcf7 .inq-th .required{margin-left:6px;padding:0;background:none;color:#a00;font-size:11px}
.wpcf7 .inq-td{padding:12px 16px;font-size:14px}
.wpcf7 .inq-td br,.wpcf7 .inq-th br{display:none}
.wpcf7 .inq-td p{margin:0}
.wpcf7 .inq-td .wpcf7-form-control-wrap{display:block}
.wpcf7 .inq-fields{display:flex;flex-wrap:wrap;gap:12px;max-width:66%}
.wpcf7 .inq-fields>*,.wpcf7 .inq-fields>p>.wpcf7-form-control-wrap{flex:1 1 0;min-width:0}
/* CF7's auto-paragraphing wraps the inputs in one <p> (<p><span class="wpcf7-form-control-wrap">...</span><span ...>...</span></p>),
   which would make them a single flex item: unwrap it so the spans are the columns */
.wpcf7 .inq-fields>p,.wpcf7 .inq-files>p{display:contents;margin:0}
.wpcf7 .inq-w8{max-width:66%}
.wpcf7 .inq-w4{max-width:33%}
/* 住所: CF7 puts both inputs in one <p> (with a hidden <br> between them), so they are not direct siblings of .inq-stack */
.wpcf7 .inq-stack>*+*,.wpcf7 .inq-stack .wpcf7-form-control-wrap~.wpcf7-form-control-wrap{margin-top:10px}
/* The two drop-downs (都道府県, お問い合わせ種別) sit in a narrow .inq-w4 cell that cuts the "ー以下から選択して…" text: give them the
   same width as the address box */
.wpcf7 .inq-w4:has(select){max-width:66%}
/* 商品番号／商品名: the code stays short and the name takes the rest of the row (data-name: CF7 5.2+; the class name: older CF7) */
.wpcf7 .inq-fields:has([data-name="product-name"]),.wpcf7 .inq-fields:has(.product-name){max-width:none}
.wpcf7 .inq-fields>.wpcf7-form-control-wrap[data-name="product-code"],.wpcf7 .inq-fields>p>.wpcf7-form-control-wrap[data-name="product-code"],
.wpcf7 .inq-fields>.wpcf7-form-control-wrap.product-code,.wpcf7 .inq-fields>p>.wpcf7-form-control-wrap.product-code{flex:0 1 190px}
.wpcf7 .inq-td small,.wpcf7 .inq-note{display:block;margin-top:6px;color:var(--muted);font-size:12px;line-height:1.6}
.wpcf7 .inq-td .wpcf7-list-item{display:inline-block;margin:0 20px 0 0}
.wpcf7 .inq-files>*+*{margin-top:10px}
.wpcf7 .inq-files{max-width:320px}
.wpcf7 .inq-accept{margin:24px 0 0;text-align:center}
.wpcf7 .inq-accept .wpcf7-list-item{display:inline-block;margin:0}
.wpcf7 .inq-accept .wpcf7-submit{display:block;margin:16px auto 0}
.wpcf7 .inq-company[hidden]{display:none}
@media(max-width:640px){
.wpcf7 .inq-row{grid-template-columns:1fr}
.wpcf7 .inq-th{padding:6px 8px;font-size:13px}
.wpcf7 .inq-td{padding:10px 4px}
.wpcf7 .inq-fields,.wpcf7 .inq-w8,.wpcf7 .inq-w4,.wpcf7 .inq-w4:has(select),.wpcf7 .inq-fields:has([data-name="product-name"]),.wpcf7 .inq-fields:has(.product-name){max-width:100%}
.wpcf7 .inq-fields>.wpcf7-form-control-wrap[data-name="product-code"],.wpcf7 .inq-fields>p>.wpcf7-form-control-wrap[data-name="product-code"],
.wpcf7 .inq-fields>.wpcf7-form-control-wrap.product-code,.wpcf7 .inq-fields>p>.wpcf7-form-control-wrap.product-code{flex:1 1 0}
}
