@charset "utf-8";


/* =import 
----------------------------------------------*/
@import url(reset.css);
@import url(layout.css);
@import url(list.css);
@import url(detail.css);
a{
  transition: .3s;
}
a:hover{
  opacity: .75;;
}
/* hn
------------------------------------------- */
h1{
  height: auto;
}
h1 a{
  display: block;
  width: 190px;
  height: 60px;
  background: url("../images/logo.svg") no-repeat center center / 190px 60px;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  margin: 0 auto 40px;
}
#header h1{
}
#footer h1 a{
  width: 240px;
  height: 76px;
  background: url("../images/logo.svg") no-repeat center center / 240px 76px;
}

h3{
	margin-bottom:20px;
	}
h3#toptitle{
	font-family:"ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
	font-size:280%;
	margin:0 0 50px 0;
	font-weight:100;
	letter-spacing:0.1em;
	line-height:1.1em;
	color:#194a70;
	}
#topmessage{
	font-family:"ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
	font-size:140%;
	margin:-13px 0 20px 0;
	font-weight:100;
	letter-spacing:0.1em;
	line-height:1.1em;
	color:#194a70;
	}


/* link
------------------------------------------- */
a:link{ color:#194a70; text-decoration:underline; }
a:hover{ color:#60829c; text-decoration:none; }
a:visited{ color:#194a70; text-decoration:underline; }
*{
  box-sizing: border-box;
}
/* common
------------------------------------------- */
.section{
width:100%;
height:auto;
text-align:left;
}
.section p{
margin-bottom:20px;
}
.caution{
	color:#194a70;
	}
.section .center{
text-align:center;
}

.txt_center{
  text-align: center !important;
}


/* g-navi
------------------------------------------- */
#gnavi{
	width:100%;
  margin: 0 auto;
  display: block;
  height: 68px;
	}
#gnavi li{
  float:left;
  width:24.8%;
  margin: 0 .1%;
}

#gnavi li a{
  width: 100%;
	display:block;
	overflow:hidden;
  text-decoration: none;
  padding: 22px 0;
  background: #194a70;
  color: #FFF;
  font-weight: 700;
  text-indent: 2px;
  letter-spacing: 2px;
  line-height: 1.8;
  font-size: 17px;
	}
#gnavi:lang(en) li a{
  padding: 22px 0;
}


/* topbox
------------------------------------------- */
#topbox{
	position:absolute;
	top:-10px;
	right:0;
	}
#topbox span{
	padding-right:8px;
	}


/* info
------------------------------------------- */
#info .news{
	text-align:left;
	}
.news h2{
  font-size: 18px;
  letter-spacing: 4px;
  text-indent:4px;
  font-weight: 700;
  color: #222;
  text-align: center;
  margin-bottom: 20px;
}
#info .news ul{
/*
border-top: #222 dotted 3px;
border-bottom: #222 dotted 3px;
padding: 30px 20px;
background: #FFF;
*/
margin-bottom: 40px;
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-pack: start;
-ms-flex-pack: start;
justify-content: flex-start;
-ms-flex-wrap: wrap;
flex-wrap: wrap;

  }
#info .news ul li{
width:23%;
padding:0;
flex-shrink: 0;
margin:0 1% 20px;
}

#info .news ul li a{
  text-overflow: ellipsis;
  text-decoration: none;
  padding: 10px;
  background: #FFF;
  display: block;
  box-shadow:0px 13px 20px 0px rgba(0,0,0,.1);
	height:100%;
  }
#info .news ul li a i{
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
margin-bottom: 10px;
height: 160px;
overflow: hidden;
  }
#info .news ul li a i img{
flex-shrink: 0;
  }
  #info .news ul li a strong{
	  display: block;
  }
 #info .news ul li a span{
    display: inline-block;
    padding: 2px 0;
    text-align: center;
    font-size: 90%;
    background: #194a70;
    color: #FFF;
    margin-right: 20px;
    width: 70px;
	  margin-bottom: 10px;
     }
 #info .news ul li a time{
	 
 }
 #info .news ul li a:hover{
  box-shadow:0px 13px 20px 0px rgba(0,0,0,0);
 }
 #info .news ul li a:hover img{
	 opacity: .7;
 }
.flex{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  justify-content: space-between;
  text-align: center;
}
.flex >*{
  width: 48%;
}

.store h2{
  font-size: 18px;
  letter-spacing: 4px;
  text-indent:4px;
  font-weight: 700;
  color: #222;
  text-align: center;
  margin-bottom: 20px;
}
.store .banner{
  border-top: #222 dotted 3px;
  border-bottom: #222 dotted 3px;
  padding: 37px 20px ;
  background: #FFF;
  margin-bottom: 40px;
  }
.store .banner a{
  display: block;
  width:100%;
  background: #FFF;
  text-decoration: none;
	}
.store .banner a:hover{
	}
.store .banner a span{
  display: inline-block;
}
.store .banner a span img{
  height: 40px;
  width: 50px;
  margin-right: 20px;
  margin-bottom: -10px;
	}
.store .banner a strong{
  font-size: 24px;
  letter-spacing: 3px;
  display: inline-block;
	}
.store .banner a em{
  font-size: 20px;
  letter-spacing: 3px;
  font-weight: 700;
  display: block;
  padding-top: 10px;
	}


#info #banner{
	width:100%;
	padding-bottom: 40px;
	}
#info #banner div{
  margin-bottom: 40px;
	}
#info #banner div a{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  justify-content: center;
  text-align: center;
  align-items: center;
  width:100%;
  height: 100px;
  border: #194a70 solid 3px;
  background: #FFF;
  text-decoration: none;
  box-shadow:0px 13px 20px 0px rgba(0,0,0,.1);
	}
#info #banner div a:hover{
  box-shadow:0px 0 0 0px rgba(0,0,0,0);
	}
#info #banner div a span img{
  height: 55px;
  width: 50px;
  margin-right: 20px;
	}
#info #banner div a strong{
  font-size: 26px;
  letter-spacing: 5px;
  
	}
#info #banner div a > img{
  margin-left: auto;
  margin-right: auto;
}
#banner2 a{
  width: fit-content;
  display: block;
  margin: 0 auto 100px;
}


/* footer
------------------------------------------- */
#footer{
  padding-top: 50px;
  background: #194a70;
  color: #FFF;
}
#footer h1 a{
  width: 240px;
  height: 76px;
  background: url("../images/logo_wh.svg") no-repeat center center / 240px 76px;
  margin-bottom: 60px;
}
#footer ul{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  justify-content: center;
  margin-bottom: 40px;
}
#footer li{
  padding: 0 30px;
  border-right:#FFF solid 1px;
}
#footer li:last-child{
  border-right: none;
}
#footer li a{
  font-weight: 700;
  text-decoration: none;
  color: #FFF;
}

/* table
------------------------------------------- */
.table01{
width:720px;
margin:0 auto 50px auto;
text-align:left;
}
.table01 th{
border-bottom:#666666 dotted 1px;
padding:20px 25px;
min-width: 140px;
}
.table01 td{
border-bottom:#cccccc dotted 1px;
padding:20px 25px;
}
.table01 textarea{
width:100%;
height:300px;

}
table strong{
	color:#194a70;
}





/* table02 */
.table02{
width:350px;
margin:0 auto 50px auto;
text-align:left;
font-size:14px;
}
.table02 th{
border-bottom:#cccccc dotted 1px;
padding:10px 10px;
}
.table02 td{
border-bottom:#cccccc dotted 1px;
padding:10px 10px;
}


/* table03 */
.table03{
width:720px;
margin:0 auto 50px auto;
text-align:left;
}
.table03 th{
border-bottom:#666666 dotted 1px;
padding:10px 10px;
}
.table03 td{
border-bottom:#cccccc dotted 1px;
padding:10px 10px;
}
.table03 textarea{
width:100%;
height:300px;

}
table strong{
	color:#194a70;
}


#insta{
	padding: 40px 0;
}
.insta_feed{
  display: flex;
  justify-content:flex-start;
  flex-wrap: wrap;
}
.insta_feed .feed_item{
  width: 23%;
  margin: 0 1%;
  margin-bottom: 20px;
}
.insta_feed .feed_item video{
	width: 100%;
}
.btn a{
  text-align: center;
  width: 200px;
  padding: 8px 0 ;
  margin: 20px auto 0;
  color: #FFF;
  background: #194a70;
  display: block;
  text-decoration: none;
}
.btn a:hover{
  opacity: .7;
}
.bnr_ga a{
	border: #1d2088 solid 1px;
	background: #FFF;
	display: block;
}