@charset "UTF-8";
/* ==========================================================================
Googlefont 400 500 600 700 900
font-family: "Zen Old Mincho", serif;

.zen-old-mincho-regular {
  font-family: "Zen Old Mincho", serif;
  font-weight: 400;
  font-weight: 600;
		font-weight: 500;
		font-weight: 700;
  font-weight: 900;
  font-style: normal;
}

カラー
コーポレートカラー：#1B1464
文字：#4E443E
========================================================================== */



/*===============================================
 レスポンシブ スマホサイズ　横幅 414px以下
===============================================*/
@media screen and (max-width: 414px) {}
/*===============================================
 レスポンシブ	タブレットサイズ　横幅 570px以下
===============================================*/
@media screen and (max-width: 570px) {}
/*===============================================
 レスポンシブ タブレットサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {}
/*===============================================
 レスポンシブ タブレットサイズ 横幅 992px以下
===============================================*/
@media screen and (min-width: 769px) and (max-width: 992px) {}
/*===============================================
 レスポンシブ PCサイズ 横幅 1,200px以下 以上
===============================================*/
@media screen and (min-width: 993px), print {}


article#home {
	margin-top: 0px;
}
#spSlider {
	display:none;
}


#home #main_area {
	position:relative;
	overflow: hidden;
	width: 100%;
	min-width: 960px;
	padding: 0px;
	margin: 0 auto;
}
#main_area .sliderUnit {
position: relative;
z-index: 0!important;
}
#main_visual {
	overflow: hidden;
	position: relative;
}
#main_visual:after {
	content: "";
	display: block;
	position: absolute;
	top: 0rem;
	left: 50%;
	transform: translate(-50%,0%);
	width: 100%;
	height: calc( 100% );
	background: rgba(0,0,0,0.4);
}
.swiper-slide-active img,
.swiper-slide-duplicate-active img,
.swiper-slide-prev img {
width: 100vw;
animation: zoomUp 10s linear 0s 1 normal both;
}
@keyframes zoomUp {
  0%    { transform: scale(1); }
  100%  { transform: scale(1.1); }
}
.swiper-slide img {
	width: 100vw;
	height: auto;
}

#main_area .sliderUnit .parts img {
	width: 100%;
	height: auto;
}

#main_area .sliderUnit .main_right-t {
	position: absolute;
	top: 0;
	right: 0;
	width: 25vw;
	height: 12.5vw;
	z-index: 1;
}
#main_area .sliderUnit .main_left-b {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 33.3333vw;
	height: 16.6666vw;
	z-index: 1;
}
#main_area .sliderUnit .main_right-b {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 20vw;
	height: 10vw;
	z-index: 1;
}
#main_area .sliderUnit .main_logo {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 8.3333vw;
	height: 20vw;
	z-index: 1;
	transform: translate(-50%,-50%);
}
#main_area .sliderUnit .main_copy {
	position: absolute;
	top: 14.5vw;
	right: 6vw;
	font-size: 3.6vw;
	line-height: 1.25em;
	letter-spacing: 0.2em;
 font-family: "Zen Old Mincho", serif;
 font-weight: 400;
	color: #fff;
	writing-mode: vertical-rl;
	z-index: 1;
}
#main_area .sliderUnit .main_txt {
	position: absolute;
	top: 24vw;
	right: 16vw;
	font-size: 1.2vw;
	line-height: 1.5em;
	letter-spacing: 0.05em;
 font-family: "Zen Old Mincho", serif;
 font-weight: 400;
	color: #fff;
	writing-mode: vertical-rl;
	z-index: 1;
}


#home #main_area #main_visual.slider {
	width: 100%;
	height: auto;
	margin: 0px auto;
}

#home .swiper-pagination {
 position: absolute;
 z-index: 2;
	top: auto;
	left: 0;
 bottom: 1vw;
 _height: -webkit-max-content;
 _height: -moz-max-content;
 _height: max-content;
 margin: auto;
}
#home .swiper-pagination-bullet {
 display: inline-block;
 width: 3rem;
 height: .2rem;
 cursor: pointer;
 transition: .8s cubic-bezier(.2, 1, .2, 1);
 background-color: rgba(255, 255, 255, 1.0);
	border-radius: 0;
	opacity: 1;
}
#home .swiper-pagination-bullet:not(:first-child) {
 margin-top: 0.8rem;
}
#home .swiper-pagination-bullet-active {
 background-color: rgba(218,187,98,1.00);
}

/*===============================================
 レスポンシブ タブレットサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {
	#home #main_area {
		overflow: hidden;
		padding: 0px;
		width: 100%;
		min-width: 320px;
		height: auto;
	}
	#home #main_area .slick-slide {
		padding: 0px;
	}
	#home #main_area .slick-slide img {
		margin: 0px;
		padding: 0px;
	}
	#home #main_area .slick-prev,
	#home #main_area .slick-next {
		display: none!important;
	}
.swiper-slide img {
 aspect-ratio: 1 / .65;
 object-fit: cover;
}

#home .swiper-pagination {
	left: 96vw;
 bottom: 2vw;
}
#home .swiper-pagination-bullet {
 width: .2rem;
 height: 2rem;
}

#main_area .sliderUnit .main_left {}
#main_area .sliderUnit .main_right {}
/*
#main_area .sliderUnit .main_logo {
	left: 50%;
	top: 50%;
	width: 15vw;
	height: 22.5vw;
	height: 33.75vw;
	z-index: 1;
	transform: translate(-50%,-50%);
}
*/
#main_area .sliderUnit .main_logo {
	top: 55%;
	width: 8.3333vw;
	height: 20vw;
}
#main_area .sliderUnit .main_copy {
	position: absolute;
	top: 22.5vw;
	right: 11vw;
	font-size: 4.8vw;
}
#main_area .sliderUnit .main_txt {
	display: none;
}


}

/*-- 豐烈神社について About --*/
#home section#about_area {
	background: url("../img/home/bg_R01.png") no-repeat right 0%, url("../img/home/bg_L01.png") no-repeat left 100%;
	background-size: 45rem 30rem, 48rem 24rem;
}
#home section#about_area .wrap {
	width: 100%;
	max-width: 108rem;
	margin: 0rem auto;
	padding: 10rem 0rem 10rem 0rem;
}
#home section#about_area .wrap h2 {
	display: block;
	text-align: center;
	margin: 0 auto 6rem;
	font-size: 3rem;
}
#home section#about_area .wrap h3 {
	font-size: 2.1rem;

	letter-spacing: 0.1em;
	text-align: center;
	margin-bottom: 1em;
}
#home section#about_area .wrap p {
	font-size: 1.6rem;
	letter-spacing: 0.3em;
	line-height: 2em;
	text-align: center;
}

#home section#about_area .btn {
	position: relative;
	margin: 6rem auto 6rem;
	text-align: center;
}
#home section#about_area .btn a {
	display: inline-block;
	background: #1B1464;
	color: #fff;
	font-size:1.8rem;
	line-height: 1em;
	padding: 1.2rem 4rem;
	transform: scale(1);
}
#home section#about_area .btn a:after {
	display:block;
	content:"";
	position:absolute;
	border-top:2px solid #FFFFFF;
	border-right:2px solid #FFFFFF;
	width:6px;
	height:6px;
	top:50%;
	right:12px;
	margin-top:-4px;
	-webkit-transform: rotate(45deg);
  	      transform: rotate(45deg);
}
#home section#about_area .btn a:hover {
	transform: scale(1.02);
}

/*===============================================
 レスポンシブ タブレットサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {

/*-- 豐烈神社について About --*/
#home section#about_area {
	background: url("../img/home/bg_R01.png") no-repeat right 0%, url("../img/home/bg_L01.png") no-repeat left 100%;
	background-size: 45vw 30vw, 48vw 24vw;
}
#home section#about_area .wrap {
	margin: 0rem auto;
	padding: 4rem 1rem;
}
#home section#about_area .wrap h2 {
	margin: 0 auto 2rem;
	font-size: 2.1rem;
}
#home section#about_area .wrap h3 {
	font-size: 1.5rem;
	letter-spacing: 0em;
	text-align: center;
	margin-bottom: 1em;
}
#home section#about_area .wrap p {
	font-size: 1.4rem;
	letter-spacing: 0.0em;
	line-height: 2em;
	text-align: left;
	padding: 1rem 1.5rem;
}
#home section#about_area .btn {
	margin: 2rem auto 0rem;
}
#home section#about_area .btn a {
	font-size:1.6rem;
	padding: 1.2rem 4rem;
}

}


/*-- お知らせ News --*/
#home section#news_area {}
#news_area {
	position: relative;
}

#home section#news_area .wrap {
	width: 100%;
	max-width: 1080px;
	margin: 0 auto;
	padding: 2rem 0 4rem 0;
}
#home section#news_area .wrap .box {
	display: flex;
	flex-wrap: wrap;
	_align-items: center;
	justify-content: space-between;
	width: 100%;
	max-width: 80rem;
	background: #fff;
	margin: 0 auto;
	padding: 4rem;
}
#home section#news_area h2 {
	display: block;
	text-align: center;
	margin: 0rem 8rem 0rem 4rem;
	writing-mode: vertical-rl;
}
#home section#news_area h2 span {
	display: block;
	position: relative;
	font-size: 3.0rem;
	line-height: 1em;
}
#home section#news_area h2 span:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: -2rem;
	width: 0;
	height: 100%;
	border-left:.6rem solid #1B1464;
	border-right:.6rem solid #ED1C24;
}

#home section#news_area ul {
	overflow-y: auto;
	max-height: 22rem;
	width: 56rem;
	height: auto;
	max-height: 12rem;
	margin: 0rem auto 0rem;
}
#home section#news_area ul li {
	margin: 0;
}
#home section#news_area ul li a {
	display: flex;
	flex-wrap: wrap;
	font-size: 1.6rem;
	font-weight: 600;
	line-height: 1.4em;
	padding: 0.55em 0.5em 0.55em 1.0em;
}
#home section#news_area ul li a:hover {
	background: rgba(0,0,0,0.05);
}
#home section#news_area ul li a em {
	display: inline-block;
	margin: 0 2rem 0 0;
	width: 6em;
	font-size: 1.5rem;
}
#home section#news_area ul li a p {
	display: inline-block;
	text-align: left;
	width: calc( 100% - 7em );
}

#home section#news_area .btn {
	position: relative;
	margin: 0 auto 0rem;
	text-align: center;
}
#home section#news_area .btn a {
	display: inline-block;
	background: #68CEB4;
	color: #fff;
	font-size:1.8rem;
	line-height: 1em;
	padding: 1.6rem 8rem;
	transform: scale(1);
}
#home section#news_area .btn a:after {
	display:block;
	content:"";
	position:absolute;
	border-top:2px solid #FFFFFF;
	border-right:2px solid #FFFFFF;
	width:6px;
	height:6px;
	top:50%;
	right:12px;
	margin-top:-4px;
	-webkit-transform: rotate(45deg);
  	      transform: rotate(45deg);
}
#home section#news_area .btn a:hover {
	transform: scale(1.02);
}

/*===============================================
 レスポンシブ タブレットサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {
/*-- お知らせ News --*/
#home section#news_area {}
#news_area {
	position: relative;
}
#home section#news_area .wrap {
	width: 100%;
	max-width: 1080px;
	margin: 0 auto;
	padding: 2rem 0 2rem 0;
}
#home section#news_area .wrap .box {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	margin: 0 auto;
	padding: 2rem 1rem;
}
#home section#news_area h2 {
	display: block;
	text-align: center;
	margin: 0rem auto 3rem;
	writing-mode: horizontal-tb;
}
#home section#news_area h2 span {
	display: block;
	position: relative;
	font-size: 2.4rem;
	line-height: 1em;
}
#home section#news_area h2 span:before {
	content: "";
	display: block;
	position: absolute;
	top: auto;
	bottom: -1rem;
	right: auto;
	left: 0;
	width: 100%;
	height: 0;
	border-top:.3rem solid #1B1464;
	border-bottom:.3rem solid #ED1C24;
	border-left:none;
	border-right:none;
}
#home section#news_area ul {
	overflow-y: auto;
	width: calc( 100% );
	height: auto;
	max-height: 18rem;
	margin: 0rem auto 0rem;
}
#home section#news_area ul li {
	margin: 0;
}
#home section#news_area ul li a {
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	font-size: 1.5rem;
	padding: 0.55em 0.5em 0.55em 1.0em;
}
#home section#news_area ul li a:hover {
	background: rgba(0,0,0,0.05);
}
#home section#news_area ul li a em {
	display: inline-block;
	margin: 0 2rem 0 0;
	width: 6em;
	font-size: 1.5rem;
}
#home section#news_area ul li a p {
	display: inline-block;
	text-align: left;
	width: calc( 100% - 0em );
}

}

/*コンテンツ contents*/
#contents_area {
	position: relative;
	background: url("../img/home/bg_R02.png") no-repeat right 30%, url("../img/home/bg_L02.png") no-repeat left 100%;
	background-size: 45rem 30rem, 48rem 24rem;
}
#contents_area .wrap {
	width: 100%;
	max-width: 1080px;
	margin: 0rem auto;
	padding: 8rem 0rem 8rem 0rem;
}
#contents_area .wrap .box {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	max-width: 96rem;
	padding: 2rem;
	margin: 0 auto 12rem;
}
#contents_area .wrap .box h2 {
	display: block;
	writing-mode: vertical-rl;
	font-size: 3rem;
	margin: 0 3rem;
}
#contents_area .wrap .box h2 span {}
#contents_area .wrap .box .txt {
	position: relative;
	width: calc( 100% - 54rem );
	margin: 1rem 0 0 0;
}
#contents_area .wrap .box .txt h3 {
	font-size: 2rem;
	margin-bottom: 1em;
}
#contents_area .wrap .box .txt p {
	font-size: 1.6rem;
	line-height: 1.8em;
}
#contents_area .wrap .box figure {
	width: 36rem;
	margin: 1rem 0 0 0;
}

#home #contents_area .wrap .box .txt .btn {
	display: flex;
	flex-wrap: wrap;
	position: absolute;
	right: 0rem;
	bottom: 0;
	margin: 0;
	text-align: center;
}
#home #contents_area .wrap .box .txt .btn a {
	display: inline-block;
	background: #1B1464;
	color: #fff;
	font-size:1.6rem;
	line-height: 1em;
	padding: 1rem 3rem 1rem 1.5rem;
	margin: 0 0.5rem;
	transform: scale(1);
}
#home #contents_area .wrap .box .txt .btn a:after {
	display:block;
	content:"";
	position:absolute;
	border-top:2px solid #FFFFFF;
	border-right:2px solid #FFFFFF;
	width:6px;
	height:6px;
	top:50%;
	right:12px;
	margin-top:-4px;
	-webkit-transform: rotate(45deg);
  	      transform: rotate(45deg);
}
#home #contents_area .wrap .box .txt .btn a:hover {
	transform: scale(1.02);
}

#contents_area .wrap #home_history.box,#contents_area .wrap #home_map.box {
	flex-direction: row-reverse;
}


/*===============================================
 レスポンシブ タブレットサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {
#contents_area {
	position: relative;
	background: url("../img/home/bg_R02.png") no-repeat right 30%, url("../img/home/bg_L02.png") no-repeat left 100%;
	background-size: 45vw 30vw, 48vw 24vw;
}
#contents_area .wrap {
	width: 100%;
	max-width: 1080px;
	margin: 0rem auto;
	padding: 2rem 0rem 2rem 0rem;
}
#contents_area .wrap .box {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	flex-direction:column;
	width: 100%;
	max-width: 96rem;
	padding: 2rem;
	margin: 0 auto 2rem;
}
#contents_area .wrap .box h2 {
	display: block;
	writing-mode: vertical-rl;
	font-size: 2.4rem;
	margin: 0 auto;
}
#contents_area .wrap .box h2 span {}
#contents_area .wrap .box .txt {
	position: relative;
	width: calc( 100% - 0rem );
	margin: 1rem 0 0 0;
}
#contents_area .wrap .box .txt h3 {
	font-size: 1.5rem;
	text-align: center;
	margin-bottom: 1em;
}
#contents_area .wrap .box .txt p {
	font-size: 1.4rem;
	line-height: 1.8em;
}
#contents_area .wrap .box figure {
	width: calc( 100% );
	max-width: 36rem;
	margin: 1rem 0 0 0;
}
#contents_area .wrap .box figure img {
	width: calc( 100% );
	height: auto;
}

#home #contents_area .wrap .box .txt .btn {
	justify-content: flex-end;
	position: relative;
	margin: 1rem auto 1rem;
	text-align: center;
}
#home #contents_area .wrap .box .txt .btn a {
	font-size:1.4rem;
	line-height: 1em;
	padding: 1.2rem 2rem 1.2rem 1rem;
	margin: 0.5rem 0.0rem 0.5rem 0.5rem;
}
#home #contents_area .wrap .box .txt .btn a:after {
	right:0.75rem;
}
#contents_area .wrap #home_history.box,#contents_area .wrap #home_map.box {
	flex-direction:column;
}
}

/* ご案内 info */
#info_area {}
#info_area .wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	flex-direction: column;
	width: 100%;
	max-width: 1080px;
	margin: 0rem auto;
	padding: 2rem 0rem 12rem 0rem;
}
#info_area .wrap h2 {
	display: block;
	writing-mode: vertical-rl;
	font-size: 3rem;
	text-align: center;
	margin: 0 auto;
}
#info_area .wrap ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 4rem auto;
}
#info_area .wrap ul li {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	position: relative;
	width: calc( 24rem );
	margin: 0 3rem;
}
#info_area .wrap ul li figure {
	margin-bottom: 0.5rem;
}
#info_area .wrap ul li h3 {
	display: block;
	padding: 1.25rem 0rem .75rem 0rem;
	margin: -3rem 0 0 1rem;
	background: #fff;
}
#info_area .wrap ul li h3 em {
	display: block;
	writing-mode: vertical-rl;
	font-size: 2.7rem;
	text-align: center;
}
#info_area .wrap ul li p {
	display: inline-block;
	width: calc( 100% - 7rem );
	font-size: 1.2rem;
	margin-right: 0.5rem;
}

#home #info_area ul li .btn {
	display: flex;
	flex-wrap: wrap;
	position: relative;
	margin: 1.5rem auto;
	text-align: center;
}
#home #info_area ul li .btn a {
	display: inline-block;
	background: #1B1464;
	color: #fff;
	font-size:1.6rem;
	line-height: 1em;
	padding: 1rem 3rem .5rem 1.5rem;
	margin: 0 0.5rem;
	transform: scale(1);
}
#home #info_area ul li:nth-last-child(1) .btn a {
	padding: 1rem 3rem 1rem 1.5rem;
}
#home #info_area ul li .btn a:after {
	display:block;
	content:"";
	position:absolute;
	border-top:2px solid #FFFFFF;
	border-right:2px solid #FFFFFF;
	width:6px;
	height:6px;
	top:50%;
	right:12px;
	margin-top:-4px;
	-webkit-transform: rotate(45deg);
  	      transform: rotate(45deg);
}
#home #info_area ul li .btn a:hover {
	transform: scale(1.02);
}

/*===============================================
 レスポンシブ タブレットサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {
#info_area {}
#info_area .wrap {
	margin: 0rem auto;
	padding: 2rem 0rem 2rem 0rem;
}
#info_area .wrap h2 {
	writing-mode: horizontal-tb;
	font-size: 2.4rem;
	margin: 0 auto;
}
#info_area .wrap ul {
	flex-direction: column;
	margin: 2rem auto;
}
#info_area .wrap ul li {
	width: calc( 24rem );
	margin: 0 3rem 3rem 3rem;
}
#info_area .wrap ul li figure {
	margin-bottom: 0.5rem;
}
#info_area .wrap ul li h3 {
	padding: .75rem 0rem .75rem 0rem;
	margin: -3rem 0 0 1rem;
	background: #fff;
}
#info_area .wrap ul li h3 em {
	display: inline-block;
	writing-mode: vertical-rl;
	font-size: 2.1rem;
	text-align: center;
}
#info_area .wrap ul li p {
	display: inline-block;
	width: calc( 100% - 6rem );
	font-size: 1.2rem;
	margin-right: 0.5rem;
}

#home #info_area ul li .btn {
	display: flex;
	flex-wrap: wrap;
	position: relative;
	margin: 1.5rem auto;
	text-align: center;
}
#home #info_area ul li .btn a {
	display: inline-block;
	background: #1B1464;
	color: #fff;
	font-size:1.4rem;
	line-height: 1em;
	padding: 1rem 3rem 1rem 1.5rem;
	margin: 0 0.5rem;
	transform: scale(1);
}
#home #info_area ul li:nth-last-child(1) .btn a {
	padding: 1rem 3rem 1rem 1.5rem;
}
#home #info_area ul li .btn a:after {
	display:block;
	content:"";
	position:absolute;
	border-top:2px solid #FFFFFF;
	border-right:2px solid #FFFFFF;
	width:6px;
	height:6px;
	top:50%;
	right:12px;
	margin-top:-4px;
	-webkit-transform: rotate(45deg);
  	      transform: rotate(45deg);
}
#home #info_area ul li .btn a:hover {
	transform: scale(1.02);
}

}


/*-- Googleマップ info --*/
#gmap_area {}
section#gmap_area {
	overflow: hidden;
	padding: 0px 0px;
	margin: 0px auto;
	width: 100%;
}
section#gmap_area iframe {
	width: 100%;
	height: 32rem;
}

