:root{--primary-color: #2563EB;--primary-hover: #1D4ED8;--secondary-color: #10B981;--accent-color: #F59E0B;--bg-color: #FFFFFF;--bg-light: #F3F4F6;--text-main: #1F2937;--text-muted: #6B7280;--border-color: #E5E7EB;--white: #ffffff;--black: #000000;--font-heading: "Inter", sans-serif;--font-body: "Noto Sans JP", sans-serif;--container-width: 1200px;--header-height: 70px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: 1rem}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{font-family:var(--font-body);color:var(--text-main);line-height:1.6;background-color:var(--bg-color);overflow-x:hidden}a{text-decoration:none;color:inherit;transition:color .2s}ul{list-style:none}main{padding-top:var(--header-height)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.2;margin-bottom:1rem}.container{width:100%;max-width:var(--container-width);margin:0 auto;padding:0 1.5rem}.text-success{color:var(--secondary-color)}.text-inherit{color:inherit}.no-underline{text-decoration:none}.text-center{text-align:center}.bg-white{background-color:var(--white)}.mt-8{margin-top:2rem}.mb-8{margin-bottom:2rem}.mr-2{margin-right:.5rem}.mr-4{margin-right:1rem}.article-body :where(.content-section>h2,h2.section-title){scroll-margin-top:calc(var(--header-height) + 1.25rem)}.article-body :where(.content-section>h2,h2.section-title):before{content:"";display:inline-block;width:.42rem;height:1.15em;margin-right:.6rem;border-radius:999px;background:#f59e0b;vertical-align:-.16em}.article-body :where(p,li,dd,td,.alert,.notice-box,.trademark-note,.caption) strong,.article-body mark,.marker-yellow,.highlight-marker{color:#111827;font-weight:900;background:linear-gradient(transparent 58%,#fef08a 58%);padding:0 .08em;-webkit-box-decoration-break:clone;box-decoration-break:clone}.article-body :where(.alert-warning,.warning-item,.cons,.careful) strong,.article-body .marker-red,.article-body .text-danger,.marker-red,.text-danger{color:#b91c1c;font-weight:900;background:linear-gradient(transparent 58%,#fecaca 58%);padding:0 .08em;-webkit-box-decoration-break:clone;box-decoration-break:clone}.article-body :where(.notice-box,.intent-note,.answer-section,.proof-section){position:relative}.article-body :where(.notice-box,.intent-note,.answer-section,.proof-section):before{content:"先に確認";display:inline-flex;align-items:center;min-height:1.65rem;margin-bottom:.55rem;padding:.18rem .55rem;border-radius:999px;background:#fef3c7;color:#92400e;font-size:.76rem;font-weight:900;line-height:1.3}.article-body .answer-section:before,.article-body .proof-section:before{content:"結論";background:#dbeafe;color:#1d4ed8}.article-body .intent-note:before{content:"この記事の対象"}.article-body .skim-answer,.article-body .key-answer,.article-body .point-box{border-left:4px solid #F59E0B;border-radius:var(--radius-md);background:#fffbeb;color:#78350f;font-weight:800;line-height:1.8;padding:1rem 1.15rem}.btn{display:inline-block;padding:.75rem 1.5rem;border-radius:var(--radius-md);font-weight:600;text-align:center;cursor:pointer;transition:all .3s ease}.btn-primary{background-color:var(--primary-color);color:var(--white)}.btn-primary:hover{background-color:var(--primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background-color:var(--bg-light);color:var(--text-main)}.btn-secondary:hover{background-color:#e5e7eb}.btn-outline{border:1px solid var(--primary-color);color:var(--primary-color);background:transparent}.btn-outline:hover{background-color:var(--primary-color);color:var(--white)}.btn-sm{padding:.5rem 1rem;font-size:.875rem}.site-header{height:var(--header-height);background-color:#fffffff2;backdrop-filter:blur(10px);position:fixed;top:0;left:0;width:100%;z-index:1000;box-shadow:var(--shadow-sm);display:flex;align-items:center}.site-header .container{display:flex;justify-content:space-between;align-items:center;width:100%}.logo{font-size:1.35rem;font-weight:800;color:var(--primary-color);letter-spacing:0;white-space:nowrap;min-width:0}.main-nav ul{display:flex;gap:2rem}.main-nav a{font-weight:500;color:var(--text-main)}.main-nav a:hover{color:var(--primary-color)}.hero{min-height:520px;padding:5rem 0 4rem;background:linear-gradient(90deg,#09152de0,#09152db8 42%,#09152d33),url(/images/esim-hero.webp) center / cover no-repeat;position:relative;overflow:hidden;color:var(--white)}.hero .container{min-height:390px;display:flex;align-items:center;position:relative;z-index:1}.hero-content{max-width:670px;width:100%;min-width:0}.hero-kicker{display:inline-flex;align-items:center;gap:.5rem;margin-bottom:1.25rem;padding:.4rem .75rem;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:#ffffff1f;color:#dbeafe;font-size:.9rem;font-weight:700}.hero h1{font-size:3.75rem;letter-spacing:0;color:var(--white);margin-bottom:1.5rem;overflow-wrap:anywhere}.hero h1 span{display:inline}.hero p{font-size:1.25rem;color:#e5e7eb;margin-bottom:2rem;max-width:620px;overflow-wrap:anywhere}.hero-actions{display:flex;gap:1rem;flex-wrap:wrap}.hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;max-width:580px;margin-top:2rem}.hero-stat{border-left:1px solid rgba(255,255,255,.28);padding-left:1rem}.hero-stat strong{display:block;font-size:1.35rem;line-height:1.2}.hero-stat span{display:block;color:#cbd5e1;font-size:.85rem}.finder-section{padding:1.5rem 0;background:#eef2ff;border-bottom:1px solid #DBEAFE}.finder-form{display:grid;grid-template-columns:minmax(220px,1.35fr) minmax(150px,.75fr) auto;gap:1rem;align-items:end}.field-group{display:flex;flex-direction:column;gap:.4rem}.field-group label{color:#334155;font-size:.85rem;font-weight:700}.field-group select{width:100%;min-height:48px;padding:.7rem .85rem;border:1px solid #CBD5E1;border-radius:var(--radius-md);background-color:var(--white);color:var(--text-main);font:inherit}.finder-form .btn{min-height:48px}.trust-strip{padding:1rem 0;background:var(--white);border-bottom:1px solid var(--border-color)}.trust-strip .container{display:flex;align-items:center;justify-content:center;gap:1.5rem;flex-wrap:wrap;color:#475569;font-size:.92rem}.trust-strip strong{color:#0f172a}section{padding:5rem 0}.section-header{text-align:center;max-width:700px;margin:0 auto 4rem}.section-header h2{font-size:2.25rem;margin-bottom:1rem;color:#111827}.section-header p{color:var(--text-muted);font-size:1.125rem}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.feature-card{background:var(--white);padding:2rem;border-radius:var(--radius-lg);border:1px solid var(--border-color);transition:all .3s ease}.feature-card:hover{box-shadow:var(--shadow-md);border-color:var(--primary-color);transform:translateY(-5px)}.icon-box{width:50px;height:50px;background-color:#eef2ff;color:var(--primary-color);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:1.5rem;margin-bottom:1.5rem}.feature-card h3{margin-bottom:1rem;font-size:1.25rem}.feature-card p{color:var(--text-muted);font-size:.95rem}.comparison{background-color:var(--bg-light)}.comparison-wrapper{overflow-x:auto;background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.comparison-table{width:100%;border-collapse:collapse}.comparison-table th,.comparison-table td{padding:1.5rem;text-align:left;vertical-align:top}.comparison-table tbody tr{border-bottom:1px solid var(--border-color)}.comparison-table th{background-color:#f9fafb;font-weight:600;color:var(--text-muted);font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;border-bottom:2px solid var(--border-color)}.comparison-table tbody tr:last-child{border-bottom:none}.comparison-table th:nth-child(4),.comparison-table td:nth-child(4),.comparison-table th:nth-child(5),.comparison-table td:nth-child(5){text-align:center}.comparison-table td:last-child{text-align:center;white-space:nowrap}.provider-info{display:flex;flex-direction:column;gap:.25rem}.provider-name{font-weight:700;font-size:1.1rem;color:#111827}.badge{display:inline-block;padding:.25rem .5rem;border-radius:999px;font-size:.75rem;font-weight:600}.badge.recommend{background-color:#fef3c7;color:#d97706;align-self:flex-start}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.step{text-align:center;position:relative}.step-number{font-size:4rem;font-weight:900;color:#e0e7ff;position:absolute;top:-2rem;left:50%;transform:translate(-50%);z-index:-1}.step h3{margin-top:1.5rem;font-size:1.5rem}.accordion{max-width:800px;margin:0 auto}.accordion-item{border-bottom:1px solid var(--border-color)}.accordion-header{width:100%;padding:1.5rem 0;background:none;border:none;text-align:left;font-size:1.1rem;font-weight:500;color:#111827;cursor:pointer;display:flex;justify-content:space-between;align-items:center}.accordion-header i{transition:transform .3s}.accordion-header.active i{transform:rotate(45deg)}.accordion-content{max-height:0;overflow:hidden;transition:max-height .3s ease-out}.accordion-content p{padding-bottom:1.5rem;color:var(--text-muted)}.site-footer{background-color:#1f2937;color:#d1d5db;padding:4rem 0}.footer-content{display:flex;flex-direction:column;align-items:center;gap:2rem}.footer-logo{font-size:1.5rem;font-weight:700;color:var(--white)}.footer-note{max-width:780px;color:#cbd5e1;font-size:.9rem;text-align:center}.footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:2rem}.footer-links a:hover{color:var(--white)}.copyright{font-size:.875rem;color:#6b7280}@media(max-width:768px){main{padding-top:94px}.site-header{height:auto;padding:.65rem 0}.site-header .container{flex-wrap:wrap;gap:.65rem;padding:0 1rem}.logo{flex:1;font-size:1rem;line-height:1.2;white-space:normal}.main-nav{display:block;order:3;width:100%;overflow-x:auto;scrollbar-width:none}.main-nav::-webkit-scrollbar{display:none}.main-nav ul{gap:.75rem;min-width:100%;justify-content:space-between}.main-nav a{font-size:.82rem;white-space:nowrap}.site-header .btn-sm{display:none}.hero{min-height:auto;padding:4rem 0 3rem;background:linear-gradient(180deg,#09152ddb,#09152db8),url(/images/esim-hero.webp) 62% center / cover no-repeat}.hero .container{min-height:430px;text-align:center;justify-content:center}.hero-content{max-width:min(100%,20rem);margin:0 auto}.hero h1{font-size:2rem;line-height:1.18}.hero h1 span{display:block}.hero p{font-size:1rem;margin:0 auto 1.75rem;max-width:min(100%,19rem);word-break:normal}.hero-actions{flex-direction:column;justify-content:center;gap:1rem;max-width:min(100%,18rem);margin:0 auto}.hero-actions .btn{width:100%}.hero-stats{grid-template-columns:1fr;gap:.75rem;text-align:left}.finder-form{grid-template-columns:1fr;max-width:calc(100vw - 3rem);margin:0 auto}.trust-strip .container{align-items:flex-start;justify-content:flex-start;gap:.75rem}.section-header h2{font-size:1.75rem}.feature-grid,.steps{grid-template-columns:1fr;gap:2rem}.comparison-wrapper{margin:0 -1.5rem;border-radius:0}.comparison-table th,.comparison-table td{padding:1rem;white-space:nowrap}.footer-content{text-align:center}.footer-links{flex-direction:column;gap:1rem}.article-body :where(.content-section>h2,h2.section-title){text-align:left;font-size:1.38rem;line-height:1.45;margin-bottom:1.15rem}.article-body :where(.content-section>h2,h2.section-title):before{width:.38rem;height:1.2em;margin-right:.5rem}.article-body :where(p,li,dd,td,.alert,.notice-box,.caption) strong,.article-body mark,.marker-yellow,.highlight-marker,.article-body .marker-red,.article-body .text-danger{padding:.02em .1em}.article-body :where(.notice-box,.intent-note,.answer-section,.proof-section):before{margin-bottom:.45rem;font-size:.72rem}}@media(max-width:420px){.logo{font-size:.88rem}.main-nav ul{gap:.5rem}.main-nav a{font-size:.76rem}}
