@charset "UTF-8";

:root{
	--maincolor:#5db7eb;
	--subcolor:#5db7eb;
	--bgcolor:#f1f7ff;
}

.sec_1 {
  padding: 0 0 120px;
}

.c_ttl_2 {
  margin: 50px auto;
}

/*- cancel start */
.page ul:not([class]) > li + li{
	margin-top:0;
}
/*- cancel end */

.page .l_breadcrumb{
	margin-top:30px;
	margin-bottom:30px;
}
.page .archive_list{
	ul{
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
		width:100%;
		li{
			width:30%;
			padding-left:0;
			margin:0 0 30px 0;
			&:before{
				display:none;
			}
			a{
				display:block;
				width:100%;
				text-decoration:none;
			}
			span{
				color:var(--maincolor);
				font-size:2.0rem;
				font-weight:bold;
				display:block;
				width:100%;
				padding:5px 0 0 0;
			}
			img{
				transition:all 0.3s ease;
			}
			&:hover img{
				opacity:0.8;
				transition:all 0.3s ease;
			}
		}
		&:after{
			content:"";
			width:30%;
			display:block;
		}
	}
}

/***--- company ---***/
.greeting{
	display:flex;
	flex-wrap:wrap;
	flex-direction:row-reverse;
	justify-content:left;
	.left{
		width:47.5%;
		margin-right:5%;
		img{
			width:100%;
		}
	}
	.right{
		width:47.5%;
		.name{
			font-weight:bold;
			text-align:right;
		}
	}
}

.philosophy{
	dl{
		dt{
			color:#444;
			letter-spacing:1px;
			font-weight:bold;
			font-size:28px;
			margin-bottom:20px;
			padding:5px 12px;
			border-bottom: 2px solid var(--subcolor);
		}
		dd{
			font-size:16px;
			margin-bottom:30px;
			padding-left:15px;
		}
		dd:last-child{
			margin-bottom:0px;
		}
	}
}

/***--- business ---***/
.business_page{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	list-style: none;
	list-style-type: none;
}

.business_page .businessbox{
	width: 45%;
	list-style: none;
	list-style-type: none;
	margin-bottom: 50px;
}
.business_page .businessbox figure{
	margin:0;
}

.business_page .businessbox h3:not([class]):not(:first-child){
	margin-top:20px;
	margin-bottom:20px;
}

.business_page .businessbox ul{
	margin-top:0;
	margin-left:20px;
}

/***--- recruit ---***/
.banner ul{
	width: 80%;
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
}

.banner ul li{
	width: 30%;
	/* background-color: #ccc; */
}

.banner ul li a{
	font-size: 1.5rem;
	display: block;
	text-align: center;
	padding: 15px 0;
}

/***--- news ---*/
.c_category_list.archive_news{
	flex-direction:row;
}

.news_detail p{
	font-size: 16px;
	line-height: 36px;
}

.news_detail .c_btn_1._center{
	margin-top: 100px;
}

/***--- policy ---***/
.policy_detail p{
	font-size: 16px;
}

/***--- contact ---***/
.contact_detail input[type="text"],
.contact_detail input[type="tel"],
.contact_detail input[type="email"]{
	width: 100%;
	font-size: 16px;
	padding: 5px;
	border: 1px solid #ccc;
}

.contact_detail textarea{
	width: 100%;
	font-size: 16px;
	padding: 5px;
	border: 1px solid #ccc;
}

.contact_detail p{
	font-size: 16px;
}

.contact_detail label{
	font-size: 16px;
}

.contact_detail th span {
	padding-left:10px;
	color: #FFF;
	font-size: 12px;
}
.wpcf7-list-item {
	margin-left: 0 !important;
}

.form-button{
	text-align: center;
	margin-top: 50px;
}
.form-button p{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
}
	.form-button p input{
		margin:0 10px 10px 10px;
	}

.wpcf7-spinner{
	display:none !important;
}

input[type="button"]{
	font-size: 16px;
	text-align: center;
	color: #fff;
	width: 300px;
    height: 75px;
    border: 1px solid var(--maincolor);
    background-color: var(--maincolor);
    cursor: pointer;
    transition: .7s;
}

input[type="button"]:hover{
	background-color: #fff;
	color: var(--maincolor);
}

input[type="submit"]{
	font-size: 16px;
	text-align: center;
	color: #fff;
	width: 300px;
    height: 75px;
    border: 1px solid var(--maincolor);
    background-color: var(--maincolor);
    cursor: pointer;
    transition: .7s;
}

.wpcf7 .wpcf7-submit:disabled {
	pointer-events: none;
	border: 1px solid #ddd;
	background-color: #ddd;
}

input[type="submit"]:hover{
	background-color: #fff;
	color: var(--maincolor);
}

.wpcf7-response-output{
	font-size:16px !important;
	text-align:center !important;
	padding-top:5px !important;
	padding-bottom:5px !important;
	border-color:var(--maincolor) !important;
}

.wpcf7-form .policy{
	width:100%;
	box-sizing:border-box;
	margin-top:80px;
	text-align:center;
	padding:30px 20px;
	border:1px solid #CCC;
	background-color:#F6F6F6;
}
.wpcf7-form .policy h4{
	margin-bottom:20px;
}
.wpcf7-form .policy .wpcf7-form-control-wrap{
	display:inline-block;
	margin-top:10px;
}

@media only screen and (max-width: 767px) {
.page .archive_list{
	ul{
		li{
			width:48%;
		}
		&:after{
			width:48%;
		}
	}
}

/***--- company ---***/
.greeting{
	display:block;
	.left{
		width:100%;
		margin-right:0;
		text-align:center;
		img{
			width:auto;
		}
	}
	.right{
		margin-bottom:30px;
		width:100%;
		.name{
			margin-top:20px;
		}
	}
}

/***--- business ---***/
.business_page{
	display: block;
}

.business_page .businessbox{
	display: block;
	width: 100%;
}
}

@media only screen and (max-width: 600px) {
.page .archive_list{
	ul{
		display:block;
		li{
			width:100%;
		}
		&:after{
			display:none;
		}
	}
}
}


/***--- editor ---***/
.editor {
    font-size: 16px;
    line-height: 2;
}
.editor h2 {
margin: 0 auto 45px;
	padding: 5px 12px;
	background: var(--subcolor);
	color: #fff;
	letter-spacing: 1px;
	font-weight: bold;
	font-size: 35px;
}
.editor h3 {
margin: 0 auto 45px;
    padding: 5px 12px 5px 0;
    border-bottom: 2px solid var(--subcolor);
    color: #444;
    letter-spacing: 1px;
    font-weight: bold;
    font-size: 28px;
}
.editor p {
	margin-bottom: 2em;
}
.editor ul,
.editor ol {
	margin-bottom: 2em;
	counter-reset: number 0;
}
.editor ul li,
.editor ol li {
	padding-left: 1em;
	position: relative;
	margin-bottom: 0.2em;
	list-style: none;
}
.editor ul li:before {
	content: "";
	display: block;
	width: 3px;
	height: 3px;
	background-color: var(--maincolor);
	position: absolute;
	left: 0;
	top: 1em;
}
.editor ol li:before {
	counter-increment: number 1;
	content: counter(number) ".";
	position: absolute;
	left: 0;
	top: 0;
}
.editor figure.wp-block-table {
	margin-bottom: 2em;
}
.editor table thead th:not(:last-of-type) {
	border-right: 1px solid #fff !important;
	border-bottom: 0 !important;
}
.editor table tbody th {
    width: 400px;
    background: var(--subcolor);
    color: #fff;
    vertical-align: top;
    text-align: left;
}
.editor table td {
    padding: 15px 20px;
    border: 1px solid var(--subcolor);
}
.editor .wp-block-image {
	overflow: hidden;
	margin-bottom: 2em;
}