﻿@charset "utf-8";

.show_sp { display: none;}

.fo_mb101 { font-family: "ゴシックMB101 DB";}

.ta_center { text-align: center;}
.ta_left { text-align: left;}
.ta_right { text-align: right;}
.ta_center-s_left { text-align: center;}

.fo_white { color: #fff;}
.fo_red { color: #c4142b;}
.fo_blue { color: #0052a4;}

.lh12 { line-height: 1.2;}
.lh14 { line-height: 1.4;}

.back_white { background-color: #fff;}

.mb05 { margin-bottom: 5px !important;}
.mb10 { margin-bottom: 10px !important;}
.mb15 { margin-bottom: 15px !important;}
.mb20 { margin-bottom: 20px !important;}
.mb25 { margin-bottom: 25px !important;}
.mb30 { margin-bottom: 30px !important;}
.mb40 { margin-bottom: 40px !important;}
.mb60 { margin-bottom: 60px !important;}

.mb40-20 { margin-bottom: 40px !important;}
.mb60-30 { margin-bottom: 60px !important;}
.mb80-40 { margin-bottom: 80px !important;}

#container { overflow: hidden;}
.add_wrap { padding: 20px 0px; line-height: 1.6; font-size: 1.1em;}
p { text-align: inherit;}

.pos_rel { position: relative; z-index: 10;}
.pos_ab { position: absolute;}

.list_disc { padding-left: 1em;}
.list_disc li { list-style: outside disc;}

.list_indent { padding-left: 1em;}
.list_indent li { text-indent: -1em;}

.itemTit03 { border-bottom: none; padding-bottom: 0px;}


.out_box01 { display: flex; justify-content: space-between; align-items: center;}
.out_box01 .box_inner { width: calc(100% - 165px);}
.out_box01 h2 { font-size: 2em; line-height: 1.2;}
.out_box01 .underline:before { content: ""; position: absolute; left: 0px; bottom: 0px; width: 100%; height: 40%; background-image:linear-gradient(-45deg, #fff 25%, #fff000 25%, #fff000 50%, #fff 50%, #fff 75%, #fff000 75%, #fff000); background-size: 10px 10px; z-index: -1}

.out_sec { margin-bottom: 50px;}
.out_sec h3 { border-bottom: solid 4px #c60229; font-size: 1.5em; padding: 0px 0px 0.5em 3em;}
.out_sec h3 .pos_ab { left: 0px; top: -0.4em; width: 2.4em}
.out_sec ul { display: flex; flex-wrap: wrap;}

.out_sec.sec01 ul { margin: auto -5px;}
.out_sec.sec01 li { width: calc(50% - 10px); margin: 0px 5px 10px;}
.out_sec.sec01 li a { display: flex; justify-content: space-between; align-items: center; height: 130px; border: solid 1px #999999; text-decoration: none; position: relative;}
.out_sec.sec01 li a:after {
	content: "";
	right: 1em;
	position: absolute;
    width: 0.8em;
    height: 0.8em;
    border-top: 1px solid #999;
    border-right: 1px solid #999;
    transform: rotate(45deg);
}
.out_sec.sec01 li figure { width: 33%;}
.out_sec.sec01 li .box_inner { width: 62%; padding: 1em 2.5em 1em 0px;}
.out_sec.sec01 li h4 { font-size: 1.05em;}

.out_sec.sec02 ul { margin: auto -15px;}
.out_sec.sec02 li { width: calc(50% - 30px); margin: 0px 15px 30px;}
.out_sec.sec02 li a { display: block; text-decoration: none; font-size: 1.3em; position: relative; border-bottom: solid 1px #999999; padding: 0px 2.5em 0.8em 0.6em;}
.out_sec.sec02 li a:after {
	content: "";
	right: 1em;
	top: 0.4em;
	position: absolute;
    width: 0.6em;
    height: 0.6em;
    border-top: 1px solid #999;
    border-right: 1px solid #999;
    transform: rotate(45deg);
}
.out_sec.sec02 li a span { font-size: 0.7em;}

.out_sec.sec03 ul { margin: auto -10px;}
.out_sec.sec03 li { width: calc(25% - 20px); margin: 0px 10px 20px;}

@media only screen and (min-width: 731px) {
	.hidden_l { display: none;}
}

@media only screen and (max-width: 730px) {
	.hidden_s { display: none;}
	
	.add_wrap { font-size: 1em;}

	.mb40-20 { margin-bottom: 20px !important;}
	.mb60-30 { margin-bottom: 30px !important;}
	.mb80-40 { margin-bottom: 40px !important;}

	.ta_center-s_left { text-align: left;}

	.out_box01 figure { width: 80px; align-self: flex-start; margin-top: -15px;}
	.out_box01 .box_inner { width: calc(100% - 95px);}
	.out_box01 h2 { font-size: 4vw;}

	.out_sec.sec01 li a { height: 100%;}
	.out_sec.sec01 li figure { width: 25%; padding-left: 0.6em; }
	.out_sec.sec01 li .box_inner { width: 71%; padding: 1em 2.2em 1em 0px;}
}

@media only screen and (max-width: 640px) {
	.out_sec.sec01 li { width: calc(100% - 10px);}
	.out_sec.sec01 li figure { padding: 0.6em 0px 0.6em 0.6em; }

	.out_sec.sec02 ul { margin: auto -10px;}
	.out_sec.sec02 li { width: calc(50% - 20px); margin: 0px 10px 20px;}
	.out_sec.sec02 li a { font-size: 3.2vw; padding: 0px 0.5em 0.8em 0px;}
	.out_sec.sec02 li a:after { right: 0.3em; top: 0.5em; width: 0.4em; height: 0.4em;}

	.out_sec.sec03 ul { margin: auto -5px;}
	.out_sec.sec03 li { width: calc(25% - 10px); margin: 0px 5px 10px;}
}

@media only screen and (max-width: 480px) {
	.out_box01 figure { width: 60px; margin-left: -5px;}
	.out_box01 .box_inner { width: calc(100% - 70px);}

	.out_sec h3 { padding-left: 2.3em;}
	.out_sec h3 .pos_ab { top: -0.2em; width: 1.8em}

	.out_sec.sec03 li { width: calc(50% - 10px);}
}