@charset "utf-8";

/*------------------------------------------
 pc
------------------------------------------*/
@media print, screen and (min-width: 769px){
	#mainvisual{
		width: 100%;
		height: auto;
		min-height: 500px;
		background: url("../images/mainvisual.jpg") no-repeat center 55%;
		background-size: cover;
		position: relative;
	}
	#mainvisual p{
		display: flex;
		align-items: center;
		font-size: 20px;
		font-weight: bold;
		color: #ffffff;
		text-align: center;
		position: absolute;
		top: 50%;
		right: 15%;
		transform: translateY(-50%);
	}
	#mainvisual p::after{
		content: "";
		width: 300px;
		height: 288px;
		background: url("../images/mainvisual-icon.png") no-repeat;
		animation: rotate 50s linear infinite;
		position: absolute;
		top: -87%;
		right: -7%;
		z-index: -1;
	}
	#ind-readtxt-area{
		width: 100%;
		height: auto;
		background: url("../images/bg-ind.png") no-repeat;
		background-size: 50%;
		position: relative;
	}
	#ind-readtxt-area::before{
		content: "";
		width: 100%;
		height: 20px;
		background: url("../images/bg-nami.png") no-repeat right bottom;
		background-size: 50%;
		position: absolute;
		top: -19px;
		right: 0;
	}
	#ind-readtxt-area .readtxt{
		width: 100%;
		margin-bottom: 100px;
	}
	#ind-readtxt-area .readtxt::after{
		display: block;
		clear: both;
		height: 0px;
		visibility: hidden;
		overflow: hidden;
		line-height: 0;
		content: ".";
	}
	#ind-readtxt-area .readtxt h2{
		font-size: 30px;
		font-weight: bold;
		margin-bottom: 30px;
		text-align: left;
	}
	#ind-readtxt-area .readtxt img{
		display: block;
		width: 41.6666%;
		max-width: 500px;
		margin-left: 15px;
		float: right;
	}
	.news-area{
		margin-bottom: 60px;
	}
	.ind-cont-list{
		display: flex;
		justify-content: space-between;
		width: 100%;
		margin-top: 8.3333%;
	}
	.ind-cont-list > div{
		width: 100%;
		max-width: 376px;
		position: relative;
	}
	.ind-cont-list > div:nth-child(1)::before{
		content: url("../images/icon-ind-cont01.png");
		position: absolute;
		top: -29px;
		left: 5px;
	}
	.ind-cont-list > div:nth-child(2)::before{
		content: url("../images/icon-ind-cont02.png");
		position: absolute;
		top: -29px;
		left: 5px;
	}
	.ind-cont-list > div:nth-child(3)::before{
		content: url("../images/icon-ind-cont03.png");
		position: absolute;
		top: -29px;
		left: 5px;
	}
	.ind-cont-list > div img{
		display: block;
		width: 100%;
		max-width: 370px;
		box-shadow: 6px 6px #ccd8c1;
		margin: 0 auto 30px auto;
	}
	.ind-cont-list > div h3{
		font-size: 18px;
		font-weight: bold;
		text-align: center;
		margin-bottom: 10px;
	}
	.cafe-area{
		display: flex;
		justify-content: space-between;
		width: 100%;
		background: #d3e7ef;
		border-radius: 10px;
		padding: 30px;
		position: relative;
	}
	.cafe-area > img{
		display: block;
		width: 50%;
		max-width: 600px;
		height: 29.1666%;
		max-height: 350px;
	}
	.cafe-area > div{
		width: 45.8333%;
		max-width: 550px;
	}
	.cafe-area > div h3{
		font-size: 20px;
		font-weight: bold;
		text-align: center;
	}
	.cafe-area > div h3 span{
		font-size: 48px;
		color: #285d74;
	}
	.cafe-area > div h3::after{
		content: url("../images/icon-ind-cafe.png");
		padding-left: 5px;
	}
	.cafe-area > div h4{
		font-size: 24px;
		font-weight: bold;
		text-align: center;
		margin-bottom: 15px;
	}
	
	/*-------------------------
	 お知らせ欄
	--------------------------*/
	.news{
		height: 0;
		overflow: hidden;
		margin-bottom: 10px;
		padding-bottom: 25%; /* height:300px/1200px*100 */
		position: relative;
	}
	.news iframe{
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		max-width: 1200px;
		height: 100%;
		max-height: 300px;
	}
}

/*------------------------------------------
 sp
------------------------------------------*/
@media screen and (max-width: 768px){
	#mainvisual{
		width: 100%;
		height: 400px;
		background: url("../images/mainvisual.jpg") no-repeat 25% center;
		background-size: cover;
		position: relative;
	}
	#mainvisual::after{
		content: "";
		width: 100%;
		height: 20px;
		background-image: none;
		background-size: cover;
		position: absolute;
		bottom: -1px;
		right: 0;
	}
	#mainvisual p{
		display: flex;
		align-items: center;
		font-size: 20px;
		font-weight: bold;
		color: #ffffff;
		text-align: center;
		position: absolute;
		top: 50%;
		right: 5%;
		transform: translateY(-50%);
		font-size: 14px;
		text-shadow:
			1px 1px 0px rgba(26,28,29,0.8),
			-1px 1px 0px rgba(26,28,29,0.8);
	}
	#mainvisual p::after{
		content: "";
		width: 150px;
		height: 144px;
		background: url("../images/mainvisual-icon.png") no-repeat;
		background-size: contain;
		animation: rotate 30s linear infinite;
		position: absolute;
		top: -50%;
		right: 10%;
		z-index: -1;
	}
	#ind-readtxt-area{
		width: 100%;
		background: url("../images/bg-ind.png") no-repeat;
		background-size: contain;
	}
	#ind-readtxt-area .readtxt{
		width: 100%;
		margin-bottom: 70px;
	}
	#ind-readtxt-area .readtxt::after{
		display: block;
		clear: both;
		height: 0px;
		visibility: hidden;
		overflow: hidden;
		line-height: 0;
		content: ".";
	}
	#ind-readtxt-area .readtxt h2{
		font-size: 30px;
		font-weight: bold;
		margin-bottom: 30px;
		text-align: center;
	}
	#ind-readtxt-area .readtxt img{
		display: block;
		width: 100%;
		max-width: 370px;
		margin: 0 auto 15px auto;
		float: none;
	}
	.news-area{
		margin-bottom: 100px;
	}
	.ind-cont-list{
		display: block;
		justify-content: space-between;
		width: 100%;
		margin-top: 12.5%;
	}
	.ind-cont-list > div{
		width: 100%;
		max-width: 370px;
		margin: 0 auto 80px auto;
		position: relative;
	}
	.ind-cont-list > div:last-child{
		margin-bottom: 0;
	}
	.ind-cont-list > div:nth-child(1)::before{
		content: url("../images/icon-ind-cont01.png");
		position: absolute;
		top: -29px;
		left: 5px;
	}
	.ind-cont-list > div:nth-child(2)::before{
		content: url("../images/icon-ind-cont02.png");
		position: absolute;
		top: -29px;
		left: 5px;
	}
	.ind-cont-list > div:nth-child(3)::before{
		content: url("../images/icon-ind-cont03.png");
		position: absolute;
		top: -29px;
		left: 5px;
	}
	.ind-cont-list > div img{
		display: block;
		width: 100%;
		max-width: 370px;
		box-shadow: 6px 6px #ccd8c1;
		margin: 0 auto 30px auto;
	}
	.ind-cont-list > div h3{
		font-size: 18px;
		font-weight: bold;
		text-align: center;
		margin-bottom: 10px;
	}
	.cafe-area{
		display: block;
		width: 100%;
		background: #d3e7ef;
		border-radius: 10px;
		padding: 15px 15px 30px 15px;
		position: relative;
	}
	.cafe-area > img{
		display: block;
		width: 100%;
		max-width: 600px;
		margin: 0 auto 15px auto;
	}
	.cafe-area > div{
		width: 100%;
	}
	.cafe-area > div h3{
		font-size: 20px;
		font-weight: bold;
		text-align: center;
	}
	.cafe-area > div h3 span{
		font-size: 48px;
		color: #285d74;
	}
	.cafe-area > div h3::after{
		content: url("../images/icon-ind-cafe.png");
		padding-left: 5px;
	}
	.cafe-area > div h4{
		font-size: 24px;
		font-weight: bold;
		text-align: center;
		margin: 15px 0;
	}
	/*-------------------------
	 お知らせ欄
	--------------------------*/
	.news{
		height: 0;
		overflow: hidden;
		margin-bottom: 10px;
		padding-bottom: 46.875%; /* height/640px*100 */
		position: relative;
	}
	.news iframe{
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		max-height: 300px;
	}

}