body{font-size: 16px; margin: 0;}
p,h1,h2,h3,h4,h5,h6,ul,li,td,th,a,span{margin: 0; padding: 0; font-size: 16px; line-height: 1; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;}
a{opacity: 1; text-decoration: none;}
a:hover{opacity: 0.8;}
section{padding-bottom: 120px;}
.sp-visible{display: none;}
@media screen and (max-width:797px) {
	section{margin-bottom: 60px;}
	.sp-visible{display: block;}
	.pc-visible{display: none;}
}

.balloon {display: flex; flex-wrap: wrap; justify-content: center; width:314px;}
.balloon .title{background-color: #C8161D; width:100%; color: #FFFFFF; text-align: center; padding: 19px 0; border-radius: 5px; font-size: 1.75em; position: relative; font-weight: 600;}
.balloon .title::after{content:""; display:block; border-top:solid 17px #C8161D; border-left:solid 11.5px transparent; border-right:solid 11.5px transparent; position: absolute; left: 50%; transform: translateX(-50%); bottom: -17px;}
.balloon small{color:#C8161D; font-weight: 600; margin-top: 30px; font-size: 16px;}
@media screen and (max-width:1280px){
	.balloon {width:210px;}
	.balloon .title{padding: 15px 0; font-size: 1.1875em;}
	.balloon .title::after{content:""; display:block; border-top:solid 17px #C8161D; border-left:solid 11.5px transparent; border-right:solid 11.5px transparent; position: absolute; left: 50%; transform: translateX(-50%); bottom: -17px;}
	.balloon small{font-size: 12px;}
}
@media screen and (max-width:797px){
	.balloon{width:100%;}
}

.button-link a{display: block; width: 520px; color: #FFFFFF; background-color: #C8161D; font-size: 1.625em; text-align: center; padding: 25px 0; box-sizing:border-box; border-radius: 100px; font-weight: 600;}
.button-link a::after{content:""; display: inline-block; width:34px; height: 22px; background:url('../../common/image/btn-arrow.png') no-repeat center/contain; vertical-align: middle; padding-left: 10px;}
@media screen and (max-width:1280px){
	.button-link a{ width: 350px; font-size: 1.0625em; padding: 20px 0; }
	.button-link a::after{content:""; display: inline-block; width:22px; height: 14px;}
}
@media screen and (max-width:797px){
	.button-link a{width:100%; font-size:1em; line-height: 1;}
	.button-link a::after{width:26px; height: 16px;}
}

.contact{background-color: #C8161D; color: #FFFFFF; text-align: center; padding: 60px 0;}
.contact h2{margin-bottom: 50px; font-size:1.75em; font-weight: 600; line-height: 1.3; letter-spacing: 0.06em;}
.contact h2 span{margin-top: 30px; font-size: 17px;}
.contact p{font-size:1.625em; font-weight: 600;}
.contact p span{font-size: 1em;}
.contact p strong{font-size:1.423em;}
@media screen and (max-width:797px){
	.contact {padding:50px 20px; box-sizing:border-box; margin: 0;}
	.contact p{line-height: 1.6;}
	.contact p span{font-size:0.5em;}
}

footer{margin-top: 75px;}
footer .logo{text-align: center; margin-bottom: 30px;}
footer .logo img{width:124px;}
footer p{text-align: center; margin-bottom: 30px; font-size: 1.062em; line-height: 1.8;}
footer small{font-size: 12px;}