@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Ephesis&display=swap');
/* -----------------------------------------------
 index css
-------------------------------------------------- */
#index a {
  text-decoration: none
}
/*---cover---*/
#cover {
  position: relative;
  width: 100%;
  padding-right: 70px;
  padding-bottom: 100px;
}
#cover .swiper-wrapper img {
  display: block;
  width: 100%;
  height: calc(100vh - 100px);
  margin: 0 auto;
  object-fit: cover;
}
#cover .swiper-slide {
  overflow: hidden;
  height: 100%;
  width: 100%;
  opacity: 1;
}
#cover .cover_ttl {
  padding: 2em 5em;
  position: absolute;
  top: 30%;
  left: 5%;
  z-index: 2;
}
#cover .cover_ttl h1 {
  position: relative;
  font-size: 5vw;
  line-height: 1;
  text-align: left;
  font-family: 'Abel', sans-serif;
  font-weight: 400;
  color: white;
  text-shadow: 1px 2px 3px #808080;
}
#cover .cover_ttl h1 span {
  font-size: 2vw;
  letter-spacing: 2px;
  line-height: 1.4;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-weight: 600;
}
#cover .au_txt {
  font-family: 'Abel', sans-serif;
  position: absolute;
  top: 90px;
  right: 23px;
  font-size: 12px;
  z-index: 3
}
#cover .icon_access, #cover .icon_faq, #cover .icon_insta {
  position: absolute;
  text-align: center;
  width: 30px;
  top: 300px;
  right: 15px;
  font-size: 14px;
  z-index: 3;
  color: black
}
#cover .icon_access {
  border-top: 1px solid #D1D1D1;
  padding-top: 15px
}
#cover .icon_faq {
  top: 350px;
  right: 15px;
}
#cover .icon_insta {
  top: 390px;
  border-top: 1px solid #D1D1D1;
  padding-top: 15px
}
#cover a {
  color: rgba(62, 62, 63, 1.00)
}
.right-to-left {
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}
#cover .or_box {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 30%;
  background-color: rgba(224, 137, 34, 1.00);
  z-index: -1
}
#cover .illust {
  position: absolute;
  width: 130px;
  left: 25px;
  bottom: 30px;
  z-index: 3
}
#cover .bigin {
  position: absolute;
  width: 140px;
  left: 170px;
  bottom: 23px;
  border-right: 1px solid #fff;
  padding-right: 20px
}
#cover .or_box .txt {
  position: absolute;
  left: 300px;
  bottom: 40px;
  color: white;
  font-size: 14px;
  font-weight: bold;
  padding-left: 30px
}
/*---swiper zoom---*/
@-webkit-keyframes zoomUp {
  0% {
    -webkit-transform: scale(1) rotate(0.001deg);
    transform: scale(1) rotate(0.001deg);
  }
  100% {
    -webkit-transform: scale(1.05) rotate(0.001deg);
    transform: scale(1.05) rotate(0.001deg);
  }
}
@keyframes zoomUp {
  0% {
    -webkit-transform: scale(1) rotate(0.001deg);
    transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1.05) rotate(0.001deg);
    transform: scale(1.15);
  }
}
.swiper-slide-active .slide-img, .swiper-slide-duplicate-active .slide-img, .swiper-slide-prev .slide-img {
  animation: zoomUp 10s linear 0s 1 normal both;
}
.slide-img img {
  display: block;
}
/* -----------------------------------------------
 active reiwa（サムネイル付）swiper Var.
-------------------------------------------------- */
/*ul#eventa{
	margin:0;
	padding:0;
}
ul#eventa li{
    width: 33%;
    margin: 0;
    padding: 5px;
	box-sizing: border-box;
	background-color: #FFF;
	overflow: visible;
}
ul#eventa li div{
	margin:0.5em 1em;
}
ul#eventa a {
	color: #000;
	text-decoration: none;
	font-size: 16px
}
ul#eventa li a:hover {
	color: #40403F;
}
ul#eventa li span.date{
	display:block;
	font-size: 16px;
	font-weight: 500;
	color: #000;
    margin: 7px 0;
}
ul#eventa li span.photo{
    display:block;
    margin-bottom: 1em;
	text-align:center;
	z-index: 100;
	width: 100%;
}
ul#eventa li span.date.new{
	background-image: url(../eventa/images/icon_new.svg);
	background-size: 42px 14px;
	background-repeat: no-repeat;
	background-position: left 6em top 0.4em;
}
ul#eventa li span.title{
	display:block;
    font-size: 14px
}

.resize {
  object-fit: cover;
  width: 100%;
  height: 230px;
  object-position: 50% 50%; 
  font-family: 'object-fit: cover; object-position: 50% 50%;' 
  }*/
/* swiper */
/*.slider2 .swiper-wrapper {
	width: 100%;
	height: auto;
}
.slider2 .swiper-button-prev,
.slider2 .swiper-button-next {
 position: absolute;
 top: 40%;
}
.slideNone .swiper-button-next,
.slideNone .swiper-button-prev {
    display: none;
}*/
.more {
  position: relative;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 100px;
  text-align: center
}
.more a {
  border: 1px solid #333;
  padding: 0.3em 3em 0.3em 2em;
  font-size: 12px;
  color: black
}
.more i {
  font-size: 8px;
  position: absolute;
  top: 38%;
  right: 2em;
  color: #504F4F
}
/* -----------------------------------------------
 active reiwa（サムネイル付）動きなし
-------------------------------------------------- */
ul#eventa {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
ul#eventa li {
  display: block;
  width: 31%;
  margin: 0 1% 1em 1%;
  background-color: #FFF;
  overflow: visible;
  -webkit-transition: .3s all ease;
  -o-transition: .3s all ease;
  transition: .3s all ease;
  position: relative;
  top: 0;
}
ul#eventa li:hover {
  -webkit-box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.1);
  top: -4px;
}
ul#eventa li div {
  margin: 0.5em 1em;
}
ul#eventa a {
  color: #000;
  text-decoration: none;
  font-size: 16px
}
ul#eventa li a:hover {
  color: #40403F;
}
ul#eventa li span.date {
  display: block;
  font-size: 16px;
  font-weight: 500;
  color: #000;
  margin: 7px 0;
}
ul#eventa li span.photo {
  display: block;
  margin-bottom: 0.5em;
  text-align: center;
  z-index: 100;
  width: 100%;
}
ul#eventa li span.date.new {
  background-image: url(../eventa/images/icon_new.svg);
  background-size: 42px 14px;
  background-repeat: no-repeat;
  background-position: left 6em top 0.4em;
}
ul#eventa li span.title {
  display: block;
  font-size: 14px
}
/*---サムネイル写真のリサイズ---*/
.resize {
  object-fit: cover;
  width: 100%;
  height: 230px;
  object-position: 50% 50%; /* 他のブラウザ用(＝通常の指定) */
  font-family: 'object-fit: cover; object-position: 50% 50%;' /* IE・Edge対応 */
}
/* -----------------------------------------------
eventa_list（写真なし）
-------------------------------------------------- */
/*---NEWS---*/
#news {
  position: relative;
  padding-top: 0;
}
#news .news_more {
  position: absolute;
  top: 0;
  right: 0;
  width: 100px;
  text-align: center
}
#news .news_more a {
  border: 1px solid #333;
  padding: 0.3em 3em 0.3em 2em;
  font-size: 12px;
  color: black
}
#news .news_more i {
  font-size: 8px;
  position: absolute;
  top: 38%;
  right: 2em;
  color: #504F4F
}
ul#eventa_list {
  height: 320px;
  margin: 0 0 3em 0;
  padding: 0;
  overflow-y: auto;
  overflow-x: hidden;
}
ul#eventa_list li {
  width: 100%;
  margin: 0 0.6% 0.5em 0.6%;
  box-sizing: border-box;
  background-color: #FFF;
  overflow: visible;
  border-bottom: 1px dotted #AAAAAA;
  padding: 0.5em 0.5em 0.7em 0.5em;
  list-style: none
}
ul#eventa_list li div {
  margin: 0.5em 1em;
}
ul#eventa_list a {
  color: #000;
  text-decoration: none;
}
ul#eventa_list li a:hover {
  color: #40403F;
}
ul#eventa_list li span.date {
  display: block;
  font-weight: 500;
  color: #000;
  margin: 0;
  width: 9em;
  float: left;
}
ul#eventa_list li span.date.new {
  background-image: url(../eventa/images/icon_new.svg);
  background-size: 42px 14px;
  background-repeat: no-repeat;
  background-position: left 90px top 5px;
}
ul#eventa_list li span.title {
  display: block;
  padding-left: 9em
}
ul#eventa_list.no_date li span.title {
  display: block;
  padding-left: 0
}
.banner img {
  margin-bottom: 10px
}
.banner [class*="col-"] {
  padding: 0 7px 0;
  margin: 0
}
/*---block---*/
.block {
  position: absolute;
  left: 1.5em;
  width: 100px;
  height: 100px;
  z-index: 1;
}
.block2 {
  position: absolute;
  right: 1.5em;
  width: 100px;
  height: 100px;
  z-index: 1;
}
.block_blue {
  background-color: rgba(197, 215, 253, 1.00)
}
.block_orange {
  background-color: rgba(233, 170, 78, 1.00)
}
.block_lgreen {
  background-color: rgba(137, 213, 212, 1.00)
}
/*---txtbox---*/
.t_box_w {
  position: relative;
  width: 100%;
  top: 2em;
  right: -3em;
  background-color: white;
  padding: 2.5em;
  z-index: 10
}
.t_box_w.left {
  top: 2em;
  left: -3em;
  right: 0
}
.t_box_w h3 {
  position: relative;
  text-align: left;
  margin-bottom: 1.5em
}
.t_box_w h3::after {
  content: "";
  display: block;
  width: 30px;
  height: 1px;
  background-color: #000;
  position: absolute;
  bottom: -15px;
  left: 0;
}
.t_box_w h3 span {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  font-size: 28px;
  font-family: 'Ephesis', cursive;
  transform: rotate(-10deg);
}
.t_box_w h3 span.col_blue {
  color: rgba(110, 139, 203, 1.00);
}
.t_box_w h3 span.col_orange {
  color: rgba(233, 170, 78, 1.00);
}
.t_box_w h3 span.col_lgreen {
  color: rgba(3, 169, 157, 1.00);
}
.t_box_w ul {
  display: flex;
  flex-wrap: wrap
}
.t_box_w li {
  width: 49%;
  margin-right: 1%;
  margin-bottom: 1%;
}
.t_box_w li a {
  position: relative;
  display: block;
  font-size: 14px;
  color: white;
  padding: 0.5em 1.5em 0.5em 0.5em;
}
.t_box_w li a::after {
  position: absolute;
  right: 5px;
  content: "\f105";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  top: 50%;
  margin-top: -9px;
}
.t_box_w .blue li a {
  background-color: rgba(26, 61, 148, 1.00);
}
.t_box_w .orange li a {
  background-color: rgba(225, 137, 33, 1.00);
}
.t_box_w .lgreen li a {
  background-color: rgba(3, 169, 157, 1.00);
}
.bg_photo04 {
  background-image: url("../images/top_photo04.jpg");
  background-attachment: fixed;
  background-size: cover;
  height: 500px;
}
@media screen and (max-width: 992px) {
  .lg_disp_no {
    display: none
  }
  /*---txtbox---*/
  .t_box_w, .t_box_w.left {
    position: relative;
    width: 100%;
    top: 1em;
    left: 0;
    right: 0;
    margin: 0 auto;
    background-color: white;
    padding: 2.5em;
    z-index: 10
  }
  ul#eventa_list li span.date {
    width: 100%;
    float: none;
  }
  ul#eventa_list li span.title {
    display: block;
    padding-left: 0;
  }
  .resize {
    height: 230px;
  }
}
@media screen and (max-width: 768px) {
  /*---cover---*/
  #cover {
    padding-right: 0;
    padding-bottom: 25%;
  }
  #cover .swiper-wrapper img {
    display: block;
    width: 100%;
    height: calc(100vh - 25%);
    margin: 0 auto;
    object-fit: cover;
  }
  #cover .cover_ttl {
    padding: 2em 5em;
    position: absolute;
    top: 15%;
    left: 0;
    right: 0;
    margin: 0 auto;
    z-index: 2;
  }
  #cover .cover_ttl h1 {
    position: relative;
    font-size: 7vw;
    line-height: 1;
    text-align: center;
  }
  #cover .cover_ttl h1 span {
    font-size: 3vw;
  }
  #cover .au_txt {
    display: none
  }
  #cover .icon_access, #cover .icon_faq, #cover .icon_insta {
    display: none
  }
  #cover .or_box {
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 200px;
    background-color: rgba(224, 137, 34, 1.00);
    z-index: 3
  }
  #cover .illust {
    width: 120px;
    bottom: 150px;
    left: 0;
    right: 0;
    margin: 0 auto;
    z-index: 3
  }
  #cover .bigin {
    width: 120px;
    bottom: 80px;
    left: 0;
    right: 0;
    margin: 0 auto;
    border-right: none;
    padding-right: 0
  }
  #cover .or_box .txt {
    width: 80%;
    text-align: center;
    bottom: 20px;
    left: 0;
    right: 0;
    margin: 0 auto;
    padding-left: 0
  }
  /*---eventa---*/
  ul#eventa li div {
    width: 100%;
    max-width: 300px;
    margin: 0 auto
  }
ul#eventa li {
  width: 48%;
  margin: 0 1% 1em 1%;
}
.resize {
    height: 200px;
  }
  .bg_photo04 {
    background-position: center center;
    background-attachment: scroll;
    background-size: cover;
    height: 300px;
  }
}
@media screen and (max-width: 576px) {
  /*---cover---*/
  #cover {
    padding-right: 0;
    padding-bottom: 0;
  }
  #cover .swiper-wrapper img {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0 auto;
    object-fit: cover;
  }
  #cover .cover_ttl {
    padding: 1em;
    top: 12%;
  }
  #cover .cover_ttl h1 {
    font-size: 8vw;
  }
  #cover .or_box {
    position: relative;
  }
  #cover .illust {
    width: 100px;
    bottom: 150px;
  }
  #cover .bigin {
    width: 100px;
    top: 60px;
  }
  #cover .or_box .txt {
    width: 80%;
    text-align: center;
    bottom: 20px;
    left: 0;
    right: 0;
    margin: 0 auto;
    padding-left: 0
  }
  #news .news_more {
    width: 80px;
  }
  #news .news_more a {
    padding: 0.3em 2em 0.3em 1em;
    font-size: 11px;
  }
  #eventa li .date {
    width: 100%;
  }
  #eventa li .title {
    width: 100%;
  }
.resize {
    height: 160px;
  }
  .t_box_w li {
    width: 100%;
  }
  .bg_photo04 {
    max-height: 250px;
  }
}