:root{--accent:#06c;--bg:#0f1720;--text:#eef2ff}html,body{height:100%}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;background:#0f1720;color:#eef2ff;-webkit-font-smoothing:antialiased}.wrap{max-width:1100px;margin:0 auto;padding:2rem}.hero{padding:6rem 0;text-align:center;background:linear-gradient(180deg,rgba(255,255,255,0.02),transparent)}.hero .site-title{font-size:2.25rem;margin:0 0 0.5rem}.hero .site-desc{margin:0 0 1.25rem;color:rgba(238,242,255,0.8)}.hero .btn-primary{display:inline-block;padding:0.6rem 1rem;background:#06c;color:#fff;border-radius:6px;text-decoration:none;cursor:pointer}.features{padding:3rem 0}.features h2{margin:0 0 1rem;color:#eef2ff}.features .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.features .card{background:rgba(255,255,255,0.03);padding:1rem;border-radius:8px}@media (max-width:600px){.hero{padding:3rem 0}.hero .site-title{font-size:1.5rem}}.latest-posts{padding:3rem 0}.latest-posts h2{margin:0 0 1rem}.latest-posts .posts-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.latest-posts .post-item{display:flex;gap:1rem;align-items:flex-start;background:rgba(255,255,255,0.02);padding:1rem;border-radius:8px}.latest-posts .thumb img{width:110px;height:70px;-o-object-fit:cover;object-fit:cover;border-radius:6px}.latest-posts .post-body{flex:1}.latest-posts .post-title{margin:0.1rem 0}.latest-posts .post-title a{color:#eef2ff;text-decoration:none}.latest-posts .post-excerpt{color:rgba(238,242,255,0.8);margin:0.5rem 0}.latest-posts .post-meta{font-size:0.85rem;color:rgba(238,242,255,0.6)}.latest-posts .more-link-wrap{text-align:center;margin-top:1rem}.latest-posts .more-link{display:inline-block;padding:0.5rem 1rem;border-radius:6px;background:rgba(255,255,255,0.03);color:#eef2ff;text-decoration:none}#news .tab{position:relative;top:1px}#news .tab-choice-area{border-top:1px solid #aaa;border-left:1px solid #aaa}@media only screen and (max-width:1110px){.tab-area{width:100%}}@media only screen and (max-width:768px){#news{padding:0 0 5% 30px}}#gallery{margin:0 0 5% 0}#gallery li{overflow:hidden}.gallery img{opacity:0.5}.gallery img:hover{opacity:1}#contact{border-top:1px solid #aaa;border-bottom:1px solid #aaa;display:flex;justify-content:space-between;flex-wrap:wrap}#contact .contact-detail{width:65%;border-right:1px solid #aaa;text-align:center;padding:20px}#contact .contact-detail h2{margin:0 0 5px 0;font-size:1.5rem}#contact .contact-tel{width:35%}#contact .contact-tel p{text-align:center}#contact .contact-tel p a{display:block;padding:20px;transition:all 0.3s}#contact .contact-tel p a:hover{background:rgba(255,255,255,0.2)}#contact .contact-tel p:last-child{border-top:1px solid #aaa}#contact .contact-tel br{display:none}@media screen and (max-width:690px){#contact .contact-detail,#contact .contact-tel{width:50%}#contact .contact-tel br{display:block}#contact .contact-detail h2{font-size:1.2rem}#contact .contact-detail p{text-align:left}}@media screen and (max-width:400px){#contact{font-size:0.8rem}}#footer{display:flex;justify-content:space-between;flex-wrap:wrap;align-items:center;opacity:0.8;padding:5%}#footer .footer-info{width:30%}#footer .footer-info .footer-logo{font-size:1.5rem;margin:0 0 10px 0;text-transform:uppercase}#footer .footer-info address{font-style:normal;margin:0 0 10px 0}#footer .footer-info ul li{margin:0 0 10px 0}#footer .footer-info dl dt,#footer .footer-info dl dd{display:inline-block}#footer .footer-info dl dt::after{content:":";padding:0 10px}#footer .footer-link{width:65%}#footer .footer-link ul{display:flex;flex-wrap:wrap;line-height:2.5}#footer .footer-link ul li{margin:0 20px}#footer .footer-link ul ul li{margin:0 10px 0 0}#footer small{padding:100px 0 0 0;display:block;text-align:right;color:#aaa}#footer .footer-link ul ul{display:block}@media screen and (max-width:830px){#footer{justify-content:center;padding:5% 0}#footer .footer-info{width:100%;padding:0 0 5% 0;margin:0 0 5% 0;text-align:center;border-bottom:1px solid #aaa}#footer .footer-info li:nth-of-type(2) dt::after{content:"";padding:0}#footer .footer-info li:nth-of-type(2) dd{display:block}#footer .footer-link{width:auto}#footer .footer-link ul{justify-content:center}#footer small{padding:10% 0;text-align:center}}@media screen and (max-width:400px){#footer .footer-link ul li{margin:0 10px}}
