@charset "Shift_JIS";

#main{padding-top:0;}
#main h1{margin:12px 0;}
#container .sns ul{list-style-type:none; padding-left:0; width:164px; margin:auto; overflow:hidden;}
.sns li{width:40; margin:0 0.5px; float:left;}
.sns img{vertical-align:bottom;}
#guide{margin-top:16px;}
.fb_box{text-align:center; margin-bottom:12px;}
.tw_btn{text-align:center;}
.notice{border:solid #000057 2px; margin-top:12px; padding:6px;}

.pagetop {
    margin:0;
    padding:0;
    position:fixed;
    bottom:16px;
    right:16px;
}
.pagetop a {
    display: block;
    background-color:#4c96ff;
    width:50px;
    height:50px;
    color: #fff;
    line-height:50px;
    text-decoration:none;
    text-align:center;
    -webkit-transition:all 0.3s ;
    -moz-transition:all 0.3s ;
    transition:all 0.3s ;
}
.pagetop a:hover {
    opacity:0.5;
}

@media screen and (max-width:767px){

body{
	margin:0;
}

.hidden-sp{
	display:none;
}

.break{
	display:inline-block;
}

/* リセット */

#container div, #container table, #container tr, #container td, #container h1, #container h2, #container h3, #container h4, #container p, #container ul, #container hr{
	margin:0;
	padding:0;
}

#container ul{
	list-style:none;
}

#container a{
	text-decoration:none;
}

/* 全体 */

table{
	width:100%;
	border-collapse:collapse;
}

#container{
	font-family:メイリオ;
	font-size:100%;
	line-height:1.5;
}

/* ヘッダ */

#container #header tr:first-child td{
	padding:0 6px;
	line-height:36px;
}

#header .navi1 td{
	display:inline-block;
	box-sizing:border-box;
	width:50%;
	border-bottom:1px solid #fff;
	line-height:36px;
}
#header .navi1 td:first-child{
	width:100%;
}
#header .navi1 td:nth-child(even){
	border-right:1px solid #fff;
}
#header .navi1 td a{
display:block;
}

/* コンテンツ */

#flexContainer{
	display:flex;
	flex-direction:column;
}
#flexContainer .side:first-child{
	order:2;
	border-bottom:1px dotted #808080;
}
#flexContainer .side:last-child{
	order:3;
}

/* サイド */

#flexContainer .side{
	display:block;
	box-sizing:border-box;
	width:100%;
	padding:12px 24px;
}

.side td{
	line-height:36px;
}
.side td font{
	font-size:16px;
}
.side td a{
	display:block;
}

/* メイン */

#container #main{
	box-sizing:border-box;
	width:100%;
	padding:6px;
}

#main .top{
	margin-top:12px;
}

#main .notice{
	padding:6px;
	font-size:14px;
}

#container .sns{
	margin:12px 0;
} /* snsロゴ */

#main .details{
	line-height:24px;
}

#main .to_top{
	line-height:36px;
}

#main .details font, #main .to_top font{
	font-size:14px;
}

#main p, #main h3, #main h4{
	margin-bottom:12px;
}

#main .to_top:last-of-type{
	margin:0;
}

#main h3{
	line-height:24px;
	font-size:20px;
}

/* 概要 */

#container #main #outline td{
	padding:6px;
}

#main #outline td:first-child{
	width:20%;
	line-height:24px;
	font-size:14px;
}

#main #outline td hr{
	margin:6px 0;
}

/* 参考 */

#container #main .reference td{
	padding:6px;
}

#main .reference img{
	margin-bottom:12px;
}

/* ガイド-基礎知識 */

#container #main #guide{
	margin-bottom:12px;
}

#main #guide td font{
	font-size:14px;
}

#main #guide td a{
	display:block;
	padding:6px;
	line-height:24px;
}

/* 解説 */

#container #main .explanation-1{
	margin-bottom:24px;
}

#main .explanation-1 td, #main .explanation-2 td{
	padding:6px;
}

#main .explanation-1 td p:last-child, #main .explanation-2 td p:last-child, #main .reference td p:last-child, #main #intro td p:last-child{
	margin-bottom:0px;
}

/* 解説-基礎知識 */

#main .english{
	line-height:24px;
}

#main #reason{
	width:90%;
	margin:0 auto 12px;
}

/* 解説-学習法 */

#main .caption-1 td, #main .caption-2 td, #main .caption-3 td{
	line-height:24px;
}

#main .caption-2 td:first-child{
	width:16%;
}

#main .caption-3 td:first-child, #main .caption-3 td:nth-child(2){
	width:14%;
}

#main .caption-1 td font{
	font-size:16px;
}

#main .caption-2 td font, #main .caption-3 td font{
	font-size:14px;
}

/* 問題構成 */

#container #main .questions-1{
	margin-bottom:24px;
}

#main .questions-1 td, #main .questions-2 td{
	padding:6px;
}

#main .questions-1 td hr, #main .questions-2 td hr{
	margin:6px 0;
}

#main .questions-1 .part td, #main .questions-2 .part td{
	width:auto;
	line-height:24px;
}

#main .questions-1 .part font, #main .questions-2 .part font{
	font-size:14px;
}

/* 問題構成-SW */

#container #main .questions-sw1{
	margin-bottom:24px;
}

#main .questions-sw1 td, #main .questions-sw2 td{
	padding:6px;
}

#main .questions-sw1 td hr{
	margin:6px 0;
}

#main .questions-sw1 .part td:first-child, #main .questions-sw2 .part td:first-child{
	width:30%;
	line-height:24px;
	padding-left:0;
	padding-right:0;
}

#main .questions-sw1 .part td:last-child, #main .questions-sw2 .part td:last-child{
	width:24%;
	line-height:24px;
}

#main .questions-sw1 .part font, #main .questions-sw2 .part font{
	font-size:14px;
}

/* 前置き-学習法 */

#container #main #intro{
	margin-bottom:24px;
}

#main #intro td{
	padding:6px;
	line-height:24px;
}

#main #intro h4 font, #main #intro p font{
	font-size:14px;
}

/* フッタ */

#footer p{
	line-height:24px;
}

#footer p font{
	font-size:14px;
}

#footer .navi2{
	display:table;
	width:100%;
	border-bottom:1px solid #808080;
}
#footer .navi2 a{
	display:table-cell;
	box-sizing:border-box;
	width:20%;
	padding:6px 0;
	border-right:1px dotted #808080;
	vertical-align:middle;
}
#footer .navi2 a:last-of-type{
	border:none;
}
#footer .copyright{
	display:block;
	padding:6px 0;
}

/* facebookプラグイン twitter ボタン */

.fb_box{
	margin-top:24px;
	box-sizing:border-box;
	padding:0 6px;
}

#note p{
	margin:24px 0 12px;
}

/* NCCロゴ */

.mobile-bar{
	display:block !important;
	background:#000;
	text-align:center;
	padding:16px 0;
}

.back{
	display:block !important;
} /* 不明設定 */

}