@charset "utf-8";

/*** default & reset ***/
body{
	font-family: Arial, Helvetica, sans-serif;
    background-color: #fff;
}
body, h1, h2, h3, h4, h5, h6, p, a,
ul, ol, li, dl, dt, dd,
table, thead, tbody, tfoot, tr, th, td, div{
    margin: 0;
    padding: 0;
    border-collapse: collapse;
    border-spacing: 0;
    vertical-align: middle;
}
body, p, li, dd, tr, td{
	text-align: justify;
	text-justify: inter-ideograph;
	-ms-text-justify: inter-ideograph;
	font-size: 13px;
	line-height: 1.5em;
	color: #000;
}
img{
    border: 0;
    margin: 0;
    padding: 0;
}

/*  リンク色  */

a:link{
	color: #000;
	text-decoration: none;
}
a:visited{
	color: #000;
	text-decoration: none;
}
a:hover{
	color: #898989;
}
a:active{
	color: #000;
	text-decoration: none;
}

/*  共通  */

.header .g_nav ul li a{
    font-family: minion-pro,serif;
    font-weight: 430;
    font-style: normal;
    transition: all 0.2s;
}
/*  共通ここまで  */

@media screen and (min-width: 1025px){ 
    #wrapper{
        width: 980px;
        margin: 0 auto;
        padding: 0 20px;
        background-color: #fff;
    }
    .header{
        width: 890px;
        margin: 0 auto;
        padding: 65px 0 0 0;
        overflow: hidden;
    }
    .main{
        width: 890px;
        margin: 80px auto 110px auto;
        padding: 0;
        overflow: hidden;
    }
    .main .about{
        width: 890px;
        margin: 0 0 100px 0;
        padding: 70px 0 0 0;
        overflow: hidden;
    }
    .main .access{
        width: 890px;
        display: block;
        margin: 0;
        padding: 70px 0 470px 0;
        overflow: hidden;
    }
    .footer{
        width: 890px;
        margin: 0 auto;
        padding: 0;
        overflow: hidden;
    }
    .header h1{
        margin: 0;
        padding: 0;
        width: 420px;
        height: 21px;
        overflow: hidden;
        background: url(../img/logo.png) 0 0;
        background-size: 420px 21px;
        background-repeat: no-repeat;
        text-indent: 100%;
        white-space: nowrap;
        float: left;
    }

    .main .about .title h4{
        margin: 0 52px 0 0;
        padding: 0;
        width: 263px;
        height: 179px;
        overflow: hidden;
        background: url(../img/title_about.png) 0 0;
        background-size: 263px 179px;
        background-repeat: no-repeat;
        text-indent: 100%;
        white-space: nowrap;
        float: left;
    }
    .main .access .title h4{
        margin: 0 52px 0 0;
        padding: 0;
        width: 263px;
        height: 179px;
        overflow: hidden;
        background: url(../img/title_map.png) 0 0;
        background-size: 263px 179px;
        background-repeat: no-repeat;
        text-indent: 100%;
        white-space: nowrap;
        float: left;
    }
    .footer h6{
        margin: 0 0 25px 0;
        padding: 0;
        width: 451px;
        height: 47px;
        overflow: hidden;
        background: url(../img/footer.png) 0 0;
        background-size: 451px 47px;
        background-repeat: no-repeat;
        text-indent: 100%;
        white-space: nowrap;
        float: left;
    }
    .header .g_nav ul{
        margin: 0 0 10px 0;
        padding: 0;
        overflow: hidden;
        list-style: none;
        float: right;
    }
    .header .g_nav ul li{
        height: 20px;
        margin: 0;
        padding: 0;
        float: left;
    }
    .header .g_nav ul li a{
        display: block;
        margin: 0;
        padding: 0;
        height: 20px;
        font-size: 19px;
        margin-right: 20px;
    }

    .about .table{
        width: 575px;
        letter-spacing: 0.1em;
        float: right;
    }
    .about .table{
        display: block;
        overflow: hidden;
    }
    .about dl.table dt,
    .about dl.table dd{
        line-height: 3em;
    }
    .about dl.table dt{
        float: left;
        clear: left;
    }
    .about .table dd{
        display: block;
        width: 470px;
        margin-left: 105px;
        padding-bottom:55px;
    }
    .about .table td.end{
        padding: 0;
        display: block;
    }
    a{
        border-bottom: 1px dotted #898989;
    }
    ul a{
        border-bottom: none;
    }
    .access .map_img{
        width: 575px;
        float: left;
        margin: 0;
        padding: 0;
    }
    .footer p.copy{
        font-size: 10px;
        float: right;
    }

    #page-top {
        position: fixed;
        bottom: 20px;
        right: 20px;
        font-size: 77%;
    }
    #page-top a {
        background: #666;
        text-decoration: none;
        color: #fff;
        width: 100px;
        padding: 10px 0;
        text-align: center;
        display: block;
        border-radius: 5px;
    }
    #page-top a:hover {
        text-decoration: none;
        background: #999;
    }

    .mobile{
        display: none;
    }
}/*pc向け end*/


@media screen and (min-width: 533px) and (max-width: 1024px) {
    #wrapper{
        width: 100%;
        margin: 0 auto;
        padding: 0;
        background-color: #fff;
    }
    .header{
        width: 90%;
        margin: 0 auto;
        padding: 65px 5% 0 5%;
        overflow: hidden;
    }
    .main{
        width: 90%;
        margin: 80px auto 110px auto;
        padding: 0;
        overflow: hidden;
    }
    .main .about{
        width: 90%;
        margin: 0 0 100px 0;
        padding: 70px 0 0 0;
        overflow: hidden;
    }
    .main .access{
        width: 90%;
        display: block;
        margin: 0;
        padding: 70px 0 470px 0;
        overflow: hidden;
    }
    .footer{
        width: 90%;
        margin: 0 auto;
        padding: 0;
        overflow: hidden;
    }

    .header h1{
        margin: 0;
        padding: 0;
        width: 420px;
        height: 21px;
        overflow: hidden;
        background: url(../img/logo.png) 0 0;
        background-size: 100%;
        background-repeat: no-repeat;
        text-indent: 100%;
        white-space: nowrap;
        float: left;
    }

    .main .about .title h4{
        margin: 0 10% 0 0;
        padding: 0;
        width: 30%;
        height: 179px;
        overflow: hidden;
        background: url(../img/title_about.png) 0 0;
        background-size: 100%;
        background-repeat: no-repeat;
        text-indent: 100%;
        white-space: nowrap;
        float: left;
    }
    .main .access .title h4{
        margin: 0 10% 0 0;
        padding: 0;
        width: 30%;
        height: 179px;
        overflow: hidden;
        background: url(../img/title_map.png) 0 0;
        background-size: 100%;
        background-repeat: no-repeat;
        text-indent: 100%;
        white-space: nowrap;
        float: left;
    }

    .footer h6{
        margin: 0 0 25px 0;
        padding: 0;
        width: 451px;
        height: 47px;
        overflow: hidden;
        background: url(../img/footer.png) 0 0;
        background-size: 451px 47px;
        background-repeat: no-repeat;
        text-indent: 100%;
        white-space: nowrap;
        float: left;
    }
    .header .g_nav ul{
        margin: 5px 0 10px 0;
        padding: 0;
        overflow: hidden;
        list-style: none;
        float: right;
    }
    .header .g_nav ul li{
        height: 20px;
        margin: 0;
        padding: 0;
        float: left;
    }
    .header .g_nav ul li a{
        display: block;
        margin: 0;
        padding: 0;
        height: 20px;
        overflow: hidden;
        font-size: 16px;
        margin-right: 10px;
    }
    .about .table{
        width: 60%;
        letter-spacing: 0.1em;
        float: right;
    }
    .about .table{
        display: block;
        overflow: hidden;
    }
    .about dl.table dt,
    .about dl.table dd{
        line-height: 3em;
    }
    .about dl.table dt{
        float: left;
        clear: left;
    }
    .about .table dd{
        margin-left: 100px;
        padding-bottom:55px;
    }
    .about .table td.end{
        padding: 0;
        display: block;
    }
    a{
        border-bottom: 1px dotted #898989;
    }
    ul a{
        border-bottom: none;
    }

    .access .map_img{
        width: 60%;
        float: left;
        margin: 0;
        padding: 0;
    }

    .footer p.copy{
        font-size: 10px;
        float: right;
    }

    #page-top {
        position: fixed;
        bottom: 20px;
        right: 20px;
        font-size: 77%;
    }
    #page-top a {
        background: #666;
        text-decoration: none;
        color: #fff;
        width: 100px;
        padding: 10px 0;
        text-align: center;
        display: block;
        border-radius: 5px;
    }
    #page-top a:hover {
        text-decoration: none;
        background: #999;
    }
    
        .mobile{
        display: none;
    }
}/*タブレット・大型スマホ向け end*/

@media screen and (max-width: 532px){ 
    #wrapper{
        width: 100%;
        margin: 0;
        padding: 0;
        background-color: #fff;
    }
    .header{
        width: 100%;
        margin: 0;
        padding: 65px 0 0 0;
        overflow: hidden;
    }
    .main{
        width: 100%;
        margin: 100px 0 110px 0;
        padding: 0;
        overflow: hidden;
    }
    .main .about{
        width: 100%;
        margin: 0 0 100px 0;
        padding: 0;
        overflow: hidden;
    }
    .main .access{
        width: 100%;
        display: block;
        margin: 0;
        padding: 0 0 200px 0;
        overflow: hidden;
    }
    .footer{
        width: 100%;
        margin: 0 auto;
        padding: 0;
        overflow: hidden;
    }
    .header h1{
        margin: 0 auto;
        padding: 0;
        width: 320px;
        height: 46px;
        overflow: hidden;
        background: url(../img/logo_m.png) 0 0;
        background-size: 100%;
        background-repeat: no-repeat;
        text-indent: 100%;
        white-space: nowrap;
    }
    .main .about .title h4{
        margin: 0 5% 30px 5%;
        padding: 0;
        width: 130px;
        height: 89px;
        overflow: hidden;
        background: url(../img/title_about.png) 0 0;
        background-size: 130px 89px;
        background-repeat: no-repeat;
        text-indent: 100%;
        white-space: nowrap;
        float: right;
    }
    .main .access .title h4{
        margin: 0 5% 30px 5%;
        padding: 0;
        width: 130px;
        height: 89px;
        overflow: hidden;
        background: url(../img/title_map.png) 0 0;
        background-size: 130px 89px;
        background-repeat: no-repeat;
        text-indent: 100%;
        white-space: nowrap;
        float: right;
    }
    .footer h6{
        margin: 0 0 20px 0;
        padding: 0;
        width: 320px;
        height: 34px;
        overflow: hidden;
        background: url(../img/footer_m.png) 0 0;
        background-size: 320px 34px;
        background-repeat: no-repeat;
        text-indent: 100%;
        white-space: nowrap;
    }
    .header .g_nav ul{
        margin: 55px 5% 50px 5%;
        padding: 0;
        overflow: hidden;
        list-style: none;
    }
    .header .g_nav ul li{
        height: 20px;
        margin: 0;
        padding: 0;
        float: left;
        margin-right: 20px;
        font-weight: bold;
    }
    .header .g_nav ul li a{
        display: block;
        margin: 0;
        padding: 0;
        height: 20px;
        overflow: hidden;
        font-size: 1.2em;
    }
    .line1{
        width: 288px;
        margin: 0 auto;
    }
    .line2{
        width: 287px;
        margin: 35px auto 0 auto;
    }

    .about .table{
        width: 90%;
        margin: 0 auto;
        clear: both;
    }
    .about .table{
        display: block;
        overflow: hidden;
    }
    .about dl.table dt{
        margin: 0 0 2px 0;
    }
    .about .table dd{
        display: block;
        padding-bottom: 35px;
        line-height: 1.6em;
    }
    a{
        border-bottom: 1px dotted #898989;
    }
    ul a{
        border-bottom: none;
    }

    .access .map_img{
        width: 100%;
        margin: 0;
        padding: 0;
    }
    .access p{
        width: 90%;
        margin: 0 auto;
    }

    .footer p.copy{
        font-size: 9px;
        text-align: center;
    }

    #page-top {
        position: fixed;
        bottom: 20px;
        right: 20px;
        font-size: 77%;
    }
    #page-top a {
        background: #666;
        text-decoration: none;
        color: #fff;
        width: 100px;
        padding: 10px 0;
        text-align: center;
        display: block;
        border-radius: 5px;
    }
    #page-top a:hover {
        text-decoration: none;
        background: #999;
    }
    
        .pc{
        display: none;
    }
}/*スマホ向け end*/
