@charset "utf-8";
:root{
touch-action:manipulation;
--body-color:#222225;
--body-bg:#f4f4f4;
--main-bg:#fff;
--main-bg-diff:#fcfcfd;
--main-bg-sub:#f5f5f5;
--pure-white:255 255 255;
--pure-black:0 0 0;
--pure-gray:128 128 128;
--link-color:#088f0e;
--visited-color:#706e59;
--h3-color:hsl(94deg 90% 13%);
--h3-bg:hsl(70deg 40% 88%);
--dt-color:#11441a;
--color-eee:#eee;
--color-ddd:#ddd;
--color-ccc:#ccc;
--color-666:#666;
--color-555:#555;
--color-444:#444;
--dark-border:rgb(0 0 0 / 10%);
--input-bg:#fff;
--input-border:rgb(0 0 0 / 30%);
--sprite-doujou-url:url(img/sprite.png);
--pan-bg:hsl(94deg 60% 18% / 15%);
--footer-bg:#f2f4f4;
--checkbox-bg:#619b4f;
--brand-bg:hsl(94deg 90% 22%);
--brand-light-bg:hsl(94deg 90% 30%);
--brand-dark-bg:hsl(94deg 90% 18%);
--brand-pale-bg:hsl(94deg 70% 93%);
--action-btn-text-color:#f9f9f9;
}
body.night{
--body-color:#e6e6e5;
--body-bg:#242424;
--main-bg:#2b2b2b;
--main-bg-diff:#2e2e2f;
--main-bg-sub:#353535;
--pure-white:0 0 0;
--pure-black:255 255 255;
--link-color:#4fb653;
--h3-color:hsl(94deg 75% 32%);
--h3-bg:hsl(55deg 10% 18%);
--dt-color:#499a3c;
--color-eee:#393939;
--color-ddd:#414141;
--color-ccc:#555;
--color-666:#bbb;
--color-555:#ccc;
--color-444:#ddd;
--dark-border:rgb(0 0 0 / 30%);
--input-bg:#303131;
--sprite-doujou-url:url(img/sprite_night.png);
--footer-bg:#222224;
--brand-bg:hsl(94deg 60% 18%);
--brand-light-bg:hsl(94deg 60% 25%);
--brand-pale-bg:hsl(94deg 12% 19%);
--action-btn-text-color:#090909;
}
body.beige{
--body-color:#151523;
--beige:#a28b67;
--mix-ratio:50%;
--mix-ratio-brand:60%;
--body-bg:color-mix(in srgb, #f4f4f4 var(--mix-ratio), var(--beige));
--main-bg:color-mix(in srgb, #fff var(--mix-ratio), var(--beige));
--main-bg-diff:color-mix(in srgb, #fbfbfb var(--mix-ratio), var(--beige));
--main-bg-sub:color-mix(in srgb, #f5f5f5 var(--mix-ratio), var(--beige));
--h3-bg:color-mix(in srgb, hsl(55deg 60% 85%) var(--mix-ratio), var(--beige));
--color-eee:color-mix(in srgb, #eee var(--mix-ratio), var(--beige));
--color-ddd:color-mix(in srgb, #ddd var(--mix-ratio), var(--beige));
--color-ccc:color-mix(in srgb, #ccc var(--mix-ratio), var(--beige));
--input-bg:color-mix(in srgb, #fff 65%, var(--beige));
--pan-bg:color-mix(in srgb, hsl(94deg 60% 18% / 15%) 80%, var(--beige));
--footer-bg:color-mix(in srgb, #f2f4f4 var(--mix-ratio), var(--beige));
--checkbox-bg:color-mix(in srgb, #619b4f var(--mix-ratio-brand), var(--beige));
--brand-bg:color-mix(in srgb, hsl(94deg 90% 22%) var(--mix-ratio), var(--beige));
--brand-light-bg:color-mix(in srgb, hsl(94deg 90% 30%) var(--mix-ratio-brand), var(--beige));
--brand-dark-bg:color-mix(in srgb, hsl(94deg 90% 18%) var(--mix-ratio-brand), var(--beige));
--brand-pale-bg:color-mix(in srgb, hsl(94deg 70% 93%) var(--mix-ratio-brand), var(--beige));
}

.night #logo{height:0;padding-top:28px;background:url(img/titlelogo_night.png) no-repeat;background-size:210px auto}
.night .sentence strong,.night .sentence b{color:#fff}
.night .qPage img, .night .mondai img{filter:invert(1) hue-rotate(180deg)}
.night #kaisetsu img, .night .pmkaisetsu img{background:#fff;padding:5px}
.night .kanji, .night #doujoulogo{filter:invert(1) hue-rotate(210deg)}

abbr,address,article,aside,audio,b,blockquote,body,canvas,caption,cite,code,dd,del,details,dfn,div,dl,dt,em,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,p,pre,q,samp,section,small,span,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,ul,var,video{margin:0;padding:0;border:0;outline:0;font-size:100%;font-style:normal;vertical-align:baseline;background:transparent}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}nav ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}mark{background-color:#ff9;color:#000;font-style:italic;font-weight:700}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}
body{font:15px/1.75 'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',Meiryo,'メイリオ',Roboto,sans-serif;color:var(--body-color);background:var(--body-bg);letter-spacing:.01em;overflow-x:hidden;-webkit-text-size-adjust:100%;-webkit-touch-callout:none;word-break:break-all}
body,#overLayer{max-width:900px;margin:0 auto}
*{-webkit-tap-highlight-color:rgb(0 0 0 / 0%)}
a{text-decoration:none;color:inherit}
dt{font-weight:bold;color:var(--dt-color)}
#mondai dt{font-weight:normal;color:inherit}
dd{margin-left:1em}
sup,sub{height:0;line-height:1;vertical-align:baseline;position:relative;font-size:9px}
sup{bottom:1.2ex}
sub{top:.5ex}
[type="text"],[type="password"],[type="email"],[type="date"],textarea{color:inherit;background:var(--input-bg);width:100%;box-sizing:border-box;letter-spacing:0.4pt;padding:10px 5px;font-size:15px;font-family:inherit;border:0;border-bottom:1px solid var(--input-border);border-radius:2px;appearance:none}
textarea{border:1px solid var(--input-border);font-family:inherit;line-height:1.5;letter-spacing:1px;padding:6px;font-size:14px}
select{-webkit-appearance:none;appearance:none;border-radius:2px;padding:4px 20px 4px 4px;border:1px solid var(--input-border);color:inherit;background:var(--input-bg) url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M0 7.33l2.829-2.83 9.175 9.339 9.167-9.339 2.829 2.83-11.996 12.17z" style="fill:%23555"/></svg>') no-repeat right 5px center / 10px auto}
[type="checkbox"]{color:var(--checkbox-bg);appearance:none;width:1.25em;height:1.25em;border:1px solid #555;border-radius:0;background:var(--input-bg) no-repeat center center / 130% auto}
[type="checkbox"]:checked{border-color:currentColor;background-color:currentColor;background-image:url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="m9.5 14.586-3.293-3.293-1.414 1.414 4.707 4.707 9.707-9.707-1.414-1.414z" style="fill:%23fff"/></svg>')}
button{appearance:none;color:var(--color-444);border:1px solid var(--input-border);padding:4px 10px;border-radius:3px;color:inherit;background:var(--main-bg-sub);background-image:linear-gradient(var(--color-eee),var(--main-bg-sub))}
button.touchOn{box-shadow:0 0 6px 2px rgb(var(--pure-gray) / 30%)}
button:disabled{color:rgb(var(--pure-gray) / 80%)}
img{max-width:100%;height:auto;vertical-align:middle}
.img_margin{margin:1em auto !important;text-align:center}
.img_margin.left{text-align:left;padding-left:1em}
input::-ms-clear,input::-ms-reveal,::-ms-expand{display:none}
input:-webkit-autofill{transition:background-color 9999s 9999s;box-shadow: 0 0 0 1000px var(--input-bg) inset !important;-webkit-text-fill-color:var(--body-color) !important;background-clip:padding-box}

header{position:relative;background:var(--main-bg)}
header h1{height:28px;padding:7px 5px;border-bottom:6px solid var(--brand-dark-bg)}
#logo{transition:opacity .2s ease-out,top .2s ease-out}
#logo:active{opacity:.8;position:relative;top:1px}
.content{background:var(--body-bg);min-height:calc(100vh - 233px)}
.roundBox ul,.roundBox ol,.keywordBox ul,.keywordBox ol{margin:.5em 0 .5em 24px}
.roundBox dl{margin:.5em 0}
.roundBox.sentence p:not([class="big"]){margin-bottom:1em}
main h2{line-height:26px;padding:3px 8px;overflow:hidden;color:#f3f3f3;text-shadow:1px 1px var(--dark-border);background:linear-gradient(var(--brand-light-bg),var(--brand-bg));border-top:1px solid rgb(16 16 16 / 10%)}
main h3{line-height:26px;padding:3px 8px;overflow:hidden;background:var(--h3-bg);border-top:1px solid rgb(var(--pure-gray) / 10%);position:relative}
.h3Link{display:block;position:absolute;right:5px;top:50%;margin-top:-1em;font-weight:normal;background:var(--main-bg-sub);border:1px solid var(--input-border);border-radius:4px;padding:1px 5px}
.menu>li{list-style:none;border-bottom:1px solid var(--dark-border);padding-left:10px;background:var(--main-bg)}
.menu>li>a,.menu>li>label{display:block;color:inherit;padding:13px 15px 13px 10px;margin-left:-12px;position:relative;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;background-image:linear-gradient(to right,transparent,transparent 50%,rgb(var(--pure-gray) / 10%) 0,rgb(var(--pure-gray) / 10%) 95%,rgb(var(--pure-gray) / 0%));background-position:0 0;background-size:200% auto;transition:background-position .1s linear}
.menu>li>a:active,.menu>li>label:active{background-position:-100% 0}
.menu>li>a::after{content:"";display:block;position:absolute;top:50%;right:15px;left:auto;width:7px;height:7px;margin-top:-6px;border:2px solid #6b854c;border-width:2px 2px 0 0;transform:rotate(45deg)}
.col1,.col2,.col3{display:table;width:100%}
.col1>li,.col2>li,.col3>li{float:left;box-sizing:border-box}
.col2>li:nth-child(2n+3){clear:both}
.col1>li{width:100%}
.col2>li{width:50%}
.col3>li{width:33.3%}
.menu.col2>:nth-child(2n+1){border-right:1px solid var(--dark-border)}
p.cate{position:absolute;right:30px;font-size:10px;color:rgb(var(--pure-gray) / 80%);bottom:-1px}
p.count{position:absolute;top:calc(50% - 12px);width:24px;line-height:24px;text-align:center;overflow:hidden;right:40px;font-size:11px;font-weight:normal;box-shadow:0 0 2px rgb(0 0 0 / 50%);border-radius:12px;color:rgb(var(--pure-black) / 70%);background:var(--main-bg-sub)}
.collapsible dt{position:relative;padding:12px 10px;background:linear-gradient(var(--main-bg),var(--main-bg-diff));border-bottom:1px solid var(--dark-border);font-weight:inherit;color:inherit}
.collapsible dt:not(.null)::before,.collapsible dt:not(.null)::after{content:"";display:block;position:absolute;right:12px;top:50%;margin-top:-1px;width:12px;height:2px;background:#5eab4f;transition:.3s}
.collapsible dt:not(.null)::after{transform:rotate(90deg)}
.collapsible dt.selected{background:#555;color:#eee;box-shadow:0 3px 5px rgb(0 0 0 / 20%)}
.collapsible dt.selected + dd .menu>li{background:#505050;color:#eee}
.collapsible dt.selected::before{background:#cf5353}
.collapsible dt.selected::after{opacity:0;transform:rotate(360deg)}
.collapsible dd{margin:0;display:none}
.datatbl th,.datatbl td{text-align:left;font-size:14px;padding:3px 5px}
.datatbl td::before{content:"："}
footer{background:var(--footer-bg);text-align:center;padding-top:40px;border-top:1px solid var(--dark-border);font-size:.8em;color:#777;line-height:30px}
footer a{display:inline-block;margin:0 0.5em}
#toTop{display:none}
/*#toTop{display:none;position:fixed;font-size:11px;background:#639a42;color:#FFF;bottom:30px;right:-50px;opacity:0;text-align:center;border-radius:4px 0 0 4px;padding:5px;z-index:10;transform:translateX(0);transition:.5s}
#toTop.show{opacity:.7;transform:translateX(-50px)}*/
hr{height:1px;margin:.5em 0;border-top:1px solid var(--dark-border)}
.copyright{background:var(--brand-dark-bg);color:#e6e6e6;font-size:90%;margin-top:1em}
.pan{list-style:none;overflow:hidden;background:var(--pan-bg);font-size:.8em}
.pan>li{float:left}
.pan>li>a{color:var(--color-444);display:block;padding:5px 0 5px 28px;background:var(--brand-pale-bg);position:relative}
.pan>li>a::after,.pan>li>a::before{content:"";display:block;width:0;height:0;border:25px solid transparent;position:absolute;left:99%;top:50%;margin-top:-25px}
.pan>li>a::after{border-left:18px solid var(--brand-pale-bg);z-index:2}
.pan>li>a::before{border-left:18px solid rgb(var(--pure-gray) / 50%);margin-left:1px;z-index:1}
.pan>li:first-child a{padding-left:8px}
.pan a.touchOn{background:#92b938;color:#FFF;text-shadow:-1px -1px rgb(0 0 0 / 40%)}
.pan a.touchOn::after{border-left-color:#92b938}
.adslot_1{width:100%;height:100px}
.adslot_2{width:100%;height:50px}
.adslot_3{width:300px;height:250px}
@media(min-width:340px){.adslot_3{width:100%;height:280px}}
@media(min-width:768px){.adslot_1,.adslot_2{width:728px;height:90px}}
.ad1,.ad2{text-align:center;line-height:1}
.ad1{margin-bottom:20px}
.ad2{margin:80px 0;min-height:280px !important}
.ad2 + .submit{margin-top:100px}
.sponsoredLinks{color:var(--color-666);font-size:13px}
#aPage,.aPage{display:none}
.roundBox,.selectBtn{background:var(--main-bg);margin:9px 2px;border-radius:4px;padding:6px}
.roundBox:not(.main){overflow-x:hidden}
#main_contents .roundBox{font-family:Helvetica,Arial,'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',Meiryo,'メイリオ',Roboto,sans-serif}/* overline対策 */
.big{font-size:18px;padding:3px 0 7px 0;font-weight:bold;color:var(--h3-color);position:relative}
.big .arrowBtn{right:0;top:0;background:var(--color-eee)}
#calcBtn{position:absolute;right:80px;top:2px}
.keywordBox{padding:5px 8px 5px 3px}
.grayText{color:rgb(var(--pure-gray) / 70%);font-size:0.85em;text-align:right}
.answer{color:#e11c1c;font-size:110%}
.selectBtn{display:flex;flex-wrap:wrap;max-width:600px;margin:0 auto 50px;list-style:none;padding:0}
.selectBtn>li{flex-basis:25%;box-sizing:border-box;text-align:center;border-left:1px solid var(--dark-border)}
.selectBtn>li:nth-child(4n+1){border-left:0}
.selectBtn>li:nth-child(n+5){border-top:1px solid var(--dark-border)}
.selectBtn>li>a{display:block;font-size:16px;padding:15px 0;color:inherit}
.qLink{height:50px;position:relative;margin-top:50px;line-height:1.8}
.qLink~h3{margin-top:10px}
#popup{position:fixed;top:64px;background:#060606;border:1px solid #060606;box-shadow:4px 4px 8px #333,0 0 50px #333 inset;border-radius:4px;z-index:-1;
transition:transform 0s 1s ease-out,opacity 1s ease-out,z-index 0s 1s;
transform:translateY(0);opacity:0}
#popup.show{opacity:.85;transform:translateY(10px);z-index:5;
transition:transform .5s ease-out,opacity .5s ease-out,z-index 0s}
.sentence strong,.sentence b{color:#071531}
.sentence a:not([href$="gif"]):not([href$="jpg"]):not([href$="png"]){padding:0 2px;color:var(--link-color);background:linear-gradient(transparent 85%,rgb(165 197 141 / 80%) 85%);background-position-y:-1px}
.sentence a:not([href$="gif"]):not([href$="jpg"]):not([href$="png"]):active{color:#e07e00;background-image:linear-gradient(transparent 85%,rgb(255 207 100 / 80%) 85%)}
#showReport{display:inline-block;padding:0 4px;border-radius:6px;border:1px solid currentColor;color:#57a711}
#showReport:active{color:#FFF;background:#7ac33a}
.selectList{padding-left:4px}
.selectList>li{list-style:none;margin-bottom:7px;position:relative}
.selectList>li::before{position:absolute;left:-28px;top:4px;background:#535353;color:#fff;line-height:1;border-radius:3px;font-size:80%;padding:3px 4px}
.selectList>li:first-child::before{content:"ア"}
.selectList>li:nth-child(2)::before{content:"イ"}
.selectList>li:nth-child(3)::before{content:"ウ"}
.selectList>li:nth-child(4)::before{content:"エ"}
.selectList>li:nth-child(5)::before{content:"オ"}
.selectList>li:nth-child(6)::before{content:"カ"}
.selectList>li:nth-child(7)::before{content:"キ"}
.selectList>li:nth-child(8)::before{content:"ク"}
.selectList>li:nth-child(9)::before{content:"ケ"}
.selectList>li:nth-child(10)::before{content:"コ"}
.aPage .selectList>li{padding-bottom:10px;margin-bottom:1em;border-bottom:1px dashed rgb(var(--pure-gray) / 20%)}
.selectList img{vertical-align:top;margin-bottom:1em}
.parenthesesList,.maruList{counter-reset:licount}
.parenthesesList>li,.maruList>li{counter-increment:licount;list-style:none;position:relative}
.parenthesesList>li::before{content:"("counter(licount)")";display:block;position:absolute;left:-24px}
.maruList>li::before{content:counter(licount);display:block;position:absolute;left:-23px;top:6px;border:1px solid var(--color-444);border-radius:50%;text-align:center;font-size:11.5px;width:12px;height:12px;line-height:12px;letter-spacing:0}
ul.none{list-style:none;margin-left:.5em}
.bb{display:inline-block;border:2px solid currentColor;min-width:3ex;padding:0 12px;margin:1px 2px;text-align:center;line-height:1.1}
.bb.min{padding:0;border-width:1px}
.bbdash{border-bottom:1px dashed currentColor}
.ol{text-decoration:overline}
.dol{border-top:1px solid currentColor;padding-top:2px}
.bsol{font-family:Helvetica,Arial,Verdana,Consolas,Courier}
.code, .pre{font-family:Monaco,Consolas,"Courier New",Courier,monospace;letter-spacing:0}
.pre{background:rgb(148 150 150 / 10%);border-radius:5px;border-left:4px solid var(--color-ccc);padding:3px 7px;margin:0.5em 0;overflow-x:auto}
span.code:not(.qPage .code):not(.cite .code){background:rgb(148 150 150 / 10%);border-radius:5px;padding:2px 5px;margin:0 4px;border:1px solid var(--color-ccc)}
div.code{margin-left:0.5em;white-space:pre;overflow-x:auto}
.frac{display:inline-block;text-align:center;vertical-align:middle;line-height:1.45;min-width:1.5em}
.frac>span:not([class]){display:block;border-bottom:1px solid currentColor}
.root{display:inline-block;position:relative;background:linear-gradient(currentColor 1px, transparent 1px) no-repeat;background-position-y:1px;margin:2px 0 0 7px;line-height:1.5;padding:0 1px}
.root::before{content:"";position:absolute;right:calc(100% + 2px);width:3px;height:1.1em;border:1px solid;border-color:transparent currentColor currentColor transparent;transform:rotate(20deg) skewY(50deg) translateY(-3px)}
em.r{color:#d52a2a;font-weight:bold;font-size:105%}
em.g{color:green}
em.b{color:blue}
em.m{font-weight:bold;text-decoration:underline;text-decoration-color:#ffdb73;text-decoration-thickness:4px}
div.cite{font-size:.9em;display:inline-block;vertical-align:top;opacity:.5;margin-bottom:5px}
div.cite::before{content:"\0201C"}
div.cite::after{content:"\0201D"}
div.cite > img{max-width:calc(100% - 1em)}
span.cite{color:rgb(var(--pure-gray) / 70%)}
#kaisetsu dt, .pmkaisetsu dt{text-decoration:1px dotted underline}
.arrowBtn{color:var(--body-color);background:var(--brand-pale-bg);border:1px solid var(--dark-border);position:absolute;display:block;font-size:12px;border-radius:3px;padding:6px 12px;font-weight:normal;user-select:none}
.arrowBtn.left,.arrowBtn.right{top:8px;text-shadow:none;padding:8px 12px}
.arrowBtn.left{padding-left:24px;left:8px}
.arrowBtn.right{padding-right:24px;right:8px}
.arrowBtn.left::before,.arrowBtn.right::before{position:absolute;display:block;font-size:20px;top:calc(50% - 0.5em);line-height:1}
.arrowBtn.left::before{content:"«";left:7px}
.arrowBtn.right::before{content:"»";right:7px}
.arrowBtn.touchOn{outline:2px solid #999}
.selectBtn>li>a.touchOn{color:#FFF;background:var(--brand-light-bg)}
#tabs>ul{display:flex;border-bottom:1px solid var(--color-ddd);background:var(--main-bg)}
#tabs>ul>li{flex:1}
#tabs>ul>li>a{position:relative;display:block;text-align:center;padding:8px 0;color:#999;font-size:14px;user-select:none}
#tabs>ul>li>a::after{content:"";position:absolute;width:100%;height:4px;left:0;bottom:0;background:transparent}
#tabs>ul>li.active>a{color:#e39316;font-weight:bold}
#tabs>ul>li.active>a::after{background:currentColor;transition:background 0.3s}
#tabs>div:not(#tab1){display:none}
#tab4>span{display:inline-block;color:#777;font-size:11px;padding-left:1em}
#selectMoshi{border-bottom:1px solid var(--dark-border);background-position:right 10px center;background-size:12px auto}
.submit{display:block;width:90%;max-width:400px;margin:30px auto 20px;text-align:center;font-size:20px;color:var(--action-btn-text-color);padding:10px 0;border-radius:4px;background:linear-gradient(#ffbb55,#d27c00);border:1px solid #ce9e48;appearance:none}
.submit.continue{background:linear-gradient(#ff8573,#ec5d5a);border-color:#ec6262}
.submit.touchOn{box-shadow:0 0 8px 1px rgb(0 0 0 / 40%),0 0 10px 5px rgb(255 255 255 / 20%) inset}
/* 過去問道場 */
#configform .error,.refine .error{height:0;color:#e6e6e6;font-size:13px;text-align:center;background:#da5858;position:relative;transform:scale(0,1);transition:transform .3s;z-index:1}
#configform .error.show,.refine .error.show{height:auto;padding:4px 0;margin:5px;transform:scale(1)}
#configform .error::after,.refine .error::after{content:"";position:absolute;display:block;width:0;height:0;border:solid transparent;border-width:12px 8px;border-top-color:#da5858;top:95%;left:50%;margin-left:-8px}
#configform .error.pos1::after{left:16%}
#configform .error.pos3::after{left:84%}
#configform label{display:block}
#configform label [type="checkbox"]{position:absolute;top:50%;margin-top:-8px;right:8px}
#configform p.big{padding-left:5px;border-bottom:1px solid rgb(0 0 0 / 10%)}
#configform label.disabled{color:rgb(var(--pure-gray) / 70%);text-decoration:line-through}
#reviewWrap{display:none;font-weight:bold}
.configBtnWrap{display:flex;justify-content:space-between;margin-top:50px;padding:0 2% 60px}
#config{font-size:100%}
span[class^="check"]{display:inline-block;position:relative;top:-15px;width:24px;height:24px;background:var(--main-bg-sub);border-radius:3px;font-size:0}
#checkGroup span[class^="check"]{margin-right:20px}
span[class^="check"]::before{content:"";position:absolute;top:7px;left:5px;width:12px;height:5px;border:solid var(--dark-border);border-width:0 0 2px 2px;transform:rotate(-45deg)}
span[class^="check"].checked::before{border-color:#fff}
span.check1{border:2px solid #8CBC08}
span.check1.checked{background:#8CBC08}
span.check2{border:2px solid #DC9A1B}
span.check2.checked{background:#DC9A1B}
span.check3{border:2px solid #DA4F66}
span.check3.checked{background:#DA4F66}
/* 履歴管理 フォーム共通*/
.inputWrap{position:relative}
.inputWrap i{position:absolute !important;top:50%;margin-top:-8px;left:4px}
.inputWrap [type="text"],.inputWrap [type="password"],.inputWrap [name^="email"]{font-size:16px;padding:13px 0 11px 24px}
.inputWrap [name="email_now"]{background:transparent;border:0}
.inputWrap i.eye{left:auto;right:2px;margin-top:-16px;border:4px solid transparent;background-clip:padding-box}
.inputWrap ::placeholder{font-size:90%}
.inputWrap label{position:absolute;left:22px;top:calc(50% - 12px);font-size:15px;color:#888;padding:0 2px;border-radius:4px;pointer-events:none;transition:transform .1s;transform-origin:left top;pointer-events:none}
.inputWrap input:focus + label,.inputWrap input:not(:placeholder-shown) + label,.inputWrap input:-webkit-autofill + label{background:var(--input-bg);color:inherit;transform:scale(0.8) translate(-17px, -28px)}
.inputWrap input:-webkit-autofill + label{transition:none}
.modalForm>div,#loginForm>div{margin-bottom:20px}
.modalForm [type="submit"],#loginForm [type="submit"]{margin-top:20px;width:100%;font-weight:bold;text-align:center;color:var(--action-btn-text-color);font-size:16px;padding:10px 0;border-radius:3px;border:1px solid #f39a66;background:linear-gradient(#fba746,#e68f30)}
.modalForm [type="submit"]:disabled,#loginForm [type="submit"]:disabled,#overLayer button[id$="ok"]:disabled{color:#e6e6e6;border:1px solid #9c9c9c;background:linear-gradient(#aaa,#999)}
.modalForm .message{min-height:60px}
.modalForm .message.center{margin-top:50px;text-align:center}
.validationForm .error{position:absolute;top:36px;left:14px;padding:3px 5px;background:#ef6a6a;font-size:11px;color:#fff;opacity:0;transition:opacity .3s}
.validationForm .error.show{opacity:1}
.validationForm .error::after{content:"";position:absolute;left:10px;top:-12px;width:0;height:0;border:5px solid transparent;border-bottom:7px solid #ef6a6a}
/* 登録フォーム */
.modalForm,#accountForm{padding:15px;font-size:13px;color:var(--color-444)}
/* ログインフォーム */
#loginForm{position:relative;margin-top:15px}
#resetPassword,#logout,.reportTable a,#overLayer select{color:var(--dt-color)}
#register{position:absolute;bottom:0;right:0;display:inline-block;font-size:14px;color:#57a711;border:1px solid currentColor;border-radius:3px;padding:2px 3px}
#register:active{color:#FFF;background:#7ac33a}
/* 管理パネル */
#adminForm{color:var(--color-444);margin-top:-5px}
#adminForm>ul>li{display:inline-block;width:90px;text-align:center;margin:5px 0}
#adminForm>ul>li>a{display:block;text-align:center;margin:0 4px;padding-top:5px;line-height:2.5;border:1px solid transparent;border-radius:1px;letter-spacing:0}
#adminForm>ul>li>a:active{border-color:rgb(var(--pure-gray) / 50%)}
/* パネル全体 */
#userPanel{position:absolute;top:40px;right:0;width:280px;padding:15px;z-index:-1;font-size:12px;border:1px solid var(--dark-border);box-shadow:-4px 4px 8px -3px rgb(80 80 80 / 30%);background:var(--main-bg);transform:scale(0);transform-origin:calc(100% - 52px) top}
#userPanel::before,#userPanel::after{content:"";position:absolute;right:54px;width:0;height:0;border:solid transparent;border-width:0 8px 10px 8px}
#userPanel::before{top:-10px;border-bottom-color:var(--dark-border)}
#userPanel::after{top:-9px;border-bottom-color:var(--main-bg)}
#main_contents.panel-show #userPanel{display:block;z-index:10;transform:scale(1);transition:transform .2s}
#adminForm,#userPanel.login #loginForm{display:none}
#userPanel.login #adminForm{display:block}
#formTitle{margin-bottom:5px}
/* モーダルウィンドウ */
html.showModal,body.showModal{height:100%;overflow-y:hidden}
.hide{display:none}
.closeBtn{position:fixed;top:0;right:0;z-index:55;opacity:0.85;width:30px;height:30px;background:#F3F3F3 padding-box;border-radius:50%;box-shadow:0 0 0 2px #535d67 inset;color:#535D67;border:5px solid transparent;text-align:center;transition:.2s linear}
.closeBtn::after{font-family:Arial,"Helvetica CY","Nimbus Sans L",sans-serif !important;content:"×";display:block;font-size:30px;line-height:30px;transition:.2s linear}
.closeBtn:hover,.closeBtn:active{background-color:#535D67;box-shadow:0 0 0 2px #DDD inset}
.closeBtn:hover.closeBtn:after,.closeBtn:active.closeBtn:after{color:#DDD}
#overLayer{
position:absolute;top:0;left:0;right:0;bottom:0;max-width:100%;min-height:100%;max-height:100%;padding-bottom:70px;
box-sizing:border-box;
transition:transform .3s ease-out,opacity .3s ease-out;
transform:scale(.9);
opacity:0;background:var(--body-bg);z-index:50;overflow-x:hidden;overflow-y:scroll}
#overLayer.show{transform:scale(1);opacity:1}
#overLayer h2{font-size:16px;padding:7px;color:#F3F3F3;text-shadow:1px 1px rgb(0 0 0 / 30%);box-shadow:0 0 2px 2px rgb(0 0 0 / 30%);background:linear-gradient(var(--brand-light-bg),var(--brand-bg))}
#overLayer h2 .userid{margin-left:10px;font-size:12px;font-weight:normal;vertical-align:2px}
#stateMessage{position:fixed;top:0;left:0;width:100%;padding:4px 0;background:rgb(0 0 0 / 70%);color:rgb(255 255 255 / 80%);text-align:center;z-index:60;transform:translateY(-100%);transition:transform .2s}
#stateMessage.show{transform:translateY(0)}
#floatBtn{position:fixed;width:100%;bottom:-65px;padding:10px 0;text-align:center;z-index:60;transition:transform .3s}
#floatBtn.show{transform:translateY(-80px)}
#floatBtn button{appearance:none;width:46%;height:44px;font-size:14px;padding:10px 0;margin:0 2%;border-radius:3px;transition:.3s;box-shadow:4px 4px 10px rgb(0 0 0 / 30%);max-width:300px}
#floatBtn [id$="ok"],#editbox .done{font-weight:bold;color:var(--action-btn-text-color);border-color:#ceac88;background:linear-gradient(#ffb341,#ffa51e)}
#editbox .start{width:20%}
select[id^="select"]{width:100%;padding:14px 10px;font-size:inherit;border:0;outline:none;border-radius:0}
.selectWrap{position:relative}
#overLayer .selectWrap{margin-bottom:9px}
.selectWrap.col2::after{content:"»";position:absolute;top:50%;right:55%;margin-top:-12px}
.selectWrap.col2 select{width:50%;box-sizing:border-box;background-image:none}

.over{color:#33b73b}
.under{color:#B63A3A}
#overLayer h3{color:#878350;background:var(--main-bg);font-size:12px;padding:1px;text-align:center;border-bottom:1px solid #87835080}
.reportTable{font-size:12px;width:100%;border-bottom:1px solid var(--dark-border);letter-spacing:0;background:var(--main-bg)}
.reportTable tr{border-bottom:1px solid rgb(0 0 0 / 8%)}
.reportTable tr.h td{font-weight:bold;padding:2px 5px;font-size:11px;background:var(--main-bg-diff)}
.reportTable td{white-space:nowrap;padding:8px 4px}
.reportTable .switch>td:first-child::before{border:1px solid currentColor;color:#0081bb;content:"+";font-family:Arial,"Helvetica CY","Nimbus Sans L",sans-serif !important;display:inline-block;width:14px;height:14px;font-size:14px;text-align:center;border-radius:50%;line-height:1;margin-right:5px;transition:.3s}
.reportTable .switch.show>td:first-child::before{color:#bd2c2c;transform:rotate(135deg)}
.reportTable .switch>td{padding:12px 4px}
.reportTable .switch+tr{display:none}
.reportTable .switch+tr.show{display:table-row}
.reportTable .switch+tr>td:first-child{padding:0}
.reportTable .tableWrap{overflow-x:scroll;overflow-y:hidden}
.reportTable .tableWrap table{box-shadow:0 1px 3px rgb(0 0 0 / 10%) inset;width:auto;font-size:12px;border:0;table-layout:fixed;text-align:center}
#overLayer .submenu>div>button{transition:.3s}
#overLayer .submenu>div>button.action{background:#bd2c2c;color:#EEE;border-color:#b97777}
#overLayer .graphBox{background:var(--main-bg);margin-bottom:10px;padding:16px 12px}

#canvas_coverage{width:140px;height:170px;margin:auto;position:relative}
#canvas_coverage .fore,#canvas_coverage .back{position:absolute;top:0;left:0;width:140px;height:170px}
#canvas_coverage .fore{z-index:1}
.flexBox{display:flex}
.flexBox>*{flex:1;text-align:center}
.flexBox .left{margin:auto;padding-right:10px}
.flexBox .right{text-align:left}
.flexBox .right>div{position:relative;font-size:10px;margin-bottom:10px;max-width:200px}
.flexBox .right span{font-size:16px;font-weight:bold}
.flexBox .right>div>p{color:rgb(var(--pure-gray) / 70%)}
.flexBox .right button{position:absolute;right:0;top:0;font-size:12px}
.flexBox .right>div:nth-of-type(1)>span,#coverageTable .switch>:nth-child(3){color:#e3a912}
.flexBox .right>div:nth-of-type(2)>span,#coverageTable .switch>:nth-child(4){color:#979C9A}
.flexBox .right>div:nth-of-type(3)>span,#coverageTable .switch>:nth-child(5){color:#ac724e}
#coverageTable tr[class]>:nth-child(n+2){text-align:right}
#coverageTable .complete{font-size:10px;border-radius:2px;padding:2px 3px;color:#4b2910;background:linear-gradient(45deg, hsl(46 84% 49%), hsl(47 100% 90%) 70%, hsl(46 84% 49%))}

#canvas_total{height:90px}
.flexBox.history [id^="canvas"]{width:90px;height:110px}
[id^="submenu"]{position:relative;border:2px solid;text-align:right;border-collapse:separate;color:#262626;margin-top:5px}
[id^="submenu"] tr td:first-child{text-align:left;min-width:120px;font-weight:bold}
[id^="submenu"]::before,[id^="submenu"]::after{content:"";display:block;width:0;height:0;position:absolute;border:10px solid transparent}
[id^="submenu"]::before{top:-20px}
[id^="submenu"]::after{top:-17px}
#submenu_1{border-color:#EF8843;background:#ffeed4}
#submenu_1::before{border-bottom-color:#EF8843}
#submenu_1::after{border-bottom-color:#ffeed4}
#submenu_2{border-color:#FFE450;background:#ffffd0}
#submenu_2::before{border-bottom-color:#FFE450}
#submenu_2::after{border-bottom-color:#ffffd0}
#submenu_3{border-color:#A9E822;background:#efffd0}
#submenu_3::before{border-bottom-color:#A9E822}
#submenu_3::after{border-bottom-color:#efffd0}
#submenu_3::before,#submenu_3::after{right:16%;right:calc(50% - (90px + (100vw - 24px - 270px)/6*2));margin-right:-10px}
.pos1::before,.pos1::after{left:16%;left:calc(50% - (90px + (100vw - 24px - 270px)/6*2));margin-left:-10px}
.pos2::before,.pos2::after{left:50%;margin-left:-10px}
.pos3::before,.pos3::after{right:16%;right:calc(50% - (90px + (100vw - 24px - 270px)/6*2));margin-right:-10px}
.pos4::before,.pos4::after{left:24%;left:calc(50% - (45px + (100vw - 24px - 180px)/4));margin-left:-10px}
.pos5::before,.pos5::after{right:24%;right:calc(50% - (45px + (100vw - 24px - 180px)/4));margin-right:-10px}
#historyTable tr:not([class]) td:first-child{font-size:10px;color:#888}
#historyTable tr.h:first-child>.asc::after{content:"▲";font-size:9px}
#historyTable tr.h:first-child>.desc::after{content:"▼";font-size:9px}
#historyTable tr:nth-child(n+103){display:none}

#everytestTable tr td:nth-child(2),#everytestTable tr td:nth-child(5){font-size:11px}
#everytestTable tr td:nth-child(3){text-align:center}
#everytestTable tr:not([class]) td:nth-child(4){text-align:right}
#everytestTable td[class]{font-weight:bold}
#everytestTable .ok{color:#66a822}
#everytestTable .caution{color:#e59d15}
#everytestTable .ng{color:#df472b}

#checkTable{table-layout:fixed;text-align:center}
#checkTable .title{width:60%;text-align:left}
#checkTable tr[class]:not([class^="check"])>:nth-child(2),#checkTable .check1 .checked{color:#8CBC08}
#checkTable table .check1{border-left:10px solid #8CBC08}
#checkTable tr[class]:not([class^="check"])>:nth-child(3),#checkTable .check2 .checked{color:#DC9A1B}
#checkTable table .check2{border-left:10px solid #DC9A1B}
#checkTable tr[class]:not([class^="check"])>:nth-child(4),#checkTable .check3 .checked{color:#DA4F66}
#checkTable table .check3{border-left:10px solid #DA4F66}
#checkTable.edit tr.switch>:nth-child(n+2){opacity:.5;animation:shake .5s linear infinite}
#checkTable table td{min-width:30px;color:rgb(var(--pure-gray) / 20%);transition:transform .2s ease-out}
#checkTable.edit table td{color:rgb(var(--pure-gray) / 40%)}
#checkTable table td.checked{transform:scale(1.5) rotate(360deg) translateZ(0)}

.confirmTable{margin:10px 4px;border-radius:4px;background:var(--main-bg)}
.confirmTable dt{padding:5px 0 0 5px;font-size:11px;color:var(--dt-color);font-weight:normal}
.confirmTable dd{font-size:16px;margin:0;padding:5px 10px;border-bottom:1px solid rgb(0 0 0 / 20%);position:relative}
.confirmTable dd:last-child{border-bottom:none}
.confirmTable dd button{position:absolute;top:-5px;right:5px}
.confirmTable dd i:not(.loading){vertical-align:-1px;margin:0 5px 0 -5px}
.confirmTable dd label{display:block}
.confirmTable .currentEmail{font-size:15px;word-break:break-all;letter-spacing:0}
.confirmTable dd.checked{background:rgb(239 188 6 / 15%)}
#overLayer [name="recommend"]{display:none}

#changeMembership.register{background:linear-gradient(#ffe092,#f1ad32);font-weight:bold;color:#533131}
#sliderWrap{overflow-x:hidden;position:relative}
#slider{display:table}
#slider:not(.init){transition:transform .2s}
#slider>div{box-sizing:border-box;display:table-cell;vertical-align:top}
.kanji{display:inline-block;width:35px;height:35px;background:url(../img/kanjifont.png) no-repeat;background-size:420px 70px}

i{background:var(--sprite-doujou-url) no-repeat;background-size:192px auto;display:inline-block;vertical-align:middle;overflow:hidden;font-style:normal}
i.ok, i.ng, i.caution, i.maru, i.un{position:relative;background:none !important;letter-spacing:0;width:14px;height:14px;margin-right:2px}
i.ok::before{content:"";position:absolute;display:block;width:8px;height:3px;border:solid #51b90f;border-width:0 0 2px 2px;left:1px;top:50%;margin-top:-4px;transform:rotate(-45deg)}
i.caution::before{content:"!";position:absolute;display:block;width:12px;height:12px;line-height:14px;border:1px solid #eccd5f;border-radius:50%;color:#544e41;font-size:11px;text-align:center;background:#fdd249;background:linear-gradient(to right bottom,#ffe458,#ffc31a)}
i.ng::before,i.ng::after{content:"";position:absolute;display:block;width:12px;height:2px;background:#ef4c4c;left:1px;top:50%;margin-top:-1px}
i.ng::before{transform:rotate(-45deg)}
i.ng::after{transform:rotate(45deg)}
i.loading{background:transparent;width:10px;height:10px;border:2px solid #3FBDFF;border-radius:50%;border-right-color:rgb(255 255 255 / 20%);margin-right:5px;animation:spin 1.5s linear;animation-iteration-count:infinite}
i.loading.large{width:30px;height:30px;border-width:4px;display:block;margin:auto}
i.ok.large{width:26px;height:26px}
i.ok.large::before{width:20px;height:7px;border-width:0 0 4px 4px;margin-top:-8px}
i.ok.exlarge{width:150px;height:150px}
i.ok.exlarge::before{width:120px;height:40px;border-width:0 0 20px 20px;margin-top:-36px;left:5px}
i.ok.exlarge::after{content:"";position:absolute;right:0;top:0;width:100%;height:100%;background:var(--body-bg);z-index:1;transition:width .5s}
i.ok.exlarge.show::after{width:0}
i.caution.large{width:130px;height:130px}
i.caution.large::before{width:120px;height:120px;line-height:130px;border-width:5px;font-size:120px}
i.maru{border:3px solid #54BB5A;border-radius:50%;box-sizing:border-box}
i.un::before{content:"";position:absolute;display:block;width:12px;height:3px;background:rgb(var(--pure-gray) / 50%);top:50%;margin-top:-1px;left:1px}
i.ng.batu::before,i.ng.batu::after{height:3px}
i.maru,i.un,i.ng.batu{margin:0}
i.user, i[class^="menu_"]{width:24px;height:24px}
i.user{background-position:0 0;transition:transform .3s}
#main_contents.panel-show i.user{transform:rotateY(360deg)}
.login i.user{background-position:-24px 0}
.login.member i.user{background-position:-48px 0}
i[class^="menu_"]{margin-right:5px}
i.menu_kakomon{background-position:-72px 0}
i.menu_bunya{background-position:-96px 0}
i.menu_origin{background-position:-120px 0}
i.menu_keyword{background-position:-144px 0}
i.menu_bbs{background-position:-168px 0}
#adminForm i{width:42px;height:42px}
i.membership{background-position:0 -24px}
i.review{background-position:-42px -24px}
i.unanswer{background-position:-84px -24px}
i.everytest{background-position:-126px -24px}
i.history{background-position:0 -66px}
i.coverage{background-position:-42px -66px}
i.checklist{background-position:-84px -66px}
i.account{background-position:-128px -66px}
i.iuser,i.password,i.confirm,i.email,i.note,i.iuser_fill,i.backup,i[class^="rank"],i.member{width:16px;height:16px}
i.iuser{background-position:0 -108px}
i.password{background-position:-16px -108px}
i.confirm{background-position:-32px -108px}
i.email{background-position:-48px -108px}
i.note{background-position:-64px -108px}
i.iuser_fill{background-position:-96px -108px}
i.backup{background-position:-112px -108px}
i.rank{background-position:-80px -108px}
i.rank3{background-position:-128px -108px}
i.rank2{background-position:-144px -108px}
i.rank1{background-position:-160px -108px}
i.rank0{background-position:-176px -108px}
i.rank-{background-position:-9999px -9999px}
i.member{background-position:-96px -124px}
i.eye{width:24px;height:24px;background-position:-168px -25px}
[type="password"]~i.eye{background-position:-168px -44px}
i.calc{width:20px;height:28px;opacity:.7;background:no-repeat url(data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2228%22%3E%3Cg%20style%3D%22stroke%3A%23aaa%3Bstroke-width%3A3%3Bfill%3A%23aaa%22%3E%3Crect%20x%3D%221%22%20y%3D%221%22%20rx%3D%222%22%20ry%3D%222%22%20width%3D%2218%22%20height%3D%2226%22%20style%3D%22fill%3Anone%3Bstroke-width%3A2%22%20%2F%3E%3Cline%20x1%3D%223%22%20y1%3D%226%22%20x2%3D%2217%22%20y2%3D%226%22%20style%3D%22stroke-width%3A4%22%20%2F%3E%3Cline%20x1%3D%225%22%20y1%3D%2211%22%20x2%3D%225%22%20y2%3D%2224%22%20style%3D%22stroke-dasharray%3A3%2C2%22%20%2F%3E%3Cline%20x1%3D%2210%22%20y1%3D%2211%22%20x2%3D%2210%22%20y2%3D%2224%22%20style%3D%22stroke-dasharray%3A3%2C2%22%20%2F%3E%3Cline%20x1%3D%2215%22%20y1%3D%2211%22%20x2%3D%2215%22%20y2%3D%2224%22%20style%3D%22stroke-dasharray%3A3%2C2%2C8%22%20%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E) !important}
i.calc.show{filter:sepia(50%) hue-rotate(-10deg) saturate(500%)}

#tw-follow-btn{display:inline-block;color:#FFF;font-size:14px;border-radius:4px;padding:4px 10px;background:#000;box-shadow:0 2px 0 #3f3f3f}
#tw-follow-btn:active{opacity:.85}
#tw-follow-btn i{background-size:127px auto;width:16px;height:16px;background-position:0 -82px;margin-right:4px}
.social-btn-list{list-style:none;display:flex;justify-content:center;margin:15px 2% 0;padding-bottom:5px}
.social-btn-list li{flex:1;margin:0;max-width:180px}
.social-btn{display:block;width:100%;padding:7px 0 3px;text-align:center;font-size:11px;color:#fff;cursor:pointer;transition:0.2s;user-select:none}
.social-btn:active{transform:translateY(1px)}
.social-btn i{display:block;width:24px;height:24px;margin:0 auto}
.ln-btn{background-color:#06C755;box-shadow:0 1px 0 #09a548;border-radius:0 3px 3px 0}
.ln-btn i{background-position:-72px -124px}
.ln-btn::after{content:"学習成績を送る"}
.tw-btn{background-color:#000;box-shadow:0 1px 0 #3f3f3f;border-radius:3px 0 0 3px}
.tw-btn i{background-position:0 -124px}
.tw-btn::after{content:"学習成績をポスト"}
.fb-btn{background-color:#1877F2;box-shadow:0 1px 0 #1d63bd}
.fb-btn i{background-position:-24px -124px}
.fb-btn::after{content:"学習成績をシェア"}
.link-btn{background-color:#ccc}
.link-btn i{background-position:-48px -124px}
.social-btn-list_mini{text-align:center;margin:30px 0 70px}
.social-btn-list_mini .social-btn{display:inline-block;width:24px;height:24px;border-radius:50%;box-shadow:none;padding:6px;margin-left:8px;vertical-align:middle}
.social-btn-list_mini .social-btn:active{transform:none}
.social-btn-list_mini .social-btn::after{content:""}

.bbs i{background:url(img/sprite_bbs.png) no-repeat;background-size:224px 64px;display:inline-block;font-style:normal;vertical-align:middle;overflow:hidden;line-height:1}
i[class^="kao"]{width:32px;height:32px;position:absolute}
.menu.bbs i[class^="kao"]{left:4px;top:50%;margin-top:-16px}
.bbsUser i[class^="kao"]{left:4px;top:-5px}
i.kao1{background-position:0 0}
i.kao2{background-position:-32px 0}
i.kao3{background-position:-64px 0}
i.kao4{background-position:-96px 0}
i.kao5{background-position:-128px 0}
i.kao6{background-position:-160px 0}
i.kao7{background-position:-192px 0}
i.kao8{background-position:0 -32px}
i.kao9{background-position:-32px -32px}
i.kao10{background-position:-64px -32px}
i.kao11{background-position:-96px -32px}
i.kao12{background-position:-128px -32px}
i.kao13{background-position:-160px -32px}
i.kao14{background-position:-192px -32px}
i.nusi,i.shusei,i.bbsnew,i.bbsup{line-height:1;font-size:10px;color:#FFF}
i.nusi{padding:4px 8px;margin-top:-4px;border-radius:3px;background:#3b85fd}
i.nusi::before{content:"スレ主"}
i.shusei{padding:4px 4px;border-radius:3px;background:#4cb012}
i.shusei::before{content:"修正依頼"}
i.bbsnew{padding:2px 2px;border-radius:2px;background:#ff9800}
i.bbsnew::before{content:"new"}
i.bbsup{padding:2px 4px;border-radius:2px;background:#f25353}
i.bbsup::before{content:"up"}
.bbsUser{position:relative;top:7px;padding:0 0 0 38px;font-size:.8em}
.bbsUser em.r{font-size:16px}
.bbsUser .no{position:absolute;bottom:2px;right:5px;font-size:10px;color:#777}
.menu.bbs>li>a{color:var(--link-color);padding:13px 30px 13px 40px;white-space:normal;line-height:1.9}
.menu.bbs>li>a:visited{color:var(--visited-color)}
.threadWrap .bookmark_checkbox{display:none}
.threadWrap .bookmark{display:block;position:absolute;right:8px;top:50%;transform:translateY(-50%) scale(1.6);padding:2px;border:5px solid transparent;line-height:1;border-radius:50%;cursor:pointer;transition:background 0.5s}
.threadWrap .bookmark::before{content:'☆';color:rgb(var(--pure-gray) / 30%)}
.threadWrap .bookmark_checkbox:checked + .bookmark::before{content:'★';color:#ebba2c}
.threadWrap .bookmark:active{background:rgb(var(--pure-gray) / 10%);transition:none}
.threadWrap::after{display:none !important}
.threadInfo{color:#777;font-size:.75em;margin-top:2px}
.qLink p{text-align:center;font-size:11px;font-weight:normal;margin-top:5px}
.bbs q{color:#ab40c3}
.bbs .pre{white-space:normal;max-height:500px;overflow-y:auto}
#bbsForm>div>div{margin-bottom:1em}
#bbsForm [type="text"],#bbsForm [type="password"]{padding:10px 5px}
#bbsForm textarea{min-width:100%;max-width:100%;min-height:400px;max-height:1000px;height:400px}
#bbsEditForm [name="editpass"]{width:220px}
.kaoiconWrap label{display:inline-block}
[name="kaoicon"] + i{position:static;margin-right:6px}
[name="kaoicon"]:checked + i{outline:1px solid var(--color-444);outline-offset:1px;border-radius:50%}
#preview{display:none}
.bbs .starWrap{display:inline-block}
.bbs .star{position:relative;display:inline-block;font-size:14px;border-radius:50%;line-height:1;padding:4px;color:#f0f0f0;margin-right:3px;letter-spacing:0;overflow:hidden;vertical-align:-0.5em}
.bbs .star::before{content:"";width:150%;height:150%;background:#fff;position:absolute;transform:rotate(45deg);animation:shine 10s ease-out infinite}
.bbs .star + span{font-weight:bold}
.bbs .star.bronze{background:linear-gradient(135deg,#d49886 50%,#bf8676 50%)}
.bbs .star.bronze + span{color:#b1604e}
.bbs .star.silver{background:linear-gradient(135deg,#b6b9bb 50%,#a4a5a9 50%)}
.bbs .star.silver + span{color:#7d8082}
.bbs .star.gold{background:linear-gradient(135deg,#e8c275 50%,#d9b05d 50%)}
.bbs .star.gold + span{color:#d29b2d}
.bbs .star.platinum{background:conic-gradient(#b0bec6 45deg, #8fa4ae 45deg 90deg, #77909d 90deg 135deg, #8fa4ae 135deg 180deg, #77909d 180deg 225deg, #8fa4ae 225deg 270deg, #b0bec6 270deg 315deg, #8fa4ae 315deg)}
.bbs .star.platinum + span{color:#526378;text-shadow:0 0 15px}
.bbs .star.diamond{background:conic-gradient(#c5d9fd 45deg, #a0c1fc 45deg 90deg, #79a8fa 90deg 135deg, #a0c1fc 135deg 180deg, #79a8fa 180deg 225deg, #a0c1fc 225deg 270deg, #c5d9fd 270deg 315deg, #a0c1fc 315deg)}
.bbs .star.diamond + span{color:#5f82c1;text-shadow:0 0 15px}
.bbs .star.god{background:conic-gradient(#f6e254 45deg, #f7c544 45deg 90deg, #dbb727 90deg 135deg, #f7c544 135deg 180deg, #dbb727 180deg 225deg, #f7c544 225deg 270deg, #f6e254 270deg 315deg, #f7c544 315deg)}
.bbs .star.god + span{color:#e7b015;text-shadow:0 0 15px}
@keyframes shine{
0%{left:-1em;top:-1em;opacity:0}
80%{left:1em;top:1em;opacity:0}
81%{left:0;top:0;opacity:.3}
100%{left:-1em;top:-1em;opacity:0}
}
/* 午後問題 */
.answerWrap ul{margin:0}
.answerWrap li{float:left;list-style:none;font-size:18px}
.inputAnswerBox select{font-size:22px}
.inputAnswerBox{margin-bottom:30px}
.inputAnswerBox li{position:relative}
.inputAnswerBox li .popup{position:absolute;left:0;top:0;right:20px;bottom:0;background:no-repeat center center/contain;transform:scale(0);transition:.3s cubic-bezier(0.175, 0.885, 0.320, 1.275);pointer-events:none}
.inputAnswerBox li .popup.maru{background-image:url(/img/maru.svg);z-index:1;transform:scale(1.2)}
.inputAnswerBox li .popup.batu{background-image:url(/img/batu.svg);z-index:1;transform:scale(1.2)}
.answerChars,.pmkaisetsu{display:none}
.answerChars li{padding-left:10px}
#pmResult{display:none;text-align:center}
#pmResult em{font-size:20px;font-weight:bold;color:#FD3C3C}
#pmNav{z-index:1;position:fixed;left:50%;transform:translateX(-50%);bottom:5px;width:fit-content;max-width:100%;overflow:scroll hidden;white-space:nowrap;box-shadow:0 0 7px 2px rgb(0 0 0 / 50%);background:rgb(40 40 44 / 90%);border-radius:10px}
#pmNav li{display:inline-block;width:80px;max-width:22%;border-right:2px ridge rgb(80 80 80 / 80%)}
#pmNav li:first-child{border-left:2px ridge rgb(80 80 80 / 80%)}
#pmNav li a{display:block;font-size:13px;color:#e6e6e6;text-align:center;padding:14px 0;-webkit-tap-highlight-color:rgb(0 0 0 / 0%)}
@media print{#pmNav{display:none}}
.mondai li[class^="li"]>ul, .mondai li[class^="li"]>ol{margin:0.5em 0 0.5em 1em}

header [id$="Btn"]::before,#calcBtn::before{content:"";position:absolute;left:-1px;top:0;width:100%;height:100%;background-color:transparent;border:1px solid transparent;border-radius:50%;transition:background-color .15s, border-color .8s}
#calcBtn::before{transform:scale(2,1.3)}
header [id$="Btn"]:active::before,#calcBtn:active::before{background-color:rgb(var(--pure-gray) / 20%);border-color:rgb(var(--pure-gray) / 20%);transition:0s}
#userBtn,#menuBtn{width:24px;height:24px;padding:5px 7px 9px;position:absolute;top:0}
#menuBtn{right:4px;z-index:41}
#userBtn{right:44px;perspective:100px}
#menuIcon{position:relative;width:100%;height:100%}
#menuIcon::before,#menuIcon::after,#menuIcon span{content:"";display:block;position:absolute;width:24px;height:1px;background:#777;transition:.4s}
#menuIcon span{top:50%;transition:.3s}
#menuIcon::before{top:4px}
#menuIcon::after{top:20px}
.menu_open #menuIcon span,.menu_open #menuBtn::after{opacity:0}
.menu_open #menuIcon::before{top:15px;transform:rotate(-45deg)}
.menu_open #menuIcon::after{top:15px;transform:rotate(45deg)}
#userBtn::after, #menuBtn::after{display:block;position:absolute;right:0;bottom:-6px;font-size:10px;white-space:nowrap;transform:scale(.7)}
#userBtn::after{content:"アカウント";width:43px}
#userBtn.login::after{content:"ログイン中"}
#userBtn.login.member::after{content:"メンバー";width:40px}
#menuBtn::after{content:"メニュー";width:40px}

.menu_open{height:100%;overflow-y:hidden}
#main_contents::before{content:"";position:fixed;z-index:-1;background:#000;opacity:0;transition:opacity .3s ease-out}
.menu_open #main_contents::before{top:0;bottom:0;left:0;right:0;opacity:.5;z-index:30}
#slidemenu{width:240px;height:100%;overflow-y:auto;background:#333;right:0;top:0;position:fixed;z-index:40;transform:translateX(245px);transition:transform .2s cubic-bezier(.215,.61,.355,1)}
.menu_open #slidemenu{transform:translateX(0);box-shadow:-1px 0 5px rgb(0 0 0 / 60%)}
#slidemenu>ul{padding-bottom:40px}
#slidemenu>ul .header{font-size:20px;padding:5px 0;font-weight:bold;text-align:center;border-bottom:6px solid #276b20;color:#CCC;text-shadow:1px 1px rgb(0 0 0 / 30%)}
#slidemenu>ul>li{border-bottom:1px solid var(--dark-border)}
#slidemenu>ul .divider{font-size:16px;font-weight:bold;padding:5px;background:#3C3C3C;color:#F6F6F6;position:relative;border:none}
#slidemenu>ul>li>a{display:block;height:20px;padding:13px 0 13px 25px;overflow:hidden;color:#CCC;font-size:14px;position:relative}
#slidemenu>ul>li>a:active{background:#2c2c2c;box-shadow:inset 0 0 5px 0px rgb(0 0 0 / 20%)}
#slidemenu>ul>li>a::after{content:"";display:block;position:absolute;right:15px;top:50%;margin-top:-5px;width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:7px solid #CCC}
@keyframes spin{
0%{transform:rotate(0);opacity:.3}
50%{transform:rotate(180deg);opacity:1}
100%{transform:rotate(360deg);opacity:.3}
}
@keyframes shake{
0%{transform:rotate(0) translate(0,0)}
12.5%{transform:rotate(.4deg) translate(1px,-1px)}
25%{transform:rotate(.8deg) translate(0,1px)}
37.5%{transform:rotate(.4deg) translate(-1px,0)}
50%{transform:rotate(0) translate(0,0)}
62.5%{transform:rotate(-.4deg) translate(1px,0)}
75%{transform:rotate(-.8deg) translate(0,1px)}
87.5%{transform:rotate(-.4deg) translate(-1px,-1px)}
100%{transform:rotate(0) translate(0,0)}
}
@media(min-width:375px){
.reportTable{font-size:13px}
}
@media(min-width:620px){
.flexBox .right span{font-size:20px}
.reportTable{font-size:15px}
.col1>li{width:50%}
.col1>li:nth-child(2n+3){clear:both}
.menu.col1>:nth-child(2n+1){border-right:1px solid var(--dark-border)}
.col2>li,.col3>li{width:25%}
.col2>li:nth-child(2n+3),.col3>li:nth-child(2n+3){clear:none}
.col2>li:nth-child(4n+5),.col3>li:nth-child(4n+5){clear:both}
.menu.col2>li:not(:nth-child(4n)){border-right:1px solid var(--dark-border)}
}
