* {
	margin: 0px;
	padding: 0px;
	zoom: 1;
}
html {
	overflow-y:scroll;
}
body {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 1;
    overflow: hidden;
}
li {
	list-style-type: none;
	zoom: normal;
}
img {
	max-width: 100%;
	height: auto;
	vertical-align: text-bottom;
	border-style: none;
}
.clearfix {zoom:1;}
.clearfix:after{
	content: " ";  
	display: block; 
	visibility: hidden; 
	clear: both; 
	height: 0.1px; 
	font-size: 0.1em; 
	line-height: 0; 
}
a{
	color: #254a73;
}
a:hover{
	color: #999999;
}
#wrapper{
}
.inner-content {
	width: 1040px;
	margin-right: auto;
	margin-left: auto;
}

/* ----- header ----- */

#header{
    padding: 16px 0;
	margin: 0 0 40px;
	background: #000c6a;
}
#header h1{
    width: 353px;
    float: left;
}
#header h1 a{
    display: block;
    padding: 12px 0 0;
}
#header .ads{
    width: 600px;
    float: right;
}

#outline{
}
#outline h2{
    color: #ffffff;
    padding: 12px;
    margin: 0 0 20px;
    text-align: center;
    background: #083e88;
}
#outline p{
    font-size: 18px;
    font-weight: bold;
    line-height: 1.6;
    text-align: center;
    margin: 0 auto 24px;
}

/* ----- contentsHeader ----- */

#contentsHeader{
    height: 272px;
    color: #ffffff;
    padding: 0 0 0 28px;
    margin: 0 auto 24px;
    border-left: none;
    position: relative;
    overflow: hidden;
    background: #000000;
    box-sizing: border-box;
}
#contentsHeader .header_Text{
    width: 441px;
    height: 280px;
    position: relative;
}
#contentsHeader .header_Text p.themes{
    color: #ffffff;
    font-size: 18px;
    font-weight: bold;
    padding: 8px 24px;
    background: #ff0000;
    border-radius: 14px;
    position: absolute;
    top: 84px;
    left: 6px;
    z-index: 50;
}
#contentsHeader .header_Text h1{
	display: inline-block;
    width: 435px;
	color: #ffffff;
	/*    color: #fdbe11;*/
    font-size: 42px;
    line-height: 1.2;
    text-indent: -1em;
    padding: 0 0 13px;
    position: absolute;
    top: 132px;
    left: 26px;
    z-index: 100;
}
#contentsHeader .header_Text h2{
    color: #ffffff;
    font-size: 17px;
    line-height: 1.6;
    position: absolute;
    bottom: 24px;
    left: 20px;
    z-index: 100;
}
#contentsHeader .header_Img{
    padding: 0;
    position: absolute;
    right: 0;
    top: 0;
    background: #ffffff;
    z-index: 10;
}

/* ----- section01 ----- */

#section01{
    margin: 0 0 56px;
}
#section01 h3{
	color: #008cd6;
    font-size: 36px;
    text-align: center;
    margin: 0 0 32px;
}
#section01 h4{
	color: #008cd6;
    font-size: 28px;
    letter-spacing: 0.02em;
    padding: 0 2px 8px;
    margin: 0 0 24px;
    border-bottom: solid 4px #dddddd;
}
#section01 p{
    font-size: 16px;
    line-height: 1.8;
	margin: 0 0 32px;
}
#section01 .monthlyText{
    padding: 20px;
    border: solid 4px #fdbe11;
}
#section01 .monthlyText p{
    line-height: 1.6;
    margin: 0;
}
#section01 .monthlyText p strong{
    font-size: 22px;
    color: #ff0000;
}

#section01 .circleList {
    margin: 56px 0 64px;
}
#section01 .circleList ul{
    margin: 0 0 24px;
}
#section01 .circleList li{
    float: left;
    margin: 0 0 0 20px;
    border: solid 4px #92d0e7;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    box-sizing: border-box;
}
#section01 .circleList li .icon{
	background: #cccccc;
}
#section01 .circleList li .title{
	color: #07609e;
    display: table-cell;
    height: 2.6em;
    font-weight: bold;
    line-height: 1.3;
    text-align: center;
    vertical-align: middle;
}

#section01 .circle3 li{
    width: 333px;
    height: 333px;
}
#section01 .circle4 li{
    width: 245px;
    height: 245px;
}
#section01 .circle3 li:nth-child(3n+1),
#section01 .circle4 li:nth-child(4n+1){
    margin-left: 0;
    clear: both;
}
#section01 .circle3 li .title{
    width: 325px;
    font-size: 32px;
}
#section01 .circle4 li .title{
    width: 245px;
    font-size: 22px;
}
#section01 .circle3 li .icon{
    width: 192px;
    height: 160px;
    margin: 32px auto 16px;
}
#section01 .circle4 li .icon{
    width: 130px;
    height: 100px;
    margin: 32px auto 24px;
}


#section01 .useList{
    margin: 0 0 40px;
    border: solid 2px #92d0e7;
    border-top: none;
    box-sizing: border-box;
}
#section01 .useList li{
    float: left;
    width: 20%;
    border-left: solid 2px #92d0e7;
    border-top: solid 2px #92d0e7;
	box-sizing: border-box;
}
#section01 .useList li:nth-child(2n+1){
	background: #f2fcff;
}
#section01 .useList li:nth-child(5n+1){
	clear: both;
    border-left: none;
}
#section01 .useList li span{
    display: table-cell;
    width: 208px;
    height: 2.6em;
	color: #07609e;
    font-size: 22px;
	font-weight: bold;
    line-height: 1.3;
    vertical-align: middle;
    text-align: center;
    padding: 8px 
}
#section01 .pickupList{
	margin: 0 0 24px;
}
#section01 .pickupList li{
	color: #229bc8;
    font-size: 22px;
    float: left;
    text-align: center;
    padding: 24px;
    margin: 0 0 16px 16px;
    border: solid 3px #92d0e7;
    box-sizing: border-box;
}
#section01 .pickup2 li{
    width: 512px;
}
#section01 .pickup3 li{
    width: 336px;
}
#section01 .pickup4 li{
    width: 248px;
}
#section01 .pickup2 li:nth-child(2n+1),
#section01 .pickup3 li:nth-child(3n+1),
#section01 .pickup4 li:nth-child(4n+1){
    clear: both;
    margin-left: 0;
}

/* ----- section02 ----- */

#section02{
}
#section02 h1{
	color: #ffffff;
    font-size: 28px;
    text-align: center;
    letter-spacing: 0.03em;
    margin: 0 0 40px;
    padding: 24px 0;
    background: #008cd6;
}
#section02 .pr_Img{
	text-align: center;
	margin: 0 auto 40px;
}
.pr_List{
	display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    margin: 0 0 48px;
}
.pr_List li{
    width: 242px;
    height: 212px;
    float: left;
    margin: 0 0 0 24px;
	background: #ff9900;
    box-sizing: border-box;
	border-radius: 8px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
}
.pr_List li:nth-child(4n+1){
	clear: both;
    margin-left: 0;
}
.pr_List li:nth-child(1){
	background: #ff9900 url(../img/pr_icon01.png) no-repeat center top 20px;
}
.pr_List li:nth-child(2){
	background: #ff9900 url(../img/pr_icon02.png) no-repeat center top 20px;
}
.pr_List li:nth-child(3){
	background: #ff9900 url(../img/pr_icon03.png) no-repeat center top 20px;
}
.pr_List li:nth-child(4){
	background: #ff9900 url(../img/pr_icon04.png) no-repeat center top 20px;
}
.pr_List li span.middlebox{
	display: table-cell;
    width: 242px;
    height: 212px;
    color: #ffffff;
    font-size: 36px;
    font-weight: bold;
    line-height: 1.2;
    letter-spacing: 0.02em;
    text-align: center;
	padding-top: 52px;
    vertical-align: middle;
}
.pr_List li span.middlebox.small{
    font-size: 30px;
    letter-spacing: 0;
}
.mediaList{
    background: #ffffff;
    box-sizing: border-box;
	border-top: solid 1px #008cd6;
}
.mediaList h3{
    color: #00478b;
    font-size: 36px;
    text-align: center;
    margin: 0 0 32px;
}
.mediaList ul{
	display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
	counter-reset:number;
}
.mediaList ul li{
    width: 325px;
    float: left;
    margin: 0;
    border-bottom: solid 1px #008cd6;
    border-right: solid 1px #008cd6;
    box-sizing: border-box;
}
.mediaList ul li:nth-child(3n+1){
	clear: both;
	width: 326px;
	margin-left: 0;
    border-left: none;
}
.mediaList ul li a{
    display: block;
    color: #000000;
    height: 100%;
    text-decoration: none;
    box-sizing: border-box;
    padding: 56px 0 12px;
    position: relative;
}
.mediaList ul li a:hover{
	background: #f6f6f6;
}
.mediaList li a:before{
    counter-increment: number;
    content: counter(number);
    color: #ffffff;
    width: 34px;
    height: 1em;
    font-size: 18px;
    text-align: center;
    padding: 7px 0;
    margin: 0 -17px;
    background: #008cd6;
    border: solid 1px #ffffff;
    position: absolute;
    top: 12px;
    left: 50%;
    right: 50%;
}
.mediaList ul li .title{
    font-size: 16px;
    font-weight: bold;
    line-height: 1.3;
    text-align: center;
    vertical-align: middle;
    margin: 0 0 12px;
}
.mediaList ul li .thumb{
    width: 248px;
    border: solid 1px #cccccc;
    background: #cccccc;
    margin: 0 auto 12px;
    overflow: hidden;
}
.mediaList ul li .icon{
	text-align: center;
    margin: 0 12px 8px;
}
.mediaList ul li .icon div{
    display: inline-block;
    width: 147px;
    text-align: center;
    margin: 6px 0 0;
}
.mediaList ul li .icon div:first-child{
	margin-top: 0;
}
.mediaList ul li .icon div img{
    display: none;
}
.mediaList ul li .icon div .tag{
    color: #ffffff;
    font-size: 13px;
    font-weight: bold;
    text-align: center;
    display: block;
    float: none;
    margin: 0 auto;
    padding: 8px 0 7px;
    background: #083e88;
    border-radius: 2px;
    -webkit-border-radius: 2px;
}
.mediaList ul li span.red{
    display: block;
    color: #ff0000;
    font-weight: bold;
    font-size: 14px;
    line-height: 1.3;
    text-align: center;
}


/*----- section03 ----- */

#section03{
}
#section02 .setHeader {
	margin: 0 0 32px;
    padding: 32px 32px 24px;
    background: #008cd6;
	position: relative;
}
#section02 .setHeader h2{
    width: 369px;
	color: #ffffff;
    font-size: 40px;
    text-align: center;
    letter-spacing: 0.05em;
    padding: 0;
    margin: 0 0 12px;
    position: absolute;
    right: -42px;
    top: -40px;
}
#section02 .setHeader p{
    width: 100%;
    font-size: 18px;
    font-weight: normal;
    line-height: 1.6;
    text-align: left;
    padding: 32px 24px;
    box-sizing: border-box;
    background: #ffffff;
}

#section03 ol.ad_List{
	display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
	counter-reset:number;
	margin: 0 0 40px;
}
#section03 ol.ad_List li{
    width: 100%;
    padding: 28px 20px 4px;
    margin: 24px 0 0;
    box-sizing: border-box;
    border: solid 1px #92d0e7;
	position: relative;
}
#section03 ol.ad_List li:before{
    counter-increment: number;
    content: counter(number);
    color: #ffffff;
    width: 58px;
    height: 1em;
    font-size: 38px;
    text-align: center;
    padding: 8px 0;
    background: #008cd6;
    position: absolute;
    left: 22px;
    top: 20px;
}
#section03 ol.ad_List li h3.adTitle{
    font-size: 28px;
    padding: 6px 0 24px 76px;
    margin: 0 0 16px;
    border-bottom: solid 4px #dddddd;
}
#section03 ol.ad_List li .icon{
    position: absolute;
    right: 22px;
    top: 12px;
}
#section03 ol.ad_List li .icon div{
    float: right;
    width: 84px;
    color: #ffffff;
    text-align: center;
    margin-right: 12px;
    padding: 8px 0 4px;
    background: #00478b;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
}
#section03 ol.ad_List li .icon div:first-child{
	margin-right: 0;
}
#section03 ol.ad_List li .icon div img{
    display: block;
    width: 32px;
    margin: 0 auto 2px;
}
#section03 ol.ad_List li .icon div .tag{
    font-size: 13px;
    text-align: center;
    display: block;
    float: none;
    margin: 0 auto;
}
#section03 ol.ad_List li h4.catchcopy{
    color: #ff0000;
    font-size: 20px;
    margin: 0 0 16px;
    line-height: 1.4;
}
#section03 ol.ad_List li h5.pointCatch{
    float: left;
    width: 100%;
    max-width: 654px;
    font-size: 18px;
    line-height: 1.4;
    background: #a3e0f7;
    padding: 8px 16px;
	margin: 0 0 12px;
    box-sizing: border-box;
}
#section03 ol.ad_List li .img{
    width: 322px;
    float: right;
	margin: 0 0 16px;
    background: #f2f2f2;
    border: solid 1px #cccccc;
    box-sizing: border-box;
}
#section03 ol.ad_List li .text{
    width: 654px;
    float: left;
}
#section03 ol.ad_List li p{
    margin: 0 0 12px;
    font-size: 15px;
    line-height: 1.5;
}
#section03 ol.ad_List li .text p.redline{
    display: inline-block;
    color: #ffffff;
	font-weight: bold;
	line-height: 1.2;
    padding: 8px 16px;
    margin: 8px 0 16px;
    background: #ff0000;
    border-radius: 2px;
}
#section03 ol.ad_List li .text dl{
	margin: 0 0 8px;
}
#section03 ol.ad_List li .text dl dt,
#section03 ol.ad_List li .text dl dd{
    float: left;
	font-size: 15px;
	line-height: 1.4;
}
#section03 ol.ad_List li .text dl dt{
	width: 80px;
	clear: both;
    font-weight: bold;
    padding: 4px 8px;
    letter-spacing: 0.05em;
    text-align: center;
    background: #cfedf8;
}
#section03 ol.ad_List li .text dl dd{
    width: 534px;
    padding: 4px 0 4px 16px;
}
/*
#section03 ol.ad_List li .point{
    font-size: 18px;
    font-weight: bold;
	margin: 0 0 20px;
}
*/
#section03 ol.ad_List li .outline{
    margin: 16px 0;
    padding: 16px;
    /*background: #f2f2f2;*/
	border: solid 1px #92d0e7;
    box-sizing: border-box;
}
#section03 ol.ad_List li .outline p{
    font-size: 15px;
    line-height: 1.5;
    margin: 0;
}
#section03 ol.ad_List li .note{
	margin: 0 0 16px;
}
#section03 ol.ad_List li .note p{
	font-size: 14px;
    line-height: 1.5;
}
.requirements{
    padding: 32px 28px;
    margin: 0 0 24px;
    background: #ffffff;
    border: solid 1px #cccccc;
}
.requirements h4{
    color: #229bc8;
	font-size: 20px;
    margin: 0 0 16px;
    padding: 0 0 8px;
    border-bottom: solid 2px #dddddd;
}
.requirements ul{
	margin-left: 1.5em;
}
.requirements ul li{
    font-size: 16px;
    line-height: 1.4;
    list-style-type: disc;
    margin: 12px 0 0;
}
.requirements ul li:first-child{
	margin-top: 0;
}
#section03 .contact{
    margin: 0 0 40px;	
    padding: 24px 28px;
	background: #f6f6f6;
    border: solid 1px #cccccc;
    box-sizing: border-box;
}
#section03 .contact h4{
    font-size: 20px;
    margin: 0 0 12px;
}
#section03 .contact p{
    font-size: 15px;
    line-height: 1.6;
}
.osusume{
    font-size: 18px;
    text-align: center;
    background: #ffffff;
    border-radius: 2px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    margin: 0 0 32px;
    padding: 32px 0;
    border: solid 32px #008cd6;	
}
.osusume p{
    font-size: 20px;
    font-weight: bold;
    line-height: 1.3;
    margin: 0 0 12px;
}
.osusume .red{
	color: #ff0000;
}
.osusume p small{
	font-size: 20px;
}
.osusume strong{
    color: #ff0000;
    font-size: 36px;
    margin: 0 2px;
}
.osusumeIcons {
	/*
	display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
	*/
	counter-reset:number;
    width: 927px;
	text-align: center;
    margin: 24px auto 0;
	padding: 0;
	border: none;
}
.osusumeIcons li{
    position: relative;
    width: 173px;
	display: inline-block;
    /* float: left; */
    margin: 0 0 0 8px !important;
	border: none;
}
.osusumeIcons li:first-child{
	clear: both;
	margin-left: 0 !important;
}
.osusumeIcons li span.number{
    counter-increment: number;
    content: counter(number);
    color: #ffffff;
    width: 32px;
    height: 1em;
    font-size: 16px;
    text-align: center;
    padding: 6px 0;
    background: #ec6d8a;
    position: absolute;
    left: 0;
    top: 0;
    border-right: solid 1px #ffffff;
    border-bottom: solid 1px #ffffff;
}
.osusumeIcons li .thumb{
    border: solid 1px #cccccc;
    box-sizing: border-box;
}
.osusumeIcons li .title{
    font-size: 14px;
    margin: 12px 0 0;
    font-weight: bold;
    letter-spacing: 0.02em;
}

/* ----- footer ----- */

#footer{
    padding: 0 0 24px;
}
#pagetop{
    width: 1040px;
    margin: 40px auto 16px;
    text-align: right;
}
#pagetop a{
    display: inline-block;
    width: 104px;
    font-size: 12px;
    line-height: 21px;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    margin: 0 auto;
    padding: 4px 8px;
    text-align: center;
    text-decoration: none;
    background: #f2f2f2;
    border: solid 1px #cccccc;
}
#pagetop a:before {
    content: "▲";
    font-size: 10px;
    margin: 0 4px 0 0;
}
#foot_nav{
    border-top: 1px solid #666666;
    padding: 16px 0;
	margin: 0 0 12px;
}
#foot_nav ul{
    text-align: center;
}
#foot_nav ul li{
    display: inline-block;
    margin: 0 0 0 8px;
}
#foot_nav ul li:first-child{
	margin-left: 0;
}
#foot_nav ul li a{
    color: #000000;
    font-size: 13px;
}
#footer #f_l{
    width: 120px;
    float: left;
}
#footer #f_r{
    width: 920px;
    float: right;
    font-size: 12px;
    text-align: right;
}

#contact_floating{
    position: fixed;
    right: 0;
    bottom: 12px;
	z-index: 500;
}
#contact_floating a{
    display: block;
    color: #ffffff;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.4;
    text-align: center;
    text-decoration: none;
    padding: 56px 12px 16px;
    background: #008cd6 url(../img/mailicon.png) no-repeat center top 18px;
    border-radius: 8px 0 0 8px;
}
#contact_floating a:hover{
    background: #ff9900 url(../img/mailicon.png) no-repeat center top 16px;
}

#schedule{
    margin: 0 0 40px;
}
#schedule h4{
    color: #229bc8;
    font-size: 20px;
    margin: 0 0 16px;
    padding: 0 0 8px;
    border-bottom: solid 2px #dddddd;
}
#schedule h4 strong{
	font-size: 28px;
}
#schedule table{
	width: 100%;
    margin: 0 0 20px 0;
    padding: 0;
    border-collapse: collapse;
    border: solid 1px #C4C4C4;
}
#schedule table th,
#schedule table td{
	font-size: 15px;
    line-height: 1.8;
    margin: 0;
	padding: 2px 10px;
    text-align: left;
    vertical-align: middle;
    border-collapse: collapse;
    border: solid 1px #cccccc;
}
#schedule table th{
    font-weight: bold;
	text-align: center;
    background: #e5e5e5;
}
#schedule table thead td{
	text-align: center;
    background: #e5e5e5;
}
#schedule table td{
}

#reg_form{
}
#reg_form h4{
    color: #ff0000;
    font-size: 20px;
    margin: 0 0 24px;
    padding: 0 0 8px;
    border-bottom: solid 2px #dddddd;
}
#reg_form iframe{
    width: 1040px;
    height: 840px;
    overflow: hidden;
}