@charset "UTF-8";
/* CSS Document */

*,*::before,*::after{box-sizing:border-box}html{-moz-text-size-adjust:none;-webkit-text-size-adjust:none;text-size-adjust:none}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}ul[role='list'],ol[role='list']{list-style:none}body{min-height:100vh;line-height:1.5}h1,h2,h3,h4,button,input,label{line-height:1.1}h1,h2,h3,h4{text-wrap:balance}a:not([class]){text-decoration-skip-ink:auto;color:currentColor}img,picture{max-width:100%;display:block}input,button,textarea,select{font:inherit}textarea:not([rows]){min-height:10em}:target{scroll-margin-block:5ex}


body {
  font-family: "Helvetica Neue",
    Arial,
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    Meiryo,
    sans-serif;
}

.clearfix::after {
  content: "";
  display: block;
  clear: both;
}


.forPC{
display:block;
}
.forSP{
display:none;
}

header{
  	padding-inline: calc((100vw - 1000px) / 2);
	background:#fff;
	position:relative;
	height:80px;
}

header .header_in{
	position:relative;
	width:1000px;
	margin:0px auto;
}

header .logo{
	position:absolute;
	top:10px;
	left:5px;
}

header .header_btn{
	position:absolute;
	top:10px;
	right:15px;
}

#fv{
  	padding-inline: calc((100vw - 1000px) / 2);
	position:relative;
}

.btn{
	width:612px;
	margin: 30px auto;
}

.contents01{
  	padding-inline: calc((100vw - 1000px) / 2);
	margin:0px auto 0px auto;
	background:url(../img/con01bg.png) repeat-x;
}

.con01_02{
	width:482px;
	margin: 0px auto;
}

.con01_02 img{
	width:100%;
	margin: 0px auto;
}

.contents02{
  	padding-inline: calc((100vw - 1000px) / 2);
	margin:0px auto 30px auto;
}

.contents03{
  	padding-inline: calc((100vw - 1000px) / 2);
	margin:0px auto 30px auto;
}

.contents04{
  	padding-inline: calc((100vw - 1000px) / 2);
	margin:0px auto 30px auto;
}

.title{
	width:477px;
	margin:0px auto 15px auto;
}

footer{
	width:100%;
	background:#333;
	color:#fff;
	text-align:center;
	font-size:12px;
	padding:20px;
}



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

.forPC{
display:none;
}
.forSP{
display:block;
}
	
	


header{
  	padding-inline: 0;
	background:#fff;
	position:relative;
	height:60px;
	width:100%;
}

header .header_in{
	position:relative;
	width:100%;
	margin:0px auto;
}

header .logo{
	position:absolute;
	top:10px;
	left:5px;
	width:30%;
}

header .header_btn{
	position:absolute;
	top:5px;
	right:5px;
	width:50%;
}

#fv{
  	padding-inline: 0;
	position:relative;
}

.contents01{
	width:100%;
	margin:30px auto 0px auto;
}

.contents02{
  	padding-inline: calc((100vw - 98%) / 2);
}

.contents03{
	width:100%;
	margin:0px auto 0px auto;
}

.contents04{
	width:100%;
	margin:0px auto 0px auto;
}

.btn{
	width:95%;
	margin:0px auto 0px auto;
	padding:30px 0px;
}

.con01_02{
	width:95%;
	margin: 0px auto;
}

.title{
	width:95%;
	margin:0px auto 15px auto;
}

}