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


.main {
	width: 90%;
	margin: 0px auto;
	padding: 0;
}


.block01{
width: 100%;
height: 420px;
background: #fff;
background-size: cover;
margin: 0px;
overflow: hidden;
}

.block01 .obi{
position: absolute;
background: #af1d32;
font-size: 16px;
text-align: center;
color: #fff;
width: 100%;
padding: 15px 0px;
font-weight: bold;
letter-spacing: 1px;
}

.block01 .logo{
	background: url("../commonImage/logo03.png") no-repeat;
	background-size: 100%;
	height: 80px;
	margin: 100px auto 0px;
	width: 300px;
    }
.block01 .logo a{
	display: block;
	width: 100%;
	height: 100%;
}

.block01 .top_image{
width: 80%;
max-width: 1000px;
height:220px;
background: url("../topImage/top_bg01_01.jpg") center bottom;
background-size: cover;
margin: 0px auto;
overflow: hidden;
position: relative;
}
.block01 .inst_link{
	background: url("../commonImage/inst_link.png") no-repeat;
	margin: 60px auto 0px;
	width: 240px;
    height: 105px;
    }
.block01 .inst_link a{
	display: block;
	width: 100%;
	height: 100%;
}


.main_menu{
overflow: hidden;
	width: 100%;
    height: 8vh;
	padding: 0px;
	margin: 0px auto;
    display: flex;
	justify-content: center;
	-ms-flex-line-pack: center;
       align-content: center;
	-webkit-box-align: center;
     -ms-flex-align: center;
        align-items: center;
}
.main_menu li{
	width: 20%;
	height: 8vh;
	margin: 2px 2px;
	display: flex;
    font-size: 18px;
    letter-spacing: 2px;
color: #4d4d4d;
    font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
    display: flex; /* 子要素をflexboxで揃える */
    flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
    justify-content: center; /* 子要素をflexboxにより中央に配置する */
    align-items: center;  /* 子要素をflexboxにより中央に配置する */
}
.main_menu li a{
	text-decoration: none;
	line-height: 120%;
    color: #4d4d4d;
    }
.main_menu li a:hover{
color: #af1d32;
}


.block02{
width: 100%;
margin: 40px auto 50px;
padding: 0px 0px;
overflow: hidden;
}
.block02 .img01{
width: 30%;
height: 50px;
position: relative;
top: 0;
left: 0;
bottom: 0px;
z-index: 3;
margin-bottom: -50px;
}
.block02 .img01 img{
width: 100%;
}
.block02 h2{
float: right;
text-align: left;
font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	margin: 0px 10px 30px 100px;
	padding: 0;
	font-weight: bold;
    font-size:15px;
    line-height: 160%;
    color: #000;
}
.block02 .main_img{
width: 100%;
margin: 0px auto 0px;
}
.block02 .main_img img{
width: 100%;
}
.block02 p{
margin: 20px auto 20px;
	padding: 0;
	color: #000;
	font-size: 14px;
    font-weight: bold;
	line-height: 200%;
    text-align: left;
}



.block03{
width: 100%;
margin: 0px auto 40px;
overflow: hidden;
}
.block03 .main{
display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
     -ms-flex-pack: justify;
   justify-content: space-between;
}

.block03 .left{
width: 100%;
min-height: 150px;
height: 200px;
background: url("../topImage/hd_img_02.png") top left no-repeat;
background-size: 30%;
overflow: hidden;
}
.block03 .left img{
width: 100%;
}

.block03 .left .img01{
height: 150px;
width: 45%;
position: relative;
left: 20%;
top:40px;
z-index: 2;
}
.block03 .left .img02{
height: 150px;
width: 45%;
position: relative;
left: auto;
right: 0%;
top:-150px;
float: right;
z-index: 0;
}
.block03 .right{
width: 100%;
margin: 0px auto;
}
.block03 .right h2{
text-align: left;
font-size: 18px;
font-weight: bold;
line-height: 160%;
font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
margin: 20px 0px 20px 0px;
}
.block03 .right p{
text-align: left;
line-height: 200%;
font-size: 14px;
font-weight: bold;
}


/* 基本のスタイル */
.block03 .flower01{
transform:translate(0%); opacity:0; transition: all 3.75s ease-out;
	position:relative;
	top: -1800px;
    left: 0%;
	z-index: 0;
    text-align: left;
    width: 100%;
    height: 760px;
}
.block03 .flower02{
transform:translate(0%); opacity:0; transition: all 3.75s ease-out;
	position:relative;
	top: -1900px;
	right:0%;
	z-index: 0;
    text-align: right;
    width: 100%;
    height: 760px;
}
.block03 .flower03{
transform:translate(0%); opacity:0; transition: all 3.75s ease-out;
	position:relative;
	top: -2000px;
	left:0%;
	z-index: 0;
    text-align: left;
    width: 100%;
    height: 760px;
}
.block03 .flower04{
transform:translate(0%); opacity:0; transition: all 3.75s ease-out;
	position:relative;
	top: -2700px;
	left:40%;
	z-index: 0;
    text-align: left;
    width: 100%;
    height: 760px;
}
/* スタート時のスタイル */
.block03 .flower01.started {
      transform: none;
      opacity: 1;
   }
.block03 .flower02.started {
      transform: none;
      opacity: 1;
   }
.block03 .flower03.started {
      transform: none;
      opacity: 1;
   }
.block03 .flower04.started {
      transform: none;
      opacity: 1;
}

/* エンド時のスタイル */
   .block03 .flower01.started.ended {
   }
   .block03 .flower02.started.ended {
   }
   .block03 .flower03.started.ended {
   }
   .block03 .flower04.started.ended {
   }
/*
.block03 .flower01 img,
.block03 .flower02 img,
.block03 .flower03 img,
.block03 .flower04 img{
	width: 100%;
}*/



.block04{
width: 100%;
margin: 0px auto 50px;
overflow: hidden;
}
.block04 h2{
position: relative;
background: url("../topImage/menu_hd.png") no-repeat;
background-size: 100%;
height: 300px;
width: 100%;
margin: 0px 0px -200px 0px;
font-weight: bold;
z-index: -1;
}
.block04 .main_img{
width: 100%;
margin: 20px auto 50px;
}
.block04 .main_img img{
width: 100%;
}
.block04 h3{
text-align: center;
margin: 0px 0px 10px;
color: #af1d32;
font-weight: bold;
font-size: 24px;
letter-spacing: 0px;
}
.block04 p{
text-align: left;
font-size: 14px;
line-height: 200%;
font-weight: bold;
}
.block04 .menu_list{
text-align: left;
margin: 10px auto 30px;
padding: 0;
width: 100%;
display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
-ms-flex-wrap: wrap;
      flex-wrap: wrap;
	  justify-content: space-between;
  font-size: 18px;
font-weight: bold;
}
.block04 .menu_list li{
list-style: none;
text-align: center;
margin: 0px 0px 15px 0px;
padding: 0px;
width: 48%;
}
.block04 .menu_list li a{
color: #000;
text-align: center !important;
}
.block04 .menu_list li img{
width: 100%;
}
.block04 .menu_list li p{
text-align: center;
line-height: 140%;
}
.block04 .more_btn{
width: 80%;
margin: 10px auto 30px auto;
padding: 0;
}
.block04 .more_btn a{
display: block;
font-size: 16px;
color: #fff;
background: #40210E;
padding: 16px;
border-radius: 10px;
font-weight: bold;
}
.block04 .more_btn a:hover{
background: #AF1E32;
}


.block05{
width: 100%;
margin: 0 auto;
padding: 0px 0px;
overflow: hidden;
}
.block05 h2{
position: relative;
background: url("../topImage/access_hd.png") no-repeat;
background-size: 100%;
height: 300px;
width: 100%;
margin: 0px 0px -200px 0px;
font-weight: bold;
z-index: 3;
}
.block05 .main_img{
width: 100%;
margin: 0px auto 30px;
}
.block05 .main_img img{
width: 100%;
}
.block05 h3{
text-align: left;
margin: 20px 0px 20px;
color: #af1d32;
font-weight: bold;
font-size: 20px;
letter-spacing: 0px;
}
.block05 h3 span{
font-size: 16px;
}

.block05 .shop_info{
margin: 0px auto 40px;
padding: 0;
}
.block05 .shop_info li{
margin: 0px 0px 5px 0px;
padding: 0;
text-align: left;
font-size: 16px;
line-height: 160%;
font-weight: bold;
}

.block05 .google-map {
    position: relative;
    width: 100%;    /* 左右に余白が必要なら値を変更してもOK */
    height: 0;
    padding-bottom: 56.25%;    /* padding-topでもOK */
    overflow: hidden;
}
.block05 .google-map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;    /* 必要であれば!importantを付けてください */
    height: 100%;    /* 必要であれば!importantを付けてください */
}
