@charset "UTF-8";
/* --------------------------------------------------
    COMMON
-------------------------------------------------- */
html { overflow-x: hidden; }
body, p { line-height: 1.8rem !important; }
.border { border-width: 2px !important; }
.bg-lightblue {	background: #EAF2F4; }

/* 半円背景各種
-------------------------------------------------- 
/* 半月（背景白） */
.half-white:after { background-color: #fff; }
/* 半月（背景薄青） */
.half-lightblue:after { background: #EAF2F4; }
/* 半月（背景緑） */
.half-info:after { background: #17a2b8; }

/* 共通 */
.half {
    width: 100%;
    height: 150px;
    position: absolute;
    top: 0;
}
.half:after {
	content: ' ';
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: -1;    
}

/* 見出し青丸
-------------------------------------------------- */
.dot {
	padding-left: 1.5rem !important;
	padding-right: 1.5rem !important;
}
.dot:before, .dot:after {
	font-family: "Font Awesome 5 Free";/*忘れずに*/
	content: "\f111";/*アイコンのユニコード*/
	font-size: 1.2rem;/*サイズ*/
	color: #a1ceff;
	padding: 0 10px;
	vertical-align: middle;
}
/* --------------------------------------------------
    header
-------------------------------------------------- */
header .container-fluid {
	height: 100vh;
	width: 100%;
	background: url(../img/image-top.jpg);
	background-size: cover;
	background-position: 50% 100%;
}
/*    グローバルナビ
-------------------------------------------------- */
.breadcrumb {
	background: transparent;
}
.breadcrumb-item + .breadcrumb-item::before {
	content: '>';
	color: #fff;
}
.nav-text{
	font-weight: bold;
    margin-right: 20px;
}
/* --------------------------------------------------
    トップページ
-------------------------------------------------- */
/* トップ画像 */
.top-image {
  box-shadow: 0px 5px 6px 0px #e2e2e2;
  border-radius: 0;
}
.display-4{
	color: #505050;
}
/*スライダー*/
.test-slick__item img {
    height: auto;
    width: 100%;
}

.balloon {
	width: 130px;
	height: 130px;
	top: -50px;
	z-index: 10;
	left: -20px;
	font-size: 15px;
}
.balloon-s {
	width: 110px;
	height: 110px;
	top: -20px;
	z-index: 10;
	left: -20px;
	font-size: 14px;
}
.balloon:before, .balloon-s:before {
	content: "";
	position: absolute;
	bottom: -5px;
	right: -5px;
	margin-top: -15px;
	border: 10px solid transparent;
	border-left: 30px solid #17a2b8;
	z-index: 0;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
/*tableスタイル*/
/*
table tr:last-child {
	border-bottom: 1px solid #dee2e6;
}
table tr:nth-child(even) {
	background-color: #F9F9F9;
}
table tr:nth-child(odd) {
	background-color: #E4E9EF;
}*/
.komidasi{
	font-size: 20px;
	margin-top:-40px
	
}
/* お知らせ */
.badge-oshirase {
  color: #212529;
  background-color: #ffc107
}
a.badge-oshirase:focus, a.badge-oshirase:hover {
  color: #212529;
  background-color: #d39e00
}
.badge-event {
  color: #fff;
  background-color: #28a745
}
a.badge-event:focus, a.badge-event:hover {
  color: #fff;
  background-color: #1e7e34
}
.badge-onegai {
  color: #fff;
  background-color: #dc3545
}
a.badge-onegai:focus, a.badge-onegai:hover {
  color: #fff;
  background-color: #bd2130
}
.date {
	color: #1AA800;
	font-weight: bold;
	font-size: 1.1rem;
}

/* ダウンロードコンテンツ */
.card{
  width: 288px;
  height: auto;
  margin: 15px auto 30px auto;
  transition: transform .6s ease; /* ホバーゆっくり変化させる */
}
.card__imgframe{
  width: 100%;
  height: auto;
  padding-top: 5%;
  background-color: #a1ceff;
  box-sizing: border-box;
}
.card__imgframe_orange{
  width: 100%;
  height: auto;
  padding-top: 5%;
  background-color: #FF9300;
  box-sizing: border-box;
}
.card__imgframe_white{
  width: 100%;
  height: auto;
  padding-top: 5%;
  background-color: #FFFFFF;
  box-sizing: border-box;
}
.card__imgframe_green{
  width: 100%;
  height: auto;
  padding-top: 5%;
  background-color: #80CF04;
  box-sizing: border-box;
}
.card__textbox{
  width: 100%;
  height: auto;
  padding: 20px 18px;
  background: #ffffff;
  box-sizing: border-box;
}
.card a {
	color: #000000;
}
.card:hover{
	transform: scale(1.1); /* 拡大 */
}
.card__textbox > * + *{
  margin-top: 10px;
}
.card__titletext{
  font-size: 20px;
  font-weight: bold;
  line-height: 125%;
  text-align: center;
}
.card__overviewtext{
  font-size: 12px;
  line-height: 150%;
}

/* --------------------------------------------------
    サンプルページ
-------------------------------------------------- */
.season {
	width: 70px;
	height: 70px;
	left: 10px;
	padding: 0.34em;
}
.season div {
	display: block;
	width: 100%;
	height: 100%;
	border: 2.4px dotted #fff;
}
.title {
    font-size: 1.8rem;
	border-bottom: 2px solid #17a2b8;
}
.stripe {
	background: repeating-linear-gradient(90deg, #fff 0, #fff 40%, #17a2b8 40%, #17a2b8 60%, #fff 60%, #fff 70%);
}


.container {
	margin-top: -10px;
	padding-top: 15px;
}



/*ページトップ戻るボタン*/
#page_top{
  z-index: 999999;
  width: 50px;
  height: 50px;
  position: fixed;
  right: 0;
  bottom: 0;
  background: #3f98ef;
  opacity: 0.6;
  border-radius: 50%;
}
#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f102';
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -5px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}


/* スクロールダウン */
.scroll {
  color: #EB1417;
  font-weight: bold;
  position: absolute;
  right:5%;
  top: 70%;
  writing-mode: vertical-rl;
  font-size: 1.5rem;
}
/* 線のアニメーション部分 */
.scroll::before {
  animation: scroll 2s infinite;
  background-color: #EB1417;
  bottom: -115px;
  content: "";
  height: 100px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 4px;/*ラインの位置調整*/
  width: 2px;
}
/* 線のアニメーション */
@keyframes scroll {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  51% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}



.scroll_down a{
  position: absolute;
  left: -24px;
  bottom: 17px;
  color: #000;
  font-size: 14px;
  font-family: 'Josefin Sans', sans-serif;
  letter-spacing: .2em;
  writing-mode: vertical-rl;
  text-decoration: none;
  text-transform: uppercase;
}





@keyframes arrowmove{
   0%{bottom:1%;}
   50%{bottom:5%;}
   00%{bottom:1%;}
}




.continer-fluid {
    margin-top: 10px;
}

/*スクロールダウン設定ここから*/
.container_02 {
  margin: 0;
  padding: 0;
  height: 300px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: transparent;
  overflow: hidden;
  position:absolute;
  top:50%;
  right: 3%;
}

.container_02 a:hover {
  opacity: 0.7;
}

.scroll-down_02 {
  position: relative;
  width: 200px;
  height: 200px;
  color: #000;
  font-family: serif;
    font-weight: bold;
  text-decoration: none;
}

.circle-text_02 {
  position: absolute;
  width: 100%;
  height: 100%;
  animation: rotate 20s linear infinite;
}

.circle-text_02 span {
  position: absolute;
  left: 50%;
  font-size: 16px;
  transform-origin: 0 100px;
}

.arrow_02 {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 30px;
  height: 30px;
  border-left: 2px solid #000;
  border-bottom: 2px solid #000;
  transform: translate(-50%, -50%) rotate(-45deg);
  animation: pulse_02 2s infinite;
}

@keyframes rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@keyframes pulse_02 {
  0%,
  100% {
    transform: translate(-50%, -50%) rotate(-45deg) scale(1);
  }
  50% {
    transform: translate(-50%, -50%) rotate(-45deg) scale(1.1);
  }
}
/*スクロールダウンここまで*/


.akaihane {
    position: absolute;
    top: 20%;
    right: 2%;
}
.akaihane img{
    height: 15%;
}


/*スマホ対応*/
@media screen and (max-width: 748px) {
    .container_02{
        display: none;
    }
    .akaihane {
    position: absolute;
    top: 38%;
    z-index: 999999;
}

}