@charset "UTF-8";

/* 基本フロア */
/* ===========================================================================*/
body {
    width: 100%;
    height: auto;
    background-color: #FFFFFF;
    background-image: -webkit-gradient(linear, 0 0, 100% 100%,color-stop(.25, #F9F9F9), color-stop(.25, transparent),color-stop(.5, transparent), color-stop(.5, #F9F9F9),color-stop(.75, #F9F9F9), color-stop(.75, transparent),to(transparent));
    -webkit-background-size: 30px 30px;
}
header {
    width: 100%;
    height: auto;
    background:linear-gradient(180deg,#901229 0%,#901229 50%,rgba(0,0,0,0.00) 50%,rgba(0,0,0,0.00) 100%);
 }
header img {
    width: 100%;
}
header.img-sp {
    display: none;
}
@media screen and (max-width : 480px ){
header.img-pc {
    display: none;
}
header.img-sp {
    display: block;
}
header img {
    width: 100%;
}
header .logo {
    width: 100%;
    padding: 10px;
    display: block;
}
}
h1.sub {
    width: 1000px;
    margin: 0 auto;
    color: #FFFFFF;
    font-size: 1.5rem;
    text-align: right;
    position: relative;
    top: 12px;
}
/*広告枠
---------------------------------------------------------------------------*/
.pr {
    margin: 0 auto;
    padding: 30px 0 10px;
    width: 1100px;
 }

@media screen and (max-width : 480px ){
.pr {
    margin: 0 auto;
    width: 100%;
}
.pr img {
    width: 100%;
}
}
/*検索枠
---------------------------------------------------------------------------*/
.search {
    background-color: #E6D7AD;
    width: 100%;
    text-align: center;
}

h2.searchTitle {
    font-size: 1.8rem;
    padding: 10px 0;	
}
.search dl {
    width: 1000px;
    padding: 10px 0;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}
.search dt {
    width: 150px;
    height: 40px;
    align-items: center;
    border-left: 4px solid #000000;
    padding: 10px;
    font-size: 1.6rem;
    text-align: left;
}
.search dd {
    width: 750px;
    padding: 10px;
    display: block;
    text-align: left;
}
.search dd label.bigCate {
    width: 23%;
    padding: 10px 10px 0 0;
    float: left;
}
.search dd .smallCate {
    width: 23%;
    margin: 0 0 0 10px;
    line-height: 2rem;
    float: left;
}
.search dd .smallCate label {
  display: block; /* ブロックを作るように */
  margin: 5px 0; /* 前後のスペース */
}
/*フォーム
---------------------------------------------------------------------------*/
.form_send {
    display: flex;
}
.sbox {
    width: 420px;
    height: 30px;
    padding: 0 10px;
    border: 1px solid #000000;
}

.sbtn {
    height: 30px;
    width: 50px;
    background: #FFF;
    color: #000000;
    border: 1px solid #000000;
    margin: 0 0 0 -1px;
    display: inline-block;
    cursor: pointer;
}
.sbtn .fa-search{
    font-size:20px;	
}
.sbtn:hover {
    color:#888;
}
.search .other {
    width: 120px;
    border: 1px solid #000000;
    text-align: center;
    border-radius: 5px;
    margin: 0 0 0 80px;
    display: inline-block;
	height: 30px;
	line-height: 30px;
}
.search .target {
    width: 160px;
    text-align: center;
    margin: 0 auto;
    background-color: #FF6633;
    border-radius: 5px;
    display: block;
    border: 0px solid #000000;
    color: #FFFFFF;
    height: 50px;
	line-height: 50px;
}
.search span.close {
    text-align: center;
    margin: 30px auto 0;
    display: block;
}
h2.portalTitle {
    font-size: 2.1rem;
    text-align: center;
    background-image: url(../../img/bar.png);
    background-repeat: no-repeat;
    width: 1000px;
    margin: 30px auto;
    background-position: center center;
}
h3.portalTitleSp {
    display: none;
}
@media screen and (max-width : 480px ){
h2.portalTitle {
    display: none;
}
h3.portalTitleSp {
    width: 100%;
    margin: 10px auto;
    display: block;
    font-size: 1.8rem;
    text-align: center;
}
}
/*マップ
---------------------------------------------------------------------------*/
.map {
    width: 1000px;
    height: 700px;
    border: 5px solid #8F1229;
    margin: 0 auto;
    display: block;
}
@media screen and (max-width : 480px ){
.map {
    width: 100%;
    height: 600px;
    border: 0;
    display: block;
}
}
.map_list {
    width: 350px;
    height: auto;
    padding: 20px;
    background-color: #8F1229;
    color: #FFFFFF;
    text-align: center;
    position: fixed;
    display: none;
}
.map_list button {
    font-size: 2.5rem;
    width: 30px;
    height: 30px;
    background-color: #939393;
    color: #FFFFFF;
    text-align: center;
    position: relative;
    top: -20px;
    left: -160px;
    border: 0;
}
.map_list h2 {
    font-size: 1.4rem;
    width: 100%;
    padding: 5px;
    border-bottom: 1px solid #FFFFFF;
}
.map_list h3 {
    font-size: 1.2rem;
    padding: 5px;
    margin: 0 0 10px;
    display: block;
}
.map_list h4 {
    font-size: 1.2rem;
    padding: 1px;
    background-color: #FFFFFF;
    color: #8F1229;
    margin: 10px 0 5px;
    font-weight: bold;
}
.map_list p {
    font-size: 1.4rem;
    padding: 2px;

}
/*アクセス
---------------------------------------------------------------------------*/
.access {
    background-color: #E6D7AD;
    margin: 20px auto;
    width: 1000px;
    display: flex;
    justify-content: space-between;
}
@media screen and (max-width : 480px ){
.access {
    background-color: #E6D7AD;
    width: 100%;
    display: flex;
	flex-wrap: wrap;
}
}
.access .box {
    width: 33%;
    padding: 20px;
    display: block;
}
@media screen and (max-width : 480px ){
.access .box {
    width: 100%;
    padding: 10px 20px;
    display: block;
}
}
.access .box h2 {
    color: #8F1229;
    font-size: 2.4rem;
    font-weight: bold;
}
.access .box p {
    font-size: 1.4rem;
    line-height: 2.6rem;
}
.access .box i {
    color: #8F1229;
    font-size: 1.8rem;
    font-weight: bold;
    font-style: normal;
    display: block;
    margin: 20px 0 5px;
}
.access .box p span {
    padding: 0px 5px;
    margin: 0 5px 0 0;
    color: #000000;
    font-size: 1.4rem;
    font-weight: bold;
    font-style: normal;
    border-radius: 3px;
    border: 2px solid #8F1229;
    background-color: #FFFFFF;
}
/*フッター
---------------------------------------------------------------------------*/
footer {
    width: 100%;
    padding: 20px;
    background-color: #901229;
}
footer .subManu {
    margin: 0 auto 30px;
    width: 700px;
    display: flex;
}
footer .subManu li {
    width: 100%;
    color: #FFFFFF;
    font-size: 1.4rem;
    text-align: center;
}
footer .subManu li+ li {
    border-left: 1px solid #FFFFFF;
}
@media screen and (max-width : 480px ){
footer .subManu {
    margin: 20px auto;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}
footer .subManu li {
    width: 49%;
    margin: 0 0 5px;
    color: #FFFFFF;
    font-size: 1.4rem;
    text-align: center;
}
footer .subManu li+ li {
    border-left: 1px solid rgba(255,255,255,0.2);
}
}
footer .logo {
    margin: 20px auto;
    padding: 0 0 0 100px;
    width: 400px;
    color: #FFFFFF;
    text-align: left;
    background-image: url(../../img/logo.png);
    background-repeat: no-repeat;
    background-size: contain;
}
@media screen and (max-width : 480px ){
footer .logo {
    padding: 0 0 0 85px;
    margin: 20px auto;
    width: 90%;
    font-size: 1.1rem;
    color: #FFFFFF;
    text-align: left;
    background-image: url(../../img/logo.png);
    background-repeat: no-repeat;
    background-size: 75px 75px;
}
footer .subManu li {
    border-left: 1px solid rgba(255,255,255,0.2);
}
}
footer .copy {
    margin: 10px auto;
    width: 1000px;
    color: #FFFFFF;
    text-align: center;
    font-size: 1.2rem;
}
@media screen and (max-width : 480px ){
footer .copy {
    width: 100%;
    color: #FFFFFF;
    text-align: center;
    font-size: 1rem;
}
}
/*ページトップ
---------------------------------------------------------------------------*/
.page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    font-size: 2rem;
    font-weight: bold;
	z-index: 1000;
}
.page-top a {
    filter: alpha(opacity=80);
    -moz-opacity: 0.8;
    opacity: 0.8;
    background: #FFF;
    text-decoration: none;
    color: #901229;
    width: 60px;
    padding: 15px 0;
    text-align: center;
    display: block;
    border-radius: 5px;
    -webkit-box-shadow: 3px 3px 5px #000000;
    box-shadow: 2px 2px 10px #333;
}
.page-top a:hover {
    text-decoration: none;
    background: #999;
}

* html .page-top{ display: none!important; }
