@charset "utf-8";
/* Arween indexCSS */
/*=================スマホ=================*/
@media (max-width:767px) {
  /*=====TOPview=====*/
  .top-i {
    width: 100%;
    height: auto;
    padding-top: 60px;
    overflow-x: hidden;
    overflow-y: hidden;
  }
  .top-i h2 {
    margin: 0.5rem;
    font-size: 40px;
    line-height: 1.2;
    color: #0C4A6F;
    font-family: "Bacasime Antique", serif;
    font-weight: 400;
    font-style: normal;
    animation-name: fadeRightAnime;
    animation-duration: 3s;
    animation-fill-mode: forwards;
    opacity: 0;
  }
  .top_img_box01 {
    width: 100%;
    height: 70%;
    padding-right: 10%;
    /*background: url("img/top_sp_04.png");
		background-position: bottom left;
		background-repeat: no-repeat;
		background-size:cover;*/
    position: relative;
  }
  .sp-top {
    clip-path: inset(10px 0 0 0 round 0 5rem 5rem 0);
    animation-name: fadeLeftAnime;
    animation-duration: 3.2s;
    animation-fill-mode: forwards;
    opacity: 0;
  }
  .top_img_box02, .pc-top, .top_img_box02 > .down {
    display: none;
  }
  .top_img_box01 > .down {
    width: 120px;
    position: absolute;
    z-index: 100;
    bottom: 0;
    right: 0;
    margin-right: 12px;
    animation: rotate 30s linear infinite;
  }
  /*=====TOPview=====*/
  /*=====コンセプトエリア=====*/
  .concept {
    margin-top: 2rem;
    /*padding: 0 1rem; */
    display: flex;
    flex-direction: column;
  }
  .concept h4 {
    font-family: "Zen Old Mincho", serif;
    font-weight: 400;
    font-style: normal;
    font-size: 20px;
    line-height: 1.8;
    text-shadow: 2px 3px 3px rgba(126, 138, 221, 0.31);
    color: #F9C4C7;
    padding: 0 2.5rem;
  }
  .concept-box {
    order: 3;
    background-color: #0C4A6F;
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    position: relative;
    margin: 1rem 1rem 1rem 0;
    font-size: 14px;
    padding: 0.5rem;
    border-radius: 0 3rem 3rem 0;
  }
  .concept-in {
    padding: 0 10px;
  }
  .concept-in > h4 {
    font-size: 12px;
    color: #FFFAFA;
    margin: 20px 0;
    padding: 0;
  }
  .concept-box p {
    font-size: 10px;
    color: #FFFAFA;
    margin: 10px 0;
  }
  .img_f img {
    width: 15%;
    position: absolute;
    top: -20px;
    right: -20px;
  }
  .img_box img {
    padding: 0 7px;
  }
  .owner-box {
    width: 70%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 0 1rem;
    margin: 0 0 1rem 30%;
  }
  .staffowner {
    width: 200px;
    border-radius: 2rem;
    filter: drop-shadow(3px 3px 3px #aaa);
  }
  .owner-box > dd {
    display: block;
    margin: 0.2rem auto;
  }
  .owner-box span {
    padding-left: 1em;
  }
  .owner-box > dd:last-child {
    font-family: "Zen Old Mincho", serif;
    font-weight: 400;
    font-style: normal;
    font-size: 14px;
    line-height: 1.5;
    width: 80%;
  }
  .staff-name, .staff-name-i {
    letter-spacing: 0.1em;
  }
  /*=====コンセプトエリア=====*/
  /*=====店内スライドエリア=====*/
  .in-store {
    margin: 3rem 0;
  }
  .slider img {
    width: 80%; /*スライダー内の画像を横幅100%に*/
    height: auto;
  }
  .slider .slick-slide {
    margin: 0 1px; /*スライド左右の余白調整*/
  }
  /*=====店内スライドエリア=====*/
  /*=====スタッフエリア=====*/
  #staff {
    margin: 1rem auto 5rem auto;
  }
  .staff-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .staff-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 2.5rem;
    width: 255px;
	overflow: hidden;  
  }
  .staff-box dd {
    display: block;
    margin: 0.2rem auto 0.2rem 0;
  }
  .staff-p {
    font-size: 22px;
    margin-top: 0.1rem;
    position: relative;
  }
	.staff-p a{
		width: 42px;
		height: 41px;
	}
	
	
  .staff-p a::after {
    content: url("../img/instagram_icon.png");;
    display: inline-block;
    width: 42px;
    height: 41px;
    vertical-align: bottom;
    /* background: url(../img/instagram_icon.png) no-repeat;*/
    transform: scale(0.028);
    position: absolute;
    top: -21px;
    right: -42px;
  }
  .staff-box > .staff-name {
    font-size: 18px;
  }
  .staff-name-i {
    font-size: 17px;
  }
  .staff-box img {
    width: 230px;
    height: auto;
    border-radius: 2rem;
    margin-bottom: 10px;
	animation-name:rotateYAnime;
    animation-duration:2.5s;
    animation-fill-mode:forwards;
  }

	
  .staff-box span {
    padding-left: 1em;
  }
  .staff-box > dd:last-child {
    font-family: "Zen Old Mincho", serif;
    font-weight: 400;
    font-style: normal;
    font-size: 16px;
    line-height: 1.5;
  }
	
	
  /*=====スタッフエリア=====*/
  /*=====ニュースエリア=====*/
	.news {
	width: 100%;	
    margin: 2rem auto;
    padding: 4rem 0;
	background: url("../img/news_pc_back.jpg");
	background-position: center;
	background-repeat: no-repeat;	
  }
	.news-inner{
	background-color:rgba(255,255,255,0.7);
	width: 90%;
	margin: 0 auto;
	padding: 0.1rem 1rem 2rem 1rem;	
	}
	.news-contents01{
		width: 300px;
		display: flex;
		flex-direction: column-reverse;
		justify-content: center;
		margin: 2rem auto 2rem auto;
	}
	.news-contents02{
		width: 300px;
		display: flex;
		flex-direction: column-reverse;
		justify-content: center;
		margin: 2rem auto 2rem auto;
	}
	
	.news-contents01>div{
		display: flex;
		flex-direction: column;		
	}
	.news-contents02>div{
		display: flex;
		flex-direction: column;		
	}
	
	.news-item01{
		font-size: 22px;
	}
	.news-item02{
		padding-bottom: 2rem;
	}
	
	.news-item03{
		width: 300px;
		height: auto;
		border-radius: 0.5rem;
	    display: block;
		margin-bottom: 1rem;
	}
	.open {
	cursor:pointer;
}
#pop-up {
	display: none;
}
.overlay {
	display: none;
}
#pop-up:checked + .overlay {
	display: block;
	position: fixed;
	width: 100%;
	height: 100vh;
	top: 0;
	left: 0;
	z-index: 9999;
	background: rgba(0, 0, 0, 0.6);
}
.window {
	position: fixed;
	top: 50%;
	left: 50%;
	width: 90vw;
	max-width: 360px;
    padding: 20px;
	height: 300px;
	background-color: #fff;
	border-radius: 4px;
	align-items: center;
	transform: translate(-50%, -50%);
}
.close {
	position: absolute;
	top: 4px;
	right: 4px;
	cursor:pointer;
}
	
		
  /*=====ニュースエリア=====*/
	/*=====予約エリア=====*/
	#reservation{
		width: 100%;
		margin: 3rem auto ;
		
	}
	
	.reservation-p{
		display: block;
		width: 80%;
		margin: 2rem auto 1rem auto;
		font-size:14px;
		padding-top: 2rem;
		text-align: center;
	}
	.reservation-p1{
		display: block;
		width: 75%;
		margin: 0 auto 1rem auto;
		font-size:10px;
		text-align: center;
	}


	#reservation .reservation-icon img{
		width: 88px;
	}
	#reservation .reservation-icon dl{
		justify-content: center;
		width: 178px;
		height: 178px;
		background-color: rgba(244,174,175,0.5);
		border-radius: 50%;
		margin-top: 1rem;
	}
	
	#reservation .reservation-icon .hpb .original-button,#reservation .reservation-icon .tel .original-button{
		font-size: 11px;
		padding: 0 0.5rem;
		transition: background-color 1s;
	}
	#reservation .reservation-icon .hpb .original-button:hover,#reservation .reservation-icon .tel .original-button:hover{
		background-color: #FFFAFA; 
		font-weight: 600;
	}
	
	
	/*=====予約エリア=====*/
}
@keyframes rotate {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@keyframes fadeLeftAnime {
  from {
    opacity: 0;
    transform: translateX(-100px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes fadeRightAnime {
  from {
    opacity: 0;
    transform: translateX(100px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
	
}
@keyframes rotateYAnime{
  from{
    transform: rotateY(0);
    }
  to{
    transform: rotateY(-360deg);
    }
}



/*=================タブレット=================*/
@media (min-width:768px) {
  /*=====TOPview=====*/
  .top-i {
    width: 100%;
    height: auto;
    padding-top: 72px;
    overflow-x: hidden;
    overflow-y: hidden;
  }
  .top-i h2 {
    display: block;
    margin: 0.5rem;
    font-size: 45px;
    line-height: 1.2;
    color: #0C4A6F;
    font-family: "Bacasime Antique", serif;
    font-weight: 400;
    font-style: normal;
    animation-name: fadeRightAnime;
    animation-duration: 3s;
    animation-fill-mode: forwards;
    opacity: 0;
  }
  .fadeRight > br {
    display: none;
  }
  .top_img_box02 {
    width: 100%;
    height: auto;
    padding-right: 10%;
    /*background: url("img/top_sp_04.png");
		background-position: bottom left;
		background-repeat: no-repeat;
		background-size:cover;*/
    position: relative;
    display: block;
  }
  .pc-top {
    display: block;
    clip-path: inset(0 5% 0 0 round 0 5rem 5rem 0);
    animation-name: fadeLeftAnime;
    animation-duration: 3.2s;
    animation-fill-mode: forwards;
    opacity: 0;
    margin-top: 10px;
  }
  .top_img_box01, .sp-top, .top_img_box01 > .down {
    display: none;
  }
  .top_img_box02 > .down {
    display: block;
    width: 150px;
    position: absolute;
    z-index: 100;
    bottom: 0;
    right: 1rem;
    margin-right: 1rem;
    animation: rotate 30s linear infinite;
  }
  /*=====TOPview=====*/
  /*=====コンセプトエリア=====*/
	.concept {
    margin-top: 2rem;
    /*padding: 0 1rem; */
    display: flex;
    flex-direction: column;
	width: 100%;	
  }
  .concept h4 {
    font-family: "Zen Old Mincho", serif;
    font-weight: 400;
    font-style: normal;
    font-size: 28px;
    line-height: 1.8;
    text-shadow: 2px 3px 3px rgba(126, 138, 221, 0.31);
    color: #F9C4C7;
    padding: 0 3rem;
  }
  .concept-box {
    order: 3;
	width: 80%;  
    background-color: #0C4A6F;
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    position: relative;
    margin: 2rem 2rem 2rem 0;
    font-size: 20px;
    padding: 1rem;
    border-radius: 0 5rem 5rem 0;
  }
  .concept-in {
    padding: 0 1rem;
	width: 80%;  
  }
  .concept-in > h4 {
    font-size: 20px;
    color: #FFFAFA;
    margin: 18px 0;
    padding: 0;
  }
  .concept-box p {
    font-size: 14px;
    color: #FFFAFA;
    margin: 10px 0;
  }
  .img_f img {
    width: 17%;
    position: absolute;
    top: -80px;
    right: -15px;
  }
  .img_box img {
    padding: 1rem 10px;
  }
  .owner-box {
    width: 70%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 0 1rem;
    margin: 0 0 1rem 30%;
  }
  .staffowner {
    width: 250px;
    border-radius: 2rem;
    filter: drop-shadow(3px 3px 3px #aaa);
  }
  .owner-box > dd {
    display: block;
    margin: 0.3rem auto;
  }
  .owner-box span {
    padding-left: 1em;
  }
  .owner-box > dd:last-child {
    font-family: "Zen Old Mincho", serif;
    font-weight: 400;
    font-style: normal;
    font-size: 14px;
    line-height: 1.5;
    width: 70%;
  }
  .staff-name, .staff-name-i {
    letter-spacing: 0.1em;
  }
  /*=====コンセプトエリア=====*/
  /*=====店内スライド=====*/
  .in-store {
    margin: 3rem 0;
  }
  .slider img {
    width: 100%; /*スライダー内の画像を横幅100%に*/
    height: auto;
  }
  .slider .slick-slide {
    margin: 0 1rem; /*スライド左右の余白調整*/
  }
  /*=====店内スライド=====*/
	/*=====スタッフエリア=====*/
	#staff {
    margin: 1rem auto 5rem auto;
  }
  .staff-wrap {
    display: flex;
    align-items: center;
	flex-wrap: wrap;
	justify-content: space-around;
	max-width: 900px;
	margin: 0 auto;  
  }
  .staff-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 2.5rem;
    width: 255px;
	overflow: hidden;  
  }
  .staff-box dd {
    display: block;
    margin: 0.2rem auto 0.2rem 0;
  }
  .staff-p {
    font-size: 22px;
    margin-top: 0.1rem;
    position: relative;
  }
  	.staff-p a{
		width: 42px;
		height: 41px;
	}
	
	
  .staff-p a::after {
    content: url("../img/instagram_icon.png");;
    display: inline-block;
    width: 42px;
    height: 41px;
    vertical-align: bottom;
    /* background: url(../img/instagram_icon.png) no-repeat;*/
    transform: scale(0.028);
    position: absolute;
    top: -21px;
    right: -42px;
  }
  .staff-box > .staff-name {
    font-size: 18px;
  }
  .staff-name-i {
    font-size: 17px;
  }
  .staff-box img {
    width: 300px;
    height: auto;
    border-radius: 2rem;
    margin-bottom: 20px;
	animation-name:rotateYAnime;
    animation-duration:2.5s;
    animation-fill-mode:forwards;
  }

	
  .staff-box span {
    padding-left: 1em;
  }
  .staff-box > dd:last-child {
    font-family: "Zen Old Mincho", serif;
    font-weight: 400;
    font-style: normal;
    font-size: 16px;
    line-height: 1.5;
  }
	/*=====スタッフエリア=====*/
  /*=====ニュースエリア=====*/
	.news {
	width: 100%;	
    margin: 2rem auto;
    padding: 4rem 0;
	background: url("../img/news_pc_back.jpg");
	background-position: center;
	background-repeat: no-repeat;	
  }
	.news-inner{
	background-color:rgba(255,255,255,0.7);
	width: 90%;
	margin: 0 auto;
	padding: 0.1rem 1rem 2rem 1rem;
	overflow: hidden;	
	}
	.news-contents01{
		width: 280px;
		display: flex;
		flex-direction: column-reverse;
		justify-content: center;
		margin: 2rem 0rem 2rem 0.5rem;
		float: left;
	}
	.news-contents02{
		width: 280px;
		display: flex;
		flex-direction: column-reverse;
		justify-content: center;
		margin: 2rem 0 2rem 3rem;
		float: inline-start;
	}
	
	.news-contents01>div{
		display: flex;
		flex-direction: column;		
	}
	.news-contents02>div{
		display: flex;
		flex-direction: column;		
	}
	
	.news-item01{
		font-size: 22px;
	}
	.news-item02{
		padding-bottom: 2rem;
	}
	
	.news-item03{
		width: 300px;
		height: auto;
		border-radius: 0.5rem;
	    display: block;
		margin-bottom: 1rem;
	}
	
		
  /*=====ニュースエリア=====*/
	/*=====予約エリア=====*/
	#reservation{
		width: 100%;
		margin: 3rem auto ;
		
	}
	
	.reservation-p{
		display: block;
		width: 80%;
		margin: 2rem auto 1rem auto;
		font-size:14px;
		padding-top: 2rem;
		text-align: center;
	}
	.reservation-p1{
		display: block;
		width: 75%;
		margin: 0 auto 1rem auto;
		font-size:10px;
		text-align: center;
	}
	#reservation .reservation-icon {
    display: flex;
    justify-content: space-evenly;
  }
	
	
     #reservation .reservation-icon dl {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
  }

	#reservation .reservation-icon img{
		width: 120px;
	}
	#reservation .reservation-icon .hpb img{
		margin-bottom: 1rem;
	}
	
	
	#reservation .reservation-icon dl{
		justify-content: center;
		width: 230px;
		height: 230px;
		background-color: rgba(244,174,175,0.5);
		border-radius: 50%;
		margin-top: 1rem;
	}
	
	#reservation .reservation-icon .hpb .original-button,#reservation .reservation-icon .tel .original-button{
		font-size: 11px;
		padding: 0 0.5rem;
		transition: background-color 1s;
	}
	#reservation .reservation-icon .hpb .original-button:hover,#reservation .reservation-icon .tel .original-button:hover{
		background-color: #FFFAFA; 
		font-weight: 600;
	}
	
	/*=====予約エリア=====*/
}
@keyframes fadeLeftAnime {
  from {
    opacity: 0;
    transform: translateX(-100px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes fadeRightAnime {
  from {
    opacity: 0;
    transform: translateX(100px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
/*=================PC=================*/
@media (min-width:960px) {
  /*=====TOPview=====*/
  .top-i {
    width: 100%;
    height: auto;
    padding-top: 72px;
    overflow-x: hidden;
    overflow-y: hidden;
  }
  .top-i h2 {
    display: block;
    margin: 0.5rem;
    font-size: 60px;
    line-height: 1.2;
    color: #0C4A6F;
    font-family: "Bacasime Antique", serif;
    font-weight: 400;
    font-style: normal;
    animation-name: fadeRightAnime;
    animation-duration: 3s;
    animation-fill-mode: forwards;
    opacity: 0;
    margin-top: 30px;
  }
  .fadeRight > br {
    display: none;
  }
  .top_img_box02 {
    width: 100%;
    height: auto;
    padding-right: 10%;
    /*background: url("img/top_sp_04.png");
		background-position: bottom left;
		background-repeat: no-repeat;
		background-size:cover;*/
    position: relative;
    display: block;
  }
  .pc-top {
    display: block;
    clip-path: inset(0 3% 0 0 round 0 5rem 5rem 0);
    animation-name: fadeLeftAnime;
    animation-duration: 3.2s;
    animation-fill-mode: forwards;
    opacity: 0;
    margin-top: 10px;
  }
  .top_img_box01, .sp-top, .top_img_box01 > .down {
    display: none;
  }
  .top_img_box02 > .down {
    display: block;
    width: 200px;
    position: absolute;
    z-index: 100;
    bottom: 0;
    right: 1rem;
    margin-right: 1rem;
    animation: rotate 30s linear infinite;
  }
  /*=====TOPview=====*/
  /*=====コンセプトエリア=====*/
	.concept {
    margin-top: 2rem;
    /*padding: 0 1rem; */
    display: flex;
    flex-direction: column;
	width: 100%;
	position: relative;
	margin-bottom: 5rem;	
  }
  .concept h4 {
    font-family: "Zen Old Mincho", serif;
    font-weight: 400;
    font-style: normal;
    font-size: 28px;
    line-height: 1.8;
    text-shadow: 2px 3px 3px rgba(126, 138, 221, 0.31);
    color: #F9C4C7;
    padding: 0 3rem;
  }
  .concept-box {
    /*order: 3;*/
	width: 60%;  
    background-color: #0C4A6F;
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    position: absolute;
	bottom: 0;  
    margin: 2rem 2rem 2rem 0;
    font-size: 20px;
    padding: 1rem;
    border-radius: 0 5rem 5rem 0;
  }
  .concept-in {
    padding: 0 1rem;
  }
  .concept-in > h4 {
    font-size: 18px;
    color: #FFFAFA;
    margin: 18px 0 25px 0;
    padding: 0;
  }
  .concept-box p {
    font-size: 14px;
    color: #FFFAFA;
    margin: 10px 0 25px 0;
  }
  .img_f img {
    width: 17%;
    position: absolute;
    top: -50px;
    right: -50px;
  }
  .img_box img {
    padding: 0 7px;
  }
  .owner-box {
    width: 30%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin: 0 0 0 63%;
	padding: 0;  
  }
  .staffowner {
    width: 250px;
    border-radius: 2rem;
    filter: drop-shadow(3px 3px 3px #aaa);
  }
  .owner-box > dd {
    display: block;
    margin: 0.2rem auto;
  }
  .owner-box span {
    padding-left: 1em;
  }
  .owner-box > dd:last-child {
    font-family: "Zen Old Mincho", serif;
    font-weight: 400;
    font-style: normal;
    font-size: 14px;
    line-height: 1.5;
    width: 70%;
  }
  .staff-name, .staff-name-i {
    letter-spacing: 0.1em;
  }
  /*=====コンセプトエリア=====*/
	 /*=====スタッフエリア=====*/
	/*タブレットサイズと変更なし*/
	 /*=====スタッフエリア=====*/
  /*=====店内スライドエリア=====*/
	/*タブレットサイズと変更なし*/
  /*=====店内スライドエリア=====*/
  /*=====ニュースエリア=====*/
	.news-inner{
	background-color:rgba(255,255,255,0.7);
	width: 80%;
	margin: 0 auto;
	padding: 0.1rem 1rem 2rem 1rem;
	overflow: hidden;	
	}
	
	
	.news-contents01{
		width: 300px;
		display: flex;
		flex-direction: column-reverse;
		justify-content: center;
		margin: 2rem 0 2rem 2rem;
		float: left;
	}
	.news-contents02{
		width: 300px;
		display: flex;
		flex-direction: column-reverse;
		justify-content: center;
		margin: 2rem 0 2rem 4rem;
		float: inline-start;
	}
	
  /*=====ニュースエリア=====*/
	/*=====予約エリア=====*/
	
	.reservation-p{
		display: block;
		width: 80%;
		margin: 2rem auto 1rem auto;
		font-size:18px;
		padding-top: 2rem;
		text-align: center;
	}
	.reservation-p1{
		display: block;
		width: 80%;
		margin: 0 auto 1rem auto;
		font-size:14px;
		text-align: center;
	}


	#reservation .reservation-icon img{
		width: 150px;
	}
	#reservation .reservation-icon .hpb img{
		margin-bottom: 1rem;
	}
	
	
	#reservation .reservation-icon dl{
		justify-content: center;
		width: 300px;
		height: 300px;
		background-color: rgba(244,174,175,0.5);
		border-radius: 50%;
		margin-top: 1rem;
	}	
	
	
	/*=====予約エリア=====*/
}
@keyframes fadeLeftAnime {
  from {
    opacity: 0;
    transform: translateX(-100px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes fadeRightAnime {
  from {
    opacity: 0;
    transform: translateX(100px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}