@charset "utf-8";

/* init **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
*{ margin:0; padding:0; box-sizing:border-box; }
select option{ padding:0 5px; }
body{ color:#000; background:#000 url(../images/bg.jpg) no-repeat center top; font:18px helvetica, arial, 'hiragino kaku gothic pro', meiryo, 'ms pgothic', sans-serif; line-height:1.6; text-align:center; min-width:1050px;_display: inline;_zoom:1;  }
h1 , h2 , h3 , h4 , h5 , h6 , address{ font-style:normal; font-weight:normal; font-size:100%; }
ul{ list-style-type:none; }
img{ border:0; vertical-align:bottom; }

table{ border-spacing:0; border:0; }
table th{ text-align:left; vertical-align:middle; font-weight:normal; }
table td{ word-break:break-all; }

.floatR{ float:right; }
.floatL{ float:left; }

.alignL{ text-align:left; }
.alignR{ text-align:right; }
.alignC{ text-align:center; }

.rel{ position:relative; }
.abs{ position:absolute; }


/* clearfix **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.cf:after{ content:" "; display:block; clear:both; }


/* link **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
a:link , a:visited{ color:#0000ff; text-decoration:underline; }
a:hover{ color:#ff8000; text-decoration:underline; }

.alpha a:hover img{ opacity:0.7; filter:alpha(opacity=70); -ms-filter:"alpha(opacity=70)"; }


/* font decoration **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
/* size */
.fontSS{ font-size:12px; }
.fontS{ font-size:16px; }
.fontL{ font-size:20px; }
.fontLL{ font-size:24px; }

/* color */
.txt-red{ color:#b80000; font-weight:bold; }
.txt-blue{ color:#173985; font-weight:bold; }

/*indent */
.idt , ul.assist li , .system li{ padding-left:1.0em; text-indent:-1.0em; }
.idt-half{ padding-left:0.5em; text-indent:-0.5em; }

/*other */
.str{ font-weight:bold; }
.str-reset{ font-weight:normal; }

.underline{ text-decoration:underline; }
.underline-double{ border-bottom:double medium; }

.waveline{ background:url(../images/wave_line.png) repeat-x left bottom; padding-bottom:7px; }
.waveline-red{ background:url(../images/wave_line_red.png) repeat-x left bottom; padding-bottom:7px; }
.waveline-blue{ background:url(../images/wave_line_blue.png) repeat-x left bottom; padding-bottom:7px; }

.marker{background-color:#fff600; }


/* space **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
/* padding */
.spt0{ padding-top:0px !important; }
.spt5{ padding-top:5px !important; }
.spt10{ padding-top:10px !important; }
.spt15{ padding-top:15px !important; }
.spt20{ padding-top:20px !important; }
.spt25{ padding-top:25px !important; }
.spt30{ padding-top:30px !important; }
.spt35{ padding-top:35px !important; }

.spb0{ padding-bottom:0px !important; }
.spb5{ padding-bottom:5px !important; }
.spb10{ padding-bottom:10px !important; }
.spb15{ padding-bottom:15px !important; }
.spb20{ padding-bottom:20px !important; }
.spb25{ padding-bottom:25px !important; }
.spb30{ padding-bottom:30px !important; }
.spb35{ padding-bottom:35px !important; }

/* margin */
.smt0{ margin-top:0px !important; }
.smt5{ margin-top:5px !important; }
.smt10{ margin-top:10px !important; }
.smt15{ margin-top:15px !important; }
.smt20{ margin-top:20px !important; }
.smt25{ margin-top:25px !important; }
.smt30{ margin-top:30px !important; }
.smt35{ margin-top:35px !important; }
.smt40{ margin-top:40px !important; }
.smt45{ margin-top:45px !important; }
.smt50{ margin-top:50px !important; }
.smt70{ margin-top:70px !important; }

.smb0{ margin-bottom:0px !important; }
.smb5{ margin-bottom:5px !important; }
.smb10{ margin-bottom:10px !important; }
.smb15{ margin-bottom:15px !important; }
.smb20{ margin-bottom:20px !important; }
.smb25{ margin-bottom:25px !important; }
.smb30{ margin-bottom:30px !important; }
.smb35{ margin-bottom:35px !important; }
.smb40{ margin-bottom:40px !important; }
.smb45{ margin-bottom:45px !important; }
.smb50{ margin-bottom:50px !important; }
.smb70{ margin-bottom:70px !important; }

.sml0{ margin-left:0px !important; }
.sml20{ margin-left:20px !important; }
.sml30{ margin-left:30px !important; }
.sml50{ margin-left:50px !important; }

.smr0{ margin-right:0px !important; }
.smr20{ margin-right:20px !important; }
.smr30{ margin-right:30px !important; }
.smr50{ margin-right:50px !important; }
.smr100{ margin-right:100px !important; }

/* paragraph */
p{ margin:0 70px 30px; }
p.lh-reset{ line-height:1.0; }

/* original frame */
.box{ margin:0 70px; }


/* wrap **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.wrap{ width:950px; margin:0 auto; position:relative; text-align:left;}
.header .wrap{ width:1018px; padding:45px 0; }

/* header **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.header{ margin-bottom:40px; }

.header .top{   border-bottom:solid 2px #b4a677; padding:16px 0; text-align: center;
                background:-moz-linear-gradient( 90deg, rgb(0,0,0) 0%, rgb(27,27,27) 100%);
                background:-webkit-linear-gradient( 90deg, rgb(0,0,0) 0%, rgb(27,27,27) 100%);
                background:-ms-linear-gradient( 90deg, rgb(0,0,0) 0%, rgb(27,27,27) 100%);
                }

.main-title{ border-top:solid 2px #b4a677; border-bottom:solid 2px #b4a677; padding:2px; margin-bottom:40px;
    background:-moz-linear-gradient( 90deg, rgba(0,0,0,0.85) 0%, rgba(27,27,27,0.75) 100%);
    background:-webkit-linear-gradient( 90deg, rgba(0,0,0,0.85) 0%, rgba(27,27,27,0.75) 100%);
    background:-ms-linear-gradient( 90deg, rgba(0,0,0,0.85) 0%, rgba(27,27,27,0.75) 100%);
    }
h1{ border-top:solid 1px #b4a677; border-bottom:solid 1px #b4a677; padding:25px 0 20px; }


/* contents **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.contents{ background-color:#fff; border-radius:10px 10px 0 0; padding:30px 0 10px; }

/*h2{ text-align:center; margin:70px 0 70px; }*/
h2{ position:relative; height:195px; margin:40px 0; }
h2.line-3{ height:242px; }
h2 img{ position:absolute; top:0px; left:-17px; }

ul.disc{ margin-bottom:30px; line-height:1.4; }
ul.disc li{ background:url(../images/listmark.png) no-repeat 0px 8px; padding:0 0 6px 15px; }
ul.disc li:last-child{ padding-bottom:0px; }

.letter{ background:url(../images/linedpaper.png) repeat; padding:20px 0; margin-bottom:30px;  }
.letter h2{ text-align:center; margin:30px 0; position:static; height:auto; }
.letter h2 img{ position:static; }
.letter .photo{ background:url(../images/letter_photo.png) no-repeat top right; margin-right:1px; }

.ans{ margin-bottom:30px; font-weight:bold; }
.ans dl dt{ background:url(../images/listmark.png) no-repeat 0px 8px; padding-left:15px; }
.ans dl dd{ background:url(../images/arrow1.png) no-repeat 10px 3px; font-weight:normal; background-color:#fff; border-radius:3px; padding:0 10px 3px 40px; margin-bottom:10px; }
.ans dl dd:last-child{ margin-bottom:0px; }

.profile{ border-radius:10px; background:url(../images/paper_fibers.png) repeat; border:solid 1px #fff; padding-top:30px; margin-bottom:30px; }
.profile p{ margin:0 30px 30px; }

.phase{ border-radius:10px; margin-bottom:30px; padding-top:10px; }
.phase p{ margin:0 50px 30px; }
.phase .box{ margin-left:50px; margin-right:50px; }
.phase h3{ position:relative; height:145px; }
.no3 h3{ height:200px; }
.phase h3 img{ position:absolute; top:0px; left:-14px; }
.phase .txt , .tokuten .txt{ background-color:rgba(255,255,255,0.9); margin:10px; padding:5px 0 1px; border:solid 1px #fff; box-shadow:0px 0px 4px rgba(0,0,0,0.2); border-radius:0 0 5px 5px;  }
.no1{   border:solid 1px #ffef80;
        background-image: -moz-linear-gradient( 90deg, rgb(248,221,38) 0%, rgb(252,237,137) 100%);
        background-image: -webkit-linear-gradient( 90deg, rgb(248,221,38) 0%, rgb(252,237,137) 100%);
        background-image: -ms-linear-gradient( 90deg, rgb(248,221,38) 0%, rgb(252,237,137) 100%);
        }
.no2{   border:solid 1px #eec10b;
        background-image: -moz-linear-gradient( 90deg, rgb(238,193,11) 0%, rgb(238,150,11) 100%);
        background-image: -webkit-linear-gradient( 90deg, rgb(238,193,11) 0%, rgb(238,150,11) 100%);
        background-image: -ms-linear-gradient( 90deg, rgb(238,193,11) 0%, rgb(238,150,11) 100%);
        }
.no3{   border:solid 1px #f79a49;
        background-image: -moz-linear-gradient( 90deg, rgb(238,95,39) 0%, rgb(246,142,50) 100%);
        background-image: -webkit-linear-gradient( 90deg, rgb(238,95,39) 0%, rgb(246,142,50) 100%);
        background-image: -ms-linear-gradient( 90deg, rgb(238,95,39) 0%, rgb(246,142,50) 100%);
        }

.tokuten{   border-radius:10px; margin-bottom:30px; border:solid 1px #ccc;
            background-image: -moz-linear-gradient( 90deg, rgb(206,229,247) 0%, rgb(233,241,247) 100%);
            background-image: -webkit-linear-gradient( 90deg, rgb(206,229,247) 0%, rgb(233,241,247) 100%);
            background-image: -ms-linear-gradient( 90deg, rgb(206,229,247) 0%, rgb(233,241,247) 100%);
        }

.tokuten h3{ position:relative; height:180px; }
.tokuten h3 img{ position:absolute; top:-20px; left:-50px; }
.tokuten .txt{ padding-top: 30px; }

.voice{ background:url(../images/debut_light.png) repeat; margin-bottom:35px; border:solid 1px #ccc; padding:10px; position:relative; box-shadow:0px 0px 8px rgba(0,0,0,0.2); }
.voice .in{ padding:20px 15px 15px; border:solid 1px #fff; box-shadow:0px 0px 4px rgba(0,0,0,0.2);
            background-image: -moz-linear-gradient( 90deg, rgba(237,237,237,0.7) 0%, rgba(255,255,255,0.7) 100%);
            background-image: -webkit-linear-gradient( 90deg, rgba(237,237,237,0.7) 0%, rgba(255,255,255,0.7) 100%);
            background-image: -ms-linear-gradient( 90deg, rgba(237,237,237,0.7) 0%, rgba(255,255,255,0.7) 100%);
            }
.voice dt{ font-size:24px; line-height:1.4; margin:0 130px 10px 0; font-weight:bold; }
.voice dd{ background-color:#fff; padding:18px; }
.voice .name{ font-size:20px; text-align:right; }
.voice .icon{ position:absolute; top:-30px; right:0px; }
.voice .photo{ float:right; margin-left:10px; }


/* favorite decoration **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.shadow , .header .top , h1 , .contents , .profile , .phase , .tokuten , .letter
{ box-shadow:0px 0px 8px rgba(0,0,0,0.4); }
.no-bg{ box-shadow:none; }

table{ border-collapse:separate; border-spacing:1px; background-color:#cdcdcd; line-height:2; font-size:12px; width:800px; margin:0 auto 10px; }
table th , table td{ border:1px solid #fff; padding:10px 10px 7px; }
table th{ font-weight:bold; background-color:#cdcdcd; width:22%; vertical-align:middle; }
table td{ background-color:#fff; }
table ol{ margin-left:20px; }

ul.assist{ font-size:12px; padding:15px 25px 12px; line-height:1.6; border:solid 1px #cdcdcd; }

.system{ font-size:14px; }

dl.rule{ padding:20px; background-color:#f6f6f6; border-radius:3px; border:solid 1px #cdcdcd; font-size:12px; line-height:1.6; text-align:left; }
dl.rule dt{ font-weight:bold; font-size:14px; text-align:center; }



/* footer **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.footer{ background-color:#333; padding:20px 0; text-align:center; x-index:10; position:relative; }

