@charset "utf-8";

/* =========================================================
fot all
========================================================= */

/* level1 title
--------------------------------------------------------- */

div.title{
background:url("../images/title.gif") no-repeat;
width:650px;
margin:10px auto 0;
}

div.title h2{
height:30px;
padding-left:32px;
line-height:30px;
font-size:117%;
font-weight:bold;
color:#80b318;
}

/* pagetop
--------------------------------------------------------- */

div#toplink{
width:650px;
margin-left:10px;
margin-top:10px;
}

div#message{
margin-left:10px;
}

div#toplink p{
background:url(../images/pagetop.gif) no-repeat bottom left;
padding:5px 0 2px 15px;
font-size:10px;
width:7em;
float:right;
}

div#toplink a:link,
div#toplink a:visited{
color:#3a81c9;
}

div#toplink a:hover,
div#toplink a:active{
color:#7f65ed;
}


/* toptextbox
--------------------------------------------------------- */

div.toptextbox{
width:650px;
position:relative;
margin-top:10px;
}

div.toptextboxdiv{
width:650px;
height:10px;
background:url(../images/textback_01.gif) no-repeat;
}

div.toptextbox div.corner{
width:650px;
height:10px;
background:url(../images/textback_01.gif) no-repeat;
}

div.toptextbox div.top{
background-position:0px 0px;
}

div.toptextbox div.bottom{
bottom:0;
left:0;
background-position:0px -25px;
}

div.toptextbox p.toptext{
width:608px;
border-left:1px solid #efefef;
border-right:1px solid #efefef;
background-color:#f8f8f8;
padding:5px 20px;
line-height:1.3;
}

span.finish{
padding:25px 0;
display:block;
}

span.btext{
font-weight:bold;
}

span.errortext{
color:#d70000;
padding:2px 0 6px 25px;
display:block;
background:url(../images/error_01.gif) no-repeat left top;
}

/* ----- errorform ----- */

form p.errorform{
background:url(../images/error_02.gif) no-repeat left bottom;
color:#d70000;
padding:5px 0 0 15px;
}

form td.errorformbox{
background-color:#fcd1d1;
}


/* search result
--------------------------------------------------------- */

p.result0{
text-align:center;
padding:15px 0;
border-bottom:#d0d0d0 solid 1px;
border-top:#d0d0d0 solid 1px;
}


/* =========================================================
calender
========================================================= */

/* calender table
--------------------------------------------------------- */

/* ----- calender structure ----- */

div#calender ul#caltable{
margin-left:10px;
}

div#calender ul#caltable li{
float:left;
padding-right:9px;
}

/* ----- calender left right button ----- */

div#calender .monthbutton{
padding-top:130px;
}

/* ----- calender table ----- */

div#calender div.caltop{
background:url("../images/calender_top.gif") no-repeat bottom;
height:7px;
width:269px;
font-size:0;
}

div#calender div.calbottom{
background:url("../images/calender_bottom.gif") no-repeat;
height:7px;
width:269px;
font-size:0;
}

div#calender div.calmiddle{
background:url("../images/calender_middle.gif") repeat-y;
width:269px;
}

div.calender table{
border-top:1px #d0d0d0 solid;
border-left:1px #d0d0d0 solid;
width:252px;
margin:1px 8px 1px 8px;
table-layout:fixed;
overflow:visible;
font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック',sans-serif;
}

div.calender table th,
div.calender table td{
white-space:nowrap;
width:35px;
text-align:center;
border-right:1px #d0d0d0 solid;
border-bottom:1px #d0d0d0 solid;
}

div.calender table p{
text-align:center;
}

div.calender table th{
height:24px;
}

div.calender table td{
height:40px;
vertical-align:top;
font-size:14px;
}


div.calender table th.weekday{
background-color:#f8f8f8;
}

div.calender table th.holiday,td.holiday{
background-color:#ffe9e9;
color:#d70000;
}

div.calender table th.saturday,td.saturday{
background-color:#e9eeff;
color:#002ed7;
}

/* ----- calender link ----- */

/* ----- .existリンク有 .daynow現在  ----- */

div.calender table td a{
display:block;
width:35px;
height:40px;
padding-top:3px;
text-decoration:none;
}

div.calender table td a:link{
text-decoration:none;
}

div.calender table td p{
height:40px;
padding-top:3px;
}

div.calender table td p.exist{
padding-top:0;
font-weight:bold;
height:43px;
}

div.calender table td p.exist span.existline{
text-decoration:underline;
}

div.calender table td p.exist span.number{
font-weight:normal;
font-size:12px;
display:block;
padding-top:7px;
}

div.calender table .holiday a:link,
div.calender table .holiday a:visited{
color:#d70000;
}

div.calender table .weekday a:link,
div.calender table .weekday a:visited{
color:#666666;
}

div.calender table .saturday a:link,
div.calender table .saturday a:visited{
color:#002ed7;
}

div.calender table td.holiday a:hover,
div.calender table td.holiday a:active,
div.calender table td.weekday a:hover,
div.calender table td.weekday a:active,
div.calender table td.saturday a:hover,
div.calender table td.saturday a:hover{
color:#ffffff;
background-color:#ff9409;
}

div.calender table .daynow{
background-color:#ff9409;
color:#ffffff;
}

div.calender table .daynow a:link,
div.calender table .daynow a:visited,
div.calender table .daynow a:hover,
div.calender table .daynow a:active{
background-color:#ff9409;
color:#ffffff;
}

/* ----- calender top month button ----- */

h3.calmonth{
width:269px;
height:21px;
text-align:center;
vertical-align:middle;
margin-bottom:10px;
margin-top:15px;
font-weight:bold;
line-height:21px;
font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック',sans-serif;
}

h3.calmonth span{
padding-left:5px;
font-size:117%;
}

h3.calmonth a{
display:block;
width:269px;
height:21px;
background:url("../images/calmonth.jpg") no-repeat;
}

h3.calmonth a:hover{
background:url("../images/calmonth_on.jpg") no-repeat;
} 

div.calender a:link,
div.calender a:visited{
color:#666666;
text-decoration:none;
}

div.calender a:hover,
div.calender a:active{
color:#ff9409;
text-decoration:none;
}

/* select */

div.calender h3.now a{
display:block;
width:269px;
height:21px;
background:url("../images/calmonth_on.jpg") no-repeat;
}

div.calender h3.now a:link,
div.calender h3.now a:visited,
div.calender h3.now a:hover,
div.calender h3.now a:active{
color:#ff9409;
text-decoration:none;
}

/* ----- calender bottom month link ----- */

div#yearmonth{
border-top:dotted #d0d0d0 1px;
border-bottom:dotted #d0d0d0 1px;
width:550px;
margin:10px auto;
padding:10px 0;
}

div#yearmonth dl{
width:550px;
}

div#yearmonth dl dt{
float:left;
width:50px;
padding-left:10px;
font-size:14px;
}

div#yearmonth table th{
width:3em;
padding:0 3px 0 3px;
text-align:center;
font-size:12px;
}


div#yearmonth table td{
padding-top:5px;
font-size:10px;
text-align:center;
}

div#yearmonth a:link,
div#yearmonth a:visited,
div#yearmonth a:hover,
div#yearmonth a:active{
color:#666666;
text-decoration:underline;
}


/* search list
--------------------------------------------------------- */

div#listsimple,
div#listbanner{
width:650px;
margin:15px auto 0 auto;
}

/* ----- switch ----- */

div#listsimple div#switch,
div#listbanner div#switch{
width:66px;
padding-left:585px;
}

div#switch ul{
margin-bottom:3px;
height:15px;
}

div#switch ul li{
float:left;
}

div#switch ul li span{
display:none;
}

div#listsimple div#switch ul li.simple a{
display:block;
width:33px;
height:15px;
background:url(../images/switch_simple_on.jpg) no-repeat;
}

div#listsimple div#switch ul li.simple a:hover{
background:url(../images/switch_simple_on.jpg) no-repeat;
} 

div#listsimple div#switch ul li.banner a{
display:block;
width:33px;
height:15px;
background:url(../images/switch_banner.jpg) no-repeat;
}

div#listsimple div#switch ul li.banner a:hover{
background:url(../images/switch_banner.jpg) no-repeat;
} 

div#listbanner div#switch ul li.simple a{
display:block;
width:33px;
height:15px;
background:url(../images/switch_simple.jpg) no-repeat;
}

div#listbanner div#switch ul li.simple a:hover{
background:url(../images/switch_simple.jpg) no-repeat;
} 

div#listbanner div#switch ul li.banner a{
display:block;
width:33px;
height:15px;
background:url(../images/switch_banner_on.jpg) no-repeat;
}

div#listbanner div#switch ul li.banner a:hover{
background:url(../images/switch_banner_on.jpg) no-repeat;
} 


/* ----- daytitle ----- */

div#listsimple div#daytitle,
div#listbanner div#daytitle{
background:url("../images/list_title.jpg") repeat-x;
width:650px;
height:40px;
line-height:40px;
}

div#listsimple h3,
div#listbanner h3{
text-align:center;
}

div#listsimple h3 span,
div#listbanner h3 span{
font-weight:bold;
font-size:117%;
padding-right:10px;
}

/* ----- pager ----- */

div.pager{
width:650px;
height:23px;
border-bottom:#d0d0d0 dotted 1px;
border-top:#d0d0d0 solid 1px;
background-color:#eeeeee;
}

div.pager ul,
div.pagerbottom ul{
margin-top:2px;
margin-right:2px;
font-size:12px;
font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック',sans-serif;
}

div.pager ul li,
div.pagerbottom ul li{
float:left;
margin-right:3px;
border:1px #999999 solid;
}

div.pager ul li a,
div.pagerbottom ul li a{
position:relative;
display:block;
padding:2px 5px;
color:#666666;
}

div.pager ul li a:link,
div.pager ul li a:visited,
div.pagerbottom ul li a:link,
div.pagerbottom ul li a:visited{
background-color:#eeeeee;
text-decoration: none;
}

div.pager ul li a:hover,
div.pager ul li a:active,
div.pagerbottom ul li a:hover,
div.pagerbottom ul li a:active{
background-color:#fdefdf;
text-decoration:none;
}

div.pager ul li em,
div.pagerbottom ul li em{
display: block;
padding: 2px 5px;
background: #fdefdf;
color:#666666;
font-weight:bold;
font-style:normal;
}

div.pagerbottom{
width:650px;
height:23px;
border-bottom:#d0d0d0 solid 1px;
background-color:#eeeeee;
}

div.pager p,
div.pagerbottom p{
float:left;
padding-left:5px;
line-height:23px;
}

div.pager ul,
div.pagerbottom ul{
float:right;
}

div.pager ul li,
div.pagerbottom ul li{
display:inline;
}

/* ----- list table ----- */

div#listsimple table,
div#listbanner table{
width:650px;
border-spacing:0;
border-collapse:collapse;
color:#333333;
}

div#listsimple table td,
div#listbanner table td{
text-align:left;
padding:13px 0 0 0;
vertical-align:top;
}

div#listsimple table td span.eventname,
div#listbanner table td span.eventname{
font-size:117%;
}

/* ----- simple list table ----- */

div#listsimple table td.eventday{
width:230px;
}

div#listsimple table td strong{
padding-right:5px;
}

div#listsimple table td.area{
text-align:right;
width:310px;
padding-left:10px;
}

div#listsimple table td.eventnamebox{
border-bottom:#d0d0d0 dotted 1px;
padding:8px 0 15px 0;
line-height:1.4;
}

/* flag */

div#listsimple span.flag02a{
margin-left:10px;
color:#80b318;
font-size:10px;
padding:1px 2px;
border:1px solid #80b318;
background-color:#e4f7bd;
white-space:nowrap;
}

div#listsimple span.flag02b{
margin-left:10px;
color:#999999;
font-size:10px;
padding:1px 2px;
border:1px solid #999999;
background-color:#eeeeee;
white-space:nowrap;
}

/* ----- banner list table ----- */

div#listbanner table td.eventnamebox{
width:400px;
}


div#listbanner td.flagbox{
width:150px;
}


div#listbanner div.date{
float:right;
line-height:1.4;
vertical-align:top;
width:440px;
}

div#listbanner td.bannerbox{
padding-top:5px;
padding-bottom:10px;
border-bottom:#d0d0d0 dotted 1px;
}

div#listbanner td.bannerbox p{
float:left;
width:210px;
}


/* flag */

div#listbanner td.flagbox ul{
float:right;
}

div#listbanner td.flagbox ul li{
float:left;
margin-left:3px;
}

div#listbanner td.flagbox ul li.flag01{
color:#ffffff;
background-color:#666666;
font-size:10px;
padding:2px 3px;
}

div#listbanner td.flagbox ul li.flag02a{
color:#80b318;
font-size:10px;
padding:1px 2px;
border:1px solid #80b318;
background-color:#e4f7bd;
white-space:nowrap;
}

div#listbanner td.flagbox ul li.flag02b{
color:#999999;
font-size:10px;
padding:1px 2px;
border:1px solid #999999;
background-color:#eeeeee;
white-space:nowrap;
}


/* ----- ratio of man and woman ----- */

div#listsimple td.ratiobox p.ratio,
div#listbanner td.ratiobox p.ratio{
color:#666666;
font-size:10px;
padding-left:10px;
float:left;
}

td.ratiobox div.eventratio p.ratio{
color:#666666;
float:left;
margin-right:10px;
}

td.ratiobox ul{
width:50px;
background-color:#ffffff;
border:1px #999999 solid;
padding:1px;
height:9px;
float:right;
font-size:0;
}

td.ratiobox div.eventratio ul{
width:50px;
background-color:#ffffff;
border:1px #999999 solid;
padding:1px;
height:9px;
float:left;
font-size:0;
}

div#listsimple table td.ratiobox,
div#listbanner table td.ratiobox{
width:100px;
}

td.ratiobox ul li,
td.ratiobox ul li{
float:left;
height:9px;
text-indent: -9999px;
}

/* man100% */

ul.m100f0 li.man,
ul.m100f0 li.man{
width:50px;
background-color:#8db8ff;
}

ul.m100f0 li.woman,
ul.m100f0 li.woman{
width:0px;
background-color:#ffbada;
}

/* man90% woman10% */

ul.m90f10 li.man,
ul.m90f10 li.man{
width:45px;
background-color:#8db8ff;
}

ul.m90f10 li.woman,
ul.m90f10 li.woman{
width:5px;
background-color:#ffbada;
}

/* man80% woman20% */

ul.m80f20 li.man,
ul.m80f20 li.man{
width:40px;
background-color:#8db8ff;
}

ul.m80f20 li.woman,
ul.m80f20 li.woman{
width:10px;
background-color:#ffbada;
}

/* man70% woman30% */

ul.m70f30 li.man,
ul.m70f30 li.man{
width:35px;
background-color:#8db8ff;
}

ul.m70f30 li.woman,
ul.m70f30 li.woman{
width:15px;
background-color:#ffbada;
}

/* man60% woman40% */

ul.m60f40 li.man,
ul.m60f40 li.man{
width:30px;
background-color:#8db8ff;
}

ul.m60f40 li.woman,
ul.m60f40 li.woman{
width:20px;
background-color:#ffbada;
}

/* man50% woman50% */

ul.m50f50 li.man,
ul.m50f50 li.man{
width:25px;
background-color:#8db8ff;
}

ul.m50f50 li.woman,
ul.m50f50 li.woman{
width:25px;
background-color:#ffbada;
}

/* man40% woman60% */

ul.m40f60 li.man,
ul.m40f60 li.man{
width:20px;
background-color:#8db8ff;
}

ul.m40f60 li.woman,
ul.m40f60 li.woman{
width:30px;
background-color:#ffbada;
}

/* man30% woman70% */

ul.m30f70 li.man,
ul.m30f70 li.man{
width:15px;
background-color:#8db8ff;
}

ul.m30f70 li.woman,
ul.m30f70 li.woman{
width:35px;
background-color:#ffbada;
}

/* man20% woman80% */

ul.m20f80 li.man,
ul.m20f80 li.man{
width:10px;
background-color:#8db8ff;
}

ul.m20f80 li.woman,
ul.m20f80 li.woman{
width:40px;
background-color:#ffbada;
}

/* man10% woman90% */

ul.m10f90 li.man,
ul.m10f90 li.man{
width:5px;
background-color:#8db8ff;
}

ul.m10f90 li.woman,
ul.m10f90 li.woman{
width:45px;
background-color:#ffbada;
}

/* woman100% */

ul.m0f100 li.man,
ul.m0f100 li.man{
width:0px;
background-color:#8db8ff;
}

ul.m0f100 li.woman,
ul.m0f100 li.woman{
width:50px;
background-color:#ffbada;
}

/* nodata */

ul.m0f0 li.man,
ul.m0f0 li.man{
width:25px;
background-color:#d0d0d0;
}

ul.m0f0 li.woman,
ul.m0f0 li.woman{
width:25px;
background-color:#d0d0d0;
}

/* form table
--------------------------------------------------------- */


/* ----- title ----- */

h2 span.explanation{
font-size:10px;
color:#666666;
font-weight:normal;
margin-left:15px;
vertical-align:10%;
}

span.red{
color:#d70000;
margin-left:5px;
font-size:8px;
}

/* ----- contact table ----- */

div#contact table{
width:650px;
border-top:1px #d0d0d0 solid;
border-left:1px #d0d0d0 solid;
margin-top:10px;
}

div#contact table th{
border-right:1px #d0d0d0 dotted;
border-bottom:1px #d0d0d0 solid;
padding:5px 10px;
width:13em;
background-color:#fef7ef;
}

div#contact table td{
border-right:1px #d0d0d0 solid;
border-bottom:1px #d0d0d0 solid;
padding:8px 10px;
}

div#contact{
padding-left:10px;
}

input.formlength_01,
textarea.formlength_01,
select.formlength_01{
width:400px;
}

input.formlength_02,
textarea.formlength_02,
select.formlength_02{
width:300px;
}

/* ----- option ----- */

.m5{
margin:0 3px;
}

.ml15{
margin-left:15px;
}

.mt5{
margin-top:5px;
}

.mb5{
margin-bottom:5px;
}

.cl666{
color:#666;
}

p.ex{
padding-top:3px;
font-size:10px;
}

/* ----- button ----- */

p.underbn{
padding-top:10px;
width:110px;
margin:0 auto;
}

/* ----- underlink ----- */

p.underlink{
width:650px;
text-align:center;
margin-top:20px;
}

p.underlink span{
text-align:center;
}


/* regulations & privacy
--------------------------------------------------------- */

div#regulations,
div#privacy{
width:620px;
padding-top:10px;
line-height:1.6;
margin:0 auto;
}

div#regulations h3,
div#privacy h3{
font-size:110%;
font-weight:bold;
margin-bottom:15px;
}

div#regulations p,
div#privacy p{
margin-bottom:20px;
}

div#regulations div,
div#privacy div{
margin-bottom:20px;
}

div#regulations ol li{
list-style-type:decimal;
margin-left:30px;
}

div#regulations ul li{
list-style-type:disc;
margin-left:30px;
}

div#regulations p.enactmentdate{
text-align:right;
}

div#privacy address{
border:0;
margin:0;
padding:0;
}

div#privacy p.b1{
border-top:dotted 1px #d0d0d0;
border-bottom:dotted 1px #d0d0d0;
padding:10px;
}

div#privacy p.b2{
border:dotted 1px #d0d0d0;
padding:10px;
width:400px;
}

div#privacy ol{
list-style-type:decimal;
margin-bottom:15px;
}

div#privacy ol li{
list-style-type:decimal;
margin-left:30px;
margin-bottom:15px;
}

div#privacy ol li ol li{
list-style-type:lower-alpha;
margin-left:30px;
margin-bottom:0;
}

div#privacy ol p{
margin:5px 0;
}

div.privacy_comment{
margin:15px 20px 0;
border:1px #d0d0d0 solid;
}

div.privacy_comment div{
padding:20px;
line-height:1.4;
}

/* sidebar box
--------------------------------------------------------- */

div.sidebox{
width:220px;
padding-bottom:10px;
padding-right:10px;
}

div.sidebox_in,
div.sidebox_in_banner{
width:218px;
border:1px solid #ff9409;
}

div.sidebox_in ul,
div.sidebox_in_banner ul{
border:3px solid #eeeeee;
width:212px;
}

div.sidebox_in ul{
padding-top:5px;
padding-bottom:10px;
}

div.sidebox_in_banner ul{
padding-top:5px;
padding-bottom:5px;
}

div.sidebox_in ul li{
padding:5px 5px 0 10px;
line-height:1.2;
}

div.sidebox_in_banner ul li{
padding:5px;
text-align:center;
}

/* ----- doujincom link ----- */

div.bannerlink{
background:url("../images/bannerlink.gif") no-repeat;
width:220px;
height:99px;
padding:38px 0 6px 0;
}

div.bannerlink h2{
display:none;
}

div.bannerlink p.bana{
text-align:center;
padding-bottom:7px;
}

div.bannerlink p.banatext{
font-size:10px;
color:#666666;
text-align:center;
padding-bottom:5px;
}

/* ----- category link ----- */

.sidebox_in a:link {
color:#3a81c9;
text-decoration:underline;
}

.sidebox_in a:visited {
color:#3a81c9;
text-decoration:underline;
}

.sidebox_in a:hover {
color:#7f65ed;
text-decoration:underline;
}

.sidebox_in a:active {
color:#7f65ed;
text-decoration:underline;
}

/* ----- mapflash ----- */

#mapflash p{
background:url(../images/flash_bg.gif);
padding:15px 10px;
line-height:1.4;
}

/* ----- contact sidebar ----- */

div.contact_01{
background:url(../images/contact_01.gif) no-repeat;
width:220px;
height:179px;
padding-right:10px;
}

div.contact_02{
background:url(../images/contact_02.gif) no-repeat;
width:220px;
height:179px;
padding-right:10px;
}

div.contact_03{
background:url(../images/contact_03.gif) no-repeat;
width:220px;
height:179px;
padding-right:10px;
}

/* footerCM
--------------------------------------------------------- */

div#footer_cm{
margin:0 auto;
text-align:center;
margin-top:30px;
}


/* footer
--------------------------------------------------------- */

div#footer{
background:url("../images/subnavi.gif") repeat-x;
width:900px;
height:30px;
margin-top:30px;
}

div#footer ul{
height:30px;
line-height:30px;
text-align:center;
vertical-align:middle;
}

div#footer ul li{
display:inline;
margin-left:15px;
}

address{
padding:10px 0;
font-style:normal;
border-bottom:1px solid #dbdbdb;
}


/* 404error
--------------------------------------------------------- */

div#notdisplay{
width:650px;
margin:0 auto;
line-height:1.4;
}

span.homelink{
text-align:center;
display:block;
padding-bottom:25px;
}

/* top_flash
--------------------------------------------------------- */

div.noflashtext{
text-align:left;
line-height:1.4;
margin-left:300px;
margin-top:5px;
}

/* pr
--------------------------------------------------------- */

p.dlbana{
text-align:center;
margin:0 auto;
padding-right:10px;
}

p.pr_title{
font-size:10px;
font-weight:bold;
color:#ff9409;
padding-bottom:3px;
text-align:center;
}

/* table list
--------------------------------------------------------- */

td.def_list{
line-height:1.6;
}

td.def_list ul li{
padding:0 0 5px 15px;
background:url("../images/list_icon_01.gif") no-repeat left 20%;
line-height:1.3;
}
