/*common*/
body{
	font-family: "Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
}
li{
	list-style: none;
}
.cf:before,
.cf:after {
	content: "";
	display: table;
}
.cf:after {
	clear: both;
}
.cf {
	*zoom: 1;
}
.pc {
	display: block;
}
.sp {
	display: none;
}
.wrapper{
	overflow: hidden;
}
.wrapper:before{
	content:"";
	position:fixed;
	top:0;
	left:0;
	width:100vw;
	height:100vh;
	z-index: -1;
	background: url(../images/bg02.jpg) no-repeat center center;
	background-size: cover;
}
.inner{
	width: 1200px;
	margin: 0 auto;
	box-sizing: border-box;
}
/*header*/
.header{
	padding: 15px 0;
	box-sizing: border-box;
	position: fixed;
	width: 100%;
	top: 0;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	z-index: 1;
}
.header .logo{
	display: block;
	width: 120px;
	float: left;
	-webkit-transition: width 0.3s;
	transition: width 0.3s;
}
.header.sticky{
	background: #000;
	padding: 10px;
}
.header.sticky .logo{
	width: 100px;
}
.header.sticky .nav{
	margin: 9px 0;
}
.header .nav{
	float: right;
	width: 70%;
	margin: 15px 0;
	-webkit-transition: margin 0.3s;
	transition: margin 0.3s;
}
.header .nav li{
	float: left;
	width: 14.8%;
	position: relative;
	text-align: center;
}
.header .nav li:nth-child(6){
	width: 8%;
}
.header .nav li:last-child{
	width: 18%;
}
.header .nav li:after{
	content: "";
	position: absolute;
	right: 0;
	top: 50%;
	margin-top: -7px;
	border-right: 1px #fff solid;
	height: 14px;
}
.header .nav li:last-child:after{
	display: none;
}
.header .nav li:first-child:before{
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	margin-top: -7px;
	border-right: 1px #fff solid;
	height: 14px;
}
.header .nav li a{
	display: inline-block;
	color: #fff;
	text-decoration: none;
	position: relative;
	font-weight: bold;
}
.header .nav li:last-child a{
	padding: 0 18px;
	box-sizing: border-box;
	border: 1px #fff solid;
	border-radius: 14px;
    line-height: 27px;
    font-size: 15px;
	-webkit-transition: background 0.2s, color 0.2s; /* Safari */
	transition: background 0.2s, color 0.2s;
}
.header .nav li:last-child a:hover{
	background: #fff;
	color: #000;
}
/*main bg*/
.main{
	/*background: url(../images/bg01.jpg) no-repeat center center;
	background-size: cover;
	position: relative;*/
	min-height:100vh !important;
}
/*top*/
.main .main-txt{
	position: absolute;
	top: 50%;
	left:0%;
	text-align: center;
	width: 100%;
	transform: translate(0% , -50%) !important;
}
.main .main-txt h1{
	font-size: 90px;
	font-weight: bold;
	color: #fff;
	text-shadow: 2px 2px 6px #000;
}
.main .main-txt .subtitle{
	font-size: 35px;
	color: #fff;
	text-shadow: 2px 2px 4px #000;
}
.main .main-btn{
	display: block;
	margin: 0 auto;
	width: 460px;
	background: #d81718;
	border-radius: 5px;
	padding: 35px 0;
	text-align: center;
	color: #fff;
	font-weight: bold;
	font-size: 28px;
	line-height: 28px;
	text-decoration: none;
	position: absolute;
	bottom: 50px;
	left: 50%;
	margin-left: -230px;
}
/*content*/
.content .section{
	padding: 150px 30px;
}
.content .section h2{
	text-align: center;
	font-size: 40px;
	font-weight: bold;
}
.content .section .subtitle{
	text-align: center;
	font-size: 18px;
	font-weight: bold;
}
.content .section .txt-red{
	text-align: center;
	color: #d81718;
	font-size: 18px;
	font-weight: bold;
	margin: 20px auto;
}
.content .section .txt-box{
	text-align: center;
}
/*about camp*/
.conts01{
	color: #444;
	background:#fff;
}
.conts01 img{
	width: 180px;
	margin: 0 auto 30px;
	display: block;
}
.conts01 .txt-box p{
	margin-bottom: 20px;
}
.conts01 .txt-box .activities-list{
	max-width:900px;
	margin:80px auto 0 auto;
	flex-wrap: wrap;
	border:1px solid #e50014;
	box-sizing: border-box;
	padding:30px;
}
.conts01 .txt-box .activities-list h3{
	color:#e50014;
	font-weight: bold;
	font-size: 18px;
	text-align: center;
	margin-top:-39px;
	line-height: 1;
	margin-bottom:30px;
}
.conts01 .txt-box .activities-list h3 span{
	background:#fff;
	display: inline-block;
	padding:0 1em;
}
.conts01 .txt-box .activities-list ul.activities-list-paernt{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.conts01 .txt-box .activities-list ul.activities-list-paernt li{
	width:48%;
}
.conts01 .txt-box .activities-list ul.activities-list-paernt ul.activities-list-child li{
	text-align: left;
	position: relative;
	padding-left:1em;
	margin-bottom:0.5em;
	font-weight: bold;
	width:auto;
}
.conts01 .txt-box .activities-list ul.activities-list-paernt ul.activities-list-child li:before{
	content:"・";
	position: absolute;
	left:0;
	top:0;
}


.conts01 .list-box{
	margin-top: 100px;
}
.conts01 .list-box li{
	width: 33%;
	margin-right: 0.5%;
	float: left;
	background: #e87475;
	text-align: center;
	padding: 50px 20px;
	box-sizing: border-box;
}
.conts01 .list-box li:last-child{
	margin-right: 0;
}
.conts01 .list-box li span{
	color: #fff;
	font-size: 40px;
	line-height: 40px;
	font-weight: bold;
}
.conts01 .list-box li p{
	color: #000;
	font-size: 28px;
	font-weight: bold;
	margin: 30px auto;
}
.conts01 .list-box li div{
	color: #fff;
	line-height: 2;
}
/*strategy*/
.conts02{
	/*background: url(../images/bg02.jpg) no-repeat center center;
	background-size: cover;*/
	color: #fff;
}
.conts02 .subtitle p:first-child{
	margin-bottom: 15px;
}
.conts02 .list-box{
	width: 1000px;
	margin: 70px auto;
}
.conts02 .list-box li{
	width: 50%;
	float: left;
	text-align: center;
}
.conts02 .list-box li:last-child{
	border-left: 1px #fff solid;
	box-sizing: border-box;
}
.conts02 .list-box li span{
	font-size: 40px;
	line-height: 40px;
	font-weight: bold;
}
.conts02 .list-box li .txt01{
	font-size: 28px;
	font-weight: bold;
	margin-top: 35px;
}
.conts02 .list-box li .txt02{
	font-size: 20px;
}
.conts02 .list-box li div{
	margin-top: 35px;
	line-height: 2;
}
.conts02 .chart-box img{
	display: block;
	width: 600px;
	margin: 0 auto;
}
.conts02 .chart-box p{
	text-align: center;
	font-weight: bold;
	font-size: 30px;
}
/*service*/
.conts03 {
	color: #444;
	background:#fff;
}
.conts03 .chart-box-circle,
.conts03 .box-list{
	width: 900px;
	margin: 50px auto;
}
.conts03 .chart-box-circle img{
	width: 60%;
	float: left;
}
.conts03 .chart-box-circle ul{
	width: 35%;
	float: right;
	margin-left: 5%;
	margin-top: 80px;
}
.conts03 .chart-box-circle ul li{
	position: relative;
	text-align: center;
	font-size: 22px;
	font-weight: bold;
}
.conts03 .chart-box-circle ul li:last-child{
	font-size: 30px;
	color: #d81718;
}
.conts03 .chart-box-circle ul li:after{
	content: "";
	display: block;
	width: 100%;
	height: 40px;
	background: url(../images/arrow01.png) no-repeat center center;
	background-size: 25px;
}
.conts03 .chart-box-circle ul li:last-child:after{
	display: none;
}
.conts03 .box-list{
	text-align: center;
	color: #fff;
}
.conts03 .box-list .row{
	position: relative;
	margin-top: 20px;
}
.conts03 .box-list .row .circle{
	float: left;
	background: #f0a1a4;
	border-radius: 50%;
	font-size: 14px;
	width: 90px;
	height: 90px;
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -45px;
	padding: 22px 0;
	box-sizing: border-box;
}
.conts03 .box-list .row ul,
.conts03 .box-list .row div{
	float: right;
	width: 82%;
}
.conts03 .box-list .list01 ul li{
	float: left;
	background: #f0a1a4;
	width: 19%;
	margin-right: 1.25%;
	padding: 40px 0;
	border-radius: 5px;
	font-size: 18px;
}
.conts03 .box-list .list01 ul li:last-child{
	margin-right: 0;
}
.conts03 .box-list .list02 .circle{
	background: #e87475;
}
.conts03 .box-list .row .arrow-bg:before{
	content: "";
	display: block;
	width: 25px;
	height: 55px;
	position: absolute;
	left: 50%;
	margin-left: -12px;
}
.conts03 .box-list .list02 .arrow-bg:before{
	background: url(../images/arrow02.png) no-repeat center center;
	background-size: 25px;
	top: -72px;
}
.conts03 .box-list .list03 .arrow-bg:before{
	background: url(../images/arrow03.png) no-repeat center center;
	background-size: 25px;
	top: -84px;
}
.conts03 .box-list .list02 div{
	background: #e87475;
	border-radius: 5px;
	padding: 50px 0;
}
.conts03 .box-list .list02 div p:first-child{
	font-size: 24px;
	font-weight: bold;
	line-height: 1;
}
.conts03 .box-list .list02 div p i{
	font-style: italic;
	font-size: 40px;
}
.conts03 .box-list .list02 div p:first-child img{
	width: 100px;
}
.conts03 .box-list .list03 .circle{
	background: #d8171a;
	line-height: 46px;
}
.conts03 .box-list .list03 div{
	background: #d8171a;
	border-radius: 5px;
	padding: 50px 0;
}
.conts03 .box-list .list03 div img{
	width: 180px;
}
.conts03 .chart-box-flow{
	text-align: center;
}
.conts03 .chart-box-flow .chart-img{
	margin: 15px auto 30px;
}
.conts03 .chart-box-flow .txt01{
	font-size: 20px;
	font-weight: bold;
}
.conts03 .chart-box-flow .txt02{
	font-size: 22px;
}
/*about us*/
.conts04{
	background: #e50014;
	color: #fff;
}
.conts04 table{
	margin: 50px auto 0;
}
.conts04 table tr th,
.conts04 table tr td{
	padding: 20px 0;
	text-align: left;
}
.conts04 table tr td a[href^=tel] {
	text-decoration:inherit;
	color: inherit;
}
/*contact*/
.conts05{
	color: #444;
}
.conts05{
	background: #f1f1f1;
}
.conts05 .txt01{
	margin: 30px auto;
	text-align: center;
}
.conts05 .txt01 span{
	color: #e50014;
}
.conts05 form .inquiry{
	width: 40%;
	margin: 0 auto;
}
.conts05 .inquiry li{
	margin-bottom: 20px;
}
.conts05 .inquiry li div{
	overflow: hidden;
	position: relative;
}
.conts05 .inquiry p{
	display: block;
	font-size: 14px;
}
.conts05 .inquiry input,
.conts05 .inquiry textarea{
	box-sizing: border-box;
	padding: 10px;
    border: 1px #999 solid;
    border-radius: 5px;
    width: 100%;
}
.conts05 .inquiry .cols div{
	width: 49%;
	float: left;
}
.conts05 .inquiry .cols div.first{
	margin-right: 2%;
}
.conts05 .txt02{
	text-align: center;
	margin-top: 30px;
}
.conts05 form label{
	text-align: center;
	display: block;
}
.conts05 form button{
	cursor: pointer;
	display: block;
	margin: 30px auto 0;
	border: 1px #e50014 solid;
	border-radius: 5px;
	padding: 10px 0;
	width: 300px;
	background: #fff;
	font-weight: bold;
	color: #e50014;
	font-size: 16px;
	position: relative;
}
.conts05 form button:after{
	content: "";
	display: block;
	width: 12px;
	height: 15px;
	background: url(../images/arrow04.png) no-repeat center center;
	background-size: 12px;
	position: absolute;
	right: 10px;
	top: 50%;
	margin-top: -7px;
}
.conts05 .policybox{
	height: 150px;
	width: 40%;
	margin: 0 auto;
	overflow-y: scroll;
	background: #fff;
	border: 1px #ccc solid;
	padding: 10px;
	box-sizing: border-box;
	font-size: 14px;
}
.conts05 .policybox p{
	margin-top: 15px;
	font-weight: bold;
}
.conts05 .policybox p.title{
	margin-top: 0;
}
.conts05 .policybox p.intro{
	font-weight: normal;
}
.conts05 .policybox p.last{
	text-align: right;
	font-weight: normal;
}
.conts05 .policybox div{
	padding-left: 30px;
	margin-bottom: 15px;
}
/*contact form*/
.sub{
	background: #f1f1f1;
	padding-top: 87px;
}
.sub .header{
	background: #000;
}
.confirm{
	background: #f1f1f1;
}
.confirm .align-c{
	text-align: center;
	margin-top: 30px;
}
.confirm .txt-check{
	width: 50%;
	margin: 30px auto;
	padding: 30px;
	border-top: 1px #e50014 solid;
	border-bottom: 1px #e50014 solid;
	box-sizing: border-box;
}
.confirm .txt-check div{
	margin-bottom: 15px;
	font-size: 14px;
}
.confirm .txt-check label{
	float: left;
	width: 35%;
}
.confirm .txt-check p{
	float: left;
	width: 65%;
}
.confirm .btn-list{
	width: 50%;
	margin: 0 auto;
}
.confirm .btn-list button{
	cursor: pointer;
	position: relative;
	width: 48%;
	float: left;
	border: 1px #e50014 solid;
	border-radius: 5px;
	box-sizing: border-box;
	background: #fff;
	padding: 10px 0;
	font-weight: bold;
	color: #e50014;
	font-size: 16px;
}
.confirm .btn-list button:first-child:after{
	content: "";
	display: block;
	width: 12px;
	height: 15px;
	background: url(../images/arrow04.png) no-repeat center center;
	background-size: 12px;
	position: absolute;
	right: 10px;
	top: 50%;
	margin-top: -7px;
}
.confirm .btn-list button:last-child{
	background: #e50014;
	color: #fff;
	margin-left: 4%;
}
.confirm .btn-list button:last-child:after{
	content: "";
	display: block;
	width: 12px;
	height: 15px;
	background: url(../images/arrow05.png) no-repeat center center;
	background-size: 12px;
	position: absolute;
	right: 10px;
	top: 50%;
	margin-top: -7px;
}

.inquiry input + span,
.inquiry textarea + span,
.error{
	color: #f00;
	font-size: 14px;
	display: inline;
}
.wrap-check{
	text-align: center;
}
.error.on{
	display: none;
}
.error-form {
	border-color: #fb9a93 !important;
}

.thanks{
	background: #f1f1f1;
}
.thanks div{
	text-align: center;
	margin: 30px auto;
}
.thanks .btn{
	cursor: pointer;
	position: relative;
	width: 300px;
	margin: 30px auto;
	border: 1px #e50014 solid;
	border-radius: 5px;
	box-sizing: border-box;
	background: #e50014;
	padding: 10px 0;
	font-weight: bold;
	color: #fff;
	font-size: 16px;
}
.thanks .btn:after{
	content: "";
	display: block;
	width: 12px;
	height: 15px;
	background: url(../images/arrow05.png) no-repeat center center;
	background-size: 12px;
	position: absolute;
	right: 10px;
	top: 50%;
	margin-top: -7px;
}

/*footer*/
.footer{
	background: #fff;
}
.footer .logo-bar{
	background: #e50014;
	overflow: hidden;
}
.footer .logo-bar img{
	display: block;
	width: 120px;
	margin: 5px auto;
}
.footer .inner{
	font-weight: bold;
	padding: 20px 0;
}
.footer ul{
	width: 80%;
	margin: 0 auto;
}
.footer ul li{
	width: 16.66%;
	float: left;
	text-align: center;
	position: relative;
}
.footer ul li:after{
	content: "";
	position: absolute;
	right: 0;
	top: 50%;
	margin-top: -7px;
	border-right: 1px #000 solid;
	height: 14px;
}
.footer ul li:first-child:before{
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	margin-top: -7px;
	border-right: 1px #000 solid;
	height: 14px;
}
.footer ul li a{
	display: block;
	color: #000;
	text-decoration: none;
	padding: 10px 0;
}
.footer .copyright{
	text-align: center;
	margin-top: 30px;
	font-size: 14px;
}
/*to top button*/
.totop{
	opacity: 0;
	position: fixed;
	right: 0;
	bottom: 80px;
	background: #e50014;
	-webkit-transition: opacity 0.3s;
	transition: opacity 0.3s;
}
.totop.on{
	opacity: 1;
}
.totop img{
	display: block;
	width: 100px;
	border: 1px #fff solid;
	border-right: none;
}

/*press release*/
.conts06{
	background: #f1f1f1;
}
.conts06 .inner{
	max-width:900px;
}
.conts06 .list-box{
	margin-top:30px;
    display: flex;
    flex-wrap: wrap;
}
.conts06 .list-box dt{
	width:8em;
    margin-top:1em;
}
.conts06 .list-box dd{
	width:calc(100% - 8em);
    margin-top:1em;
}
.conts06 .list-box dd a{
	color:#000;
}
.conts06 .list-box dd a:hover{
	text-decoration: none;
}


/*responsive*/
@media(max-width: 1200px){
	.inner{
		width: 100%;
	}
	.main .main-txt h1{
		font-size: 8vw;
	}
	.main .main-txt .subtitle{
		font-size: 3.5vw;
	}
	.main .main-btn{
		padding: 20px 0;
	}
	.header{
		padding: 15px;
	}
	.content .section{
		padding: 150px 15px;
		box-sizing: border-box;
	}
	.conts02 .list-box{
		width: 100%;
	}
	.conts02 .list-box li{
		padding: 0 10px;
		box-sizing: border-box;
	}
	.conts03 .box-list{
		width: 90%;
	}
}
@media(max-width: 1024px){
	.conts03 .chart-box-circle,
	.conts03 .box-list{
		width: 95%;
	}
}
@media(max-width: 768px){
	.pc {
		display: none;
	}
	.sp {
		display: block;
	}

	/*mobile header*/
	.mobile-header{
		position: fixed;
		top: 0;
		width: 100%;
		-webkit-transition: background 0.3s;
		transition: background 0.3s;
		z-index: 1;
	}
	.mobile-header .logo{
		display: block;
		width: 120px;
		margin: 10px auto;
		-webkit-transition: width 0.3s;
		transition: width 0.3s;
	}
	.mobile-menu .toggle-button{
		display: block;
		position: fixed;
		padding: 15px;
		top: 12px;
		right: 0;
		height: 22px;
		width: 40px;
		cursor: pointer;
		z-index: 9999;
		box-sizing: initial;
		-webkit-transition: top 0.3s;
		transition: top 0.3s;
	}
	.mobile-header.sticky{
		background: #000;
	}
	.mobile-header.sticky .logo{
		width: 100px;
	}
	.mobile-header.sticky .toggle-button{
		top: 6px;
	}
	.bar {
		background-color: #fff;
		display: block;
		width: 100%;
		height: 2px;
		border: 0;
		border-radius: 3px;
		-webkit-transition: all .35s ease;
		transition: all .35s ease;
	}
	.bar + .bar {
	    margin-top: 8px;
	}
	.middle {
	    top: 11px;
	}
	.bottom {
	    top: 22px;
	}
	.toggle-active{
	    background: none
	}
	.toggle-active .bar {
	    background-color: #fff;
	}
	.toggle-active .top {
	    -webkit-transform: translateY(10px) translateX(0) rotate(45deg);
	}
	.toggle-active .middle {
	   opacity: 0;
	}
	.toggle-active .bottom {
	    -webkit-transform: translateY(-10px) translateX(0) rotate(-45deg);
	}
	.menu-txt{
	    font-size: 10px;
	    width: 42px;
	    text-align: center;
	    color: #105fac;
	    font-weight: bold;
	    margin-top: 2px;
	}
	.toggle-active .menu-txt{
	    color: #fff;
	}
	.overlay {
	    position: fixed;
	    background: rgba(0, 0, 0, 0.88);
	    top: 0;
	    left: 0;
	    width: 100%;
	    height: 0;
	    visibility: hidden;
	    opacity: 0;
	    transition: opacity .30s, visibility .30s, height .30s;
	    -webkit-transition: opacity .30s, visibility .30s, height .30s;
	}
	.nav-active {
	    opacity: 1;
	    visibility: visible;
	    height: 100%;
	    z-index: 9998;
	}
	.overlay ul {
	    display: block;
	    font-size: 16px;
	    text-align: center;
	    overflow: hidden;
	    width: 60%;
	    margin: 20px auto;
	}
	.overlay ul li{
		border-bottom: 1px #a2a2a2 solid;
	}
	.overlay ul li:nth-last-child(2){
		margin: 10px auto;
		border: none;
	}
	.overlay ul li:last-child{
		border: none;
	}
	.overlay ul li a{
		color: #fff;
		text-decoration: none;
		padding: 10px 0;
		display: block;
	}
	.overlay ul li:nth-last-child(2) a{
		border: 1px #fff solid;
		border-radius: 5px;
		font-weight: bold;
	}
	.overlay ul li:last-child a{
		border: 1px #d81718 solid;
		border-radius: 5px;
		background: #d81718;
		font-weight: bold;
	}
	.main .main-txt h1{
		font-size: 10vw;
		line-height: 14vw;
	}
	.main .main-txt .subtitle{
		font-size: 4vw;
	}

	.content .section .txt-box {
			text-align: left;
	}

	.conts01 .txt-box .activities-list ul.activities-list-paernt li{
		width:100%;
	}

	.conts01 .list-box{
		width: 70%;
		margin: 100px auto 0;
	}
	.conts01 .list-box li{
		float: inherit;
		width: 100%;
		margin-bottom: 30px;
	}
	.conts02 .chart-box img{
		width: 80%;
	}
	.conts03 .chart-box-circle ul{
		width: 40%;
		margin-left: 0;
		margin-top: 20px;
	}
	.conts05 form .inquiry,
	.conts05 .policybox{
		width: 70%;
	}
	.sub{
		background: #f1f1f1;
		padding-top: 73px;
	}
	.sub .mobile-header{
		background: #000;
	}
	.confirm .txt-check{
		width: 100%;
	}
	.confirm .btn-list{
		width: 70%;
	}
	.footer ul{
		width: 90%;
	}
	.totop.sp{
		background: none;
		right: 15px;
		bottom: 40px;
	}
	.totop.sp img{
		border: none;
		width: 50px;
	}
}

@media(max-width: 640px){
	.wrapper:before{
		background: url(../images/bg02-sp.jpg) no-repeat center center;
		background-size: cover;
	}
	.main .main-txt h1{
		font-size: 12vw;
		line-height: 16vw;
	}
	.main .main-btn{
		width: 80%;
		left: 10%;
		margin-left: 0;
		font-size: 20px;
		padding: 15px 0;
	}
	.content .section{
		padding: 70px 15px;
	}
	.content .section h2{
		font-size: 34px;
	}
	.conts01 .list-box{
		width: 100%;
	}
	.conts01 .list-box li{
		margin-bottom: 15px;
		padding: 40px 20px;
		height:auto !important;
	}
	.conts01 .list-box li p{
		font-size: 22px;
		margin: 15px 0;
	}
	.conts02 .list-box{
		margin: 0 auto 50px;
	}
	.conts02 .list-box li{
		float: inherit;
		width: 100%;
		padding: 50px 15px;
	}
	.conts02 .list-box li:last-child{
		border-left: none;
		border-top: 1px #fff solid;
	}
	.conts02 .chart-box img {
		width: 100%;
	}
	.conts02 .chart-box p{
		font-size: 24px;
	}
	.conts03 .chart-box-circle,
	.conts03 .box-list{
		width: 100%;
	}
	.conts03 .chart-box-circle img{
		float: inherit;
		width: 100%;
	}
	.conts03 .chart-box-circle ul{
		float: inherit;
		width: 100%;
		margin: 0 auto 30px;
	}
	.conts03 .box-list .row ul,
	.conts03 .box-list .row div{
		width: calc(100% - 100px)
	}
	.conts03 .box-list .list01 ul li{
		width: 31%;
		margin-right: 3.5%;
		padding: 15px 0;
		font-size: 14px;
		margin-bottom: 15px;
	}
	.conts03 .box-list .list01 ul li:nth-child(3){
		margin-right: 0;
	}
	.conts03 .box-list .list01 ul li:nth-child(4){
		clear: both;
		margin-left: 17.25%;
		margin-bottom: 0;
	}
	.conts03 .box-list .list01 ul li:last-child{
		margin-bottom: 0;
	}
	.conts03 .box-list .list02 .arrow-bg:before{
		top: -64px;
	}
	.conts03 .box-list .list03 .arrow-bg:before{
		top: -56px;
	}
	.conts03 .box-list .list02 div,
	.conts03 .box-list .list03 div{
		padding: 30px 0;
	}
	.conts03 .box-list .list02 div p:first-child img{
		width: 60px;
	}
	.conts03 .box-list .list02 div p i{
		font-size: 30px;
	}
	.conts03 .box-list .list02 div p:first-child{
		font-size: 18px;
	}
	.conts03 .box-list .list02 div:last-child{
		font-size: 14px;
	}
	.conts03 .chart-box-flow .txt02{
		font-size: 18px;
	}
	.conts03 .chart-box-flow .chart-img{
		width: 100%;
	}
	.conts04 table{
		margin: 30px auto 0;
	}
	.conts05 form .inquiry,
	.conts05 .policybox{
		width: 100%;
	}
	.confirm .align-c{
		font-size: 14px;
	}
	.confirm .txt-check{
		padding: 30px 0;
	}
	.confirm .btn-list{
		width: 100%;
	}
	.thanks div{
		font-size: 14px;
	}
	.footer ul li{
		float: inherit;
		width: 100%;
	}
	.footer ul li a{
		padding: 5px 0;
	}
	.footer ul li:before,
	.footer ul li:after{
		display: none;
	}
	.totop{
		bottom: 50px;
	}
	.totop img{
		width: 80px;
	}

    /*press release*/
    .conts06 .list-box dt{
        width:100%;
    }
    .conts06 .list-box dd{
        width:100%;
        margin-top:0;
    }
}

@media(max-width: 320px){
	body{
		font-size: 14px;
	}
	.content .section{
		padding: 50px 10px;
	}
	.conts02 .list-box li .txt02{
		font-size: 16px;
	}
	.conts02 .chart-box p{
		font-size: 20px;
	}
	.conts03 .chart-box-circle ul li{
		font-size: 20px;
	}
	.conts03 .chart-box-circle ul li:last-child{
		font-size: 28px;
	}
	.conts03 .box-list .row .circle{
		width: 75px;
		height: 75px;
		padding: 17px 0;
		font-size: 12px;
	}
	.conts03 .box-list .row ul,
	.conts03 .box-list .row div{
		width: calc(100% - 80px);
	}
	.conts03 .box-list .list01 ul li{
		font-size: 12px;
	}
	.conts03 .box-list .list02 .arrow-bg:before{
		top: -72px;
	}
	.conts03 .box-list .list02 div p:first-child{
		font-size: 16px;
	}
	.conts03 .box-list .list03 div img{
		width: 150px;
	}
	.conts03 .box-list .list03 .arrow-bg:before{
		top: -65px;
	}
}