/*------------------------------------------------------------
	RESET
------------------------------------------------------------*/
.container img{
	max-width:100%;
	vertical-align:bottom;
}


/*------------------------------------------------------------
	RESPONSIVE
------------------------------------------------------------*/
.sponly{ display:block; }
.pconly{ display:none; }



/*------------------------------------------------------------
	SP CONTENTS
------------------------------------------------------------*/
#page main{
	padding:65px 0 29.333vw;
}



.breadcrumb{
	padding:15px 0 12.933vw;
}

.breadcrumb a {
    color: white;
    font-size: 10px;
    margin-right: 15px;
    position: relative;
    display: inline-block;
    vertical-align: top;
}
.breadcrumb a::after {
    content: '＞';
    position: absolute;
    right: -14px;
    top: 0;
    z-index: 1;
}

#page .wrapper{
width: 100%;
margin: 0 auto;
padding: 0;
position: relative;
z-index: 1;
}

#page section{
	width:100%;
	margin-bottom: 80px;
}
#page section.last{
	 margin-bottom: 0 !Important;
}



#page h2 {
	font-size: 20px;
	line-height: 1.8;
	position: relative;
	padding-left: 20px;
	margin-bottom: 30px;
	font-weight: 700;
}


#page h2::before{
	content:'';
	width:6px;
	height:100%;
	background-image: linear-gradient( to bottom, #da202a 0%, #961c23 100%);
	position:absolute;
	top:0;
	left:0;
}

.splogo{
	width:28.267vw;
	height:7.733vw;
	display:block;
	background:url(../img/others/splogo02.png) no-repeat center center;
	background-size:28.267vw;

}

.mb01{
	margin-bottom: 20px;
}

.mb02{
	margin-bottom:4.667vw;
}
.lead01 {
font-size: 14px;
line-height: 1.8;
}




#page h3 {
	font-size: 16px;
	line-height: 1.5;
	padding-left: 20px;
	position: relative;
	margin-bottom: 30px;
	font-weight: bold;
}
#page h3::before{
	content:'';
	position:absolute;
	top:0;
	left:0;
	width: 6px;
	height:100%;
	background-image: linear-gradient( to bottom, #da202a 0%, #961c23 100%);
}

.columnList{
	display:flex;
	justify-content: space-between;
	flex-wrap:wrap;
}
.columnList li {
	display:inline-block;
	width: 48%;
	margin-right: 0;
	margin-bottom:5.333vw;
}

.columnList li img{
	width:100%;
}


.columnList li:nth-child(2n){
	margin-right:0;
}

.lead02{
	background:#DA202A;
	font-size: 14px;
  line-height: 1.8;
	color:#fff;
	font-weight:bold;
	display:flex;
	justify-content:center;
	align-items:center;
	height: 60px;
	text-align:center;
}


.lead03{
	font-size: 14px;
  line-height: 1.8;
}


.iwrap{
	overflow:auto;
}
.iwrap img{
	min-width:900px;
}


/*------------------------------------------------------------
	FOR PC LAYOUT CSS
------------------------------------------------------------*/
@media screen and (min-width:769px){


#page main{
	padding:0 0 130px;
}

.notvisual{
	height:100px;
}


#page .wrapper{
	max-width: 1240px;
	width: 100%;
    margin: 0 auto;
    padding: 0;
    position: relative;
    z-index: 1;
}

.logo{
	position:absolute;
	top:20px;
	right:0;
	width:200px;
	height:34px;
	background:url(../img/others/logo02.png) no-repeat;
	background-size:200px;
}



.breadcrumb{
	padding:15px 0 0;
}

.breadcrumb a {
    color: white;
    font-size: 0.8125rem;
    position: relative;
    display: inline-block;
    vertical-align: top;
    margin-right: 18px;
}
.breadcrumb a::after {
    content: '＞';
    position: absolute;
    right: -18px;
    top: 0;
    z-index: 1;
}

#page .container{
	padding:100px 0 0;
}

#page section{
	width: 100%;
	max-width: 1140px;
	padding: 0;
	margin: 0 auto 100px;
}
#page section.last{
	 margin-bottom: 0 !Important;
}


#page h2{
	font-size:44px;
	line-height:64px;
	position:relative;
	padding-left:40px;
	margin-bottom:50px;
	font-weight:700;
	height:64px;
}

.splogo{
	display:none;
}


#page h2::before{
	content:'';
	width:10px;
	height:100%;
	background-image: linear-gradient( to bottom, #da202a 0%, #961c23 100%);
	position:absolute;
	top:0;
	left:0;
}



.mb01{
	margin-bottom:40px;
}
.mb02{
	margin-bottom:20px;
}
.lead01{
	font-size:20px;
	line-height:36px;
}

.lead02{
	background:#DA202A;
	text-align:center;
	color:#fff;
	font-size:15px;
	line-height:24px;
	font-weight:bold;
	display:flex;
	justify-content:center;
	align-items:center;
	height:80px;
}

	
#page h3{
	font-size:26px;
	line-height:30px;
	padding-left:34px;
	position:relative;
	margin-bottom:30px;
	font-weight:bold;
}
#page h3::before{
	content:'';
	position:absolute;
	top:0;
	left:0;
	width:14px;
	height:100%;
	background-image: linear-gradient( to bottom, #da202a 0%, #961c23 100%);
}


.columnList{
	display:flex;
	justify-content: space-between;
}
.columnList li{
	display:inline-block;
	max-width:260px;
	width: calc(98% / 4);
	margin-right: 0;
	margin-bottom:0;
}
.columnList::before{
  content:"";
  display: block;
	max-width:260px;
	width: calc(98% / 4);
  order:1;
}
.columnList::after{
  content:"";
  display: block;
	max-width:260px;
	width: calc(98% / 4);
}

.columnList li:nth-child(2n){
	margin-right: 0;
}


.columnList li:last-child{
	margin:0;
}

.lead03{
	font-size:18px;
	line-height:26px;
}


/*------------------------------------------------------------
	END PC LAYOUT CSS
------------------------------------------------------------*/
}


@media screen and (max-width: 1240px) {
	#page .container {
		width: calc(100% - 50px);
		margin: auto;
	}

	.breadcrumb {
		width: calc(100% - 50px);
		margin: auto;
	}
}