@charset "utf-8";
/* CSS Document */
.first-container {
  margin: 0 auto;
  max-width: 1100px;
  padding: 30px 30px;
	background-image: url("../images/morihana-heart-07.png");
   background-position: right 1% bottom 30%;
  background-repeat: no-repeat;
  background-size: 105% auto;
}
.morihana-logo {
  width: 120px;
}
.logo {
  width: 80%;
}
.morihana {
  font-size: 0.7rem;
  text-align: left;
  margin-top: -20px;
}
.header-container {
  color: #101010;
  background-color: #ffffff;
  letter-spacing: 1.5px;
  text-align: left;
  padding: 6px 30px 0;
  height: 7vh;
  width: 100%;
}
@media(min-width:678px) {
  .header-container {
    padding: 10px 30px;
    height: 12vh;
  }
  .first-container {
  margin: 0 auto;
  max-width: 1100px;
  padding: 0 50px;
	  background-image:none;
}
  .morihana-logo {
    width: 150px;
  }
  .logo {
    width: 80%;
  }
  .morihana {
    font-size: 0.8rem;
    text-align: left;
    margin-top: -23px;
  }
}
/*========= ナビゲーションのためのCSS ===============*/
#g-nav {
  /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
  position: fixed;
  z-index: 999;
  /*ナビのスタート位置と形状*/
  top: 0;
  right: -120%;
  width: 100%;
  height: 100vh; /*ナビの高さ*/
  background: #F7E6F5;
  /*動き*/
  transition: all 0.6s;
}
/*アクティブクラスがついたら位置を0に*/
#g-nav.panelactive {
  right: 0;
}
/*ナビゲーションの縦スクロール*/
#g-nav.panelactive #g-nav-list {
  /*ナビの数が増えた場合縦スクロール*/
  position: fixed;
  z-index: 999;
  width: 100%;
  height: 100vh; /*表示する高さ*/
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}
/*ナビゲーション*/
#g-nav ul {
  /*ナビゲーション天地中央揃え*/
  position: absolute;
  z-index: 999;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
/*リストのレイアウト設定*/
#g-nav li {
  list-style: none;
  text-align: center;
}
#g-nav li a {
  color: #333;
  text-decoration: none;
  padding: 10px;
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-weight: bold;
}
/*========= ボタンのためのCSS ===============*/
.openbtn {
	background-color: #ffffff;
  position: fixed;
  z-index: 9999; /*ボタンを最前面に*/
  top: 10px;
  right: 10px;
  cursor: pointer;
  width: 50px;
  height: 50px;
}
/*×に変化*/
.openbtn span {
  display: inline-block;
  transition: all .4s;
  position: absolute;
  left: 14px;
  height: 3px;
  border-radius: 2px;
  background-color: #666;
  width: 45%;
}
.openbtn span:nth-of-type(1) {
  top: 15px;
}
.openbtn span:nth-of-type(2) {
  top: 23px;
}
.openbtn span:nth-of-type(3) {
  top: 31px;
}
.openbtn.active span:nth-of-type(1) {
  top: 18px;
  left: 18px;
  transform: translateY(6px) rotate(-45deg);
  width: 30%;
}
.openbtn.active span:nth-of-type(2) {
  opacity: 0;
}
.openbtn.active span:nth-of-type(3) {
  top: 30px;
  left: 18px;
  transform: translateY(-6px) rotate(45deg);
  width: 30%;
}
/*あなたの想いお花にのせて========================================================================================================================================================================================================================================================================*/
.top-bara2-background {
	
}
.hikkitai {
  width:400px;
}
.catchcopy {
  margin: -40px 0 50px ;
}
.ohanayasan {
  margin:50px;
}


.top-bara {
  width: 254px;
  height: 384px;
}
.catchcopy-mobile {
  margin:-30px 0 30px 0;
} 
.top-bara-mobile {
  margin: 40px 0 ;
}

.top-bara img {
  width: 90%;
  height: 90%;
  object-fit: cover;
  opacity: 0;
  animation: top 1.25s linear both;
}
@keyframes top {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.top-bara2-mobile {
  width:150px;
  height:300px;
}

.top-bara2-mobile img {
	width:100%;
	height: 70%;
}

.top-PC_flex {
  display: none;
}

.top-bara2 img {
  width: 90%;
  height: 90%;
  object-fit: cover;
  opacity: 0;
  animation: top 1.25s linear both;
}
.first-view {
  display: flex;
  flex-direction: column;
  padding: 10px 0 0;
  position: relative;
}
@media(min-width:950px) {
  .top-mobile_flex {
  display: none;
}
.catchcopy-mobile {
  margin:0 0 30px 0;
} 
  .top-PC_flex {
  display: flex;
  justify-content: center;
    gap:30px;
}
  .first-view {
    display: flex;
    flex-direction: row-reverse;
    justify-content: center;
  }
  .top-baraPC {
    width: 470px;
    height: 603px;
     }
  
  .top-baraPC img {
  width: 90%;
  height: 90%;
  object-fit: cover;
  opacity: 0;
  animation: top 1.25s linear both;
}
  .top-bara2 {
    display: none;
  }
  .top-bara2PC {
    width: 350px;
    height: 230px;
    margin: 50px 0 30px;
  }
  .top-bara2PC img {
  width: 90%;
  height: 90%;
  object-fit: cover;
  opacity: 0;
  animation: top 1.25s linear both;
}
}
.bird-ae {
  z-index: 3;
  position: absolute;
  width: 100%;
  height: 67%;
  margin-top: -1500px;
  }
.bird-aePC {
  display: none;
}

@media(max-width:480px) {
  .top-bara {
    width: 240px;
    height: 350px;
  }
  .top-bara2 {
    width: 180px;
    height: 120px;
    margin: 10px 0 0 30px;
  }
  .top-bara2 img {
    width: 90%;
    height: 90%;
    object-fit: cover;
  }
}
@media(min-width:600px) {
  .bird-ae {
    display: none;
  } 
 .bird-aePC {
  z-index: 4;
  position: absolute;
  width: 100%;
  height: 37%;
   margin-top: -800px;
   display:block;
    } 
  
}
@media(max-width:1280px) {
  
}
/*========================================
body共通=========================================*/
.max-description {
  max-width: 1100px;
  margin: 0 auto;
}
.main {
  background-color: #ffffff;
  background-position: center;
  background-size: auto 100%;
  height: auto;
  position: relative;
}
/*========================================
TOP=========================================*/
.container {
  padding: 70px 80px;
  margin: 0 auto;
  max-width: 1100px;
}
@media (max-width:600px) {
  .container {
    padding: 30px;
    margin: 0 auto;
  }
 }
@media (max-width:450px) {
  .container {
    padding: 40px 20px 10 ;
    margin: 0 auto;
  }
}
.bird {
  width: 50px;
}

.TOP-section_catchcopy {
  font-size: 2.4rem;
  font-family: "Zen Maru Gothic", serif;
  font-weight: 400;
  font-style: normal;
  padding: 60px 0;
  text-align: center;
  line-height: 5.4rem;
  color: #3C153D;
  margin:0;
}
.back-murasaki {
  background:#F7E6F5;
  padding-bottom: 70px;
  border-radius: 30px;
}
.omise {
  width: 380px;
  height: 300px;
  margin: 30px auto;
}
.omise-img {
  width: 90%;
	height: 100%;
	object-position: bottom;
}
.honbun {
  line-height: 1.75;
  letter-spacing: 1px;
  text-align: left;
  margin: 40px auto;
  width:300px;
}
.flex-top {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  max-width: 1100px;
  margin: 0 auto;
  padding: 35px 0;
  gap: 10px;
}
.kuwashiku {
  font-size: 1.4rem;
  letter-spacing: 3px;
}
.button {
  width: 60px;
}
.gotyuumon {
  display: block;
  width: fit-content;
  padding: 10px 40px;
  margin: 17px auto;
  border-radius: 100px;
  background: #8B888B;
  font-size: 1.4rem;
  letter-spacing: 3px;
}
.gotyuumon-box {
  padding: 30px 0;
}
.hanabira {
  position: relative;
  padding: 0;
  height: 400px;
  margin: 50px 0;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.hanabira img {
  width: 50px;
  position: absolute;
  top: -50px;
  animation: fall 4s linear infinite, rotate1 2s ease-in-out infinite alternate;
}
@keyframes fall {
  to {
    top: 120%;
  }
}
@keyframes rotate1 {
  from {
    transform: translateX(0px) rotate(0deg);
  }
  to {
    transform: translateX(200px) rotate(-80deg) rotateX(180deg);
  }
}
@keyframes rotate2 {
  from {
    transform: translateX(200px) rotate(-45deg);
  }
  to {
    transform: translateX(0px) rotate(0deg);
  }
}
.hanabira img:nth-child(1) {
  left: 0;
  animation: fall 10s linear infinite, rotate1 3s ease-in-out infinite alternate;
}
.hanabira img:nth-child(2) {
  left: 5vw;
  animation: fall 15s linear infinite, rotate1 2s ease-in-out infinite alternate;
}
.hanabira img:nth-child(3) {
  left: 15vw;
  animation: fall 9s linear infinite, rotate1 3.5s ease-in-out infinite alternate;
}
.hanabira img:nth-child(4) {
  left: 30vw;
  animation: fall 8s linear infinite, rotate2 4s ease-in-out infinite alternate;
}
.hanabira img:nth-child(5) {
  left: 40vw;
  animation: fall 10s linear infinite, rotate1 4s ease-in-out infinite alternate;
}
.hanabira img:nth-child(6) {
  left: 55vw;
  animation: fall 11s linear infinite, rotate2 3s ease-in-out infinite alternate;
}
.hanabira img:nth-child(7) {
  left: 65vw;
  animation: fall 7s linear infinite, rotate2 3.5s ease-in-out infinite alternate;
}
.hanabira img:nth-child(8) {
  left: 50vw;
  animation: fall 7s linear infinite, rotate1 3s ease-in-out infinite alternate;
}
.bara1 {
  height: 300px;
  margin: 100px auto;
}
@media(max-width:450px) {
  .bara1 {
    height: 200px;
    margin: 100px auto;
  }
  .omise {
    width: 250px;
    height: 180px;
  }
  .honbun {
  line-height: 1.75;
  letter-spacing: 1px;
  text-align: left;
  margin: 40px auto;
  width:250px;
}
	.gotyuumon {
	display: block;
  width: fit-content;
  padding: 10px 20px;
  margin: 17px auto;
  border-radius: 100px;
  background: #8B888B;
  font-size: 1.4rem;
  letter-spacing: 3px;	
	}
}
.fuwafuwa {
  animation: fuwafuwa 3s ease-in-out infinite alternate;
  /*background: url(../img/ico-apple.svg) no-repeat center center / 60px auto;*/
  display: inline-block;
  transition: 1.5s ease-in-out;
  /*  width: 70px;
  height: 70px;
  margin-top: 15px;*/
}
@keyframes fuwafuwa {
  0% {
    transform: translate(0, 0) rotate(-7deg);
  }
  50% {
    transform: translate(0, -7px) rotate(0deg);
  }
  100% {
    transform: translate(0, 0) rotate(7deg);
  }
}
@media (min-width:768px) {
  .top-section .catchcopy {
    text-align: center;
  }
  .omise {
  width: 480px;
  height: 340px;
  margin: 0 auto;
}
  .honbun {
    text-align: left;
  font-size: 1.4rem;
  line-height: 1.75;
  letter-spacing: 1px;
  margin: 40px auto;
  width:600px;
  }
  .kaigyou {
    display: none;
  }
}
@media (max-width:370px) {
	  .honbun {
  line-height: 1.75;
  letter-spacing: 1px;
  text-align: left;
  margin: 40px auto;
  width:220px;
}
}
/*SERVICE========================================================================================================================================================================================================================================================================*/
.servise-container {
  padding: 10px 20px 30px;
  margin: 0 auto;
  max-width: 1100px;
}

section h2 {
  margin: 30px 0px;
}
.SERVICEtitle {
  width: 200px;
  margin: 0 auto;
  padding:50px 0  0;
}
.SERVICEtitle img {
  width: 90%;
}
.servise-filter {
  background-color: #000;
  opacity: 3.8;
  width: 300px;
  height: 250px;
  display: inline-block;
}
.hanataba {
  opacity: 0.9;
  width: 300px;
  height: 250px;
}
.hanataba-2 {
  margin-top: 60px;
}
.servise-menu {
  font-size: 1.8rem;
  margin: 50px auto;
  font-family: "Zen Maru Gothic", serif;
  font-weight: 400;
  font-style: normal;
  color: #3C153D;
  text-align: center;
}
.setsumei {
  width: 300px;
  margin: 20px auto;
	line-height: 1.75;
    letter-spacing: 1px;
    text-align: left;
}
.bara2 {
  width: 250px;
  margin: 50px 0;
}
.ikekomi-img {
  width: 200px;
  height: 150px;
  margin:50px auto;
}
@media(min-width:768px) {
  section h2 {
  padding: 70px 0px;
    margin:0;
  }
  .servise-container {
    padding: 70px 0px;
  margin: 0 auto;
  }
  .servise-flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: center;
  max-width: 1100px;
  margin: 0 auto;
}
  .servise-flex_1 {
    margin: 0 0 0 50px ;
  }
  .servise-flex_2 {
    margin-right: 80px;
  }
  .servise-menu {
    text-align: center;
  }
  .setsumei {
    text-align: center;
    width: 350px;
    margin: 0 auto;
  }
  .servise-filter {
    background-color: #000;
    opacity: 3.8;
    width: 420px;
    height: 350px;
    display: inline-block;
    
  }
  .hanataba {
    opacity: 0.9;
    width: 420px;
    height: 350px;
    margin: 0 auto;
    
  }
  .bara2 {
    width: 280px;
    margin: 250px 0 0;
  }
}
@media (max-width:450px) {
  .servise-filter {
    background-color: #000;
    opacity: 3.8;
    width: 250px;
    height: 180px;
    display: inline-block;
  }
  .hanataba {
    opacity: 0.9;
    width: 250px;
    height: 180px;
  }
  .bara2 {
    width: 180px;
    margin: 50px 0;
  }
  .setsumei {
  width: 280px;
  margin: 20px auto;
	line-height: 1.75;
    letter-spacing: 1px;
    text-align: left;
}
}

@media (max-width:370px) {
	.setsumei {
		width: 230px;
	}
}
/*Q&A========================================================================================================================================================================================================================================================================*/
.qatitle {
  width: 200px;
  margin: 0 auto;
}
.qatitle img {
  width: 50%;
}
.single-item {
  background-color: #fff;
  border-radius: 5px;
  padding: 20px 30px;
}
.single-item h3 {
  text-align: left;
}
@media(min-width:768px) {
.single-item h3 {
  text-align: center;
}	
}
@media (max-width:450px) {
	.single-item {
    
    border-radius: 5px;
    padding: 20px 5px;
}
}
/*address========================================================================================================================================================================================================================================================================*/
.addoress-title {
  width: 230px;
  margin: 0 auto;
}
.addoress-title img {
  width: 95%;
  align-items: center;
  justify-content: center;
}
.map {
  width: 80%;
  height: 40vh;
}
@media(min-width:800px) {
  .map {
    width: 80%;
    height: 60vh;
  }
}
.adress-syousai {
  width: 230px;
  margin: 30px auto;
  text-align: left;
	color: #3C153D;
}
@media (min-width:768px) {
  .adress-syousai {
    margin: 20px auto;
    text-align: center;
  }
}
/*footer========================================================================================================================================================================================================================================================================*/
.footer {
  background-color:#F7E6F5;
}
.morihanaseal {
  width: 250px;
  margin: 25px 0 110px;
}
.footer-container {
	z-index: 4;
  width: 100%;
  position: fixed;
  bottom: 0px;
}
@media(min-width:600px) {
  .footer-container {
    display: none;
  }
  .morihanaseal {
    display: none;
  }
}
.footer-container img {
  width: 100%;
}
.footer-container_flex {
  display: flex;
  justify-content: center;
  max-width: 1100px;
  gap: 2px;
  list-style: none;
}
.footer-container_flex li {
  width: 25%;
}
.footer-container_flex2 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2px;
  list-style: none;
}
.footer-container_flex2 li {
  color: #fff;
  font-size: 1.4rem;
  padding: 0 10px;
  font-family: "REM", sans-serif;
}
.pc-img {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100px;
}
.morihanaseal-PC {
  width: 80%;
}
.footer-PC_flex {
  display: flex;
  height: 50px;
  background-color: #D387D6;
  justify-content: center;
  gap: 2px;
  list-style: none;
}
@media(max-width:600px) {
  .footer-PC_flex {
    display: none;
  }
}
@media(max-width:600px) {
  .footer-PC_flex {
    display: none;
  }
}


.blur {
  animation-name: blurAnime;
  animation-duration: 1s;
  animation-fill-mode: forwards;
}
@keyframes blurAnime {
  from {
    filter: blur(10px);
    transform: scale(1.02);
    opacity: 0;
  }
  to {
    filter: blur(0);
    transform: scale(1);
    opacity: 1;
  }
}
.blurTrigger {
  opacity: 0;
}
/*スライダー（Q&A）========================================================================================================================================================================================================================================================================*/
.slick-dots {
  position: static;
  padding: 30px 0;
}
.single-item h3 {
  margin: 20px;
}
/*==================================================
スライダーのためのcss（スライドショー）
===================================*/
.slider img {
    width:100%;/*スライダー内の画像を横幅100%に*/
    height:auto;
}

/*slickのJSで書かれるタグ内、スライド左右の余白調整*/

.slider .slick-slide {
    margin:0 10px;/*スライド左右の余白調整*/
}