
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display&display=swap');
* {
	font-family: "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro","メイリオ", Meiryo, "ＭＳ ゴシック","Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: normal;
}

html { 
    height: 100%;
    padding: 0px;
}
/* --　記事内の装飾 --*/
body{
	margin: 0px 0px;
    height: 100%;
    padding: 0px;
}

body a img{
	border-style: none;
}
body img{
	vertical-align: bottom;
}
a{
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
	cursor: pointer;
	cursor: hand;
}
#main-visual{
    height: calc(100vh - 100px) !important;
}
header{
    margin: 0 auto 0 auto;
	min-width: 1000px;
	padding: 1px 0px;
	position: absolute;
	 height: calc(100vh - 100px) !important;
}



nav.headnav{
	width: 100%;
	height: 100px;
    margin: 0px auto;
    padding: 0px 0px 0px 0px;
    position: fixed;
   top: 0px;
    left: 0px;
	overflow: hidden;
	background: url("../images/nav_bg.png") repeat-x left center;
	-webkit-background-size: contain;
	-moz-background-size: contain;
	background-size: contain;
}



nav.headnav section{
	margin: 0px auto;
    width: 100%;
	position: relative;
	overflow: hidden;
	height: 100px;
}
nav.headnav h1{
	width: 240px;
    height: 67px;
	float: left;
	margin: 20px 0px 0px 30px;
    display: block;
    background: url("../images/main_logo_w.png") no-repeat left center;
	-webkit-background-size: contain;
	-moz-background-size: contain;
	background-size: contain;
    text-indent: -9999px;
    overflow: hidden;
}
nav.headnav ul{
	position: absolute;
	top: 34px;
	right: 195px;
	margin: 0px;
	padding: 0;
    height: 21px;
}
nav.headnav ul li{
	list-style: none;
	float: left;
	margin: 0 0 0 20px;
    padding: 0;
	font-size: 15px;
    text-align: left;
    line-height: 16px;
    height: 21px;
	letter-spacing: 0.08em;
}
nav.headnav ul li a{
	color: #fff;
	display: block;
    position: relative;
    padding: 0;
	font-family: 'Playfair Display', "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
nav.headnav ul li a.instagram{
	width: 15px;
    height: 15px;
	float: left;
	margin: 2px 0px 0px 0px;
    display: block;
     background: url("../images/icon_insta_w.png") no-repeat left center;
	-webkit-background-size: contain;
	-moz-background-size: contain;
	background-size: contain;
    text-indent: -9999px;
    overflow: hidden;
}
nav.headnav ul li a.instagram:hover{
     background: url("../images/icon_insta_v.png") no-repeat left center;
	-webkit-background-size: contain;
	-moz-background-size: contain;
	background-size: contain;
}

nav.headnav ul li a:hover{
	color: #ad99c7;
	text-decoration:none;
}


nav.headnav section .heada-link {
	padding: 0;
	margin: 0;
	font-size: 15px;
	line-height:15px;
	padding: 0;
    text-align: center;
	text-decoration: none;
	display: block;
	width:170px;
	position: absolute;
	right: 0px;
	top: 30px;
	letter-spacing: 0.08em;
}
nav.headnav section .heada-link a{
    display: block;
	width:100%;
	position: relative;
	line-height:15px;
	padding: 3px 0 7px 0;
    text-align: center;
	text-decoration: none;
    color: #333;
    background: #fff;
    font-family: 'Playfair Display', "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

nav.headnav section .heada-link:hover {
}
nav.headnav section .heada-link a:hover {
	text-decoration: none;
    color: #fff;
	background:  #7f61a8;
}

nav.headnav section .heada-link a,
nav.headnav section .heada-link a:hover,
nav.headnav section .heada-link a::after{	
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}


/* transition */
nav.headnav,
nav.headnav::after,
nav.headnav section,
nav.headnav h1,
nav.headnav h1 img,
nav.headnav ul,
nav.headnav ul li,
nav.headnav ul li a,
nav.headnav ul li a::after ,
nav.headnav ul li a:hover,
nav.headnav ul li a:hover::after,
nav.headnav.before,
nav.headnav ul li a.instagram,
nav.headnav section .heada-link{
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}
nav.headnav.before{
	position: fixed;
	top: -90px;
	z-index:200 !important;
}
/* Fixed */
nav.headnav.fixed{
	height: 70px;
	position: fixed;
	top: 0px;
	z-index:200 !important;
	background: url("../images/nav_bg_fixed.png") repeat-x left center;
	-webkit-background-size: contain;
	-moz-background-size: contain;
	background-size: contain;
}
nav.headnav section{
	height: 100px;
}
nav.headnav.fixed h1{
	width: 179px;
    height: 50px;
	float: left;
	margin: 10px 0px 0px 30px;
    display: block;
     background: url(../images/main_logo_c.png) no-repeat left center;
	-webkit-background-size: contain;
	-moz-background-size: contain;
	background-size: contain;
}
nav.headnav.fixed ul{
	top: 25px;
}

nav.headnav.fixed ul li a{
    color: #333;
}
nav.headnav.fixed ul li a:hover{
    color:  #7f61a8;
}
nav.headnav.fixed ul li a.instagram{
    height: 15px;
	 background: url("../images/icon_insta_k.png") no-repeat left center;
	-webkit-background-size: contain;
	-moz-background-size: contain;
	background-size: contain;
}
nav.headnav.fixed ul li a.instagram:hover{
    height: 15px;
	 background: url("../images/icon_insta_v.png") no-repeat left center;
	-webkit-background-size: contain;
	-moz-background-size: contain;
	background-size: contain;
}
nav.headnav.fixed section .heada-link {
	top: 21px;
}
nav.headnav.fixed section .heada-link a {
	color: #fff;
    background: #ad99c7;
}
nav.headnav.fixed section .heada-link a:hover {
	color: #fff;
    background: #7f61a8;
}

header #top-instagram {
	display: block;
	margin: 0;
	padding: 0;
	height: 120px;
	width: 120px;
	position: absolute;
	top: 25px;
	right: 0px;
	opacity: 0;
	
	transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
}
header #top-instagram.showing {
	top: 25px;
	right: 25px;
	opacity: 100;
}

header #top-instagram a{
	height: 120px;
	width: 120px;
	color: #fff;
	font-family: 'Playfair Display', "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	font-size: 16px;
	background-color: #0c7e99;
	border-radius: 60px;
	display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
	text-decoration: none;
	
	transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}
header #top-instagram a:hover{
	color: #0c7e99;
	background-color: #fff;
}

header #top-instagram a::before {
	content: '';
	display: block;
	height: 26px;
	width: 24px;
	background: url("../images/icon_insta_w.png") no-repeat center top;
	-webkit-background-size: auto 24px;
	-moz-background-size: auto 24px;
	background-size: auto 24px;
	pading: 50px 0 0 0;
}
header #top-instagram a:hover::before {
	background: url("../images/icon_insta_g.png") no-repeat center top;
	-webkit-background-size: auto 24px;
	-moz-background-size: auto 24px;
	background-size: auto 24px;
}


/*Visual Area*/
#visual-area{
	width: 100%;
	height: calc(100vh - 0px);
	background: linear-gradient( to bottom , rgba(0,0,0,0.3), rgba(0,0,0,0) 25% );
}

/*large-link area*/


/*Information Area*/
#information{
    width: 100%;
    padding: 0;
	margin: 0;
}
.info-wrapper{
	width:90%;
	margin: 0px auto;
    padding: 25px 0px 50px 0px;
    clear: both;
    max-width: 1200px;
}

/*News*/
.news-area{
	padding: 0;
	margin: 0;
	position: relative;
}

.news-area h2{
    margin: 0px ;
    font-size: 27px;
    float: left;
	letter-spacing: 0.08em;
	position: absolute;
	top: 0px;
	lerf: 0px;
}
.news-area h2 a{
    font-family: 'Playfair Display', "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    color: #333;
    display: inline-block;
    padding: 0 2px 5px 2px;;
	border-bottom: solid 1px #7f61a8; 
	
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}
.news-area h2 a:hover{
    color: #7f61a8;
	text-decoration: none;
}

 .news-area dl{
    margin: 5px 0 0 0;
   font-size: 14px;
    color: #333;
    width: calc(100% - 110px) ;
    display: block;
    float: right;
}
 .news-area dt{
    line-height: 1.5em;
}
 .news-area dd{
    line-height: 1.5em;
   margin: -1.5em 0em 0.7em 6em;
    position: relative;
}
 .news-area dd a{
    color: #333;
}
 .news-area dd a:hover{
    color: #666;
    text-decoration: none;
}
.up_ymd{
	display: inline-block;
}

.newMark{
    display: block;
	font-size: 10px;
    line-height: 10px;
	padding: 2px 8px;
	margin: 4px 7px 0px 0px !important;
	color: #fff;
	background-color: #ccc;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
    width: 2.3em;
	float: left;
}

/*-- Maincontainer Comon Seting--*/
#maincontainer{
	    background: #fff;
	overflow: hidden;
}
#maincontainer p em {
	font-style: normal;
	font-weight: bold;
	color: #F60;
}
#maincontainer p .caption,
#maincontainer ul li .caption {
	font-size: 13px;
	color: #777;
	line-height: 1.5em;
}
#maincontainer p.caption{
	font-family: "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro","メイリオ", Meiryo, "ＭＳ ゴシック","Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: normal;
	font-size: 13px;
	color: #777;
	margin-top: 0px;
	line-height: 1.5em;
}

#maincontainer ul {
	list-style-type: none;
	padding: 0px;
	margin-bottom: 1em;
	margin-left: 3px;
	margin-top: 0px;
}
#maincontainer ul li {
	margin: 0 0 0.2em 0;
	padding: 0;
	line-height: 1.5em;
	padding-bottom: 5px;
	font-size: 15px;
	background-repeat: no-repeat;
	background-position: 0px 0.55em;
	font-weight: bold;
	color: #333;
	text-align: left;
}
#maincontainer ul li em{
	font-style: normal;
	color: #F60;
}


/*Contents Common setting*/
.contents-wrapper{
	width:90%;
	margin: 0px auto 100px;
    padding: 0px;
    clear: both;
    max-width: 1200px;
}
.contents-wrapper h2{
	font-family: 'Playfair Display', "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    color: #333;
    padding: 0 2px 5px 2px;
	margin: 0 auto 30px;
	border-bottom: solid 1px #7f61a8;
	display: inline-block;
	text-align: center;
	letter-spacing: 0.08em;
}
.contents-wrapper h3{
	font-family: 'Playfair Display', "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	font-size: 18px;
    line-height: 1.5em;
    color: #333;
    margin: 0;
	padding: 0;
    text-align: center;
}
.contents-wrapper p{
	font-family: 'Playfair Display', "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	font-size: 15px;
	line-height: 1.8em;
	margin: 0px 0px 20px 0px;
	color: #333;
	text-align: left;
	position: relative;
}
#about,
#bridal,
#flowergift,
#lesson,
#display,
#access{
	opacity: 0;
    padding: 0;
	text-align: center;
	transition: all 1.5s ease;
	-webkit-transition: all 1.5s ease;
    -moz-transition: all 1.5s ease;
    -o-transition: all 1.5s ease;
}

#about.showing,
#bridal.showing,
#flowergift.showing,
#lesson.showing,
#display.showing,
#access.showing{
    opacity: 100;
}

.left-block img,
.right-block img{
	width: 100%;
}

.intro-block{
	position: relative;
	width: 100%;
	height: calc(55vh);
	min-height: 500px;
	max-height: 800px;
	margin-bottom: 30px;
}
.read-block p{
	margin-bottom: 1em;
	text-align: center;
	font-size: 16px;
	letter-spacing: 0.1em;
}
.photo-block ul{
	margin: 0 0 30px -2% !important;
	padding: 0;
	display: block;
	width: 102%;
}
.photo-block li{
	width: 23%;
	aspect-ratio: 1 / 1;
	margin: 0 0 0 2%!important;
	display: block;
	float: left;
}
.photo-block li img{
	height: 100%;
	width: 100%;
	object-fit: cover;
}
.read-block,
.illustration-block{
	transition: all 1s ease;
	-webkit-transition: all 1s ease;
    -moz-transition: all 1s ease;
    -o-transition: all 1s ease;
}

/*about*/
#about .contents-wrapper{
	margin: 50px auto 50px;
}
#about .intro-block{
	height: calc(80vh);
}

#about .read-block{
    width: calc(50% - 40px);
	position: absolute;
    top: 50%;
    right: -10px;

    transform: translate(0%, -50%);
    -webkit-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
}
#about .illustration-block{
    width: calc(50% - 40px);
	height:  100%;
	background: url("../images/about_img.jpg") no-repeat center center;
		-webkit-background-size: contain;
	-moz-background-size: contain;
	background-size: contain;
	position: absolute;
    top: 0px;
    left: -10px;
}

#about.showing .read-block{
    top: 50%;
    right: 0px;
}
#about.showing .illustration-block{
    top: 0px;
    left: 0px;
}
#about .instagram{
	line-height: 15px;
	vertical-align: text-top;
	margin-top: 20px;
}
#about .instagram a{
	font-family: 'Playfair Display', "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	letter-spacing: 0.05em;
}
#about .instagram a:hover{
	color: #7f61a8;
	text-decoration: none;
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}
#about .instagram a::before{
	content: '';
	width: 15px;
    height: 15px;
	margin: 0 5px 0 0;
    display: inline-block;
     background: url("../images/icon_insta_k.png") no-repeat left center;
	-webkit-background-size: contain;
	-moz-background-size: contain;
	background-size: contain;
    text-indent: -9999px;
    overflow: hidden;
}
#about .instagram a:hover::before{
     background: url("../images/icon_insta_v.png") no-repeat left center;
	-webkit-background-size: contain;
	-moz-background-size: contain;
	background-size: contain;
	
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}

/*bridal*/
#bridal .read-block{
    width: calc(50% - 40px);
	position: absolute;
    top: 50%;
    left: -10px;

    transform: translate(0%, -50%);
    -webkit-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
}
#bridal .illustration-block{
    width: calc(50% - 40px);
	height:  100%;
	background: url("../images/bridal_img.jpg") no-repeat center center;
		-webkit-background-size: contain;
	-moz-background-size: contain;
	background-size: contain;
	position: absolute;
	right: -10px;
}
#bridal.showing .read-block{
    top: 50%;
    left: 0px;
}
#bridal.showing .illustration-block{
    top: 0px;
    right: 0px;
}
#bridal #bridal-illustration-block{
	margin-bottom: 25px;
}
#bridal .left-block{
	float: left;
	width: calc(49% - 0px);
}
#bridal .right-block{
	float: right;
	width: calc(49% - 0px);
}
#bridal #bridal-read-block.showing{
    left: 0px;
	opacity:100;
}
#bridal #bridal-illustration-block.showing{
    right: 0px;
	opacity:100;
}

/*flowergift*/
#flowergift .read-block{
    width: calc(50% - 40px);
	position: absolute;
    top: 50%;
    right: -10px;

    transform: translate(0%, -50%);
    -webkit-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
}
#flowergift .illustration-block{
    width: calc(50% - 40px);
	height:  100%;
	background: url("../images/flowergift_img.jpg") no-repeat center center;
		-webkit-background-size: contain;
	-moz-background-size: contain;
	background-size: contain;
	position: absolute;
    top: 0px;
    left: -10px;
}
#flowergift.showing .read-block{
    top: 50%;
    right: 0px;
}
#flowergift.showing .illustration-block{
    top: 0px;
    left: 0px;
}

#flowergift .flower-delivery{
	background: #fff;
	padding: 25px 35px 35px;
	margin: 40px 0 0 0;
	box-sizing: border-box;
	border: 6px solid #eee;
}
#flowergift .flower-delivery ul li {
	text-indent: -5em;
	margin: 0 0 0.5em 5em;
	padding: 0;
}
#flowergift .left-block{
	float: left;
	width: calc(48% - 0px);
}
#flowergift .right-block{
	float: right;
	width: calc(48% - 0px);
}
#flowergift .flower-delivery h3{
	margin: 0 0 20px 0;
}
#flowergift .flower-delivery p{
	font-family: "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro","メイリオ", Meiryo, "ＭＳ ゴシック","Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: normal;
	font-size: 14px;
}


/*lesson*/
#lesson .read-block{
    width: calc(50% - 40px);
	position: absolute;
    top: 50%;
    left: -10px;

    transform: translate(0%, -50%);
    -webkit-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
}
#lesson .illustration-block{
    width: calc(50% - 40px);
	height:  100%;
	background: url("../images/lesson_img.jpg") no-repeat center center;
		-webkit-background-size: contain;
	-moz-background-size: contain;
	background-size: contain;
	position: absolute;
	right: -10px;
}
#lesson.showing .read-block{
    top: 50%;
    left: 0px;
}
#lesson.showing .illustration-block{
    top: 0px;
    right: 0px;
}
#lesson-contents-block{
	margin: 0;
}
#lesson-contents-block h3{
	margin: 0 0 10px 0;
	letter-spacing: 0.05em;
}
#lesson-contents-block p{
	font-family: "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro","メイリオ", Meiryo, "ＭＳ ゴシック","Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: normal;
	font-size: 14px;
	margin: 0 0 15px 0;
}
#lesson-contents-block ul{;
	margin: 0;
}
#lesson-contents-block img{
	margin: 0 0 10px 0;
	width: 100%;
}
#lesson-contents-block div:nth-child(odd){
	float: left;
	width: 47%;
	margin: 0;
	clear: both;
}
#lesson-contents-block div:nth-child(even){
	float: right;
	width: 47%;
	margin: 0;
}
.lesson-block{
	padding-bottom: 40px;
}
/*display*/
#display .read-block{
    width: calc(50% - 40px);
	position: absolute;
    top: 50%;
    right: -10px;

    transform: translate(0%, -50%);
    -webkit-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
}
#display .illustration-block{
    width: calc(50% - 40px);
	height:  100%;
	background: url("../images/display_img.jpg") no-repeat center center;
		-webkit-background-size: contain;
	-moz-background-size: contain;
	background-size: contain;
	position: absolute;
    top: 0px;
    left: -10px;
}
#display.showing .read-block{
    top: 50%;
    right: 0px;
}
#display.showing .illustration-block{
    top: 0px;
    left: 0px;
}
#display #display-illustration-block{
	margin-bottom: 25px;
}

/*Access*/
#access{
	text-align: center;
}
#access #map_canvas{
	width: 100%;
	min-height: 40vh;
    max-height: 550px;
    height: calc( 100vh - 400px );
	position: relative;
	overflow: hidden;
}
#access #map_canvas iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
	min-height: 40vh;
    max-height: 550px;
    height: calc( 100vh - 400px );
}
#access .contents-wrapper #map_canvas p{
	font-size: 14px;
	line-height: 1.3em;
	white-space: nowrap;
	margin: 0;
	padding: 0;
}
#maincontainer #access .contents-wrapper{
    width: 100%;
	max-width: 100%;
	height: auto;
}
#access .access-block{
    width: 90%;
    max-width: 1200px;
	margin: 0 auto;
	text-align: left;

}
#maincontainer #access p{
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
   text-align: center;
	display: block;
}

#access p.address a{
	font-size: 12px;
    line-height: 12px;
	padding: 2px 10px;
	margin: 0px 0 0 8px;
	color: #fff;
	background-color: #ccc;
	white-space: nowrap;
	display: inline-block;
	vertical-align: text-bottom;
	border-radius: 8px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;	
}
#access p.address a:hover{
	background-color: #7f61a8;
	text-decoration: none;
}
/* transition */
#access p.address a,
#access p.address a:hover{
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}


/*Footer*/
footer {
	clear: both;
	padding: 0px 0px 30px 0px;
	width: 100%;
	margin: 0px;
    background-color: #fff;
	text-align: center;
}

#footer-area{
	width: 90%;
	margin: 0px auto;
	padding: 0px;
	max-width: 1200px;
}
#footer-area h2{
    height: 200px;
	margin: 0px 0px 25px 0px;
    display: block;
    background: url("../images/footer_logo.png") no-repeat center center;
		-webkit-background-size: contain;
	-moz-background-size: contain;
	background-size: contain;
    text-indent: -9999px;
    overflow: hidden;
}

#footer-area p.tel-number{
font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	font-weight: 500;
	font-size: 18px;
    line-height: 1.5em;
    color: #333;
	 margin: 0px 0px 25px 0px;
		 
}
#footer-area p.tel-number a{
font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    color: #333;
}
#footer-area p.tel-number::before{
	content: '';
	display: inline-block;
	width: 18px;
	height: 15px;
	background: url("../images/icon_tel.png") no-repeat center;
	-webkit-background-size: contain;
	-moz-background-size: contain;
	background-size: contain;
}

#footer-area ul{
	margin: 0;
    padding: 0;
    height: 17px;
}
#footer-area ul li{
	margin: 0;
    padding: 0;
	font-size: 14px;
    line-height: 14px;
    height: 17px;
	list-style: none;
}
#footer-area ul li a{
	color: #fff;
    position: relative;
    padding: 0 0 0 14px;
}
#footer-area ul li a::after  {
    content: '';
	position: absolute;
	top: 25%;
	left: 0em;
	width: 6px;
	height: 6px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
#footer-area ul li a:hover{
	color: #fff;
	text-decoration:none;
}
#footer-area ul li a:hover::after  {
	left: 0.2em;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
#footer-area ul li a,
#footer-area ul li a:hover,
#footer-area ul li a::after{	
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}



small{
    margin: 0;
	padding: 0;
	font-size: 12px;
    color: #333;
}

/*Link Button*/
.link-page {
}
.link-page a{
    display: block;
	width:100%;
	height: 40px;
	line-height:40px;
	padding: 0em;
    text-align: center;
	text-decoration: none;
    background: #fff;
	letter-spacing: 0.08em;
	font-size: 16px;
	color: #333;
	box-sizing: border-box;
	border: 1px solid #555;
}

.link-page:hover {
}
.link-page a:hover {
	text-decoration: none;
    color: #fff;
	background:  #ad99c7;
	border: 1px solid #ad99c7;
}

.link-page a,
.link-page a:hover,
.link-page a::after{	
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}


/*Other Style*/
a{
color: #333;
	text-decoration: none;
}

a:hover{
	color: #666;
	text-decoration: underline;
}


.clearfix:after{
	content:".";
	display:block;
	height:0;
	clear:both;
	visibility:hidden;}
.clearfix{display:inline-block;}
/* hides from IE-mac¥*/
*html .clearfix{height:1%;}
.clearfix{display:block;}
/*End hide from IE-mac*/

.clearboth{
	clear:both;
}

/*pagetop button*/
#page-top {
	position: fixed;
	bottom: 10px;
	right: 20px;
    text-indent: -9999px;
	line-height:0px;
	z-index: 100;
}
#page-top,
#page-top a{	
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}
#page-top a {
	display: block;
	padding: 0px;
	width: 30px;
    height: 30px;
	color: #000;
    position: relative;
    border-radius: 50%;
	white-space: nowrap;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
    background-color: #ccc;
}

#page-top a::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 50%;
  width: 10px;
  height: 10px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: translateX(50%)  translateY(75%) translateY(15%) rotate(-45deg);
}
#page-top a img {
	width:100%;
}
#page-top a:hover {
	background-color: #7f61a8;
	text-decoration: none;
	
}

 
.clearfix:after{
	content:".";
	display:block;
	height:0;
	clear:both;
	visibility:hidden;}
.clearfix{display:inline-block;}
/* hides from IE-mac¥*/
*html .clearfix{height:1%;}
.clearfix{display:block;}
/*End hide from IE-mac*/


.section {
background-image: url(img/bg.jpg);
background-size: cover;
}

#fade{
	position: fixed;
	width: 100%;
	height: 100%;
	background: #fff;
	/*background: #FFF url(../images/loading.gif) no-repeat center center;
	-webkit-background-size: 50px auto;
	-moz-background-size: 50px auto;
	background-size: 50px auto;*/
	z-index: 999;
	display: none;
}
.circle-img{
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
}
.nav-mr{
	margin-right: 0px !important;
}
.mb0{
	margin-bottom: 0px !important;
}
.mb5{
	margin-bottom: 5px !important;
}
.mb15{
	margin-bottom: 15px !important;
}
.mt10{
	margin-top: 10px !important;
}
#scroll-nav ul li.nav-mr{
	padding-right: 0px !important;
	background: url(none);
}
.clear-both{
	clear:both;
}

#hamburger-menu{
	display: none;
}

.drawer-menu-sns {
	list-style: none;
	display: block;
	margin: 0;
	padding: 0;
	text-align: center;
}
.sns-instagram a{
	text-indent: -9999;
}
.sns-instagram a{
	display: block;
	width: 20px;
	height: 20px;
     background: url("../images/icon_insta_v.png") no-repeat left center;
	-webkit-background-size: contain;
	-moz-background-size: contain;
	background-size: contain;
    text-indent: -9999px;
	margin: 0 auto;
}
.sns-instagram a:hover{
	
}
.br::before {
	content: "\A" ;
	white-space: pre ;
}
/*@media screen and (max-width: 1350px) {
	nav.headnav.fixed ul li{
	font-size: 15px;
}
nav.headnav.fixed ul li a {
	padding: 0 0 0 14px;
}
nav.headnav.fixed ul li a::after  {
	top: 28%;
	width: 6px;
	height: 6px;
}
}*/

/* =======================================
Tablet
=========================================*/
@media screen and (max-width: 1025px) {
	
nav.headnav,
nav.headnav.fixed{
	height: 60px;
    min-width: 100%;
	position: fixed;
	top: 0px;
	z-index:200 !important;
	background: #fff;
}
 nav.headnav h1,
	nav.headnav.fixed h1{
    width: 143px;
    height: 40px;
	float: left;
	margin: 10px 0px 0px 20px;
    background: url(../images/main_logo_c.png) no-repeat left center;
	-webkit-background-size: contain;
	-moz-background-size: contain;
	background-size: contain;
}
nav.headnav ul{
	display: none;
}
header{
	min-width: auto;
}
nav.headnav::after{
    display: none;
}
nav.headnav section{
	margin: 0px auto;
    width: 100%;
}

nav.headnav section .heada-link {
	right: 70px;
	top: 17px;
}
	nav.headnav.fixed section .heada-link {
	top: 12px;
	opacity: 100;
}

nav.headnav section .heada-link a{
    display: block;
	padding: 3px 0 7px 0;
	text-decoration: none;
    color: #fff;
    background: #ad99c7;
}

nav.headnav section .heada-link:hover {
}
nav.headnav section .heada-link a:hover {
	text-decoration: none;
}
nav.headnav.fixed section .heada-link {
	top: 17px;
}
nav.headnav.fixed section .heada-link a {
	color: #fff;
    background: #ad99c7;
}
nav.headnav.fixed section .heada-link a:hover {
	color: #fff;
    background: #7f61a8;
}	
	
}

@media screen and (max-width: 920px) {

#footer-area{
	width: 90%;
	text-align: center;
}

small{
    margin: 0 0 0 0;
	font-size: 12px;
	text-align: center;
	float: none;
	clear: both;
	display: inherit;
}
	
}

/* ===================================
Smart Phone 
=====================================*/

@media screen and (max-width: 480px) {}

@media screen and (max-width: 550px) {
	
	/*Contents Common setting*/
.contents-wrapper{
	width:85%;
	 padding: 0 0  50px 0;
	}

.contents-wrapper h2{
	font-size: 20px;
    padding: 0 2px 5px 2px;
	margin: 0 auto 30px;
}
.contents-wrapper h3{
	font-size: 16px;
}
.contents-wrapper p{
	font-size: 14px;
	line-height: 1.8em;
	margin: 0px 0px 20px 0px;
}
	nav.headnav section .heada-link {
		right: 60px;
	width: 130px;
		font-size: 13px;
}
	#maincontainer ul {
	margin: 0 0 10px 0 ;
}
#maincontainer ul li {
	margin: 0 ;
	padding: 0;
	line-height: 1.5em;
	padding-bottom: 5px;
	font-size: 13px;
}	

/*Information Area*/
/*News*/
.news-area{
	padding: 0px 0px 0 0px;
	margin: 0px 0px 30px  0px ;
	position: static;
}
.info-wrapper{
    padding: 25px 0px 20px 0px;
}
.news-area h2{
    font-size: 20px;
	padding: 0 0 10px 0;
	float: none;
	position: static;
	text-align: center;
}

 .news-area dl{
   font-size: 12px;
	 width: 100%;
}
 .news-area dt{
    line-height: 1.5em;
}
 .news-area dd{
    line-height: 13px;
	margin: -1.3em 0em 10px 6em;
    position: relative;
}


.newMark{
    font-size: 10px;
	text-align: center;
    line-height: 10px;
	padding: 2px 7px;
	margin: 0px 8px 0px 0px !important;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
    width: 2.3em;
}
	
.intro-block{
	position: static;
	width: 100%;
	height: auto;
	min-height: auto;
	max-height: auto;
	margin-bottom: 20px;
}
.read-block p{
	font-size: 14px;
	letter-spacing: 0;
}
.photo-block ul{
	margin: 0 0 20px -2% !important;
	padding: 0;
	display: block;
	width: 102%;
}
.photo-block li{
	width: 48%;
	aspect-ratio: 1 / 1;
	margin: 0 0 0 2%!important;
	display: block;
	float: left;
}
.photo-block li img{
	height: 100%;
	width: 100%;
	object-fit: cover;
}
/*about*/
#about .contents-wrapper{
	margin: 0 auto 20px;
}
#about .intro-block{
	height: auto;
	position: static;
}

#about .read-block{
    width: 100%;
	position: static;
    transform: translate(0%, 0%);
    -webkit-transform: translate(0%, 0%);
    -ms-transform: translate(0%, 0%);
}
#about .illustration-block{
    width: 95%;
	margin: 0px auto 0px;
	aspect-ratio: 1 / 1;
	position: static;
}
#about .instagram{
	line-height: 15px;
	vertical-align: text-top;
	margin-top: 15px;
}

#about #about-read-block.showing{
	opacity:100;
}
#about #about-illustration-block.showing{
	opacity:100;
}


/*bridal*/
#bridal .read-block{
    width: 100%;
	position: static;
    transform: translate(0%, 0%);
    -webkit-transform: translate(0%, 0%);
    -ms-transform: translate(0%, 0%);
}
#bridal .illustration-block{
    width: 90%;
	margin: 0px auto 0px;
	aspect-ratio: 1 / 1;
	position: static;
}
#bridal #bridal-illustration-block{
	margin-bottom: 25px;
}
#bridal .left-block{
	float: left;
	width: calc(49% - 0px);
}
#bridal .right-block{
	float: right;
	width: calc(49% - 0px);
}
#bridal #bridal-read-block.showing{
    left: 0px;
	opacity:100;
}
#bridal #bridal-illustration-block.showing{
    right: 0px;
	opacity:100;
}

/*flowergift*/
#flowergift .read-block{
    width: 100%;
	position: static;
    transform: translate(0%, 0%);
    -webkit-transform: translate(0%, 0%);
    -ms-transform: translate(0%, 0%);
}
#flowergift .illustration-block{
    width: 100%;
	aspect-ratio: 1 / 1;
	position: static;
}

#flowergift .flower-delivery{
	padding: 25px 35px 35px;
	margin: 30px 0 0 0;
}
#flowergift .left-block{
	width: 100%;
	float: none;
	margin-bottom: 15px;
	}
#flowergift .right-block{
	width: 100%;
	float: none;
}
#flowergift .flower-delivery h3{
	margin: 0 0 20px 0;
}
#flowergift .flower-delivery p{
	font-size: 13px;
}

#flowergift #flowergift-read-block.showing{
    right: 0px;
	opacity:100;
}
#flowergift #flowergift-illustration-block.showing{
    left: 0px;
	opacity:100;
}

/*lesson*/
#lesson .read-block{
    width: 100%;
	position: static;
    transform: translate(0%, 0%);
    -webkit-transform: translate(0%, 0%);
    -ms-transform: translate(0%, 0%);
}
#lesson .illustration-block{
    width: 95%;
	margin: 0px auto 0px;
	aspect-ratio: 1 / 1;
	position: static;
}

#lesson-contents-block p{
	font-size: 13px;
	margin: 0 0 15px 0;
}
#lesson-contents-block ul{;
	margin: 0;
}
#lesson-contents-block div:nth-child(odd){
	float: none;
	width: 100%;
}
#lesson-contents-block div:nth-child(even){
	float: none;
	width: 100%;
	margin: 0;
}
.lesson-block{
	padding-bottom: 30px;
}


/*display*/
#display .read-block{
    width: 100%;
	position: static;
    transform: translate(0%, 0%);
    -webkit-transform: translate(0%, 0%);
    -ms-transform: translate(0%, 0%);
}
#display .illustration-block{
   width: 100%;
	aspect-ratio: 1 / 1;
	position: static;
}
#display #display-illustration-block{
	margin-bottom: 25px;
}



/*Access*/
	#access .contents-wrapper{
		padding-bottom: 0!important;
	}
#maincontainer #access p{
    width: 85%;
	margin-left: auto;
	margin-right: auto;
}
#access #map_canvas{
	width: 100%;
	margin-bottom: 0px;
	min-height: auto;
    max-height: auto;
    height: calc( 50vh - 0px );
}
#access #map_canvas iframe {
height: calc( 50vh - 0px );
}
#access .access-block{
    width: 85%;
}


/*Footer*/
footer {
	clear: both;
	padding: 0px 0px 30px 0px;
}

#footer-area{
	width: 85%;
}
#footer-area h2{
	margin: 0px 0px 25px 0px;
    display: block;
	height: 150px;
}

#footer-area p.tel-number{
	font-size: 18px;
	 margin: 0px 0px 25px 0px;
		 
}

#footer-area p.tel-number::before{
	width: 18px;
	height: 15px;
}



small{
    margin: 0;
	padding: 0;
	font-size: 11px;
    color: #333;
}
	
	.link-page {
}
.link-page a{
	height: 30px;
	line-height:30px;
	font-size: 14px;
}
.br::before {
	content: "" ;
	white-space: normal;
}
.br2::before {
	content: "\A" ;
	white-space: pre ;
}	
}

