@charset "utf-8";

/* 共通
------------------------------------------------------------*/
*{
	margin:0;
	padding:0;
	font-family: "メイリオ","Meiryo",arial,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
}
body {
	color: #000;
	font-size:18px;
	line-height:165%;
	letter-spacing:1px;
	-webkit-text-size-adjust: 100%;
	overflow-y: scroll;
}

a		{ color:#333; text-decoration:none; }
a:hover { color:#ee0b1e; }

p {
	display:block;
	margin:0 10px 30px;
}
.BgRed p{ color:#FFF; }
p.Notice{
	background:url(images/icon_notice.png)no-repeat 0 0;
	padding:5px 0 0 45px;
	font-size:110%;
	letter-spacing:0;
	font-weight:bold;
	min-height:40px;
}

span.Date{
	background:#EEE;
	padding:1px 10px 0 15px;
}


.aligncenter { text-align:center !important; }
.alignright { text-align:right !important; }

img { max-width:100%; }
.imgright {
	display:block;
	float:right;
	margin:10px 0 10px 20px !important;
}
.imgleft {
	display:block;
	float:left;
	margin:0 60px 15px 0;
}
.imgcenter {
	display:block;
	margin:10px auto;
}
.imgBorder { border:1px solid #eee; }

.MGT20 { margin-top:20px !important; }
.MGT30 { margin-top:30px !important; }
.MGB50 { margin-top:50px !important; }

/* ふきだし */
.ResultIcon{
	display:block;
	clear:both;
	margin:10px 0 15px 100px;
	background:url(images/icon_chara01.png)no-repeat 0 0;
	min-height:100px;
	position: relative;
}
.ResultIcon span{
	display:inline-block;
	float:left;
	width:auto;
	padding:15px 18px;
	color:#FFF;
	line-height:135%;
	font-size:90%;
	font-weight:bold;
	margin-left:110px;
	margin-top:5px;
	margin-bottom:15px;
	background:#83aed1;
	border-radius:13px;
	position: relative;
}
.ResultIcon span::before{
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  left: -10px;
  top: 15px;
  border-right: 15px solid #83aed1;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
}
/* ふきだし わくわくさん */
.WakuIcon{
	display:block;
	clear:both;
	margin:10px 100px 15px;
	background:url(images/icon_waku01.png)no-repeat 0 0;
	min-height:200px;
	position: relative;
}
.WakuIcon span{
	display:inline-block;
	float:left;
	width:auto;
	padding:15px 18px;
	color:#FFF;
	font-size:105%;
	font-weight:bold;
	margin-left:230px;
	margin-top:20px;
	margin-bottom:15px;
	background:#3db270;
	border-radius:13px;
	position: relative;
}
.WakuIcon span::before{
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  left: -10px;
  top: 15px;
  border-right: 15px solid #3db270;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
}


/* アニメーションボタン */
a.AnimeBtn {
	display: inline-block;
	text-indent:0 !important;
	padding:15px 25px 13px;
	margin:0 0 10px; 
	line-height:100%;
	text-align: center;
	text-decoration: none;
	outline: none;
	position: relative;
	z-index: 2;
	background-color: #3db270;
	border: 2px solid #3db270;
	color: #FFF;
	font-size:125%;
	font-weight:bold;
	border-radius: 5px;
	webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}
a.AnimeBtn::before,
a.AnimeBtn::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
	top: 0;
	width: 50%;
	height: 100%;
	background-color: #3db270;
}
a.AnimeBtn,
a.AnimeBtn::before,
a.AnimeBtn::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}
a.AnimeBtn:hover {
	background-color: #fff;
	border-color: #000;
	color: #000 !important;
}
a.AnimeBtn::before {
	right: 0;
}
a.AnimeBtn::after {
	left: 0;
}
a.AnimeBtn:hover::before,
a.AnimeBtn:hover::after {
	width: 0;
	background-color: #333;
}
/* 小さい字 */
a.AnimeBtnSTxt {
	text-align: left;
	font-size:100%;
	font-weight:normal;
}
a.AnimeBtnSSTxt{
	font-size:85%;
	font-weight:normal;
	padding:10px 13px;
	text-align:left;
	line-height:125%;
	letter-spacing:0;
	margin-top:5px;
}

/* 左から右へアニメーション */
.AnimeLink{
	position: relative;
	display: inline-block;
}
a:hover.AnimeLink{ color:#187fc3; }
.AnimeLink:before{
	position: absolute;
	top: 26px;
	left: 0;
	content: "";
	display: inline-block;
	width: 0;
	height: 3px;
	background: #187fc3;
	transition: 0.5s;
}
.AnimeLink:hover:before{ width: 100%; }

/* レイアウト
------------------------------------------------------------*/
/* 画像ボックス */
dl.PhotoBox { display:block; }
dl.PhotoBox dt {
	width:50%;
	float:left;
	clear:both;
	margin-bottom:30px;
}
dl.PhotoBox dd {
	width:45%;
	float:right;
	text-align:left;
	margin-bottom:30px;
}
dl.PhotoBox dt img, dl.PhotoBox dd img {
	display:block;
	margin:0 auto 10px;
	max-width:95%;
}
/* 2分割 */
dl.PhotoBox dt.TwoBox,
dl.PhotoBox dd.TwoBox {
	width:50%;
}
dl.PhotoBox dt.TwoBox ul,
dl.PhotoBox dd.TwoBox ul {
	width:90%;
	margin:0 20px 15px 35px;
}
/* タイトル */
dl.H2Box {
	display:block;
	margin: 50px 0 20px;
	font-weight:bold;
}
dl.H2Box dt {
	float:left !important;
	width:130px;
	padding-top:10px;
	margin-bottom:15px;
}
dl.H2Box dt span{
	background:#000;
	color:#FFF;
	font-size:145%;
	padding:8px 15px 6px; 
}
dl.H2Box dd {
	width:calc(100% - 130px);
	float:right !important;
	text-align: left;
	font-size:175%;
	letter-spacing:1px;
	line-height:125%;
	color:#000;
}

/* ★リスト */
ul.starList {
	list-style:none;
	padding:0;
	margin:0 0 15px 23px;
}
ul.starList li {
	text-indent: -25px;
	margin-bottom:15px;
}
ul.starList li:before {
	content: "★";
	font-size:25px;
	color: #3db26f;
} 


/* 全体
------------------------------------------------------------*/
#wrapper{
	display:block;
	width:100%;
	height:100%;
	min-height:100%;
	margin:0;
	background:#fff000 url(images/bg_top.png) repeat-x;
	padding-top:40px;
	position: relative;
}
.inner {
	width:900px;
	background:#FFF;
	border-radius:15px;
	margin:10px auto;
	padding:50px 50px 30px;
}
body > div#wrapper { height: auto; }
.BgRed { background:#e70012;}
.BgGray { background:url(../kokaschool/img/bg_gray.gif);}
.BgBorder { border-top:10px solid #000; border-bottom:10px solid #000; }


/* タイトル
------------------------------------------------------------*/
h1 img {
	display:block;
	margin:30px auto;
}
h2 {
	margin: 50px 0 20px;
	text-align: left;
	font-size:175%;
	letter-spacing:1px;
	line-height:115%;
	font-weight:bold;
	color:#000;
}
h2 span{
	background:#000;
	color:#FFF;
	font-size:85%;
	padding:8px 15px 6px; 
	margin-right:15px;
}

/* ヘッダー
------------------------------------------------------------*/
#header { padding:0 20px 20px; }

/* フッター
------------------------------------------------------------*/
#footer{
	width:100%;
	display:block;
	clear:both;
	margin:0;
	padding:30px 0 50px;
    position:absolute;
	background:#fff000 url(images/bg_top.png) repeat-x bottom;
}

#footer ul {
    margin: 0 auto 20px;
    padding: 0;
	font-size:85%;
	text-align:center;
}
#footer ul li{
    padding: 0 7px 10px;
	display: inline-block;
}
#footer ul li a{
	color:#187fc3;
}
#footer .address {
	display:block;
	clear:both;
	font-size:85%;
	margin:20px auto;
	text-align:center;
	color:#000;
}

/* ページトップへ */
#pagetop {
    position: fixed;
    bottom: 0;
    right: 10px;
	z-index:2;
}
#pagetop a {
    width: 100px;
    height: 108px;
    display: block;
    text-align: center;
}

@media only screen and (max-width:999px){
	.inner { width:86%;_width:96%; padding: 50px 5% 30px; }
	.inner img.imgright, .inner img.imgleft {
		float:none;
		margin:0 auto 15px;
	}
	.WakuIcon{ margin:10px 20px 15px; }
}
@media only screen and (max-width:768px){
	dl.PhotoBox dt, dl.PhotoBox dd {
		float:none !important;
		width:100% !important;
	}
	.WakuIcon{ margin:10px 0 15px; }
}
@media only screen and (max-width:480px){
	dl.H2Box dt, dl.H2Box dd {
		float:none !important;
		width:100% !important;
	}
	dl.H2Box dt span{font-size:115%;}
	dl.H2Box dd {font-size:155%;}
	.ResultIcon{margin:10px 0 15px 0;}
	.ResultIcon span{padding:15px 15px;}
	.WakuIcon{ margin:10px 0 15px; background-size:145px; }
	.WakuIcon span{
		padding:15px 15px;
		margin-top:0;
		letter-spacing:0;
		font-size:90%;
		margin-left:140px;
	}
}
@media only screen and (max-width:375px){
	.WakuIcon{
		background:url(images/icon_waku01.png)no-repeat center top;
		padding-top:170px;
	}
	.WakuIcon span{
		display:block;
		float:none;
		width:auto;
	  	margin:0 0 30px;
	}
	.WakuIcon span::before{
	  display:none;
	}
}
