@charset "UTF-8";

.inner {
	width: calc(100% - 40px);
	max-width: 1160px;
	margin: 0 auto;
}
#mainPhoto figure {
	width:100%;
	max-width: 1160px;
	margin: 0 auto 6%;
}

section {
	width:96%;
	margin: 0 auto;
}

h3.secMidashi {
    font-size: 24px;
    font-weight: 600;
    line-height: 34px;
    margin: 8% auto;
    text-align: center;
}

h2.title {
    font-size: 24px;
    font-weight: 600;
    line-height: 1.4;
    padding: 0 0 0 32px;
    border-left: 10px solid #4C5870;
    border-top: none;
    border-bottom: none;
    margin: 0 0 6%;
}
.mb8 {
 margin-bottom: 8%;
}

.mb4 {
 margin-bottom: 4%;
}

.flexBox {
	display: flex;
	justify-content: space-around;
}

.tableBox {
	display: table;
	margin-bottom: 8%;
}

.tableBox div {
	display: table-cell;
}

.tableBox div:last-child {
	width: 40%;
}

h5.listtitle {
    font-size: 19px;
    font-weight: 600;
    border-bottom: 1px solid rgba(76, 88, 112, 0.3);
    margin-bottom: 30px;
    margin-right: 4rem;
}

h5.listtitle span {
    font-size: 24px;
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    font-style: italic;
    margin-right: 8px;
}



.linkBtn a {
    display: block;
    text-align: center;
    font-size: 20px;
    line-height: 1;
    color: #fff;
    background-color: #4C5870;
    padding: 2rem 0;
    width: 40%;
    margin: 0 auto 8%;
}

.free01Sec img,.free02Sec img {
	width: 100%;
}

img.auto {
	width: auto;
	margin: 0 auto 8%;
}

#btnList li{
	float:left;
	width:40%;
	margin: 0 5% 8%;
}
#btnList .linkBtn a {
    width: 100%;
	margin: 0 auto ;
}


.pagetextlink {
    position: relative;
    max-width: 1240px;
    height: 90px;
    margin: 0 auto;
}
.pagetextlink .next {
    position: absolute;
    top: 0;
    right: 40px;
}
.pagetextlink .next a {
	padding-right: 22px;
	background: url(../images/common/icon-link-blue.svg) right center no-repeat;
	background-size: 15px;
	color: #000;
}
.sp {
	display: none;
}

.borderBox {
	border: 1px solid #4c5870;
	padding: 4rem;
	width: 80%;
	margin: 0 auto 8%;
}

.borderBox ul {
	width: 60%;
	margin: 0 auto 4rem;
	list-style: disc;
	font-size: 110%;
}
.borderBox ul li {
	margin-bottom: 1.6rem;
}

.borderBox .linkBtn a {
    margin: 0 auto;
	width: 55%;
}

.w80 {
	width: 80%;
	margin: 0 auto;
}

.w90 {
	width: 90%;
	margin: 0 auto 8%;
}

.center {
	text-align: center;
}


@media all and (max-width:1120px) {
	.linkBtn a {
		width: 50%;
	}

	#btnList li{
		width:48%;
		margin: 0 1% 8%;
	}



}

@media all and (max-width:1000px) {
	.linkBtn a {
		width: 70%;
	}

}

@media all and (max-width:768px) {
	.inner {
		width: calc(100% - 40px);
		max-width: unset;
		margin: 0 auto;
	}

	p {
		font-size: 14px;
	}

	#mainPhoto figure {
		width:100%;
		max-width: 1160px;
		margin: 0 auto 6%;
	}

	section {
		width:96%;
		margin: 0 auto;
	}

	h3.secMidashi {
		text-align: center;
		font-size: 15px;
		font-weight: 600;
		line-height: 25px;
		padding: 0 20px;
		margin-bottom: 22px;
	}

	h2.title {
		font-size: 16px;
		font-weight: 600;
		line-height: 1.4;
		padding-left: 15px;
		border-left: 5px solid #4C5870;
		margin-bottom: 23px;
	}

	.mb8 {
		margin-bottom: 8%;
	}

	.mb4 {
		margin-bottom: 4%;
	}

	.flexBox {
	display: flex;
	justify-content: space-around;
	}

	.tableBox {
	display: block;
	margin-bottom: 0;
	}

	.tableBox div {
	display: block;
	margin-bottom: 6%;
	}

	.tableBox div:last-child {
	width: 100%;
	margin-bottom: 8%;
	}
	


	h5.listtitle {
		font-size: 14px;
		font-weight: 600;
		padding-bottom: 5px;
		border-bottom: 1px solid rgba(76, 88, 112, 0.3);
		margin-bottom: 6%;
		margin-right: 0;
	}

	h5.listtitle span {
	font-size: 24px;
	font-family: 'Open Sans', sans-serif;
	font-weight: 400;
	font-style: italic;
	margin-right: 8px;
	}

	.free02Sec ul li:last-child .tableBox h5.listtitle {
	padding-left: 2.5rem;
	text-indent: -2.6rem;
	}
	
	.linkBtn a {
		width: 100%;
		margin: 0 auto 8%;
		font-size: 14px;
		padding: 1.3rem 0;
	}

	.free01Sec img,.free02Sec img {
	width: 100%;
	}
	
	img.auto {
		width: 100%;
	}

	#btnList li{
	float:left;
	width:40%;
	margin: 0 5% 8%;
	}
	#btnList .linkBtn a {
	width: 100%;
	margin: 0 auto ;
	}


	.pagetextlink {
	position: relative;
	max-width: 1240px;
	height: 90px;
	margin: 0 auto;
	}
	.pagetextlink .next {
	position: absolute;
	top: 0;
	right: 40px;
	}
	.pagetextlink .next a {
	padding-right: 22px;
	background: url(../images/common/icon-link-blue.svg) right center no-repeat;
	background-size: 15px;
	color: #000;
	}
	.sp {
	display: block;
	}
	
	.pc {
	display: none;
	}

	.borderBox {
	border: 1px solid #4c5870;
	padding: 2rem;
	width: 100%;
	margin: 0 auto 8%;
	}

	.borderBox ul {
	width: 60%;
	margin: 0 auto 4rem;
	list-style: disc;
	font-size: 110%;
	}
	.borderBox ul li {
	margin-bottom: 1.6rem;
	}

	.borderBox .linkBtn a {
	margin: 0 auto;
	width: 55%;
	}

	.w80 {
	width: 80%;
	margin: 0 auto;
	}

	.w90 {
	width: 90%;
	margin: 0 auto 8%;
	}

	.center {
	text-align: center;
	}



}