@charset "utf-8";
/* access css */

/*-------------------------------------------------
ページタイトル
-------------------------------------------------*/

#page_access .page_titlebox::before {
content: "ACCESS";
}
body#page_access::before {
content: "";
background-image: url("../img/access/body_bg.jpg");
background-position: center top;
background-size: cover;
background-repeat: no-repeat;
background-color: #000;
display: block;
position: fixed;
top: 0;
left: 0;
z-index: -1;
width: 100%;
height: 100vh;
opacity: .25;
}


/*-------------------------------------------------
コンテンツ
-------------------------------------------------*/

.intro_imgbox {
position: relative;
overflow: hidden;
margin-bottom: 60px;
}
.intro_img {
position: relative;
z-index: 3;
}
.intro_img img {
width: 100%;
}
.shrine_title {
font-size: 2.2rem;
font-weight: 600;
letter-spacing: 0.2em;
color: #B29458;
display: block;
text-align: center;
margin-bottom: 30px;
}
.shrine_txt {
line-height: 200%;
margin-bottom: 100px;
}

@media all and (max-width : 820px ){
.shrine_title {
font-size: 2.0rem;
margin-bottom: 20px;
}
.shrine_txt {
font-size: 1.4rem;
line-height: 180%;
}
}

@media all and (max-width : 767px ){
.intro_imgbox {
margin-bottom: 20px;
}
.shrine_title {
font-size: 1.5rem;
letter-spacing: 0.1em;
margin-bottom: 15px;
}
.shrine_txt {
font-size: 1.3rem;
margin-bottom: 50px;
}
}

.title_box {
display: flex;
flex-direction: column;
align-items: center;
position: relative;
padding-bottom: 50px;
margin-bottom: 60px;
color: #fff;
}
.title_box::after {
content: "";
display: block;
width: 15px;
height: 1px;
background-color:#C40A19;
position: absolute;
bottom: 0;
left: 50%;
transform: translateX(-50%);
-webkit-transform: translateX(-50%);
-ms-transform: translateX(-50%);
}
.title_box dt {
font-size: 1.2rem;
font-weight: 500;
letter-spacing: 0.4em;
line-height: 100%;
margin-bottom: 20px;
}
.title_box dd {
font-size: 2.2rem;
font-weight: 400;
letter-spacing: 0.4em;
line-height: 100%;
}
.gmap {
height: 0;
overflow: hidden;
padding-top: 45.63%;
position: relative;
margin-bottom: 40px;
}
.gmap iframe {
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;
}
.shrine_info {
display: flex;
flex-direction: column;
align-items: center;
margin-bottom: 80px;
color: #fff;
}
.shrine_info dt {
font-size: 1.8rem;
font-weight: 600;
letter-spacing: 0.2em;
margin-bottom: 20px;
}
.shrine_info dd {
font-size: 1.5rem;
letter-spacing: 0.2em;
}
.list_title {
font-size: 2.0rem;
font-weight: 500;
color: #B29458;
letter-spacing: 0.3em;
line-height: 100%;
margin-bottom: 20px;
}
.access_method {
display: flex;
align-items: center;
margin-bottom: 20px;
border: solid 1px #8E7742;
}
.access_method dt {
padding: 20px 20px 20px 20px;
background: #8E7742;
width: 32.65%;
color: #fff;
font-size: 1.6rem;
font-weight: 600;
letter-spacing: 0.2em;
}

@media all and (max-width : 1024px ){
.access_method dt {
font-size: 1.5rem;
letter-spacing: 0.15em;
}
}

.access_method dd {
padding: 15px 10px 15px 20px;
width: 67.35%;
font-size: 1.5rem;
letter-spacing: 0.2em;
}

@media all and (max-width : 820px ){
.list_title {
font-size: 1.8rem;
letter-spacing: 0.2em;
}
.access_method dt {
font-size: 1.4rem;
letter-spacing: 0.1em;
}
.access_method dd {
font-size: 1.3rem;
padding: 10px 10px 5px 10px;
}
}

.access_method dd ul li {
padding-left: 20px;
}
.access_method dd ul li a {
text-decoration: underline;
color: #8E7742;
}
.access_method dd ul li a:hover {
text-decoration: none;
}

@media all and (max-width : 767px ){
.title_box {
padding-bottom: 30px;
margin-bottom: 30px;
}
.title_box::after {
width: 10px;
}
.title_box dt {
font-size: 1.0rem;
letter-spacing: 0.2em;
margin-bottom: 10px;
}
.title_box dd {
font-size: 1.6rem;
letter-spacing: 0.3em;
}
.gmap {
margin-bottom: 20px;
}
.shrine_info {
margin-bottom: 30px;
}
.shrine_info dt {
font-size: 1.4rem;
letter-spacing: 0.2em;
margin-bottom: 10px;
}
.shrine_info dd {
font-size: 1.2rem;
letter-spacing: 0.1em;
}
.list_title {
font-size: 1.5rem;
letter-spacing: 0.1em;
margin-bottom: 15px;
}
.access_method {
display: flex;
flex-direction: column;
align-items: flex-start;
margin-bottom: 20px;
}
.access_method dt {
padding: 10px 20px 10px 20px;
width: 100%;
font-size: 1.4rem;
letter-spacing: 0.1em;
}
.access_method dd {
padding: 15px 10px 15px 0px;
width: 100%;
font-size: 1.3rem;
letter-spacing: 0.1em;
}
}