@charset "utf-8";

/* init **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
*{ margin:0; padding:0; box-sizing:border-box; }
select option{ padding:0 5px; }
body{ color:#000; background:url(../images/bg.jpg) repeat; font:16px helvetica, arial, 'hiragino kaku gothic pro', meiryo, 'ms pgothic', sans-serif; line-height:1.8; text-align:center; min-width:1074px;_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; }


/* font decoration **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
/* size */
.fontSS{ font-size:12px; }
.fontS{ font-size:14px; }
.fontL{ font-size:20px; }

/* color */
.txt-red{ color:#e90000; font-weight:bold; }
.txt-blue{ color:#004bd5; font-weight:bold; }
.txt-purple{ color:#7422CD; 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; }
.smt-30{ margin-top:-30px !important; }
.smt-10{ margin-top:-10px !important; }
.smt-100{ margin-top:-100px !important; }
.smt-50{ margin-top:-50px !important; }
.smt-70{ 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; }

.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 85px 30px; }
p.lh-reset{ line-height:1.0; }

/* original frame */
.box{ margin:0 50px; }


/* favorite decoration **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.shadow{ box-shadow:0px 0px 8px rgba(0,0,0,0.4); }

table{ border-collapse:separate; border-spacing:1px; background-color:#cdcdcd; line-height:2; font-size:14px; }
table th , table td{ border:1px solid #fff; padding:5px 10px; }
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; }


/* timer ********** タイマーが必要な場合のみ記述
///////////////////////////////////////////////////////////////////////////////////////////////*/
div.timer{ position:relative; width:660px; height:102px; margin:0 auto; padding-top:9px; padding-left:80px; }
.timer .timeDay { position:absolute; top:50px; left:125px; }
.timer .timeHr  { position:absolute; top:50px; left:255px; }
.timer .timeMmin{ position:absolute; top:50px; left:400px; }
.timer .timeSec { position:absolute; top:50px; left:510px; }
.timer .timeMsec{ position:absolute; top:75px; left:623px; }
.timer img{margin-left:-6px;}

/* timerがテキストの時は以下設定等で見た目を整える */
input.timer , .timer input{ font-size:30px; background-color:transparent; border:none; width:500px }

/* form ********** */
.mailform{ position:relative; width:1036px; height:353px; margin:0 auto; background:url(../images/form_bg.png) no-repeat left; }
.mailform input[type=text]{ width:440px; height:36px; padding:0 10px; border:transparent; font-size:18px; }
.mailform .nam{ position:absolute; top:155px; left:252px; background-color: rgba(0,0,0,0); }
.mailform .mai{ position:absolute; top:201px; left:252px; background-color: rgba(0,0,0,0); }
.mailform .btn{ position:absolute; top:142px; left:700px; }
.mailform .btn:hover{ opacity:0.8; }
.mailform .txt{ position:absolute; top:263px; left:120px; text-align:left; font-size:12px; line-height:1.4; }


/* wrap **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.wrap{ width:1074px; margin:0 auto; position:relative; }
.contents .wrap{ text-align:left; }
.kiyakuwrap{ width:1074px; margin:0 auto; position:relative;text-align:left; }


/* header **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.header{ background:url(../images/header_bg.png) no-repeat top center; height:2300px; }


/* contents **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.contents{ background:url(../images/contents_bg.png) repeat-y center top; padding-bottom: 10px; margin-top:-415px; }

.contents h2{ margin-bottom:20px; text-align: center; }

/* tokuten */
.tokuten { width:922px; margin:0 auto; padding:0 40px 10px; background:url(../images/tokuten_bg.png)repeat-y center top;  }
.tokuten dl{ position:relative; padding-top:65px; }
.tokuten dl:not(:first-child){ margin-top:20px; }
.tokuten dt{ position:absolute; top:0; left:0; }
.tokuten dd{ padding:25px 30px 25px 0; background-color:#fefcf1; border:solid 1px #927b44; box-shadow:0 0 30px 0 rgba(238,226,195,0.9) inset; }
.tokuten dd p{ margin:0 35px 30px; }
.tokuten dd p:last-child{ margin-bottom:0; }

/* kankyo,kiyaku */
.kankyo{ width:910px; margin:20px auto 0; }
.kankyo p{ margin:0; }
.kankyo .txtS{ font-size:12px; }
.kankyo ul , .kankyo ol{ margin-left:30px; margin-bottom:15px; }
.kankyo ul li{ list-style-type:disc; }
.kankyo table{ width:910px; margin-bottom:8px; font-size:14px; background-color:#cdcdcd; border-collapse:separate; border-spacing:1px; }
.kankyo table th , .kankyo table td{ padding:3px 10px; border:1px solid #fff; }
.kankyo table th{ width:120px; font-weight:bold; vertical-align:middle; background-color:#cdcdcd; }
.kankyo table td{ background-color:#fff; }
.kiyaku{ width:910px; margin:10px auto 0; padding:10px 15px; font-size:14px; line-height:1.6; background-color:#e7e7e7; border:solid 2px #fff; border-radius:3px; }
.kiyaku .ttl{ font-weight:bold; font-size:16px; }


/* footer **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.footer{ color:#FFF; background-color:#333; padding:10px 0 20px; text-align:center; }
.footer a{ color:#FFF; font-size:12px; }
