:root{--bg:#050510;--card:#0d0d20;--bdr:#2a2a5a;--gold:#c9a84c;--gl:#f0d080;--teal:#4ECDC4;--red:#FF6B6B;--yg:#FFD700;--txt:#d0d0e8;--mu:#7070a0;--dim:#404070;--acc:#6655aa;}
*{box-sizing:border-box;margin:0;padding:0;}
body{background:var(--bg);color:var(--txt);font-family:'Noto Serif JP',serif;min-height:100vh;overflow-wrap: anywhere; word-break: normal; line-break: strict;}
body::before{content:'';position:fixed;inset:0;background-image:radial-gradient(1px 1px at 10% 20%,rgba(255,255,255,.4) 0%,transparent 100%),radial-gradient(1px 1px at 40% 65%,rgba(200,180,255,.3) 0%,transparent 100%),radial-gradient(1px 1px at 72% 12%,rgba(255,255,255,.3) 0%,transparent 100%),radial-gradient(2px 2px at 55% 88%,rgba(255,255,200,.2) 0%,transparent 100%);pointer-events:none;z-index:0;}
.w{max-width:980px;margin:0 auto;padding:38px 18px;position:relative;z-index:1;}
.hdr{text-align:center;margin-bottom:42px;}
.hdr-o{color:var(--gold);font-size:1.9em;letter-spacing:.4em;margin-bottom:7px;}
.hdr h1{font-family:'Cinzel Decorative',serif;font-size:clamp(1.4em,4vw,3em);background:linear-gradient(135deg,var(--gold),#fff8e1,var(--gold));-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:7px;}
.hdr p{color:var(--mu);font-style:italic;font-size:.9em;}



.h1memo {
	color:var(--txt);
	font-size:1em;
}

.sabim {
	padding:10px 0 0 10px;
}

.sabim a {
	color:var(--gold);
	font-size:0.8em;
	text-decoration: none;
}

.sabim a:hover {
    color: #62a567;
	text-decoration: none;
}


.card{background:var(--card);border:1px solid var(--bdr);padding:24px 26px;margin-bottom:20px;position:relative;}
.card::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);}
.ct{font-family:'Cinzel Decorative',serif;font-size:.88em;color:var(--gold);letter-spacing:.1em;margin-bottom:18px;display:flex;align-items:center;gap:8px;}
.ct::after{content:'';flex:1;height:1px;background:linear-gradient(90deg,var(--bdr),transparent);}
.fg{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
@media(max-width:600px){.fg{grid-template-columns:1fr;}}
.pb h3{font-family:'Cinzel Decorative',serif;color:var(--gl);font-size:.78em;letter-spacing:.13em;margin-bottom:12px;padding-bottom:6px;border-bottom:1px solid var(--bdr);}
.f{margin-bottom:11px;}
.f label{display:block;font-size:.75em;color:var(--mu);margin-bottom:4px;}
.f input,.f select{width:100%;background:#080818;border:1px solid #2a2a5a;color:var(--txt);padding:8px 10px;font-family:inherit;font-size:.85em;outline:none;transition:border-color .2s;}
.f input:focus,.f select:focus{border-color:var(--acc);}
.f select option{background:#0d0d20;}
.ctgl{font-size:.72em;color:var(--mu);cursor:pointer;display:flex;align-items:center;gap:5px;margin-bottom:8px;}
.ctgl input[type=checkbox]{width:auto;}
.cfd{display:none;background:#06060f;border:1px solid #1a1a40;padding:10px;margin-bottom:8px;}
.cfd.on{display:block;}
.cg{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;}
.btn{display:block;width:100%;padding:13px;background:linear-gradient(135deg,#2a1a6a,#1a0a4a);border:1px solid var(--gold);color:var(--gl);font-family:'Cinzel Decorative',serif;font-size:.88em;letter-spacing:.2em;cursor:pointer;transition:all .3s;margin-top:18px;}
.btn:hover{background:linear-gradient(135deg,#3a2a8a,#2a1a6a);box-shadow:0 0 16px rgba(100,80,200,.3);}
.err{color:var(--red);background:#2a0a0a;border:1px solid #4a1a1a;padding:10px 13px;margin-bottom:15px;font-size:.85em;}
.sw-wrap{text-align:center;padding:28px 14px;}
.sc-c{width:140px;height:140px;border-radius:50%;margin:0 auto 15px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px solid;}
.sc-n{font-family:'Cinzel Decorative',serif;font-size:2.6em;line-height:1;}
.sc-m{font-size:.68em;color:var(--mu);margin-top:3px;}
.sc-g{font-family:'Cinzel Decorative',serif;font-size:1.15em;margin-bottom:6px;}
.sc-d{color:var(--txt);font-size:1em;;}
.stars{font-size:1.25em;letter-spacing:.1em;margin-bottom:11px;}
.scbd{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-top:14px;}
.sbi{text-align:center;}
.sbv{font-family:'Cinzel Decorative',serif;font-size:1.35em;}
.sbl{font-size:.68em;color:var(--mu);}
.cl{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start;}

@media(max-width:640px){.cl{grid-template-columns:1fr;}}
.svg-w{display:flex;justify-content:center;}
.svg-w svg{width:100%;max-width:320px;height:auto;border-radius:50%;box-shadow:0 0 32px rgba(100,80,200,.2);}
.pt{width:100%;border-collapse:collapse;font-size:.77em;}
.pt th{color:var(--mu);font-weight:400;padding:4px 6px;border-bottom:1px solid var(--bdr);text-align:left;}
.pt td{padding:6px;border-bottom:1px solid #1a1a30;}
.pt tr:last-child td{border-bottom:none;}
.ag{display:grid;grid-template-columns:repeat(auto-fill,minmax(218px,1fr));gap:7px;}
.ai{padding:8px 11px;border:1px solid var(--bdr);font-size:.77em;display:flex;align-items:center;gap:8px;background:#0a0a20;}
.ai.soft{border-left:3px solid var(--teal);}
.ai.hard{border-left:3px solid var(--red);}
.ai.neutral{border-left:3px solid var(--yg);}
.ai-s{font-size:1.3em;width:20px;text-align:center;}
.ai-p{font-weight:600;}
.ai-m{color:var(--mu);font-size:.82em;}
.sg{display:grid;grid-template-columns:repeat(auto-fill,minmax(195px,1fr));gap:9px;}
.sab{padding:11px;border:1px solid var(--bdr);background:#080818;}
.sab-p{font-size:.7em;color:var(--mu);margin-bottom:3px;}
.sab-d{font-size:.8em;color:var(--gold);margin-bottom:4px;}
.sab-t{font-size:.75em;font-style:italic;line-height:1.5;}
.lgd{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:11px;}
.lgd-i{display:flex;align-items:center;gap:5px;font-size:.76em;color:var(--mu);}
.lgd-l{width:18px;height:2px;}
.lgd-l.s{background:var(--teal);}
.lgd-l.h{border-top:2px dashed var(--red);}
.lgd-l.n{background:var(--yg);}
.hlgd{display:flex;gap:12px;font-size:.71em;margin-bottom:9px;flex-wrap:wrap;}
.hlgd span{display:flex;align-items:center;gap:4px;color:var(--mu);}
.hlgd span::before{content:'';display:inline-block;width:13px;height:2px;}
.hl1::before{background:#4488ff;}
.hl2::before{background:#ff8844;}
.nd{text-align:center;font-family:'Cinzel Decorative',serif;color:var(--gl);font-size:.97em;margin-bottom:14px;}
.nd span{color:var(--mu);font-size:.63em;margin:0 8px;}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:11px;}
@media(max-width:600px){.two-col{grid-template-columns:1fr;}}
.ch{color:var(--gl);font-size:.78em;margin-bottom:8px;}
.ft{text-align:center;color:var(--dim);font-size:.69em;margin-top:28px;line-height:1.8;}



footer {
	padding:20px 20px 100px 20px;
    max-width: 1100px;
    margin: 0 auto;
	color: #fff;
｝

nav {
    border-bottom: 0px;
}

.site-footer {
	padding: 0px 0;
	font-size: 1rem;
	color: #fff;
}

.footer-inner {
	padding: 0 20px;
	display: flex;
    flex-direction: row;
    justify-content: space-between;
	align-items: center;
	text-align: center;
}


/* 共通カラム設定 */
.footer-col {
  width:100%;
}

/* コピーライト */
.footer-copy {
	margin:100px 0 0 0;
	color: var(--txt);
    font-size:0.85rem;
}

.footer-copy2 {
	margin:10px 0 0 0;
	color: var(--mu);
    font-size:0.7rem;
}

/* リンクリスト縦並び */
.footer-nav-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.footer-nav-list li + li {
	margin-top: 4px;
}

.footer-nav-list a {
	text-decoration: none;
	color: #fff;
}

.footer-nav-list a:hover {
	text-decoration: none;
	color: var(--gold-dim);
}

/* 検索フォーム */
.footer-search-form {
	margin-top: 8px;
	display: flex;
	justify-content: center;
	gap: 4px;
	flex-wrap: nowrap;
}

.footer-search-form input[type="text"] {
  padding: 4px 8px;
  font-size: 14px;
  min-width: 0;
}

.footer-search-form button {
  padding: 4px 8px;
  font-size: 14px;
  color: #0a0812;
  cursor: pointer;
}

.footer-search-form button:hover {
  padding: 4px 8px;
  font-size: 14px;
  color: #0a0812;
  cursor: pointer;
}

	.static-search form {
		margin:0px 0 50px 0;
		display: block;
	}

	.static-search form select {
        padding: 20px;
        width: 200px;
		height:40px;
    	font-size: 1.4rem;
		color:#fff;
		background:#0a0812;
		border:1px solid var(--gold-dim);
    	text-align: center;
	}

	.static-search form input {
        padding: 20px;
        width: 200px;
		height:40px;
    	font-size: 1.4rem;
		color:#fff;
		background:#0a0812;
		border:1px solid var(--gold-dim);
    	text-align: center;
	}

	.static-search form button {
        padding: 10px;
        width: 80px;
		color:#0a0812;
		background: linear-gradient(45deg, #B67B03 0%, #DAAF08 45%, #FEE9A0 70%, #DAAF08 85%, #B67B03 90% 100%);
		border:0;
		border-radius:0px;
    	text-align: center;
	}

	.static-search form button:hover {
        padding: 10px;
		color:var(--gold);
		background-image: linear-gradient(120deg, rgba(47, 5, 40, 0.8), rgba(255, 255, 255, 0)), linear-gradient(185deg, rgba(69, 54, 255, 0.8), rgba(255, 255, 255, 0)), linear-gradient(340deg, rgba(0, 153, 26, 0.8), rgba(255, 255, 255, 0) );
		border:0;
		border-radius:0px;
    	text-align: center;
	}

  /* 固定ページリンク */
  .static-section {
    margin-top: 64px;
  }

  .static-links {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
  }

  .static-link {
    display: inline-block;
    padding: 10px 20px;
    border: 1px solid var(--gold-dim);
    color: var(--gold);
    text-decoration: none;
    font-size: 0.78rem;
    letter-spacing: 0.1em;
    border-radius: 2px;
	transition:0.5s;
  }

  .static-link:hover {
    border-color: #62a567;
    color: #62a567;
  }


  .static-link2 {
    display: inline-block;
    padding: 10px 20px;
    border: 1px solid var(--border);
    color: var(--muted);
    text-decoration: none;
    font-size: 0.78rem;
    letter-spacing: 0.1em;
    border-radius: 2px;
	transition:0.5s;
  }

  .static-link2:hover {
    border-color: #62a567;
    color: #62a567;
  }

.sab a {
	font-size: 0.7rem;
	color:var(--gold);
}

 


