@charset "utf-8";
/* CSS Document */
[href^="tel"] {
 text-decoration: none;
 cursor: default;
 pointer-events: none;
}
.fa-3x spsn {
	font-size: 0.5em;
}
 @media screen and (max-width: 768px) {
 [href^="tel"] {
 pointer-events: auto;
}
}
.bg-1 {
    background-image: url(../img/top/bg01.png);
    background-size: cover;
    background-repeat: no-repeat;
    min-height: 300px;

}

.bg-2 {
	background-image: url(../img/top/bg02.png);
	background-size: cover;
	background-repeat: no-repeat;
	min-height: 300px;
}
.bg-3 {
	background-image: url(../img/top/bg03.png);
	background-size: cover;
	background-repeat: no-repeat;
	min-height: 300px;
}
.bg-4 {
	background-image: url(../img/top/bg04.png);
	background-size: cover;
	background-repeat: no-repeat;
	min-height: 300px;
}
.bg-5 {
	background-image: url(../img/top/bg05.png);
	background-size: cover;
	background-repeat: no-repeat;
	min-height: 200px;
}
.bg_black {
	background-color: rgba(0, 0, 0, 0.60);
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	padding-top: 30px;
	padding-bottom: 30px;
	padding-left: 15px;
	padding-right: 15px;
	height: 100%;
}
.bg_black2 {
	background-color: rgba(0, 0, 0, 0.60);
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding-top: 30px;
	padding-bottom: 30px;
	padding-left: 15px;
	padding-right: 15px;
	height: 100%;
}
.top_cont a {
	position: relative;
	display: inline-block;
	text-decoration: none;
}
.top_cont a::after {
 position: absolute;
 bottom: -4px;
 left: 0;
 content: '';
 width: 100%;
 height: 2px;
 background-color: #F09A1E;
 transform: scale(0, 1);
 transform-origin: left top;
 transition: transform .3s;
}
.top_cont a:hover::after {
 transform: scale(1, 1);
}
#contact p, #contact p a {
	color: #FFFFFF;
}
.info {
	/*background-color: rgba(0, 0, 0, 0.70);*/
	padding-top: 20px;
	padding-right: 20px;
	padding-bottom: 20px;
	padding-left: 20px;
}
.info dl {
    max-height: 250px;
    overflow-y: scroll;
    border-top: 5px solid #C9C9C9;
}
.info dl dt {
	float: left;
	/*color: #fff;*/
	padding-top: 20px;
	padding-bottom: 20px;
	padding-left: 10px;
}
.info dl dd {
    padding-left: 8em;
    text-align: left;
    /*color: #fff;*/
    padding-top: 20px;
    padding-bottom: 20px;
    border-bottom: 1px dotted #C9C9C9;
}
@media (max-width:768px) {
.info dl dt {
 padding-bottom: 0;
 float: none;
 text-align: left;
}
.info dl dd {
 padding-left: 10px;
 text-align: left;
 padding-top: 0;
}
}
/*.info h2 {
	margin-bottom: 0px!important;
	margin-top: 0px!important;
	text-align: left;
	color: #408c4f!important;
	font-size: 2em!important;
	border-bottom: 2pt solid #c9c9c9;
	padding-left: 0;
}*/
.catch {
	font-size: 2.5vw;
	color: #333;
	background-color: rgba(255, 255, 255, 0.60);
	box-shadow: 0px 0px 0px 5px rgba(255, 255, 255, 0.60);
	border: solid 2px rgba(255, 255, 255, 0.60);
	padding-top: 1em;
	padding-bottom: 1em;
}
.catch span {
	font-size: 1.8vw;
}
.flow h2 {
	margin-top: 0px;
	margin-bottom: 15px;
	font-size: 1.8em
}
.flow h2 span {
	margin-top: 0px;
	margin-bottom: 5px;
	font-size: 0.4em;
}
.marker {
	background: linear-gradient(transparent 50%, #c4fbc3 0%);
}
p.indent-1 {
	padding-left:1em;
	text-indent:-1em;
}
.sns li {
	margin-right: 5px;
	font-size: 1.8em;
	display: inline-block;
	margin-left: 5px;
}
.sns li a {
	color: #FFFFFF;
}
label {
	position: relative;
	cursor: pointer;
	margin-right: 10px;
}
input[type="checkbox"], input[type="radio"] {
	position: absolute;
	right: 9000px;
}
/*Check box*/
input[type="checkbox"] + .label-text:before {
	content: "\f096";
	font-family: "FontAwesome";
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing:antialiased;
	width: 1em;
	display: inline-block;
	margin-right: 5px;
}
input[type="checkbox"]:checked + .label-text:before {
	content: "\f14a";
	color: #2980b9;
	animation: effect 250ms ease-in;
}
input[type="checkbox"]:disabled + .label-text {
	color: #aaa;
}
input[type="checkbox"]:disabled + .label-text:before {
	content: "\f0c8";
	color: #ccc;
}
/*Radio box*/

input[type="radio"] + .label-text:before {
	content: "\f10c";
	font-family: "FontAwesome";
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing:antialiased;
	width: 1em;
	display: inline-block;
	margin-right: 5px;
}
input[type="radio"]:checked + .label-text:before {
	content: "\f192";
	color: #8e44ad;
	animation: effect 250ms ease-in;
}
input[type="radio"]:disabled + .label-text {
	color: #aaa;
}
input[type="radio"]:disabled + .label-text:before {
	content: "\f111";
	color: #ccc;
}
/*Radio Toggle*/

.toggle input[type="radio"] + .label-text:before {
	content: "\f204";
	font-family: "FontAwesome";
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing:antialiased;
	width: 1em;
	display: inline-block;
	margin-right: 10px;
}
.toggle input[type="radio"]:checked + .label-text:before {
	content: "\f205";
	color: #16a085;
	animation: effect 250ms ease-in;
}
.toggle input[type="radio"]:disabled + .label-text {
	color: #aaa;
}
.toggle input[type="radio"]:disabled + .label-text:before {
	content: "\f204";
	color: #ccc;
}
 @keyframes effect {
 0% {
transform: scale(0);
}
 25% {
transform: scale(1.3);
}
 75% {
transform: scale(1.4);
}
 100% {
transform: scale(1);
}
}
a.arrow3 {
	position:relative;
	display:inline-block;
	padding:0 32px 0 16px;
	color:#fff;
	text-decoration:none;
	/*height:24px;*/
	line-height:24px;
	border-radius:12px;
	background: #62A1CB;
}
a.arrow3:before, a.arrow3:after {
	content:"";
	display:block;
	position:absolute;
}
a.arrow3:before {
	width:16px;
	height:16px;
	background:#fff;
	border-radius:50%;
	right:4px;
	top:4px;
}
a.arrow3:after {
	width:4px;
	height:4px;
	border-right:2px solid #62A1CB;
	border-top:2px solid #62A1CB;
	-webkit-transform:rotate(45deg);
	transform:rotate(45deg);
	right:10px;
	top:9px;
}
a.arrow3:hover {
	color: #B7D6EB;
}
.button {
	display: inline-block;
	width: 80%;
	text-align: center;
	text-decoration: none;
	outline: none;
	padding-top: 15px;
	padding-bottom: 15px;
}
.button::before, .button::after {
 position: absolute;
 z-index: -1;
 display: block;
 content: '';
}
.button, .button::before, .button::after {
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 box-sizing: border-box;
 -webkit-transition: all .3s;
 transition: all .3s;
}
.button {
    position: relative;
    z-index: 2;
    background-color: #7B1707;
    border: 2px solid #7B1707;
    color: #fff;
}
.button:hover {
	background-color: #fff;
	border-color: #7B1707;
	color: #7B1707;
}
.button::before, .button::after {
 top: 0;
 width: 50%;
 height: 100%;
 background-color: #7B1707;
}
.button::before {
 right: 0;
}
.button::after {
 left: 0;
}
.button:hover::before, .button:hover::after {
 width: 0;
 background-color: #7B1707;
}
.flexiblebox {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
}
.addcatch {
	font-size:1.6em;
	font-weight:bold;
	text-align:center;
	margin-top:60px;
}
@media (min-width:481px) {
.w25 th {
 width: 25%;
}
}
.txtS {
	font-size:0.9em;
}
#link01, #link02, #link03, #link04 {
	padding-top: 70px;
	margin-top: -70px;
}
#recruit {
	padding-top: 70px;
	margin-top: -70px;
}

.text-white {
    color: #FFFFFF;
    z-index: 999;
}