thtml, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
caption, tbody, tfoot, thead,
article, aside, dialog, figure, footer, header,
hgroup, menu, nav, section,
time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	line-height: 2;
	background:transparent;
}


body {
  background: #fff;
  color: #222222;
  font-family: '游ゴシック', 'Yu Gothic', YuGothic, Meiryo, メイリオ, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', sans-serif;
  font-size:1.1em;
}


article, aside, dialog, figure, footer, header,
hgroup, nav, section {
	display:block;
}

img{
  max-width:100%;
}

.sps {
  display: none;
}

.sp {
  display: none;
}

.ssp {
  display: none;
}

@media screen and (max-width: 800px) {
.sps {
  display: block;
}
}

@media screen and (max-width: 640px) {
	body {
	  font-size:1em;
	  line-height: 1.8;
	}
	
	.pc{
		display: none;
	}
	.sp{
		display: block;
	}
	.pcnone{
			display: block;
	}
	.spnone{
		display: none;
	}	
}

@media screen and (max-width: 480px) {
.ssp {
  display: block;
}
}

a {
	margin:0;
	padding:0;
	border:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
	color:#0066CC;
}

.clearfix:after {
  content: "";
  clear: both;
  display: block;
}


* html .clearfix {
  height: 1px;
  /*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}

.bold {
	font-weight:bold;
}

.big {
	font-size: 140%;
	line-height: 1.5;
}
.big2 {
	font-size: 160%;
	line-height: 1.5;
	font-weight: bold;
	padding: 0 2px;
}

.red {
	color: #ed1c24;
}
.gold {
	color: #edc662;
}
.yellowline{
  position: relative;
  background: linear-gradient(transparent 40%, yellow 40%);
}

.border{
	position: relative;
}

.border:before{
	content: '';
	position: absolute;
	left: 0;
	bottom:-5px;
	border-bottom: solid 3px #ffff33;
	animation: border_anim 4s linear forwards infinite;
}

@keyframes border_anim {
   0%{width:0;opacity:0}
    20%{width:0;opacity:1}
    80%{width:100%;opacity:1}
    100%{width:100%;opacity:1}
}

.blue {
	color: #3399ff;
}
.green {
	color: #339966;
}
.center{
	text-align: center;
	margin: 0 auto 0;
}
.left{
	text-align: left;
	margin: 0 auto 0;
}
.right{
	text-align: right;
	margin: 0 auto 0;
}
.underline{
	text-decoration: underline;
}

/*スタイルシート
*******************************************/

#wrapper{
	width: 960px;
	margin: 0 auto 0;
}
	
/******ヘッダー******/
.top_bg {
	background-color: #3399ff;
	text-align: center;
}
.top_bg img{
	line-height: 0px;
	max-width: 100%;
}
.header_bg {
	background-image: url("../img/header-bg.jpg");
	background-size: cover;
	background-color: #fff;
	text-align: center;
	background-position: center;
}
.header_bg img{
	line-height: 0px;
}

.schedule_bg {
	background-image: url("../img/header-bg.jpg");
	background-size:cover;
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-color: #fff;
	text-align: center;
	background-position: center;
}
.schedule_bg img{
	line-height: 0px;
}
.prof_bg {
	background: linear-gradient(#3399ff, #3366ff);
	text-align: center;
	padding-bottom: 30px;
}
.prof_bg img{
	line-height: 0px;
	max-width: 96%;
}


@media screen and (max-width: 685px) {
.header_bg {
	background-size: cover;
	}
	.header_bg img{
	width: 100%;
	}
.schedule_bg {
	background-size:auto;
	}
	.schedule_bg img{
	width: 100%;
	}	
}



.white_bg{
	background-color: #fff;
	padding: 10px 0 70px;
	width:100%;
	text-align:center;
}
.blue_bg{
	background: linear-gradient(#3366ff, #3399ff ) ;
	padding: 10px 0 1px;
	width:100%;
	text-align:center;
	margin-bottom:0px;
}
.kon_bg{
	background-color: #001033;
	padding: 10px 0 30px;
	width:100%;
	text-align:center;
	margin-bottom:40px;
}

@media screen and (max-width: 685px) {
.white_bg img{
	width:100%;
}
.img60{
	width:60%;
}
.kon_bg img{
	width:100%;
}
}

@media screen and (max-width: 640px) {
.white_bg{
	padding: 0px 0 40px;
}
}

.w685{
	text-align: center;
}
@media screen and (max-width: 685px) {
.w685 img{
	width: 100%;
}	
}


.btn a:hover{
 opacity:0.5;	
}

@media screen and (max-width: 640px) {
.btn img{
	width: 80%;
}
}




.w800{
	width: 800px;
	text-align: left;
	margin-left: auto;
	margin-right: auto;
}
.inner{
	margin: 0px 10px 0px;
}
.inner p{
	padding-bottom: 20px;
}

.inner-white{
	padding: 20px 30px 40px;
	background-color: #fff;
	margin-bottom: 100px;
}
.white-font{
	padding: 10px 0px;
	color: #fff;
	text-align: center;
}


@media screen and (max-width: 800px) {
.w800{
	width: 100%;	
}
.inner{
	margin: 20px 5% 0;
}
.inner-white{
	margin: 20px 2% 80px;
	padding: 20px 3% 30px;
}
}

.box2 {
    padding: 0.5em 1em;
    margin: 2em 0;
    font-weight: bold;
    background: #FFF;
    border: solid 2px #3399ff;/*線*/
    border-radius: 10px;/*角の丸み*/
}
.box2 p {
    margin: 0; 
    padding: 0;
}

.box2 .number{
	width: 55px;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	margin-top: -28px;
	background-color: #fff;
    color: #3399ff;/*文字色*/
}

.box3 {
    padding: 0.5em 0.5em;
    margin: 2em 0;
    font-weight: bold;
    background: #FFF;
    border: solid 1px #ed1c24;/*線*/
    border-radius: 10px;/*角の丸み*/
	letter-spacing:2px;
}
.box3 p {
    margin: 0; 
    padding: 0;
}

.box3 .number{
	width: 55px;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	margin-top: -28px;
	background-color: #fff;
    color: #ed1c24;/*文字色*/
}

.se-number{
	text-align: center;
	margin-top: -60px;
}

.listimg1{
	list-style-type: none;
	margin: 0px auto 50px;

}

.listimg1 dt{
	font-size: 100%;
    padding:15px 10px 15px 50px;
	background: url(../img/listicon.gif);
    background-repeat:no-repeat;
	background-position:left center;
    border-bottom: 3px dotted #ccc;
	font-weight:bold;
}

.listimg2{
	list-style-type: none;
	margin: 0px auto 10px;

}

.listimg2 dt{
	font-size: 100%;
    padding:15px 10px 15px 50px;
	background: url(../img/listicon2.gif);
    background-repeat:no-repeat;
	background-position:left center;
    border-bottom: 2px dotted #baa160;
	line-height:1.5;
	font-weight:bold;
	color:#00173b;
}


.listimg3{
}


.listimg3 dt{
  color: black;
  border-left: solid 12px #ed1c24;/*左側の線*/
  background: whitesmoke;/*背景色*/
  margin-bottom: 10px;/*下のバーとの余白*/
  line-height: 1.5;
  border-radius: 0;/*右側の角だけ丸く*/
  padding: 0.5em;
  list-style-type: none!important;
	font-weight: bold;
}

.listimg4 ul, ol{
  background: whitesmoke;/*灰色に*/
  border-radius :8px;
  box-shadow :0px 0px 5px silver;
  padding: 0.5em 0.5em 0.5em 2em;
	margin-top: 10px;
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}

.listimg4 ul li, ol li{
  line-height: 1.5;
  padding: 0.5em 0;
}



table {
	width: 98%;
	margin-left: auto;
	margin-right: auto;
    border-collapse: collapse;
    border: solid 2px #ed1c24;/*表全体を線で囲う*/
	background-color: #fff;
	margin-bottom: 30px;
}
table th{
	background-color: #ed1c24;
	color: #fff;
	border: dashed 1px #ffffff;
	padding: 10px;
	text-align: center;
	}
table td {
  border: dashed 1px #ed1c24;/**/
	padding: 25px 15px 20px;
	line-height: 1.2;
	text-align: center;
}
/*余白と文字装飾は省略*/


@media screen and (max-width: 640px) {
table th{
	padding: 10px;
	}
table td {
	padding: 15px 0px 10px;
}
/*余白と文字装飾は省略*/
	
	
.listimg1  {
	margin: 0px auto 20px;
}
	
.listimg1 dt  {
    padding:15px 0px 15px 38px;
	line-height:1.1;
    background-repeat:no-repeat;
	background-position:left center;

}
.listimg2 dt  {
    padding:15px 0px 15px 38px;
	line-height:1.6;
    background-repeat:no-repeat;
	background-position:left center;

}
.listimg3 dt{
	line-height:1.1;
}
	
.listimg4{
	width: 98%;
}

.listimg4 dt{
  padding: 0.2em 2%;
}
	
}


.leftphoto{
	float: left;
	width: 20%;
	margin-right: 5%;
	margin-top: 10px;
	margin-bottom: 15px;
}
.leftphoto img{
	width: 100%;
}
.rightwords{
	float: left;
	width: 75%;
	color: #fff;
	text-align: left;
	font-weight: normal;
	line-height:20px;
}
.rightwords p{
	margin-bottom: 10px;
 }


.line{
	border-bottom: 2px dotted #ebc462;
	margin:10px 0px 30px;
}
@media screen and (max-width: 800px) {

.line{
	margin:10px 0px;
}
.title img{
	width: 100%;
}
.leftphoto{
	width: 20%;
	margin-right:2%;
	margin-left: 0%;
}	
}

.title .sp{
	display:none;
}
.title .pc{
	display:block;
}
@media screen and (max-width: 662px) {
.title .sp{
	display:block;
}
.title .pc{
	display:none;
}	
.title  img{
	width: 100%;
}
	
}

@media screen and (max-width: 640px) {
.leftphoto{
	width: 30%;
	margin-right: 3%;
}

.rightwords{
	width: 65%;
	color: #fff;
	text-align: left;
	font-weight: normal;
}
.rightwords p{
	margin-bottom: 0px;
	line-height: 1;
 }
}

.balloon5 {
    width: 100%;
    margin: 1.5em 0 2em;
    overflow: hidden;
	font-family: "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
	margin-right:auto;
	margin-left: auto;
}

.balloon5 .faceicon {
    float: left;
    margin-right: -90px;
    width: 90px;
}

.balloon5 .faceicon img{
    width: 100%;
    height: auto;
	margin-right: auto;
	margin-left: auto;
	text-align: right;
}

.balloon5 .chatting {
    width: 100%;
}

.says {
    position: relative; 
    margin: 5px 0 0 130px;
    padding: 12px 3%;
    border-radius: 12px;
    background: #fff;
	text-align: left;
	font-size:100%;
}
@media screen and (max-width: 640px) {
.balloon5 {
    margin: 0px 0 30px;
}
	
.balloon5 .faceicon {
    margin-right: -60px;
    width: 60px;
	padding-top: 10px;
}	
.says {
	font-size:90%;
	 margin: 5px 0 0 75px;
	padding: 12px 2% 12px 3%;
}
}
.says:after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 18px; 
    left: -24px;
    border: 12px solid transparent;
    border-right: 12px solid #fff;
}

.says p {
    margin: 0;
    padding: 0;
	line-height: 150%;
}

.wine{
	color: #cc0000;

}


.copy {
	padding:50px 0 0px;
	text-align:center;
	font-size:0.7em;
	}
.copy a{
	color: #000;
	text-decoration: none;
	}
.copy a:hover{
	text-decoration:underline;
	}

.small{
	font-size: 80%;
}



/*ページトップアイコン*/
.pagetop {
    position: fixed;
    bottom: -20px;
    right: 0%;
	width: 15%;
}

.pagetop li{
	display:inline-block;
}
.pagetop img{
	width: 100%;
}
.pagetop img:hover {
	opacity: 0.5 ;
}

@media screen and (max-width:680px){
.pagetop {
    width: 40%;
	bottom: -13px;
}
.pagetop li{
	display:inline-block;
	width: 100%;
}
}