@charset "UTF-8";
/* CSS Document */

header{
	background: url("../img/texture.jpg");
	background-position: center center;
	background-size: cover;
	height: 530px;
	position: relative;
}
header h1{
	position: absolute;
	writing-mode: vertical-rl;
	font-size: 13px;
	font-size: 1.3rem;
	top: 0;
	right: 190px;
	z-index: 2
}
header h1 span{
	display: none;
}
header .top-logo{
	position: absolute;
	width: 230px;
	top: 35px;
	right: 200px;
	z-index: 2;
}
#topimg .swiper-container{height: 530px;}
#topimg .swiper-container::before{
	content: "";
	display: inline-block;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;;
	position: absolute;
	background-image: url("../img/tile3-1.png");
	background-repeat: no-repeat;
	background-size: 20%;
	background-position: top left;
	background-blend-mode: multiply;
	z-index: 2
}
#topimg .swiper-container::after{
	content: "";
	display: inline-block;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	position: absolute;
	background-image: url("../img/tile3-2.png");
	background-repeat: no-repeat;
	background-size: 20%;
	background-position: bottom right;
	background-blend-mode: multiply;
	z-index: 2
}
#topimg .swiper-slide{
	background-image: url("../img/top-slide-4.png");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}
#topimg .swiper-slide:nth-child(2){
	background-image: url("../img/top-slide-1.png");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}
#topimg .swiper-slide:nth-child(3){
	background-image: url("../img/top-slide-2.png");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}
#topimg .swiper-slide:nth-child(4){
	background-image: url("../img/top-slide-3.png");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}
header::after{
	content: '';
	display: inline-block;
	width: 160px;
	height: 160px;
	bottom: -20px;
	right: 150px;
	background-image: url("../img/owl-01.png");
	background-size: contain;
	vertical-align: middle;
	position: absolute;
	z-index: 2;
}

/*infomation-------------------------------------*/
#infomation{
	background: #f7f2eb;
	padding-bottom: 10rem;
	padding-top: 6rem;
	position: relative;
}

#infomation::after{
	content: '';
	display: inline-block;
	width: 150px;
	height: 150px;
	bottom: 0;
	left: 250px;
	background-image: url("../img/owl-02.png");
	background-size: contain;
	background-repeat:no-repeat;
	vertical-align: middle;
	position: absolute;
	z-index: 2;
}

#infomation div.lunch img{
	width: 200px;
	bottom: 0;
	right: 0;
}

#infomation p{
	line-height: 3.5rem;
	padding-bottom: 1rem;
	font-size: 20px;
}
#infomation a:hover{
	opacity: 0.5;
}

.lunch{
	margin-top: 5rem;
	text-align: right;
}

/*------------------- blogfeed -------------------*/
#blogitembox > div{
	padding-left: 8px;
	padding-right: 8px;
	margin-top: 2rem;
	position: relative;
}
.blogitem {
	padding: 20px;
	margin: 0 5px 15px 5px;
	overflow: hidden;
	min-height: 350px;
	background: #fff;
	border-radius: 0.5rem;
}
.trim {
    overflow: hidden;
    height: 200px;
    position: relative;
	margin-bottom: 1.5rem;
	border-radius: 1rem;
}
.trim img { 
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto;
}
.blogdate {
	margin: 5px 0	0	0;
	color: #3d6028;
	font-size: 12px;
	font-size: 1.2rem;
}
.blogtitle {
	margin-top: 10px;
	color: #444444;
	font-weight: bold;
	font-size: 15px;
	font-size: 1.5rem;
	line-height: 18px;
	line-height: 1.8rem;
	text-align: justify;
}
.blogitem .text {
	margin-top: 10px;
	text-align: justify;
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 20px;
	line-height: 2rem;
	padding-left: 0;
}
/*------------------- blogfeed -------------------*/

/*------------------- about -------------------*/
#about{
	background-image: url("../img/tile.png"),url("../img/top-aboutback.png"),url("../img/texture.jpg");
	background-repeat:repeat-y,no-repeat,repeat;
	background-size: contain,80%,auto;
	background-position: center center,right top,center center;
	background-blend-mode: multiply,normal,normal;
	padding: 12rem 0;
	position: relative;
}
#about h2{
	position: absolute;
	writing-mode: vertical-rl;
	top: 0;
	right: 50px;
	z-index: 2;
	color: #fff;
	font-size: 23px;
	font-size: 2.3rem;
	line-height: 4.5rem;
	letter-spacing: 3px;
	text-shadow: #000 1px 0 10px;
}
#about h2::after{
	content: '';
	display: inline-block;
	width: 150px;
	height: 150px;
	bottom: -150px;
	left: 0;
	background-image: url("../img/owl-03.png");
	background-size: contain;
	background-repeat:no-repeat;
	vertical-align: middle;
	position: absolute;
	z-index: 2;
}
#about div.col-md-8 ul li{padding: 0;}
#about div.col-md-8 ul li img{width: 100%;}
#about div.col-md-8 ul li:nth-child(1),#about div.col-md-8 ul li:nth-child(2),
#about div.col-md-8 ul li:nth-child(3){
	border: 2px solid #f7eddd;
}
#about div.col-md-8 ul li:nth-child(6){
	border: 2px solid #e6dbc5;
}
#about div.col-md-8 ul li:nth-child(6) iframe{
	width: 100%;
	height: 100%;
}
#about div.col-md-8 ul li:nth-child(5){
	padding: 2rem;
}
/*------------------- about -------------------*/

/*------------------- menu -------------------*/
#menu{
	background-image: url("../img/tile2.png"),url("../img/top-menuback.png");
	background-repeat:repeat-y,no-repeat;
	background-size: auto,80%;
	background-position: top center,left top;
	background-blend-mode: multiply,normal;
	background-color: #f7f2eb;
	padding: 12rem 0;
	position: relative;
}
#menu h2{
	position: absolute;
	writing-mode: vertical-rl;
	top: 0;
	right: 50px;
	z-index: 2;
	color: #42210b;
	font-size: 23px;
	font-size: 2.3rem;
	line-height: 4.5rem;
	letter-spacing: 3px;
	text-shadow: #fff 1px 0 10px;
}
#menu .gothic-1 .red-link{margin: 1rem 0;}
#menu div.gothic-1.offset-lg-6 {padding-top: 30rem;}
#menu p{
	color: #42210b;
	font-size: 23px;
	font-size: 2.3rem;
	line-height: 4.5rem;
}
#menu div.hoyo{
	margin-top: 10rem;
}
section#menu::after{
	content: '';
	display: inline-block;
	width: 170px;
	height: 170px;
	bottom: -20px;
	left: 180px;
	background-image: url("../img/owl-04.png");
	background-size: contain;
	background-repeat:no-repeat;
	vertical-align: middle;
	position: absolute;
	z-index: 2;
}

/*------------------- menu -------------------*/
a.red-link {
	display: block;
	background-color: #6F172A;
	color: #fff;
	font-size: 18px;
	font-size: 1.8rem;
	padding: 1rem;
	text-align: center;
	border-radius: 0.3rem;
	transition: all .3s;
}
a.red-link:hover {
	background-color: #b4803b;
}
a.red-link i {
	padding-right:1rem;
}





/* ↓　lg 幅以下の時に反映される設定　↓ */
@media only screen and (max-width: 1199px) {
}
/* ↓　md 幅以下の時に反映される設定　↓ */
@media only screen and (max-width: 991px) {
	
header{
	background: url("../img/texture.jpg");
	background-position: center center;
	background-size: cover;
	height: 500px;
	position: relative;
}
header h1{
	position: absolute;
	writing-mode: vertical-rl;
	font-size: 13px;
	font-size: 1.3rem;
	top: 0;
	right: 70px;
	z-index: 2
}
header .top-logo{
	position: absolute;
	width: 210px;
	top: 35px;
	right: 75px;
	z-index: 2;
}
#topimg .swiper-container{height: 500px;}
header::after{
	content: '';
	display: inline-block;
	width: 120px;
	height: 120px;
	bottom: -15px;
	right: 60px;
	background-image: url("../img/owl-01.png");
	background-size: contain;
	vertical-align: middle;
	position: absolute;
	z-index: 2;
}

/*infomation-------------------------------------*/
#infomation::after{
	content: '';
	display: inline-block;
	width: 120px;
	height: 120px;
	bottom: 0;
	left: 90px;
	background-image: url("../img/owl-02.png");
	background-size: contain;
	background-repeat:no-repeat;
	vertical-align: middle;
	position: absolute;
	z-index: 2;
}

/*------------------- about -------------------*/
#about{
	background-image: url("../img/tile.png"),url("../img/top-aboutback.png"),url("../img/texture.jpg");
	background-repeat:repeat-y,no-repeat,repeat;
	background-size: contain,80%,auto;
	background-position: center center,right top,center center;
	background-blend-mode: multiply,normal,normal;
	padding: 8rem 0;
	position: relative;
}
#about h2{
	position: absolute;
	writing-mode: vertical-rl;
	top: 0;
	right: 50px;
	z-index: 2;
	color: #fff;
	font-size: 21px;
	font-size: 2.1rem;
	line-height: 4rem;
	letter-spacing: 2px;
	text-shadow: #000 1px 0 10px;
}
/*------------------- about -------------------*/

/*------------------- menu -------------------*/
#menu{
	background-image: url("../img/tile2.png"),url("../img/top-menuback.png");
	background-repeat:repeat-y,no-repeat;
	background-size: 100%,100%;
	background-position: top center,left top;
	background-blend-mode: multiply,normal;
	background-color: #f7f2eb;
	padding: 8rem 0;
	position: relative;
}
#menu h2{
	position: absolute;
	writing-mode: vertical-rl;
	top: 0;
	right: 50px;
	z-index: 2;
	color: #42210b;
	font-size: 21px;
	font-size: 2.1rem;
	line-height: 4rem;
	letter-spacing: 2px;
}
#menu .gothic-1 .red-link{margin: 1rem 0;}
#menu p{
	font-size: 20px;
	font-size: 2rem;
	line-height: 3.5rem;
}
#menu div.hoyo{margin-top: 8rem;}
section#menu::after{
	content: '';
	display: inline-block;
	width: 120px;
	height: 120px;
	bottom: -20px;
	left: 150px;
	background-image: url("../img/owl-04.png");
	background-size: contain;
	background-repeat:no-repeat;
	vertical-align: middle;
	position: absolute;
	z-index: 2;
}
/*------------------- menu -------------------*/
}
/* ↓　sm 幅以下の時に反映される設定　↓ */
@media only screen and (max-width: 767px) {
	
header{
	background: url("../img/texture.jpg");
	background-position: center center;
	background-size: cover;
	height: 300px;
	position: relative;
}
header h1{
	position: absolute;
	writing-mode: vertical-rl;
	font-size: 13px;
	font-size: 1.3rem;
	top: 40px;
	right: 50px;
	z-index: 2
}
header .top-logo{
	position: absolute;
	width: 150px;
	top: 75px;
	right: 65px;
	z-index: 2;
}
#topimg .swiper-container{height: 300px;}
header::after{
	content: '';
	display: inline-block;
	width: 100px;
	height: 100px;
	bottom: -60px;
	right: 30px;
	background-image: url("../img/owl-01.png");
	background-size: contain;
	vertical-align: middle;
	position: absolute;
	z-index: 2;
}
/*infomation-------------------------------------*/
#infomation div.lunch img{
	width: 120px;
	bottom: 0;
	right: 0;
}
.lunch{
	margin-top: 8.5rem;
	text-align: right;
}
#infomation::after{
	content: '';
	display: inline-block;
	width: 100px;
	height: 100px;
	bottom: 0;
	left: 40px;
	background-image: url("../img/owl-02.png");
	background-size: contain;
	background-repeat:no-repeat;
	vertical-align: middle;
	position: absolute;
	z-index: 2;
}
/*------------------- about -------------------*/
#about{
	background-image: url("../img/tile.png"),url("../img/top-aboutback.png"),url("../img/texture.jpg");
	background-repeat:repeat-y,no-repeat,repeat;
	background-size: 100%,100%,auto;
	background-position: top center,right top,center center;
	background-blend-mode: multiply,normal,normal;
	padding: 8rem 0;
	position: relative;
}
#about h2{
	position: absolute;
	writing-mode:inherit;
	top: 0;
	left: 20px;
	z-index: 2;
	color: #fff;
	font-size: 21px;
	font-size: 2.1rem;
	line-height: 4rem;
	letter-spacing: 2px;
	text-shadow: #000 1px 0 10px;
}
#about .col-md-8.col-10{margin-top: 15rem;}
#about h2::after{display: none;}
#about ul li:nth-child(3)::after{
	content: '';
	display: inline-block;
	width: 120px;
	height: 120px;
	bottom: -10px;
	right: -230px;
	background-image: url("../img/owl-03.png");
	background-size: contain;
	background-repeat:no-repeat;
	vertical-align: middle;
	position: absolute;
	z-index: 2;
}
#about ul li:nth-child(5){
	margin-top: 2rem;
	text-align: center;
	}
	
/*------------------- menu -------------------*/
#menu h2{
	position: absolute;
	writing-mode:inherit;
	top: 100px;
	right: 20px;
	z-index: 2;
	font-size: 21px;
	font-size: 2.1rem;
	line-height: 4rem;
	letter-spacing: 2px;
}
#menu div.gothic-1.offset-lg-6 {padding-top: 20rem;}
#menu div.hoyo{margin-top: 6rem;}
section#menu::after{display: none;}
}

/* ↓　col 幅以下の時に反映される設定　↓ */
@media only screen and (max-width: 575px) {
	
header{
	background: url("../img/texture.jpg");
	background-position: center center;
	background-size: cover;
	height: 300px;
	position: relative;
}
header h1{
	position: absolute;
	writing-mode: vertical-rl;
	font-size: 13px;
	font-size: 1.3rem;
	top: 40px;
	right: 15px;
	z-index: 2;
	filter: drop-shadow(0px 0px 5px rgba(256, 256, 256, .9)) drop-shadow(-1px -1px 5px rgba(256, 256, 256, .9)) drop-shadow(1px 1px 5px rgba(256, 256, 256, .9));
}
header .top-logo{
	position: absolute;
	width: 150px;
	top: 75px;
	right: 20px;
	z-index: 2;
}
#topimg .swiper-container{height: 300px;}
#topimg .swiper-slide{
	background-image: url("../img/top-slide-1.png");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}
#topimg .swiper-slide:nth-child(2){
	background-image: url("../img/top-slide-2.png");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}
#topimg .swiper-slide:nth-child(3){
	background-image: url("../img/top-slide-3.png");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}
header::after{
	content: '';
	display: inline-block;
	width: 100px;
	height: 100px;
	bottom: -100px;
	right: 10px;
	background-image: url("../img/owl-01.png");
	background-size: contain;
	vertical-align: middle;
	position: absolute;
	z-index: 2;
}
	
/*infomation-------------------------------------*/
#infomation div.lunch img{
	width: 150px;
	bottom: 0;
	right: 0;
}
.lunch{
	margin-top: 6rem;
	text-align: right;
}
#infomation::after{
	content: '';
	display: inline-block;
	width: 100px;
	height: 100px;
	bottom: 0;
	left: 15px;
	background-image: url("../img/owl-02.png");
	background-size: contain;
	background-repeat:no-repeat;
	vertical-align: middle;
	position: absolute;
	z-index: 2;
}
#infomation p {
    line-height: 2.5rem;
    padding-top: 3rem;
    padding-bottom: 1rem;
    font-size: 15px;
}
#infomation a{
	padding: 0 3rem;
}

/*------------------- about -------------------*/
#about h2{
	position: absolute;
	writing-mode:inherit;
	top: 0;
	right: 50px;
	left: 50px;
	margin: auto;
	text-align: center;
	font-size: 19px;
	font-size: 1.9rem;
	line-height: 3rem;
	letter-spacing: 1px;
}
#about .col-md-8.col-10{
		margin-top: 8rem;
}
#about ul li:nth-child(3)::after{
	content: '';
	display: inline-block;
	width: 120px;
	height: 120px;
	bottom: -10px;
	right: -150px;
	background-image: url("../img/owl-03.png");
	background-size: contain;
	background-repeat:no-repeat;
	vertical-align: middle;
	position: absolute;
	z-index: 2;
}
/*------------------- menu -------------------*/
#menu h2{
	position: absolute;
	writing-mode:inherit;
	top: 100px;
	right: 50;
	left: 50;
	margin: auto;
	z-index: 2;
	font-size: 19px;
	font-size: 1.9rem;
	line-height: 3rem;
	letter-spacing: 1px;
}
#menu div.gothic-1.offset-lg-6 {padding-top: 18rem;}
.hoyo div.col-md-8.col-sm-6	img{
	padding-top: 2rem;
	}
#menu p{
	margin-bottom: 2rem;
}
}