@charset "utf-8";
/* CSS Document */

/**
 *
 * レスポンシブウェブデザイン用
 *
**/

/**
 * タブレット端末用
**/
strong{
	font-weight:bold;
}

/*非アクティブ*/
#content_header nav ul li.active01 a {
	color:#fff;
	background: none;
}

/*hoverを追加*/
#content_header nav ul li.active01 a:hover {
	color: #2166aa;
	background: #ffffff;
}


br.tab{
	display: none;
}

br.sp{
	display: none;
}


/*コラム内共通*/


#kobetu p{
	padding:0px 0 20px 0;
	font-size:16px;
	line-height:1.8;
}


#kobetu h5 {
	font-size:30px;
	line-height: 40px;
	position: relative;
	padding: .25em 0 .5em .75em;
	border-left: 6px solid #0B5E8D;
	margin: 50px 0px 15px 0px;
}
#kobetu h5:after {
	position: absolute;
	left: 0;
	bottom: 0;
	content: '';
	width: 100%;
	height: 0;
	border-bottom: 1px solid #ccc;
}
	

#kobetu h6{
	clear:both;
	margin:0 0 10px 0;
	font-size:18px;
	line-height:26px;
	font-weight:normal;
	text-shadow: 1px 1px 3px #CCC;
}

#kobetu h6.border-bottom{
	border-bottom:1px solid #ccc;
	padding-bottom:5px;
}


#column-title-bg {
	margin-top: -27px;
	width: auto;
	min-height: 150px;
	/*border: 1px solid #297aaa;*/
	background-image: linear-gradient(
	-45deg,
	#0B5E8D 25%,
	#0B5682 25%, #0B5682 50%,
	#0B5E8D 50%, #0B5E8D 75%,
	#0B5682 75%, #0B5682
);
/* 幅8px、高さ8pxで背景画像のサイズを指定 */
	background-size: 8px 8px;
}
#contentwidth{
	margin: 0 auto;
	padding: 30px 0;
	width: 100%;
	max-width: 960px;
}
#contentwidth .category{
	padding: 3px 6px;
	border-radius: 5px;
	background: #ffffff;
	color: #176b9b;
	display: inline-table;
	margin-bottom: 10px;
	font-size: 12px;
}
#contentwidth h2{
	font-size:30px;
	line-height: 38px;
	color: #FFFFFF;
	font-weight: normal;
}
#contentwidth h3{
	font-size:20px;
	line-height: 30px;
	color: #FFFFFF;
	font-weight: normal;
}
.lead{
	background: #f6f6f6;
	padding: 20px;
	border-radius: 6px;
}

#kobetu .lead p.caution{
	color: #333;
	font-size: 12px;

}
.box_grey{
	background-color: #f6f6f6;
	border-radius: 6px;
	border: 1px solid #cccccc;
	padding: 15px !important;
	box-sizing: border-box;
}
#kobetu .box_grey h5 {
	position: relative;
	padding: .25em 0 .5em .25em;
	border-left: none;
	margin-bottom: 15px;
}
#kobetu .box_grey h5 span{
	font-size: 15px;
}
.sup{
    font-size: 8px;
    /* top: 0; */
    vertical-align: top;
    line-height: 12px;
}

img.img_auto{
	width:100%;
	height:auto;
}

#main {
    width: 100%;
    float: none;
    display: inline;
}

#kobetu .mt30{
	margin-top:30px;
}

#kobetu .mt10{
	margin-top:10px;
}

#kobetu .mt20{
	margin-top:20px;
}

#kobetu .wide50{
	width:48%;
	margin:0 1% 20px;
	float:left;
	clear:none;
	box-sizing:border-box;
}

#kobetu .overflow{
	overflow:hidden;
}


#kobetu .clr_none{
	clear:none;
}

#kobetu div.table_center{
	
	text-align: center;
}

#kobetu table.table01{
    border-top: 1px solid #ccc;
    border-right: 1px solid #ccc;
    text-align: center;
	display: inline-block;
}

#kobetu table.table01 caption{
	font-size:15px;
	margin-bottom:10px;
	color:#6171c1;
	text-align:left;
}

#kobetu table.table01 th,
#kobetu table.table01 td{
	border-bottom:1px solid #ccc;
	border-left:1px solid #ccc;
	padding:20px;
}

#kobetu table.table01 th{
	background:#6171c1;
	color:#fff;
}

#kobetu table.table01 .bg_gray{
	background:#f2f2f2;
}
#kobetu table.table01 .txt_c{
	text-align:center;
}

/* マージンボトム */
#kobetu .mb00 { margin-bottom: 0px !important; }
#kobetu .mb05 { margin-bottom: 5px !important; }
#kobetu .mb10 { margin-bottom: 10px !important; }
#kobetu .mb15 { margin-bottom: 15px !important; }
#kobetu .mb20 { margin-bottom: 20px !important; }
#kobetu .mb25 { margin-bottom: 25px !important; }
#kobetu .mb30 { margin-bottom: 30px !important; }
#kobetu .mb35 { margin-bottom: 35px !important; }
#kobetu .mb40 { margin-bottom: 40px !important; }
#kobetu .mb45 { margin-bottom: 45px !important; }
#kobetu .mb50 { margin-bottom: 50px !important; }
#kobetu .mb55 { margin-bottom: 55px !important; }
#kobetu .mb60 { margin-bottom: 60px !important; }

/* paddingボトム */
#kobetu .pb00 { padding-bottom: 0px !important; }
#kobetu .pb05 { padding-bottom: 5px !important; }
#kobetu .pb10 { padding-bottom: 10px !important; }
#kobetu .pb15 { padding-bottom: 15px !important; }
#kobetu .pb20 { padding-bottom: 20px !important; }
#kobetu .pb25 { padding-bottom: 25px !important; }
#kobetu .pb30 { padding-bottom: 30px !important; }
#kobetu .pb35 { padding-bottom: 35px !important; }
#kobetu .pb40 { padding-bottom: 40px !important; }
#kobetu .pb45 { padding-bottom: 45px !important; }
#kobetu .pb50 { padding-bottom: 50px !important; }
#kobetu .pb55 { padding-bottom: 55px !important; }
#kobetu .pb60 { padding-bottom: 60px !important; }

/* paddingトップ */
#kobetu .pt00 { padding-top: 0px !important; }
#kobetu .pt05 { padding-top: 5px !important; }
#kobetu .pt10 { padding-top: 10px !important; }
#kobetu .pt15 { padding-top: 15px !important; }
#kobetu .pt20 { padding-top: 20px !important; }
#kobetu .pt25 { padding-top: 25px !important; }
#kobetu .pt30 { padding-top: 30px !important; }
#kobetu .pt35 { padding-top: 35px !important; }
#kobetu .pt40 { padding-top: 40px !important; }
#kobetu .pt45 { padding-top: 45px !important; }
#kobetu .pt50 { padding-top: 50px !important; }
#kobetu .pt55 { padding-top: 55px !important; }
#kobetu .pt60 { padding-top: 60px !important; }

#kobetu .info_keisai{
	clear:both;
	text-align:right;
	/*margin-bottom:-10px;*/
	padding:20px 0 0 0;
}
#kobetu .sns_btn{
	margin-bottom: 30px;
}
#kobetu .btnarea{
	text-align: center;
}
#kobetu .button {
	margin-left: auto;
	margin-right: auto;
	display: inline-block;
	/*height: 54px;*/
	text-align: center;
	text-decoration: none;
	line-height: 54px;
	outline: none;
	padding: 10px 30px;
	font-size: 18px;
}
#kobetu .button::before,
#kobetu .button::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
#kobetu .button,
#kobetu .button::before,
#kobetu .button::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}
#kobetu .button {
	position: relative;
	background-color: #1abc9c;
	border-radius: 4px;
	color: #fff;
	line-height: 52px;
	-webkit-transition: none;
	transition: none;
	box-shadow: 0 3px 0 #0e8c73;
	text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
}
#kobetu .button:hover {
	background-color: #31c8aa;
	box-shadow: 0 3px 0 #23a188;
}
#kobetu .button:active {
	top: 3px;
	box-shadow: none;
}

#kobetu .wide_auto img{
	max-width:100%;
	margin:0 auto 3px auto;
}



/*special独自*/
#special h3 {
	clear: both;
	/*background-image: url(images/tsushin-h3.gif);
	background-repeat: repeat-y;*/
	font-size: 16px;
	color: #ffffff;
	line-height: 20px;
	width: auto;
	margin: 0 0 10px 0;
	padding: 10px 10px;
}

#special .h3-line {
  background:
	repeating-linear-gradient(
		45deg,
		#7684b5 0px,
		#7684b5 1px,
		#5e6fa8 3px,
		#5e6fa8 3px
	);
	border-radius: 4px;
}

#special .h3-line.pink {
  background:
	repeating-linear-gradient(
		45deg,
		#fdeef3 0px,
		#f9d3e3 1px,
		#f9d3e3 3px,
		#fdeef3 3px
	);
	color: #333;
	font-weight: 400;
}

#special h5 {
    margin: 50px 0px 30px 0px;
}
#special h5.pink {
    border-left: 6px solid #EB7A77;
}

#special h6{
	clear:both;
	margin:30px 0 30px 0;
	font-size:18px;
	line-height:26px;
	font-weight:normal;
	text-shadow: 1px 1px 3px #CCC;
	border-bottom: 1px solid #332F05;
}


#special p.sensei{
	position: relative;
	padding: 0 .5em .5em 2em;
}
#special p.sensei:before,
#special p.sensei:after {
	position: absolute;
	content: '';
	border-radius: 100%
}
#special p.sensei:before {
	top: .2em;
	left: .2em;
	z-index: 2;
	width: 18px;
	height: 18px;
	background: rgba(150, 150, 150, .5);
}
#special p.sensei:after {
	top: .7em;
	left: .7em;
	width: 13px;
	height: 13px;
	background: rgba(210, 210, 210, .5);
}
#special .pastbox{
	padding: 10px;
	box-sizing: border-box;
	margin-bottom: 70px;
	/* padding-bottom: 100px; */
	position: relative;	
}
#special .pastbox img{
	margin: auto;
	border: none;
	width: 40%;
	height: auto;
	background-color: transparent;
	margin-bottom: 10px;
}
#special .pastbox .komidashi{
	font-size: 16px;
	text-align: center;
	color: #004094;
}
#special .pastbox:after{
	position: absolute;
	content: '';
	width: 100%;
	height: 50px;
	background: url(2016/images/arrow.gif) no-repeat 50% 100%;		
}

#special img{
	padding:1px;
	background-color:#ffffff;
	border:solid 1px #cccccc;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
}

#special img.main{
	margin:5px auto;
	max-width:80%;
	height: auto;
}



#special p span.name{
	display:inline-block;
	padding:2px 20px;
	background:#6171c1;
	color:#fff;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	margin-bottom:5px;
	margin-right: 10px;
}
#special p span.name2{
	display:inline-block;
	padding:2px 20px;
	background:#D1568D;
	color:#fff;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	margin-bottom:5px;
}


#special ol.square,
#special ol.round{
    counter-reset: li;
	margin-bottom: 50px;
}

#special ol.round{
list-style: decimal;
padding-left: 20px;
}
	
#special ol.square li{
    position: relative;
    margin-bottom: 40px;
    padding-left: 45px;
    font-size: 14px;
}

#special ol.round li{
    position: relative;
    margin-bottom: 10px;
    font-size: 16px;
}

#special ol.square li:before{
	display: inline-block;
    content: counter(li);
    counter-increment: li;
    width: 35px;
    height: 35px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 0px;
    border: 1px solid #6171c1;
    font-size: 20px;
    color: #6171c1;
    text-align: center;
    line-height: 30px;
    position: absolute;
    top: -9px;
    left: 0;
}

#special a.contens{
	position: relative;
	text-decoration: none;
	display: inline-block;
    padding-right: 20px;
}
#special ol.square > li > a{
    display: block;
}
#special ol.square li:after{
content: "";
    width: 0;
    height: 0;
    position: absolute;
    top: 0px;
    border-top: 8px solid transparent;
    border-right: 0px solid transparent;
    border-bottom: 8px solid transparent;
    border-left: 8px solid #555;
	right: 0;
    transform:rotate(90deg);
}
#special ol.square li.noshirushi:after{
	content: none;
}


#special p.subtitle{
    padding: 3px 6px;
    border-radius: 5px;
    background: #eaeaea;
    display: block;
    margin-bottom: 10px;
    font-size: 14px;
}

#special p.subtitle{
    padding: 13px 6px;
    border-radius: 5px;
    background: #eaeaea;
    display: block;
    font-size: initial;
	clear: both;
}

#special p.font12,
#special span.font12{
	font-size: 12px;
}

#special ul.page {
	text-align: center;
	margin: 10px 0px;
	font-size: 18px;
}

#special ul.page li{
	display: inline;
}

#special li a.item,
#special li span.gry,
#special .list_box2 a{
    text-decoration: none;	
}

#special li a.item,
#special li span.gry{
	border: 1px solid;
    border-radius: 4px;
    padding: 5px;
	background-color: #fff;
}

#special li a.item:hover{
	background-color: #e9e9e9;
}

#special li span.gry{
	border: 1px solid #F2F2F2;
	background-color: #F2F2F2;
	color: #FFFFFF
}

#special li span.gry.active03{
	border: 1px solid #444;
	background-color: #444;
}

#special .text_box.list_box2{
	text-align: center;
	padding: 60px 0px;

}


#special .text_box.list_box2 p{
	font-size: 13px;
	padding:0px;
    margin-bottom: 30px;
}

#special .text_box{
	clear: both;
	
}


.flex_test-box.mb50{
    justify-content: start;
    display: flex;
    flex-wrap: wrap;
    gap:30px;
}

.flex_test-item{
/*    padding: 0 15px;*/
    color: #333333;
    width: calc((100% - 60px) / 3);
/*    margin-bottom: 30px;*/
    background-color: #f6f6f6;
    padding-bottom: 30px;
}

.itembox {
/*    background-color: #f6f6f6;*/
    padding: 10px;
/*    height: 100%;*/
}

.link_btn_pc90per {
    width: 90%;
    margin: 0 auto;
    text-align: center;
}

.link_btn_pc90per a, .link_btn_pc50per a {
    display: block;
    width: 96%;
    padding: 2%;
    background: #6171c1;
    color: #fff;
    font-size: 14px;
    text-decoration: none;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
}

.link_btn {
    width: 40%;
    margin: 0 auto;
    text-align: center;
}

.link_btn a, .link_btn_pc50per a {
    display: block;
    padding: 5%;
    background: #6171c1;
    color: #fff;
    font-size: 14px;
    text-decoration: none;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
}
.link_btn a.pink, .link_btn_pc50per a.pink {
    background: #EB7A77;
}

#special .img_basic {
    font-size: 12px;
    line-height: 18px;
    color: #777777;
}

#special .img_basic img {
    width: 100%;
    height: auto;
    margin-bottom: 3px;
}

#special .img_right {
	width: 300px;
    float: right;
    margin: 0 0 20px 20px;
}

#special .img_right02 {
    float: right;
    margin: 0 0 20px 20px;
    width: 16%;
}

#special p.question {
    color: #6171c1;
	padding: 0px 0px 10px 0px;
}


#special p span.blue {
    margin-bottom: 5px;
    color: #6171c1;
	
}


#special .box_border_purple{
    border: 1px solid #6171c1;
    padding: 10px;
    overflow: hidden;
    margin-bottom: 20px;
	display: inline-block;
	float: right;
    margin: 0px 0px 20px 20px;
    width: 300px;
	font-size: 16px;
}

#special .box_border_purple li{
list-style: none;
    text-indent: -1.1em;
    margin-left: 1.1em;
	margin-bottom: 0.5em;
}

#special .box_border_purple.box_border-maxw,
#special .type_profile .box_border_purple {
	float: none;
	width: 100%;
    padding: 20px;
	margin: 0;
    box-sizing: border-box;
}
#special h6.bg-title {
	
}

.type_profile .img_right_thumbR {
    float: right;
    margin: 0 20px 20px 20px;
}
.type_profile .img_basic_thumbR {
    width: 120px;
    font-size: 12px;
    line-height: 18px;
    color: #777777;
	margin-bottom: 0;
}
#special h6.bg-title {
    margin: 0 0 20px;
    border: none;
    padding: 5px 10px;
    background-color: #171717;
    color: #FFF;
    text-shadow: none;
}




#special .img_box{
	border-top:3px solid #efefef;
	/*margin:20px 0;*/
	padding:20px 0;
	width:100%;
}
#special .text_box.box_border_purple .img_box {
    border-top: none;
}
#special .img_box div{
	width:31%;
	float:left;
	margin:10px 1%;
}

#special .img_box_3pic_sp div{
	width:21.3%;
	float:left;
	margin:10px 6%;
}

#special .img_box_3pic_24per{
	display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
#special .img_box.jinbutu div{
	width:21.3%;
	float:left;
	margin:10px 6%;
}

#special .img_box_3pic_24per div{
	width:24%;
	float:left;
	margin:10px 2%;
}

#special .img_box h6{
	font-size:14px;
	margin-bottom:0;
}

#special .img_box div.img_box_1pic{
	width:auto;
	float:none;
	font-size: 12px;
	line-height: 18px;
	color: #777777;
	text-align:center;
}

#special .img_box div.img_box_1pic img{
	width:100%;
	margin:0 auto 5px;
}

#special .img_box div.img_box_1pic_w30{
	width:30%;
	float:none;
	font-size: 12px;
	line-height: 18px;
	color: #777777;
	display: inline-block;
	text-align:center;
}

#special .img_box div.img_box_1pic_w30 img{
	width:100%;
	margin:0 auto 5px;
}

#special .img_box div.img_box_2pic{
	width:31%;
	float:left;
	margin:10px 9%;
}


#special .img_pc24per div.img_box_2pic{
	width:24%;
	float:left;
	margin:10px 13%;
}

#special .img_pc48per div.img_box_2pic{
	width:48%;
	float:left;
	margin:10px 1%;
}

#special .img_box_2pic{
	width:220px;
	font-size:12px;
	line-height:18px;
	color:#777777;
}

#special .img_box.wide div.img_box_2pic {
    width: 40%;
    margin: 10px 5%;
}


#special .img_box.img_box_center div.img_box_2pic:nth-of-type(odd) {
    margin: 10px 1% 10px 19%;
}
#special .img_box.img_box_center div.img_box_2pic:nth-of-type(even) {
    margin: 10px 19% 10px 1%;
}


#special .img_box_2pic img{
	width:100%;
	height:auto;
	margin-bottom:3px;
}

#special .img_box_2pic img.w80percent{
	width:80%;
	margin:0 auto 3px;
}

#special .img_box_4pic{
	border-top:3px solid #efefef;
	margin:20px 0;
	padding:20px 0;
	width:100%;
	overflow:hidden;
}

#special .img_box_4pic div.img_basic{
	width:23%;
	float:left;
	margin:0 1%;
}

#special .img_box_4pic div.img_basic img{
}

#special .text_box.type_talk p span.name,
#special .text_box.type_talk span.name1 {
    display: inline-block;
    padding: 2px 20px;
    background: #6171c1;
    color: #fff;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    margin-bottom: 5px;
}

#special .text_box.type_talk p span.name.pink,
#special .text_box.type_talk span.name1.pink {
    background: #EB7A77;

}

#special .centerPc {
	text-align: center;
	font-size: 12px;
	line-height: 18px;
	color: #777777;
	clear: both;
}

#special .no-boder {
	border: none;
}

#special .img-lineclear_center {
	float: unset!important;
    margin: 0 auto!important;
}


.title1__flexbox {
	display: flex;
	align-items: center;
}
.title1__thumb {
	width: 120px;
	position: relative;
	overflow: hidden;
	flex-shrink: 0;
}
.title1__thumb:before {
	content: "";
	display: block;
	padding-bottom: 100%;
}
.title1__thumb img {
	position: absolute;
	top: -10%;
	left: 0;
	width: 100%;
	border-width: 0 !important;
}
.title1__text {
	padding-right: 40px;
	flex-grow: 1;
}

/**
 * 特集号記事一覧
**/

.box_kobetsu_wrap {
    display: block;
    width: 100%;
    height: 100%;
}

.box_kobetsu_wrap:nth-of-type(4n+1) {
    clear: both;
}


.tokusyu.number-box h3{
	width: 100%;
	margin: 0 0 20px 0;
    background-image: url("/jhs/shingaku_tsushin/images/tsushin-thisnumber-title02.gif");
    background-repeat: no-repeat;
    background-position: 0 bottom;
    line-height: 35px;
    padding: 0;
    font-size: 16px;
    font-weight: normal;
}

.number-box.box_special {
    clear: both;
    width: auto;
    float: none;
    background: none;
    border-bottom: 1px solid #cccccc;
    overflow: hidden;;
}


.number-box.box_special .box_kobetsu {
    width: 23%;
    margin: 0 1% 4%;
    float: left;
    background: none;
    border-bottom: none;
}

.number-box.box_special .box_kobetsu_img {
    display: block;
    margin: 0 auto 5px;
    padding: 3px;
    background: #fff;
    border: 1px solid #cccccc;
}


#special .number-box.box_special .box_kobetsu_img img{
	width: 100%;
	padding:0;
	border:none;

}



#kobetu .number-box.box_special.tokusyu h4 {
    font-size: 14px;
    font-weight: normal;
    color: #872E1D;
    line-height: 20px;
    padding: 0 0 3px 0;
    margin: 0 0% 5px 0;
    border-bottom: none;
    width: auto;
    border-bottom: 2px solid #eee;
    text-align: left;
}

#kobetu .tokusyu h5 {
    padding: 0;
    line-height: inherit;
    color: inherit;
    box-sizing: border-box;
    border: inherit;
    font-size: inherit;
	clear: both;
    margin: 0 0 10px 0;
}

#kobetu .tokusyu h5:after {
	content: none;
}

	

/*
---2026.03.26追加
---------------------------------------------------------------------------*/
button.open-modal {
    width: 90%;
    display: block;
    margin: 0 auto;
    font-size: 14px;
    padding: 2%;
    background-color: #2c8a4a;
    color: #FFFFFF;
    border-radius: 5px;
    border: none;
    cursor: pointer;
}

.modal-overlay {
    width: 100%;
    visibility: hidden; 
    opacity: 0;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.8);
    z-index: 9999;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: opacity 0.5s ease, visibility 0.5s ease;
}

.modal-overlay.is-open {
    visibility: visible;
    opacity: 1;
}

.modal-inner {
    position: relative;
    width: 80%;
    max-width: 800px;
    aspect-ratio: 16/9;
    transform: translateY(20px);
    transition: transform 0.5s ease;
}

.modal-overlay.is-open .modal-inner {
    transform: translateY(0);
}

#modalIframe {
    width: 100%;
    height: 100%;
    border: none;
}

.modal-close {
    position: absolute;
    top: -40px;
    right: 0;
    color: #fff;
    font-size: 28px;
    background: none;
    border: none;
    cursor: pointer;
}


/*
--- 戦後80年 高校生が考える平和と戦争シンポジウム
---------------------------------------------------------------------------*/

.ev-time-flame {
	padding-top: 30px;
}
.ev-time {
	
}
.ev-time dl {
	border: 1px solid #ccc;
}
.ev-time dt {
	padding: 12px 16px;
	font-weight: bold;
	background-color: #f5f5f5;
	border-bottom: 1px solid #ccc;
}
.ev-time dd {
	margin: 0;
	padding: 12px 16px;
	border-bottom: 1px solid #ccc;
}
.ev-time dt:first-of-type {
  border-top: 1px solid #ccc;
}
.ev-time dd:last-child {
	border-bottom: none;
}

.school-list {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 30px;
}
.school-list a {
	position: relative;
	display: block;
	width: calc(33.333% - 8px);
	padding: 10px 16px;
	background-color: #6171c1;
	border: 1px solid #ccc;
	border-radius: 4px;
	text-align: center;
	text-decoration: none;
	color: #fff;
	box-sizing: border-box;
	transition: background-color 0.2s;
}
.school-list a::before {
	content: "›";
	position: absolute;
	right: 12px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 1.2em;
	color: #fff;
}
.school-list a:hover {
	background-color: #b0b8e0;
}

@media (max-width: 768px) {
	.school-list a {
		width: calc(50% - 6px);
	}
	.ev-time-flame {
		margin-left: -45px;
	}
}
@media (max-width: 480px) {
	.school-list a {
		width: 100%;
	}
	.school-list {
		margin-left: -45px;
	}
}



/*
---
---------------------------------------------------------------------------*/



/**
 * タブレット端末用
**/
@media only screen and (min-width: 651px) and (max-width: 960px) {

#content{
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	padding:0 10px;
}

br.sp{
	display: none;
}

.clear_tab{
	clear:both;
}

.clear_tab_sp{
	clear:both;
}
#contentwidth{
	padding-left:10px;
	padding-right:10px;
	box-sizing:border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}

}




/**
 * スマートフォン端末用
**/

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

#content{
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	padding:0 10px;
}
br.tab{
	display: none;
}

br.sp{
	display:block;
}

.clear_sp{
	clear:both;
}
#kobetu .info_keisai{
	text-align:left;
	margin-bottom:20px;
}
#contentwidth{
	padding-left:10px;
	padding-right:10px;
	box-sizing:border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}

#kobetu h5 {
    font-size: 25px;
	line-height: 40px;
	}	


#special img.main{
	margin:5px auto;
	max-width:100%;
	height: auto;
}
#special .pastbox{
	padding: 5px;
}
	
#special .img_basic {
    width: auto;
}	
	
#special .img_right02 {
    float: right;
    margin: 0 0 20px 20px;
    width: 30%;
}
	
#special .img_right {
    float: right;
    margin: 0 0 20px 0px;
}	
	
#special .box_border_purple {
    display: block;
}
	
#special .box_border_purple {
     float: none; 
     margin: 0px 0px 10px 0px; 
     width: auto; 
}	
	
#kobetu table.table01 th, 
#kobetu table.table01 td {
    padding: 10px;
}
    
#kobetu table.table01.table-sp-block,
#kobetu table.table01.table-sp-block tbody,
#kobetu table.table01.table-sp-block tr,
#kobetu table.table01.table-sp-block th,
#kobetu table.table01.table-sp-block td{
    display: block;
    width: 100%;
    box-sizing: border-box;
}
    
#kobetu table.table01.table-sp-block td:empty {
    display: none;
}


#special .img_box.jinbutu div {
    width: 31%;
    margin: 10px 1%;
}

.number-box.box_special .box_kobetsu {
    width: 48%;
    margin: 0 1% 4%;
    float: left;
    background: none;
    border-bottom: none;
}
	
.box_kobetsu_wrap:nth-of-type(2n+1) {
    clear: both;
}


.flex_test-box.mb50{
    justify-content: start;
    display: flex;
    flex-wrap: wrap;
    gap:0;
}

.flex_test-item{
/*    padding: 0 15px;*/
    color: #333333;
    width:100%;
    margin-bottom: 30px;
    padding-bottom: 0;
}

.itembox {
    background-color: #f6f6f6;
    padding: 10px;
    height: 100%;
}

.link_btn_pc90per {
    width: 90%;
    margin: 0 auto;
    text-align: center;
}

.link_btn_pc90per a, .link_btn_pc50per a {
    display: block;
    width: 96%;
    padding: 2%;
    background: #6171c1;
    color: #fff;
    font-size: 14px;
    text-decoration: none;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
}

.link_btn {
    width: 90%;
    margin: 0 auto;
    text-align: center;
}

.link_btn a, .link_btn_pc50per a {
    display: block;
    width: 90%;
    padding: 5%;
    background: #6171c1;
    color: #fff;
    font-size: 14px;
    text-decoration: none;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
}


#special .img_box div{
	width:30%;
	margin:10px 1.6%;
}

#special .img_box div.img_box_2pic {
	width: 40%;
    margin: 10px 5%;
}

#special .text_box.type_talk p span.name,
#special .text_box.type_talk span.name1 {
    padding: 2px 10px;
}
    
.flex_test-box.flex_50per{
    gap:20px;
}
.flex_test-box.flex_50per .flex_test-item{
    width: calc(50% - 10px);
    margin-bottom: 20px;
}
    


/*
---
---------------------------------------------------------------------------*/
	.title1__thumb {
		width: 80px;
		flex-shrink: 1;
	}
	.title1__text {
		padding-right: 10px;
		flex-shrink: 0;
	}
	
}
