@charset "utf-8";

#main,
#main p{
	font-size: 15px;
	line-height: 1.5em;
}

#main img {
	width: 100%;
	height: auto;
	vertical-align: top;
	-webkit-backface-visibility: hidden;
}

#main a {
	transition: .3s;
}
#main a:hover {
	opacity: 0.7;
	text-decoration: none;
}

header {
	z-index: 9999 !important;
}


/* .link01
__________________________________ */
#main a.link01 {
	position: relative;
	display: inline-block;
	padding-left: 13px;
	color: #0050a3 !important;
}
#main a.link01 span::before {
	content: "";
	width: 6px;
	height: 6px;
	border: 0px;
	border-top: solid 1px #0050a3;
	border-right: solid 1px #0050a3;
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -4px;
}
#main a.link01[target="_blank"] span:after {
	content: "";
	width: 16px;
	height: 15px;
	right: -25px;
	margin-top: -9px;
	background-image: url(../wr_img/icon_blank.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	display: block;
	position: absolute;
	top: 50%;
	transition: .3s;
}


/* h1
__________________________________ */
#main .mv_img {
	background-image: url(../wr_img/mv.jpg);
	background-size: cover;
	background-position: center;
	position: relative;
}
#main .mv_img::after {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: inherit;
	background-color: #000;
	opacity: .6;
	content: "";
}
#main .mv_img h1 {
	margin: 0 0 30px !important;
	color: #fff;
	font-size: 40px !important;
	font-weight: bold;
	height: 340px;
	display: flex;
	align-items: center;
	justify-content: center;
}


/* h2
__________________________________ */
#main h2 {
	margin: 0 0 20px;
	padding: 18px 20px;
	background-color: #10228a;
	font-size: 22px;
	text-align: center;
	color: #fff;
	line-height: 1;
	letter-spacing: .2em;
}


/* h3
__________________________________ */
#main h3 {
	padding: 12px;
	border-left: 6px solid #4496d5;
	border-right: 1px solid #4496d5;
	border-bottom: 1px solid #4496d5;
	border-top: 1px solid #4496d5;
	-webkit-box-shadow: 0px 4px 3px rgba(102,102,102,0.30);
	box-shadow: 0px 4px 3px rgba(102,102,102,0.30);
	font-size: 18px;
	line-height: 1;
	margin-top: 40px;
	margin-bottom: 20px;
}


/* h4
__________________________________ */
#main h4 {
	font-size: 18px;
	margin: 40px 0 15px;
}


/* .lead_sentence
__________________________________ */
.lead_sentence {
	width: 910px;
	margin: -126px auto 60px;
	padding-top: 126px;
}


/* #sec01
__________________________________ */
#sec01 {
	width: 910px;
	margin: -126px auto 60px;
	padding-top: 126px;
}
#sec01 .inner {
	display: flex;
	align-items: center;
}
#sec01 .inner img {
	margin-right: 18px;
	width: 83px;
	height: 83px;
}


/* #sec02
__________________________________ */
#sec02 {
	width: 910px;
	margin: -126px auto 60px;
	padding-top: 126px;
}
#sec02 .flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#sec02 .flex img,
#sec02 .flex div{
	width: 440px;
}
#sec02 .flex div a.link01{
	margin-top: 40px;
}
#sec02 .btn01 a {
	position: relative;
	box-sizing: border-box;
	display: inline-block;
	margin-top: 15px;
	padding: 19px 64px 19px 30px;
	border-radius: 6px;
	background-color: #0091e8;
	text-align: center;
	text-decoration: none;
	font-size: 20px;
	font-weight: bold;
	color: #fff !important;
	line-height: 1.3em;
}
#sec02 .btn01 a:hover {
	color: #fff !important;
}
#sec02 .btn01 a::after {
	position: absolute;
	content: "";
	width: 8px;
	height: 8px;
	border: 0px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	right: 20px;
	margin-top: -4px;
}
#sec02 .btn_area {
	margin: 35px 0 40px;
}
#sec02 .h3_inner {
	padding-left: 18px;
}
#sec02 .h3_inner a {
	margin-top: 20px;
}


/* #sec03
__________________________________ */
#sec03 {
	width: 910px;
	margin: -126px auto 60px;
	padding-top: 126px;
}
#sec03 .inner > div {
	padding-left: 18px;
}
#sec03 a {
	margin-top: 20px;
}
#sec03 p + p {
	margin-top: 25px;
}
#sec03 dl {
	font-size: 16px;
	margin-top: 15px;
	margin-bottom: 0;
	line-height: 1.8;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #ddd;
}
#sec03 dt {
	padding-top: 0.625rem;
	padding-bottom: 0.625rem;
	padding-right: 0.9375rem;
	padding-left: 0.9375rem;
	border-width: 0;
	border-style: solid;
	border-color: #ddd;
	font-weight: 400;
	background-color: #f1f9fa;
}
#sec03 dt:first-child {
	border-top-width: 1px;
}
#sec03 dd {
	padding-top: 0.625rem;
	padding-bottom: 0.625rem;
	padding-right: 0.9375rem;
	padding-left: 0.9375rem;
	border-width: 0;
	border-style: solid;
	border-color: #ddd;
	font-weight: 400;
}
#sec03 dt:nth-of-type(1) {
	-ms-grid-column: 1;
	-ms-grid-row: 1;
}
#sec03 dd:nth-of-type(1) {
	-ms-grid-column: 2;
	-ms-grid-row: 1;
}
#sec03 dt:nth-of-type(2) {
	-ms-grid-column: 1;
	-ms-grid-row: 2;
}
#sec03 dd:nth-of-type(2) {
	-ms-grid-column: 2;
	-ms-grid-row: 2;
}
#sec03 dt:nth-of-type(3) {
	-ms-grid-column: 1;
	-ms-grid-row: 3;
}
#sec03 dd:nth-of-type(3) {
	-ms-grid-column: 2;
	-ms-grid-row: 3;
}
#sec03 dt:nth-of-type(4) {
	-ms-grid-column: 1;
	-ms-grid-row: 4;
}
#sec03 dd:nth-of-type(4) {
	-ms-grid-column: 2;
	-ms-grid-row: 4;
}
#sec03 dl + ul.attention {
	margin-top: 15px;
}
#sec03 ul.attention {
	margin-top: 20px;
	padding-right: 1.2em;
	font-size: 13px;
}
#sec03 ul.attention li {
	position: relative;
	left: 1.2em;
	text-indent: 0;
	padding-left: 0;
}
#sec03 ul.attention li::before {
	position: absolute;
	content: '※';
	left: -1.2em;
	top: 0;
}
#sec03 ul.attention li + li {
	margin-top: .2em;
}


/* #sec04
__________________________________ */
#sec04 {
	width: 910px;
	margin: -126px auto 60px;
	padding-top: 126px;
}
#sec04 .inner > div {
	padding-left: 18px;
}
#sec04 a {
	margin-top: 20px;
}
#sec04 .first_child a {
	margin-top: 30px;
}
#sec04 ul.attention {
	margin-top: 20px;
	padding-right: 1.2em;
	font-size: 13px;
}
#sec04 ul.attention li {
	position: relative;
	left: 1.2em;
	text-indent: 0;
	padding-left: 0;
}
#sec04 ul.attention li::before {
	position: absolute;
	content: '※';
	left: -1.2em;
	top: 0;
}
#sec04 ul.attention li + li {
	margin-top: .2em;
}
#sec04 .flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#sec04 .flex div{
	width: 440px;
	margin-top: 35px;
}
#sec04 .flex div a.link01{
	margin-top: 40px;
}
#sec04 .btn01 a {
	position: relative;
	box-sizing: border-box;
	display: inline-block;
	margin-top: 15px;
	padding: 19px 64px 19px 30px;
	border-radius: 6px;
	background-color: #0091e8;
	text-align: center;
	text-decoration: none;
	font-size: 20px;
	font-weight: bold;
	color: #fff !important;
	line-height: 1.3em;
}
#sec04 .btn01 a:hover {
	color: #fff !important;
}
#sec04 .btn01 a::after {
	position: absolute;
	content: "";
	width: 8px;
	height: 8px;
	border: 0px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	right: 20px;
	margin-top: -4px;
}


/* #sec05
__________________________________ */
#sec05 {
	width: 910px;
	margin: -126px auto 60px;
	padding-top: 126px;
}
#sec05 a {
	margin-top: 20px;
}
#sec05 ul.attention {
	margin-top: 20px;
	padding-right: 1.2em;
	font-size: 13px;
}
#sec05 ul.attention li {
	position: relative;
	left: 1.2em;
	text-indent: 0;
	padding-left: 0;
}
#sec05 ul.attention li::before {
	position: absolute;
	content: '※';
	left: -1.2em;
	top: 0;
}
#sec05 ul.attention li + li {
	margin-top: .2em;
}


/* #sec06
__________________________________ */
#sec06 {
	width: 910px;
	margin: -126px auto 60px;
	padding-top: 126px;
}
#sec06 ul.normal li {
	text-indent: -1em;
	padding-left: 1em;
}
#sec06 ul.normal li + li {
	margin-top: .6em;
}
#sec06 ul.attention {
	margin-top: 13px;
	padding-right: 1.2em;
	font-size: 13px;
}
#sec06 ul.attention li {
	position: relative;
	left: 1.2em;
	text-indent: 0;
	padding-left: 0;
}
#sec06 ul.attention li::before {
	position: absolute;
	content: '※';
	left: -1.2em;
	top: 0;
}
#sec06 ul.attention li + li {
	margin-top: .2em;
}
#sec06 ul.normal li ul.attention {
	margin-top: 3px;
}


/* #sec07
__________________________________ */
#sec07 {
	width: 910px;
	margin: -126px auto 60px;
	padding-top: 126px;
}
#sec07 a {
	margin-top: 20px;
}


/* #sec08
__________________________________ */
#sec08 {
	width: 910px;
	margin: -126px auto 60px;
	padding-top: 126px;
}
#sec08 .inner > div {
	padding-left: 18px;
}
#sec08 #contact {
	margin: -110px auto 0;
	padding-top: 110px;
}
#sec08 h4 {
	margin-top: 0;
}
#sec08 ul.attention {
	margin-top: 20px;
	padding-right: 1.2em;
	font-size: 13px;
}
#sec08 ul.attention li {
	position: relative;
	left: 1.2em;
	text-indent: 0;
	padding-left: 0;
}
#sec08 ul.attention li::before {
	position: absolute;
	content: '※';
	left: -1.2em;
	top: 0;
}
#sec08 ul.attention li + li {
	margin-top: .2em;
}
#sec08 .tel_icon {
	font-size: 20px;
	color: #10228a;
	font-weight: bold;
}
#sec08 .tel_icon::before {
	content: "";
	display: inline-block;
	margin-right: 10px;
	margin-bottom: -5px;
	width: 26px;
	height: 26px;
	background: url(../wr_img/icon_tel.png) no-repeat center center/cover;
}


/* #sec09
__________________________________ */
#sec09 {
	width: 910px;
	margin: -126px auto 60px;
	padding-top: 126px;
}
#sec09 .inner {
	display: flex;
	align-items: center;
}
#sec09 .inner img {
	margin-right: 18px;
	width: 83px;
	height: 83px;
}


@media screen and (min-width: 768px) {
/* #sec03
__________________________________ */
	#sec03 dl {
		-ms-grid-columns: auto 1fr;
		grid-template-columns: auto 1fr;
		-ms-grid-columns: 50% 50%;
		grid-template-columns: 50% 50%;
		display: -ms-grid;
		display: grid;
		grid-auto-rows: auto;
		padding-bottom: 0;
	}
	#sec03 dt {
		padding-top: 0.75rem;
		padding-bottom: 0.75rem;
		padding-right: 1.5rem;
		padding-left: 1.5rem;
		box-sizing: border-box;
		border-top-width: 1px;
	}
	#sec03 dd {
		padding-top: 0.75rem;
		padding-bottom: 0.75rem;
		padding-right: 1.5rem;
		padding-left: 1.5rem;
		box-sizing: border-box;
		border-top-width: 1px;
	}
}


@media screen and (min-width:1px) and (max-width:767px) {
/* .link01
__________________________________ */
	#main a.link01 {
		display: block;
	}
	#main a.link01 span {
		display: block;
	}
	#main a.link01 span::before {
		top: 7px;
		margin-top: 0;
	}
	#main a.link01[target="_blank"] span:after {
		right: -6px;
		display: inline-block;
		position: relative;
	}


/* h1
__________________________________ */
	#main .mv_img h1 {
		margin: 0 0 20px !important;
		font-size: 28px !important;
		height: 330px;
		text-align: center;
		padding: 0 4%;
		line-height: 1.5em;
	}


/* h2
__________________________________ */
	#main h2 {
		margin: 0 0 15px;
		padding: 12px 3.5%;
		font-size: 18px;
		line-height: 1.4em;
		letter-spacing: .1em;
	}


/* h3
__________________________________ */
	#main h3 {
		font-size: 16px !important;
		line-height: 1.4;
		margin-top: 25px;
	}


/* h4
__________________________________ */
	#main h4 {
		font-size: 16px;
		margin: 30px 0 15px;
	}


/* .lead_sentence
__________________________________ */
	.lead_sentence {
		width: 93%;
		margin: -45px auto 30px;
		padding-top: 45px;
	}


/* #sec01
__________________________________ */
	#sec01 {
		width: auto;
		margin: -45px auto 30px;
		padding-top: 45px;
	}
	#sec01 .inner {
		width: 93%;
		margin: 0 auto;
	}


/* #sec02
__________________________________ */
	#sec02 {
		width: auto;
		margin: -45px auto 30px;
		padding-top: 45px;
	}
	#sec02 .inner {
		width: 93%;
		margin: 0 auto;
	}
	#sec02 .flex {
		display: block;
	}
	#sec02 .flex img, 
	#sec02 .flex div {
		width: 100%;
	}
	#sec02 .flex img{ 
		margin-bottom: 15px;
	}
	#sec02 .btn_area {
		margin: 30px 0 35px;
	}
	#sec02 .flex div + div {
		margin-top: 30px;
	}
	#sec02 .flex div a.link01 {
		margin-top: 30px;
	}
	#sec02 .btn01 a {
		margin-top: 8px;
		padding: 19px 42px 19px 15px;
		font-size: 16px;
		line-height: 1.4em;
	}


/* #sec03
__________________________________ */
	#sec03 {
		width: auto;
		margin: -45px auto 30px;
		padding-top: 45px;
	}
	#sec03 > .inner {
		width: 93%;
		margin: 0 auto;
	}


/* #sec04
__________________________________ */
	#sec04 {
		width: auto;
		margin: -45px auto 30px;
		padding-top: 45px;
	}
	#sec04 > .inner {
		width: 93%;
		margin: 0 auto;
	}
	#sec04 .flex {
		display: block;
	}
	#sec04 .flex div {
		width: 100%;
		margin-top: 25px;
	}
	#sec04 .flex div + div {
		margin-top: 30px;
	}
	#sec04 .flex div a.link01 {
		margin-top: 30px;
	}
	#sec04 .btn01 a {
		margin-top: 8px;
		padding: 19px 42px 19px 15px;
		font-size: 16px;
		line-height: 1.4em;
	}


/* #sec05
__________________________________ */
	#sec05 {
		width: auto;
		margin: -45px auto 30px;
		padding-top: 45px;
	}
	#sec05 .inner {
		width: 93%;
		margin: 0 auto;
	}


/* #sec06
__________________________________ */
	#sec06 {
		width: auto;
		margin: -45px auto 30px;
		padding-top: 45px;
	}
	#sec06 .inner {
		width: 93%;
		margin: 0 auto;
	}


/* #sec07
__________________________________ */
	#sec07 {
		width: auto;
		margin: -45px auto 30px;
		padding-top: 45px;
	}
	#sec07 .inner {
		width: 93%;
		margin: 0 auto;
	}


/* #sec08
__________________________________ */
	#sec08 {
		width: auto;
		margin: -45px auto 30px;
		padding-top: 45px;
	}
	#sec08 .inner {
		width: 93%;
		margin: 0 auto;
	}
	#sec08 h4 {
		margin-top: 0;
	}
	#sec08 #contact {
		margin: -45px auto 0;
		padding-top: 45px;
	}


/* #sec09
__________________________________ */
	#sec09 {
		width: auto;
		margin: -45px auto 30px;
		padding-top: 45px;
	}
	#sec09 .inner {
		width: 93%;
		margin: 0 auto;
	}

}

