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

/* =============================================================================
   Reset
   ========================================================================== */

*{
	padding:0px;
	margin:0px;
}

html {
    font-size: 100%;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {
	margin:0;
	padding:0;
}
table {
	border-collapse:collapse;
	border-spacing:0;
}
fieldset,img {
	border:0;
}
address,caption,cite,code,dfn,em,th,var {
	font-style:normal;
	font-weight:normal;
}
ol,ul {
	list-style:none;
	overflow:hidden;
}
caption,th {
	text-align:left;
}
h1,h2,h3,h4,h5,h6 {
	font-size:100%;
	font-weight:normal;
}
q:before,q:after {
	content:'';
}
abbr,acronym { border:0;
}
img{
	vertical-align:bottom;
}
form {
	margin: 0px;
	padding: 0px;
}

/* =============================================================================
   Base
   ========================================================================== */

body {
	font-family:"Noto Serif JP","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	font-size: 14px;
	line-height:1.8;
	color: #000;
	/* background-color:#FFF; */
	background: url("/img/top_bg.jpg") #000 no-repeat fixed center top / cover;
}

/*
#base_data, .main_title {
	background: #FFF;
}
*/

#wrapper {
	/* background: url(/img/wrapper_bg.png) repeat-y center top; */
}

#main {
	/* background:url(/img/contents_bg.jpg) no-repeat center top; */
	width:100%;
	height:auto;
	min-height:800px;
}

.container{
	width:1080px;
	margin:0 auto;
	overflow:hidden;
}

.wrapper{
}

.photo{
	text-align:center;
}

.thum{
	float:left;
}

.thumr{
	float:right;
}

#gnavi {
    background-color: #000F3F;
}
#gnavi .container {
	width:1194px;
	margin:0 auto;
	overflow:hidden;
}
#gnavi ul {
}
#gnavi li {
    float: left;
    border-right: 1px solid #0029A2;
}
#gnavi li:first-child {
	border-left: 1px solid #0029A2;
}
#gnavi li img {
}
.fixed {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 10000;
}
#base_data {
    font-size: 10px;
    padding: 7px 0;
}
#base_data .container {
}
#base_data h1 {
    float: right;
}
#base_data .crumb {
	text-align:left;
}
#base_data a {
    text-decoration: none;
}
.main_title {
    text-align: center;
    padding: 25px 0 50px;
    line-height: 1.3;
}
.main_title span {
    display: block
}
.main_title .title_line {
}
.main_title .jp {
    font-size: 30px;
    letter-spacing: 0.25em;
    color: #000;
    text-indent: 10px;
}
.main_title .en {
    color: #000;
    display: inline-block;
    font-family:"Noto Serif JP","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
    font-size: 14px;
    font-weight: bold;
    letter-spacing: 0.5em;
    margin: 0 10px 0 20px;
}
.main_title .line_group {
    margin: 10px 0;
    overflow: hidden;
}
.main_title .title_line {
    background-color: #000;
    display: inline-block;
    height: 1px;
    margin: 0 auto;
    vertical-align: super;
    width: 40px;
}
.main_title .bn_title {
}
.btn_more {
    margin: 50px 0;
	opacity: 1;
	display:inline-block;
}
.btn_more span {
  color:#FFFFFF;
  display:inline-block;
  float:right;
  margin-left:-20px;
  padding-right:15px;
  position:relative;
  z-index:500;
}
.btn_more:after {
}
.btn_more a {
    color: #FFF !important;
	background-color:#2B61FF;
    font-size: 16px;
    letter-spacing: 0.05em;
    padding: 15px 100px;
}
.btn_more a:hover {
    background-color:#DDDDDD;
	color:#000F3F !important;
	transition: all 0.3s ease-in-out 0s;
}
.btn_more a:hover span {
	color:#000F3F !important;
}
.btn_more a:link, .btn_more a:hover, .btn_more a:visited{
	text-decoration:none;
}


/* =============================================================================
   Header
   ========================================================================== */

#header {
	padding:2px 0;
	background-color: #FFF;
}

#header .container {
}

#header #logo {
    float: left;
}

#header #bn_tel {
    float: right;
    margin:0 20px 0 0;
}

#header .container a {
}

#bn_tel {
    float: right;
}

#btn_member {
    float: right;
}

/* =============================================================================
   Effect
   ========================================================================== */

.button {
    color: #fff;
    display: inline-block;
    padding: 0.6em 0;
    position: relative;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    width: 14em;
    font-size: 14px;
}

.button--border {
  transition: all 0.4s;
  border: none;
  background-repeat: no-repeat;
  background-image: linear-gradient(to left, #6AF0DB 0%, #5FB4F0 100%), linear-gradient(to bottom, #6AF0DB 0%, #6AF0DB 100%), linear-gradient(to right, #5FB4F0 0%, #6AF0DB 100%), linear-gradient(to top, #5FB4F0 0%, #5FB4F0 100%);
  overflow: hidden;
  z-index: 1;
  background-position: 0 0, 100% 0, 100% 100%, 0 100%;
  background-size: 0% 3px, 3px 0%, 0% 3px, 3px 0%;
}
.button--border.in {
  background-size: 100% 3px, 3px 100%, 100% 3px, 3px 100%;
}
.button--border.in:after {
  opacity: 0;
  transition: 0s all;
  content: '';
  display: block;
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  background-repeat: no-repeat;
  background-image: linear-gradient(to left, #6AF0DB 0%, #5FB4F0 100%), linear-gradient(to bottom, #6AF0DB 0%, #6AF0DB 100%), linear-gradient(to right, #5FB4F0 0%, #6AF0DB 100%), linear-gradient(to top, #5FB4F0 0%, #5FB4F0 100%);
  background-position: 0 0, 100% 0, 100% 100%, 0 100%;
  background-size: 100% 3px, 3px 100%, 100% 3px, 3px 100%;
}
.button--border.ready:after {
  opacity: 1;
}
.button--border:before {
  content: '';
  position: absolute;
  height: 400%;
  width: 0%;
  transform-origin: center;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-45deg);
  background-image: linear-gradient(to left, #6AF0DB 0%, #5FB4F0 100%);
  transition: all 0.4s;
  z-index: -1;
}
.button--border:hover {
  letter-spacing: 0.1em;
  cursor: pointer;
}
.button--border:hover:before {
  width: 100%;
}

.button--svg {
  color: #fff;
  padding: 1em 3em;
  border: none;
  position: relative;
  display: inline-block;
}
.button--svg:hover rect {
  stroke-width: 5;
  stroke-dasharray: 15, 200;
  stroke-dashoffset: 48;
}
.button--svg svg {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}
.button--svg rect {
  stroke-width: 6px;
  stroke-dasharray: 700, 0;
  transition: all 1.35s cubic-bezier(0.19, 1, 0.22, 1);
}

@keyframes enter {
  0% {
    stroke-dashoffset: 700;
  }
  100% {
    stroke-dashoffset: 0;
  }
}

/* ------- */

.effect  img {
	-webkit-transform: scale(1);
	transform: scale(1);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
.effect :hover img {
	-webkit-transform: scale(1.3);
	transform: scale(1.3);
}

/* ------- */

.btn-fr {
	position: relative;
	display: inline-block;
	/* padding: .9em 3.6em; */
	border: 2px solid #000F3F;
	color: #fff;
	text-align: center;
	text-decoration: none;
	outline: none;
	transition: all .2s;
}
.btn-fr::before,
.btn-fr::after {
	position: absolute;
	z-index: 2;
	content: '';
	width: 0;
	height: 0;
	border: 2px solid transparent;
}
.btn-fr::before {
	top: -2px;
	left: -2px;
}
.btn-fr::after {
	bottom: -2px;
	right: -2px;
}
.btn-fr:hover {
	background-color:#2B61FF;
}
.btn-fr:hover::before,
.btn-fr:hover::after {
	width: 100%;
	height: 100%;
}
.btn-fr:hover::before {
	border-bottom-color: #2B61FF;
	border-left-color: #2B61FF;
	transition: height .3s, width .3s .3s;
}
.btn-fr:hover::after {
	border-top-color: #2B61FF;
	border-right-color: #2B61FF;
	transition: height .3s, width .3s .3s;
}

/* ------- */

.moved img {
	vertical-align: bottom;
}
.moved figure {
	width: 240px;
	height: 240px;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
	background: #271C09;
}
.moved figcaption p {
	font-size: 12px;
}
.moved {
	color: #fff;
}
.moved a{
	color: #fff !important;
}
.moved figure:after {
	position: absolute;
	background: #fff;
	content: "";
	display: block;
	width: 90%;
	height: 1px;
	left: 5%;
	top: 50%;

	-webkit-transform: scale(0);
	-moz-transform: scale(0);
	transform: scale(0);
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	transition: all .3s ease-out;
}
.moved figure:hover:after {
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	transform: scale(1);
}
.moved figcaption .txt,
.moved figcaption .title {
	position: absolute;
	text-align: center;
	width: 100%;
	opacity: 0;
	-webkit-transition: all .3s ease-out .4s;
	-moz-transition: all .3s ease-out .4s;
	transition: all .3s ease-out .4s;
}
.moved figcaption .title {
	bottom: 51%;
	-webkit-transform: translateY(-30px);
	-moz-transform: translateY(-30px);
	transform: translateY(-30px);
	overflow:hidden;
	text-overflow: ellipsis;
	white-space:nowrap;
	width: 92%;
	left:12px;
	font-size:16px;
}
.moved figcaption .txt {
	top: 52%;
	-webkit-transform: translateY(30px);
	-moz-transform: translateY(30px);
	transform: translateY(30px);
	overflow:hidden;
	text-overflow: ellipsis;
	white-space:nowrap;
	width: 92%;
	left:12px;
}
.moved figure:hover figcaption .txt,
.moved figure:hover figcaption .title {
	opacity: 1;
	-webkit-transform: translateY(0);
	-moz-transform: translateY(0);
	transform: translateY(0);
}

.moved figure img {
	-webkit-transition: all 1.2s ease-out;
	-moz-transition: all 1.2s ease-out;
	transition: all 1.2s ease-out;
}
.moved figure:hover img {
	opacity: .4;
	-webkit-transform: scale(1.3);
	-moz-transform: scale(1.3);
	transform: scale(1.3);
}

/* ------- */

.main_effect {
	position: relative;
	overflow: hidden;
}
.main_effect figcaption {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 200;
	width: 100%;
	height: 100%;
	background: rgba(95,69,32,0.85);
	-webkit-transform: rotate(90deg) scale(0);
	transform: rotate(90deg) scale(0);
	-webkit-transition: .3s;
	transition: .3s;
	opacity: 0;
}
.main_effect:hover figcaption {
	-webkit-transform: rotate(360deg) scale(1);
	transform: rotate(360deg) scale(1);
	opacity: 1;
}
.main_effect .comment {
    color: #fff;
    font-size: 15px;
    font-style: italic;
    letter-spacing: 0.08em;
    line-height: 1.2;
    padding: 10px 0;
    text-align: center;
    width: 90%;
	text-align:center;
	margin: 45% auto 0;
	-webkit-transform: rotate(-5deg) scale(1);
	transform: rotate(-5deg) scale(1);
}
.main_effect .en_name {
	font-family: "Cookie", cursive;
	font-style: italic;
	font-size: 54px;
	margin:0 0 10%;
}
@media screen and (max-width: 1680px){
.main_effect .en_name {
	font-size: 48px;
}
}

.main_effect .innner-comment {
}


/*
	ボタンエフェクト
*/

.b07_3d_double_roll {
    perspective: 500px;
    -webkit-perspective: 500px;
    -moz-perspective: 500px;
    transform-style: preserve-3d;
    -webkit-transform-style: preserve-3d;
}

.b07_3d_double_roll div {
    position: absolute;
    text-align: center;
    padding: 10px;
    pointer-events: none;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
}

.b07_3d_double_roll div:nth-child(1) {
    color: #FFF;
    background-color: #EF64A8;
    z-index: 0;
    width: 100%;
    height: 50px;
    clip: rect(0px, 100px, 50px, 0px);
    position: absolute;
    transition: all 0.2s ease;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    transform: rotateX(0deg);
    -webkit-transform: rotateX(0deg);
    -moz-transform: rotateX(0deg);
    transform-origin: 50% 50% -25px;
    -webkit-transform-origin: 50% 50% -25px;
    -moz-transform-origin: 50% 50% -25px;
}

.b07_3d_double_roll div:nth-child(2) {
    color: #FFF;
    background-color: #71B5D8;
    z-index: -1;
    width: 100%;
    height: 50px;
    clip: rect(0px, 100px, 50px, 0px);
    position: absolute;
    transform: rotateX(90deg);
    -webkit-transform: rotateX(90deg);
    -moz-transform: rotateX(90deg);
    transition: all 0.2s ease;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    transform-origin: 50% 50% -25px;
    -webkit-transform-origin: 50% 50% -25px;
    -moz-transform-origin: 50% 50% -25px;
}

.b07_3d_double_roll div:nth-child(3) {
    color: #FFF;
    background-color: #EF64A8;
    z-index: 0;
    width: 100%;
    height: 50px;
    clip: rect(0px, 200px, 50px, 100px);
    position: absolute;
    transition: all 0.2s ease 0.1s;
    -webkit-transition: all 0.2s ease 0.1s;
    -moz-transition: all 0.2s ease 0.1s;
    transform: rotateX(0deg);
    -webkit-transform: rotateX(0deg);
    -moz-transform: rotateX(0deg);
    transform-origin: 50% 50% -25px;
    -webkit-transform-origin: 50% 50% -25px;
    -moz-transform-origin: 50% 50% -25px;
}

.b07_3d_double_roll div:nth-child(4) {
    color: #FFF;
    background-color: #71B5D8;
    z-index: -1;
    width: 100%;
    height: 50px;
    clip: rect(0px, 200px, 50px, 100px);
    position: absolute;
    transform: rotateX(-90deg);
    -webkit-transform: rotateX(-90deg);
    -moz-transform: rotateX(-90deg);
    transition: all 0.2s ease 0.1s;
    -webkit-transition: all 0.2s ease 0.1s;
    -moz-transition: all 0.2s ease 0.1s;
    transform-origin: 50% 50% -25px;
    -webkit-transform-origin: 50% 50% -25px;
    -moz-transform-origin: 50% 50% -25px;
}

.b07_3d_double_roll:hover div:nth-child(1) {
    background-color: #000000;
    transition: all 0.2s ease;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    transform: rotateX(-90deg);
    -webkit-transform: rotateX(-90deg);
    -moz-transform: rotateX(-90deg);
}

.b07_3d_double_roll:hover div:nth-child(2) {
    color: #ffffff;
    transition: all 0.2s ease;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    transform: rotateX(0deg);
    -webkit-transform: rotateX(0deg);
    -moz-transform: rotateX(0deg);
}

.b07_3d_double_roll:hover div:nth-child(3) {
    background-color: #000000;
    transition: all 0.2s ease 0.1s;
    -webkit-transition: all 0.2s ease 0.1s;
    -moz-transition: all 0.2s ease 0.1s;
    transform: rotateX(90deg);
    -webkit-transform: rotateX(90deg);
    -moz-transform: rotateX(90deg);
}

.b07_3d_double_roll:hover div:nth-child(4) {
    color: #ffffff;
    transition: all 0.2s ease 0.1s;
    -webkit-transition: all 0.2s ease 0.1s;
    -moz-transition: all 0.2s ease 0.1s;
    transform: rotateX(0deg);
    -webkit-transform: rotateX(0deg);
    -moz-transform: rotateX(0deg);
}

/*----- フェードイン -----*/
.inviewfadeIn {
	opacity: 0;
	transition: .8s;
}

.fadeIn {
	opacity: 1.0;
}

/*----- 上へスライド -----*/
.inviewUp {
	transform: translate(0, 40px);
	-webkit-transform: translate(0, 40px);
	transition: .8s;
}

.Up {
	transform: translate(0, 0);
	-webkit-transform: translate(0, 0);
}

/*----- ズームイン -----*/
.inviewzoomIn {
	transform: scale(0, 0);
	-webkit-transform: scale(0, 0);
	transition: .8s;
}

.zoomIn {
	transform: scale(1, 1);
	-webkit-transform: scale(1, 1);
}

/*----- フェードインしながら上へスライド -----*/
.inviewfadeInUp {
	opacity: 0;
	transform: translate(0, 60px);
	-webkit-transform: translate(0, 60px);
	transition: .8s;
}

.fadeInUp {
	opacity: 1.0;
	transform: translate(0, 0);
	-webkit-transform: translate(0, 0);
}

/* Zoom In #1 */
.hover01 figure img {
	-webkit-transform: scale(1);
	transform: scale(1);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
.hover01 figure:hover img {
	-webkit-transform: scale(1.3);
	transform: scale(1.3);
}


/* =============================================================================
   Footer
   ========================================================================== */

#footer {
    padding: 40px 0;
    text-align: center;
    width: 100%;
	/* background-color: #FFF; */
}
#footer ul {
    margin: 30px 0;
	font-size:12px;
}
#footer li {
    display: inline-block;
}
#footer li a {
    text-decoration: none;
}
#footer_base {
}
#footer_base h2 {
	margin:0 0 25px;
}
#footer_base .shop_name {
    font-weight: bold;
}
#footer_base .shop_detaile {
}
#footer_base .map {
    margin: 20px 0;
}
address {
    font-size: 15px;
	font-family: "Pathway Gothic One", sans-serif;
}

.sister{margin:15px auto 40px; width:550px;}
.sister > ul{display: flex;margin:10px 0 !important;}
.sister > ul li{margin:0 1%;width:50%;text-align:center;}

/* =============================================================================
   Link
   ========================================================================== */

a {
	transition: color .3s;
}

#footer a, .texteffect a {
	position: relative;
	display: inline-block;
	transition: .3s;
}
#footer a::after, .texteffect a::after {
	position: absolute;
	bottom: 0;
	left: 0;
	content: '';
	width: 0;
	height: 1px;
	background-color: #000;
	transition: .3s;
}
#footer a:hover::after, .texteffect a:hover::after {
	width: 100%;
}

a:link, a:hover ,a:visited{
	/* text-decoration:underline; */
	color: #000;
}
a:hover, a:hover img {
	filter:Alpha(opacity=100) ;
	opacity:1.0 ;
	-moz-opacity:1.0;
}
