body {
background: #fff;
color: #515151;
font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif"; 
font-weight: 400;
width: 100%;
height:100%;
font-size: 12px;
line-height:1.8em;
margin: 0px;
}


#wrap{
width: 100%;
position: relative;
overflow: hidden;
}

#content{
width: 100%;
}

.pc{ display: none;}
.sp{ display: block;}

.txtRed{ color: #fe7f94;}
.fontL{ font-size: 110%;}
.fontS{ font-size: 80%;}
.fontB{ font-weight: 600;}

.no-wrap { display: inline-block;}

a {text-decoration: underline; color: #e1556c;}

.linkLabel{
margin-top:-0;
padding-top:0;
text-indent: -99999px;
}

.warning{
width: 86%;
text-align: left;
font-size: 10px;
font-weight: 500;
line-height: 1.6em;
padding-left: 1em;
text-indent: -1em;
margin: 0 auto;
}


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

header

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

header{
background: url("../images/header_sp.jpg") no-repeat center;
background-size: cover;
width: 100%;
position: relative;
overflow: hidden;
}

header:before{
content:"";
display: block;
padding-top: 40%;
}

#logo{
width: 36%; height: 45%;
position: absolute;
top: 18%; left: 32%;
z-index: 2;
}

#logo a{
width: 100%; height: 100%;
display: block;
}

#headerTxt{
width: 90%;
padding: 15px 0 0;
text-align: center;
margin: 0 auto;
font-size: 14px;
line-height: 1.6em;
}

.contentM{
width: 100%;
line-height: 40px;
text-align: center;
font-size: 16px;
color: #5c64d9;
font-weight: 600;
border-top: 2px dotted #5c64d9;
border-bottom: 2px dotted #5c64d9;
}

#movieArea{
width: 86%;
max-width: 960px;
margin: 2em auto 0;
}

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

oubo

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

#ouboAll{
width: 100%;
padding: 25px 0 30px;
}

.ouboblock{
width: 90%;
margin: 0 auto 20px;
overflow: hidden;
box-shadow: 0 0 7px rgba(0,0,0,0.2);
}

.oubostepM{
background: url("../images/step1_bg.jpg") no-repeat center;
background-size: cover;
width: 100%;
color: #fff;
font-size: 13px;
line-height: 30px;
text-align: center;
letter-spacing: 1px;
font-weight: 600;
}

.oubostepM2{
background: url("../images/step2_bg.jpg") no-repeat center;
background-size: cover;
width: 100%;
color: #fff;
font-size: 13px;
line-height: 30px;
text-align: center;
letter-spacing: 1px;
font-weight: 600;
}

.oubostepTxt{
width: 100%;
text-align: center;
padding: 1em 0;
font-size: 13px;
line-height: 1.7em;
font-weight: 600;
}

.oubostepTxt a{text-decoration: underline; color: #e1556c;}

#oubokikan{
background: #fe7f94;
width: 90%; height: 38px;
line-height: 38px;
color: #fffdb7;
margin: 1em auto 1em;
border-radius: 19px;
font-size: 13px;
font-weight: 600;
text-align: center;
}

.warningTxtAll{
width: 86%;
margin: 0 auto;
}

.warningTxt{
padding-left: 1em;
text-indent: -1em;
font-size: 10px;
line-height: 1.5em;
margin: 0.5em auto;
text-align: left;
}

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

present

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

#presentAll{
width: 100%;
padding: 15px 0 20px;
}

#presentImgAll{
width: 96%;
display: flex;
flex-wrap: wrap;
align-items:center;
justify-content:center;
margin: 0 auto;
}

.presentBlock{
width: 46%;
margin: 0.5em 2% 1em;
position: relative;
overflow: hidden;
box-shadow: 0 0 7px rgba(0,0,0,0.2);
}

.presentBlock:before{
content:"";
display: block;
padding-top: 128%;
}

#presentImg01{ background: url("../images/img_present01.jpg") no-repeat center;}
#presentImg02{ background: url("../images/img_present02.jpg") no-repeat center;}
#presentImg03{ background: url("../images/img_present03.jpg") no-repeat center;}
#presentImg01,#presentImg02,#presentImg03{
background-size: contain;
width: 100%; height: 100%;
position: absolute;
top: 0; left: 0;
z-index: 1;
text-indent:-999999px;
}

.presentWarning{
width: 86%;
text-align: left;
margin: 0 auto 30px;
font-size: 10px;
line-height: 1.8em;
font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
padding-left: 1em;
text-indent: -1em;
}


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

warning

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

#warning{
width: 100%;
padding: 20px 0;
background: #ece9f6;
}

#warningTxtAll{
width: 90%;
max-width: 1200px;
height: 300px;
margin: 0 auto;
overflow-x: hidden;
overflow-y: auto;
}

#warningTxt{
width: 100%;
font-size: 10px;
line-height: 1.4em;
color: #4c4d57;
}

#warningTxt a{ color: #000; text-decoration: underline;}

.warningfontS{
padding-left: 1em;
text-indent: -1em;
}

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

footer

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

footer{
background: url("../../images/top2/footer_bg.jpg") no-repeat center bottom;
background-size: 140% auto;
width: 100%;
padding: 1em 0 7em;
font-size: 10px; 
letter-spacing: 1px;
line-height: 1.5em;
text-align: center;
font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}

#btntop{
width: 100%;
text-align: center;
font-size: 20px;
line-height: 0;
margin: 1.5em 0 2em;
}

#btntop a{
text-decoration: none;
color: #fff;
}
#copyright{
background-size: contain;
width: 100%;
margin: 0 auto 20px;
font-size: 10px;
line-height: 1.6em;
text-align: center;
letter-spacing: 1px;
}

#privacy{
background-size: contain;
width: 100%;
margin: 0 auto;
font-size: 10px;
line-height: 2em;
text-align: center;
letter-spacing: 1px;
color: #fff;
}

#privacy a{ color: #fff; text-decoration: underline;}

#btnpagetop{
background: #ed6b80;
width: 55px; height: 55px;
position: fixed;
bottom: 0; right: 0;
z-index: 20;
line-height: 55px;
text-align: center;
font-size: 14px;
}

#btnpagetop a{
width: 100%; height: 100%;
display: block;
color: #fff;
}
