@charset "utf-8";

@-ms-viewport {
  width: device-width;
}

@viewport {
  width: device-width;
}


@media screen and (max-width:960px){

* {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size:3.7vw
}

body {
  font-size:3.4vw
}
	
.pc{display:none!important;}
.sp{display:block!important;}


/*header
----------------------------------------------------*/
 .menu-item a{
	padding: 3.4vw!important;
}

.l-header__logo{
	width: 100%;	
}

header .c-headLogo__link{
	position: relative;
	top: 10px;
	width: 100%;
	height: 60px!important;
	margin: 0!important;
	padding: 0!important;
	background: url("../img/ttl_logo_sp.png") no-repeat center / contain;
	text-indent: -9999px;
	overflow: hidden;
	display: block;
}


/*common
----------------------------------------------------*/
#content.l-container{
	max-width: 100%;
	margin: 0;
	padding: 16vw 0;
}

section{
	padding: 20vw 0 0 0;
}

section .contents,
#footer .contents{
	width: 90%;
	margin: 0 auto;
}

.btn{
	padding: 2vw 4vw;
	border-radius: 8vw;
}


/*HOME
----------------------------------------------------*/
.mv_txt{
	font-size: 12vw;
}

.mv_txt span{
	font-size: 4vw;
}

.mv_txt small{
	display: block;
}

.mv_theme{
	padding: 3vw 0;
}

.mv_theme img{
	width: 80%;
	height: auto;
	margin: 0 auto 3vw 0;
}

.mv_date,
.mv_place{
	font-size: 4vw;	
}


/*news
----------------------------------*/
section:has(.box_top_news){
	padding-top: 0;
}

section .box_top_news{
	display: block;
}

section .box_top_news p{
	margin: 8vw auto 0 auto;
	text-align: center;
}

section .box_top_news h2{
	margin-bottom: 6vw;
	font-size: 10vw;
}

section .box_top_news h2 span{
	font-size: 4vw;
}

section .box_top_news dl{
	margin-bottom: 6vw;
	padding-bottom: 6vw;
	display: block;
}

section .box_top_news dl:last-child{
	margin-bottom: 0;
}


/*entry
----------------------------------*/
.box_top_entry{
	padding: 12vw 0;
}

.box_top_entry h2{
	margin-bottom: 10vw;
}

.box_top_entry h2 span{
	padding-bottom: 6vw;
	font-size: 7vw;
}

.box_top_entry p{
	width: 90%;
	margin: 0 auto;
}

.box_top_entry .btn{
	margin-top: 6vw;
}


/*news list
----------------------------------------------------*/
.p-postList__link{
	padding-left:5%!important;
	padding-right:5%!important;
}

/*news detail
----------------------------------------------------*/
.l-mainContent{
	width: 90%;
	margin: 0 auto;
}


/*page
----------------------------------------------------*/
.c-pageTitle{
	font-size: 8vw;
	font-weight: 400;
}

.post_content h2{
	margin: 12vw auto 8vw auto;
	font-size: 8vw;
}


/*footer
----------------------------------------------------*/
.box_footer{
	padding: 12vw 0;
	display: block;
}

.box_footer h2{
	margin-bottom: 3vw;
	font-size: 4vw;
	text-align: center;
}

.box_footer div{
	text-align: center;
}

.box_footer div h2{
	margin: 3vw auto;
	font-size: 3.7vw;
}

.box_footer h2 img{
	width: 30vw;
	height: auto;
	margin: 0 auto;
}

.box_footer div p{
	font-size: 3.0vw;	
}

.copyright{
	padding: 3vw 0;
}

}