@charset "UTF-8";
/* CSS Document */
* {
	margin: 0px;
	padding: 0px;
}

body {
	font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Lucida Grande" , "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	margin-left: auto;
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 0px;
	padding: 0px;
}

.clear {
	clear: both;
}
.clear2 {
	clear: both;
	margin-top: 20px;
}
.clear4 {
	clear: both;
	padding-top: 40px;
}
.clear_border {
	clear: both;
	border-bottom: 1px solid #CBC8C8;
}
.header{
	display: block;
}
#header_sp{ display:none;}
.pc{
	display: block;
}
.sp{ display:none;}
header { display:none;}
@media screen and (max-width: 768px) {
.header{ display:none;}
#header_sp{
	display: block;
}
#wrapper{
	background-image : url(none);
	background : url(none);
}
.pc{ display:none;}
.sp{ display:block;}
}
#wrapper{
	background-image : url(images/back.png);
	margin-top: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
	margin-right: 0px;
	padding-top: 0px;
	padding-left: 0px;
	padding-bottom: 0px;
	padding-right: 0px;
}
.box980 {
	width: 100%;
	max-width: 980px;
	margin-left: auto;
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 0px;
}
.box680 {
	width: 100%;
	max-width: 640px;
	margin-left: auto;
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 0px;
}
.header {
	width: 100%;
	margin-left: auto;
	padding-top: 10px;
	margin-right: auto;
	margin-bottom: 0px;	
}
.header_inner {
	width: 100%;
	background-color: #009BCF;
	padding-top: 5px;
	padding-bottom: 3px;
}
#footer {
	width: 100%;
	background-color: #009BCF;
	padding-top: 20px;
	padding-bottom: 20px;
}
.footer_inner {
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	max-width: 980px;
	color: #FFFFFF;
}
.privacypolicy {
	max-width: 180px;
	padding-left: 5px;
	padding-top: 5px;
	padding-right: 5px;
	padding-bottom: 5px;
	text-align: left;
	margin-bottom: 10px;
}
.privacypolicy a {
	text-decoration: none;
	
}
.privacypolicy a:link {
	color: #FFFFFF;
}
.privacypolicy a:visited {
	color: #FFFFFF;
}
.privacypolicy a:hover {
	color: #00008b;
}
.privacypolicy a:active {
	color: #00008b;
}

.contact {
	width: 100%;
	max-width: 150px;
	border: 1px solid #FFFFFF;
	padding-left: 5px;
	padding-top: 5px;
	padding-right: 5px;
	padding-bottom: 5px;
	text-align: center;
	margin-bottom: 5px;
}
h1 {
    width: 100%;
    max-width: 350px;
    margin-left: 0px;
    float: left;
}
.accessbot {
    width: 100%;
    max-width: 155px;
    margin-left: 0px;
    float: right;
    margin-top: 20px;
}
.nav {
	width: 100%;
	max-width: 980px;
	margin-right: auto;
	margin-left: auto;
}
.nav ul{
    display: table;
    width: 980px;
    list-style-type: none;
    margin-left: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-top: 0px;
    /*font: 400 normal 105% vdl-logog, sans-serif;*/
    color: #FFFFFF;
    padding-top: 3px;
	font-family: kan415typos-std, sans-serif;
	font-weight: 400;
	font-style: normal;
}
.nav a {
color:#ffffff;
text-decoration:none;
}
.nav a:link {
color:#ffffff;
text-decoration:none;
}
.nav a:visited {
color:#ffffff;
text-decoration:none;
}

li.bot1 {
	width: 100%;
	max-width: 30px;
	float: left;
	margin-left: 0px;
	margin-right: 0px;
	padding-left: 25px;
	padding-right: 25px;
	border-left: 1px solid #FFFFFF;
	border-right: 1px solid #FFFFFF;
	
}
li.bot2 {
	width: 100%;
	max-width: 145px;
	float: left;
	padding-left: 20px;
	padding-right:20px;
	border-right: 1px solid #FFFFFF;
}
li.bot3 {
	width: 100%;
	max-width: 80px;
	float: left;
	padding-left: 25px;
	padding-right: 20px;
	border-right: 1px solid #FFFFFF;
}
li.bot4 {
	width: 100%;
	max-width: 141px;
	float: left;
	padding-left: 25px;
	padding-right: 15px;
	border-right: 1px solid #FFFFFF;
}
li.bot5 {
	width: 100%;
	max-width: 166px;
	float: left;
	padding-left: 25px;
	padding-right: 18px;
	border-right: 1px solid #FFFFFF;
}
li.bot6 {
	width: 100%;
	max-width: 145px;
	float: left;
	padding-left: 20px;
	padding-right: 20px;
	border-right: 1px solid #FFFFFF;
}
.topimage {
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}
.title {
	width: 100%;
	max-width: 232px;
	margin-top: -10px;
	z-index: 1;
	position: relative;
	/*font: 400 normal 130% vdl-logog, sans-serif;*/
	background-image: url(images/top/title.png);
	height: 100px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	text-align: center;
	color: #FFFFFF;
	padding-top: 50px;
	font: 400 normal 130% kan415typos-std, sans-serif;
	text-indent: 0px;
	padding-right: 2%;
}
.center_in {
    width: 94%;
    border-left: 1px solid #009BCF;
    border-top: 1px solid #009BCF;
    margin-top: -92px;
    z-index: 2;
    height: auto;
    background-color: #FFFFFF;
    padding-top: 7%;
    padding-bottom: 4%;
    padding-left: 3%;
    padding-right: 3%;
    line-height: 180%;
}
.kuwashiku {
    width: 100%;
    max-width: 200px;
    margin-top: 20px;
    margin-right: auto;
    margin-left: auto;
    background-color: #009BCF;
    padding-top: 0.5%;
    padding-bottom: 0.5%;
    color: #FFFFFF;
    text-align: center;
}
.maxbanner {
    width: 100%;
    margin-top: 20px;
	margin-bottom: 20px;

}
.pan {
	margin-top: 20px;
	margin-bottom: 0px;
}
.cnter_r1c {
    float: left;
    width: 150px;
    display: block;
    background-color: #48B3F3;
    color: #FFFFFF;
}
.cnter_r2c {
    float: left;
    width: 200px;
	background-color: #48B3F3;
    color: #FFFFFF;
}
.cnter_r3c {
    float: left;
    width: 350px;
	background-color: #48B3F3;
    color: #FFFFFF;
}
.cnter_r4c {
    float: left;
    width: 200px;
	background-color: #48B3F3;
    color: #FFFFFF;
}
.cnter_r1 {
    float: left;
    width: 150px;
	display: block;
}
.cnter_r2 {
    float: left;
    width: 200px;
}
.cnter_r3 {
    float: left;
    width: 350px;
}
.cnter_r4 {
    float: left;
    width: 200px;
}

/*msdsai追加*/
.img-box{
	position: relative;
}

.img-box .btn_active {
	position: absolute;
	left: 0;
	top: 0;
	opacity: 0;
	transition: 0.5s;
}

.img-box:hover .btn_active{
	opacity: 1;
}

.purpose {
	box-sizing: border-box;
    width: 100%;
    margin-top: -60px;
    z-index: 2;
    height: auto;
    background-color: #FFFFFF;
    padding-top: 3%;
    padding-bottom: 3%;
    padding-left: 3%;
    padding-right: 3%;
    line-height: 180%;
}
@media screen and (min-width: 768px){
.logo-box-wrap {
	overflow: hidden;
}
.nintei {
	float: left;
	width: 82%;
	margin-right: 1em;
}
.logo-box {
	float: left;
	width: 13%;
	
}
.logo-box img{
	width: 100%;
}
}

.item_long {
	font-size: 80%;
	margin-top: -.5em;/*フォント位置調整のネガティブマージン*/
}

.taisei{
	border-collapse: collapse;
	width: 100%;
}

.taisei th{
	border: 1px solid #8fbac8;
	padding: 8px;
	text-align: center;
	background-color: #b8dae6;
}
.taisei td{
	border: 1px solid #8fbac8;
	padding: 8px;
	text-align: center;
}
.subject-wrap{
	overflow-x: scroll;
}
.subject{
	border-collapse: collapse;
	width: 100%;
	white-space: nowrap;
}

.subject th{
	border: 1px solid #8fbac8;
	padding: 8px;
	text-align: center;
	background-color: #b8dae6;
}
.subject td{
	border: 1px solid #8fbac8;
	padding: 8px;
	text-align: center;
}
.row_info a{
	margin-left: 10px;
	margin-right: 10px;
}
.subject a{
	color: #1e90ff;
	text-decoration: none;
}
.subject a:hover {
	color: #00008b;
}
.subject a:active {
	color: #00008b;
}
.taiou-wrap{
	overflow-x: scroll;
}
.taiou{
	border-collapse: collapse;
	width: 100%;
	white-space: nowrap;
}

.taiou th{
	border: 1px solid #8fbac8;
	padding: 8px;
	text-align: center;
	background-color: #b8dae6;
}
.taiou td{
	border: 1px solid #8fbac8;
	padding: 8px;
	text-align: left;
}
.hyouka{
	position: relative;
	z-index: 10;
}
.hyouka a {
	color: #1e90ff;
	text-decoration: none;
}
.hyouka a:hover {
	color: #00008b;
}
.hyouka a:active {
	color: #00008b;
}

@media screen and (max-width: 768px){
.logo-box img{
	width: 100px;
}
.ability {
	margin-top: 6px;
}
.taisei {
	margin-top: 10px;
}
.taisei th{
	font-size: 0.9em;
}
.taisei td{
	font-size: 0.9em;
}

.subject {
	margin-top: 6px;
}
.subject th{
	font-size: 0.8em;
}
.subject td{
	font-size: 0.8em;
}
.gakubu{
	width: 25%;
}
.row_info{
	width: 20%;
}
.row_info a{
	margin-left: 0;
	margin-right: 0;
}

.taiou {
margin-top: 10px;
}
.taiou th{
	font-size: 0.8em;
}
.taiou td{
	font-size: 0.8em;
}
.hyouka {
	margin-top: 6px;
}
}
/*msdsaiここまで*/

.kuwashiku a {
    color: #FFFFFF;    
}
.kuwashiku a:hover {
    color: #FFFFFF;    
}
.kuwashiku a:visited {
    color: #FFFFFF;    
}
/*教科書と演習問題*/
.left_in {
	width: 43%;
/*	margin-top: -65px;*/
	margin-top: 0px;
	z-index: 2;
	height: auto;
	background-color: #FFFFFF;
/*	padding-top: 7%;*/
	padding-top: 1%;
	padding-bottom: 4%;
	padding-left: 3%;
	padding-right: 3%;
	line-height: 180%;
	float: left;
}
.right_in {
	width: 43%;
/*	margin-top: -65px;*/
	margin-top: 0px;
	z-index: 2;
	height: auto;
	background-color: #FFFFFF;
/*	padding-top: 7%;*/
	padding-top: 1%;
	padding-bottom: 4%;
	padding-left: 3%;
	padding-right: 3%;
	line-height: 180%;
	float: right;
}
.title_book {
    width: 100%;
    max-width: 900px;
    background-color: #48B3F3;
    color: #FFFFFF;
    text-align: center;
    font-size: 110%;
}
.title_book2 {
	width: 100%;
	max-width: 430px;
	background-color: #48B3F3;
	color: #FFFFFF;
	text-align: center;
	font-size: 110%;
	float: left;
	margin-bottom: 4%;
}
.title_booklevel1 {
    width: 100%;
    max-width: 900px;
    background-color: #48B3F3;
    color: #FFFFFF;
    text-align: center;
    font-size: 110%;
}
.title_booklevel2 {
	width: 100%;
	max-width: 900px;
	background-color: #70BF00;
	color: #FFFFFF;
	text-align: center;
	font-size: 110%;
}
.title_booklevel3 {
	width: 100%;
	max-width: 900px;
	background-color: #E1C700;
	color: #FFFFFF;
	text-align: center;
	font-size: 110%;
}
.title_subject1 {
	width: 100%;
	max-width: 900px;
	background-color: #0075c2;
	color: #FFFFFF;
	text-align: center;
	font-size: 110%;
}
.textproblem {
	font-size: 110%;
	border-bottom: 1px dotted #48B3F3;
	line-height: 180%;
	padding-top: 4%;
}
.textproblem img {
	width: 100%;
	max-width: 25px;
	margin-right: 2%;
	margin-left: 2%;
}
.book_small {
    text-align: center;
    font-size: 80%;
    color: #7A7A7A;
}
.book_r1 {
    float: left;
    width: 100px;
    display: block;
    padding-top: 3%;
}
.book_r2 {
    float: left;
    width: 550px;
	padding-top: 3%;
}
.book_r3 {
    float: left;
    width: 100%;
    max-width: 125px;
    padding-top: 1%;
    text-align: center;
    /*20191121 add */
    position: relative;
}
.book_r4 {
    float: left;
    width: 100%;
    max-width: 125px;
    padding-top: 1%;
    text-align: center;
    height: auto;
    /*20191121 add */
    position: relative;
}
.book_r3 img {
    width: 100%;
    max-width: 40px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: -10px;
}
.book_r4 img {
    width: 100%;
	max-width: 40px;
	margin-right: auto;
    margin-left: auto;
	margin-bottom: -10px;
}
.newicon {
	display: flex;
	justify-content: center;
	position: absolute;
	top: 10%;
	left: 55%;
	pointer-events: none;
}
.newicon img {
	width: 95%;
	height: 95%;
}
.updateicon {
	display: flex;
	justify-content: center;
	position: absolute;
	top: 10%;
	left: 50%;
	pointer-events: none;
}
.updateicon img {
	width: 95%;
	height: 95%;
}
/*詳解ありの行設定*/
.book_add_ds_r1 {
    float: left;
    width: 90px;
    display: block;
    padding-top: 3%;
}
.book_add_ds_r2 {
    float: left;
    width: 540px;
	padding-top: 3%;
}
.book_add_ds_r3 {
    float: left;
    width: 100%;
    max-width: 90px;
    padding-top: 1%;
    text-align: center;
    /*20191210 add */
    position: relative;

}
.book_add_ds_r4 {
    float: left;
    width: 100%;
    max-width: 90px;
    padding-top: 1%;
    text-align: center;
    /*20191210 add */
    position: relative;

}
.book_add_ds_r5 {
    float: left;
    width: 100%;
    max-width: 90px;
    padding-top: 1%;
    text-align: center;
    height: auto;
    /*20191210 add */
    position: relative;
}
.book_add_ds_r3 img {
    width: 100%;
    max-width: 40px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: -10px;
}
.book_add_ds_r4 img {
    width: 100%;
    max-width: 40px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: -10px;
}
.book_add_ds_r5 img {
    width: 100%;
	max-width: 40px;
	margin-right: auto;
    margin-left: auto;
	margin-bottom: -10px;
}
/*詳解ありの場合のNEWの表示*/
.newicon_add_ds {
	display: flex;
	justify-content: center;
	position: absolute;
	top: 10%;
	left: 55%;
	pointer-events: none;
}
.newicon_add_ds img {
	width: 95%;
	height: 95%;
}
/*詳解ありの場合のUPDATEの表示*/
.updateicon_add_ds {
	display: flex;
	justify-content: center;
	position: absolute;
	top: 10%;
	left: 55%;
	pointer-events: none;
}
.updateicon_add_ds img {
	width: 95%;
	height: 95%;
}

/*高校生のみなさんへページ*/
.book_hs_r1 {
    float: left;
    width: 100px;
    display: block;
    padding-top: 3%;
}
.book_hs_r2 {
    float: left;
    width: 675px;
	padding-top: 3%;
}
.book_hs_r3 {
    float: left;
    width: 100%;
    max-width: 125px;
    padding-top: 1%;
    text-align: center;
    /*20210121 add */
    position: relative;
}
.book_hs_r3 img {
    width: 100%;
    max-width: 40px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: -10px;
}
/*高校生のみなさんへページ　証明問題トレーニング用*/
.book_hs_p_r1 {
    float: left;
    width: 100px;
    display: block;
    padding-top: 3%;
}
.book_hs_p_r2 {
    float: left;
    width: 550px;
	padding-top: 3%;
}
.book_hs_p_r3{
    float: left;
    width: 100%;
    max-width: 125px;
    padding-top: 1%;
    text-align: center;
    position: relative;
}
.book_hs_p_r4{
    float: left;
    width: 100%;
    max-width: 125px;
    padding-top: 1%;
    text-align: center;
    position: relative;
}
.book_hs_p_r3 img, .book_hs_p_r4 img {
    width: 100%;
    max-width: 40px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: -10px;
}

/*ホーム画面お知らせの科研費情報*/
.kakenhi_btn {
	line-height: 3em;
	vertical-align: middle;
	margin-bottom: 10px;
	position: relative;
	display: inline-block;
	font-weight: bold;
	padding: 0.3em 0.5em;
	text-decoration: none;
	color: #00BCD4;
	background: #ECECEC;
	transition: .4s;
}
.kakenhi_btn:hover {
	background: #00bcd4;
	color: white;
}

.kakenhi_btn br {
	display: none;
}

@media screen and (max-width: 768px) {
.pan {
/*20191025*/
/*    margin-top: 100px;*/
	margin-top: 75px;
    margin-bottom: 0px;
    padding-left: 3%;
	padding-right: 2%;
    font-size: 90%;
}
.box680 {
    width: 94%;
    max-width: 680px;
    margin-left: auto;
    margin-top: 0px;
    margin-right: auto;
    margin-bottom: 0px;
    padding-right: 3%;
    padding-left: 3%;
}
.topimages {
/*20191025*/
/*    margin-top: 20%;*/
	margin-top: 75px;
}
	#sp_menu{
	display:none;
}
.menu_smart{
	display: none;
}
/* Toggle Button */
#nav-toggle {
    display: none;
    position: absolute;
    left: 3%;
    top: 15px;
    width: 35px;
    cursor: pointer;
    z-index: 101;
    font-size: 90%;
}
#nav-toggle div {
    position: relative;
}
#nav-toggle div {
    position: relative;
}	
.header_image {
	margin-top: 20%;
	margin-bottom: 3%;
}
#header_sp{
	display:block;
	width:100%;
	height:70px;
	position:fixed;
	top:0;
	background-color:#FFF;
	z-index:100;
}

#sp_menu{
	display:block;
}
#fixed{
	position:fixed;
	top:0;
	width:100%;
	height: 40px;
	border-bottom: 1px solid #808080;
}

#top-head,
    .inner {
        width: 100%;
	 padding-left: 0;
	  padding-right: 0;

    }
    #top-head {
	top: 0;
	margin-top: 0;
	margin-bottom: 0;
    }
    /* Fixed reset */
    #top-head.fixed {
        padding-top: 0;
        background: transparent;
    }
    #mobile-head {
        width: 100%;
        height: 40px;
        z-index: 9999;
        position: relative;
		padding-bottom: 0px;
    }
	h1.logo_sp{
    width: 200px;
    height: auto;
    margin-bottom: 8px;
    margin-top: 10px;
    margin-left: auto;
    margin-right: auto;
    float: none;
	}
    #top-head.fixed .log{
        position: absolute;
        left: 0;
        top: 0;
    }

    #global-nav {
        position: absolute;
        /* 開いてないときは画面外に配置 */
        top: -510px;
        background-color: #fff;
        width: 100%;
        text-align: center;
        padding-top: 0px;
        -webkit-transition: .5s ease-in-out;
        -moz-transition: .5s ease-in-out;
        transition: .5s ease-in-out;
		opacity:1.0;	filter: alpha(opacity=100);	-ms-filter: "alpha( opacity=100 )";	
    }
    #global-nav ul {
        list-style: none;
        position: static;
        left: 0;
        bottom: 0;
        font-size: 14px;
			opacity:1.0;	filter: alpha(opacity=100);	-ms-filter: "alpha( opacity=100 )";		
    }
    #global-nav ul li {
        float: none;
        position: static;
		border-bottom: solid 1px #333333;
		
    }
    #top-head #global-nav ul li a,
    #top-head.fixed #global-nav ul li a {
        width: 100%;
        display: block;
        color: #333333;
        padding: 8px 0;
    }

.menu_smart{
	display: block;
	width: 100%;
	position: fixed;
	top: 0px;
	z-index: 10000;
}
#my-menu {
	background-color: #00A0E9;
	color: #ffffff;
}
#my-menu li.sub1{
	background-color:#00A0E9;
	color: #FFF;
}
#my-menu li.sub2{
	background-color: #00A0E9;
	color: #FFF;
	text-align: center;
}
#my-menu li a span{
	color: #afd8d3;
}
	
    #nav-toggle {
        display: block;
    }
.contents {
    width: 84%;
    margin-right: auto;
    margin-left: auto;
	padding-right: 5%;
}
.title {
    width: 100%;
    max-width: 232px;
    margin-top: -10px;
    padding-right: 5%;
}
.center_in {
	width: 100%;
	height: auto;
	padding-top: 16%;
	padding-bottom: 4%;
	padding-left: 3%;
	padding-right: 3%;
	line-height: 180%;
	margin-right: auto;
	margin-left: auto;
}
/*msdsai追加*/
.purpose {
	width: 100%;
	height: auto;
	padding-top: 4%;
	padding-bottom: 4%;
	padding-left: 3%;
	padding-right: 3%;
	line-height: 180%;
	margin-right: auto;
	margin-left: auto;
}
/*ここまで*/
.cnter_r1c {
    float: left;
    width: 150px;
    display: none;
    background-color: #48B3F3;
    color: #FFFFFF;
}
.cnter_r2c {
    float: left;
    width: 200px;
	background-color: #48B3F3;
    color: #FFFFFF;
	display: none;
}
.cnter_r3c {
    float: left;
    width: 350px;
	background-color: #48B3F3;
    color: #FFFFFF;
	display: none;
}
.cnter_r4c {
    float: left;
    width: 200px;
	background-color: #48B3F3;
    color: #FFFFFF;
	display: none;
}
.katagaki {
    margin-top: 7%;    
}
.cnter_r1 {
    float: none;
    width: 150px;
    display: block;
}
.cnter_r2 {
/*	float: left;*/
	float: none;
	width: 100px;
}
.cnter_r3 {
    float: none;
    width: 350px;
}
.cnter_r4 {
    float: none;
    width: 200px;
}
.book_r1 {
    float: left;
    width: 9%;
    display: block;
    padding-top: 3%;
}
.book_r2 {
    float: left;
    width: 60%;
	padding-top: 3%;
}
.book_r3 {
    float: left;
    width: 15%;
    max-width: 125px;
    padding-top: 1%;
    text-align: center;
}
.book_r4 {
    float: left;
    width: 15%;
    max-width: 125px;
    padding-top: 1%;
    text-align: center;
    height: auto;
    margin-bottom: 2%;
}
.newicon img {
	width: 150%;
	height: 150%;
}
.updateicon {
	top: 7%;
	left: 55%;
}
.updateicon img {
	width: 150%;
	height: 150%;
}

/*詳解ありの行設定*/
.book_add_ds_r1 {
    float: left;
    width: 9%;
    display: block;
    padding-top: 3%;
}
.book_add_ds_r2 {
    float: left;
    width: 55%;
	padding-top: 3%;
}
.book_add_ds_r3 {
    float: left;
    width: 12%;
    max-width: 90px;
    padding-top: 1%;
    text-align: center;
}
.book_add_ds_r4 {
    float: left;
    width: 12%;
    max-width: 90px;
    padding-top: 1%;
    text-align: center;
}
.book_add_ds_r5 {
    float: left;
    width: 12%;
    max-width: 90px;
    padding-top: 1%;
    text-align: center;
    height: auto;
    margin-bottom: 2%;
}
/*詳解ありの場合のNEWの表示*/
.newicon_add_ds img {
	width: 180%;
	height: 180%;
}
/*詳解ありの場合のUPDATEの表示*/
.updateicon_add_ds img {
	width: 180%;
	height: 180%;
}

/*高校生のみなさんへページ*/
.book_hs_r1 {
    float: left;
    width: 9%;
    display: block;
    padding-top: 3%;
}
.book_hs_r2 {
    float: left;
    width: 50%;
	padding-top: 3%;
}
.book_hs_r3 {
    float: left;
    width: 100px;
/*    max-width: 125px;*/
    padding-top: 1%;
    text-align: center;
}
/*高校生のみなさんへ　証明問題トレーニング*/
.book_hs_p_r1 {
    float: left;
    width: 9%;
    display: block;
    padding-top: 3%;
}
.book_hs_p_r2 {
    float: left;
    width: 50%;
	padding-top: 3%;
}
.book_hs_p_r3 {
    float: left;
    width: 20%;
    max-width: 125px;
    padding-top: 1%;
    text-align: center;
}
.book_hs_p_r4 {
    float: left;
    width: 20%;
    max-width: 125px;
    padding-top: 1%;
    text-align: center;
}

.left_in {
	margin-top: 0px;
}
.right_in {
	margin-top: 0px;
}

.title_book {
	margin-top: 5%;
}
.title_book2 {
	margin-top: 2%;
}
.title_booklevel1 {
	margin-top: 5%;
}
.title_subject1 {
	margin-top: 3%;
}
.kakenhi_btn {
	line-height: 2em;
	margin-top: 10px;
}
.kakenhi_btn br {
	display: inline;
}

#footer {
	width: 100%;
	background-color: #009BCF;
	padding-top: 20px;
	padding-bottom: 20px;
}
.footer_inner {
    width: 90%;
    margin-right: auto;
    margin-left: auto;
    max-width: 680px;
    color: #FFFFFF;
    text-align: center;
    font-size: 80%;
}
}

/*NEWS画面の配置*/
.topics_title h2{
	border-bottom: 1px dotted #aaa;
	padding: 0 0 5px 5px;
	font-size: 1.2em;
	margin-top: 5px;
	margin-bottom: 5px;
}
.topics_title .topics_date{
	text-align: right;
	font-size: 0.9em;
	margin-bottom: 20px;
}
.topics_text {
	padding: 0 15px 0 15px;
}
.topics_photo {
	padding: 5px 5px 5px 5px;
}
.topics_photo img{
	width: 100%;
}

@media screen and (min-width: 768px){
.topics_title h2{
	border-bottom: 1px dotted #aaa;
	padding: 0 0 5px 5px;
	font-size: 1.4em;
	margin-bottom: 5px;
}
.topics_title .topics_date{
	text-align: right;
	margin-bottom: 20px;
}
.topics_content:after{
	content: "";
	display: block;
	clear: both;
}
.topics_text{
	float: left;
	width: 50%;
}
.topics_photo{
	float: left;
	width: 45%;
}
}

/*アクセス画面*/
.center_photo {
	padding: 5px 5px 5px 5px;
}
.center_photo img {
	width: 100%;
}
.center_name {
	padding: 15px 15px 15px 15px;
}
.center_name br {
	display: inline;
}
.center_name p{
	margin-top: 0;
	margin-bottom: 0;
}
.annai {
	padding-left: 10px;
}

@media screen and (min-width: 768px){
.center_access:after{
	content: "";
	display: block;
	clear: both;
}
.center_photo{
	float: left;
	width: 300px;
}
.center_name{
	float: left;
	width: 60%;
}
.center_name br {
	display: none;
}
.annai {
	padding-left: 10px;
}

}

 /* --- テーブル全体のスタイル指定 --------------- */
.tableArea {
  margin-left    : 0;
  margin-right   : auto;             /* 自動位置   */
  margin-top: 10px;
  border-collapse: collapse;         /* 境界線結合 */
  border-spacing : 0;                /* 罫線間余白 */
  font-size      : 12pt;              /* 文字サイズ */
  background     : #ffffff;          /* テーブル全体の背景色 */
}
 /* --- ヘッダーのスタイル指定 ------------------- */
.tableArea th {
  text-align    : center;            /* 文字位置   */
  font-weight   : bold;              /* 太文字     */
  padding       : 5px 10px;           /* 余白       */
  border        : 1px #666666 solid; /* 罫線       */
  background    : #00a1e9;           /* 背景色     */
}
 /* --- 明細のスタイル指定 ----------------------- */
.tableArea td {
  text-align    : center;            /* 文字位置   */
  padding       : 10px 10px;           /* 余白       */
  border        : 1px #666666 solid; /* 罫線       */
}

/*画面サイズが768pxより大きい時*/
@media screen and (min-width: 768px){
 /* --- テーブル全体のスタイル指定 --------------- */
.tableArea {
  margin-left    : 20px;
  margin-right   : auto;             /* 自動位置   */
  margin-top: 10px;
  border-collapse: collapse;         /* 境界線結合 */
  border-spacing : 0;                /* 罫線間余白 */
  font-size      : 15pt;              /* 文字サイズ */
  background     : #ffffff;          /* テーブル全体の背景色 */
}
 /* --- ヘッダーのスタイル指定 ------------------- */
.tableArea th {
  text-align    : center;            /* 文字位置   */
  font-weight   : bold;              /* 太文字     */
  padding       : 5px 20px;           /* 余白       */
  border        : 1px #666666 solid; /* 罫線       */
  background    : #00a1e9;           /* 背景色     */
}
 /* --- 明細のスタイル指定 ----------------------- */
.tableArea td {
  text-align    : center;            /* 文字位置   */
  padding       : 10px 20px;           /* 余白       */
  border        : 1px #666666 solid; /* 罫線       */
}
caption.kakenhi {
	font-size: 0.8em;
}	
}

/*解説集*/
.manual {
	font-size: 110%;
	border-bottom: 1px dotted #48B3F3;
	line-height: 150%;
	padding-top: 1%;
	padding-bottom: 1%;
}
.manual img {
	width: 100%;
	max-width: 25px;
	margin-right: 2%;
	margin-left: 2%;
}
/*プライバシーポリシー画面*/
.policy_title h2{
	border-bottom: 1px solid #aaa;
	padding: 10px 5px 3px 5px;
	font-size: 1.2em;
	margin-top: 5px;
	margin-bottom: 5px;

}
.policy_title p{
	margin-top: 0;
	margin-bottom: 0;
}

/*トップページお知らせ欄*/
.news_list ul{
	list-style: none;
}

.news_list li{
  padding: 10px;
  border-bottom:1px dotted #87cefa;
}

@media screen and (max-width: 768px) {
.news_day{
	font-size: 0.9em; 
}
.news_day img{
	width: 50;
}
.news_text{
	font-size: 0.95em;
}
}

/*トップへ戻るボタン*/
html{
    scroll-behavior: smooth;
}
.gotop{
    display: block;
    width: 60px;
    height: 60px;
    box-sizing: border-box;
    border-radius: 50%;
    background: #FFF;
    border: 1px solid #68a4d9;
    padding-top: 28px;
    text-align: center;
    letter-spacing: -1px;
    font-size: 85%;
    text-decoration: none;
    color: #68a4d9;
    opacity: 0.6;
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 10000;
}
.gotop::before{
    content: "";
    display: block;
    border-top: 2px solid #68a4d9;
    border-right: 2px solid #68a4d9;
    width: 25%;
    height: 25%;
    top: 25%;
    left: 0;
    right: 0;
    margin: auto;
    position: absolute;
    transform: rotate(-45deg);
}
.gotop:hover{
    opacity: 1;
}
@media(max-width:768px){
    .gotop{
        width: 40px;
        height: 40px;
        text-indent: -9999px;
        opacity: 1;
        bottom: 10px;
        right: 10px;
    }
    .gotop::before{
        bottom: 0;
        top: 20%;

    }
}
