/*==========================================
 gloval
===========================================*/

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
li {
	list-style-type: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
*, *:before, *:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
/*==========================================
 gloval
===========================================*/

body {
	margin: 0 auto;
	font-family: "Lucida Grande", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", Meiryo, 'メイリオ', "ＭＳ Ｐゴシック", sans-serif, Arial;
	-webkit-text-size-adjust: 100%;
	padding: 0;
}
html {
	font-size: 62.5%;
}
body {
	font-size: 16px;
	font-size: 1.6rem;
}
* {
	margin: 0;
	padding: 0;
}
a {
	color: #333;
}
a:link {
	text-decoration: none;
}
a:active {
	text-decoration: none;
}
a:hover {
	color: #FF0000;
	text-decoration: none;
}
img {
	width: auto\9;
	height: auto;
	max-width: 100%;
	vertical-align: middle;
	border: 0;
	-ms-interpolation-mode: bicubic
}
h1, h2, h3 {
	font-weight: normal;
	margin: 0;
	padding: 0;
}
p, li, dt, dl {
	line-height: 1.6;
}


/*==========================================
 layout
===========================================*/

 #contents {
 margin: 0;
 padding: 0;
}
 section h1 {
 text-align: center;
 padding:0 0 10px;
}
 .inner {
 width: 920px;
 margin: 0 auto;
 line-height: 0;
 text-align: left;
 overflow: hidden;
 padding: 0;
}
 .inner p {
 font-size: 1.8rem;
 line-height: 1.8;
 padding: 0 0 30px;
 text-align: left;
}
 @media screen and (max-width:800px) {
 #contents {
 margin: 0;
 padding: 0;
}
 section h1 {
 text-align: center;
 font-size: 4.5rem;
}
 .inner {
 width:auto;
 margin: 0;
 line-height: 0;
 text-align: left;
 overflow: hidden;
 padding: 10px 20px;
}
 .inner p {
 font-size: 1.7rem;
 line-height: 1.8;
 padding: 0 20px 20px;
 text-align: left;
}
 .inner p br {
 display: inline;
}
}
@media screen and (max-width:480px) {
 .inner {
 padding: 10px 20px;
}
 .inner p {
 font-size: 1.5rem;
 line-height: 1.8;
 padding: 0 20px 20px;
 text-align: left;
}
}
@media screen and (max-width:240px) {
 section h1 {
 text-align: center;
 font-size: 3.5rem;
 line-height: 1.6;
 margin:0 10px;
}
 .inner {
 padding: 0 10px 10px;
}
 .inner p {
 font-size: 1.5rem;
 line-height: 1.8;
 padding: 0 10px 10px;
 text-align: left;
}
 .inner p br {
 display: none;
}
}

/*==========================================
 header
===========================================*/
header {
	background:none;
	text-align:center;
	margin: 0;
	padding: 0;
}
header #fvInner {
	display:block;
	height:797px;
	text-align:center;
	margin: 0;
	padding: 20px 0 0 0;
}
.headerTxtWrap {
	text-align:left;
	width:880px;
	margin:30px auto;
}
header h1, header p {
	display:block;
}
 @media screen and (max-width:768px) {
header {
 background: url(../../images/bg_header_sp.jpg) no-repeat center top;
 background-size: contain;
 height: 0;
 padding-top: 97.65625%;
}
.headerTxtWrap {
display:none;
}
header h1, header p {
display:none;
}

}


/*==========================================
 contents
===========================================*/


/*==========================================
 start
===========================================*/
#start {
	text-align:center;
	padding:40px 0 20px;
	background:#075BA4;
}
 @media screen and (max-width:768px) {
#start {
 background:#075BA4 url(../../images/bg_start_sp.jpg) no-repeat center top;
 background-size: contain;
 height: 0;
 padding-top: 125.65104166666667%;
}
.startInner h1, .startInner p {
display:none;
}

}

/*#start {
background:#065EA6 url(../../images/bg_start.jpg) no-repeat center top;
text-align:center;
}
#thank {
background:#F7F3EF url(../../images/bg_thank.png) no-repeat center top;
text-align:center;
}
#deadline {
background:#F7F3EF url(../../images/bg_deadline.png) no-repeat center top;
text-align:center;
}*/

/*==========================================
 thank
===========================================*/
.thankInner {
padding:70px 0 0;
}
.thankInner .inner p {
text-align:center;
}

@media screen and (max-width:768px) {
.thankInner {
display:none;
}
}

/*==========================================
 deadline
===========================================*/
.deadlineInner {
padding:70px 0 0;
}
.deadlineInner .inner p {
text-align:center;
}

@media screen and (max-width:768px) {
.deadlineInner {
display:none;
}
}

/*==========================================
 message
===========================================*/

#message {
	background:url(../../images/bg_message.png) repeat;
padding:70px 0;
	text-align:center;
}
#message h1 {
margin:30px 0;
}
#messageWrap {
	width: 970px;
 padding: 0 0 30px;
	margin: 0 auto 70px;
	background: #FFFFFF;
	box-shadow: 0px 0px 5px 0px #575757;
	-moz-box-shadow: 0px 0px 5px 0px #575757;
	-webkit-box-shadow: 0px 0px 5px 0px #575757;
	overflow: hidden;
}
#messageWrap .inner ,#profile .inner {
	width: 820px;
	margin: 0 auto;
	line-height: 0;
	text-align: left;
	overflow: hidden;
	padding: 0;
}
@media screen and (max-width:800px) {
#message {
padding:40px 0;

}
#message h1 {
margin:30px 20px;
}
#messageWrap {
 width: auto;
 padding: 0 0 20px;
 margin: 0 20px 50px;
}
#messageWrap .inner ,#profile .inner {
 width: auto;
 padding: 0 10px;
}
}
@media screen and (max-width:640px) {
#message {
padding:30px 0;
}
#message h1 {
margin:10px 10px;
}
}

/*==========================================
 profile
===========================================*/

#profile {
	width: 970px;
	padding: 0;
	margin: 70px auto 20px;
	background: #FFFFFF;
	box-shadow: 0px 0px 5px 0px #575757;
	-moz-box-shadow: 0px 0px 5px 0px #575757;
	-webkit-box-shadow: 0px 0px 5px 0px #575757;
	overflow: hidden;
}
section#profile {
padding-top:0;
}
section#profile h1 {
background:#018FD7;
padding:0;
line-height:0;
margin:0 0 30px;
}
ul.bookList {
width:100%;
display: -webkit-flex; /* Safari */
  display: flex;
-webkit-justify-content: space-between; /* Safari */
  justify-content:         space-between;
    margin-bottom:50px;
}
ul.bookList li {
width:33.333%;
font-size:1.5rem;
line-height:1.5;
padding:0 20px;
}
ul.bookList li img {
margin-bottom:20px;
border:1px solid #D6D6D6;
}

@media screen and (max-width:800px) {
#profile {
 width: auto;
 padding: 0;
 margin:50px 20px 20px;
}
}
@media screen and (max-width:640px) {
ul.bookList {
width:100%;
  display: inline;
    margin-bottom:50px;
}
ul.bookList li {
width:70%;
margin:0 auto 20px;
font-size:1.3rem;
line-height:1.5;
padding:0 20px;
}
ul.bookList li img {
margin-bottom:5px;
border:1px solid #D6D6D6;
}
ul.bookList li br {
display:none;
}
}


/*==========================================
 youtube
===========================================*/
 .youtubeFrame {
 width:873px;
 margin: 0 auto 80px;
}
 .youtubeInner {
 margin: 0;
 padding:10px;
}
 .youtubeBox {
 text-align: center;
 padding-top: 0;
 width: 853px;
 height: 480px;
 margin: 0 auto;
}
 .youtubeBox iframe {
 width: 853px;
 height: 480px;
 display: block;
}
@media screen and (max-width:800px) {
 .youtubeFrame {
 width:auto;
 margin:10px 10px 40px;
}
 .youtubeInner {
 margin: 0;
 padding: 0;
 text-align: center;
}
 .youtubeBox {
 text-align: center;
 position: relative;
 width: 100%;
 padding-top: 56.25%;
 height:auto;
}
 .youtubeBox iframe {
 position: absolute;
 top: 0;
 right: 0;
 width: 100%;
 height: 100%;
}
}

/*==========================================
 add contents
===========================================*/

.present {
    width: 970px;
    margin: 30px auto;
    padding: 30px 0;
    text-align: center;
    border: solid 6px #9E8147;
    background-color: #FFFFFF;
}
.promise {
    width: 880px;
    margin: 30px auto;
    padding: 5px;
    text-align: center;
    border: solid 6px #9E8147;
    background-color: #FFFFFF;
}
.promiseInner {
    border: solid 2px #9E8147;
	padding:0 30px 30px;
}
.list {
background:;
padding:10px;
margin-left:30px;
}
.list li {
font-size:2.2rem;
padding:0 0 20px;
font-weight:bold;
text-indent:-22px;
}
.list li span.highlight02 {
border-bottom:1px dashed #CCCCCC;
}

@media screen and (max-width:800px) {
.present {
width: auto;
    margin: 30px 20px;
	}
	.promise {width: auto;
    margin: 30px 20px;
	}
.promiseInner {
	padding:0 5px 5px;
}
.list li {
font-size:1.8rem;
padding:0 0 10px;
font-weight:bold;
}

}
/*==========================================
 appli 01
===========================================*/
.countdown {
	text-align:center;
	margin:0 0 30px;
	padding:15px 10px;
	background:#000;
	color:#fff;
}
.countdown span {
	font-size:4.0rem;
	font-weight:bold;
	line-height:1.8;
}
.appliWrap01 {
background:#065CA5;
padding-bottom:70px;
}
.appliWrap02 {
background:#F7F5EE;
padding-bottom:70px;
}
.appliWrap03 {
background:#f7f4ee;
padding-bottom:70px;
}
.appliWrap04 {
padding-bottom:70px;
}
.appli {
	border-top:5px solid #9E8147;
	width:970px;
	margin:0 auto;
	padding:0;
	background:#fff;
/* box-shadow */
box-shadow:0px 0px 6px 0px #353635;
-moz-box-shadow:0px 0px 6px 0px #353635;
-webkit-box-shadow:0px 0px 6px 0px #353635;
}
.wrap01 {
background:url(../../images/bg_form.png) repeat;
}
.wrap02 {
background:#F5F3ED;
}
.wrap03 {
background:#f7f4ee;
}
.appli h1 {
	text-align: center;
	padding:0;
	margin:0 0 30px;
}
.appli p.subttl {
text-align:center;
margin-bottom:20px;
}

.appli p.attention {
	font-size:1.5rem;
	line-height:1.5;
	padding:0 60px 40px;
	text-align:left;
}
@media screen and (max-width:800px) {
.countdown span {
	font-size:2.5rem;
	font-weight:bold;
	line-height:1.8;
}

.appliWrap01,
.appliWrap02,
.appliWrap03,
.appliWrap04 {
padding-bottom:40px;
}
.appli {
width:auto;
margin:0 20px;
}
.appli h1 {
 margin:0 30px 20px;
 line-height:1.6;
}
.appli p.subttl {
text-align:center;
margin-bottom:20px;
padding:0 20px;
}

.appli p.attention {
	padding:0 40px 10px;
}
}
@media screen and (max-width:640px) {
.timer {
	font-size:2.5rem;
	margin:0;
}
.appliWrap01 {
background:#065CA5;
padding-bottom:30px;
}

}
p.btn_appli {
	text-align: center;
}
p.btn_appli a img {
	background: none!important;
}
p.btn_appli a:hover img {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
	background: none!important;
}

/*==========================================
form
===========================================*/

form {
 padding-bottom: 0;
 display: block;
}
form dl {
margin-bottom:20px;
}
form dl dt {
display:none;
}
form dl dd {
 width: 870px;
 display: block;
 color:#FFFFFF;
 margin: 0 auto 20px;
}
form .fbox {
 height: 70px;
 width: 100%;
 font-size:2.4rem;
 font-weight:normal;
 padding:5px 5px 5px 15px;
 margin: 0;
 display: block;
 color: #D6D6D6;
 border:3px solid #D6D6D6;
 border-radius:5px;
}
.alertCon {
padding:0 0 20px;
}
.alertBtn {
background:url(../../images/btn_submit_on.png) no-repeat center top;
 height:119px;
 text-align: center;
}
.submit:hover {
opacity:0;
}
.submit {
width:auto;
}
@media screen and (max-width:800px) {
 form {
 padding-bottom: 20px;
 display:block;
}
form dl dd {
 width: 100%;
 display: block;
 color:#FFFFFF;
 margin: 0 0 10px;
}
form .fbox {
 height: 50px;
 width:90%;
 display:block;
 margin:0 auto;
 font-size:20px;
 padding:5px 5px 5px 10px;
}
.alertBtn {
 background:none;
 text-align: center;
 height:auto;
 padding:0 30px;
}
.submit {
 width:100%;
}
}
@media screen and (max-width:320px) {
form {
 display:block;
}
form dl dt {
display:none;
}
form dl dd {
 width: 100%;
 display: block;
 color:#FFFFFF;
 margin: 0 0 5px;
}
form .fbox {
 height: 40px;
 width:95%;
 margin:0 auto;
 font-size:1.5rem;
 padding:5px 5px 5px 10px;
}
input:focus {
 background-color: #FEFDAB;
}
}




/*==========================================
 privacy
===========================================*/
.privacy {
 border: 1px solid #CCCCCC;
 color: #999999;
 width: 860px;
 text-align: left;
 background: #fff;
 margin: 50px auto 0;
 height: 110px;
 overflow: scroll;
 padding:10px 40px;
}
.privacy p {
 padding:0 0 20px;
 font-size: 1.5rem;
 line-height: 1.6;
 text-align: left;
}
.privacy h1, .privacy h2 {
 padding:0 0 10px;
 font-size: 16px;
 line-height:1.6;
 text-align:left;
}
 @media screen and (max-width:800px) {
.privacy {
width:700px;
}
}
 @media screen and (max-width:640px) {
.privacy {
 width:auto;
 margin: 30px 20px 0;
}
.privacy p {
 padding:0 0 20px;
 font-size: 1.2rem;
 line-height: 1.6;
 text-align: left;
}

}

/*==========================================
footer
===========================================*/
 footer {
 padding:10px 0;
 text-align: center;
 background:#0190D7;
}
 footer .inner p {
 color: #ccc;
 padding-bottom: 10px;
 font-size: 1.4rem;
 line-height: 1.6;
 padding: 10px 10px 10px;
 text-align: center;
}
 footer ul {
 margin-bottom: 20px;
}
 footer ul li {
 width:33%;
 display: inline;
 padding: 2px 10px 2px 50px;
 border-left: 1px solid #fff;
 border-right: none;
 margin-bottom: 10px;
 font-size: 1.4rem;
}
 footer ul li:last-child {
 border-right: 1px solid #fff;
 padding-right:50px;
}
@media screen and (max-width:800px) {
 footer ul {
 margin-bottom: 20px;
 background: #1C6091;
 padding: 15px 10px 10px;
}
 footer ul li {
 padding: 3px 10px;
 border-left: 1px solid #fff;
 border-right: 1px solid #fff;
 margin: 0 20px 10px;
 font-size: 1.3rem;
}
 footer a {
 color: #fff;
}
 footer a:link {
 color: #fff;
 text-decoration: underline;
}
 footer a:hover {
 color: #fff;
 text-decoration: none;
}
}
/*==========================================
margin
===========================================*/
.mb1 {
	margin-bottom:10px;
}
.mb2 {
	margin-bottom:20px;
}
.mb3 {
	margin-bottom:30px;
}
.mb4 {
	margin-bottom:40px;
}
.mb18 {
	margin-bottom:180px;
}
.mt1 {
	margin-top:10px;
}
.mt2 {
	margin-top:20px;
}
.mt3 {
	margin-top:30px;
}
.mt4 {
	margin-top:40px;
}
.mt-3 {
	margin-top:-30px;
}
.mt-4 {
	margin-top:-40px;
}
.pt1 {
	padding-top:10px;
}
.pt2 {
	padding-top:20px;
}
.pt3 {
	padding-top:30px;
}
.pt4 {
	padding-top:40px;
}
.pt5 {
	padding-top:50px;
}
.pt6 {
	padding-top:60px;
}
.pb1 {
	padding-bottom:10px;
}
.pb2 {
	padding-bottom:20px;
}
.pb3 {
	padding-bottom:30px;
}
.pb4 {
	padding-bottom:40px;
}
.pb5 {
	padding-bottom:50px;
}
.pb6 {
	padding-bottom:60px;
}
.pb7 {
	padding-bottom:70px;
}
/*==========================================
font
===========================================*/
.fontR {
	color: #FF0000;
	font-weight: bold;
}
.fontBl {
	color: #09A1E7;
}
.fontG {
	color: #008F49;
}
.fontB {
	font-weight: bold;
}
.fontB110 {
	font-weight: bold;
	font-size: 110%;
}
.fontB120 {
	font-weight: bold;
	font-size: 120%;
}
.fontB130 {
	font-weight: bold;
	font-size: 130%;
}
.fontB150 {
	font-weight: bold;
	font-size: 150%;
}
.fontB180 {
	font-weight: bold;
	font-size: 180%;
}
.fontU {
	text-decoration: underline;
}
.fontBG {
	border: 1px solid #CCCCCC;
	padding: 10px;
}
.fontS {
	font-size: 75%;
}
.highlight {
	background-color: #FF3;
	font-weight: bold;
	padding: 2px 3px;
}
.fs1 {
	font-size: 110%;
}
.fs2 {
	font-size: 120%;
}
.fs3 {
	font-size: 130%;
}
.txtC {
	text-align: center;
}
.txtR ,.inner p.txtR {
	text-align:right;
}
.imgC, p.imgC {
	text-align: center;
	line-height: 0;
	padding:0;
}
@media screen and (min-width:240px) {
 .imgR {
 width: 70%;
 display: block;
 margin: 0 auto 15px;
}
}
 @media screen and (min-width:768px) {
 .imgR {
 float: right;
 width: auto;
 display: inline;
 margin: 0 0 20px 20px;
}
}
