﻿@charset "utf-8";

/* reset */

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, font, 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 {
	margin: 0; padding: 0; border: 0; outline: 0; font-size: 100%;
	vertical-align: baseline; background: transparent;
}
body {
	line-height: 1; color: #333;
	font-family: "メイリオ","Meiryo","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック","MS P Gothic","Osaka","Hiragino Kaku Gothic Pro", Verdana,Arial, Helvetica, sans-serif; 
}
ol, ul { list-style: none; }
:focus { outline: 0; }

/* tables still need 'cellspacing="0"' in the markup */
table { border-collapse: collapse; border-spacing: 0; }
input{ margin:0; padding:0; vertical-align:bottom; }


/*----- 共通内容 -----*/

.line0 { line-height: 0; }
.fl { float: left; }
.fr { float: right; }
.cl { clear: both; }
.cen { text-align: center; }
.opa a:hover img { opacity:0.8;	filter: alpha(opacity=80); -ms-filter: "alpha( opacity=80 )"; background: #fff; }
.none { display: none; }
.str { font-weight: bold; }
.red { color: red; }

img { max-width: 100%; }
.head { background: #fff; border-top: solid 8px #EC5502; }
.copyright { font-size: 10px; text-align: center; }

.box { display: block; margin: 0.6em 0.4em; padding: 0; }

.box3 {
	display: block; margin: 0.2em 0.6em 0.8em; padding: 0.5em;
	border: solid 1px #333;
    font-size: 0.75em; line-height: 1.4;
    background: url(../img/top/arrow01.gif) right bottom no-repeat;
}
.box3:hover { background: url(../img/top/arrow02.gif) right bottom no-repeat; }
.box3 h4 { font-size: 125%; }
.box3 a { color: #333; text-decoration: none; display:block; }
.box3 a:hover { color: #888; }

.box_au {
	display: block; margin: 0.2em 0.6em 0.8em; padding: 0.5em;
    border: solid 1px #fff; font-size: 0.75em; line-height: 1.4;
}

.sns { overflow: hidden; padding-left: 0.5em; }
.sns li { float: left; margin-right: 10px; }
.sns_fb { margin-left: 0px; }
.sns iframe { margin: 0 !important; }

.fb_iframe_widget, .fb_iframe_widget span,
.fb_iframe_widget span iframe[style], .twitter-timeline {
     overflow: hidden;
     width: 100% !important;
}

/* for smart-phone */

#wrap { min-width: 320px; background: #fff; zoom: 1; }
header { min-width: 320px; }
header h1 { text-align: center; padding: 0 0.5em; }
header h2 {
    font-weight: normal; font-size: 12px;
    text-align: center; margin: 0.3em 0 0;
}
.head01 { visibility: hidden; margin-bottom: -0.8em; height: 2.5em; }
.head02 { float: left; margin: -5% 0 0 5%; }
.head03 { width: 20em; margin: 0 auto; }
.updated { float: right; margin: -4% 5% 0 0; font-size: 11px; }

nav { background: #ccc; }
nav ul li {
    height: auto; text-align: center; line-height: 0;
    background: url(../img/common/menu_back01.gif);
}
nav ul li a { display: block; }

.top01 {
    border: solid 1px #666; text-align: center;
}
.top02 { font-size: 0.75em; line-height: 1.5; }
.top02 h3 {
    background: #666; line-height: 0;
    padding: 5px 10px 3px; margin: 0.2em 0 0;
}

.news {
    margin: 0.5em 0 1em; padding: 0.5em;
    border: solid 1px #666; height: 10em; overflow-y: hidden;
}

/*.scroll { overflow-y: scroll; height: 100%; -webkit-overflow-scrolling: touch; }
.scroll::-webkit-scrollbar { width: 10px; }
.scroll::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.2);
    border-radius: 10px; }
.scroll::-webkit-scrollbar-thumb {
    border-radius: 10px; background: #ccc;
    -webkit-box-shadow: inset 0 0 6px rgba(100,100,100,1); }
*/

.topics li { font-size: 12px; padding: 0 2% 0.5em 0; }

.recommend { background: #5077BC; margin-top: 1em; padding: 0 1em; line-height: 0; }

.price {
    float: right; margin: -2.5em 0 0;
    font-size: 250%; font-weight: bold; color: #e00;    
}
.price_small { font-size: 24px;}

.totop { clear: both; text-align: right; padding: 0.6em; cursor: pointer; }

.sd01, .sd011, .sd01_on, .sd011_on {
    text-align: center; padding: 0; line-height: 0;
    background: #fff; box-shadow: 1px 1px 1px #999;
}
.sd01 {
    border-top: solid 1px #333; border-left: solid 1px #333; border-right: solid 1px #333;
    margin-bottom: -0.6em; 
}
.sd01_on{ background: #ec5502; margin-bottom: -0.6em; border: solid 1px #333; }
.sd011 { border: solid 1px #333; }
.sd011_on{ background: #ec5502; margin-bottom: 0.6em; border: solid 1px #333; }
.sd01 a, .sd011 a, .sd01_on a, .sd011_on a { display: block; width: 100%; }

.calender {
    clear: both; border: solid 1px #666; padding: 0.5em 0;
    font-size: 0.875em; height: 16.5em;
}
.cal_title { text-align: center; padding-bottom: 0.5em; border-bottom: solid 1px #888; }
.cal01 { font-size: 10px; padding: 1em 0 0; text-align: center; }

.X_calendar_table { width: 80%; margin: 0.5em auto 0; line-height: 1.5; }
.X_calendar_default, .X_calendar_holiday { text-align: center; }
.X_calendar_table a { color: #f00; font-weight: bold; text-decoration: none; }
.X_calendar_today { 
    text-align: center; background: #ddd;
    -webkit-border-radius: 10px; -moz-border-radius: 10px; border-radius: 10px;	behavior: url(css/ie-css3.htc); }
.X_calendar_holiday { color: #f88; }

.sd02 {
    background: #639bc9; padding: 0.25em 0.75em;
    color: #fff; font-size: 0.75em; line-height: 1.2;
}
.mail01 { width: 100%; margin: 0.2em 0; }
.mail02 { font-size: 10px; padding: 0.15em 0 0;}
.mail03 { clear: both; font-size: 6px; color: #cdf; text-align: center;}

.sd05, .sd06, .sd07, .sd08, .sd09 {
    margin-bottom: -0.6em; text-align: center; font-size: 0.875em;
    border-top: solid 1px #666; border-left: solid 1px #666; border-right: solid 1px #666;
    background: url(../img/common/other_bg.gif) repeat-x; box-shadow: 1px 1px 1px #999;
}
.other { margin-bottom: 0.6em; padding-bottom: 0.6em; }
.other div:last-child { border-bottom: solid 1px #666; }

.sd05 a:hover { background: url(../img/common/other_bg01.gif) repeat-x; } 
.sd06 a:hover { background: url(../img/common/other_bg02.gif) repeat-x; }
.sd07 a:hover { background: url(../img/common/other_bg03.gif) repeat-x; }
.sd08 a:hover { background: url(../img/common/other_bg04.gif) repeat-x; }
.sd09 a:hover { background: url(../img/common/other_bg05.gif) repeat-x; }

.other a { 
    color: #222; text-decoration: none;
    display: block; height: 36px;
}
.other a:hover { color: #fff; }
.other img { visibility: hidden; height: 0;}
.other span { line-height: 2.65; }

.verisign {
    border: solid 1px #666; padding: 0.5em 1em;
    font-size: 11px; line-height: 1.2; color: #555;
}

.banner { width: 90%; text-align: center; margin: 0.3em auto 0.8em; }
.banner img { border: solid 1px #333; }

.kobutu { font-size: 0.75em; line-height: 1.4; padding: 0.5em; }


footer { min-width: 320px; }

.fmn { width: 100%; }
.fmn { padding: 0.5em 0; }
.fmn ul li { font-size: 0.75em; line-height: 2; margin: 0 1em; border-bottom: solid 1px #999; }
.fmn ul li:last-child { border-bottom: none; }
.fmn ul li a { color: #333; width: 100%; text-decoration: none; }
.fmn ul li a:hover { color: #666; text-decoration: underline; }

.foot {
    background: #999999;
    background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzk5OTk5OSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNjY2NjY2MiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
    background: -moz-linear-gradient(top,  #999999 0%, #cccccc 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#999999), color-stop(100%,#cccccc));
    background: -webkit-linear-gradient(top,  #999999 0%,#cccccc 100%);
    background: -o-linear-gradient(top,  #999999 0%,#cccccc 100%);
    background: -ms-linear-gradient(top,  #999999 0%,#cccccc 100%);
    background: linear-gradient(to bottom,  #999999 0%,#cccccc 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#999999', endColorstr='#cccccc',GradientType=0 );
}

.copyright { clear: both; padding: 0.5em 0; }

/* guide */

.gu01 { background: #639BCA; border-radius: 5px; padding: 10px 10px 3px; color: #fff; zoom: 1; }
.gu01 img { float: left; padding: 0 16px 0 0; }
.gu01 h4 { padding: 5px 0 7px; font-size: 19px; }
.gu02 { font-size: 0.875em; padding: 10px 2px; line-height: 1.5; }
.gu03 { padding: 0 10px 8px; }

/* faq */

ul.q { display: block; padding: 1em 0.1em 1.8em; font-weight: bold; }
li.qhead { line-height: 1.5; list-style: outside url(../img/faq/question.gif); margin: 0 0 0 1.5em; }
li.qhead a { color: #333; text-decoration: none; }
li.qhead a span { color: #f60; }
li.qhead a:hover { color: #999; }
.answer{ display: none; padding: 1em 1em 0.5em; font-size: 14px; line-height: 1.4; }
.answer p { padding-bottom: 0.8em; font-weight: bold; }
.answer span.an01 { color: #09a; }

/* corpotation */

.googlemap iframe { width: 100%; padding: 1em 0 0.5em; }
.gmap { padding-right: 100px; }
.ggmap {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
}
 
.ggmap iframe,
.ggmap object,
.ggmap embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* agree */

.agree li { list-style: outside circle; margin: 0 0 0 1em; padding: 5px 0; font-size: 14px; line-height: 1.2; }

/* policy */

.po01 { line-height: 1.6; padding-bottom: 2em; }
.po02 { font-size: 14px; padding-bottom: 1em; }
.po03 { border: solid 1px #666; padding: 1.5em 0.5em; line-height: 1.5; font-size: 13px; }
.po03 h5 { padding-bottom: 1.5em; }
.po03 p { padding-bottom: 5px; }
.po03 h6 { padding: 1.5em 0 0.5em; }
.po04 li { list-style: outside decimal; margin: 0 0 0 2em; padding: 0 0 5px; }
.po05 { padding: 1em 0.5em 0; }
.po06 li { list-style: outside disc; margin: 0 0 0 2em; padding: 0 0 3px; }
.po07 { padding: 1.5em 0 0; font-weight: bold; }
.po08 a { color: #333; }
.po08 a:hover { color: #888; }
.po09 { text-align: right; padding: 2em 0 0.5em; }
.po10 { text-align: right; padding: 0 0 0.5em; }


@media all and (min-width: 480px){
    
    header h2 { padding-left: 1em; font-size: 14px; height: 2em; }
    .head01 { margin-bottom: -8%; height: auto; }
    .head02 { float: left; margin: -4% 0 0; }
    .updated { float: right; margin: -3% 0 0; font-size: 11px; }
	 
    .box_au, .box3 { float: left; width: 43%; }
	
	.box3 h4 { height: 2.5em; }
	.price_small { font-size: 16px; margin-top: -4em;}

}




/* for tablet */

@media all and (min-width: 600px){
    
    header { margin: 0; }
    header h1 { float: left; width: 33.0%; }
    header h2 { display: none; }
    .head01 { visibility: visible; float: left; width: 47.2%; }
    .head02 { float: none; margin: 6% 0 5%; }
    .head03 { width: 19.0%; float: right; text-align: center; }
    .updated { float: none; margin: 0; font-size: 10px; }
    
    nav { width: 100%; background: url(../img/common/menu_back02.gif) repeat-x; }
    nav ul { width: 99.5%; margin: 0 0 0 0.5%;}
    nav ul li {
        float: left; width: 19.6%;
        border-left: solid 1px #ccc; border-right: solid 1px #333;
    }
    nav ul li span { display: none; }
    
    .top01 {
        width: 64%; float: left; height: 200px;
        margin-right: 0;
    }
    .top01 img { max-height: 200px; width: auto; }
    .top02 { float: right; width: 31.5%; height: 200px; }
    .news { height: 156px; }

    .main { width: 75.25%; float: right; }
    .side { width: 24.75%; float: left; }
    
    .recommend { margin-top: 0.25em; }
        
    aside { width: 24.75%; float: left; }
	.box_au, .box3 { width: 43.5%; }
	.sd_au { height: 214px; }

    .calender { font-size: 0.75em; height: 18em; }
    .X_calendar_table { width: 95%; }
	.cal01 { text-align: left; padding: 1em 0.25em 0; }
    
	.other img { visibility: visible; height: 36px; }
    .other span { display: none; }
    .other a:hover { background: none; }
	
    .banner { width: 92%; margin: 0.8em auto; }
    
    .foot { height: 2em; }
 
    .fmn { padding: 0.6em 0 0; }
    .fmn ul li {
        font-size: 0.75em; float: left; line-height: 1.2;
        margin: 0; padding: 0 1em;
        border-bottom: none; border-right: solid 1px #666;
    }
    .fmn ul li:last-child { border-right: none; }
    .fmn ul li a:hover { color: #666; text-decoration: underline; }
    
    .copyright { text-align: left; padding: 1em 2em; }
    
    nav a#pull { display: none; }

	.price_small { font-size: 15px; }

	
	/* corpotation */
	.googlemap iframe { height: 200px; }
	
	/* SNS widget */
	.facebook, .twitter { width: 46.5%; float: left;}
	
}

@media all and (min-width: 768px){

	.cal01 { padding: 1em 0.75em 0; }

    .top01 { height: 235px; margin-right: 0; }
	.top01 img { max-height: 235px; }
    .news { height: 191px; }

	.price_small { font-size: 18px;}

	/* corpotation */
	.googlemap iframe { height: 300px; }


}


@media all and (min-width: 980px){

	.cal01 { text-align: center; }
	
}

/* for PC */

@media all and (min-width: 1032px){
    
    #background { background: url(../img/common/bg.gif); zoom: 1; padding-bottom: 1em; }
    #wrap {
        max-width: 980px; margin: 0 auto; padding: 0 1em;
        border-left: solid 1px #666; border-right: solid 1px #666;
    }
    header {
        max-width: 980px; height: 77px; background: #fff;
        margin: 0 auto; padding: 0 1em;        
        border-left: solid 1px #666; border-right: solid 1px #666; 
    }
    header h1 { width: 330px; }
    .head01 { width: 472px; }
    .head02 { margin: 0.9em 0 0.8em; }
    .head03 { width: 132px; text-align: right; padding-right: 8px; }
    .updated { float: none; margin: 0; font-size: 12px; }
    nav { 
        clear: both; height: 42px; margin: 0;
        background: url(../img/common/menu_back03.gif) repeat-x;
    }
    .gnav {
        height: 42px; 
        max-width: 980px; margin: 0 auto; padding: 0 1em;
        border-left: solid 1px #666; border-right: solid 1px #666;
        background: url(../img/common/menu_back02.gif) repeat-x; display: block; zoom: 1;
    }
    nav ul li { width: 19.7%; }
    nav ul li.li01 { background: url(../img/common/menu01_back01.gif) left; }
    nav ul li.li05 { background: url(../img/common/menu05_back01.gif) right; }
    
    .top01 {
        width: 472px; height: 300px;
        float: left; padding-top: 0;
    }
    .top01 img { width: 100%; max-height: 300px; }
    .top02 { width: 240px; float: right; height: 305px; }
    .news { height: 256px; }
    
    .box_au, .box3 { width: 29.45%; }

    .calender { margin-top: -100px; font-size: 0.875em; height: 16.5em; }
    .X_calendar_table { width: 80%; }
	.cal01 { text-align: center; padding: 1em 0 0; }
    
    .banner { width: 100%; }
	.price_small { font-size: 20px; margin-top: -3.5em;}

    
    footer {
        clear: both; max-width: 1012px; margin: 0 auto; background: #fff;
        border-left: solid 1px #666; border-right: solid 1px #666; border-bottom: solid 1px #666;
    }

	/* corpotation */
	
	.googlemap iframe { width: 80%; height: 300px; }
        .gmap { padding-right: 100px; }
        .ggmap {
            position: relative;
            padding-bottom: 56.25%;
            padding-top: 30px;
            height: 0;
            overflow: hidden;
        }
 
        .ggmap iframe,
        .ggmap object,
        .ggmap embed {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
        }

	/* SNS widget */
	
	.facebook  { width: 354px; }
	.twitter { width: 354px; float: right;}

}


/*----- Toggle Nav -----*/

body { -webkit-text-size-adjust: none; }

/* Clearfix */
.clearfix:before,
.clearfix:after {
    content: "";
    display: table;
}
.clearfix:after { clear: both; }
.clearfix { *zoom: 1; }

@media only screen and (max-width : 599px) {
	
    .updated { width: 120px; }
	.gu01 { padding: 10px; }

    nav ul img { display: none; }
	nav { height: auto; position: relative; font-size: 16px; }
  	nav ul { display: none; height: auto; }
  	nav li a {
		display: block; color: #fff; text-decoration: none;
        text-shadow: 1px 1px 0px #000; line-height: 42px;
        background: url(../img/common/menu_back02.gif) repeat-x; zoom: 1;
	}
  	nav a {
	 	display: block; height: auto; line-height: 42px;
        color: #fff; text-decoration: none;
  	}
    nav a#pull {
		display: block; background: url(../img/common/menu_back01.gif) repeat-x; zoom: 1;
		width: 100%; position: relative;
	}
    nav a#pull span { padding-left: 10px; }
	nav a#pull:after {
		content:"";
		background: url(../img/common/nav-icon.png) no-repeat;
		width: 30px; height: 30px; display: inline-block;
		position: absolute;	right: 12px; top: 12px;
	}
    
}