@charset "utf-8";

/* smart phone */
@media only screen and (max-width: 768px) {
  header .header-top {
    padding: 0 !important;
  }
  header .header-top .wrap {
    display: flex;
    align-items: center;
    height: 50px;
  }
  header .logo {
    max-width: 160px;
    padding: 10px 0 10px 20px;
  }
  header div.title {
    min-width: 100% !important;
    padding-top: 0;
  }
  header div.title h1 {
    padding: 0 20px;
    font-size: 30px;
  }
  #main_kv {
    margin-top: 0;
    min-height: 450px;
    padding-top: 40px;
  }
  /* venue */
  #venue h2 {
    font-size: 22px;
  }
  .venue {
		padding: 40px 0;
	}
	.venue .venue_list {
		gap: 60px 0;
		flex-wrap: wrap;
	}
	.venue .venue_list li {
		width: 80%;
		padding: 20px 0 70px;
	}
	.venue .venue_list li .icon {
		font-size: 40px;
	}
	.venue .venue_list li p {
		font-size: 32px;
	}
	.venue .venue_list li p.date {
		font-size: 22px;
		margin-bottom: 10px;
	}
	.venue .venue_list li .place {
		font-size: 14px;
	}
	.venue .venue_list li .linkbtn {
		width: 80%;
		margin: 10px auto 0;
	}
	.venue .venue_list li .linkbtn a {
		font-size: 16px;
	}

  /* greeting */
  #greeting {
    padding: 30px 0;
    min-width: 100%;
    width: 100%;
  }
  #greeting .wrap {
    width: 95%;
  }
  #greeting h2 {
    font-size: 22px;
    margin: 0 0 10px;
  }
  #greeting h2 span {
		font-size: 18px;
	}
  #greeting p {
    line-height: 1.4;
    font-size: 13px;
  }
  /* outline */
  #outline {
	  padding: 35px 0;
	}
	#outline h2 {
	  margin: 0 0 50px;
	  font-size: 22px;
	}
	#outline .outline_inner {
		flex-direction: column;
	}
	#outline .outline_inner p {
		width: 95%;
		font-size: 13px;
	}
	#outline .outline_inner .photo {
		width: 90%;
		margin: 0 auto;
	}
	#outline .outline_inner h3 {
		font-size: 16px;
		margin: 30px 0 10px;
	}
	#outline table {
	  width: 95%;
	}
	#outline table tr th {
	  width: 20%;
	  padding: 15px 0 15px 10px;
	  font-size: 13px;
	}
	#outline table tr td {
	  padding: 15px 0;
	  font-size: 13px;
	}

/* event */
  .event {
    width: 94% !important;
    margin: 30px auto 60px !important;
  }
  .event thead {
    display: none;
  }
  .event tr:first-child {
    border-top: 1px solid #ccc;
  }
  .event tr {
    display: block;
    padding: 10px 0;
    border-bottom: 1px solid #ccc;
  }
  .event td {
    display: inline-block;
    border: none !important;
  }
  .event td.date {
    border-left: 3px solid #2a73cc !important;
    padding: 2px 4px !important;
  }
  .event td.place {
    padding: 2px 4px !important;
  }
  .event td.title {
    display: block;
  }
  .event td.title h3 {
    font-size: 48px;
    font-weight: bold;
    line-height: 1.2;
    margin: 30px auto;
    border: none;
    padding: 0;
  }
 
  /* special */
	#special {
		padding: 40px 0;
	}
	#special h2 {
		margin: 0 0 20px;
		font-size: 22px;
	}
	#special h3 {
		font-size: 16px;
	}
	#special .guest_list {
		gap: 30px;
		margin: 30px 0 30px;
		flex-wrap: wrap;
	}
	#special .guest_list li {
		/*width: 42%;*/
		width: 80%;
	}
	#special .guest_list li .photo {
		width: 100%;
		margin: 0 0 15px;
	}
	#special .guest_list li p.name {
		font-size: 13px;
		
	}
	#special .guest_list li p.position {
		font-size: 11px;
	}
	/* slide */
	.swiper-slide {
	    width: 280px;
	  }
	
	  .swiper-slide img {
	    height: 187px;
	  }
}
