/*
Theme Name: Star Ticket Modern
Theme URI: https://www.star-ticket.jp/
Author: Star Ticket Website Renewal
Description: スターチケット向けレスポンシブテーマ。商品券・株主優待券の買取価格管理を搭載。
Version: 1.9.18
Requires at least: 6.2
Requires PHP: 8.0
Text Domain: starticket
*/
:root{--navy:#102b4e;--blue:#1759a3;--gold:#f4b544;--light:#f4f7fb;--text:#233349;--line:#dce4ef}*{box-sizing:border-box}body{margin:0;color:var(--text);font-family:-apple-system,BlinkMacSystemFont,'Noto Sans JP','Yu Gothic',Meiryo,sans-serif;line-height:1.75;background:#fff}a{color:var(--blue)}.wrap{max-width:1160px;margin:auto;padding:0 24px}.topbar{background:var(--navy);color:#fff;font-size:13px;padding:7px 0}.topbar .wrap{display:flex;justify-content:space-between;gap:16px}.site-header{background:#fff;box-shadow:0 2px 16px #122b4612;position:relative;z-index:5}.head-inner{display:flex;justify-content:space-between;align-items:center;gap:18px;min-height:84px}.brand{text-decoration:none;color:var(--navy);font-size:29px;font-weight:900;letter-spacing:.02em}.brand small{display:block;font-size:11px;letter-spacing:.12em;color:#637a96;font-weight:600}.nav{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.nav a{color:var(--navy);font-weight:700;text-decoration:none;font-size:14px}.nav a:hover{color:var(--blue)}.menu-toggle{display:none}.hero{background:linear-gradient(120deg,#102b4e,#15599c);color:#fff;padding:72px 0 76px;position:relative;overflow:hidden}.hero:after{content:'★';position:absolute;right:8%;top:-80px;font-size:340px;opacity:.06}.eyebrow{font-size:14px;letter-spacing:.16em;font-weight:800;color:#ffd483}.hero h1{font-size:clamp(32px,4.5vw,55px);line-height:1.35;margin:15px 0}.hero p{max-width:690px;font-size:17px;color:#e6eef8}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-block;border-radius:10px;padding:12px 24px;font-weight:800;text-decoration:none;background:var(--gold);color:#172f4e}.btn.secondary{background:#fff;color:var(--navy)}.section{padding:68px 0}.section.alt{background:var(--light)}.section h2{font-size:clamp(25px,3vw,34px);color:var(--navy);margin:0 0 12px}.lead{color:#66768b;margin:0 0 28px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.tile{background:#fff;border:1px solid var(--line);border-radius:16px;padding:27px;box-shadow:0 10px 30px #132c4c09}.tile h3{color:var(--navy);margin:0 0 10px}.tile .symbol{font-size:31px;margin-bottom:12px}.price-controls{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.price-controls input,.price-controls select{border:1px solid #b9c7d7;border-radius:9px;padding:11px 13px;background:#fff;min-height:44px;font-size:15px}.price-controls input{flex:1;min-width:190px}.table-scroll{overflow-x:auto;border-radius:14px;border:1px solid var(--line);background:#fff}.price-table{width:100%;border-collapse:collapse;min-width:620px}.price-table th{text-align:left;background:#eaf1fa;color:var(--navy);font-size:14px}.price-table td,.price-table th{padding:14px 16px;border-bottom:1px solid var(--line)}.price-table tr:last-child td{border-bottom:0}.price-value{font-weight:900;color:#c44726;font-size:19px;white-space:nowrap}.rate{color:#345777;font-weight:700}.notice{background:#fff9eb;border-left:4px solid var(--gold);padding:17px 21px;border-radius:8px;margin-top:22px}.footer{background:var(--navy);color:#dbe6f3;padding:48px 0 20px}.footer a{color:#fff}.footer strong{color:#fff}.footer-cols{display:grid;grid-template-columns:2fr 1fr;gap:30px}.footer-bottom{border-top:1px solid #ffffff30;margin-top:30px;padding-top:15px;font-size:13px}.page-body{max-width:880px;margin:50px auto;padding:0 24px;min-height:320px}.page-body h1{color:var(--navy)}.empty{padding:28px;text-align:center}.wp-block-image img{max-width:100%;height:auto}@media(max-width:800px){.topbar .wrap{display:block}.head-inner{min-height:70px;flex-wrap:wrap}.brand{font-size:24px}.menu-toggle{display:block;border:1px solid var(--line);background:#fff;border-radius:8px;padding:8px 12px;font-weight:700}.nav{display:none;width:100%;padding:0 0 18px;flex-direction:column;align-items:stretch;gap:0}.nav.open{display:flex}.nav a{padding:11px;border-bottom:1px solid var(--line)}.hero{padding:48px 0}.grid{grid-template-columns:1fr}.section{padding:44px 0}.footer-cols{grid-template-columns:1fr}}@media(max-width:450px){.wrap{padding:0 16px}.hero h1{font-size:31px}.btn{width:100%;text-align:center}}

/* Product images and fallback */
.st-image-cell{width:112px;min-width:112px}.st-product-image{display:block;width:88px;height:88px;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:10px}.st-image-placeholder{display:flex;align-items:center;justify-content:center;width:88px;height:88px;padding:8px;background:#edf2f7;border:1px dashed #b9c7d7;border-radius:10px;color:#52677e;font-size:12px;font-weight:700;text-align:center}.st-detail-layout{display:grid;grid-template-columns:minmax(220px,330px) 1fr;gap:30px;margin:24px 0}.st-detail-image .st-product-image,.st-detail-image .st-image-placeholder{width:100%;height:300px;max-width:330px}.st-detail-image .st-image-placeholder{font-size:22px}.st-detail-data{padding:18px 24px;border:1px solid var(--line);border-radius:14px}.st-breadcrumb{font-size:13px;color:#66768b}@media(max-width:650px){.st-detail-layout{grid-template-columns:1fr}.st-detail-image .st-product-image,.st-detail-image .st-image-placeholder{height:240px}.st-image-cell{width:84px;min-width:84px}.st-image-cell .st-product-image,.st-image-cell .st-image-placeholder{width:66px;height:66px;font-size:10px}}

/* X official timeline */
.st-x-timeline{max-width:680px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px;min-height:100px;overflow:hidden}.st-x-timeline .twitter-timeline{display:block;text-align:center;padding:18px}.st-x-note{max-width:680px;margin:12px auto 0;font-size:12px;color:#66768b}.st-x-timeline iframe{max-width:100%!important}

/* Privacy policy */
.st-privacy-policy{font-size:15px;line-height:1.9}.st-privacy-intro{background:#f4f7fb;border-left:4px solid var(--blue);padding:18px 22px;border-radius:8px}.st-privacy-index{padding:18px 24px;background:#f7f9fc;border:1px solid var(--line);border-radius:12px;margin:25px 0 35px}.st-privacy-index ol{margin:0;padding-left:24px}.st-privacy-index li{padding:3px 0}.st-privacy-section{padding:22px 0;border-bottom:1px solid var(--line);scroll-margin-top:25px}.st-privacy-section h2{font-size:clamp(18px,2.4vw,22px);color:var(--navy);line-height:1.5;margin:0 0 14px}.st-privacy-section p{margin:10px 0;overflow-wrap:anywhere}

/* Company information */
.st-company-profile{font-size:16px;line-height:1.85}.st-company-lead{color:#52677e;margin:0 0 24px}.st-company-table-wrap{border:1px solid var(--line);border-radius:14px;overflow:hidden}.st-company-table{width:100%;border-collapse:collapse}.st-company-table th,.st-company-table td{padding:18px 20px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.st-company-table tr:last-child th,.st-company-table tr:last-child td{border-bottom:0}.st-company-table th{width:28%;background:#eaf1fa;color:var(--navy);font-weight:800}.st-company-table td{background:#fff}@media(max-width:600px){.st-company-table th,.st-company-table td{display:block;width:100%;padding:12px 16px}.st-company-table th{border-bottom:0;padding-bottom:4px}.st-company-table td{padding-top:4px}}

/* Postal buyback guide */
.st-buyback-guide{font-size:15px;line-height:1.9;overflow-wrap:anywhere}.st-guide-lead{background:#f4f7fb;padding:18px 22px;border-radius:10px}.st-buyback-guide h2{font-size:clamp(19px,2.5vw,24px);color:var(--navy);margin:30px 0 16px}.st-guide-notices{background:#fff8ef;border:1px solid #f1d5b4;border-radius:12px;padding:18px 20px 18px 42px}.st-guide-notices li{margin:8px 0}.st-guide-index{background:#f4f7fb;border:1px solid var(--line);border-radius:12px;padding:18px 24px;margin:24px 0}.st-guide-index ol{padding-left:24px}.st-guide-step{border-bottom:1px solid var(--line);padding:16px 0;scroll-margin-top:30px}.st-guide-step p{margin:12px 0}.st-guide-step a{overflow-wrap:anywhere}

/* Contact Form 7 inquiry form */
.st-contact-page{max-width:760px;margin:0 auto}.st-contact-lead{color:#52677e;margin-bottom:26px}.st-contact-page .st-contact-field{margin:0 0 22px}.st-contact-page .st-contact-field label{display:block;font-weight:700;color:var(--navy);margin-bottom:8px}.st-contact-page .st-required,.st-contact-page .st-optional{display:inline-block;font-size:12px;border-radius:4px;padding:1px 8px;margin-right:8px}.st-contact-page .st-required{background:#b53237;color:white}.st-contact-page .st-optional{background:#e7edf4;color:#475569}.st-contact-page input[type=text],.st-contact-page input[type=email],.st-contact-page input[type=tel],.st-contact-page textarea{display:block;width:100%;max-width:100%;border:1px solid #b9c7d7;border-radius:9px;padding:12px 14px;background:white;color:var(--text);font:inherit;min-height:46px}.st-contact-page textarea{min-height:170px}.st-contact-page input:focus,.st-contact-page textarea:focus{outline:2px solid var(--blue);outline-offset:1px}.st-contact-page .wpcf7-list-item{margin:0}.st-contact-page .st-contact-consent{padding:17px 20px;background:#f4f7fb;border-radius:10px;margin:25px 0}.st-contact-page .st-contact-consent label{font-weight:400}.st-contact-page input[type=submit]{background:var(--blue);color:white;border:0;border-radius:10px;padding:13px 35px;font:inherit;font-weight:800;cursor:pointer;min-height:48px}.st-contact-page input[type=submit]:hover{background:var(--navy)}.st-contact-page .st-contact-submit{text-align:center}.st-contact-page .st-contact-message{padding:18px;background:#fff8ef;border:1px solid #f1d5b4;border-radius:10px}.st-contact-help{border-top:1px solid var(--line);margin-top:38px;padding-top:22px;font-size:14px}.st-contact-help h2{font-size:20px;color:var(--navy)}.st-contact-page .wpcf7-not-valid-tip{font-size:13px}.st-contact-page .wpcf7-response-output{border-radius:8px;padding:12px!important}

/* Ver.1.9.6: トップページ限定・3列の買取価格表 */
.st-home-price-table{min-width:0;table-layout:fixed}
.st-home-price-table th:nth-child(1){width:52%}
.st-home-price-table th:nth-child(2){width:25%}
.st-home-price-table th:nth-child(3){width:23%}
.st-home-price-table td{vertical-align:middle}
.st-home-name a{font-weight:700;text-decoration:none;overflow-wrap:anywhere}
.st-home-name a:hover{text-decoration:underline}
.st-home-price-table .price-value{font-size:18px}
.st-home-price-table .price-value small{display:block;font-size:12px;font-weight:400;color:#65758a;line-height:1.4}
.st-home-expiry{font-size:14px;white-space:nowrap}
.st-home-price-widget .st-no-results{padding:16px;text-align:center}
@media(max-width:600px){
 .st-home-price-table th,.st-home-price-table td{padding:10px 8px;font-size:12px}
 .st-home-price-table .price-value{font-size:15px}
 .st-home-price-table .price-value small{font-size:11px}
 .st-home-expiry{font-size:11px;white-space:normal;overflow-wrap:anywhere}
 .st-home-price-table th:nth-child(1){width:46%}
 .st-home-price-table th:nth-child(2){width:29%}
 .st-home-price-table th:nth-child(3){width:25%}
}

/* Ver.1.9.7: トップページ4列目に商品詳細リンクを追加 */
.st-home-price-table th:nth-child(1){width:40%}
.st-home-price-table th:nth-child(2){width:22%}
.st-home-price-table th:nth-child(3){width:21%}
.st-home-price-table th:nth-child(4){width:17%}
.st-home-detail a{display:inline-block;padding:6px 10px;border:1px solid var(--blue);border-radius:7px;color:var(--blue);font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap}
.st-home-detail a:hover,.st-home-detail a:focus{background:var(--blue);color:#fff}
@media(max-width:600px){
 .st-home-price-table th:nth-child(1){width:36%}
 .st-home-price-table th:nth-child(2){width:23%}
 .st-home-price-table th:nth-child(3){width:23%}
 .st-home-price-table th:nth-child(4){width:18%}
 .st-home-detail a{padding:5px 4px;font-size:10px;white-space:normal;text-align:center;line-height:1.4}
}

/* Ver.1.9.9: トップページの5列表示（額面未入力は買取率空欄） */
.st-home-price-table{min-width:690px;table-layout:fixed}
.st-home-price-table th:nth-child(1){width:34%}
.st-home-price-table th:nth-child(2){width:19%}
.st-home-price-table th:nth-child(3){width:13%}
.st-home-price-table th:nth-child(4){width:18%}
.st-home-price-table th:nth-child(5){width:16%}
.st-home-rate{font-weight:700;color:#345777;white-space:nowrap}
@media(max-width:600px){
 .st-home-price-table{min-width:630px}
 .st-home-price-table th:nth-child(1){width:32%}
 .st-home-price-table th:nth-child(2){width:19%}
 .st-home-price-table th:nth-child(3){width:13%}
 .st-home-price-table th:nth-child(4){width:19%}
 .st-home-price-table th:nth-child(5){width:17%}
 .st-home-rate{font-size:12px}
}

/* Ver.1.9.10: 4 columns on every screen; no horizontal scrolling. */
.st-home-price-widget .table-scroll{overflow-x:visible}
.st-home-price-widget .st-home-price-table{width:100%;min-width:0;table-layout:fixed}
.st-home-price-widget .st-home-price-table th:nth-child(1){width:42%}
.st-home-price-widget .st-home-price-table th:nth-child(2){width:22%}
.st-home-price-widget .st-home-price-table th:nth-child(3){width:15%}
.st-home-price-widget .st-home-price-table th:nth-child(4){width:21%}
.st-home-price-widget .st-home-price-table th:nth-child(5){width:auto}
@media(max-width:600px){
 .st-home-price-widget .st-home-price-table{min-width:0}
 .st-home-price-widget .st-home-price-table th:nth-child(1){width:39%}
 .st-home-price-widget .st-home-price-table th:nth-child(2){width:24%}
 .st-home-price-widget .st-home-price-table th:nth-child(3){width:14%}
 .st-home-price-widget .st-home-price-table th:nth-child(4){width:23%}
 .st-home-price-widget .st-home-price-table th,.st-home-price-widget .st-home-price-table td{padding:9px 4px;font-size:11px;overflow-wrap:anywhere}
 .st-home-price-widget .price-value{font-size:13px;white-space:normal}
 .st-home-price-widget .st-home-rate{font-size:11px;white-space:normal}
 .st-home-price-widget .st-home-detail a{padding:5px 3px;font-size:10px;white-space:normal}
}
@media(max-width:360px){
 .st-home-price-widget .st-home-price-table th,.st-home-price-widget .st-home-price-table td{padding:7px 3px;font-size:10px}
 .st-home-price-widget .price-value{font-size:12px}
 .st-home-price-widget .st-home-detail a{font-size:9px}
}

/* 全商品一覧への導線 */
.st-all-prices-link{text-align:center;margin:24px 0 8px}
.st-all-prices-link .btn{max-width:100%;white-space:normal}

/* Product detail: postal buyback guidance and return link (1.9.16) */
.st-detail-next-steps{margin-top:28px;padding:22px 24px;background:#f4f7fb;border:1px solid var(--line);border-radius:14px}
.st-detail-next-steps h2{margin:0 0 8px;font-size:20px;color:var(--navy)}
.st-detail-next-steps p{margin:0 0 18px;font-size:15px}
.st-detail-guide-link{display:inline-block;background:var(--blue);color:#fff;text-decoration:none;font-weight:700;padding:12px 20px;border-radius:9px;line-height:1.6}
.st-detail-guide-link:hover,.st-detail-guide-link:focus{background:var(--navy);color:#fff}
.st-detail-back-link{margin:22px 0 0}
.st-detail-back-link a{display:inline-block;padding:10px 0;font-weight:700}
@media(max-width:600px){.st-detail-next-steps{padding:18px 16px}.st-detail-guide-link{display:block;text-align:center}}
