@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@700;900&display=swap');
html.lity-active,
html.g-nav-active {
	overflow: hidden;
}

body{
	background: #fff no-repeat center top;
	color: #333;
	font-family: 'Noto Serif JP', serif;
	font-size: 62.5%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	letter-spacing: .1em;
	line-height: 1.85;
	-webkit-text-size-adjust: 100%;
	word-wrap: break-word;
}
@media screen and (min-width: 2000px) {
	body {
		background-size: 100%;
	}
}
/* @media screen and (max-width:767px) {
	body {
		background: linear-gradient(#ffffff 0%, #578160 10%, #578160 90%, #244c2c 100%);
	}
} */

.sp { display: none !important; }
ul { list-style-type: none;}

*{box-sizing: border-box;}

/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 767px) {
    .pc { display: none !important; }
    .sp { display: block !important; }
}

/* ローディング*/
#loading {
	position: fixed;
	width: 100%;
	height: 100%;
	background: #000;
	z-index: 9999999;
	text-align:center;
	color:#fff;
}

#load-anime {
	left: 50%;
	opacity: 0;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
}
#load-anime.active {
	opacity: 1;
}

.lity {
	background: rgba(0, 0, 0, .9) !important;
}

#background {
	background: #fff url(../img/bg-top-03.jpg) no-repeat center top;
	height: 100%;
	min-height: 1832px;
	/*
	opacity: 0;
	*/
	position: absolute;
	width: 100%;
}
@media screen and (min-width: 2000px) {
	#background {
		background-size: 100%;
	}
}
#background.active {
	animation: image_anime 6s forwards ease 2s;
}
@keyframes image_anime {
	0%{ transform: scale(1); opacity: 0;filter: blur(30px);}
	33.333333333333334% { transform: scale(1); opacity: 1; filter: blur(0px); }
	66.666666666666666% { transform: scale(1); opacity: 1; filter: blur(0px); }
	100% { transform: scale(1); opacity: 1; filter: blur(0px); }
}

/* グローバルナビゲーション */
nav.pc {
	align-items: center;
	animation-name: PageAnimeAppear;
	animation-duration: 1s;
	animation-delay: 0.2s;
	animation-fill-mode: forwards;
	background: #fff;
	box-shadow: 0px 0px 15px 10px rgb(0 0 0 / 30%);
	display: flex;
	height: 79px;
	justify-content: space-between;
	margin: 0 auto;
	opacity: 0;
	position: sticky;
	top: 0;
  width: 100%;
	z-index: 999;
}
@media only screen and (max-width: 999px) {
	nav.pc {
		display: none !important;
	}
	nav.sp {
		display: block !important;
	}
}
nav.pc ul {
  display: flex;
  height: 50px;
	margin: 0 auto;
}
nav.pc ul li {
	height: 100%;
  padding: 0;
}
nav.pc ul li.top {
	margin-right: 20px;
}
nav.pc ul li a {
	align-items: center;
	background: -webkit-linear-gradient(90deg, #85763f, #912509);
	-webkit-background-clip: text;
	color: #912509;
	display: flex;
	font-size: 16px;
	font-weight: 900;
  height: 100%;
	letter-spacing: -0.5px;
	padding: 0 10px;
  position: relative;
	text-decoration: none;
	-webkit-text-fill-color: transparent;
	/* text-shadow: 0 2px 3px rgb(0 0 0 / 30%); */
  transition: .3s;
}
_::-webkit-full-page-media, _:future, :root nav.pc ul li a {
	background: none;
	-webkit-background-clip: border-box;
	-webkit-text-fill-color: currentcolor;
}
@media screen and (-webkit-min-device-pixel-ratio:0) {
	::i-block-chrome, nav.pc ul li a {
		background: none;
		-webkit-background-clip: border-box;
		-webkit-text-fill-color: currentcolor;
	}
}
nav.pc ul li:not(.top) a::after {
	background: #912509;
	bottom: 0;
  content: '';
  display: block;
  height: 2px;
	left: 10%;
  position: absolute;
  transform: scale(0, 1);
  transition: .3s;
	width: 80%;
}
nav.pc ul li a:hover {
	background: -webkit-linear-gradient(90deg, #9e0233, #9e0233);
	-webkit-background-clip: text;
  color: #9e0233;
	-webkit-text-fill-color: transparent;
}
_::-webkit-full-page-media, _:future, :root nav.pc ul li a:hover {
	background: none;
	-webkit-background-clip: border-box;
	-webkit-text-fill-color: currentcolor;
}
@media screen and (-webkit-min-device-pixel-ratio:0) {
	::i-block-chrome, nav.pc ul li a:hover {
		background: none;
		-webkit-background-clip: border-box;
		-webkit-text-fill-color: currentcolor;
	}
}
nav.pc ul li:not(.top) a:hover::after {
  transform: scale(1, 1);
}
nav.pc ul li.top img {
	height: 60px;
}

/* ハンバーガーメニュー */
#g-nav {
	background: #fff;
	height: 100vh;
	opacity: 0;
	position:fixed;
	right: -120%;
	top: 0;
	transition: all .6s;
	width: 100%;
	z-index: 999;
}
#g-nav.panelactive {
	opacity: 1;
	right: 0;
}
#g-nav.panelactive #g-nav-list {
	animation-name: PageAnimeAppear;
	animation-duration: 1s;
	animation-delay: 0.4s;
	animation-fill-mode: forwards;
	height: 100vh;
	opacity: 0;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	position: fixed;
	width: 100%;
	z-index: 999;
}
#g-nav ul {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: 999;
}
#g-nav li {
	list-style: none;
	text-align: center;
}
#g-nav li a {
	background: -webkit-linear-gradient(90deg, #85763f, #912509);
	-webkit-background-clip: text;
	border: 1px solid #fff;
	color: #912509;
	display: block;
	font-size: 20px;
	font-weight: 900;
	padding: 10px;
	text-decoration: none;
	-webkit-text-fill-color: transparent;
	text-shadow: 0 2px 3px rgb(0 0 0 / 50%);
	text-transform: uppercase;
}
.ios #g-nav li a {
	background: none;
	-webkit-background-clip: border-box;
	-webkit-text-fill-color: currentcolor;
}

#g-nav li a:hover {
	background: -webkit-linear-gradient(90deg, #9e0233, #9e0233);
	-webkit-background-clip: text;
  color: #9e0233;
	-webkit-text-fill-color: transparent;
}
.openbtn {
	animation-name: PageAnimeAppear;
	animation-duration: 1s;
	animation-delay: 0.2s;
	animation-fill-mode: forwards;
	background: url(../img/bg-ami-w.png) repeat center top,#7287c0;
	cursor: pointer;
	height: 50px;
	opacity: 0;
	position: fixed;
	right: 0;
	top: 0;
	width: 50px;
	z-index: 1000;
	border-bottom-left-radius: 5px;
}
@media only screen and (min-width: 1000px) {
  .openbtn {
		display: none;
	}
}
.openbtn span {
	background-color: #fff;
	border-radius: 2px;
	box-shadow: 0 2px 3px rgb(0 0 0 / 25%);
	color: #fff;
	display: inline-block;
	height: 2px;
	left: 9px;
	position: absolute;
	transition: all .4s;
	width: 66.6666%;
}
.openbtn span:nth-of-type(1) {
	top: 10px;
	z-index: +1;
}
.openbtn span:nth-of-type(2) {
	background: none;
	box-shadow: none;
	font-size: 10px;
	letter-spacing: -0.5px;
	line-height: 1;
	text-shadow: 0 2px 3px rgb(0 0 0 / 50%);
	top: 18px;
}
.openbtn span:nth-of-type(3) {
	top: 36px;
}
.openbtn.active span:nth-of-type(1) {
	left: 14px;
	top: 15px;
	transform: translateY(6px) rotate(-45deg);
	width: 50%;
}
.openbtn.active span:nth-of-type(2) {
	opacity: 0;
}
.openbtn.active span:nth-of-type(3) {
	left: 14px;
	top: 27px;
	transform: translateY(-6px) rotate(45deg);
	width: 50%;
}
.openbtn + .top {
	position: absolute;
	padding: 22px;;
	width: 50%;
	z-index: 999;
}
@media only screen and (min-width: 1000px) {
	.openbtn + .top {
		display: none;
	}
}
.openbtn + .top img {
	width: 100%;
}

/*pagetop*/
#page-top a{
	display: flex;
	justify-content:center;
	align-items:center;
	background:url(../img/bg-ami-w.png) repeat center top,#7287c0;
	border-radius: 5px;
	width: 60px;
	height: 60px;
	color: #fff;
	text-align: center;
	text-transform: uppercase;
	text-decoration: none;
	font-size:0.8rem;
	transition:all 0.3s;
	padding: 1vw;
	font-weight: 700;
	line-height: 1.2rem;
}
#page-top {
	position: fixed;
	right: 10px;
	bottom:10px;
	z-index: 2;
	opacity: 0;
	transform: translateX(100px);
}

#page-top a:hover{
	opacity: 0.6;
}

#page-top.LeftMove{
	animation: LeftAnime 0.5s forwards;
}
@keyframes LeftAnime{
  from {
    opacity: 0;
	transform: translateX(100px);
  }
  to {
    opacity: 1;
	transform: translateX(0);
  }
}
#page-top.RightMove{
	animation: RightAnime 0.5s forwards;
}
@keyframes RightAnime{
  from {
  	opacity: 1;
	transform: translateX(0);
  }
  to {
  	opacity: 1;
	transform: translateX(100px);
  }
}

@media screen and (max-width:767px) {
	#page-top a{
		font-size:0.6rem;
	}
}

/* フェードイン */
.fadein {
	opacity: 0;
	transform : translate(0, 50px);
	transition : all 1500ms;
  }

  .fadein.scrollin{
	opacity: 1;
	transform: translate(0, 0);
  }


/* .blur{
	animation-name: blurAnime;
	animation-duration:1s;
	animation-fill-mode:forwards;
}

@keyframes blurAnime{
  from {
	filter: blur(10px);
	transform: scale(1.02);
	opacity: 0;
  }

  to {
	filter: blur(0);
	transform: scale(1);
	opacity: 1;
  }
}

.blurTrigger{
    opacity: 0;
} */

/*通常コンテンツ*/
#container{
	opacity: 0;
	overflow-x: hidden;
}


body.appear #container, body.appear #container2{
	animation-name:PageAnimeAppear;
	animation-duration:1s;
	animation-delay:0.2s;
	animation-fill-mode:forwards;
	opacity: 0;
}

@media screen and (max-width:767px) {
	body.appear#top #container::before {
		background: #fff;
		content: '';
		display: block;
		height: 21vw;
		margin-bottom: -19vw;
		width: 100%;
	}
}

@keyframes PageAnimeAppear{
	0% {
	opacity: 0;
	}
	100% {
	opacity: 1;
}
}

a{
	color: #fff;
	text-decoration: none;
    outline: none;
}

h1.logo{
	width: 90%;
	margin: 0 auto;
}
h1.logo img {
	width: 100%;
	height: auto;
}

/* h1 p{
	color: #333;
	text-shadow: 0 0px 5px rgba(255, 255, 255, 1.0), 0 0px 15px rgba(255, 255, 255, 1.0), 0 0px 20px rgba(255, 255, 255, 1.0);
	margin: -0.5rem 0;
} */

h2{
	font-size:3.0rem;
	letter-spacing: 0.1em;
	line-height: 4.5rem;
	/* font-family: 'Noto Serif JP', serif,'游明朝','ヒラギノ明朝 ProN W6'; */
	/* padding-bottom: 15px; */
}

h2 p {
	font-size: 3.5rem;
	margin: 0px 0;
}

h2 span.copy-l {
	font-size: 4.5rem;
}

h2 span.copy-s {
	font-size: 2.0rem;
}

@media only screen and (max-width: 999px) {
	h2 p {
		font-size: 3.25rem;
	}
}

/* .fadein {
    animation: fadein 3s ease forwards;
}
@keyframes fadein {
	0% {opacity: 0;}
    100% {opacity: 1;}
} */
 /* .delay1 {
	-webkit-animation-delay: 3s;
	animation-delay: 3s;
	} */

/* .delay2{
	-webkit-animation-delay: 3s;
	animation-delay: 3s;
	} */

/*.delay3{
	-webkit-animation-delay: 5s;
	animation-delay: 5s;
	}	 */



@media screen and (max-width:767px) {

/* h1 p{
	color: #333;
	text-shadow: none;
	margin: -4vw 0 -1.5vw;
	font-size: 4vw;
} */

h2{
	font-size:10vw;
	letter-spacing: 0.1em;
	line-height: 10vw;
}

h2 p {
	font-size:7.333333333vw;
	letter-spacing: 0.05em;
}

h2 span.copy-l {
	font-size:12vw;
}

h2 span.copy-s {
	font-size:5.333333333vw;
}

}

p{
	margin-top:2.666666667vw;
}

small{
	color:#fff;
	display: block;
	text-align: center;
}

#header{
	color:#fff;
	text-align: center;
}

#head-main {
	margin-bottom: 12vw;
	position: relative;
	width: 95%;
	min-height: 1080px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 0;
}

#head-main .key-01 {
	position: absolute;
	top:10px;
	left: 0;
}
#head-main .key-01 img {
	width: 600px;
	height: auto;
}

#head-main .key-02 {
	position: absolute;
	bottom: -12vw;
	right: 5vw;
	text-shadow: 0 5px 8px rgba(0, 0, 0, .6);
	text-align: left;
}

#head-main .key-02 .text2 {
	margin-top: -4.5rem;
	/*
	opacity: 0;
	*/
}
#head-main .key-02 .text3 {
	/*
	margin-top: calc((20px + 4.5rem) * -1);
	*/
}
#head-main .key-02 p.active {
	animation: kenbernsTRactiveText 12s forwards linear 2s;
}
#head-main .key-02 p.hidden {
	animation: kenbernsTRhiddenText 12s forwards linear 2s;
}
@keyframes kenbernsTRactiveText {
	0%{ transform: translate(50%) scale(1); opacity: 0;filter: blur(30px);}
	8.333333333333334% { transform: translate(0) scale(1); opacity: 1; filter: blur(0px); }
	33.333333333333334% { transform: translate(0) scale(1); opacity: 1; filter: blur(0px); }
	100% { transform: translate(0) scale(1); opacity: 1; filter: blur(0px); }
}
@keyframes kenbernsTRhiddenText {
	0% { transform: translate(0) scale(1); opacity: 1; filter: blur(0px); }
	33.333333333333334% { transform: translate(-50%) scale(1.3); opacity: 0; filter: blur(30px); }
	66.666666666666666% { transform: translate(-50%) scale(1.3); opacity: 0; filter: blur(30px);  }
	100% { transform: translate(-50%) scale(1.3); opacity: 0 ; filter: blur(30px); }
}

#head-main .key-03 {
	box-shadow: 0px 0px 20px 10px rgba(0,0,0,0.3);
	height: 1097px;
	left: calc(50% - 775px / 2);
	opacity: 0;
	overflow: hidden;
	position: absolute;
	right: 0;
	top: 55px;
	width: 775px;
	x-z-index: -1;
}
#head-main .key-03.active {
	animation: kenbernsTRactive 9s forwards linear;
}
body.safari #head-main .key-03.active {
	animation: kenbernsTRactiveSafari 9s forwards linear;
}
#head-main .key-03 span {
	display: block;
	left: 0;
	opacity: 1;
	position: absolute;
	right: 0;
	top: 0;
	transform-origin: 50% 50%;
	x-transition: opacity 2s ease, transform 4s linear;
}
#head-main .key-03 span.src1 {
	z-index: +1;
}
#head-main .key-03 span.active {
	x-animation: kenbernsTRactive 6s forwards linear 2s;
}
#head-main .key-03 span.hidden {
	x-animation: kenbernsTRhidden 6s forwards linear 2s;
}
@keyframes kenbernsTRactive {
	0%{ transform: translateZ(0); opacity: 0;filter: blur(30px);}
	8.333333333333334% { transform: translateZ(0); opacity: 1; filter: blur(0px); }
	33.333333333333334% { transform: translateZ(0); opacity: 1; filter: blur(0px); }
	100% { transform: translateZ(0); opacity: 1; filter: blur(0px); }
}
@keyframes kenbernsTRactiveSafari {
	0%{ transform: scale(1); opacity: 0;}
	8.333333333333334% { transform: scale(1); opacity: 1; }
	33.333333333333334% { transform: scale(1); opacity: 1; }
	100% { transform: scale(1); opacity: 1; }
}
@keyframes kenbernsTRhidden {
	0% { transform: scale(1); opacity: 1; filter: blur(0px); }
	33.333333333333334% { transform: scale(1.3); opacity: 0; filter: blur(30px); }
	66.666666666666666% { transform: scale(1.3); opacity: 0; filter: blur(30px);  }
	100% { transform: scale(1.3); opacity: 0 ; filter: blur(30px); }
}
#head-main .key-03 img {
	height: auto;
	width: 100%;
}

#head-main .key-04 {
	position: absolute;
	top:175px;
	left: 30px;
	background: url(../img/bg-ami-w.png) repeat center top, rgba(3,126,187,0.9);
	border-radius: 5px;
	padding: 7px 14px;
	font-size: 1.4rem;
	line-height: 1.0;
	box-shadow: 0px 0px 15px 10px rgba(0,0,0,0.3);
	width: 200px;
}
#head-main .key-04 span {
	font-size: 0.8rem;
	letter-spacing: 0.01em;
}

#head-main .key-05 {
	position: absolute;
	top:230px;
	left: 30px;
	background: url(../img/bg-ami-w.png) repeat center top, rgba(133,52,50,0.9);
	border-radius: 5px;
	padding: 7px 14px;
	font-size: 1.4rem;
	line-height: 1.4;
	box-shadow: 0px 0px 15px 10px rgba(0,0,0,0.3);
	width: 200px;
}

#head-main .key-06 {
	position: absolute;
	top:250px;
	left: 30px;
	background: url(../img/bg-ami-w.png) repeat center top, rgba(153,130,0,0.9);
	border-radius: 5px;
	padding: 7px 14px;
	font-size: 1.2rem;
	line-height: 1.4;
	box-shadow: 0px 0px 15px 10px rgba(0,0,0,0.3);
	width: 200px;
}


#head-main a {
	display: block;
}

#head-main a:hover {
	opacity: 0.6;
}

section.copy, section.share, section.banner{
	color:#fff;
	text-align: center;
	padding: 0px 0;
}

section.banner a:hover{
	opacity: 0.6;
}

section.banner img { max-width: 100% !important; height:auto !important;}

@media screen and (min-width:768px) and ( max-width:820px) {

#head-main .key-01 img {
	width: 75%;
	height: auto;
}

#head-main .key-02 {
	left: 0vw;
	margin-bottom: -9vw;
	position: absolute;
	right: 0vw;
	text-shadow: 0 5px 8px rgba(0, 0, 0, .7);
}

#head-main .key-02 p {
	margin-top: 0;
}

#head-main .key-03 {
	box-shadow: 0px 0px 10px 10px rgba(0,0,0,0.3);
	top: 55px;
}
#head-main .key-03 img {
	width: 100%;
	height: auto;
	box-shadow: 0px 0px 10px 10px rgba(0,0,0,0.3);
}


section.banner p {
width: 90%;
margin: 0 auto;
}
section.banner p img {
	width: 100%;
	height: auto;
}

}
@media screen and (min-width:768px) and ( max-width:960px) {
	#head-main {
		margin-bottom: calc(6vw + 85px);
	}
/* #head-main .key-04 {
		padding: 7px 14px;
		font-size: 1.0rem;
		line-height: 1.2;
		left: 10px;
	} */

	#head-main .key-04 {
		padding: 10px 14px;
		font-size: 1.2rem;
		line-height: 1.2;
		top:175px;
		left: -10px;
		width: 160px;
		margin-top: 0px;
	}

	#head-main .key-05 {
		padding: 10px 14px;
		font-size: 1.2rem;
		line-height: 1.2;
		top:230px;
		left: -10px;
		width: 160px;
		margin-top: 0px;
	}

	#head-main .key-06 {
		padding: 10px 14px;
		font-size: 0.9rem;
		line-height: 1.2;
		top:250px;
		left: -10px;
		margin-top: 0px;
		width: 160px;
	}
	h2 p {
		font-size: 3.0rem;
	}

	h2 span.copy-l {
		font-size: 4.0rem;
	}

	h2 span.copy-s {
		font-size: 2.6rem;
	}
}

@media screen and (max-width:767px) {
#header{
	padding: 3vw 0;
}

#head-main {
	/* background: url(../img/mv.jpg) no-repeat center top / contain; */
	position: relative;
	width: 100%;
	min-width: 100%;
	min-height: auto;
    margin-left: auto;
    margin-right: auto;
    padding-top: 156.4%;
	margin-top: 15vw;
}

#head-main img {
	width: 100%;
	height: auto;
	margin-top: 0;
}

#head-main .key-01 {
	position: absolute;
	top: -3vw;
	left: 0;
	right: 0;
	width:100%;
}

#head-main .key-01 img {
	width: 90%;
	height: auto;
}

#head-main .key-02 {
	position: absolute;
	bottom:-28vw;
	left: 0;
	right: 0;
	width:100%;
	margin-bottom: 20vw;
	text-align: center;
	line-height: 11vw;
}

h2 p {
	margin-top: 4vw;
}

#head-main .key-03 {
	box-shadow: none;
	height: calc(100vw * 1097 / 775);
	left: 0;
	width: 100%;
}
#head-main .key-03 img {
	height: auto;
	width: 100%;
}


#head-main .key-04 {
	top:-21vw;
	left: 3vw;
	right: 5vw;
	padding: 2vw 1vw;
	font-size: 4vw;
	line-height: 1.4;
	width: 40vw;
	box-shadow: none;
	margin-top: 0;
	border-top-left-radius: 0;
	border-top-right-radius: 0;
	box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.3);
}

#head-main .key-04 span {
	font-size: 3vw;
	letter-spacing: 0.01em;
}

#head-main .key-05 {
	top:-21vw;
	left: 45vw;
	right: 5vw;
	padding: 2vw 1vw;
	font-size: 4vw;
	line-height: 1.4;
	width: 40vw;
	box-shadow: none;
	margin-top: 0;
	border-top-left-radius: 0;
	border-top-right-radius: 0;
	box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.3);
}

#head-main .key-06 {
	top:-21vw;
	left: 45vw;
	right: 5vw;
	padding: 4.8vw 1vw;
	font-size: 4vw;
	line-height: 1.4;
	width: 40vw;
	box-shadow: none;
	margin-top: 0;
	border-top-left-radius: 0;
	border-top-right-radius: 0;
	box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.3);
}

/* #head-main .key-06 {
	top: -10vw;
	left: 3vw;
	right: 5vw;
	padding: 1vw 2vw;
	font-size: 3.5vw;
	line-height: 1.4;
	width: 82vw;
	box-shadow: none;
	margin-top: 0;
	box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.3);
} */

section.copy, section.share, section.banner{
	padding: 20vw 0;
}

section.banner p {
 width: 80%;
 margin: 0 auto 10vw;
}

}

#main-area {
	width: 100%;
    /* max-width: 1280px; */
    margin: 0 auto;
}

@media screen and (max-width:767px) {

/* #main-area{
	padding-top: 20vw;
} */

}

/* pv */
#pv {
	background: linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 1));
	margin: 0 auto;
	padding: 60px 0 0;
	text-align: center;
	width: 100%;
}

.video-frame {
	height: auto;
	margin: 0 auto;
	max-width: 1000px;
	padding: 0.3vw 0vw ;
	width: 90%;
 }

.video-movie {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	margin: 0 auto;
	/* box-shadow: 3px 3px 20px 10px rgba(0,0,0,0.3); */
}
.video-movie iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.pv-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	max-width: 1080px;
	margin: 0 auto;
}
.pv-list li {
	width: 48%;
	margin: 1%;
}

.btn-gallery-link a, .btn-news-link a {
	font-size: 1.2rem;
	padding: 5px;
	border: solid 1px #446bba;
	margin: 0 auto;
	text-align: center;
	display: block;
	width: 30%;
	color: #446bba;
}
.btn-gallery-link a:hover, .btn-news-link a:hover {
	opacity: 0.6;
}

@media screen and (max-width: 767px) {
	#pv {
		padding: 10vw 0 1vw;
	}

	.pv-list li {
		width: 88%;
		margin: 1%;
	}

	.btn-gallery-link a, .btn-news-link a {
		font-size: 4vw;
		padding: 1vw;
		border: solid 1px #446bba;
		margin: 0 auto;
		text-align: center;
		display: block;
		width: 50%;
		color: #446bba;
	}
	.btn-gallery-link a:hover, .btn-news-link a:hover {
		opacity: 0.6;
	}
}

/* news */
#news {
	background: #fff url('../img/bg-ami-w.png') repeat center top;
	margin: 0px auto;
	padding: 50px 0;
	text-align: center;
	width: 100%;
}

#news h3 {
	font-size: 2.0rem;
	padding-bottom: 20px;
	color: #fff;
	text-shadow: 0 2px 3px rgba(0, 0, 0, .5);
}
/* .news-list li a {
	background: #17202a !important;
} */
.news-list-day {
	background: linear-gradient(90deg, #17202a, #446bba) !important;
}
/* .news-list-text {
	background: linear-gradient(#17202a, #446bba);
} */


@media screen and (max-width: 767px) {
	#news {
		margin: 0 auto 0;
	}
	#news h3 {
		font-size: 6.25vw;
	}
}

/* twitter */
#twitter {
	background: url('../img/bg-ami-g.png') repeat center top #f3f7fa;
  margin: 0 auto;
	padding: 50px 0;
	text-align: center;
	width: 100%;
}

#twitter h3 {
	font-size: 2.0rem;
	padding-bottom: 20px;
	color: #fff;
	text-shadow: 0 2px 3px rgba(0, 0, 0, .5);
}
#twitter a {
	color: #333;
}
#tw {
    background: #ccc;
    width: 60%;
    margin: 0 auto;
}

.tw-box iframe {
	width:100%;
	height:100%;
	border:none;
	/* display:block; */
	background: #fff;
	max-width: 1200px !important;
}

.tw-link {
	padding: 10px;
	font-size: 1.2rem;
	font-weight: 700;
}

.tw-link a:hover {
    opacity: 0.6;
}

.tw-box {
	width:520px;
	margin: 30px auto;
}


@media screen and (max-width: 767px) {
	#twitter {
		margin: 0 auto 0;
		padding: 6.666666vw 0;
	}
	#twitter h3 {
		font-size: 6.25vw;
	}
	.tw-box iframe {
		width:100%;
		height:100%;
	}

	.tw-link {
		padding: 10px;
		font-size: 1.2rem;
	}

	.tw-box {
		width:96%;
		margin: 4vw auto;
	}
}


/* SNS */
.contact-sns-top {
    display: flex;
    justify-content: center;
    margin: 150px 0 50px;
	list-style: none;
}
.contact-sns-top a {
    margin: 0 2rem;
    font-size: 3rem;
}

.contact-sns-top a:hover {
    opacity: 0.6;
}

/* BNR */
.bnr {
    align-items: center;
	display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 2rem;
    margin: 0 auto;
	list-style-type: none;
	align-items: flex-start;
	width: 70%;
	max-width: 1080px;
}

.bnr li {
    width: 200px;
}
.bnr-big li {
    padding: 0 2% 3%;
	width: 50%;
}
.bnr-big li:first-child {
    width: 51%;
}

.bnr li:last-child {
    margin-right: 0rem;
}

.bnr a:hover, address a:hover {
    opacity: 0.6;
}

.bnr img, address img {
    width: 150px;
}
.bnr-big img {
    height: ;
		width: auto;
}

@media screen and (max-width:767px) {
/* SNS */
.contact-sns-top {
	margin: 20vw 0 10vw 0;
}
.contact-sns-top a {
	margin: 0 1rem;
	font-size: 3rem;
}
/* BNR */
.bnr {
	padding: 0rem;
	width: 100%;
}
.bnr li {
	width: 60%;
	height: auto;
	margin-right: 0vw;
	margin-bottom: 1vw;
}
.bnr-big li {
	width: 100% !important;
}
.bnr img {
	width: 80%;
}

.bnr-big li:last-child {
    margin-bottom: 10vw;
}
}

/* 下層ページ */
body[id^="sub_"] {
	background: #fff url(../img/bg-sub.jpg) no-repeat center top;
}
@media screen and (min-width: 2000px) {
	body[id^="sub_"] {
		background-size: contain;
	}
}
body[id^="sub_"] #header {
	padding: 0;
}
body[id^="sub_"] #main-area section {
	background: url(../img/bg-ami-g.png) repeat center top;
	color: #333;
	margin: 0 auto;
	padding: 50px 0 100px;
	text-align: center;
	width: 100%;
}
@media only screen and (max-width: 999px) {
	body[id^="sub_"] #main-area section:first-child {
		padding-top: calc(50vw * 0.275 + 44px);
	}
}
body[id^="sub_"] #main-area section.colored {
	background-color: #f1f5f6;
}

/* footer */
#footer{
	background: url(../img/bg-ami-w.png) repeat center top, linear-gradient(#17202a, #446bba);
	padding: 20px;
}

#footer address {
	color: #fff;
    font-size: 0.8rem;
    font-style: normal !important;
	text-align: center;
	font-weight: 700;
}

#footer .sunrise {
	padding: 0 0 10px 0;
}

/* secound */

body.secound{
	background:url(../img/bg.jpg) no-repeat center -50px / contain, linear-gradient( #578160 90%, #244c2c 100%);
    font-family: 'Noto Serif JP', serif;
    letter-spacing:0.1em;
	color: #333;
	font-size:1rem;
	line-height:1.85;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: 100%;
	word-wrap: break-word;
  overflow: hidden;
}

.head-logo {
	text-align: center;
}
.head-logo img {
	width: 30%;
}

#head-main2 {
	width: 95%;
    margin:10px auto 20px;
}


#main-area h3 {
	/* background: linear-gradient(90deg, #85763f, #912509);
	-webkit-background-clip: text; */
	color: #912509;
	font-size: 2.0rem;
	padding-bottom: 20px;
	text-align: center;
	/* -webkit-text-fill-color: transparent; */
	text-shadow: 0 2px 3px rgba(0, 0, 0, .5);
}

.heading {
	display: flex;
	justify-content: center;
	align-items: center;
}
.heading::before,
.heading::after {
	content: '';
	width: 51px;
	height: 3px;
	background: #912509;
	/* background: -webkit-linear-gradient(90deg, #85763f, #912509); */
}
.heading::before {
	margin-right: 30px;
}
.heading::after {
	margin-left: 30px;
}

.heading2{
	font-size: 1.4rem;
	color: #2e437a;
	text-shadow: 0 2px 3px rgba(0, 0, 0, .5);
	padding: 30px 0;
	position: relative;
}

.heading2::after {
	content:"";
	position: absolute;
	bottom: -15px;
	left: 50%;
	width: 2px;
	height: 30px;
	background-color: #2e437a;
}

@media screen and (max-width:767px) {
	body.secound{
		background:url(../img/bg-sp.jpg) no-repeat center top / contain, linear-gradient( #578160 90%, #244c2c 100%);
		font-size:0.9rem;
	}

	.head-logo img {
		width: 90%;
	}

	#head-main2 {
		/* position: relative; */
		width: 100%;
		min-width: 100%;
		min-height: auto;
		margin-left: auto;
		margin-right: auto;
		/* padding-top: 156.4%; */
		/* margin-top: 15vw; */
	}

	#main-area h3 {
		font-size: 6.25vw;
	}
}
