@charset "UTF-8";

/* 全体共通 */
html,body,div,p,span,h1,h2,h3,ul,ol,li{margin:0;padding:0;border:0;border-collapse:collapse;outline:0;list-style:none;background-color:rgb(255,255,255);color:rgb(32,33,36);vertical-align:baseline;overflow-wrap:break-word;word-wrap:break-word;word-break:break-all;font-family:"Helvetica Neue","ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,Arial,sans-serif;font-size:16.2px;line-height:1;letter-spacing:0.01em;z-index:0;-webkit-text-size-adjust:100%;}
html,body,div,p{background-color:rgb(254,254,254);}
form,input,button{margin:0;padding:0;border:0;border-radius:0;outline:0;background-color:rgb(254,254,254);color:rgb(32,33,36);vertical-align:baseline;font-family:"Helvetica Neue","ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,Arial,sans-serif;font-size:16.2px;line-height:1;letter-spacing:0;-webkit-text-size-adjust:100%;appearance:none;-webkit-appearance:none;}
a:link,a:visited{color:rgb(0,0,43);text-decoration:underline;}
a:hover,a:active{color:rgb(153,0,0);text-decoration:underline;}

/* [CSS] 01 */
nav a{position:relative;display:block;width:100%;height:56px;box-shadow:0 1px 4px 0 rgb(206,206,206), 0 0 0 1px rgb(216,216,216);background-color:rgb(255,255,255);user-select:none;}
nav a::before{content:"";display:inline-block;width:100%;height:100%;background-image:url("logo.png");background-position:left 16px bottom 17px;background-repeat:no-repeat;background-size:70px 25px;}
nav a span{position:absolute;display:inline-block;left:16px;top:15px;bottom:15px;line-height:26px;font-size:16.2px;font-weight:bold;text-decoration:none;}
nav a b{position:absolute;display:inline-block;right:16px;top:15px;bottom:15px;line-height:26px;padding:1px 8px 0 8px;border:solid 1px rgb(220,222,226);border-radius:2px;box-shadow:0 0.5px 0 rgb(206,206,206);background-color:rgb(249,249,249);color:rgb(32,33,36);font-size:calc(16.2px * 0.9);font-weight:normal;text-decoration:none;}
nav a:hover{filter:brightness(93%);}

/* [CSS] 02 */
header{padding:24px 16px 24px 16px;line-height:1.6;}
h1{display:block;margin:0 0 10.4px 0;padding:0 0 13.2px 0;border-bottom:solid 1px rgb(220,222,226);background-color:inherit;font-size:calc(16.2px * 1.5);font-weight:bold;line-height:1.6;letter-spacing:0.02em;}
h1 a:link{color:rgb(0,0,43);font-style:normal;text-decoration:none;}
h1 a:hover{text-decoration:underline;}

/* [CSS] 03 */
main{display:flex;}

/* [CSS] 04,05 共通 */
h2{position:relative;height:44px;line-height:44px;padding:2px 16px 0 16px;box-shadow:0 0 2px 0 rgb(0,62,112), 0 0 0 0.9px rgb(0,62,112);background:linear-gradient(180deg,rgb(0,62,112) 0%,rgb(0,61,111) 100%);color:rgb(249,249,249);font-size:calc(16.2px * 1.02);font-weight:bold;letter-spacing:0.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;user-select:none;}

/* [CSS] 04 */
#left{order:2;float:right;width:264px;margin:0 16px 2px 0;border-radius:2px;}
#left ul{margin:0 0 8px 0;box-shadow:0 0 2px 0 rgb(206,206,206), 0 0 0 0.9px rgb(216,216,216);background-color:rgb(255,255,255);}
#left ul li{counter-increment:mokuji;background-color:inherit;}
#left ul li:first-child a{border-top:solid 1px rgb(0,61,111);}
#left ul li a{display:block;padding:18px 16px 14px 16px;border-top:dashed 1px rgb(208,211,217);background-color:inherit;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1;}
#left ul li a::before{display:inline-block;width:30px;content:counter(mokuji,decimal-leading-zero)".\00a0";color:rgb(117,117,117);vertical-align:middle;font-family:serif;font-weight:bold;letter-spacing:0;}
#left ul li a:hover{filter:brightness(93%);color:rgb(0,0,43);}
#left > a{text-decoration:none;}
#left h2:hover{filter:brightness(85%);}

/* [CSS] 05 */
#right{order:1;width:calc(100% - 312px);margin:0 16px 2px 16px;border-radius:2px;}
article{padding:14px 16px 13px 16px;box-shadow:0 0 2px 0 rgb(206,206,206), 0 0 0 0.9px rgb(216,216,216);background-color:rgb(255,255,255);line-height:1.6;}
article div,article p{line-height:1.6;}
article li{margin-left:1em;text-indent:-1.06em;background-color:inherit;line-height:1.6;}
article li::before{display:inline-block;content:"";margin:0 7.7px 0 3px;box-sizing:border-box;width:6.4px;height:6.4px;vertical-align:2px;border-radius:50%;background-color:rgb(0,62,112);}
h3{position:relative;height:44px;line-height:43px;margin-bottom:7px;margin-left:-1em;padding-left:1em;background-color:inherit;font-size:calc(16.2px * 1.02);font-weight:bold;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
h3::before{content:"";position:absolute;display:inline-block;height:43px;left:-1em;width:1em;border-right:solid 8px rgb(0,62,112);}
h3::after{content:"";display:block;border-top:solid 1px rgb(220,222,226);}
hr{margin:9px 0 6px 0;padding:0;border-bottom:solid 1px rgb(220,222,226);line-height:0;}
form#search{display:flex;width:100%;box-sizing:border-box;margin:3px auto 6px auto;padding:0;border:0;border-radius:2px;box-shadow:0 0.5px 0 rgb(206,206,206);}
form#search:focus,form#search:focus-within{box-shadow:0 0.5px 2px rgb(206,206,206), 0 0 0 1px rgb(216,216,216);}
form#search input:first-child{flex:1 1 auto;width:calc(100% - 80px);box-sizing:border-box;padding:8px 8px 6px 8px;border:solid 2px rgb(44,119,243);border-right:0;border-radius:2px 0 0 2px;outline:0;background-color:rgb(247,247,255);letter-spacing:0.02em;-webkit-appearance:none;}
form#search input:first-child::placeholder{color:rgb(90,90,90);}
form#search input:last-child{width:80px;box-sizing:border-box;border:0;border-radius:0 2px 2px 0;outline:0;background-color:rgb(44,119,243);color:rgb(249,249,249);letter-spacing:0.04em;cursor:pointer;-webkit-appearance:none;}
form#search input:last-child:hover{filter:brightness(85%);}
img.border{box-shadow:0 1px 4px 0 rgb(206,206,206), 0 0 0 1px rgb(216,216,216);}

/* [CSS] 06 */
#pageNavi{clear:both;padding:16px 0 0 0;background-color:inherit;font-size:0;text-align:center;}
#pageNavi a{display:inline-block;box-sizing:border-box;width:64px;height:64px;line-height:62px;margin:0 0 0 16px;border:solid 1px rgb(220,222,226);border-radius:2px;background-color:rgb(255,255,255);color:rgb(32,33,36);font-size:16.2px;text-align:center;text-decoration:none;font-weight:bold;letter-spacing:0.04em;user-select:none;}
#pageNavi a:first-child{margin-left:16px;}
#pageNavi a:last-child{margin-right:16px;}
#pageNavi a:hover{filter:brightness(85%);}
#pageNavi::before{content:"\025c0\00a0前へ";display:inline-block;box-sizing:border-box;height:64px;line-height:62px;font-size:16.2px;font-weight:bold;}
#pageNavi::after{content:"次へ\00a0\025b6";display:inline-block;box-sizing:border-box;height:64px;line-height:62px;font-size:16.2px;font-weight:bold;}

/* [CSS] 07 */
footer{clear:both;padding:16px 0 0 0;background-color:inherit;user-select:none;}
div#pageTop a{position:relative;display:block;height:76px;line-height:54.2px;background-color:rgb(31,31,31);color:rgb(249,249,249);text-align:center;text-decoration:none;font-weight:bold;letter-spacing:0.04em;}
div#pageTop a::after{position:absolute;display:block;top:28px;width:100%;content:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA0AAAAQCAYAAADNo/U5AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAABaSURBVDhP7ZFBCgAgCASti/9/rqcCUSh18wPNIUN31YgQIrLsmhgWL04DMydNSlQTonFaVNCE2KgsIIPn9UAGJ9ZHZ3BOnZISgFb3EpTrdCs/H+1E4/8n1RFt0clnM+tVcNQAAAAASUVORK5CYII=");}
div#pageTop a:hover{filter:brightness(85%);text-decoration:underline;}
div#footerMenu a{display:block;height:56px;line-height:56px;padding:0 40px 0 16px;border-top:solid 1px rgb(90,90,90);background-color:rgb(40,41,42);color:rgb(249,249,249);background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAANCAYAAACUwi84AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAABKSURBVChTlZBBCgAgCATt6P8f67FYCdFSozmt7SASARGZGhKGL5l57GjoQyfZUEnBzqQggFO6BOClvw3tDVkJNFQleP6k4qUI0QJzADO4X+j26gAAAABJRU5ErkJggg==");background-position:right 16px center;background-repeat:no-repeat;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
div#footerMenu a:hover{filter:brightness(138%);text-decoration:underline;}
div#copyright a{display:block;height:76px;line-height:76px;border-top:solid 1px rgb(90,90,90);background-color:rgb(31,31,31);color:rgb(249,249,249);text-align:center;text-decoration:none;}
div#copyright a:hover{filter:brightness(85%);text-decoration:underline;}

/* レスポンシブ 1258px～ */
@media screen and (min-width:1258px){
header{width:1208px;margin:0 auto;}
main{width:1240px;margin:0 auto;}
}

/* レスポンシブ 660px～1258px */
@media screen and (min-width:660px) {
#left h2{position:sticky;top:0;z-index:1;}
}

/* レスポンシブ 0px～660px */
@media screen and (max-width:660px) {
html,body,div,p,span,h1,h2,h3,ul,ol,li,form,input,button{font-size:calc(16.2px * 1.04);}
h1{font-size:calc(16.2px * 1.54);}
h2,h3,li.headline-1,li.midashi{font-size:calc(16.2px * 1.06);}
main{display:block;}
div#left{order:1;float:none;width:auto;margin:0;box-shadow:none;}
div#right{order:2;float:none;width:auto;margin:0;}
#left ul{margin:0;box-shadow:none;}
#left ul li:last-child a{padding:18px 16px 24px 16px;}
article{box-shadow:none;}
#pageNavi{background-color:rgb(255,255,255);border-top:solid 1px rgb(213,213,213);}
#pageNavi a{width:49.2px;height:49.2px;line-height:47.7px;}
#pageNavi::before{height:49.2px;line-height:47.7px;}
#pageNavi::after{height:49.2px;line-height:47.7px;}
footer{background-color:rgb(255,255,255);}
}
