@charset "utf-8";
/* CSS Document */

#camp #content #puc{
	padding:0;
	margin-bottom:50px;
}

#camp #content #puc #topimage{
	padding-top:50px;
}

#camp #content #puc #topimage div{
	padding:30px;
	background-color:#58b530;
	box-sizing: border-box;
}

#camp #content .border_box.red img{
	margin-right:10px;
}
#camp #content p.info{
	font-size:3em;
	line-height: 1em;
}

@media (max-width: 640px){
	#camp #content #puc{
		background-color:#dff2fc;
		padding:10px 0 0;
		margin-bottom:30px;
	}

	#camp #content #puc #topimage{
		background-image:url("../../../img/camp/art_hikkoshi/topback.png");
		background-repeat: no-repeat;
		padding-top:50px;
	}

	#camp #content #puc #topimage div{
		padding:10px;
		background-color:#58b530;
		box-sizing: border-box;
	}

	#camp #content .border_box.red img{
		margin:0px auto 10px;
	}
}


.sundayplus25.title{
	width:100%;
	margin-bottom:40px;}

.sundayplus25.title p{
	color:#a40000;
	text-align:center;
	font-size:1.2em;
	line-height:1.6em;
	padding-top:20px;}

.sundayplus25.title p.copy{
	color:#000;
	text-align:left;
	font-size:1.2em;
	line-height:1.6em;
	padding-top:0;}

.sundayplus25 img{
	width:100%;
	vertical-align:bottom;}

.sundayplus25 img.fuki{
	position:absolute;
	width:auto;
	vertical-align:bottom;
	top:-15px;
	left:0;}

.sundayplus25 ul{
	list-style:none;
	box-sizing:border-box;}
/*
.sundayplus25 li{
	position:relative;
	float:left;
	width:calc(50% - 10px);
	margin-right:15px;
	margin-bottom:30px;
	padding:20px;
	border:1px solid #00468d;
	border-radius:10px;
	box-shadow:7px 7px 0px 0px #00468d;
	box-sizing:border-box;}

.sundayplus25 li:nth-child(2n){
	margin-right:0;}
*/
.flex.column2 > div {
  width: 360px !important;
}

.sundayplus25.start img{
	vertical-align:bottom;}

.sundayplus25.start p{
	padding:15px;
	background-color:#cceaf8;}

@media (max-width: 640px) {
.sundayplus25.title{
	margin-bottom:20px;}

.sundayplus25 li{
	float:none;
	width:100%;}

.flex.column2 > div {
  width: 100% !important;
}
}

.entry .text{
	float:left;
	width:38%;}

.entry .figure{
	float:right;
	width:58%;}

.entry .figure img{
	width:100%;}

@media (max-width: 640px) {
.entry .text{
	float:none;
	width:100%;
	margin-bottom:20px;}

.entry .figure{
	float:none;
	width:100%;}
}


.button.g a{
	line-height:1.5em;}

.button.bk_g a{
	padding: calc((60px + 1em) / 2) 0;}



.sundayplus25.red{
	background-image:url('../../../img/camp/sundayplus25_v2/red_back.jpg');
	background-size:cover;
	padding-bottom:20px;}

.sundayplus25.red .box{
	margin:0 20px;}

.sundayplus25.red .block{
	background-image:url('../../../img/camp/sundayplus25_v2/red_box_02.png');
	background-size:cover;
	padding:0 40px 20px;}

.sundayplus25.red .block .subtitle{
	text-align:center;}

.sundayplus25.red .block .subtitle img{
	width:auto !important;}

.sundayplus25.red .block ul{
	display:flex;
	flex-direction:column;}

.sundayplus25.red .block ul li{
	display:flex;
	width:100%;
	justify-content:space-between;
	padding-top:20px;
	border-top:3px dotted #e95550;
	margin-top:20px;}

.sundayplus25.red .block ul li .logo{
	width:35%;
	display:flex;
	justify-content:center;
	align-items:center;}

.sundayplus25.red .block ul li .logo img{
	width:auto;
	height:65px;
	vertical-align:bottom;}

.sundayplus25.red .block ul li .text{
	width:60%;}

.sundayplus25.red .block ul li .text p{
	line-height:1.5em;}

@media screen and (max-width:640px) {
.sundayplus25.red .box{
	margin:0 15px;}

.sundayplus25.red .box .block{
	background-image:url('../../../img/camp/sundayplus25_v2/red_box_02_sp.png');
	background-size:contain;
	padding:20px;}

.sundayplus25.red .block .subtitle img{
	width:100% !important;}

.sundayplus25.red .block ul li{
	display:flex;
	width:100%;
	flex-direction:column;
	justify-content:space-between;
	padding-top:20px;
	border-top:3px dotted #e95550;
	margin-top:20px;}

.sundayplus25.red .block ul li .logo{
	width:100%;
	display:flex;
	justify-content:center;
	align-items:center;
	padding-bottom:20px;}

.sundayplus25.red .block ul li .logo img{
	width:auto;
	height:65px;
	vertical-align:bottom;}

.sundayplus25.red .block ul li .text{
	width:100%;}

.sundayplus25.red .block ul li .text p{
	line-height:1.5em;}
}



@media (max-width: 640px) {
.entry_sp{
	display:flex;
	flex-direcrion:row;}

.entry_sp dt{
	width:30%;
	box-sizing:border-box;
	text-align:center;
	display:flex;
	align-items:center;}

.entry_sp dt img{
	width:100%;}

.entry_sp dd{
	width:70%;
	box-sizing:border-box;}

.entry_sp dd p{
	line-height:1.7em !important;}

.entry_sp dd .wans_box .button.g a{
	width:100%;
	margin-bottom:10px;
	box-sizing:border-box;}
}



.wans_box li{
	float:left;
	width:49%;
	margin-right:2%;
	list-style:none;}

.wans_box li:last-child{
	margin:0;}

.button{
	box-shadow: 5px 5px 10px rgba(0,0,0,0.2);}

.wans_wrap{
	padding:0 40px 40px 40px;}

@media screen and (max-width:640px) {
.wans_box li{
	float:none;
	width:100%;
	margin-right:0;
	margin-bottom:20px;}

.wans_box li:last-child{
	margin-right:0;
	margin-bottom:0;}

.wans_box li p.sp{
	margin-bottom:0;}

.wans_wrap{
	padding:0 20px 20px 20px;}
}

.acc_btn {
  position: relative;
  pointer-events: none; /* デフォルトは無効 */
}
.acc_box {
  display: block;
  overflow: visible;
}
@media screen and (max-width: 640px) {
  .acc_btn {
    pointer-events: auto; /* スマホで有効に */
    cursor: pointer;
  }
  .acc_btn::after {
    content: "▼";
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0.8em;
  }
  .acc_btn.open::after {
    content: "▲";
  }
  .acc_box {
    display: none; /* 最初は閉じておく */
    overflow: hidden;
    transition: max-height 0.3s ease;
  }
}