@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;200;300;400;500;600;700;800;900&display=swap');

/*
font-family: 'Noto Sans JP', sans-serif;

font-family: 'Zen Maru Gothic', serif;
    
*/


/*--------------------------------------------------
reset
-----------------------------------------------------*/
body{width: 100%;letter-spacing: 0;text-align: left;}
body, p, dl, ol, ul, h1, h2, h3, h3, h4, h5, h6, form, table, td, dt, dd {margin: 0;padding: 0;}
img{border: none; vertical-align:middle;}
/*ol,ul{list-style-type: none;}*/
table {/*border-collapse: collapse;*/border-spacing: 0;}
img {
  object-fit: contain;
  width: 100%;
    height:auto;
}

.sp{display:block;}
.pc{display:none;}

.flex{display:flex; justify-content: space-between; align-items: center;}
.notice{color:#e15c94}
.comingsoon{font-size:177%;text-align: center;color:#ccc;margin:2em 0;}
.center{text-align: center;}
.left{text-align: left;}
.right{text-align: right;}
.lfont{font-size:111%;}
.llfont{font-size:122%;}
.lllfont{font-size:133%;}
.sfont{font-size:88%;}
.ssfont{font-size:77%;}

.dbk{display:block}
.mb{margin-bottom:0 0 0.5em 0}
.bold{font-weight:700;}


/* スクロールで　フェードイン表示 */
.fade{opacity:0;}
.fadein{opacity:1.0;}
.ts1{transition: 1.0s}


/* アスタリスク　注釈用 */
ul.ast {	list-style: none;font-size: 90%;margin:0 0 0.5em 0;}
ul.ast li {	margin: 0;	padding-left: 1em;	text-indent: -1em;}
ul.ast li:before {	content: "\203b";	color: #000;}
ul.ast li.red:before {	content: "\203b";	color: #f00;}


/* ドット */
ul.dot {	list-style: none;font-size: 90%;margin:0 0 0.5em 0;}
ul.dot li {	margin: 0;	padding-left: 1em;	text-indent: -1em;}
ul.dot li:before {	content: "\30FB";	color: #000;}

/* 丸 */
ul.maru {	list-style: none;margin:0 0 0.5em 0;}
ul.maru li {	margin: 0;	padding-left: 1em;	text-indent: -1em;}
ul.maru li:before {	content: "\25CF";	color: #000;}

/*上向き矢印アイコン*/
.material-symbols-outlined {
  font-variation-settings:
  'FILL' 1,
  'wght' 400,
  'GRAD' 0,
  'opsz' 24
}


.youtube {
    position: relative;
    padding-bottom: 56.25%; /* アスペクト比16:9の場合 */
    padding-top: 0;
    height: 0;
    overflow: hidden;
    margin-bottom: 0; /* YouTubeの下に余白をつける */
    margin-top:0;
    margin-left:auto;
    margin-right:auto;
     background: #000;
}
.youtube iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}


a{transition: 0.3s;color:#000;}
a:hover{opacity:0.6;}
p span.purple{color:#e15c94;}
   a.here{display:block;background: #e15c94;color:#fff;border-radius:0.75em;width:99%;text-align:center;margin:1.5em auto 0 auto;text-decoration:none;padding:0.25em;font-size:93%;}  

.content img.protect {
  pointer-events: none;
  user-select:none;
  -moz-user-select:none;
  -ms-user-select:none;
  -webkit-user-select:none;
  -khtml-user-select:none;
  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}


/*  先頭へ戻る */
.totop {
  display: block;
  position: fixed;
  bottom: 2em;
  right: 1em;
  z-index: 10000;
     opacity: .6;
}
.totop:hover {
  opacity: 1;
}

@media(max-width:768px) {
  .totop {
    bottom: 10px;
    right: 10px;
  }
}

.material-symbols-outlined {
    font-size: 77px!important;
    color:var(--headerbg);
}

:root {
  --headerbg: #ed81a2;
  --bg: #fceef4;
  --border: #231815;
}


html,
body {
color: #000;
font-family: 'Noto Sans JP', sans-serif;
line-height: 1.6;
box-sizing: border-box;

background: var(--bg) url('../images/bg.jpg') no-repeat center top;
background-size: cover;
background-attachment: fixed;

word-wrap:break-word;
overflow-wrap: break-word;
word-break: break-all;


}

/*-------------------------------------------
header
---------------------------------------------*/

header {
  position: fixed;
    top:0;
  background: var(--headerbg);
  padding: 0.5em 0;
  width: 100%;
  box-shadow: 0 0 12px 0 rgba(0, 0, 0, .4);
  z-index: 9999;
}
header ul {
  display: flex;
  justify-content: center;
    list-style: none;
}
header ul li {
  position: relative;
}
header ul img {
  display: block;
  margin: 0 auto;
  width: 50%;
}
header ul li:before {
  position: absolute;
  content: "";
  height: 70%;
  width: 2px;
  background: #fff;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
header ul li:last-child:before {
  height: 0;
  width: 0;
}
@media ( max-width : 768px) {
  header ul img {
    width: 60%;
  }
}


/*-------------------------------------------
Keyvisual
---------------------------------------------*/

#kv{margin:17vw 0 0 0; background: #fff;}
#kv .mainimage{width:100vw;margin:0 0 0.125em 0}

/*-------------------------------------------
main
---------------------------------------------*/
main{

position: relative;
padding: 1em 0;
z-index: 0;
}
.inner{max-width: 720px;margin:0 auto;padding:0 1em;}
section{margin:1em 0 2em 0}
section h2{color:#db5e91;font-size:177%;font-weight:700;text-align: center;border-bottom:2px solid  var(--border);padding:0 0 0.25em 0;margin:0 0 0.5em 0;}
section h2.noborder{border:none;}
section h3 span{display:block;font-size:70%;}

p.imagenotice{font-size:80%;text-align: right;padding:0.5em 0 0 0;}
section#header_copy{font-weight:500; line-height: 1.8;margin:0 0 2em 0;}

section p.sub_tt{font-size:100%;margin:0 0 1em 0;font-weight:700;text-align: center;}
section p.detailhere{margin:0 0 0.5em 0;text-align: center;font-size:70%;}
section p.mb{margin:0 0 1.5em 0;text-align: left;font-weight:500;}
section p.mb br{display:none;}
section p.kikan{font-size:122%;font-weight:700;text-align: center;}
section p.lightup{margin:0 0 1em 0;}
section p.migoro{font-size:122%;font-weight:700;text-align: center;display:flex;flex-flow: column;}
.arrow.toright{width: 0;height: 0;border-style: solid;border-width: 12px 0 12px 18px;border-color: transparent transparent transparent #000; margin:0.5em auto; display:inline-block;

transform:rotate(90deg);

}

section p.tentoujikan{font-size:122%;font-weight:700;text-align: center;margin:0 0 1em 0;}
section p.eigyojikan{font-size:122%;font-weight:700;text-align: center;margin:0 0 0.5em 0;}
section p.foodtext{font-weight:500;margin:0 0 1em 0;font-size:105%;}

.pic_wrap{margin:0 0 1.5em 0;}
.pic_wrap .item{flex-basis:48%; text-align: center;}







section#instagram{ background:#fff;border:2px solid #e15c94;padding:3%;border-radius:1em;margin:3em 0 0 0;}
section#instagram h2{border:none;margin:0 auto -0.5em auto;position: relative;top:-1em;}
section#instagram p{font-size:100%;margin:0 0 1em 0;}
section#instagram .cpn_header_text{position:relative;}
section#instagram .cpn_header_text p{margin:0 0 1em 28%;line-height: 1.6;}
section#instagram .cpn_header_text .smartphone{position: absolute;width:22%;left:2%;top:1%;}
section#instagram p.photo{margin:0 0 2em 0;}
section#instagram p.kikan{font-size:122%;font-weight:700;text-align: center;}
section#instagram p.contact{font-size:100%;font-weight:500;text-align: center;}
section#instagram h3{color:#db5e91;font-size:177%;font-weight:700;text-align: center;border-bottom:1px solid #e15c94;padding:0 0 0.25em 0;margin:0 auto 0.5em auto;width:88%;}
section#instagram h3.noline{border:none;padding:0;margin:auto}
section#instagram h3.cpn_contact{font-size:122%;}
section#instagram p.present_tt{margin:1.5em 0 .5em 0;}
section#instagram p.present_text{line-height: 1.6;}
section#instagram p.photo.cp_schedule{margin:2em auto 2em auto;text-align: center;}
section#instagram p.photo.cp_schedule span{display:block;margin:0.5em 0 0 0;}

section#instagram .howto{text-align:center;}
section#instagram .step_wrap{margin:0 0 3em 0;}
section#instagram .step_label{width:25%;margin:0 auto .5em auto; background:#e15c94;border-radius:2em;padding:0 1em;color:#fff;font-size:144%;}
section#instagram .step_wrap p{font-size:100%;font-weight:700;}
section#instagram .terms{width:77%; margin:0 auto 2em auto; background: #ededed;padding:1em;height:300px;overflow: scroll;}
section#instagram .terms h4{color:#e15c94}
section#instagram .terms p{font-size:90%;}
section#instagram .terms ol{margin:0 0 1em 1em;font-size:90%;}
section#instagram p.marugo{}

.arrow.tobottom{width: 0;height: 0;border-style: solid;border-width: 30px 33px 0 33px;border-color: #e15c94  transparent transparent transparent;    margin:0 auto 0.75em auto;  opacity: 0.4;}


section#sns h3{text-align:center;font-size:122%;}
section#caution h2{color:#000;font-size:177%;}
section#event h3{color:#db5e91;text-align:center;font-size:144%;margin:2em 0 0.5em 0;}
section#event p.detailhere{margin:0 0 0.75em 0;text-align: center;font-weight:400;}

section#event dl.detail{margin:0 0 0.75em 0;text-align: left;font-weight:700;font-size:100%;flex-flow: row wrap;
align-items: flex-start;}
section#event dl.detail dt{flex-basis: 18%;}
section#event dl.detail dd{flex-basis: 80%;}



section#photocontest {border-bottom:2px solid #000;padding:0 0 4em 0;margin:0 0 3em 0}
section#access {border-top:2px solid #000;border-bottom:2px solid #000;padding:1em 0;margin:0 0 3em 0}
section#access .access_inner{line-height: 1.6;}
section#access h2{border:none;padding:0;font-weight:900;}
section#access p{text-align:center;margin:0 0 2em 0}
section#access dl{display:flex;justify-content: space-between; align-items: flex-start;flex-flow:row wrap; line-height: 1.2; }
section#access dl dt{flex-basis: 22%; background: #e15c94;border-radius:0.35em;color:#fff;text-align: center;font-size:111%;margin:0 0 0.25em 0;}
section#access dl dd{flex-basis:75%;font-size:100%;margin:0 0 0.25em 0;}
section#access dl dd ul.ast{font-size:70%;}


section#est70years {border-bottom:2px solid #000;padding:0 0 3em 0;margin:0 0 3em 0}
section#est70years h2{border:none;padding:0;font-size:144%}	
section#est70years p{max-width:300px;text-align: center;margin:2em auto 0 auto}	

section#years150 {border-bottom:2px solid #000;padding:0 0 3em 0;margin:0 0 3em 0}
section#years150 h2{border:none;padding:0;font-size:144%}




section#flower_light{margin:2em 0 0 0;}
section#flower_light p.bnr{margin:0 0 3em 0;}
section#flower_light p.logo{}
section#flower_light p.logo a{display:block;width:77%;margin:auto;}

section#sns .snsbox{text-align: center;margin:0 0 2em 0}
section#sns .snsbox blockquote{text-align: center;margin:auto;}
section#sns .snsbox iframe{text-align: center;margin:auto;max-width:100%!important;}
section#sns .snsbox .row{display:flex;justify-content:center;flex-flow: row wrap;}
section#sns .snsbox .row div{flex-basis:48%;margin:0 0.5% 0.2em 0.5%;height:200px;overflow: hidden}
section#sns .snsbox .row div img{object-fit: cover;width:100%;height:100%;}








footer {text-align:center;color:#fff; background: var(--headerbg); padding:0.5em;font-size:70%;}


 /* //////////////////////////////////////////////////*/
@media screen and (min-width: 48em) { /* //////////////////////////////////////////////////*/

    .sp{display:none;}
    .pc{display:block;}
    
    
   a.here{font-size:122%;}  
    
    

/*-------------------------------------------
Keyvisual
---------------------------------------------*/

#kv{margin:80px 0 0 0;}
#kv .mainimage{width:100vw;margin:0 0 1em 0}


   a.here{display:block;color:#fff;border-radius:0.75em;width:77%;text-align:center;margin:1.5em auto 0 auto;text-decoration:none;padding:0.125em;font-size:122%;}     
    
    
main{
font-size:111%;
position: relative;
padding: 3em 0;
background: var(--bg) url('../images/bg.jpg') no-repeat center top;
background-size: cover;
background-attachment: fixed;
z-index: 0;
}
.inner{width:100%;max-width: 720px;margin:0 auto;}
section{margin:2em 0 3.5em 0}
section h2{font-size:222%;}

section#header_copy{ font-weight:500; line-height: 2.2;margin:0 0 2em 0;font-size:111%;}

section p.sub_tt{font-size:133%;}
section p.detailhere{margin:0 0 0.75em 0;font-size:111%;}
section p.mb{margin:0 0 1.5em 0;text-align: center;font-weight:500;}
section p.mb br{display:block;}
section p.kikan{font-size:188%;}
section p.migoro{font-size:144%;display:flex;align-items: center;justify-content: center;flex-flow: row nowrap;}
.arrow.toright{width: 0;height: 0;border-style: solid;border-width: 12px 0 12px 18px;border-color: transparent transparent transparent #000; margin:0 1em; display:inline-block;transform:rotate(0);  }
section p.tentoujikan{font-size:188%;}
section p.eigyojikan{font-size:166%;}


.food_wrap{align-items: flex-start;flex-flow: row nowrap;margin:0 0 1.5em 0;}
.food_wrap .item{text-align:center;font-size:80%;}
.food_wrap .item.soft{flex-basis: 47.3%}
.food_wrap .item.others{flex-basis:52.7%;}
.food_wrap .item p{margin:0.25em 0 0 0;}
.food_wrap .item.others p.itemname{margin:0.25em 1% 0 7%;}

section#instagram{ background:#fff;border:3px solid #e15c94;padding:6%;border-radius:1em;margin:5em 0 0 0;}
section#instagram h2{margin:0 auto -1.5em auto;position: relative;top:-2.2em;}
section#instagram p{font-size:111%;}
section#instagram .cpn_header_text{}
section#instagram .cpn_header_text p{margin:0 0 1em 28%;line-height: 1.6;}
section#instagram .cpn_header_text .smartphone{position: absolute;width:24%;left:2%;top:1%;}
section#instagram p.photo{margin:0 0 3em 0;}
section#instagram p.kikan{font-size:188%;}
section#instagram p.contact{font-size:122%;}
section#instagram h3{font-size:222%;}
section#instagram h3.cpn_contact{font-size:177%;}
section#instagram .howto{text-align:center;}
section#instagram .step_wrap{margin:0 0 3em 0;}
section#instagram .step_label{font-size:199%;}
section#instagram .step_wrap p{font-size:133%;}
section#instagram .terms{width:77%; margin:0 auto 3em auto; background: #ededed;padding:2em;height:400px;overflow: scroll;}

section#sns h3{text-align:center;font-size:144%;margin:0 0 1em 0;}

section#sns .snsbox .row div{flex-basis:32%;margin:0 0.5% 0.4em 0.5%;height:200px;overflow: hidden}
section#sns .snsbox .row div img{object-fit: cover;width:100%;height:100%;}

section#caution h2{color:#000;font-size:177%;}
section#event h3{text-align:center;font-size:188%;margin:0 0 0.5em 0;}
section#event h4{text-align:center;font-size:122%;margin:0 0 0.5em 0;}
section#event p.detailhere{margin:0 0 0.75em 0;text-align: center;font-weight:400;}
	
    
section#event dl.detail{margin:0 0 0.75em 0;text-align: left;font-weight:700;font-size:122%;flex-flow: row wrap;
align-items: flex-start;}
section#event dl.detail dt{flex-basis: 10%;}
section#event dl.detail dd{flex-basis: 85%;}    
    
    
    
    
section#photocontest {border-bottom:2px solid #000;padding:0 0 4em 0;margin:0 0 3em 0}
section#access {border-bottom:2px solid #000;padding:2em 0 1em 0;margin:0 0 3em 0}
section#access .access_inner{line-height: 1.6;}
section#access h2{border:none;padding:0;font-weight:900;}
section#access p{text-align:center;margin:0 0 2em 0}
section#access dl{display:flex;justify-content: space-between; align-items: flex-start;flex-flow:row wrap; line-height: 1.2; }
section#access dl dt{flex-basis: 12%;border-radius:0.35em;color:#fff;text-align: center;font-size:111%;margin:0 0 0.25em 0;}
section#access dl dd{flex-basis:87%;font-size:122%;margin:0 0 0.25em 0;}
	
section#access dl dd ul.maru{font-size:70%;line-height: 155%;}	
	
section#access dl dd ul.ast{font-size:70%;}
section#access a.parkhere{display:block;background: #f60;color:#fff;border-radius:0.75em;width:66%;text-align:center;margin:1.5em auto 0 auto;text-decoration:none;padding:0.125em;font-size:133%;}
	
section#est70years {border-bottom:2px solid #000;padding:0 0 3em 0;margin:0 0 3em 0}
section#est70years h2{border:none;padding:0;}	
section#est70years p{max-width:300px;text-align: center;}	
	
section#years150 {border-bottom:2px solid #000;padding:0 0 3em 0;margin:0 0 3em 0}
section#years150 h2{border:none;padding:0;}
	
	
section#flower_light{margin:2em 0 0 0;}
section#flower_light p.bnr{margin:0 0 3em 0;}
section#flower_light p.logo{}
section#flower_light p.logo a{display:block;width:60%;margin:auto;}






footer {text-align:center;color:#fff; background: var(--headerbg); padding:0.5em;font-size:90%;}

/* //////////////////////////////////////////////////*/
} /* //////////////////////////////////////////////////*/
/* //////////////////////////////////////////////////*/



@media print {
.fade{opacity:1;}
.fadein{opacity:1.0;}
    .content #jumpbtn {display:none; }
}



