html{
	font-size:62.5%;
}
body{
	font-family:A1 Gothic R;
	-ms-font-feature-settings:A1 Gothic R;
}
.img-fluid{
	display:block;
	margin:0 auto;
	max-width:100%;
}
body,
.wrap{
	background-image:url(../images/bg_sp.jpg);
	background-attachment: fixed;
	background-size:cover;
	background-repeat:no-repeat;
	background-position:bottom center;
}
.wrap{
	position:relative;
	z-index:0;
	margin-top:60px;
	margin-bottom:60px;
	padding: 120px 30px 100px 30px;
	font-size:1.5rem;
	color:#ffffff;
	text-align:center;
}
.wrap::before{
	content:"";
	position:absolute;
	z-index:-1;
	top:0;
	left:0;
	width:100%;
	height:100%;
	border: 5px solid #ffffff;
	text-align:center;
	mix-blend-mode: overlay;
	background: rgba(0,0,0,0.2);
}

header{
	
}
.upper_left,
.upper_right,
.lower_left,
.lower_right{
	position:absolute;
	z-index: -1;
	display:block;
	mix-blend-mode: overlay;
	
}
.upper_left{
	top:15px;
	left:15px;
}
.upper_right{
	top:15px;
	right:15px;
}
.lower_left{
	bottom:15px;
	left:15px;
	
}
.lower_right{
	bottom:15px;
	right:15px;
}

#logo{
	display: block;
	margin:0 auto 30px auto;
	text-align:center;
	width:100%;
	max-width:340px;
	height:295px;
	fill:#ffffff;
}
.textWrap{
	max-width:360px;
	margin:0 auto;
	text-shadow:0 0 5px rgba(0,0,0,0.5);
}
.textWrap p{
	letter-spacing:1px;
	line-height:1.8;
}

main .box:first-child{
	background:url(../images/bg_line.svg) no-repeat bottom center;
	background-size: 340px 30px;
	padding-bottom:75px;
}
.box{
	padding:60px 0;
}
.box p{
	letter-spacing:1px;
	line-height:1.8;
	text-shadow:0 0 5px rgba(0,0,0,0.6);
}
.box dl{
	display:flex;
}
.box figure{
	margin:30px 0 15px 0;
}
.box dl dt{
	text-shadow:0 0 5px rgba(0,0,0,0.6);
}
.box dl dt::after{
	content:"\FF1A";
}
.box dl dd{
	letter-spacing:1px;
	text-shadow:0 0 5px rgba(0,0,0,0.6);
}
.box dl dd a{
	color:#ffffff;
}
.box dl dd a:hover{
	text-decoration:none;
	color:#01b4b6;
}
.box dl dd a i{padding:0 5px;}
.largeTitle{
	font-size:2.0rem;
	padding: 5px 29px;
	border:2px solid #ffffff;
	border-radius:50px;
	margin-bottom:30px;
	text-shadow:0 0 5px rgba(0,0,0,0.6);
}
.middleTitle{
	display:flex;
	justify-content: space-between;
	align-items: center;
	font-size:1.8rem;
	flex:1;
	margin:30px 0 15px 0;
}
.middleTitle::before,
.middleTitle::after{
	content:"";
	display: flex;
	flex:1;
	height:1px;
	background:#ffffff;
}
.middleTitle span{
	padding:0 15px;
	text-shadow:0 0 5px rgba(0,0,0,0.6);
}

.btn{
	display:inline-block;
	width:100%;
	padding:10px 20px;
	margin:10px 0px;
	color:#ffffff;
	border-radius:50px;
	background: -moz-linear-gradient(top, #7fffbf 0%, #01b4b6 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, #7fffbf 0%,#01b4b6 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, #7fffbf 0%,#01b4b6 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#7fffbf', endColorstr='#01b4b6',GradientType=0 ); /* IE6-9 */
	transition:.3s ease-in-out;
	text-shadow:0 0 3px rgba(0,0,0,0.8);
}
.btn:hover{
	color:#ffffff;
	text-decoration:none;
	opacity:0.8;
}

footer{
	text-align:center;
	color:#ffffff;
	margin:0 0 15px 0;
}
@media (min-width: 992px) {
	body,
	.wrap{
		background-image:url(../images/bg_sp.jpg);
		background-attachment: fixed;
		background-size:cover;
		background-repeat:no-repeat;
	}
	.wrap{
		padding:60px 60px 0 60px;
	}
	.btn{
		width:45%;
		margin:10px 5px;
	}
}