/* IMPORT RESET */
@import url("reset.css");

/* IMPORT 12 COLUMN RESPONSIVE GS */
@import url("responsive.gs.12col.css");



body{
    color:#333;
    background:#fff url(../images/bg.png);
    font-size:62.5%;
    font-family: 'Zen Maru Gothic', sans-serif;
}

p{
    line-height:1.8;
    font-size: 16px;
}

strong {
    font-weight: bold;
}
/*================================
HEADER
================================*/
#siteID {
	padding: 10px 0;
    background-color: #36C;
    color: #ffffff;
}

#siteID h1 {
	font-size: 20px;
	font-weight: 400;
	font-family: 'Marcellus', 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
    text-align: center;
}

h1{
	font-size: 30px;
	font-weight: bolder;
	vertical-align: middle;
}
h1 img{
	vertical-align: middle;
    padding-right: 10px;
}
/*================================
画像のサイズを100%にする
================================*/
img{
    max-width: 70%;
    height: auto;
    width /***/:auto;　/*IE8のみ適用*/
}
.img30{
    width: 30% !important;
}
a:hover {
    opacity: 0.7;
}

/*===============================
contents
===============================*/
.image {
    vertical-align: middle;
}
.box {
    background: #fff;
    padding:20px 15px 15px;
    margin-bottom:20px;
    font-size:1.5em;
    position:relative;
    word-wrap:break-word;
}
.box:after {
    display: block;
    clear: both;
    height: 0;
    content:"";
}
.box h1{
    padding-left: 1.4rem;
    text-indent: -1.4rem;
}
.letter{
    letter-spacing: -0.06em;
}
.box h2{
    margin: 1em 0;
    padding: 15px;
    border-top: 2px solid #439C94;
    border-bottom: 2px solid #439C94;
    font-size: 20px;
    font-weight: 700!important;
    line-height: 1.5em;
    text-align: left;
    color: #439C94;
	letter-spacing: -0.03em;
}
.box h2 span{
font-size:80%;
}
/*科目名*/
.box h3{
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 1rem;
    text-align: center;
    width: fit-content;
    padding: 0 16px;
    border-radius: 50px;
    display: block;
}
.koku{
    background-color: #ee86a1;
    color: #ffffff;
}
.san{
    background-color: #81b8e4;
    color: #ffffff;
}
.ri{
    background-color: #32a238;
    color: #ffffff;
}
.sha{
    background-color: #f29439;
    color: #ffffff;
}
.ei{
    background-color: #9070af;
    color: #ffffff;
}
.pro{
    background-color: #a0522d;
    color: #ffffff;
}
.box h4{
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 1rem;
}
.box h5{
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 0.5rem;
}
.textbox {	margin-bottom:4rem;}
.textbox2 {	margin-bottom:3rem;}

.t_center {
	text-align:center;
}
.strong {
	font-weight:bold;
	background:#FF0;
}
.strong2 {
	font-weight:bold;
	background:#FF0;
    font-size: 20px;
}
.caption {
    font-size: 90%;
}

.bgred {
	border: 1px solid #dddddd;
	background-color: lightcyan;
	margin: 30px 0;
	padding: 20px 40px 40px;
}
.text01 {
        text-align: center;
        font-size: 2rem;
    }
hr {
    margin: 1rem;
    border-top: 1px dotted #8c8b8b;
}
/*===============================
table
===============================*/
table {
    margin: 20px auto;
}
.tbl-r02 th {
    background: #C04020;
    border: solid 1px #ccc;
    color: #fff;
    padding: 5px;
    vertical-align: middle;
}
.tbl-r02 td {
    border: solid 1px #ccc;
    padding: 5px;
    vertical-align: middle;
}

/*ＭＡＸ ベースがＰＣ　これはスマホの指示*/
@media screen and (max-width: 640px) {
.last td:last-child {
    border-bottom: solid 1px #ccc;
    width: 100%;
}
.tbl-r02 {
    width: 100%;
}
.tbl-r02 th,
.tbl-r02 td {
    border-bottom: none;
    display: block;
    width: 100%;
}
.box h2{
font-size:20px;
letter-spacing: -0.03em;
}
}
.border{
    background:#fff;
    padding:5px;
    box-shadow:0 1px 3px #aaa;
    -webkit-box-shadow:0 1px 3px #aaa;
    -moz-box-shadow:0 1px 3px #aaa;
    behavior: url(PIE.htc);
}
.maru {
    border-radius: 50%;
}
.alignleft {
    display: block;
    float: left;
    margin-right: 15px;
    margin-bottom:1em;
}
.aligncenter {
    display: block;
    margin:0 auto;
}
.alignright {
    display: block;
    float: right;
    margin-left: 15px;
    margin-bottom:1em;
}
.youtube {
    text-align: center;
    margin-bottom: 1rem;
/*    display: none;*/
}
/*.txt{
    margin:0.5rem;
}*/
/*
================================
詳細ボタン用
================================*/
.btn a {
	display:block;
	width:88%;
	border-radius:8px;
	background-color:#09C;
	line-height: 1.8;
	color:#FFF;
	padding:1rem;
	margin:1em auto 2em;
	text-align:center;
	text-decoration:none;
	box-shadow: 0px 5px rgba(0,0,0,0.4);
	position:relative;
	max-width:700px;
    font-size: 20px;
    font-weight: bold;
}
.btn-mente a {
	display:block;
	width:88%;
	border-radius:8px;
	background-color:#ddd;
	line-height: 1.2;
	color:#FFF;
	padding:1rem;
	margin:1em auto 2em;
	text-align:center;
	text-decoration:none;
	box-shadow: 0px 5px rgba(0,0,0,0.4);
	position:relative;
	max-width:700px;
    font-size: 20px;
    font-weight: bold;
}
.btn a:hover{
    opacity: 0.7;
}
/*Ｍｉｎｉベースがスマホで作成　ＰＣの指示*/
@media screen and (min-width:600px) {
.btn a {
    display: block;
    text-align: center;
    text-decoration: none;
    padding: 1rem 0;
    font-size: clamp(0.9rem, 4.8vw, 1.6rem);
    /*font-size: 19px;*/
    color:#FFF;
    margin-bottom: 1rem;
}
}
/*==========================================
    使いまわし
============================================*/
.mt1 {margin-top: 1rem;}
.mt2 {margin-top: 2rem;}
.mt3 {margin-top: 3rem;}

.mb1 {margin-bottom: 1rem;}
.mb2 {margin-bottom: 2rem;}
.mb3 {margin-bottom: 3rem;}
.mb4 {margin-bottom: 4rem;}
.mb5 {margin-bottom: 5rem;}
.mb8 {margin-bottom: 8rem;}
/*================================
画像＋テキスト 1
================================*/
.flex h4 {
    font-size: 20px;
    color: #FF8C00;
    margin-top: 10px;}
.flex img{
    display: block;
    max-width: 100%;
    margin: 0 auto 1rem;
}
.item {width: 48%;}
/*Ｍｉｎｉベースがスマホで作成　ＰＣの指示*/
@media screen and (min-width:600px) {
.flex{
    display:flex;
    flex-wrap:nowrap;
    justify-content:space-between;
}
.item+.item{
    margin-left:1.0em;
}
}
/*ＭＡＸ ベースがＰＣ　これはスマホの指示*/
@media screen and (max-width:600px) {
.item {width: 100%;
}
.mb4 {margin-bottom: 2rem;}/*スマホだと空きすぎる問題のため*/
.mb5 {margin-bottom: 3rem;}
.mb8 {margin-bottom: 4rem;}
}
/*================================
画像＋テキスト 2　体験談など
================================*/
.flex2 {
    border-top:3px double #cccccc;
    border-bottom:3px double #cccccc;
    padding:1rem 0;
    margin-bottom: 1rem;
}
.flex2 h4 {
    font-size: 20px;
    color: #FF8C00;
    margin-top: 10px;
}
.flex2 img{
    display: block;
    max-width: 100%;
    margin: 0 auto;
    border-radius: 10px;
    }
.item3{color: #0000FF;}

/*Ｍｉｎｉベースがスマホで作成　ＰＣの指示*/
@media screen and (min-width:600px) {
.flex2{
    display:flex;
    flex-wrap:nowrap;
    justify-content:space-between;
}
.item2{margin: 0 10px;
    width: 30%;}
.item3{margin: 0 10px;
    width: 70%;}
}
/*ＭＡＸ ベースがＰＣ　これはスマホの指示*/
@media screen and (max-width:600px) {
.item2 {width: 100%;}
.flex2 img{
    max-width: 50%;
    margin-bottom: 1rem
}
}
/*================================
改行
================================*/
.visible-pc {
	display: block;
}
.visible-ts {
	display: none;
}
/*ＭＡＸ ベースがＰＣ　これはスマホの指示*/
@media screen and (max-width: 812px) {
.visible-ts {
	display: block;
}
.visible-pc {
	display: none;
}
}
/*================================
FOOTER
================================*/
#footer{
	margin-top:20px;
	background:#439C94;
}

#footer p{
	text-align:center;
	color:#fff;
	padding:10px 0;
    font-size: 12px;
}
/*ＭＡＸ ベースがＰＣ　これはスマホの指示*/
@media ( max-width : 768px ) {
.span_8,
.span_4{
    padding-left:10px;
    padding-right:10px;
}
h1 {
	font-size: 20px;
    text-align: center;
}
h1 img {
    margin-bottom: 10px;
    padding: 0px;
    }
.box h1{
    padding: auto;
    text-indent: 0;
}
p{
    line-height:1.5;
    font-size: 15px;
}
/*詳細ボタンのサイズ設定*/
p.more{
    margin:20px 20px 0;
}

p.more a{
	padding:10px 0;
	font-size:1.3em;
}
/*youtube*/
.youtube {
    height: 0;
    overflow: hidden;
    padding-bottom: 56.25%;
    padding-top: 30px;
    position: relative;
	margin: 0 0 10px;
}
.youtube iframe {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}
.box h2{
    font-size:16px;
    letter-spacing: -0.06em;
}
.box h3{
    font-size:17px;
}
.box h4{
    font-size:16px;
}
.strong{
    line-height: 1.8;
}
img.only_desktop {
	display: none;
}
.text01 {
    font-size: 1.3rem;
    line-height: 1.4;
    }
.bgred {
	margin: 30px 0;
	padding:20px;
}
.btn a {
    font-size: clamp(0.9rem, 4.8vw, 1.6rem);
    line-height: 1.4;
}
}
ul.issue li {
    width:20%;
    margin-bottom: 0.6rem;
    border-radius: 0.2rem;
    text-align: center;
    text-decoration: none;
    padding: 2 rem 0;
    font-size: 0.7rem;
    letter-spacing: -0.05em;/*new*/
}
/*ＭＡＸ ベースがＰＣ　これはスマホの指示*/
@media ( max-width : 768px ) {
br.only_desktop,
.only_desktop {
    display: none;
}}

/*Ｍｉｎｉベースがスマホで作成　ＰＣの指示*/
@media ( min-width : 768px ) {
br.only_mobile,
img.only_mobile,
.only_mobile,
pre.only_mobile {
	display: none;
}
}

/*月号選択 */
ul.issue {
    display: flex;
    list-style: none;
    flex-wrap: wrap;
    /*justify-content:space-around;*/
	position:relative;
	justify-content: center;
    }
ul.issue li {
    width:20%;
    margin-bottom: 0.6rem;
    border-radius: 0.2rem;
    text-align: center;
    text-decoration: none;
    padding: 2 rem 0;
    font-size: 1.4rem;
    }
ul.issue li a{
    display: block;
    text-align: center;
    border-radius: 0.3rem;
    text-decoration: none;
    color:#FFF;
    background-color:#439C94 /*rgba(67,156,148,0.8)*/;
    box-shadow: 0px 5px rgba(46, 45, 45,0.4);
    }
ul.backnumber li { /*月号*/
    background-color:#fff /*rgba(180,180,184,0.8)*/;
    margin-right: 9px;
    box-shadow: 0px 5px #fff;
    }
ul.lang li{ /*国語*/
    background-color:#ee86a1 /*rgba(239,133,140,0.8)*/;
    margin-right: 9px;
    }
ul.math li{ /*算数*/
    background-color: rgba(106,159,212,0.8);
    margin-right: 9px;
    }
ul.eng li{/*英語*/
    background-color: rgba(142,128,182,0.8);
    margin-right: 9px;
    }
ul.sci li{ /*理科*/
    background-color: rgba(132,210,151,0.8);
    margin-right: 9px;
    }
/*　１年生　こんげつの ひょうしクイズの こたえ　*/
/*解答をスペースで太字*/
span.quiz_answer{
    color:#666;
    font-weight: bold;
    margin-left: 1rem;
    line-height:1.8;
}

span.aka{
    color:#F11D26;
}
span.ao{
    color:#1E7ED1;
}
span.midori{
    color:#006040;
}


.list_answer-wrap {
	list-style:  none;
	margin:  0;
	padding: 0;
}
.list_answer:before {
	content:  "";
	width: 1px;
	height: 30px;
	display:  inline-block;
	position:  relative;
	margin-right: 10px;
	background-size:  contain;
	background-repeat:  no-repeat;
	vertical-align:middle;
}
.list_answer {
	background: #f9f9f9;
	margin-bottom: 3px;
	margin-left: 10px;
	padding:  10px;
	font-size:  18px;
	border-bottom: dotted 2px #b4b8b8ad;
}
/*ＭＡＸ ベースがＰＣ　これはスマホの指示*/
@media screen and (max-width:559px) {
.list_answer:before {
	width: 1px;
	height: 25px;
}
.list_answer {
	margin-left: 0px;
	padding: 0.2em;
	line-height:1.2;
	font-size:0.9em;
}
/*list_answer_sage2は未使用？*/
.list_answer_sage2:before {
	content:  "";
	width: 1px;
	height: 30px;
	display:  inline-block;
	position:  relative;
	margin-right: 10px;
	background-size:  contain;
	background-repeat:  no-repeat;
	vertical-align:middle;
}
.list_answer_sage2 {
	background: #f9f9f9;
	margin-bottom: 3px;
	margin-left: 10px;
	padding-left: 1.4rem;
	text-indent: -1.4rem;
	font-size:  18px;
	border-bottom: dotted 2px #b4b8b8ad;
}
.list_answer_sage2:before {
	width: 1px;
	height: 25px;
}
.list_answer_sage2 {
	margin-left: 0px;
	padding-left: 1.4rem;
	text-indent: -1.4rem;
	line-height:1.2;
	font-size:0.9em;
}
}

/*ＭＡＸ ベースがＰＣ　これはスマホの指示*/
@media ( max-width : 768px ) {
ul.issue li {
    width:21%;
    margin-bottom: 0.6rem;
    border-radius: 0.2rem;
    text-align: center;
    text-decoration: none;
    padding: 0.06rem 0;
    font-size: 1.1rem;
    line-height: 1.3rem;
}
ul.issue li a{
    display: block;
    text-align: center;
    border-radius: 0.3rem;
    text-decoration: none;
    color:#FFF;
    background-color:#439C94 /*rgba(67,156,148,0.8)*/;
    box-shadow: 0px 5px rgba(46, 45, 45,0.4);
}

ul.backnumber li{ /*月号*/
    background-color:#fff /*rgba(180,180,184,0.8)*/;
    margin-right: 9px;
    box-shadow: 0px 5px #fff;
}
}

/*ポピフル　モバイルのみ改行してインデント入れたい*/
.ppfl {
    margin-left: 1rem;
}
/*ポピフル　ＰＣの設定　モバイルのみspanクラスにてスペース囲んで上記インデントを入れるのでＰＣは無効化非表示
　要素の最小幅７６８*/
/*Ｍｉｎｉベースがスマホで作成　ＰＣの指示*/
@media ( min-width : 768px ) {
.ppfl {
    display: none;
    }
}

/* 1行目だけインデント*/
.sage-1only {
    text-indent: 3rem;
}
/* 2行目以降インデント*/
.sage-2ikou{
    text-indent: -1rem;
    padding-left: 2rem;
}
/* 2行目以降インデント*/
.sage-2ikou,
.sage-2ikou li{
    padding-left: 1.4rem;
    text-indent: -1.4rem;
}


p span.btm{
    padding: 2rem 0;
    margin-bottom: 2rem;
}
p span.ub{
    border-bottom: dashed 1px #ccc;
    margin-bottom: 0.8rem;
    padding: 0.07rem;
}

.aka,
.aka_ub{
    color: #C04020;
    font-weight: bold;
    margin-bottom: 0.8rem;
    padding: 0.07rem;
}
/*　デジサポ国語　4/3より、あたらしい きょうかしょ のデータで ごりよう いただけるように なります*/
.aka_ub{
    border-bottom: solid 0.6px;
}
/*なんじ・なんじはん横並び*/
.flexbox{
    display:flex;
    text-align: center;
    align-items: center;
    justify-content:center;
}
.flexbox a{
    display: inline-block;
    text-align:center;
}

.mente{
    margin-bottom:1.2rem;
}

/*再生プレイボタン*/
p span.pb{
	border: solid 1px #bdb9b9;
	border-radius: 4px;
	padding: 0.07rem;
	margin: 0.2rem;
	line-height: 1.8;

}
p span.thisway{
	border-bottom: dashed 1px #bdb9b9;
	border-radius: 4px;
	padding: 0.07rem;
	margin: 0 1rem;
}

/*１年生かんじ どうじょう使い方リンク;*/

a.set {
	color:#0066c0;
}

a.set:hover {
	color:#0066c0;
	font-weight: bold;
}
a.set:visited {
	color:#0066c0;
	font-weight: bold;
}
/*５年生　外表紙グルメクイズの答え*/
.box_fit{
	padding: 0.5em 1em;
	margin: 0 1em;
}
.box_fit p {
	padding-left:0.6em;
}
/*ＭＡＸ ベースがＰＣ　これはスマホの指示*/
@media screen and (max-width:600px) {
.box_fit{
	padding: 0.2em 0.3em;
	margin: 0 1em 1em;
}
.box_fit p {
	padding-left:0.02em;
}
}

/*.lp1 h1{
    font-size: 30px;
    margin-bottom: 1rem;
}
.lp1 h1 span{
    font-size: 20px;
}
*/
/*.box h2 span{
font-size:80%;
}*/

/*
.btn-slim a {
	display:block;
	width:88%;
	border-radius:8px;
	background-color:#09C;
	line-height: 1.8;
	color:#FFF;
	padding:1rem;
	margin:1em auto 2em;
	text-align:center;
	text-decoration:none;
	box-shadow: 0px 5px rgba(0,0,0,0.4);
	position:relative;
	max-width:700px;
    font-size: 17px;
    letter-spacing: -0.02em;
    font-weight: bold;
}
.btn0 a {
	display:block;
	width:88%;
	border-radius:8px;
	background-color:#09C;
	line-height: 1.4;
	color:#FFF;
	padding:1rem;
	margin:0.05em auto;
	text-align:center;
	text-decoration:none;
	box-shadow: 0px 5px rgba(0,0,0,0.4);
	position:relative;
	max-width:700px;
    font-size: 20px;
    font-weight: bold;
}*/
/*.textboxr {	margin-bottom:2rem;}*/

