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


@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);



.w100 {font-weight: 100;}
.w200 {font-weight: 200;}
.w300 {font-weight: 300;}
.w400 {font-weight: 400;}
.w500 {font-weight: 500;}
.w700 {font-weight: 700;}
.w900 {font-weight: 900;}



a:hover{
	opacity:0.7;
	filter: alpha(opacity=70);}

.gototop{
	position: absolute;
	top: 0px;
	right: 0px;
	display: block;
	height: 50px;
	width: 36px;
}


.clearfix:after
{
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

hr {
    display:block;
    height:1px;
    border:0;
    border-top:1px solid #cccccc;
    margin:35px 0;
    padding:0;
}

h2 {
	margin: 0 0 70px 0;
	padding: 0px;
}

/*----------------------------------------
文字装飾
------------------------------------------*/

.red {
	color:#d62525;
	font-weight:bold;
}

.blue {
	color:#244fc9;
	font-weight:bold;
}

.red21 {
	font-size:21px;
	color:#d62525;
	font-weight:bold;
}

.f22 {
	font-size:21px;
	line-height:1.5em;
	font-weight:bold;
}

.yel {
	background:#FF0;
}


/*----------------------------------------
body
------------------------------------------*/

html, body {
  height: 100%;
  margin: 0;
}

body {
	font-family:OpenSans-Light,Tahoma,Helvetica Neue,Helvetica,Arial,sans-serif;
	margin: 0px;
	height: 100%;
}

body.under {
	font-family: 'Noto Sans Japanese', sans-serif;
	margin: 0px;
	background:#fff;
	height: 100%;
}


/*----------------------------------------
link
------------------------------------------*/

a {
	color: #028BE7;
	text-decoration: none;
}

a:hover {
	text-decoration: none;
}

/*----------------------------------------
wrap
------------------------------------------*/
#wrap {
	width: 100%;
	overflow: hidden;

}

#wrap p {
	font-size:17px;
	line-height:2em;
}

/*----------------------------------------
余白
------------------------------------------*/

.pad-t20 {
	padding-top: 20px;
}

.pad-t30 {
	padding-top: 30px;
}

.pad-tb20 {
	padding: 30px 0;
}

.pad-b30 {
	padding-bottom: 30px;
}

.pad-tb30 {
	padding: 30px 0;
}

.pad-tb40 {
	padding: 40px 0 30px;
}

.pad-t50 {
	padding-top: 50px;
}

.pad-b40 {
	padding-bottom: 40px;
}

.pad-b50 {
	padding-bottom: 50px;
}

.ma-b20	{
	margin-bottom: 20px
}

.ma-b30	{
	margin-bottom: 30px
}

.ma-b60	{
	margin-bottom: 60px
}

.ma-t30	{
	margin-top: 30px;
}

.ma-tb30	{
	margin-top: 30px;
	padding-bottom: 40px;
}

/**********************************************************
animationBtn
**********************************************************/

.animationBtn{

/*デザイン*/
width:95%;
padding:0px;
margin:0 auto;
color:#000;
text-decoration:none;
border-radius:5px;
margin:0 auto;
text-align:center;

/*アニメーション*/
animation: animScale 1s infinite ease-out;
transform-origin: 50% 50%;
animation-play-state:running;

}
@keyframes animScale {
  from {transform: scale3d(1.1, 1.1, 1);}
  50% {transform: scale3d(0.95, 0.95, 1);}
  to {transform: scale3d(1.1, 1.1, 1);}
}


/**********************************************************
背景
**********************************************************/



/* PC */

@media only screen and (min-width: 769px) {


.sp {
	display:none;
}


/*----------------------------------------
header
------------------------------------------*/

header {
	background: url("../img/fv-bg.jpg") no-repeat center;
	width: 100%;
	height: 1587px;
	text-align: center;
	position: relative;
}

header .header {
	width: 1000px;
	height: 70px;
	margin: 0 auto;
}

header .header .logo{
	float: left;
	margin: 15px 0 0 0;
}

header .header .header-btn{
	float: right;
	margin: 13px 0 0 0;
}

/* FV form部分 */

header .in_text {
	margin-top: 1200px;
}

header .in_text input{
  	width: 590px;
	height: 68px;
	font-size: 30px;
	background-color: #fff;
  	padding: 6px;
  	margin: 0px auto 0px;
	text-align: center;
	border: 4px solid #bec8d5;
}

header .in_text label {
  display: block;
}
header .in_text label span {
  color: red;
  margin-left: 4px;
}

header .btn {
	position: absolute;
	top:87%;
	left:3%;
	transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

#fv-btn .btn_submit {
	background:url("../img/fv-cv-btn.png") no-repeat center bottom;
	width: 577px;
	height: 114px;
	border: none;
	margin: 0 auto;
	cursor: pointer;
	font-size: 0px;
}


/*----------------------------------------
コンテンツ共通
------------------------------------------*/

/* block1 */
.block1 {
	width: 100%;
	background:url(../img/block1-bg.jpg) no-repeat;
	background-size: cover;
	padding: 70px 0;
	text-align: center;
}

/* block2 */
.block2 {
	width: 100%;
	background:url(../img/block2-bg.gif);
	padding: 70px 0;
	text-align: center;
}

/* block3 */
.block3 {
	width: 100%;
	background:url(../img/block3-bg.jpg) no-repeat;
	background-size: cover;
	background-attachment: fixed;
	padding: 70px 0;
	text-align: center;
}

/* block4 */
.block4 {
	width: 100%;
	background:url(../img/block4-bg.jpg) no-repeat;
	background-size: cover;
	padding: 70px 0;
	text-align: center;
}

/* block5 */
.block5 {
	width: 100%;
	background:url(../img/block5-bg.jpg) no-repeat;
	background-size: cover;
	padding: 70px 0 0;
	text-align: center;
}

.block5 .photo {
	width: 100%;
	background:#0f3355;
	padding: 30px 0;
}

/* block6 */
.block6 {
	width: 100%;
	background:url(../img/block6-bg.jpg) no-repeat;
	background-size: cover;
	padding: 70px 0;
	text-align: center;
}

/* block7 */
.block7 {
	width: 100%;
	background:url(../img/block7-bg.jpg) no-repeat;
	background-size: cover;
	padding: 70px 0;
	text-align: center;
}

/* block8 */
.block8 {
	width: 100%;
	background:url(../img/block8-bg.jpg) no-repeat;
	background-size: cover;
	padding: 70px 0;
	text-align: center;
}

/* block9 */
.block9 {
	width: 100%;
	background:url(../img/block9-bg.jpg) no-repeat;
	background-size: cover;
	padding: 70px 0;
	text-align: center;
}

/* block10 */
.block10 {
	width: 100%;
	background:url(../img/block10-bg.jpg) no-repeat;
	background-size: cover;
	padding: 70px 0;
	text-align: center;
}

/* block11 */
.block11 {
	width: 100%;
	background:url(../img/block11-bg.png) no-repeat center center;
	background-size: cover;
	background-attachment: fixed;
	padding: 70px 0;
	text-align: center;
}


/* block12 */
.block12 {
	width: 100%;
	background:url(../img/block12-bg.jpg) no-repeat;
	background-size: cover;
	padding: 70px 0 0;
	text-align: center;
}

/* cv */
#cv {
	width: 100%;
	height: 612px;
	background:url(../img/cv-bg.jpg) no-repeat;
	background-size: cover;
	padding: 0px 0;
	text-align: center;
	position: relative;
}

#cv h2 {
	padding: 80px 0px 0 0;
	margin-bottom: 20px;
}

#cv .in_text {
	margin-top: 10px;
}

#cv .in_text input{
  	width: 590px;
	height: 68px;
	font-size: 30px;
	background-color: #fff;
  	padding: 6px;
  	margin: 0px auto 0px;
	text-align: center;
	border: 4px solid #bec8d5;
}

#cv .in_text label {
  display: block;
}
#cv .in_text label span {
  color: red;
  margin-left: 4px;
}

#cv .btn {
	position: absolute;
	top:370px;
	left:3%;
	transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

#cv .text {
	margin-top: 160px;
}

#cv input[type="submit"].btn_submit {
	background:url("../img/fv-cv-btn.png") no-repeat center bottom;
	width: 577px;
	height: 114px;
	border: none;
	margin: 0 auto;
	cursor: pointer;
	font-size: 0px;
}

/*----------------------------------------
about　下層ページ用
------------------------------------------*/

#about .box-l {
	width:900px;
	margin:0 auto;
}

#about .box-r {
	width:480px;
	float:right;
}

#about {
	font-size:15px;
	line-height:1.5em;
	color:#151515;
}

#about h2 {
	font-size:40px;
	line-height:2em;
	text-align:center;
	font-weight:600;
	height:80px;
}

#about h3 {
	font-size:19px;
	font-weight:bold;
	margin:1em 0;
	color:#9e0000;
}

#about h4 {
	font-size:17px;
	font-weight:bold;
	margin-bottom:1em;
}

#about li {
	list-style-type:disc;
	margin-left:2em;
}

#about p {
	font-size:15px;
	line-height:1.5em;
	margin:0 0 2em 0;
}

#about dl,
dt,
dd {
  box-sizing: border-box;
}
#about dl {
	border-bottom:1px solid #bfbfbf;
	text-align:left;
	padding-top:20px;
	margin-bottom:100px;
}
#about dt,
dd {
  padding: 0px;
}
#about dt {
  width: 30%;
  float: left;
  padding: 20px 10px 10px;
  border-top: 1px solid #ccc;
  box-sizing: border-box;
}
#about dd {
  margin-left: 30%;
  padding: 20px 10px 10px;
  border-top: 1px solid #ccc;
  background: #fff;
}
#about dd:after {
  content: '';
  display: block;
  clear: both;
}





/*----------------------------------------
footer
------------------------------------------*/

#footer {
	width:100%;
	margin:0 auto;
	padding:40px 0px;
	text-align:center;
	background:#000;
	color:#fff;
}

#footer a {
	color:#fff;
}

#footer ul{
	width:700px;
	margin-left:30%;
	display:table;
	padding:35px 0 20px;
	margin:0 auto;
}

#footer li{
	display:table-cell;
	padding:10px 10px;
	font-size:17px;
}


} 


@media only screen and (max-width: 768px) {
/* SP TABLET */


body {
	font-family:OpenSans-Light,Tahoma,Helvetica Neue,Helvetica,Arial,sans-serif;
	margin: 0px;
}

.pc {
	display:none;
}



/*----------------------------------------
header
------------------------------------------*/

header {
	width: 100%;
	text-align: center;
	position: relative;
	padding: 0px;
	margin: 0px;
}

header img {
	width: 100%;
}

header .header {
	width: 100%;
	background: #000;
}

header .header img {
	padding: 0px;
	margin: 0px;
}

header .header .logo{
	position: absolute;
	top:8px;
	left:5px;
	width: 40%;
}

header .header .header-btn{
	position: absolute;
	top:5px;
	right:5px;
	width: 40%;
}

header .in_text {
	position: absolute;
	top:74%;
	width: 100%;
}

header .in_text input{
  	width: 90%;
	height: 50px;
	font-size: 21px;
	background-color: #fff;
  	padding: 2%;
  	margin: 0px auto 0px;
	text-align: center;
	border: 4px solid #bec8d5;
}

header .in_text label {
  display: block;
}

header .in_text label span {
  color: red;
  margin-left: 4px;
}

header .btn {
	position: absolute;
	top:85%;
	left:3%;
	transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

#fv-btn .btn_submit {
	background:url("../img/fv-cv-btn.png") no-repeat center center;
	background-size: cover;
	width: 100%;
	min-height: 70px;
	border: none;
	margin: 20px auto 0;
	cursor: pointer;
	font-size: 0px;
}



/*----------------------------------------
wrap
------------------------------------------*/
#wrap {
	width: 100%;
	margin-top:0px;
	overflow: hidden;
}

#wrap p {
	font-size:17px;
	line-height:2em;
}


/*----------------------------------------
コンテンツ共通
------------------------------------------*/

/* block1 */
.block1 {
	width: 100%;
	padding: 0;
	margin: 0px;
}

.block1 img {
	width: 100%;
}

/* block2 */
.block2 {
	width: 100%;
	padding: 0;
	margin: 0px;
}

.block2 img {
	width: 100%;
}

/* block3 */
.block3 {
	width: 100%;
	padding: 0;
	margin: 0px;
}

.block3 img {
	width: 100%;
}

/* block4 */
.block4 {
	width: 100%;
	padding: 0;
	margin: 0px;
}

.block4 img {
	width: 100%;
}

/* block5 */
.block5 {
	width: 100%;
	padding-top: 20px;
	margin: 0px;
}

.block5 img {
	width: 100%;
}

/* block6 */
.block6 {
	width: 100%;
	padding: 0px;
	margin: 0px;
}

.block6 img {
	width: 100%;
}

/* block7 */
.block7 {
	width: 100%;
	padding: 0px;
	margin: 0px;
}

.block7 img {
	width: 100%;
}

/* block8 */
.block8 {
	width: 100%;
	padding: 0px;
	margin: 0px;
}

.block8 img {
	width: 100%;
}

/* block9 */
.block9 {
	width: 100%;
	padding: 0px;
	margin: 0px;
}

.block9 img {
	width: 100%;
}

/* block10 */
.block10 {
	width: 100%;
	padding: 0px;
	margin: 0px;
}

.block10 img {
	width: 100%;
}

/* block11 */
.block11 {
	width: 100%;
	background:url(../img/block11-bg-sp.jpg) no-repeat top;
	background-size: cover;
	background-attachment: fixed;
	padding: 30px 0;
	text-align: center;
}

.block11 img {
	width: 92%;
}

/* block12 */
.block12 {
	width: 100%;
	padding: 0px;
	margin: 0px;
}

.block12 img {
	width: 100%;
}

/* cv */
#cv {
	width: 100%;
	padding: 0px 0;
	text-align: center;
	position: relative;
}

#cv img {
	width: 100%;
}

#cv .in_text {
	margin-top: 0px;
}

#cv .in_text input{
  	width: 90%;
	height: 50px;
	font-size: 20px;
	background-color: #fff;
  	padding: 6px;
	text-align: center;
	border: 4px solid #bec8d5;
	position: absolute;
	top:36%;
	left:2%;
}

#cv .in_text label {
  display: block;
}
#cv .in_text label span {
  color: red;
  margin-left: 4px;
}

#cv .btn {
	position: absolute;
	top:61%;
	left:3%;
	transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

#cv .text {
	margin-top: 160px;
}

#cv input[type="submit"].btn_submit {
	background:url("../img/fv-cv-btn.png") no-repeat center center;
	background-size: cover;
	width: 100%;
	min-height: 70px;
	border: none;
	margin: 0 auto;
	cursor: pointer;
	font-size: 0px;
}


/*----------------------------------------
about　下層ページ用
------------------------------------------*/

#about .box-l {
	padding:0 4%;
}

#about .box-r {
	width:100%;
}

#about {
	font-size:15px;
	line-height:1.5em;
	color:#151515;
}

#about h2 {
	font-size:30px;
	line-height:2em;
	text-align:center;
	font-weight:600;
	height:80px;
}

#about h3 {
	font-size:19px;
	font-weight:bold;
	margin:1em 0;
	color:#9e0000;
}

#about h4 {
	font-size:17px;
	font-weight:bold;
	margin-bottom:1em;
}

#about li {
	list-style-type:disc;
	margin-left:2em;
}

#about p {
	font-size:15px;
	line-height:1.5em;
	margin-bottom:2em;
}


#about dl,
dt,
dd {
  box-sizing: border-box;
}
#about dl {
	text-align:left;
	padding-top:0px;
}
#about dt,
dd {
  padding: 0px;
}
#about dt {
  width: 30%;
  float: left;
  padding: 20px 10px 10px;
  border-top: 1px solid #ccc;
  box-sizing: border-box;
}
#about dd {
  margin-left: 30%;
  padding: 20px 10px 10px;
  border-top: 1px solid #ccc;
  background: #fff;
}
#about dd:after {
  content: '';
  display: block;
  clear: both;
}



/*----------------------------------------
footer
------------------------------------------*/

#footer {
	width:100%;
	margin:0 auto;
	padding:20px 0px 10px;
	text-align:center;
	background:#000;
	color:#fff;
}

#footer p {
	font-size: 13px;
	line-height: 1.3em;
}

#footer a {
	color:#fff;
}

#footer ul{
	display:none;
}

#footer p {
	margin-bottom:1em;
}


} 
