/*
Theme Name: 海外FX LABO
Description: 海外FX LABOの比較トップページ・記事・カテゴリ用テーマ。
Version: 1.3.0
Template: kaigai-fx-blog-theme
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: kaigaifx-labo
License: GPL v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

:root{--ink:#303632;--muted:#626b66;--blue:#075c45;--navy:#064735;--line:#d9dfd9;--paper:#f5f7f3;--gold:#a88432;--lime:#d5bd6c;--radius:4px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:#eff1ee;color:var(--ink);font:16px/1.85 "Noto Sans JP","Yu Gothic",Meiryo,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:hover{color:var(--blue)}button{font:inherit}a,button,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #b38c2d;outline-offset:4px}.wrap{width:min(1140px,calc(100% - 64px));margin:auto}.skip{position:absolute;top:-100px;left:20px;padding:12px;background:white;z-index:99}.skip:focus{top:12px}.header{background:white;border-top:4px solid var(--navy)}.header-inner{min-height:95px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;gap:12px;white-space:nowrap}.brand-mark{width:43px;height:43px;display:grid;place-items:center;font:bold 30px Georgia,serif;color:#fff;background:var(--blue);border:2px solid #b89943;box-shadow:inset 0 0 0 3px white}.brand-name{font-size:1.65rem;font-weight:850;line-height:1.4;letter-spacing:-.05em}.brand-name b{color:var(--blue);letter-spacing:0}.brand small{font-size:.72rem;letter-spacing:.09em;color:var(--muted);display:block}.header-copy{text-align:right;font-size:.75rem;line-height:1.8;color:var(--muted);margin:0}.header-copy strong{font-size:.85rem;color:var(--ink)}.nav-bar{background:var(--blue);border-bottom:3px solid #a6b83c}.nav{display:grid;grid-template-columns:.65fr 1fr 1.35fr 1.15fr 1.3fr .75fr;font-size:.875rem;color:white}.nav a{padding:13px 10px;position:relative;text-align:center;border-left:1px solid #ffffff35;font-weight:700}.nav a:last-child{border-right:1px solid #ffffff35}.nav a:hover,.nav a.active{background:#527b29;color:white}.menu-button{display:none}.original-hero{background:#070707;width:min(1204px,100%);margin:auto}.original-hero img{display:block;width:100%;height:auto}main{width:min(1204px,100%);margin:auto;background:white}.content-intro{padding:22px 0 5px}.breadcrumb{font-size:.75rem;color:var(--muted);margin:0 0 25px}.breadcrumb span{margin:0 12px;color:#9b9f9c}.page-title{border-left:6px solid var(--blue);padding:3px 0 3px 19px}.page-title p{font-size:.875rem;color:var(--muted);margin:0 0 5px}.page-title h1{font-size:1.8rem;line-height:1.6;margin:0;font-weight:800}.page-title h1 span{display:inline-block;font-size:1.45rem}.intro-text{font-size:.95rem;line-height:2;margin:22px 0}.contents-links{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);background:#f5f7f2;margin-top:23px}.contents-links a{padding:14px 17px;border-right:1px solid var(--line);display:flex;gap:10px;justify-content:space-between;font-size:.875rem;font-weight:700}.contents-links a:last-child{border-right:0}.contents-links a:hover{background:#e7eedf}.contents-links span{color:var(--blue)}.section{padding:36px 0}.section-heading{margin-bottom:21px;display:flex;align-items:center;justify-content:space-between;gap:20px}.section-heading h2{font-size:1.4rem;line-height:1.65;border-left:5px solid var(--blue);padding-left:13px;margin:0}.section-heading p{font-size:.875rem;color:var(--muted);margin:12px 0 0}.section-label{font-size:.8rem;color:var(--muted);white-space:nowrap}.criteria{padding-bottom:12px}.criteria-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 27px}.criteria-grid a{display:flex;align-items:center;border-bottom:1px dotted #dce2d4;padding:5px 0;gap:14px;font-size:.85rem}.criteria-grid b{padding:9px 13px;min-width:123px;background:#edf2de;color:var(--blue);text-align:center;font-size:.875rem}.criteria-grid a:hover b{background:#dbe9c0}.table-wrap{overflow:auto;border:1px solid #b9c8a0;border-top:4px solid #9eb13e}table{border-collapse:collapse;width:100%;text-align:center;font-size:.85rem;white-space:nowrap}caption{text-align:left;padding:12px 16px;background:var(--blue);color:white;font-size:.85rem}thead th{background:#edf2de;color:#42553c;font-weight:700;padding:14px 12px;border-bottom:2px solid #a6b745}th,td{border-right:1px solid #e0e5d7;border-bottom:1px dotted #ccd6bc;padding:15px 12px}tr>*:last-child{border-right:0}tbody tr:last-child>*{border-bottom:0}tbody th{text-align:left;font-size:1.04rem;font-family:Arial,sans-serif;color:#244b3d}tbody tr:nth-child(even){background:#f8faf5}tbody tr:hover{background:#f0f5e6}tbody tr:nth-child(-n+3){background:#fffdf3}td a{color:var(--blue);font-weight:700;border-bottom:1px solid #96b2a3}.table-rank{width:38px;height:38px;display:inline-flex;align-items:baseline;justify-content:center;padding-top:3px;background:var(--blue);color:white;border:3px solid #bd9942;font:bold 1.3rem/1.5 Georgia,serif}.table-rank small{font:400 .65rem sans-serif;margin-left:2px}.table-rank.rank-2{border-color:#a9b6ba}.table-rank.rank-3{border-color:#b78364}.rank-dash{color:#a0a9a0}.note{font-size:.75rem;color:var(--muted);line-height:1.9;margin:15px 0 0}.full-comparison{text-align:center;margin-top:20px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:24px;font-size:.875rem;font-weight:700;line-height:1.6;padding:13px 22px;background:white;border:1px solid #b7c7bd;border-radius:4px;transition:background .15s}.btn:hover{background:#edf3e9;color:var(--navy)}.btn.primary{color:white;background:#096347;border:1px solid #07513c;box-shadow:0 3px 0 #043c2c}.btn.primary:hover{background:#064b37}.text-link{color:var(--blue);font-weight:700;font-size:.875rem;text-decoration:underline;text-underline-offset:4px}.all-brokers{margin-top:23px}.all-brokers summary{cursor:pointer;font-size:.875rem;font-weight:700;background:#f3f5ef;border:1px solid var(--line);padding:13px 17px}.broker-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-top:0}.broker-small{padding:16px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.broker-small:hover{background:#f2f7ed}.broker-small strong{display:block;font:700 1rem/1.6 Arial,sans-serif}.broker-small span{font-size:.75rem;color:var(--muted)}.ranking-section{padding-top:18px}.ranking-card{border:1px solid #c7cfc2;margin-bottom:29px;background:white;box-shadow:0 3px 8px #17302107}.ranking-heading{display:flex;align-items:center;gap:22px;background:linear-gradient(100deg,#f5eed8,#fffef8);border-bottom:1px solid #d9c790;border-top:4px solid #b59844;padding:15px 22px}.rank-badge{width:76px;flex-shrink:0;text-align:center;color:#7c601d;border:1px solid #d4be7b;background:#fffbef;padding:4px 6px}.rank-badge>span{font-size:.7rem;font-weight:700;display:block}.rank-badge strong{font:bold 2.1rem/1.15 Georgia,serif}.rank-badge small{font:700 .85rem sans-serif;margin-left:3px}.ranking-heading p{font-size:.8rem;color:#807040;margin:0 0 3px}.ranking-heading h3{font:700 1.6rem/1.5 Arial,sans-serif;margin:0;color:#313b32}.ranking-heading h3 small{font:.78rem/1.8 "Yu Gothic",Meiryo,sans-serif;display:inline-block;margin-left:7px;color:var(--muted)}.rank-category{margin-left:auto;font-size:.75rem;text-align:center;color:#877344;letter-spacing:.04em}.rank-2 .ranking-heading{border-top-color:#a8b3b6;background:linear-gradient(100deg,#edf1f2,#fcfdfd);border-bottom-color:#ced7d8}.rank-2 .rank-badge{background:#f7fafb;border-color:#b9c6c8;color:#60747b}.rank-3 .ranking-heading{border-top-color:#b27c58;background:linear-gradient(100deg,#f6eee8,#fffdfa);border-bottom-color:#dec6b4}.rank-3 .rank-badge{background:#fff9f5;border-color:#d7b498;color:#a06a44}.ranking-body{display:grid;grid-template-columns:290px 1fr}.broker-panel{padding:27px 22px;background:#fcfdfb;border-right:1px solid var(--line);text-align:center}.broker-name{font:800 2.05rem/1.5 Arial,sans-serif;letter-spacing:-.035em;margin:3px 0 13px}.broker-name.xmtrading{color:#c42a32}.broker-name.exness{color:#292929}.broker-name.fxgt{color:#007e67}.tag{font-size:.75rem;background:#eef2e7;color:#536644;display:inline-block;padding:3px 10px;border:1px solid #dde5d2}.broker-panel dl{text-align:left;margin:23px 0}.broker-panel dl>div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px dotted #cdd6c7;padding:8px 0;font-size:.8rem}.broker-panel dt{color:var(--muted)}.broker-panel dd{margin:0;font-weight:700}.broker-panel .btn{width:100%;padding:13px 10px;gap:10px}.broker-detail{padding:27px 30px}.broker-detail h4{font-size:1.2rem;color:var(--blue);line-height:1.7;margin:0 0 10px}.broker-detail p{font-size:.9rem;line-height:1.95;margin:0 0 20px}.broker-detail h5{font-size:.85rem;background:#eef3e6;color:#445e32;border-left:3px solid #96ab42;padding:8px 12px;margin:0}.broker-detail ul{list-style:none;padding:0;margin:12px 0 20px;font-size:.875rem}.broker-detail li{padding:6px 0 6px 23px;position:relative}.broker-detail li:before{content:'✓';position:absolute;left:0;color:#7a932a;font-weight:700}.soft{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.eyebrow{font-size:.8rem;font-weight:700;color:var(--blue);margin:0 0 8px}.learning{display:grid;grid-template-columns:.9fr 1.35fr;gap:40px;align-items:center}.learning h2{font-size:1.5rem;line-height:1.7;margin:0 0 15px}.learning p{font-size:.875rem;color:var(--muted);line-height:2}.step-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.step{display:flex;align-items:center;gap:12px;background:white;border:1px solid #ccd6c3;padding:15px;font-size:.875rem;font-weight:700}.step:hover{border-color:var(--blue)}.step-num{font:500 1.6rem Georgia,serif;color:#8b9f4d}.step small{display:block;color:var(--muted);font-weight:400;font-size:.72rem;margin-top:4px}.step-arrow{margin-left:auto;color:var(--blue)}.article-layout{display:grid;grid-template-columns:1fr 265px;gap:30px}.article-list{border-top:1px solid var(--line)}.article{display:grid;grid-template-columns:78px 1fr 20px;gap:20px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line)}.article-number{display:grid;place-items:center;width:78px;height:65px;font:600 .95rem Arial,sans-serif;color:var(--blue);background:#e8eedd;border:1px solid #d7dfc8}.article small{font-size:.75rem;color:var(--muted)}.article h3{font-size:.95rem;line-height:1.85;margin:5px 0 0}.article-arrow{color:var(--blue)}.article-extra summary{padding:15px 0;cursor:pointer;font-size:.875rem;color:var(--blue)}.checklist{align-self:start;border:1px solid #c4cfb8;background:white;padding:22px}.checklist h3{font-size:1.05rem;line-height:1.7;margin:8px 0 17px}.check-item{font-size:.8rem;padding:12px 0;border-top:1px dotted #c9d4bb;display:flex;gap:10px}.check-item span{font:500 1.05rem/1.7 Georgia,serif;color:#91a63c}.checklist p:last-child{font-size:.75rem;color:var(--muted)}.footer{background:white;border-top:4px solid var(--blue);padding:33px 0 20px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:23px}.footer-links{display:flex;gap:22px;font-size:.8rem;flex-wrap:wrap}.footer p{font-size:.75rem;color:var(--muted);line-height:1.95}.footer-bottom{display:flex;justify-content:space-between;gap:20px;font-size:.75rem;color:var(--muted);border-top:1px solid var(--line);padding-top:17px;margin-top:23px}.footer-bottom a{color:var(--blue)}
@media(max-width:1000px){.wrap{width:calc(100% - 42px)}.ranking-body{grid-template-columns:260px 1fr}.ranking-heading h3 small{display:block;margin-left:0}.ranking-heading{gap:16px}.broker-detail{padding:24px}.criteria-grid a{gap:10px;font-size:.8rem}.criteria-grid b{min-width:110px}.contents-links a{padding:13px;font-size:.8rem}.article-layout{grid-template-columns:1fr 240px;gap:25px}.page-title h1{font-size:1.6rem}.nav{font-size:.8rem}.nav a{padding:13px 7px}}
@media(max-width:760px){body{font-size:16px}.wrap{width:calc(100% - 30px)}.header-inner{min-height:76px}.header-copy{display:none}.brand-name{font-size:1.3rem}.brand small{font-size:.65rem}.brand-mark{width:37px;height:37px;font-size:25px}.menu-button{display:block;font-size:.8rem;background:white;border:1px solid #b4c7b8;padding:8px 10px;border-radius:3px}.nav-bar{border-bottom-width:2px}.nav{display:none;width:100%;grid-template-columns:1fr 1fr}.nav.open{display:grid}.nav a{border-bottom:1px solid #ffffff35;padding:13px 7px}.original-hero{width:100%}.content-intro{padding-top:15px}.breadcrumb{font-size:.7rem;margin-bottom:19px}.page-title{padding-left:12px;border-left-width:4px}.page-title p{font-size:.75rem}.page-title h1{font-size:1.35rem;line-height:1.65}.page-title h1 span{font-size:1.05rem}.intro-text{font-size:.875rem;margin:19px 0}.intro-text br{display:none}.contents-links{grid-template-columns:1fr 1fr;margin-top:18px}.contents-links a{font-size:.8rem;border-bottom:1px solid var(--line);padding:13px 10px}.contents-links a:nth-child(even){border-right:0}.contents-links a:nth-last-child(-n+2){border-bottom:0}.section{padding:27px 0}.section-heading{margin-bottom:18px;gap:10px;align-items:start;flex-wrap:wrap}.section-heading h2{font-size:1.15rem;padding-left:10px;border-left-width:4px}.section-heading p{font-size:.8rem}.criteria{padding-bottom:3px}.criteria-grid{grid-template-columns:1fr;gap:5px}.criteria-grid a{font-size:.8rem}.criteria-grid b{padding:7px 10px;min-width:113px;font-size:.8rem}.table-wrap table{min-width:900px}caption{font-size:.75rem;white-space:normal}th,td{padding:13px 11px}.table-wrap tbody th{position:sticky;left:0;background:#f7f9f1;box-shadow:1px 0 #dce4d3}.full-comparison .btn{width:100%;font-size:.8rem;padding:13px 8px;gap:12px}.note{font-size:.75rem}.broker-grid{grid-template-columns:1fr 1fr}.broker-small{padding:13px}.broker-small strong{font-size:.85rem}.ranking-heading{gap:12px;padding:12px}.rank-badge{width:61px;padding:4px}.rank-badge strong{font-size:1.8rem}.ranking-heading h3{font-size:1.4rem}.ranking-heading h3 small{font-size:.7rem}.ranking-heading p{font-size:.7rem}.rank-category{display:none}.ranking-body{grid-template-columns:1fr}.broker-panel{border-right:0;border-bottom:1px solid var(--line);padding:22px}.broker-name{font-size:2rem;margin-top:0}.broker-panel dl{margin:18px 0;display:grid;grid-template-columns:repeat(3,1fr)}.broker-panel dl>div{display:block;border-bottom:0;border-right:1px solid var(--line);padding:0 7px;text-align:center;font-size:.75rem}.broker-panel dl>div:last-child{border-right:0}.broker-panel dd{margin-top:4px}.broker-detail{padding:21px}.broker-detail h4{font-size:1.08rem}.broker-detail p{font-size:.875rem}.broker-detail ul{font-size:.85rem}.broker-detail .text-link{font-size:.8rem}.learning{grid-template-columns:1fr;gap:23px}.learning h2{font-size:1.4rem}.step-grid{gap:9px}.step{padding:12px 9px;font-size:.8rem;gap:8px}.step small{font-size:.7rem}.step-num{font-size:1.4rem}.step-arrow{display:none}.article-layout{grid-template-columns:1fr;gap:23px}.article{grid-template-columns:58px 1fr 14px;gap:12px;padding:18px 0}.article-number{width:58px;height:61px;font-size:.75rem}.article h3{font-size:.875rem}.footer-top{align-items:start;flex-direction:column}.footer-links{gap:18px}.footer-bottom{gap:10px}.text-link{font-size:.85rem}.mobile-hint{display:block}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* WordPress article and archive layouts */
.admin-bar .header{top:32px}.document-wrap{width:min(820px,calc(100% - 40px));margin:45px auto 65px}.breadcrumbs{font-size:.8rem;color:var(--muted);margin-bottom:25px}.document-title{font-size:clamp(1.7rem,3vw,2.4rem);line-height:1.6;margin:18px 0 22px;overflow-wrap:anywhere}.document-meta{font-size:.8rem;color:var(--muted);padding-bottom:26px;border-bottom:1px solid var(--line)}.entry-content{line-height:2;overflow-wrap:anywhere;margin-top:35px}.entry-content>*{max-width:100%}.entry-content p{margin:1.4em 0}.entry-content h2{font-size:1.55rem;line-height:1.7;background:#eff4fd;border-left:4px solid var(--blue);padding:14px 20px;margin:2.3em 0 1em}.entry-content h3{font-size:1.25rem;line-height:1.7;border-bottom:2px solid var(--line);padding-bottom:10px;margin-top:2em}.entry-content a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}.entry-content img,.wp-post-image{max-width:100%;height:auto;border-radius:8px}.entry-content iframe{max-width:100%}.entry-content table{white-space:normal;display:block;max-width:100%;overflow:auto}.entry-content blockquote{border-left:3px solid #bdcce9;background:var(--paper);margin:24px 0;padding:8px 22px;color:var(--muted)}.entry-content pre{overflow:auto;background:#edf2f8;padding:20px}.entry-content .alignwide{width:100%}.entry-content .aligncenter{display:block;margin-inline:auto}.entry-content .alignleft{float:left;margin:0 20px 20px 0}.entry-content .alignright{float:right;margin:0 0 20px 20px}.entry-content:after{content:"";display:block;clear:both}.navigation.pagination,.post-navigation{margin-top:30px}.nav-links{display:flex;gap:12px;flex-wrap:wrap;justify-content:space-between}.page-numbers{padding:8px 15px;border:1px solid var(--line);border-radius:6px}.page-numbers.current{background:var(--blue);color:white}.archive-intro{margin-bottom:30px;color:var(--muted)}.post-thumbnail{margin:30px 0}.comments-area{margin-top:45px}.comment-list{padding-left:20px}.comment-form label{display:block}.comment-form input:not([type=checkbox]),.comment-form textarea,.search-field{max-width:100%;border:1px solid #b8c3d3;padding:12px;border-radius:5px;font:inherit}.comment-form textarea{width:100%}.form-submit input,.search-submit{background:var(--blue);color:white;border:0;padding:12px 20px;border-radius:5px;cursor:pointer}.wp-caption{max-width:100%}.wp-caption-text,.gallery-caption{font-size:.8rem;color:var(--muted)}.sticky{border-left:3px solid var(--blue);padding-left:15px}.bypostauthor{border-left:2px solid var(--line);padding-left:12px}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}.screen-reader-text:focus{clip:auto!important;clip-path:none;height:auto;width:auto;left:10px;top:10px;background:white;padding:15px;z-index:100000}.document-wrap .nav-previous,.document-wrap .nav-next{max-width:47%;font-size:.875rem}.document-wrap .post-navigation a{color:var(--blue)}@media(max-width:782px){.admin-bar .header{top:46px}}@media(max-width:600px){.admin-bar .header{top:0}.entry-content h2{font-size:1.3rem;padding:12px 15px}.document-wrap{margin-top:28px}}

/* Preserve readable article headings and the parent theme's affiliate banners. */
.entry-content h2{color:var(--ink)!important;background:#eef3e6!important}
.entry-content .broker-banner{margin:28px 0;padding:24px;background:#064735;color:white;border:1px solid #b59844;border-radius:5px}
.entry-content .broker-banner h3{color:white;border:0;margin:10px 0;font-size:1.25rem}
.entry-content .broker-banner p{color:#e2ecdf;margin:10px 0 18px}
.entry-content .broker-banner .tag{background:#e7d392;color:#3d3419;border:0}
.entry-content .broker-banner .btn-gold{background:#e7d392;color:#253a2c;text-decoration:none;border-color:#c6ab60}
.document-wrap{padding:26px 30px}.document-wrap .breadcrumbs{margin-bottom:20px}
@media(max-width:760px){.document-wrap{padding:20px 16px;width:calc(100% - 24px)}}

/* Tools navigation */
.nav{grid-template-columns:.65fr .9fr 1.2fr 1fr 1.15fr .7fr .85fr}@media(max-width:760px){.nav{grid-template-columns:1fr 1fr}}

.fxl-related{margin:28px 0;padding:20px 24px;border:1px solid #d6dfce;border-left:4px solid #a88432;background:#f4f7ed}.fxl-related h2{font-size:1.15rem;margin:0 0 10px}.fxl-related a{text-decoration:underline;color:#075c45}.fxl-related p{margin:8px 0}.fxl-ad-note{font-size:12px;color:#687163;margin:12px 0}.breadcrumbs{display:flex;flex-wrap:wrap;gap:8px}.breadcrumbs a{text-decoration:underline}
