@charset "utf-8";
@media screen and (max-width: 767px) {
	

/*----------*/
body#top .top_header img,
body#top main img{
	width: 100%;
}

/*----------*/
body#top .top_header a.link_normal,
body#top main a.link_normal {
	color: #97002b;
	text-decoration: none;
	position: relative;
	display: inline-block;
}

body#top a.link_normal::after {
	position: absolute;
	bottom: 1px;
	left: 50%;
	transform: translateX(-50%);
	content: '';
	width: 95%;
	height: 1px;
	background: #97002b;
	opacity: .8;
	visibility: visible;
	transition: .27s;
	z-index: 4;
}

/*
body#top a.link_normal:hover::after {
	opacity: 0;
	width: 0%;
}
*/

/*----------*/
body#top .top_header a.link_tate
body#top main a.link_tate {
	position: relative;
	transition: .2s;
	display: inline-block;
	padding-top: 0 !important;
}

/*
body#top main a.link_tate:hover {
	position: relative;
	padding-top: 22px !important;
}
*/

body#top .top_header a.link_tate:after,
body#top main a.link_tate:after {
	opacity: 0;
	position: absolute;
	content: "";
	background: url(../common/images/select-arrow.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	width: 10px;
	height: 10px;
	transition: .35s;
	top: -22px;
	left: 50%;
	transform: translateX(-50%);
}

/*
body#top main a.link_tate:hover:after {
	opacity: 1;
	top: 0;
}
*/

/*----------*/
body#top .top_header .link_more.tate > a,
body#top main .link_more.tate > a {
	position: relative;
	transition: .1s;
	display: inline-block;
}

/*
body#top main .link_more.tate > a:hover {
	position: relative;
	padding-top: 22px !important;
}
*/

body#top .top_header .link_more.tate > a:before,
body#top main .link_more.tate > a:before {
	content: "";
	display: inline-block;
	height: 37px;
	width: 1px;
	background-color: #000000;
	margin-bottom: 8px;
	transition: .3s;
}
/*
body#top .top_header .link_more.tate > a:hover:before,
body#top main .link_more.tate > a:hover:before {
	height: 0px;
}
*/

body#top .top_header .link_more.tate > a:after,
body#top main .link_more.tate > a:after {
	opacity: 0;
	position: absolute;
	content: "";
	background: url(../common/images/select-arrow.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	width: 10px;
	height: 10px;
	transition: .3s;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}
/*
body#top .top_header .link_more.tate > a:hover:after,
body#top main .link_more.tate > a:hover:after {
	opacity: 1;
	top: 0;
}
*/

/*----------*/
/* .top_header */
body#top .top_header {
	/*
	position: relative;
	padding-top: 50%;
	height: 0;
	*/
	position: relative;
	padding-top:40px;
	padding-bottom:calc(47vw + 50px);
	
}

/* .hd_title */
body#top .top_header .th_title {
	
	width: 100%;
	/*max-width: 1400px;*/
	/*
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: 2;
	height: 100%;
	*/
	
}

/* .th_title h2 */

body#top .top_header .th_title h2 {
	width: 110px;
	margin:0 auto;
	/*
	position: absolute;
	left: 50%;
	top: 12%;
	margin-left: -36%;
	*/
}

body#top .top_header .th_title h2 img {
}

/* .menu */
body#top .top_header .th_title .th_menu {
	display:none;
}

body#top .top_header .th_title .th_menu ul {
}

body#top .top_header .th_title .th_menu ul li {
}

body#top .top_header .th_title .th_menu ul li a {
}

/* .language */
body#top .top_header .th_title .language {
	display:none;
}

/* .hero */
body#top .top_header .hero {
	width: 100%;
	padding:0 10px;
	position:absolute;
	bottom:-102vw;
	
}

body#top .top_header .hero img {
}

body#top .top_header .hero .photo1 {
}

body#top .top_header .hero .photo2 {
	margin-top:10px;
}

/*----------*/
/* main */

body#top main section .contenr {
/*
max-width: 1140px;
padding: 100px 0;
*/


}

/*----------*/
/* .about */

body#top main section.about {
	/*padding-top: 12.5%;*/
}

body#top main section.about .contenr {
	position: relative;
	width: calc(100% - 20px);
	padding-bottom:54%;
	padding-top:calc(102vw + 50px);
}

body#top main section.about .about_intro {
	width: 100%;
	background-image: url("../images/goshitinokiri_white.svg");
	background-repeat: no-repeat;
	background-position: center 25px;
	background-size: 111px;
}

body#top main section.about .about_intro .inner {
	display:block;
	margin: 0;
	text-align: center;
}

body#top main section.about .about_intro h3,
body#top main section.about .about_intro .text {
		-webkit-writing-mode: vertical-rl;
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
		line-height: 1.6em;
		-webkit-font-feature-settings: 'pkna';
		font-feature-settings: 'pkna';
		text-combine-upright: digits 2;
}

body#top main section.about .about_intro h3 {
	font-size: 21px;
	line-height: 1.4;
	padding: 0;
	display: block;
	width:1.4em;
	margin:0 auto;
 height: 9em;
}

/*
body#top main section.about .about_intro h3::before {
	content: "";
	display: inline-block;
	height: 37px;
	width: 1px;
	background-color: #000000;
	margin-bottom: 8px;
}
*/

body#top main section.about .about_intro .text {
	display: inline-block;
	font-size: 15px;
	line-height: 2;
	text-align:left;
	margin-top:35px;
 height: 22em;
}

body#top main section.about .about_intro .text p {
	margin-right: 0.7em;
}

body#top main section.about .about_intro .text p:first-of-type{
	margin-right: 0;
}

body#top main section.about .about_intro .text p.link_more {
	font-size: 15px;
	line-height: 1.4;
	margin-right: 1em;
	margin-top: 25px;
}

body#top main section.about .about_gallery {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	justify-content: space-between;
	position: absolute;
	/*bottom: -370px;*/
	bottom:0;
	transform:translateY(50%);
	left: 0;
	z-index: 10;
}

body#top main section.about .about_gallery p {
	display: block;
	padding: 0;
	margin-top: 3px;
	width: calc((100% - 3px) / 2);
}

body#top main section.about .about_gallery p img {
}

/*--------------*/
/* .heritage */

body#top main section.heritage {
	position: relative;
}

body#top main section.heritage .contenr {
	padding-top: 60%;
}

body#top main section.heritage .heritage_intro {
	text-align:center;
	width: 100%;
	position: relative;
	z-index: 1;
}

body#top main section.heritage .heritage_intro .inner {
	display: inline-block;
	text-align: left;
	padding-top:115px;
}


body#top main section.heritage .heritage_intro .jh_logo {
	width: 45px;
	/*
	margin-left: 50px;
	margin-top: -45px;
	*/
	position:absolute;
	top:0;
	left:50%;
	transform:translateX(-50%);
}

body#top main section.heritage .heritage_intro .jh_logo img {
}

body#top main section.heritage .heritage_intro h3 {
	font-size: 21px;
	line-height: 1.4;
	/*margin-top: -45px;*/
	margin-left: 1em;
	padding: 0;
}

/*
body#top main section.heritage .heritage_intro h3::before {
	content: "";
	display: inline-block;
	height: 37px;
	width: 1px;
	background-color: #000000;
	margin-bottom: 8px;
}
*/

body#top main section.heritage .heritage_intro .text {
	font-size: 15px;
	line-height: 2;
}

body#top main section.heritage .heritage_intro .text p {
	/*margin-right: 1em;*/
}

body#top main section.heritage .heritage_intro .link_more {
	font-size: 15px;
	line-height: 1.4;
	margin-right: 1em;
	margin-top: 40px;
}

body#top main section.heritage .heritage_photo {
	/*
	width: 100%;
	position: absolute;
	bottom: 130px;
	left: 0;
	z-index: 0;
	overflow: hidden;
	*/
	/*width: calc(100% - 108px);*/
	padding:0 7.4%;
	padding-bottom:75px;
	margin: 0;
}

body#top main section.heritage .heritage_photo .inner {
	/*
width: 1400px;
height: 745px;
*/
	position: relative;
	/*
	left: 50%;
	transform: translateX(-50%);
	*/
}

body#top main section.heritage .heritage_photo figure {
	/*width: 410px;*/
	/*
	position: absolute;
	bottom: 0;
	*/
	position:relative;
	margin-top:4px;
}

body#top main section.heritage .heritage_photo figure figcaption {
    font-family: "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
	display: block;
	font-size: 12px;
	line-height: 1.4;
	color: #FFFFFF;
	padding: 0.5em 1em 0.5em 1.2em;
	background-color: #1b1b1b;
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 1;
}

body#top main section.heritage .heritage_photo figure img {
}

body#top main section.heritage .heritage_photo figure.photo1 {
/*width: 500px;*/
}

body#top main section.heritage .heritage_photo figure.photo2 {
/*right: 420px;*/
}

body#top main section.heritage .heritage_photo figure.photo3 {
/*right: 0;*/
}

/*--------------*/
/* .news */

body#top main section.news {
}

body#top main section.news .contenr {
}

body#top main section.news .news_wrap {
	position: relative;
	/*padding-left: 240px;*/
}

body#top main section.news .news_ttl {
	/*
	position: absolute;
	left: 110px;
	top: 0;
	*/
	text-align:center;
}

body#top main section.news .news_ttl h3 {
	font-size: 21px;
	line-height: 1.4;
	display: inline-block;
	margin: 0;
	padding: 0;
	
 -webkit-writing-mode: vertical-rl;
 -ms-writing-mode: tb-rl;
 writing-mode: vertical-rl;
 line-height: 1.6em;
 -webkit-font-feature-settings: 'pkna';
 font-feature-settings: 'pkna';
 text-combine-upright: digits 2;
}

body#top main section.news .news_ttl .link_more {
	font-size: 15px;
	line-height: 1.4;
	margin-top: 10px;
	display: block;
}

body#top main section.news .news_ttl .link_more a::before{
	content:none;
}

body#top main section.news .news_list {
	margin-top:30px;
}

body#top main section.news .news_list dl {
	margin-top: 25px;
	/*
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	*/
}

body#top main section.news .news_list dl:first-of-type {
	margin-top: 0;
}

body#top main section.news .news_list dl dt, body#top main section.news .news_list dl dd {
}

body#top main section.news .news_list dl dt {
	font-size: 12px;
	line-height: 1.4;
	padding-right: 1em;
	display: flex;
	align-items: flex-start;
	flex-basis: auto;
}

body#top main section.news .news_list dl span.icon {
	font-size: 12px;
	line-height: 1.4;
	display: block;
	padding: 0.25em 0.5em;
	text-align: center;
	margin-top: -0.2em;
	min-width: 6em;
	max-width: 10em;
	margin-left: 1em;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

body#top main section.news .news_list dl span.icon.col_white {
	color: #000000;
	background-color: #FFFFFF;
}

body#top main section.news .news_list dl span.icon.col_red {
	color: #FFFFFF;
	background-color: #97002b;
}

body#top main section.news .news_list dl dd.txt {
	font-size: 14px;
	line-height: 1.4;
	margin-top:8px;
	/*
	flex-basis: auto;
	flex-grow: 0;
	flex-shrink: 1;
	*/
	overflow: hidden;
	white-space: nowrap;
	/*text-overflow: "..";*/
	text-overflow: ellipsis;
	/*text-overflow: "．．";*/
}

body#top main section.news .news_list a {
	color: #000000;
	display:inline;
}

body#top main section.news .news_list a:hover {
	color: #97002b;
}

body#top main section.news .news_list a::after {
	content: none;
}

/*--------------*/
/* .sns */

body#top main section.sns {
}

body#top main section.sns .contenr {
}

body#top main section.sns .sns_wrap {
	/*
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	*/
}

body#top main section.sns .left_column {
	/*width: 550px;*/
	text-align: center;
	font-size: 14px;
	line-height: 1.875;
}

body#top main section.sns h3 {
	font-size: 21px;
	line-height: 1.4;
}

body#top main section.sns .sns_icon {
	text-align: center;
	margin-top: 35px;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

body#top main section.sns .sns_icon p {
	width: 60px;
	margin: 0 12px;
}

body#top main section.sns .sns_icon img {
}

/* .sns_photo */

body#top main section.sns .sns_photo {
	margin-top: 50px;
}

body#top main section.sns .sns_photo ul {
	display: flex;
	flex-wrap: wrap;
}

body#top main section.sns .sns_photo ul li {
	width: calc((100% - 6px) / 3);
	margin-left: 3px;
	margin-top: 3px;
}

body#top main section.sns .sns_photo ul li:nth-of-type(3n+1) {
	margin-left: 0;
}

body#top main section.sns .sns_photo ul li:nth-of-type(-n+3) {
	margin-top: 0;
}

body#top main section.sns .sns_photo ul li a:hover {
/*opacity:1;*/
}

body#top main section.sns .sns_photo ul li a:hover img {
	opacity: 1;
}

body#top main section.sns .sns_photo ul li a::after {
	content: none;
}

body#top main section.sns .sns_photo ul li figure {
	position: relative;
}

body#top main section.sns .sns_photo ul li figure img {
}

body#top main section.sns .sns_photo ul li figure figcaption {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	background-color: rgba(255,255,255,0.8);
	font-size:12px;
	line-height:1.4;
	color: #000000;
	opacity: 0;
	transition: all 0.27s cubic-bezier(.25, .1, .25, 1);
	position: absolute;
	top: 0;
	left: 0;
}

body#top main section.sns .sns_photo ul li figure:hover figcaption {
	opacity: 1;
}

body#top main section.sns .fb_block {
	display: block;
	overflow: hidden;
	background-color: #FFFFFF;
 margin: 30px auto 0;
 
 /*FB埋め込みの幅(最低:180最大:500)*/
	width: 100%;
	max-width: 500px;
 height: 500px;
}

/*--------------*/
/* .etc */

body#top main section.etc {
	position: relative;
}

body#top main section.etc .contenr{
	padding-bottom:175px;
	background-image:url(/images/item_bg_sp.png);
	background-repeat:no-repeat;
	background-position:center bottom;
	background-size:50% auto;
}
/*
body#top main section.etc .contenr::before{
    content: "";
    display: inline-block;
    position: absolute;
    bottom: 0;
    right: 0;
    width: 50%;
    max-width: 220px;
    height: auto;
	padding-bottom:175px;
	background-image:url(/images/item_bg.png);
	background-repeat:no-repeat;
	background-position:center bottom;
	background-size:100% auto;
}
*/

/* .page_list */
body#top main section.etc .page_list ul li {
	/*display: flex;*/
	margin-top: 50px;
}

body#top main section.etc .page_list ul li:first-of-type {
	margin-top: 0;
}

body#top main section.etc .page_list ul li .thumb {
	display: block;
	/*width: 390px;*/
}

body#top main section.etc .page_list ul li .thumb img {
}

body#top main section.etc .page_list ul li .thumb figure {
	position: relative;
}

body#top main section.etc .page_list ul li .thumb figure figcaption {
    font-family: "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
	display: block;
	font-size: 11px;
	line-height: 1.4;
	color: #FFFFFF;
	padding: 0.5em 1em 0.5em 1.2em;
	background-color: #1b1b1b;
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 1;
}

body#top main section.etc .page_list ul li .detail {
	margin-top: 24px;
	/*margin-left: 60px;*/
	font-size: 13px;
	line-height: 2;
}

body#top main section.etc .page_list ul li .detail h4 {
	margin-bottom: 15px;
	font-size: 17px;
	line-height: 1.4;
}

body#top main section.etc .page_list ul li .detail .more {
	display: inline-block;
	font-size: 15px;
	line-height: 1.6;
	margin-left: 1em;
}

body#top main section.etc .page_list ul li .detail .more > a {
	transform: translateY(-3px);
}

/*--------------*/
/* .access */

body#top main section.photo_wfull {
}

body#top main section.photo_wfull .photo_gallery {
	width: 100%;
	overflow: hidden;
}

body#top main section.photo_wfull .photo_gallery .inner {
	display: flex;
	flex-wrap:wrap;
	width: 100%;
}

body#top main section.photo_wfull .photo_gallery figure {
	width: 50%;
	position: relative;
}

body#top main section.photo_wfull .photo_gallery figure img {
}

body#top main section.photo_wfull .photo_gallery figure figcaption {
    font-family: "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
	display: block;
	font-size: 11px;
	line-height: 1.4;
	color: #FFFFFF;
	padding: 0.5em 1em 0.5em 1.2em;
	background-color: #1b1b1b;
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 1;
}

/*--------------*/
/* .access */

body#top main section.access {
	position: relative;
}

body#top main section.access .contenr {
	width: calc(100% - 20px);
	padding-top:40px;
}

/* .address */
body#top main section.access .address {
	/*padding-left: 35px;*/
	text-align:center;
}

body#top main section.access .address h3 {
	font-size: 15px;
	line-height: 1.4;
	padding: 0;
	display: block;
	position: relative;
	
}

body#top main section.access .address h3::before {
	content: "";
	display: block;
	background-image: url("../images/icon_map.png");
	background-size: contain;
	background-repeat: no-repeat;
	width: 20px;
	height: 29px;
	margin:0 auto;
	margin-bottom:25px;
	/*
	position: absolute;
	left: -35px;
	top: -4px;
	*/
}

body#top main section.access .address .map_gl {
	font-size: 14px;
	line-height: 1.4;
	display: inline-block;
}

body#top main section.access .address .contact {
	font-size: 13px;
	line-height: 1.4;
	margin-top: 10px;
}

body#top main section.access .address .contact p {
	display: block;
	margin-top:0.2em;
}

/*
body#top main section.access .address .contact p::before {
	content: "/";
	display: inline-block;
	margin-right: 0.5em;
}

body#top main section.access .address .contact p.tel::before {
	content: none;
}
*/

/* .map */
body#top main section.access .map {
	margin-top: 50px;
	height: 60vw;
	overflow: hidden;
	filter: grayscale(20%);
	-webkit-filter: grayscale(20%);
}

body#top main section.access .map iframe {
	width: 100%;
	height: 620px;
	margin-top: -155px;
}

/* .traffic */
body#top main section.access .traffic {
	/*
	display: flex;
	justify-content: space-between;
	*/
	border-top: solid 1px #e1e1e1;
	border-bottom: solid 1px #e1e1e1;
	margin-top: 30px;
	padding: 30px 0;
	text-align:center;
}

body#top main section.access .traffic .case {
	margin-top: 25px;
	font-size: 13px;
	line-height: 1.4;
}

body#top main section.access .traffic .case:first-of-type {
	margin-top: 0;
}

body#top main section.access .traffic .case h4 {
	font-size: 15px;
	line-height: 1.4;
}

body#top main section.access .traffic .case .route {
	margin-top: 10px;
}

body#top main section.access .traffic .case .route p {
	margin-top: 0.2em;
}

}
