@charset "utf-8";
/* reset.css */
* {
    box-sizing: border-box;
}

html, body, div, span, iframe, h1, h2, h3, h4, h5, h6, 
p, a, img, dl, dt, dd, ol, ul, li, label, table, 
tbody, tr, th, td{
	margin: 0;
	padding: 0;
	border: 0;
	box-sizing: border-box;
	line-height: 0;
}

h1, h2, h3, h4, h5, h6, p, a, span, dt, dd, li, label, th, td{
	line-height: 1.6;
}

body {
	width: 100%;
	color:#333333;
}
 
ol, ul {
	list-style: none;
	font-size: 0;
}

figure {
    font-size: 0;
}

table, td, th {
	border-collapse: collapse;
	border-spacing: 0;
}


a:hover {
	text-decoration: none;
	opacity: .7;
}

.cf {
	overflow: hidden;
	zoom:1;
}




.floatL {
	float:left;
}

.floatR {
	float:right;
}

.flexBox {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.center {
	text-align: center;
}

.center img {
	margin-left: auto;
	margin-right: auto;
}

.right {
	text-align: right;
}

.textSmall {
	font-size: 90%;
}

.textBold {
	font-weight: bold;
}

.textBig {
	font-size: 110%;
}

.noLink {
    filter: contrast(0.5);
    pointer-events: none;
}

.noLink a {
    cursor: inherit;
    pointer-events: none;
}

.bgColor {
	background: #EBEBEB;
	padding: 4rem 0;
}

/*h2 {
	text-align: center;
	font-size: 200%;
    letter-spacing: 0.3rem;
	margin-bottom: 4rem;
}*/

h2.suv {
	font-size: 170%;
	margin-bottom: 2rem;
}

h2.pageTitle {
    padding: 4rem 0 0;
}

h3 {
	font-size: 150%;
	border-bottom: 1px solid #333;
	padding-bottom: 0.6rem;
	margin-bottom: 2rem;
}

h4 {
	font-size: 140%;
	margin-bottom: 1.4rem;
}

h5 {
	font-size: 130%;
}

.mb1 {
	margin-bottom: 1rem;
}

.mb2 {
	margin-bottom: 2rem;
}

.mb4 {
	margin-bottom: 4rem;
}

.mb6 {
	margin-bottom: 6rem;
}

.mb8 {
	margin-bottom: 8rem;
}

.mtb4 {
	margin-top: 4rem;
	margin-bottom: 4rem;
}

.bottan a {
	background: #00AEA5;
	padding: 0.8rem 2rem;
	text-align: center;
	color: #FFF;
	font-weight: bold;
	display: inline-block;
}

.bottan a:hover {
	opacity: .6;
	-webkit-transition: opacity 1s ease-out;
	-moz-transition: opacity 1s ease-out;
	-ms-transition: opacity 1s ease-out;
	transition: opacity 1s ease-out;
	text-decoration: none;
}


.movieBox {
	width: 70%;
	margin-left: auto;
	margin-right: auto;
}

.youtube {
    position: relative;
    width: 100%;
    height: 0;
    padding: 56.2% 0 0 0;
    overflow: hidden;
    margin: 0 auto;
}

.youtube iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

/*--ローカルナビ--*/

.localNav,.localNav02,.localNav03,.localNav04 {
	width: 50%;
    margin: 0 auto 4rem;
    display: table;
}

.localNav04 {
	width: 80%;
}

#location .localNav {
	width: 40%;
}

.localNav li,.localNav02 li,.localNav03 li,.localNav04 li {
	width: 32%;
    text-align: center;
    color: #aeb0b2;
    max-width: 300px;
	display: table-cell;
}

.localNav li:last-child a,.localNav02 li:last-child a,.localNav03 li:last-child a,.localNav04 li:last-child a {
	border-right: 1px solid #00AEA5;
}

.localNav li a,.localNav02 li a,.localNav03 li a,.localNav04 li a {
	display: block;
	background: #fff;
	text-align: center;
	font-size: 100%;
	transform: rotate(0.028deg);
	padding: 5px 0;
	color: #00AEA5;
    border-top: 1px solid #00AEA5;
	border-left: 1px solid #00AEA5;
	border-bottom: 1px solid #00AEA5;
}

body:not(.mobile) .localNav li a:hover,.localNav li.active a,body:not(.mobile) .localNav02 li a:hover,.localNav02 li.active a,body:not(.mobile) .localNav03 li a:hover,.localNav03 li.active a,body:not(.mobile) .localNav04 li a:hover,.localNav04 li.active a {
	background: #00AEA5;
	color:#fff;
	opacity: 1;
}

.localNav02{
    width: 34%;
}

.localNav03 {
	width: 75%;
}

.localNav03 li,.localNav04 li{
    width: 25%;
}

/*-----マターポート----*/

.iframeBox{
	position: relative;
	width: 90%;
    padding: 55% 0 0 0;
	margin: 0 auto 6rem;
}

.iframeBox iframe{
	position: absolute;
	 top: 0;
	 left: 0;
    width: 100%;
    height: 100%;
}

table {
	width: 100%;
	box-sizing: border-box;
	margin-bottom: 4rem;
}

table , td, th {
	border: 1px solid #ddd;
	border-collapse: collapse;
	line-height: 1.6;
	padding: 1rem;
}

th {
	background: #f6ffff;
    width: 20%;
    text-align: left;
	font-weight: normal;
}


.fadein {
    opacity: 0;
    transform: translate(0,0);
    transition: all 3s;
}

.fadein-left{
  transform: translate(-80px,0);
}

.fadein-right{
  transform: translate(80px,0);
}

.fadein-up{
  transform: translate(0,-80px);
}

.fadein-bottom{
  transform: translate(0,80px);
}

.fadein-bottom02{
  transform: translate(0,40px);
}  

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

.delay {
	transition-delay: 1s;
	-webkit-transition-delay:1s;
}

@keyframes fadeanime {
	from {
		opacity: 0;
		transform: translateY(20px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes fadeanime02 {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

.pageTitle {
	text-align: center;
	margin: 75px auto 70px;
}

.pageTitle h2 {
	font-size: min(6vw,50px);
	line-height: 1.6;
	letter-spacing: 1px;
}

.pageTitle h2 span {
	font-size: min(2.1vw,26px);
	line-height: 1;
	display: block;
	font-family: "Noto Sans JP", sans-serif;
}




@media screen and (min-width: 320px) and (max-width: 767px)  {	
	img {
		max-width:unset;
		width: 100%;
	}

	.pc {
		display: none;
	}
	
	.floatL {
		float:none;
	}

	.floatR {
		float:none;
	}
	
	.innerBox,main .bgColor .innerBox {
		width: 94%;
		margin: 0 auto;
	}
	
	main .innerBox {
		margin: 0 auto 2rem;
	}	
	
	.mb2 {
		margin-bottom: 1rem;
	}

	.mb4 {
		margin-bottom: 2rem;
	}
	
	.mb6 {
		margin-bottom: 3rem;
	}
	
	.mb8 {
		margin-bottom: 4rem;
	}
	
	.mtb4 {
		margin-top: 2rem;
		margin-bottom: 2rem;
	}
	
	.bottan a {
		padding: 0.6rem 0;
		display: block;
	}
	
	.bgColor {
		padding: 2rem 0;
		margin-bottom: 2rem;
	}

	
	/*-----メイン----*/
	
	h2 {
		font-size: 130%;
		margin-bottom: 2rem;
		letter-spacing: 0;
	}
	
	h2.suv {
		font-size: 130%;
		margin-bottom: 2rem;
	}	
	
	h3 {
		font-size: 120%;
	}

	h4 {
		font-size: 110%;
	}

	h5 {
		font-size: 100%;
	}

	/*-----パンくずリスト----*/
	.breadList {
		display: none;
	}
	
	/*-----ボタン----*/
	.btn {
		width: 90%;
		margin: 0% auto 2rem;
	}
	
	.btn a {
		font-size: 14px;
		padding: 0.4rem 0;
	}
	
	#btnNav {
		display: none;
	}
	
	/*-----youtube----*/
	.movieBox {
		width: 90%;
	}
	
	/*-----資料請求バナー----*/
	
	main .innerBox.bnrRequest {
		text-align: center;
		margin: 2rem auto 0;
	}	
	
	.bnrRequest a {
		display: inline-flex;
		box-shadow: 3px 3px 3px #a7a7a7;
	}	
	
	
/*-----注釈（創建についての上）----*/
	#annotation {
		width: 94%;
		margin: 0 auto 1rem;
	}
	
	#annotation p {
		font-size: 90%;
	}	
	
	/*-----創建について----*/
	
	#aboutSoken {
		margin-bottom:0!important;
	}	
	
	
	#pageTop {
		display: none;
		position: fixed;
		bottom: 76px;
		right: 10px;
		z-index:1000;
	}
	
	#pageTop a {
		width: 35px;
		height: 35px;
		line-height: 35px;
		text-decoration:none;
		text-align:center;
		background: #00aea5;
		border-radius: 50%;
	}
	
	#pageTop img {
		width: 16px;
	}	
	
	
	.localNav,.localNav02,.localNav03,.localNav04 {
		width: 80%;
	}
	
	ul.localNav03,ul.localNav04 {
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
	}
	
	#location .localNav {
		width: 80%;
	}
	
	.localNav li a,.localNav02 li a,.localNav03 li a,.localNav04 li a {
		font-size: 80%;
		
	}

	#location .localNav04 {
		width: 90%;
	}
	
	.localNav03 li,.localNav04 li {
		width: 50%;
	}
	
	.localNav03 li:first-child,.localNav03 li:nth-child(2),.localNav03 li:nth-child(2) a,.localNav04 li:first-child a,.localNav04 li:nth-child(2) a {
		border-bottom: none;
	}
	
	.localNav03 li:nth-child(2) a,.localNav04 li:nth-child(2) a,.localNav04 li:nth-child(4) a {
			border-right: 1px solid #00AEA5;
		
	}
		
/*-----マターポート----*/

	.iframeBox{
		width: 100%;
	}

	.iframeBox{
		margin-bottom: 3rem;
	}
	
/*-----テーブル----*/

	#outline td,#outline th {
		width: 100%;
		box-sizing: border-box;
		display: block;
	}
	
	.pageTitle {
		margin: 40px auto 30px;
	}

	.pageTitle h2 {
		font-size: min(8vw,50px);
		line-height: 1.6;
	}
		

	.pageTitle h2 span {
		font-size: min(3.4vw,26px);
	}
	
	
	

		
}


@media screen and (min-width: 768px) { 	
	.sp,.tb {
		display: none;
	}
	
	.pc {
		display: block;
	}
	
	.innerBox,main .bgColor .innerBox {
		width: 96%;
		max-width: 1120px;
		margin: 0 auto;
	}
	
	main .innerBox {
		margin: 0 auto 6rem;
	}
	

	#aboutSoken {
		margin: 0 auto;
	}
	
	#aboutSoken a:hover {
		opacity: 1;
	}
	
	/*-----メイン----*/
	
	main#top  {
		padding: 125px 0 0;
	}	
	
	/*-----パンくずリスト----*/
	.breadList {
		max-width: 1120px;
		margin: 0 auto 50px;
		padding: 10px;
		box-sizing: content-box;
		line-height: 1.2;
	}
	
	.breadList li {
		display: inline-block;
		font-size: 12px;
		font-weight: normal;
	}
	
	.breadList li:after {
		content: "> ";
		padding: 0 .4em 0 .8em;
	}
	
	.breadList li:last-child:after {
		content: none;
	}
	
	.breadList li a {
		display: inline-block;
		font-size: 12px;
	}
	
/*-----資料請求バナー----*/

	.bnrRequest {
		text-align: center;
		margin: 2rem auto 4rem;
	}	
	
	.bnrRequest a {
		display: inline-flex;
		box-shadow: 3px 3px 3px #a7a7a7;
	}
	
	.bnrRequest a:hover {
		opacity: 1;
		filter: brightness(1.05);
	}	
	
/*-----注釈（創建についての上）----*/
	#annotation {
		width: 100%;
		max-width: 1120px;
		margin: 0 auto 4rem;
	}
	
	#annotation p {
		font-size: 90%;
	}

	#pageTop {
		display: none;
		position: fixed;
		bottom: 110px;
		right: 10px;
		z-index:1000;
	}
	
	#pageTop a {
		width: 40px;
		height: 40px;
		line-height: 40px;
		text-decoration:none;
		text-align:center;
		background: #00aea5;
		border-radius: 50%;
	}
	
	#pageTop img {
		width: 16px;
	}	



}


@media screen and (max-width: 1024px) {
	.tb {
		display: block;
	}
}



@media print {

  #header,footer,#aboutSoken{
    display:none;
  }
	
}


