@charset "UTF-8";

/*
back 濃い茶色：#383322
back 薄いベージュ：#e9e8e6
ラインカラー：#c6c4bd
バナーアウトライン：#a39f90
グリーン：#044e2f
*/

/* ===============================
	utility
=============================== */

a {
	color: #000000;
	text-decoration: none;
	transition: color .3s;
}

a:HOVER {
	color: #068f63;
	text-decoration: none;
}

em {
	font-style: normal;
	font-weight: bold;
	color: #000000;
	font-size: 1.1em;
}

::selection {
	color:#ffffff;
	background:#000000;
}

::-moz-selection {
	color:#ffffff;
	background:#000000; /* Firefox */
}

/* ===============================
	style
=============================== */

/*--- フェードインアニメ ---*/
.fadein {
    opacity :0;
    transform : translate(0, 50px);
    transition : all 1000ms;
    }
 
.fadein.scrollin {
    opacity : 1;
    transform : translate(0, 0);
    }

/*--- header ---*/
header{
	width: 100%;
	height:155px;
	background-color: #fff;
	box-shadow: 0 3px 8px 0px rgb(0,0,0,0.3);
	position: fixed;
	margin: 0 auto;
	z-index: 100;
}

header .toparea {
	margin: 0 auto;
	align-items: center;
}

main {
	padding-top: 155px;/* header高さ */
}

/*--- footer ---*/
footer{
	width:100%;
	background-color:#383322;
	color:#ffffff;
}
		
footer a {
	color: #ffffff;
	text-decoration: none;
}

footer a:HOVER {
	color: #c8c4b8;
	text-decoration: none;
}

/*--- contents ---*/
article {
	width:100%;
	margin-bottom:5em;
}

article.beige {
	background-color:#e9e8e6;
	padding:5em 0;
}

.far {
	margin-left:0.5em;
}

.fas {
	margin-right:0.5em;
}

#top-image{
	width:100%;
	height:500px;
	margin:0 auto;
	position: relative;
}

#top-image img{
	width:100%;
	height:500px;
	object-fit: cover;
}

#top-image h1 {
	width:100%;
	height:100px;
	background-color: rgba(0,0,0,0.5);
	color: #fff;
	font-size: 4rem;
	line-height: 100px;
	text-align:left;
	padding-left:3em;
	position: absolute;
	bottom:0;
}	

#top-image h1 .ttlfont,
h1#top-title .ttlfont{
	font-size: 4rem;
	padding-left:1em;
}

h1#top-title  {
	width:100%;
	height:100px;
	background-color: #383322;
	color: #fff;
	font-size: 4rem;
	line-height: 100px;
	text-align:left;
	padding-left:3em;
}	

.decottl {
	font-size: 2.2rem;
	border-bottom:solid 1px #c6c4bd;
	border-left:solid 9px #383322;
	padding:0 0 0 0.5em;
	margin-bottom:1em;
}

table.call {
	width: 100%;
	background-color: #FFFFFF;
	margin-top:2em;
	font-size: 1.8rem;
	text-align: left;
	border: solid 1px #044e2f;
 	border-collapse: collapse;
}

table.call td {
	padding:0.6em 1em;
}

table.call tr td:nth-of-type(1) {
	width:20%;
	font-size: 1.6rem;
	background-color: #044e2f;
	text-align: center;
	color: #FFFFFF;
}

table.call tr td:nth-of-type(2) {
	width:38%;
}

table.call tr td:nth-of-type(3) {
	width:42%;
}

table.call td .tel {
	font-size: 3.5rem;
}


/*--- arrow style base ---*/
.arrow{
position: relative;
display: inline-block;
padding: 0 0 0 1.3em;
vertical-align: middle;
text-decoration: none;
}
.arrow::before,
.arrow::after{
position: absolute;
top: 0;
bottom: 0;
left: 0;
margin: auto;
content: "";
vertical-align: middle;
}

/*- arrow -*/
.ftarrow::before,
.hdarrow::before,
.thin::before {
left: 3px;
width: 6px;
height: 6px;
border-top: 2px solid #ffffff;
border-right: 2px solid #ffffff;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}

.thin::before{
border-top: 1px solid #000;
border-right: 1px solid #000;
}

.hdarrow::before{
left: 15px;
}

/*--- link button style base ---*/
.linkbtn {
  	display: flex;
  	justify-content: center;
	align-items: center;
	text-decoration: none;
	text-align: center;
	margin:0 auto; 
}
.linkbtn:hover {
	border:solid 1px;
}

.linkbtn::before,.linkbtn::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.linkbtn,.linkbtn::before,.linkbtn::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}


/*- 各ボタンstyle -*/
.linkbtn.weather,
.linkbtn.topic,
.linkbtn.more,
.linkbtn.fee,
.linkbtn.fee2,
.linkbtn.transport,
.linkbtn.hotel,
.linkbtn.policy {
	width: 300px;
	height:55px;
	background-color: #FFFFFF;
	border: solid 1px #a39f90;
}

.linkbtn.topic {
	width: 100%;
	height:160px;
}

.linkbtn.more {
	width: 180px;
	height:40px;
}

.linkbtn.fee {
	width: 245px;
	height:80px;
}

.linkbtn.fee2 {
	width: 245px;
	height:50px;
}

.linkbtn.transport {
	width: 300px !important;
	height:40px;
	margin:1em 0 0 0; 
}

.linkbtn.hotel {
	width: 85%;
	height:40px;
	font-size:1.3rem;
}

.linkbtn.detail {
	width: 180px;
	height:40px;
	background-color:transparent;
	border: solid 1px #a39f90;
}

.linkbtn.head {
	width: 140px;
	height:35px;
	font-size:1.3rem;
	color: #383322;
	background-color:#e9e8e6;
	border: solid 1px #c8c4b8;
}
.linkbtn.head:hover,
.linkbtn.weather:hover,
.linkbtn.topic:hover,
.linkbtn.more:hover,
.linkbtn.detail:hover,
.linkbtn.fee:hover,
.linkbtn.fee2:hover,
.linkbtn.transport:hover,
.linkbtn.hotel:hover,
.linkbtn.policy:hover {
	border-color:#383322;
	background-color: #383322;
	color: #FFFFFF;
}

.linkbtn.foot {
	height:40px;
	width: 180px;
	margin:1em 0 0 !important; 
	font-size:1.3rem;
	border:solid 1px #a39f90;
}
.linkbtn.foot:hover {
	border-color:#044e2f;
	background-color: #044e2f;
	color: #FFFFFF;
}

.linkbtn.form {
	height:135px;
	width: 1020px;
	color: #FFFFFF;
	font-size:2.2rem;
	border:solid 1px #a39f90;
	background-color: #044e2f;
	border-radius: 5px;
}
.linkbtn.form:hover {
	border-color:#a39f90;
	background-color: #257655;
	color: #FFFFFF;
}

.linkbtn.form.low{
	height:60px;
}

/*- 雉の会 ボタン -*/
.kijinokai p .text {
	font-size: 2.8rem;
	border-bottom:solid 1px #FFFFFF; 
	display: block;
	padding-bottom: 0.5em;
	margin-bottom: 0.5em;
}	

.kijinokai p .text .name {
	font-size: 3.6rem;
}	

.linkbtn.kiji {
	width: 1020px;
	height:250px;
	font-size:1.8rem;
	color:#FFFFFF;
	background: url(/images/common/btn-kiji.png) right no-repeat;
	background-color:#7cadcf;
	border: solid 1px #a39f90;
  	justify-content: flex-start;
	padding:0 0 0 5em;
}
.linkbtn.kiji:hover {
	opacity: 0.6 ;
}

/*--- google map ---*/
p.map_title {
	font-size:1.2em;
	font-weight:bold;
}

p.map_comment a {
	font-weight:bold;
	color: #257655;
	text-decoration: underline;
	margin-top:0.2em;
}

p.map_comment a:HOVER {
	color: #16BD88;
	text-decoration: underline;
}

/*--- PageTop ---*/

#pageTop {
	z-index: 100;
	position: fixed;
	right: 10px;
	bottom: 10px;
	margin: 0;
}

#pageTop a{
	width: 70px;
	height: 35px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-decoration: none;
	background:#383322;
	border-radius:3px;
	position: relative;
	transition: .3s;
}
#pageTop a::before{
	display: block;
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 20px;
	height: 20px;
	border: 3px solid;
	border-color: #fff #fff transparent transparent;
	transform: translate(-50%,-20%) rotate(-45deg);
}

#pageTop a:hover {
	background:#72716A;
}

/*--- LINE追随リンク ---*/

.line-link {
	position: fixed;
	z-index: 100;
	background-color: #383322;
	box-shadow: 0px 0px 13px 3px rgba(0,0,0,0.2);
}
.line-link a {
	font-size: 2rem;
	font-weight: 500;
	line-height: 1.6;
	color: #fff;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: .5s;
	position:relative;
}
.line-link a::before {
	content: "";
	display:block;
	width:40px;
	height:40px;
	background: url(/images/common/icon-line.svg) no-repeat;
	background-size: 100%;
	position:absolute;
}

.line-link a:hover {
	background-color: #72716A;
}

/* ===============================
	PC / Tab Style
=============================== */
@media print , screen and (min-width: 481px) {
	
	/*--- フェードインアニメ ---*/
	.fadedelay > ul .fadein:nth-of-type(2) {
		-moz-transition-delay:400ms;
		-webkit-transition-delay:400ms;
		-o-transition-delay:400ms;
		-ms-transition-delay:400ms;
	}
	.fadedelay > ul .fadein:nth-of-type(3) {
		-moz-transition-delay:800ms;
		-webkit-transition-delay:800ms;
		-o-transition-delay:800ms;
		-ms-transition-delay:800ms;
	}

	/*--- header ---*/

	header .toparea {
		width:1020px;
		height:90px;
	}
	
	header .toparea .logo {
		width:250px;
	}
	header .toparea .logo img {
		width:100%;
	}

	header .toparea ul.infolink {
		width:605px;
		justify-content: flex-end;
		/* height:68px; */
	}
	header .toparea ul.infolink li {
		width:140px;
	}
	header .toparea ul.infolink li:not(:first-of-type) {
		margin-left: 15px;
	}

	#navigation {
		width: 100%;
		height:65px;
		font-weight: 600;
		background-color: #F5F5F5;
	}

	nav.pagemenu ul.pagelink {
		width:1020px;
		height:65px;
		font-weight: 600;
		margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content:center;
	}
	nav.pagemenu ul.pagelink li {
		width:14.2%;
		height:100%;
		font-weight: 600;
		margin: 0 auto;
		position:relative;
	}	
	nav.pagemenu ul.pagelink li::before,
	nav.pagemenu ul.pagelink li:last-of-type::after {
		content: "";
		display:block;
		width:1px;
		height:50%;
		background-color:#C8C4B8;
		position:absolute;
		top: 50%;
		transform: translateY(-50%);
	}
	nav.pagemenu ul.pagelink li::before {
		left: 0%;
	}
	nav.pagemenu ul.pagelink li:last-of-type::after {
		right: 0%;
	}

	nav.pagemenu ul.pagelink li a {
		height:100%;
		color: #383322;
		display: flex;
		align-items: center;
		justify-content:center;
		transition: all .3s;
	}
	nav.pagemenu ul.pagelink li a:hover {
		background-color:#E0DFDF;
	}
	nav.pagemenu ul.pagelink li a.active {
		background-color:#E0DFDF;
	}
		
	header .pagemenu ul.infolink {
		display:none;
	}


	/*--- footer ---*/
	footer{
		height:350px;
		padding:50px 0 0;
		position:absolute;
		bottom:0;
		overflow:hidden;
	}

	footer #upper{
		height:200px;
	}
		
	footer #Lelement{
		width:73%;
		padding-left:3%;
		float:left;
	}
		
	footer .ftlogo {
		width:30%;
		padding-top:15px;
	}
		
	footer .ftlogo img {
		width:100%;
	}
			
	footer #address {
		margin-left:5%;
	}
			
	footer #address .tel {
		font-size:3rem;
	}
		
	footer #exlink{
		width:27%;
		font-size:1.3rem;
		border-left:solid 1px #646159;
		float:right;
	}
		
	footer #exlink ul{
		padding-left:30px;
	}
		
	footer #exlink ul li {
		margin-bottom:5px;
	}
		
	footer #exlink .fab {
		margin-right:10px;
	}	

	footer #copy{
		width:100%;
		font-size:1.2rem;
		padding:15px 3%;
		margin-top:50px;
		border-top:solid 1px #a39f90;
	}
		
	footer #copy li{
		margin-left: 30px;
	}
		
	footer #copy li:first-child {
		margin-right: auto;
		margin-left: 0;
	}

	/*--- contents ---*/
	h2.secttl {
		font-size: 3rem;
		margin-bottom:0.8em;
	}

	/*--- LINE追随リンク ---*/

	.line-link {
		width: 70px;
		height: 270px;	
		top: 230px;
		right: 0px;
		border-radius:10px 0 0 10px;
	}
	.line-link a {
		width: 70px;
		height: 270px;	
		letter-spacing: 0.2rem;
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
		padding-top: 30px;
	}
	.line-link a::before {
		top: 32px;
		left:50%;
		transform: translateX(-50%);
	}	
	.line-link a:hover {
		border-radius:10px 0 0 10px;
	}

}

/* ===============================
	Mobile Style
=============================== */
@media screen and (max-width: 480px) {

	/*--- フェードインアニメ ---*/
	.fadein {
		opacity : 0;
		transform : translate(0, 30px);
		transition : all 700ms;
		}
	
	.fadein.scrollin {
		opacity : 1;
		transform : translate(0, 0);
		}

	/*--- header ---*/
	header,
	header .toparea {
		height:20vw;
	}
	main {
		padding-top:20vw;
	}

	header .toparea {
		width:90%;
		justify-content: unset !important;

	}
	header .toparea .logo {
		width:45%;
	}
	header .toparea .logo img {
		width:100%;
	}

	header .toparea .linkbtn.head {
		width: 35vw;
		height:35px;
		font-size:0.9em;
		margin-left:5vw;
	}
		
	header .pagemenu ul.infolink {
		width:80%;
		margin:8vw auto 0;
	}
	header .pagemenu ul.infolink li {
		width:100%;
	}
	header .pagemenu ul.infolink li:not(:first-of-type) {
		margin-top: 4vw;
	}
	header .pagemenu .linkbtn.head {
		width:100%;
		height: 100%;
		padding: 1.5vw 0;
		font-size:1.1rem;
	}

	/*--- footer ---*/
	footer {
		text-align: center;
		padding:2em 0 0;
		/* padding:2em 0 20vw; */
	}

	footer ul#upperSP li {
		margin-bottom:0.9em;
	}
		
	footer #upperSP li:last-child {
		margin-bottom:2em;
	}
		
	footer .ftlogo img {
		width:60%;
		text-align:center;
	}

	footer ul#beneath li:nth-of-type(4){
		padding:0;
	}

	footer ul#beneath li{
		border-top:solid 1px #646159;
		padding:0.5em 0;
	}
		
	footer label {
		display: block;
		cursor :pointer;
		transition: all 0.5s;
		padding:0.5em 0 0.5em 1.5em !important;
	}

	footer input {
		display: none;
	}

	.accshow {
		height: 0;
		padding: 0;
		overflow: hidden;
		opacity: 0;
		transition: 0.8s;
	}

	.cssacc:checked + .accshow {
		height: auto;
		background: #e9e8e6;
		opacity: 1;
	}

	footer ul#exlinkSP li{
		padding:0.5em 0 !important;
	}

	footer ul#exlinkSP li a {
		color: #000;
		text-decoration: none;
	}

	footer .fs {
		padding: 1.5rem 0 !important;
	}
		
	/*--- contents ---*/
	article {
		margin-bottom:3em;
	}

	article.beige {
		padding:3em 0;
	}

	#top-image{
		width:100%;
		height:450px;
	}

	#top-image img{
		width:100%;
		height:450px;
	}

	#top-image h1,
	h1#top-title {
		height:auto;
		font-size: 2.2rem;
		line-height: 1.2;
		padding:0.5em 0 0.5em 1em;
	}	

	#top-image h1 .ttlfont,
	h1#top-title .ttlfont {
		font-size: 2rem;
		padding-left:0.5em;
	}

	h2.secttl {
		font-size: 1.8rem;
		margin-bottom:1em;
	}

	.decottl {
		font-size: 1.5rem;
		border-bottom:solid 1px #c6c4bd;
		border-left:solid 9px #383322;
		padding:0 0 0 0.5em;
		margin-bottom:1em;
	}
		
	table.call {
		margin-top:2em;
		font-size: 1.4rem;
		text-align: center;
	}

	table.call td {
		width:100%;
		display: block;
		padding:0;
	}

	table.call tr td:nth-of-type(1) {
		width:100%;
		font-size: 1.2rem;
		padding:0.5em 0;
	}

	table.call tr td:nth-of-type(2) {
		width:100%;
		padding:0.5em 0;
	}

	table.call tr td:nth-of-type(3) {
		width:100%;
		font-size: 1rem;
		padding-bottom:0.5em;
	}
		
	table.call td .tel {
		font-size: 2rem;
	}

		
	/*- 各ボタンstyle -*/	
	.linkbtn.foot {
		height:30px;
		width: 180px;
		margin:0 auto !important; 
		font-size:1rem;
	}

	.linkbtn.weather {
		width: 100%;
		height:40px;
	}

	.linkbtn.topic {
		height:120px;
	}

	.linkbtn.fee2 {
		width: 100%;
		height:50px;
	}
		
	.linkbtn.form {
		height:100px;
		width: 90%;
		font-size:1.4rem;
		border-radius: 5px;
	}

	.linkbtn.transport {
		width: 90% !important;
		height:40px;
		margin:1em auto 0; 
	}

	.linkbtn.hotel {
		width: 85%;
		height:40px;
		font-size:1rem;
	}	
		
	/*- 雉の会 ボタン -*/	
	.kijinokai p {
		text-shadow: 1px 1px 14px #000;
	}	
		
	.kijinokai p .text {
		font-size: 1.5rem;
		padding-bottom: 0.5em;
		margin-bottom: 0.5em;
	}	

	.kijinokai p .text .name {
		font-size: 2rem;
	}	

	.linkbtn.kiji {
		width: 90%;
		height:200px;
		font-size:1rem;
		background: url(/images/common/btn-kiji_sp.png) right bottom no-repeat;
		background-color:#7cadcf;
		background-size:70% ;
		justify-content: center;
		padding:0;
	}
	
	/*--- PageTop ---*/

	#pageTop {
		display: none !important;
	}

	/*--- LINE追随リンク ---*/

	.line-link {
		width: 100%;
		height: 18vw;
		bottom: 0;
		left: 0;
		box-shadow: 0px 0px 8px 2px rgb(0 0 0 / 60%);
	}
	.line-link a {
		font-size:calc(100vw / 19);
		width: 100%;
		height: 18vw;
		padding-left: 0.8rem;
	}
	.line-link a::before {
		width:10vw;
		height:10vw;
		position:absolute;
		top: 50%;
		left:19vw;
		transform: translateY(-50%);
	}

}

