@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@100&display=swap');

.sakura {
  position: absolute;
  padding: 0;
  margin: 0;
  width: 100%;
/*  height: 100%; */
  height: 250%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.sakura h1 {
  font-family: 'M PLUS Rounded 1c', sans-serif;
  font-size: 5rem;
  color: #fff;
}

.sakura li{
  position: absolute;
  list-style: none;
  top: -50px;
  background: #ffdbed;
  border-radius: 0% 70%;  
  animation: fall 4s linear infinite, sway 2s ease-in-out infinite alternate;
}

@keyframes fall {
  to {
    top: 120%;
  }
}

@keyframes sway1 {
  from {
    transform: translateX(0px) rotate(0deg);
  }
  to {
    transform: translateX(200px) rotate(-45deg);
  }
}

@keyframes sway2 {
  from {
    transform: translateX(200px) rotate(-45deg);
  }
  to {
    transform: translateX(0px) rotate(0deg);
  }
}

.sakura li:nth-child(1){
  left: 0%;
  width: 24px;
  height: 15px;
/*  animation: fall 10s linear infinite,
             sway1 3s ease-in-out infinite alternate;
  animation-delay: 2s; */
  animation: fall 30s linear infinite,
             sway1 9s ease-in-out infinite alternate;
  animation-delay: 2s;
}

.sakura li:nth-child(2){
  left: 5%;
  width: 13px;
  height: 9px;
/*  animation: fall 15s linear infinite,
             sway1 2s ease-in-out infinite alternate;
  animation-delay: 8s; */
  animation: fall 45s linear infinite,
             sway1 6s ease-in-out infinite alternate;
  animation-delay: 8s;
}

.sakura li:nth-child(3){
  left: 15%;
  width: 16px;
  height: 10px;
/*  animation: fall 9s linear infinite,
             sway1 3.5s ease-in-out infinite alternate;
  animation-delay: 13s; */
  animation: fall 27s linear infinite,
             sway1 10.5s ease-in-out infinite alternate;
  animation-delay: 13s;
}

.sakura li:nth-child(4){
  left: 30%;
  width: 16px;
  height: 10px;
/*  animation: fall 8s linear infinite,
             sway2 4s ease-in-out infinite alternate;
  animation-delay: 7s; */
  animation: fall 24s linear infinite,
             sway2 12s ease-in-out infinite alternate;
  animation-delay: 7s;
}
.sakura li:nth-child(5){
  left: 40%;
  width: 16px;
  height: 10px;
/*  animation: fall 10s linear infinite,
             sway1 4s ease-in-out infinite alternate;
  animation-delay: 0s; */
  animation: fall 30s linear infinite,
             sway1 12s ease-in-out infinite alternate;
  animation-delay: 0s;
}
.sakura li:nth-child(6){
  left: 55%;
  width: 24px;
  height: 15px;
/*  animation: fall 11s linear infinite,
             sway2 3s ease-in-out infinite alternate;
  animation-delay: 3s; */
  animation: fall 33s linear infinite,
             sway2 9s ease-in-out infinite alternate;
  animation-delay: 3s;
}
.sakura li:nth-child(7){
  left: 65%;
  width: 16px;
  height: 10px;
/*  animation: fall 7s linear infinite,
             sway2 3.5s ease-in-out infinite alternate;
  animation-delay: 7s; */
  animation: fall 21s linear infinite,
             sway2 10.5s ease-in-out infinite alternate;
  animation-delay: 7s;
}
.sakura li:nth-child(8){
  left: 50%;
  width: 13px;
  height: 9px;
/*  animation: fall 7s linear infinite,
             sway1 3s ease-in-out infinite alternate;
  animation-delay: 3s; */
  animation: fall 21s linear infinite,
             sway1 9s ease-in-out infinite alternate;
  animation-delay: 3s;
}
.sakura li:nth-child(9){
  left: 80%;
  width: 16px;
  height: 10px;
/*  animation: fall 10s linear infinite,
             sway2 4s ease-in-out infinite alternate;
  animation-delay: 4s; */
  animation: fall 30s linear infinite,
             sway2 12s ease-in-out infinite alternate;
  animation-delay: 4s;
}
.sakura li:nth-child(10){
  left: 30%;
  width: 16px;
  height: 10px;
/*  animation: fall 10s linear infinite,
             sway1 3.5s ease-in-out infinite alternate;
  animation-delay: 4s; */
  animation: fall 30s linear infinite,
             sway1 10.5s ease-in-out infinite alternate;
  animation-delay: 4s;
}
.sakura li:nth-child(11){
  left: 20%;
  width: 16px;
  height: 10px;
/*  animation: fall 7s linear infinite,
             sway1 3s ease-in-out infinite alternate;
  animation-delay: 8s; */
  animation: fall 21s linear infinite,
             sway1 9s ease-in-out infinite alternate;
  animation-delay: 8s;
}
.sakura li:nth-child(12){
  left: 80%;
  width: 16px;
  height: 10px;
/*  animation: fall 10s linear infinite,
             sway2 4s ease-in-out infinite alternate;
  animation-delay: 0s; */
  animation: fall 30s linear infinite,
             sway2 12s ease-in-out infinite alternate;
  animation-delay: 0s;
}


/* 共通部分
------------------------------- */
html {
    font-size: 100%;
/*  width: 100%;
  height: 100vh;
  overflow: hidden;
  background: linear-gradient(#00bfff, #fff); */
}
body{
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", sans-serif;
    line-height: 1.7;
    color: #432;
}
a {
    text-decoration: none;
}
img {
    max-width: 100%;
	z-inez: 1;
}
imgup {
    max-width: 100%;
	z-inex: 2;
}
imgunder {
    max-width: 100%;
	z-inex: 1;
}
.wrapper {
  /*  max-width: 1100px; */
    margin: 0 auto;
  	padding: 0 2%;
}
#headmenu {
	min-height: 20vh;
    height: 30px;
    margin-bottom: 10px;
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 4%;
}
.blinking{
	-webkit-animation:blink 1s ease-in-out infinite alternate;
    -moz-animation:blink 1s ease-in-out infinite alternate;
    animation:blinking 1s ease-in-out infinite alternate;
}
@-webkit-keyframes blinking{
    0% {opacity:0;}
    100% {opacity:1;}
}
@-moz-keyframes blinking{
    0% {opacity:0;}
    100% {opacity:1;}
}
@keyframes blinking{
    0% {opacity:0;}
    100% {opacity:1;}
}
/* 大きな背景画像 */
.big-bg {
    background-size: contain;
    background-position: center top;
	background-position: center 80px;
}

.photostyle {
	margin: 0 0 30px 30px;
/*	border: 1px solid #000; */
}

/* 見出し *//* 背景画像の見えている高さ */
.parallax {
  height: 40px;
}
.parallax::before {
  background-image: url("../images/IMGP_2026_koh.jpg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  height: 100vh;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: -1;
}

.page-title {
    font-size: 5rem;
    font-family: 'Philosopher', serif;
    text-transform: uppercase;
    font-weight: normal;
	color: darkviolet;
}
.sub-title {
    font-size: 1.375rem;
    padding: 0 8px 8px;
    border-bottom: 2px #0bd solid;
    font-weight: normal;
}
.msub-title {
    font-size: 1.375rem;
    padding: 0 8px 8px;
    border-bottom: 2px #f0f solid;
    font-weight: normal;
}
.csub-title {
    font-size: 1.375rem;
    padding: 0 8px 8px;
    border-bottom: 2px #0bd solid;
    font-weight: normal;
}

/* ボタン */
.btn {
  border: 1px solid blue;
  border-radius: 5px;
  background-color: blue;
  padding: 3px;
  text-align: center;
  color: white;
  width: 300px; 
}
.btn:hover {
    background: #0090aa;
}
/*.btn:after {
  font-family: "Font Awesome 5 Free";
  content: '\f35d'; /* "Font Awesome 5 Free" */
}*/
.button {
    font-size: 1.375rem;
    background: #0bd;
    color: #fff;
    border-radius: 5px;
    padding: 18px 32px;
}
.button:hover {
    background: #0090aa;
}

/* iframe */
iframe {
    width: 100%;
}

/* JYUKU
------------------------------- */

.text-left {
  text-align: left; /* !important; */
}

.text-right {
  text-align: right; /* !important; */
}

.text-center {
  text-align: center; /* !important; */
}

.mt-2 {
  margin-top: 0.5rem; /* !important; */
}

.container {
  width: 80%;
  padding-right: 50px;
  padding-left: 50px;
  margin-top: 0;
  margin-right: auto;
  margin-left: auto;
  background-color: white;
  border: solid 1px;
  border-radius: 10px;
  border-color: #ff69b4;
}
/* .gyokan{
  line-height: 90%;
  font-weight: 700;
} */
.row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}


.col {
  -ms-flex-preferred-size: 0;
  flex-basis: 0;
  -ms-flex-positive: 1;
  flex-grow: 1;
  max-width: 100%;
}

.col-auto {
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  width: auto;
  max-width: 100%;
}

.col-1 {
  -ms-flex: 0 0 8.333333%;
  flex: 0 0 8.333333%;
  max-width: 8.333333%;
}

.col-2 {
  -ms-flex: 0 0 16.666667%;
  flex: 0 0 16.666667%;
  max-width: 16.666667%;
}

.col-3 {
  -ms-flex: 0 0 25%;
  flex: 0 0 25%;
  max-width: 25%;
}

.col-4 {
  -ms-flex: 0 0 33.333333%;
  flex: 0 0 33.333333%;
  max-width: 33.333333%;
}

.col-5 {
  -ms-flex: 0 0 41.666667%;
  flex: 0 0 41.666667%;
  max-width: 41.666667%;
}

.col-6 {
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  max-width: 50%;
}

.col-7 {
  -ms-flex: 0 0 58.333333%;
  flex: 0 0 58.333333%;
  max-width: 58.333333%;
}

.col-8 {
  -ms-flex: 0 0 66.666667%;
  flex: 0 0 66.666667%;
  max-width: 66.666667%;
}

.col-9 {
  -ms-flex: 0 0 75%;
  flex: 0 0 75%;
  max-width: 75%;
}

.col-10 {
  -ms-flex: 0 0 83.333333%;
  flex: 0 0 83.333333%;
  max-width: 83.333333%;
}

.col-11 {
  -ms-flex: 0 0 91.666667%;
  flex: 0 0 91.666667%;
  max-width: 91.666667%;
}

.col-12 {
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  max-width: 100%;
  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;
}


/* HEADER
------------------------------- */
.page-header {
    display: flex;
    justify-content: space-between;
	background-color: white;
}
.logo {
    /* width: 200px;
    margin-top: 14px; */
    width: 180px;
    margin-top: 14px;
}
.main-nav {
    display: flex;
    font-size: 0.8rem;
    text-transform: uppercase;
    margin-top: 52px;
    list-style: none;
}
.main-nav li {
    margin-left: 36px;
}
.main-nav a {
    color: #432;
}
.main-nav a:hover {
    color: #0bd;
}

/* HOME
------------------------------- */
#home {
	width: auto;
	margin-left: 10px;
	margin-right: 10px;
	margin-bottom: 20px;
}
#home .page-title {
    text-transform: none;
}
.home-content {
    text-align: center;
    margin-top: 10%;
}
.home-content p {
    font-size: 1.125rem;
    margin: 10px 0 42px;
}

.list2 ul li {
  padding: 10px 0;
  list-style-type: none;
  margin-left: 1.3rem;
  text-indent: -1.3rem;
}

.list2 ul li::before {
  display: inline;
  content: "※ ";
}

/* サイドバー */
aside {
    width: 22%;
}

mside {
    width: 37%;
}

cside {
    width: 37%;
}
.sub-menu {
    margin-bottom: 60px;
    list-style: none;
}
.sub-menu li {
    border-bottom: 1px #ddd solid;
}
.sub-menu a {
    color: #432;
    padding: 10px;
    display: block;
}
.sub-menu a:hover {
    color: #0bd;
}
aside p {
    padding: 12px 10px;
}

mside p {
    padding: 12px 10px;
}

cside p{
    padding: 12px 10px;
 /*   width: 37%; */
}

.msub-menu {
    margin-bottom: 60px;
    margin-top: 8px;
    list-style: none;
}
.msub-menu li {
    border-bottom: 1px #ddd solid;
}
.msub-menu a {
    color: #432;
    padding: 10px;
    display: block;
}
.msub-menu a:hover {
    color: #0bd;
}

.csub-menu {
    margin-bottom: 10px;
    margin-top: 8px;
    list-style: none;
}
.csub-menu li {
    border-bottom: 1px #ddd solid;
}
.csub-menu a {
    color: #432;
    padding: 10px;
    display: block;
}
.csub-menu a:hover {
    color: #0bd;
}

/* MENU
------------------------------- */
#menu {
    background-image: url(../images/IMG_works_001.jpg);
    min-height: 80vh;
    height: 270px;
    margin-bottom: 10px;
}
.menu-content {
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px;
}
/* .page-title {
    text-align: center; 
} */
.menu-content p {
    font-size: 1.125rem;
    margin: 10px 0 0;
}

.grid {
  display: grid;
  grit-gap: 26px;
  /* grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); */
  grid-template-columns: repeat(auto-fit, minmax(240px, 240px));
  margin-top: 6%;
  margin-bottom: 50px;
}

/* フッター
------------------------------- */
footer {
    /* background: #432; */
    text-align: center;
    padding: 5px 0;
	background: #FFF;
}
footer p {
    /* color: #fff; */
    font-size: 0.9rem;
}

/* モバイル版
------------------------------- */
@media (max-width: 600px) {
    .page-title {
        font-size: 2.5rem;
    }
    .page-header {
        flex-direction: column;
        align-items: center;
    }
	
	.container {
  		width: 98%;
  		padding-right: 5px;
  		padding-left: 5px;
  		margin-top: 0;
  		margin-right: auto;
  		margin-left: auto;
  		background-color: white;
	}
	
	.row {
  		display: -ms-flexbox;  
  		display: list-item;
  		-ms-flex-wrap: wrap;   
  		flex-wrap: wrap;
  		margin-right: -5px;
  		margin-left: -5px;  
	}
	
	.col-1 {
  	/*	-ms-flex: 0 0 16.666667%;
  		flex: 0 0 16.666667%;   */
  		max-width: 100%;   
  		margin-right: 5px;
  		margin-left: 5px;  
	}
	.col-2 {
  	/*	-ms-flex: 0 0 16.666667%;
  		flex: 0 0 16.666667%;   */
  		max-width: 100%;   
  		margin-right: 5px;
  		margin-left: 5px;  
	}
	.col-3 {
  	/*	-ms-flex: 0 0 16.666667%;
  		flex: 0 0 16.666667%;   */
  		max-width: 100%;   
  		margin-right: 5px;
  		margin-left: 5px;  
	}
	.col-4 {
  	/*	-ms-flex: 0 0 16.666667%;
  		flex: 0 0 16.666667%;   */
  		max-width: 100%;   
  		margin-right: 5px;
  		margin-left: 5px;  
	}
	.col-5 {
  	/*	-ms-flex: 0 0 16.666667%;
  		flex: 0 0 16.666667%;   */
  		max-width: 100%;   
  		margin-right: 5px;
  		margin-left: 5px;  
	}
	.col-6 {
  	/*	-ms-flex: 0 0 16.666667%;
  		flex: 0 0 16.666667%;   */
  		max-width: 100%;   
  		margin-right: 5px;
  		margin-left: 5px;  
	}
	.col-7 {
  	/*	-ms-flex: 0 0 16.666667%;
  		flex: 0 0 16.666667%;   */
  		max-width: 100%;   
  		margin-right: 5px;
  		margin-left: 5px;  
	}
	.col-8 {
  	/*	-ms-flex: 0 0 16.666667%;
  		flex: 0 0 16.666667%;   */
  		max-width: 100%;   
  		margin-right: 5px;
  		margin-left: 5px;  
	}
	.col-9 {
  	/*	-ms-flex: 0 0 16.666667%;
  		flex: 0 0 16.666667%;   */
  		max-width: 100%;   
  		margin-right: 5px;
  		margin-left: 5px;  
	}
	.col-10 {
  	/*	-ms-flex: 0 0 16.666667%;
  		flex: 0 0 16.666667%;   */
  		max-width: 100%;   
  		margin-right: 5px;
  		margin-left: 5px;  
	}
	.col-11 {
  	/*	-ms-flex: 0 0 16.666667%;
  		flex: 0 0 16.666667%;   */
  		max-width: 100%;   
  		margin-right: 5px;
  		margin-left: 5px;  
	}
	.col-12 {
  	/*	-ms-flex: 0 0 16.666667%;
  		flex: 0 0 16.666667%;   */
  		max-width: 100%;   
  		margin-right: 5px;
  		margin-left: 5px;  
	}

    /* HEADER */
    .main-nav {
     /*   font-size: 0.3rem; */
        font-size: 1rem;
        margin-top: 10px;
		display: list-item;
    }
    .main-nav li {
        margin: 0 40px;
    }

    /* HOME */
    .home-content {
        margin-top: 20%;
    }

    /* NEWS */
    .news-contents {
        flex-direction: column;
    }
    #news .page-title {
        margin-top: 30px;
    }
    article,
    aside {
        width: 100%;
    }
    aside {
        margin-top: 60px;
    }
    mside {
        width: 100%;
    }
    mside {
        margin-top: 60px;
    }
    cside {
        width: 100%;
    }
    cside {
        margin-top: 60px;
    }
    .post-info {
        margin-bottom: 30px;
    }
    .post-date {
        width: 70px;
        height: 70px;
        font-size: 1rem;
    }
    .post-date span {
        font-size: 0.875rem;
        padding-top: 2px;
    }
    .post-title {
        font-size: 1.375rem;
    }
    .post-cat {
        font-size: 0.875rem;
        margin-top: 10px;
    }
    .post-title,
    .post-cat {
        margin-left: 80px;
    }

    /* MENU */
    .menu-content {
        margin-top: 20%;
    }

    /* CONTACT 
    #contact .page-title {
        margin-top: 40px;
    }*/

    /* フォーム 
    input[type="text"],
    input[type="email"],
    textarea {
        max-width: 100%;
    }*/

    /* 店舗情報・地図 / SNS
    #location .wrapper,
    #sns .wrapper {
        flex-direction: column;
    }
    .location-info,
    .location-map,
    .sns-box {
        width: 100%;
    }
    .sns-box {
        margin-bottom: 30px;
    } */
}
