@charset "utf-8";

.pcOnly {display:none;}

@media screen and (min-width: 768px) {
	.spOnly {display:none;}
	.pcOnly {display:inherit;}
}
@media screen and (min-width: 768px) {
	a[href^="tel:"] {
	    pointer-events: none;
	    color:#503F32;
	}
}

body{
	background:#f0eff4;
}

h2 {
	margin:70px 0 30px;
	text-align:center;
}
h2.style1 span {
	padding:0 0 0 60px;
	font-size:28px;
	line-height:1;
	background:url(../img/h2_bg.png) no-repeat left bottom ;
	background-size:47px auto;
	border-bottom:2px solid #e20000;
}
h2.style2 {
	display:flex;
	justify-content: center;
	align-items: center;
	margin:50px 0 0;
	padding:0 60px 0 60px;
	font-size:28px;
	line-height:1;
	height:70px;
}
h2.style2 span {
	padding-top:15px;
	display:block;
}
h2.style2:before {
	content: "";
	display: inline-block;
	width:50px;
	height:70px;
	background:url(../img/h2_style2_1.png) no-repeat left bottom ;
	background-size:40px auto;
}
h2.style2:after {
	content: "";
	display: inline-block;
	width:50px;
	height:70px;
	background:url(../img/h2_style2_2.png) no-repeat right bottom ;
	background-size:40px auto;
}
@media screen and (max-width: 768px) {
	h2 {
		margin:50px 5% 30px;
	}
	h2.style1 span {
		font-size:22px;
	}
	h2.style2 {
		font-size:22px;
		padding:0 0px 0 0px;
	}
}

.btnWrap {
	margin:50px auto;
}
.btnWrap a {
	display:block;
	margin:0 auto;
	padding:0.8em 0 0.6em;
	width:12em;
	font-size:16px;
	line-height:1;
	color:#fff;
	text-align:center;
	background:#c70d0d url(../img/btn_arrow.png) no-repeat right 15% center;
	background-size:auto 40%;
	box-shadow:2px 2px 0px rgba(126,0,0, 1);
	border-radius: 6px;
}
.btnWrap a:hover {
	background:#df2d2d url(../img/btn_arrow.png) no-repeat right 15% center;
	background-size:auto 40%;
}

/* ----------------------------------------

header

----------------------------------------- */
header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 999;
	background:#0b171b;
	width: 100%;
	height: 72px;
}
header .inner {
	display:flex;
	justify-content: space-between;
	align-items: center;
	margin:0 auto;
	padding:10px 0;
	max-width:960px;
}
header .inner .logo {
	width:100px;
}
header .inner .btn {
	width:220px;
}
@media screen and (max-width: 768px) {
	header {
		height: 69px;
	}
	header .inner {
		padding:13px 0 0;
	}
	header .inner .logo {
		margin-left:2%;
		width:22%;
	}
	header .inner .btn {
		margin-right:3%;
		width:42%;
	}
}

/* ----------------------------------------

sec01

----------------------------------------- */
#sec01 {
	margin:102px auto 0;
	background:url(../img/sec01_mv_pc.png) no-repeat top center ;
	text-align:center;
}
@media screen and (max-width: 768px) {
	#sec01 {
		margin:69px auto 0;
		background:url(../img/sec01_mv_sp.png) no-repeat top center ;
	}
}

/* ----------------------------------------

sec02

----------------------------------------- */
#sec02 {
	margin-top:30px;
}
#sec02 .inner {
	margin:0 auto;
	padding:0 0 40px 0;
	max-width:580px;
	background:#fff;
	border:1px solid #e20000;
	border-radius:10px;
	text-align:center;
}
#sec02 .inner .ti {
	margin-bottom:30px;
	padding:10px 0;
	font-size:20px;
	font-weight:bold;
	color:#fff;
	background:#e20000;
	border-radius:10px 10px 0 0 ;
}
#sec02 .inner .ti span {
	color:#ffeb03;
}
#sec02 .inner .bt {
	margin:15px 0;
}
#sec02 .inner .bt img {
	width:210px;
}
#sec02 .inner .tx {
	font-size:22px;
	color:#016dbe;
	line-height:1;
}
#sec02 .inner .tx span {
	color:#e20000;
	background:linear-gradient(transparent 60%, #fff580 60%);
}
@media screen and (max-width: 768px) {
	#sec02 .inner {
		margin:0 5%;
	}
	#sec02 .inner .bt img {
		width:60%;
	}
}

/* ----------------------------------------

sec03

----------------------------------------- */
#sec03 .inner {
	margin:0 auto;
	padding:40px;
	max-width:625px;
	background:#fff url(../img/sec03_il.png) no-repeat bottom 35px right 50px ;
	border-radius:10px;
}
#sec03 .inner .tx span {
	color:#e20000;
	background:linear-gradient(transparent 60%, #fff580 60%);
}
@media screen and (max-width: 768px) {
	#sec03 .inner {
		margin:0 5%;
		padding:20px 5%;
		font-size:14px;
		background:#fff url(../img/sec03_il.png) no-repeat bottom 15px right 3% ;
		background-size:12% auto;
	}
}

/* ----------------------------------------

sec04

----------------------------------------- */
#sec04 .inner {
	margin:0 auto;
	max-width:705px;
}
#sec04 .inner .box {
	display:flex;
	justify-content: space-between;
	margin-bottom:20px;
	padding:40px 30px;
	background:#fff;
	border-radius:10px;
}
#sec04 .inner .box .left {
	width:263px;
}
#sec04 .inner .box .right {
	width:350px;
}
#sec04 .inner .box .right .ti {
	font-size:26px;
	text-align:center;
	border-bottom:2px solid #e20000;
}
#sec04 .inner .box .right .ti span {
	display:block;
	margin:0 auto 10px;
	padding:4px 0 1px;
	width:5em;
	font-size:16px;
	color:#fff;
	background:#ff8900;
	border-radius:4px;
}
#sec04 .inner .box .right .tx {
	margin-top:15px;
}
@media screen and (max-width: 768px) {
	#sec04 .inner {
		margin:0 5%;
	}
	#sec04 .inner .box {
		padding:20px 5%;
	}
	#sec04 .inner .box .right .ti {
		font-size:22px;
	}
	#sec04 .inner .box .right .tx {
		display:flex;
		justify-content: space-between;
	}
	#sec04 .inner .box .right .tx p:nth-child(1) {
		width:45%;
	}
	#sec04 .inner .box .right .tx p:nth-child(2) {
		width:50%;
		font-size:14px;
	}
}

/* ----------------------------------------

sec05

----------------------------------------- */
#sec05 .inner {
	margin:0 auto;
	max-width:705px;
	text-align:center;
}
#sec05 .inner .box {
	position: relative;
	margin-bottom:40px;
	padding:40px 0;
	background:#fff;
	border-radius:10px;
}
#sec05 .inner .box:after {
	position: absolute;
	content: "";
	display: inline-block;
	bottom:-30px;
	left: calc(50% - 15px);
	width:30px;
	height:17px;
	background:url(../img/arrow.png) no-repeat bottom 0 center ;
}
#sec05 .inner .box.box_last:after {
	background:none;
}
#sec05 .inner .box .ti {
	margin-bottom:20px;
}
#sec05 .inner .box .ti span {
	margin-right:15px;
	padding:4px 0.5em 1px;
	width:1em;
	font-size:20px;
	font-weight:bold;
	color:#fff;
	background:#e30002;
	border-radius:6px;
}
#sec05 .inner .box .ph {
	margin:0 auto;
	max-width:45%;
}
@media screen and (max-width: 768px) {
	#sec05 .inner {
		margin:0 5%;
		text-align:left;
	}
	#sec05 .inner .box {
		padding:20px 5%;
	}
	#sec05 .inner .box .ti {
		margin-bottom:10px;
		font-size:14px;
	}
	#sec05 .inner .box .ti span {
		float:left;
		display:block;
		margin-right:10px;
		padding:4px 0.3em 1px;
		width:1em;
		font-size:20px;
		text-align:center;
	}
	#sec05 .inner .box .ph {
		max-width:100%;
	}
}

/* ----------------------------------------

sec06

----------------------------------------- */
#sec06 .inner {
	margin:0 auto;
	max-width:705px;
	text-align:center;
}
#sec06 .inner h3 {
	padding:10px 0 7px;
	font-size:22px;
	font-weight:bold;
	color:#fff;
	background:#e20000;
	border-radius:10px 10px 0 0 ;
}
#sec06 .inner .box {
	position: relative;
	padding:40px 0;
	background:#fff;
	border:1px solid #e20000;
}
#sec06 .inner .box .ti {
	display:inline-block;
	font-size:22px;
	background:linear-gradient(transparent 60%, #fff580 60%);
}
#sec06 .inner .box .tx1 {
	margin-top:10px;
	font-size:18px;
}
#sec06 .inner .box .tx2 {
	margin-top:10px;
	font-size:24px;
	color:#e20000;
}
#sec06 .inner .box .tx2 span {
	font-size:30px;
	font-weight:bold;
}
@media screen and (max-width: 768px) {
	#sec06 .inner {
		margin:0 5%;
	}
	#sec06 .inner .box {
		padding:20px 0;
	}
}

/* ----------------------------------------

sec07

----------------------------------------- */
#sec07 .inner {
	margin:0 auto;
	max-width:645px;
	padding:40px 30px;
	background:#fff;
	border-radius:10px;
}
#sec07 .inner .ti {
	font-size:18px;
	font-weight:bold;
	text-align:center;
}
#sec07 .inner .ph {
	margin-top:20px;
	text-align:center;
}
#sec07 .inner .tx {
	margin-top:20px;
	font-size:14px;
	line-height:1.8;
}
@media screen and (max-width: 768px) {
	#sec07 .inner {
		margin:0 5%;
	}
}

/* ----------------------------------------

sec08

----------------------------------------- */
#sec08 .inner {
	margin:0 auto;
	max-width:705px;
	background:#fff;
	border-radius:10px;
}
#sec08 .inner table {
	width:100%;
	color:#36556c;
	background:#fbfafd;
	border-radius:10px;
}
#sec08 .inner table tr:nth-child(2n) {
	background:#fff;
}
#sec08 .inner table th {
	padding:0 1em;
	width:4em;
	font-weight:normal;
	text-align:left;
}
#sec08 .inner table td {
	padding:1.5em 0;
	font-size:14px;
}
#sec08 .inner table td div {
	padding:0 1em ;
	border-left:2px solid #c6d6e2;
}
@media screen and (max-width: 768px) {
	#sec08 .inner {
		margin:0 5%;
	}
	#sec08 .inner table th {
		font-size:14px;
	}
}

/* ----------------------------------------

sec09

----------------------------------------- */
#sec09 .inner {
	margin:0 auto;
	max-width:705px;
}
#sec09 .inner .box {
	display:flex;
	justify-content: space-between;
	position: relative;
	margin-bottom:40px;
	padding:40px 30px;
	background:#fff;
	border-radius:10px;
}
#sec09 .inner .box:after {
	position: absolute;
	content: "";
	display: inline-block;
	bottom:-30px;
	left: calc(50% - 15px);
	width:30px;
	height:17px;
	background:url(../img/arrow.png) no-repeat bottom 0 center ;
}
#sec09 .inner .box.box_last:after {
	background:none;
}
#sec09 .inner .box .left {
	width:48%;
}
#sec09 .inner .box .right {
	width:48%;
}
#sec09 .inner .box .ti {
	font-size:20px;
	border-bottom:1px solid #e30002;
	border-radius:0 0 0 6px;
}
#sec09 .inner .box .ti span {
	margin-right:15px;
	padding:4px 0.5em 1px;
	width:1em;
	font-size:20px;
	font-weight:bold;
	color:#fff;
	background:#e30002;
	border-radius:6px;
}
#sec09 .inner .box .tx {
	margin-top:15px;
	font-size:14px;
}
@media screen and (max-width: 768px) {
	#sec09 .inner {
		margin:0 5%;
	}
	#sec09 .inner .box {
		flex-direction: column;
	}
	#sec09 .inner .box .left {
		width:100%;
	}
	#sec09 .inner .box .right {
		width:100%;
	}
	#sec09 .inner .box .left .ph {
		margin-top:15px;
	}
	#sec09 .inner .box .tx {
		font-size:12px;
	}
}

/* ----------------------------------------

sec_company

----------------------------------------- */
#sec_company {
	margin-top:72px;
}
#sec_company h2 {
	margin:0 0;
	text-align:left;
	background:#d30001;
}
#sec_company h2 span {
	display:block;
	margin:0 auto;
	padding:15px 50px;
	max-width:600px;
	font-size:26px;
	color:#fff;
}
#sec_company .inner {
	margin:0 auto;
	padding-bottom:40px;
	max-width:700px;
	background:#fff;
}
#sec_company .inner .gaiyou {
	padding:30px 5%;
}
#sec_company .inner .gaiyou dl {
	display:flex;
	flex-wrap: wrap;
	justify-content: space-between;
	font-size:20px;
	color:#002744;
}
#sec_company .inner .gaiyou dl dt {
	width:5em;
}
#sec_company .inner .gaiyou dl dd {
	width: calc(100% - 5em);
}
#sec_company .inner .teikei {
	padding:30px 5% 30px;
}
@media screen and (max-width: 768px) {
	#sec_company {
		margin-top:69px;
	}
	#sec_company h2 span {
		padding:15px 7%;
		font-size:18px;
	}
	#sec_company .inner .gaiyou {
		padding:30px 7%;
	}
	#sec_company .inner .gaiyou dl {
		font-size:14px;
	}
	#sec_company .inner .teikei {
		padding:30px 7% 30px;
	}
}
