@charset "UTF-8";
/*------------------------
共通
------------------------*/
#top-ttl::before{
	width: 832px;
	height: 125px;
	background: url(/campass/pc/img/corporate/en_corporate_w.svg) no-repeat;
	background-size: cover;
}
.c-contact {
	width: 800px;
	background: #fff;
	border: 2px solid var(--gray);
	border-radius: 15px;
	padding: 28px;
	display: flex;
	justify-content: space-between;
	margin: 0 auto 60px;
}
.c-contact .text {
	flex: 1;
	font-size: 18px;
	font-weight: 600;
}
.c-contact .c-btn a {
	background: var(--yellow);
	border-radius: 50px;
	width: 300px;
	height: 60px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	font-weight: 600;
	position: relative;
	border: 2px solid var(--yellow);
}
.c-contact .c-btn a:hover{
	background: #fff;
	color: var(--yellow);
}

#bottom-contact .block{
	position: relative;
	margin-top: 40px;
}
#bottom-contact .block:last-child::after{
	content: "法人の申し込みはこちらから!";
	background: #121212;
	color: #fff;
	position: absolute;
	padding: 6px 15px 8px;
	border-radius: 50px;
	font-size: 14px;
	top: -22px;
}
/*------------------------
campassは法人利用が可能です
------------------------*/
#possible{
	margin-bottom: 60px;
}
#possible .inner {
	padding: 60px 50px 60px;
	position: relative;
}
#possible .inner::after{
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-color: #fff transparent transparent transparent;
	border-width: 60px 140px 0px 140px;
	position: absolute;
	bottom: -60px;
	left: 38%;
	z-index: 10;
}
#possible .inner .ttl-wrap h2.image{
	height: 30px;
}
#possible .box-wrap{
	display: flex;
	justify-content: space-between;
	align-items: start;
	gap: 0 12px;
}
#possible .box-wrap .box{
	width: 100%;
	background: var(--green02) url(/campass/pc/img/common/pattern_w.png);
	padding: 16px;
	border-radius: 10px;
}
#possible .box-wrap .box .sub {
	display: block;
	width: 28%;
	height: 20px;
}
#possible .box-wrap .box .txt {
	display: block;
	font-size: 17px;
	line-height: 1;
	font-weight: 500;
	margin-bottom: 15px;
}
#possible .box-wrap .box .img {
	display: block;
	width: 100%;
	height: 124px;
}
#possible .box-wrap .box .img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 10px;
}
#possible .possible-in{
	background: var(--yellow02) url(/campass/pc/img/common/pattern_w.png);
	position: relative;
}
#possible .possible-in::before{
	content: "";
	width: 726px;
	height: 113px;
	background: url(/campass/pc/img/corporate/en_possible_w.svg) no-repeat;
	background-size: cover;
	display: block;
	position: absolute;
	top: 110px;
	left: 70px;
	opacity: .4;
}
#possible .possible-in .in{
	width: 1000px;
	margin: 0 auto;
	padding: 100px 50px 80px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
/* テキスト */
#possible .possible-in .text{
	flex: 1;
}
#possible .possible-in .text h2{
	font-size: 26px;
	position: relative;
	line-height: 1.3;
	font-weight: 600;
	padding-bottom: 40px;
	letter-spacing: .09em;
}
#possible .possible-in .text .textarea{
	font-size: 16px;
}
#possible .possible-in .text .textarea p{
	margin-bottom: 13px;
	line-height: 1.8;
	letter-spacing: .09em;
}
#possible .possible-in .text h2::before{
	content: "";
	width: 100%;
	height: 4px;
	background: #fff;
	border-radius: 50px;
	position: absolute;
	bottom: 20px;
	left: 0;
}
#possible .possible-in .text h2::after {
	content: "";
	width: 160px;
	height: 4px;
	background: var(--green);
	border-radius: 50px 0 0 50px;
	position: absolute;
	bottom: 20px;
	left: 0;
}
#possible .possible-in .in .imgarea {
	width: 440px;
	margin-left: 60px;
}
#possible .possible-in .in .imgarea .main {
	display: block;
	height: 290px;
	margin-bottom: 10px;
}
#possible .possible-in .in .imgarea .flex-box {
	gap: 0 10px;
}
#possible .possible-in .in .imgarea .flex-box span {
	display: block;
	width: 100%;
	height: 140px;
}
#possible .possible-in .in .imgarea span img {
	border-radius: 20px;
	border: 2px solid #fff;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
/*------------------------
活用例
------------------------*/
#case{
	position: relative;
	margin-bottom: 40px;
}
#case::before {
	content: "";
	width: 70vw;
	height: 100%;
	background: var(--green02) url(/campass/pc/img/common/pattern_w.png);
	position: absolute;
	left: 0;
	top: 0;
	border-radius: 0 30px 30px 0;
	min-width: 900px;
}
#case .inner {
	padding: 60px 50px 80px;
}
#case .inner .ttl-wrap {
	margin-bottom: 90px;
}
#case .block-wrap .block{
	position: relative;
	margin-bottom: 90px;
}
#case .block-wrap .block .text{
	padding: 30px 60px 30px 30px;
	background: #fff;
	border: 2px solid var(--green02);
	border-radius: 20px;
	width: 460px;
	position: relative;
}
#case .block-wrap .block .text .ttl{
	position: relative;
	padding-bottom: 15px;
	margin-bottom: 15px;
	border-bottom: 2px solid var(--black);
}
#case .block-wrap .block .text .sub{
	width: 70px;
	height: auto;
	margin-bottom: 2px;
}
#case .block-wrap .block .text .sub img{
	object-fit: contain;
}
#case .block-wrap .block .text h3{
	font-size: 24px;
	line-height: 1.2;
	letter-spacing: .075em;
	font-weight: 600;
}
#case .block-wrap .block .text .textarea{
	font-size: 15px;
	letter-spacing: .06em;
	line-height: 1.7;
}
#case .block-wrap .block .main{
	width: 460px;
	height: 292px;
	position: absolute;
	top: -50px;
	right: 0;
}
#case .block-wrap .block .main img{
	object-fit: cover;
	border-radius: 12px;
}
/* 2個目のブロック */
#case .block-wrap .block:nth-child(2n) .text{
	margin: 0 0 0 auto;
	padding: 30px 30px 30px 60px;
}
#case .block-wrap .block:nth-child(2n) .main{
	right: auto;
	left: 0;
}
/* 3 */
#case .block-wrap .block:nth-child(3){
	margin-bottom: 30px;
}
/*------------------------
お客様の声
------------------------*/
#voice {
	position: relative;
	margin-bottom: 80px;
}
#voice::before{
	content: "";
	width: 70vw;
	height: 100%;
	background: var(--yellow02) url(/campass/pc/img/common/pattern_w.png);
	position: absolute;
	right: 0;
	top: 0;
	border-radius: 50px 0 0 50px;
	min-width: 900px;
}
#voice .inner{
	padding: 60px 50px 80px;
}
#voice .inner .ttl-wrap::after{
	background: #fff;
}
#voice .block-wrap{
	display: flex;
	justify-content: space-between;
}
#voice .block-wrap .block{
	width: calc((100% - 40px) / 3);
	background: #fff;
	padding: 20px 20px 20px;
	border-radius: 12px;
	border: 2px solid var(--yellow02);
}
#voice .block-wrap .block .top{
	display: flex;
	padding-bottom: 10px;
	margin-bottom: 10px;
	border-bottom: 2px solid var(--black);
}
#voice .block-wrap .block .top .icon{
	width: 80px;
	height: 80px;
	margin-right: 12px;
}
#voice .block-wrap .block .top .text{
	line-height: 1.4;
	font-weight: 500;
	flex: 1;
}
#voice .block-wrap .block .top .age{
	font-weight: bold;
	margin-bottom: 5px;
}
/*------------------------
貸出設備
------------------------*/
#equipment {
	position: relative;
}
#equipment .inner{
	width: 900px;
	background: #fff;
	border: 2px solid var(--gray);
	border-radius: 20px;
	padding: 40px 50px 50px;
	margin-bottom: 80px;
}
#equipment .img-wrap{
	display: flex;
	justify-content: space-between;
}
#equipment .img-wrap .image{
	width: 385px;
	height: 246px;
}
#equipment .img-wrap .image img{
	object-fit: cover;
	border-radius: 12px;
}
/*------------------------
ご利用の流れ
------------------------*/
#flow {
	position: relative;
	background: #e2f1d5;
}
#flow .inner{
	padding: 60px 50px 100px;
}
#flow .inner .ttl-wrap{
	margin-bottom: 75px;
}
#flow .block-wrap{
	display: flex;
	justify-content: space-between;
}
#flow .block-wrap .block{
	width: calc((100% - 60px) / 4);
	position: relative;
	border: 2px solid var(--green);
	background: #fff;
	border-radius: 0 12px 12px 12px;
	padding: 15px 15px;
}
#flow .block-wrap .block .tab{
	background: var(--green);
	width: 102px;
	height: 24px;
	padding: 7px 10px 5px;
	border-radius: 6px 6px 0 0;
	position: absolute;
	top: -26px;
	left: -2px;
}
#flow .block-wrap .block h3{
	text-align: center;
	font-size: 18px;
	font-weight: 600;
	margin-bottom: 2px;
}
#flow .block-wrap .block .textarea{
	line-height: 1.4;
}
/*------------------------
よくある質問
------------------------*/
#faq {
	position: relative;
	background: #8bc458 url(/campass/pc/img/common/pattern_w.png);
}
#faq .inner{
	padding: 60px 50px 80px;
}
#faq .inner .ttl-wrap h2 {
	color: #fff;
}
#faq .inner .ttl-wrap::before {
	background: #fff;
}
#faq .inner .ttl-wrap::after {
	background: var(--yellow);
}

#faq ul {
	width: 800px;
	margin: 0 auto;
}
#faq ul .qa_box {
	background: #fff;
	border-radius: 12px;
	margin-bottom: 15px;
}
#faq ul .qa_box:last-child{
	margin-bottom: 0;
}
#faq ul .q_box {
	display: flex;
	position: relative;
	cursor: pointer;
	padding: 15px 20px;
	transition: all 0.5s ease 0s;
}
#faq ul .qa_box .q_box::before {
	content: '';
	position: absolute;
	right: 38px;
	top: 50%;
	transform: translateY(-50%);
	width: 3px;
	height: 18px;
	background: var(--green);
	transition: all .3s ease 0s;
	border-radius: 5px;
}
#faq ul .qa_box .q_box::after {
	content: '';
	position: absolute;
	right: 30px;
	top: 50%;
	transform: translateY(-50%);
	width: 18px;
	height: 3px;
	background: var(--green);
	border-radius: 5px;
}
#faq ul .qa_box .q_box.on::before {
	transform: translateY(-50%) rotate(-270deg);
}
#faq ul .qa_box .ef {
	width: 40px;
	height: 40px;
	color: #fff;
	font-size: 22px;
	font-weight: bold;
	display: flex;
	background: var(--yellow);
	align-items: center;
	justify-content: center;
	line-height: 1;
	margin-right: 14px;
	padding-bottom: 7px;
}
#faq ul .q_box p {
	font-size: 18px;
	font-weight: 500;
	flex: 1;
	padding: 3px 40px 0 0;
}

/* answer */
#faq ul .a_box {
	padding: 15px 20px 20px;
	display: none;
	position: relative;
}
#faq ul .a_box::before{
	content: "";
	width: 760px;
	height: 1px;
	background: var(--gray);
	margin: 0 0px;
	position: absolute;
	top: 0;
}
#faq ul .a_box .a_inner {
	display: flex;
}
#faq ul .a_box .content {
	flex: 1;
	text-align: justify;
	padding-top: 5px;
}
#faq ul .qa_box .a_box .ef{
	background: var(--green);
	padding-bottom: 1px;
}


/*------------------------
campassを体験できる施設
------------------------*/
#facility .inner {
	padding: 60px 50px 20px;
}
#facility .map{
	width: 450px;
	margin: 0 auto 30px;
	position: relative;
}