@charset "UTF-8";
/*
=======================================================

=======================================================
*/

/* ========== title ========== */
.title01{
	font-size:30px;
	color:#2a2a2a;
	font-weight:bold;
	text-shadow: 0.1px 0.5px 0 #2a2a2a;
	margin-bottom:40px;
	width: 100%;
}
.title02{
	font-size:28px;
	color:#009942;
	font-weight:bold;
	text-align:center;
	line-height: 1.4;
	margin-bottom:30px;
	width: 100%;
}
.title03{
	font-size:36px;
	color:#222222;
	font-weight:bold;
	text-shadow: 0.1px 0.5px 0 #222222;
	text-align:center;
	line-height: 1.2;
	margin-bottom:40px;
	width: 100%;
}
.title04{
	font-size:28px;
	color:#222222;
	font-weight:bold;
	text-shadow: 0.1px 0.5px 0 #222222;
	border-left: 3px solid #31328c;
    line-height: 1.2;
    padding-left:20px;
    margin-bottom:5px;
    width: 100%;
}
.title05{
	font-size:28px;
	color:#222222;
	font-weight:bold;
	text-shadow: 0.1px 0.5px 0 #222222;
	margin-bottom:30px;
	width: 100%;
}
.title06{
	font-size:16px;
	color:#fff;
	letter-spacing: 0.1em;
	border-bottom: 1px solid #5b5b67;
	width: 100%;
	margin-bottom: 10px;
}
.title06 span{
	background:#5b5b67;
	display:inline-block;
	width:170px;
	height:40px;
	text-align:center;
	line-height: 40px;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
}
.title07{
	font-size:28px;
	color:#009942;
	width: 100%;
	font-weight:bold;
	line-height: 1.3;
	position:relative;
	margin-bottom: 30px;
    padding-bottom: 30px;
}
.title07:after{
	position:absolute;
	content:"";
	background:#009942;
	height:3px;
	width:110px;
	bottom:0;
	left:0;
}
.title08{
	font-size:30px;
	color:#2a2a2a;
	font-weight:bold;
	text-shadow: 0.1px 0.5px 0 #2a2a2a;
	text-align:center;
	margin-bottom: 100px;
}
.title09{
	font-size:32px;
	color:#000;
	font-weight:bold;
	border-left: 5px solid #009942;
    line-height: 1.2;
    padding-left:50px;
    margin-bottom:50px;
    width: 100%;
}
.title10{
	font-size:26px;
	color:#333333;
	font-weight:bold;
	margin-bottom:10px;
}
.title10 span{
	font-size:26px;
	color:#009942;
	font-weight:bold;
}
.title11{
	border-bottom:1px solid #dbdbdb;
}
.title11 span{
	font-size:22px;
	color:#1a1a1a;
	border-left:4px solid #009942;
	padding-left:15px;
	font-weight:bold;
}



.titleCatch01{
	font-size:14px;
	color:#434343;
	display: block;
	width: 100%;
}
.titleCatch02{
	font-size:24px;
	color:#222222;
	display:block;
	width: 100%;
}



/* ========== topService ========== */
.col1-5{
	width:20%;
}
.topService .col1-5{
	position:relative;
	transition:0.5s;
	overflow: hidden;
}
.topService .col1-5:hover{
	width:25%;
}
.topService .col1-5 a{
	display:block;
	height:100%;
}
.topServiceBox{
	height:300px;
	flex-wrap:nowrap;
}
.topService1{
	background-image:url(../img/top_5col_1.png);
	background-position:center center;
	background-size:cover;
}
.topService2{
	background-image:url(../img/top_5col_2.png);
	background-position:center center;
	background-size:cover;
}
.topService3{
	background-image:url(../img/top_5col_3.png);
	background-position:center center;
	background-size:cover;
}
.topService4{
	background-image:url(../img/top_5col_4.png);
	background-position:center center;
	background-size:cover;
}
.topService5{
	background-image:url(../img/top_5col_5.png);
	background-position:center center;
	background-size:cover;
}
.topServiceBtm{
	position:absolute;
	width:100%;
	bottom:0;
	left:0;
	height:80px;
	transition:0.5s;
}
.btm1{
	background:rgba(177,183,26,0.8);
}
.btm2{
	background:rgba(81,75,103,0.8);
}
.btm3{
	background:rgba(187,170,84,0.8);
}
.btm4{
	background:rgba(168,92,78,0.8);
}
.btm5{
	background:rgba(92,54,53,0.8);
}


.topService .col1-5:hover .topServiceBtm{
	height:100%;
}
.topServiceBtmTit{
	text-align:center;
	font-size:18px;
	color:#fff;
	font-weight:bold;
	line-height: 1;
	position: absolute;
    width: 100%;
    bottom: 18px;
    transition:0.5s;
}
.topService .col1-5:hover .topServiceBtmTit{
	bottom:53%;
}
.topServiceBtmTit br{
	line-height: initial;
}
.topServiceIcon{
	width:100%;
	text-align:center;
	z-index: 999;
    position: relative;
    top: 38%;
    transition:0.5s;
}
.topService .col1-5:hover .topServiceIcon{
	top:10%;
}
.topServiceIcon img{
	display:inline-block;
}
.iconOn{
	visibility: hidden;
	opacity:0;
	position:absolute;
	top:0;
	left:0;
	right:0;
	margin:auto;
	transition:0.5s;
}
.topService .col1-5:hover .iconOn{
	visibility: visible;
	opacity:1;
	transform:rotate(360deg);
}
.iconOff{
	visibility: visible;
	opacity:1;
	position:absolute;
	top:0;
	left:0;
	right:0;
	margin:auto;
	transition:0.5s;
}
.topService .col1-5:hover .iconOff{
	visibility: hidden;
	opacity:0;
	transform:rotate(360deg);
}
.topServiceTxtBox{
	text-align:center;
	position: relative;
    top: 100%;
    transition:0.5s;
    visibility: hidden;
}
.topService .col1-5:hover .topServiceTxtBox{
	top:53%;
	visibility: visible;
}
.topServiceTxt{
	width:100%;
	text-align:center;
	font-size:12px;
	color:#fff;
	margin-bottom:20px;
	line-height:1;
}
.topServiceTxt br{
	line-height: initial;
}
.topServiceBtn{
	font-size:16px;
	text-align:center;
	font-weight:bold;
	border:1px solid #fff;
	border-radius:4px;
	width:200px;
	height:38px;
	line-height:38px;
	color:#fff;
	display:inline-block;
	position:relative;
}
.topServiceBtn:after{
	position:absolute;
	content:"\f105";
	font-family: FontAwesome;
	right: 10px;
	line-height: 36px;
}

@media screen and (max-width: 1199px) {

}
@media screen and (max-width: 991px) {

}
@media screen and (max-width: 767px) {
	.col1-5{
		width:50%;
	}
	.topServiceBox{
		flex-wrap:wrap;
		height:auto;
	}
	.topService .col1-5{
		height:300px;
	}
	.topService .col1-5:hover{
		width:50%;
	}
}
@media screen and (max-width: 480px) {
	.col1-5{
		width:100%;
	}
	.topService .col1-5:hover{
		width:100%;
	}
}

/* ========== newsList ========== */
.topNewsBox01{
	width:100%;
}
.topNewsRow01{
	display:flex;
	border-bottom:1px solid #e0e0e0;
	padding: 15px 150px;
	align-items: center;
}
.topNewsRow01:first-of-type{
	border-top:1px solid #e0e0e0;
}
.topNewsDate01{
	font-size:16px;
	color:#434343;
	font-weight:bold;
	padding-right:20px;
}
.topNewsCateBox01{
	padding-right:20px;
}
.topNewsCate{
	background:#8fc21b;
	font-size:12px;
	color:#fff;
	width:100px;
	text-align:center;
	height:20px;
	line-height:20px;
	border-radius:6px;
}
.topNewsTxt01 a{
	font-size:14px;
	color:#434343;
}
.topNewsTxt01 a:hover{
	text-decoration:underline;
}

.topNewsRow02{
	display:flex;
	border-bottom:1px dashed #eeeeee;
	align-items:center;
	padding:10px 5px;
}
.topNewsBox02 .topNewsRow02:last-of-type{
	border-bottom:none;
}
.topNewsDate02{
	font-size:14px;
	color:#222222;
	width:130px;
	padding-right:15px;
}
.topNewsDate02:before{
	content:"\f111";
	font-family: FontAwesome;
	color:#31328c;
	margin-right:10px;
}
.topNewsTxt02{
	width:calc(100% - 130px);
}
.topNewsTxt02 a{
	font-size:14px;
	color:#222222;
}
.topNewsTxt02 a:hover{
	text-decoration:underline;
}

.topNewsBox03{
	margin-top:20px;
}
.topNewsRow03{
	padding:20px 10px 0;
	height:90px;
	border-bottom:1px solid #f4f4f4;
}
.topNewsRow03:hover{
	background:#f4f4f4;
}
.topNewsRow03 a{
	display:flex;
	flex-wrap:wrap;
}
.topNewsDate03{
	font-size:14px;
	color:#4a4a4a;
	font-weight:bold;
	width:140px;
}
.topNewsDate03 span{
	font-size:12px;
	color:#fff;
	font-weight:bold;
	background:#ef0018;
	width:110px;
	display:block;
	line-height:18px;
	text-align:center;
	border-radius:2px;
}
.topNewsTxt03{
	font-size:14px;
	color:#4a4a4a;
	font-weight:bold;
	width:calc(100% - 140px);
}
.topNewsMore03{
	text-align:right;
	padding:10px;
	border-bottom:1px solid #f4f4f4;
}
.topNewsMore03 a{
	font-size:12px;
	color:#224a8e;
	font-weight:bold;
}
.topNewsMore03 a:hover{
	text-decoration:underline;
}
.topNewsMore03 i{
	color:#224a8e;
}

.topNewsBox04{
	margin:0 10px;
	border-left:1px solid #eeeeee;
	border-right:1px solid #eeeeee;
	padding:15px 15px 40px;
	position:relative;
	height:240px;
	overflow:hidden;
}
.topNewsBox04 a{
	display:block;
	height:100%;
}
.topNewsBox04Bdr1{
	position:absolute;
	height:5px;
	width:100%;
	background:#b1b71a;
	top: 0;
    left: 0;
}
.topNewsBox04Bdr2{
	position:absolute;
	height:5px;
	width:100%;
	background:#514b67;
	top: 0;
    left: 0;
}
.topNewsBox04Bdr3{
	position:absolute;
	height:5px;
	width:100%;
	background:#bbaa54;
	top: 0;
    left: 0;
}
.topNewsBox04Bdr4{
	position:absolute;
	height:5px;
	width:100%;
	background:#a85c4e;
	top: 0;
    left: 0;
}
.topNewsBox04Bdr5{
	position:absolute;
	height:5px;
	width:100%;
	background:#5c3635;
	top: 0;
    left: 0;
}
.topNews04Date{
	font-size:12px;
	color:#b3b3b3;
}
.topNews04Tit{
	font-size:18px;
	color:#2a2a2a;
	border-bottom:1px solid #dddddd;
	padding:10px 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	margin-bottom: 15px;
}
.topNews04Txt{
	font-size:12px;
	color:#5c5c5c;
	line-height: 1.6;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 5;
	width:100%;
}
.topNewsBox04Btm1{
	position:absolute;
	bottom:0;
	left:0;
	height:23px;
	width:100%;
	text-align:center;
	line-height:24px;
	font-size:12px;
	color:#fff;
	background:#b1b71a;
}
.topNewsBox04Btm2{
	position:absolute;
	bottom:0;
	left:0;
	height:23px;
	width:100%;
	text-align:center;
	line-height:24px;
	font-size:12px;
	color:#fff;
	background:#514b67;
}
.topNewsBox04Btm3{
	position:absolute;
	bottom:0;
	left:0;
	height:23px;
	width:100%;
	text-align:center;
	line-height:24px;
	font-size:12px;
	color:#fff;
	background:#bbaa54;
}
.topNewsBox04Btm4{
	position:absolute;
	bottom:0;
	left:0;
	height:23px;
	width:100%;
	text-align:center;
	line-height:24px;
	font-size:12px;
	color:#fff;
	background:#a85c4e;
}
.topNewsBox04Btm5{
	position:absolute;
	bottom:0;
	left:0;
	height:23px;
	width:100%;
	text-align:center;
	line-height:24px;
	font-size:12px;
	color:#fff;
	background:#5c3635;
}

@media screen and (max-width: 1199px) {

}
@media screen and (max-width: 991px) {
	.topNewsRow01{
		padding: 15px 50px;
	}
}
@media screen and (max-width: 767px) {
	.topNewsRow01{
		padding: 15px 0;
		flex-wrap: wrap;
	}
	.topNewsTxt01{
		width:100%;
	}
	.topNewsRow03{
		height:auto;
		padding: 20px 10px;
	}
	.topNewsTxt03{
		width:100%;
	}
	.topNewsDate03{
		width:100%;
		margin-bottom: 10px;
	}
	.topNewsDate03 span{
		display:inline-block;
	}
}

/* ========== news detail ========== */
.newsDetailDateRow{
	display:flex;
	align-items: center;
}
.newsDetailDate{
	font-size: 22px;
    color: #222222;
    font-weight: bold;
    margin-right:20px;
}
.newsDetailTit{
	font-size: 28px;
    font-weight: bold;
    color: #222222;
    margin-bottom: 20px;
    line-height:1.4;
}
.newsDetailImg{
	text-align:center;
	margin-bottom:20px;
}
.newsDetailImg img{
	display:inline-block;
}
.newsDetailTxt{
	font-size:18px;
}

@media screen and (max-width: 1199px) {

}
@media screen and (max-width: 991px) {

}
@media screen and (max-width: 767px) {
	.newsDetailTit{
		font-size:24px;
	}
}

/* ========== faq ========== */
.acMenu {
	float: left;
	width: 100%;
	margin-bottom: 20px;
}

.acMenu dt {
	display: flex;
	width: 100%;
	cursor: pointer;
	background: #fff;
	position:relative;
}

.acMenu dt:after {
	content:"\f078";
	font-family:FontAwesome;
	position:absolute;
	color: #fff;
    right: 10px;
    top: calc(50% - 10px);
    font-size: 20px;
    transition:0.2s;
}
.acMenu dt.active:after {
	transform: rotate(180deg);
}

.acMenu dd {
	background: #fff;
	width: 100%;
	display: none;
	border:1px solid #959595;
	border-top: none;
	padding:10px;
}

.acMenu dt.active {
	background: #fff;
}
.faqQ{
	width:32px;
	background: #222;
	font-size:24px;
	color:#fff;
	font-weight:bold;
	text-align:center;
	line-height:32px;
}
.faqTxt{
	width:calc(100% - 32px);
	background: #d5d5d5;
	display: flex;
	align-items: center;
	font-size:18px;
	color: #222;
	font-weight:bold;
	padding:0 10px;
}
.faqA{
	width:32px;
	background: #222;
	font-size:24px;
	color:#fff;
	font-weight:bold;
	text-align:center;
	line-height:32px;
}
.faqTxtA{
	font-size:16px;
	color:#171b17;
	line-height:1.8;
}
.faqCau{
	font-size: 18px;
	color:#171b17;
	font-weight:bold;
	margin-bottom:50px;
}
.faqCau i{
	color:#ff0808;
}
.faqCau span{
	display:block;
	padding-left:50px;
	font-size: 14px;
	color:#171b17;
}
.faqCau span a{
	font-size: 15px;
	color:#f39800;
	text-decoration:underline;
}
.faqBox{
	margin-bottom:50px;
	width: 100%;
    clear: both;
    overflow: hidden;
}
.acoBox{
	padding:20px;
}

/* ========== contact ========== */
.contactBox{
	padding:0 100px;

      margin-top: 50px;
}
.contactCau{
	font-weight:bold;
	margin-bottom:20px;
}
.contactRow{
	display:flex;
	align-items:center;
	border-bottom:1px solid #eeeeee;
	padding:10px;
	width:100%;
	flex-wrap: wrap;
}
.contactItem{
	font-size:18px;
	font-weight:bold;
	color: #222;
	display:flex;
	align-items:center;
	width:210px;
	padding-right:10px;
}
.hissu{
	font-size:12px;
	color:#fff;
	font-weight:bold;
	background:#ef0018;
	padding:0px 5px;
	border-radius:2px;
	margin-left:5px;
	display:inline-block;
	height:18px;
	line-height:18px;
}
.contactTxt{
	width:calc(100% - 210px);
	font-size:18px;
	color: #222;
	display:flex;
	align-items:center;
	flex-wrap: wrap;
}
.contactForm{
	width:100%;
	border:1px solid #ccc;
	padding: 5px 10px;
	border-radius: 5px;
}
.contactBtnBox{
	margin-top:50px;
	text-align:center;
}
.contactBtn1{
	background: #222;
	font-size: 18px;
	color: #fff;
	font-weight: bold;
	border: none;
	width: 240px;
	height: 44px;
	position: relative;
}
.contactTxtRow{
	width:100%;
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	margin-bottom:10px;
}
.contactTxt .contactTxtRow:last-of-type{
	margin-bottom:0;
}

.formW5{
	width:5%;
}
.formW10{
	width:10%;
}
.formW15{
	width:15%;
}
.formW20{
	width:20%;
}
.formW25{
	width:25%;
}
.formW50{
	width:50%;
}
.formW100{
	width:100%;
}
.contactTxtRow div:first-of-type{
	line-height:1;
}
.contactTxtRow div br{
	line-height: initial;
}
.contactPPTxtBox{
	border:1px solid #eee;
	padding:10px;
	height:300px;
	overflow-y:scroll;
}
.contactPPTit{
	font-size:16px;
	font-weight:bold;
	margin-bottom:10px;
}
.contactPPTxt{
	font-size:14px;
	line-height:1.4;
	margin-bottom:20px;
}
.contactPPCheckBox{
	text-align: center;
    width: 100%;
    margin: 30px 0;
}

.contactCompTit{
	font-size:30px;
	font-weight:bold;
	text-align:center;
	margin-bottom:50px;
}
.contactCompTxt{
	text-align:center;
}


@media screen and (max-width: 1199px) {
	.contactBox{
		padding:0;
	}
}
@media screen and (max-width: 991px) {

}
@media screen and (max-width: 767px) {
	.contactItem{
		width:100%;
		margin-bottom:5px;
	}
	.contactTxt{
		width:100%;
	}
	.formW50{
		width:100%;
	}
	.formW15{
		width:100%;
		margin-bottom:10px;
	}
	.contactBtn1{
		margin-bottom:20px;
	}

}

/* ========== チェックボタン・ラジオボタン ========== */


/* ラジオボタン */
.radio01-input{
  display: none;
}
.radio01-parts{
  padding-left: 24px;
  position:relative;
  margin-right: 30px;
  font-size: 16px;
}
.radio01-parts::before{
  content: "";
  display: block;
  position: absolute;
  top: 3px;
  left: 3px;
  width: 14px;
  height: 14px;
  border: 1px solid #9d9d9d;
  border-radius: 50%;
}
.radio01-input:checked + .radio01-parts{
  color: #009a9a;
}
.radio01-input:checked + .radio01-parts::after{
	content: "";
    display: block;
    position: absolute;
    top: 6px;
    left: 6px;
    width: 10px;
    height: 10px;
    background:#009a9a;
    border-radius:50%;
}
/* ラジオボタンend */

/* チェックボックス */
.checkbox01-input{
  display: none;
}
.checkbox01-parts{
  padding-left: 38px;
  position:relative;
  margin-right: 20px;
  font-size:16px;
  font-weight:bold;
  color:#171717;
  padding-top: 8px;
}
.checkbox01-parts::before{
  content: "";
  display: block;
  position: absolute;
  top: 4px;
  left: 3px;
  width: 24px;
  height: 24px;
  border: 1px solid #9d9d9d;
  border-radius: 50%;
}
.checkbox01-input:checked + .checkbox01-parts{
  color: #009a9a;
}
.checkbox01-input:checked + .checkbox01-parts::after{
	content: "";
    display: block;
    position: absolute;
    top: 8px;
    left: 7px;
    width: 18px;
    height: 18px;
    background: #000;
    border-radius: 50%;
}
/* チェックボックスend */


/* ========== linkBtn line ========== */
.linkBtnLineBox{
	width:100%;
	overflow:hidden;
	position: relative;
}
.linkBtnLineBox:before {
    content: "";
    display: block;
    padding-top: 58.45%;
}
.linkBtnLineBox a{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}
.linkBtnLineBox:hover img  {
	zoom: 1;
	filter: alpha(opacity = 50);
	-webkit-opacity: 0.5;
	opacity: 0.5;
}
.linkBtnLineInner{
	width:100%;
	height: 100%;
	overflow:hidden;
	position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}
.linkBtnLineInner img{
	backface-visibility: hidden;
    vertical-align: top;
    width: 100%;
}
.linkBtnLineInner *, .linkBtnLineInner *:before, .linkBtnLineInner *:after{
	box-sizing: border-box;
	transition: all 0.55s ease;
}
.linkBtnLine{
	position: absolute;
    width: 96%;
    height: calc(96% - 63px);
    left: 2%;
    top: 2%;
    overflow: hidden;
}
.linkBtnLine:before{
	transform: translateX(100%);
	top:0;
	left:0;
}
.linkBtnLine:after{
	transform: translateX(-100%);
	bottom:0;
	right:0;
}
.linkBtnLine:before, .linkBtnLine:after{
	height: 3px;
    width: 600px;
    position: absolute;
    content: '';
}
.linkBtnLine div:before{
	transform: translateY(100%);
	top:0;
	left:0;
}
.linkBtnLine div:after{
	transform: translateY(-100%);
	bottom:0;
	right:0;
}
.linkBtnLine div:before, .linkBtnLine div:after{
	width: 3px;
    height: 300px;
    position: absolute;
    content: '';
}
.linkBtnLineBox:hover .linkBtnLine:before,
.linkBtnLineBox:hover .linkBtnLine:after,
.linkBtnLineBox:hover .linkBtnLine div:before,
.linkBtnLineBox:hover .linkBtnLine div:after
	{
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0);
}

.linkBtnLineBox:hover .linkBtnLine:before,
.linkBtnLineBox .linkBtnLine:after {
	-webkit-transition-delay: 0.15s;
	transition-delay: 0.15s;
}
.color1 .linkBtnLine:before,.color1 .linkBtnLine:after{
	background:#009942;
}
.color1 .linkBtnLine div:before,.color1 .linkBtnLine div:after{
	background:#009942;
}
.color1 .linkBtnLineInner img{
	border-bottom:3px solid #009942;
}
.color1 .linkBtnLineTxt i{
	color:#009942;
}
.color2 .linkBtnLine:before,.color2 .linkBtnLine:after{
	background:#8fc21b;
}
.color2 .linkBtnLine div:before,.color2 .linkBtnLine div:after{
	background:#8fc21b;
}
.color2 .linkBtnLineInner img{
	border-bottom:3px solid #8fc21b;
}
.color2 .linkBtnLineTxt i{
	color:#8fc21b;
}
.color3 .linkBtnLine:before,.color3 .linkBtnLine:after{
	background:#603813;
}
.color3 .linkBtnLine div:before,.color3 .linkBtnLine div:after{
	background:#603813;
}
.color3 .linkBtnLineInner img{
	border-bottom:3px solid #603813;
}
.color3 .linkBtnLineTxt i{
	color:#603813;
}
.linkBtnLineTxt{
	font-size:18px;
	color:#434343;
	font-weight:bold;
	text-align:center;
	padding:8px 0;
	margin-top:18px;
	border-right:1px dashed #b8b8b8;
}
.linkBtnLineTxt i{
	font-size:18px;
}
.col4 .linkBtnLineBox:first-of-type .linkBtnLineTxt{
	border-left:1px dashed #b8b8b8;
}


/* ========== company ========== */
.companyBox{
	padding: 0 100px;
    margin-top: 50px;
}
.companyRow{
	display:flex;
	flex-wrap:wrap;
	border-bottom: 1px solid #c9c9c9;
}
.companyItem{
	font-size:18px;
	color:#222;
	font-weight:bold;
	width:210px;
	background:#f9f9f9;
	padding:10px;
	border-right: 1px dotted #c9c9c9;
}
.companyTxt{
	font-size:18px;
	color:#222;
	padding:10px;
	width:calc(100% - 210px);
}

@media screen and (max-width: 1199px) {
	.companyBox{
		padding:0;
	}
}
@media screen and (max-width: 991px) {

}
@media screen and (max-width: 767px) {
	.companyItem{
		width:100%;
		border-right:none;
	}
	.companyTxt{
		width:100%;
	}
}























/* ========== i-sumu ========== */


.pickupBox{
	padding:0 10px 50px;
	position: relative;
    overflow: hidden;
}
.pickupImg{
	margin-bottom:5px;
}
.pickupImg img{
	width:100%;
}
.pickupTit{
	font-size:16px;
	color:#2a2a2a;
	margin-bottom:5px;
}
.pickupTxt{
	font-size:12px;
	color:#5c5c5c;
	line-height: 1.6;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    width: 100%;
}
.pickupBtnBox{
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
}
.pickupBtn{
	border:solid 1px #bbbbbb;
	width:110px;
	height:28px;
	text-align:center;

}
.pickupBtn a{
	font-size:14px;
	color:#2a2a2a;
	display: flex;
    height: 26px;
    align-items: center;
    justify-content: center;
    background:#fff;
    transition:0.25s;
}
.pickupBtn a:hover{
	background:#bbbbbb;
	color:#fff;
}
.blogLink a{
	font-size:16px;
	color:#2a2a2a;
	font-weight:normal;
	text-shadow: none;
}

.catchBox{
	background:#514b67;
	text-align:center;
	padding:80px 0;
}
.catchTxt{
	font-size:36px;
	color:#fff;
	line-height:1.6;
	margin-bottom:40px;
}
.catchImg{
	text-align:center;
	margin-bottom:40px;
}
.catchImg img{
	display:inline-block;
}
.catchBtnBox{
	text-align:center;
}
.catchBtn{
	display:inline-block;
	width:175px;
	height:44px;
	text-align:center;
	border:1px solid #fff;
}
.catchBtn a{
	font-size:16px;
	color:#fff;
	display:block;
	height:100%;
	line-height:41px;
	background:#514b67;
	transition:0.25s;
}
.catchBtn a:hover{
	color:#514b67;
	background:#fff;
}
.pankuzu01{
	display: flex;
}

.pankuzuList01{
	font-size:12px;
	color:#222222;
	margin-right:20px;
	letter-spacing: -0.05em;
}
.pankuzuList01 a{
	font-size:12px;
	color:#222222;
	position: relative;
	background:#fff;
	border:1px solid #b3b3b3;
	letter-spacing: -0.05em;
}
.pankuzuList01 a::before{
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  right: -10px;
  top: 0px;
  border-left: 9px solid #b3b3b3;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
}
.pankuzuList01 a::after{
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  right: -8px;
  top: 0px;
  border-left: 8px solid #fff;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
}
.i-sumuServiceImg{
	text-align:center;
	position:relative;
	margin-bottom:100px;
}
.i-sumuServiceImg img{
	display:inline-block;
}
.i-sumuServiceImgTxt{
	position:absolute;
	font-size:28px;
	color:#222222;
	text-align: left;
	top: 0;
    left: 0;
}
.i-sumuServiceLinkBtn{
	text-align:center;
	padding:10px 0 5px;
	margin:0 10px;

}
.i-sumuServiceLinkBtn a{
	font-size:18px;
	color:#fff;
	display:block;
	height:100%;
}
.i-sumuServiceLinkBtn a i{
	font-size:28px;
}
.btnClr1{
	background:#b4b536;
}
.btnClr2{
	background:#4f4a65;
}
.btnClr3{
	background:#bbaa54;
}
.btnClr4{
	background:#a35a4d;
}
.btnClr5{
	background:#5b3534;
}
.i-sumuServiceStageBox01{
	height:362px;
	background-image:url(../img/i_sumu_service_1.png);
	background-position:center center;
	margin-bottom: 10px;
}
.i-sumuServiceStageBox02{
	height:362px;
	background-image:url(../img/i_sumu_service_2.png);
	background-position:left 65% center;
	margin-bottom: 10px;
}
.i-sumuServiceStageBox03{
	height:362px;
	background-image:url(../img/i_sumu_service_3.png);
	background-position:center center;
	margin-bottom: 10px;
}
.i-sumuServiceStageBox04{
	height:362px;
	background-image:url(../img/i_sumu_service_4.png);
	background-position:left 65% center;
	margin-bottom: 10px;
}
.i-sumuServiceStageBox05{
	height:362px;
	background-image:url(../img/i_sumu_service_5.png);
	background-position:center center;
	margin-bottom: 10px;
}
.i-sumuServiceTxtBox{
	width:515px;
	padding: 65px 30px 0;
	position:relative;
}
.i-sumuServiceTxtBox2{
	width:515px;
	padding: 65px 30px 0;
	position:relative;
	margin-left:auto;
}
.i-sumuServiceTxtBox3{
	width:515px;
	padding: 65px 30px 0;
	position:relative;
}
.i-sumuServiceTxtBox4{
	width:515px;
	padding: 65px 30px 0;
	position:relative;
	margin-left:auto;
}
.i-sumuServiceTxtBox5{
	width:515px;
	padding: 65px 30px 0;
	position:relative;
}
.i-sumuServiceStageTit{
	font-size:32px;
	color:#fff;
	font-weight:bold;
	text-align:center;
}
.i-sumuServiceStageCatch{
	font-size:20px;
	color:#fff;
	text-align:center;
	margin-bottom: 20px;
}
.i-sumuServiceStageCatch2{
	font-size:16px;
	color:#fff;
	border-top:1px solid #fff;
	border-bottom:1px solid #fff;
	text-align:center;
	padding: 5px 0;
	margin-bottom: 20px;
}
.i-sumuServiceStageTxt{
	font-size:14px;
	color:#fff;
	margin-bottom: 10px;
}
.i-sumuServiceStageBtnBox{
	text-align:right;
}
.i-sumuServiceStageNum{
	position:absolute;
	top: -38px;
    left: 0;
}
.i-sumuServiceStageNum2{
	position:absolute;
	top: -32px;
    right: 0;
}
.i-sumuServiceStageNum3{
	position:absolute;
	top: -32px;
    left: 0;
}
.i-sumuServiceStageNum4{
	position:absolute;
	top: -33px;
    right: 0;
}
.i-sumuServiceStageNum5{
	position:absolute;
	top: -38px;
    left: 0;
}
.i-sumuServiceStageBtn{
	background:#fff;
	width:170px;
	text-align:center;
	height:42px;
	display: inline-block;
}
.i-sumuServiceStageBtn a{
	font-size:14px;
	line-height:42px;
	display:block;
	height:100%;
	letter-spacing: -0.1em;
	font-weight: bold;
}
.i-sumuServiceStageBtn a.stageBtnClor1{
	color:#b4b536;
}
.i-sumuServiceStageBtn a.stageBtnClor2{
	color:#4f4a65;
}
.i-sumuServiceStageBtn a.stageBtnClor3{
	color:#bbaa54;
}
.i-sumuServiceStageBtn a.stageBtnClor4{
	color:#a35a4d;
}
.i-sumuServiceStageBtn a.stageBtnClor5{
	color:#5b3534;
}
.i-sumuServiceStageBtmImg{
	margin:0 5px;
}
.i-sumuServiceStageBtmImg img{
	width:100%;
}

.lowBox01{
	padding:30px 0;
}



@media screen and (max-width: 1199px) {
	.i-sumuServiceStageBox01{
		background-position: left 32% center;
	}
	.i-sumuServiceStageBox02{
		background-position: left 77% center;
	}
	.i-sumuServiceStageBox03{
		background-position: left 32% center;
	}
	.i-sumuServiceStageBox04{
		background-position: left 77% center;
	}
	.i-sumuServiceStageBox05{
		background-position: left 32% center;
	}
}
@media screen and (max-width: 991px) {
	.i-sumuServiceStageBox01{
		background-position: left 23% center;
	}
	.i-sumuServiceStageBox02{
		background-position: left 84% center;
	}
	.i-sumuServiceStageBox03{
		background-position: left 23% center;
	}
	.i-sumuServiceStageBox04{
		background-position: left 84% center;
	}
	.i-sumuServiceStageBox05{
		background-position: left 23% center;
	}
}
@media screen and (max-width: 767px) {
	.col1-5{
		width:50%;
	}
	.pickupBox{
		margin-bottom: 20px;
	}
	.catchImg{
		width:50%;
		margin:0 auto 20px;
	}
	.catchBox{
		padding:40px 0;
	}
	.catchTxt{
		font-size:30px;
	}
	.i-sumuServiceTxtBox{
		width:100%;
		background:#b4b536;
	}
	.i-sumuServiceTxtBox2{
		width:100%;
		background:#4f4a65;
	}
	.i-sumuServiceTxtBox3{
		width:100%;
		background:#bbaa54;
	}
	.i-sumuServiceTxtBox4{
		width:100%;
		background:#a35a4d;
	}
	.i-sumuServiceTxtBox5{
		width:100%;
		background:#5b3534;
	}
	.i-sumuServiceStageBox01{
		background:#b4b536;
		height: auto;
		padding-bottom: 20px;
	}
	.i-sumuServiceStageBox02{
		background:#4f4a65;
		height: auto;
		padding-bottom: 20px;
	}
	.i-sumuServiceStageBox03{
		background:#bbaa54;
		height: auto;
		padding-bottom: 20px;
	}
	.i-sumuServiceStageBox04{
		background:#a35a4d;
		height: auto;
		padding-bottom: 20px;
	}
	.i-sumuServiceStageBox05{
		background:#5b3534;
		height: auto;
		padding-bottom: 20px;
	}
}
@media screen and (max-width: 480px) {
	.col1-5{
		width:100%;
	}
	.catchTxt{
		font-size:24px;
	}
}


/* ========== seizan ========== */


.messageTxt{
	font-size:16px;
	color:#434343;
	line-height:1.6;
	padding-right:50px;
	margin-bottom:20px;
}
.messageBtn{
	position:relative;
	background:#009942;
	width:160px;
	height:40px;
}
.messageBtn:after{
	position:absolute;
	content:"";
	border:1px solid #fff;
	width: calc(100% - 4px);
    top: 1px;
    left: 1px;
    height: calc(100% - 4px);
}
.messageBtn a{
	font-size:14px;
	color:#fff;
	display:block;
	height:100%;
	text-align:center;
	line-height:40px;
}
.pickupTxt02{
	font-size:16px;
	color:#434343;
	line-height:1.6;
	padding:10px 10px 0;
	text-align:left;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-height:24px;
	width:100%;
}





/* ========== duck ========== */
.topImageBtm{
	background:#31328c;
	text-align:center;
	color:#fff;
	font-weight:bold;
	padding:10px;
	text-shadow: 0.1px 0.5px 0 #fff;
}
.sp-horizontal .sp-previous-arrow{
	background:url(../img/arw_prev.png);
}
.sp-horizontal .sp-next-arrow{
	background:url(../img/arw_prev.png);
}
.sp-arrow{
	width:36px;
	height:36px;
}
.sp-previous-arrow:before, .sp-previous-arrow:after, .sp-next-arrow:before, .sp-next-arrow:after{
	content:none;
}
.movieCatch{
	font-size:34px;
	color:#31328c;
	font-weight:bold;
	line-height: 1.2;
	text-shadow: 0.1px 0.5px 0 #31328c;
	margin-bottom: 20px;
	padding-left:20px;
}
.movieTxt{
	font-size:18px;
	color:#222222;
	line-height:1.5;
	padding-left:20px;
}
.schoolBoxLeft{
	background:#fff;
	border:2px solid #e8314a;
	padding:10px 20px;
	margin-right:15px;
}
.schoolBoxRight{
	background:#fff;
	border:2px solid #9ac615;
	padding:10px 20px;
	margin-left:15px;
}
.schoolImg{
	margin-bottom:20px;
}
.schoolImg img{
	width:100%;
}
.schoolBoxLeft .schoolName{
	font-size:36px;
	color:#e8314a;
	font-weight:bold;
	text-align:center;
	text-shadow: 0.1px 0.5px 0 #e8314a;
	line-height: 1.2;
}
.schoolBoxRight .schoolName{
	font-size:36px;
	color:#9ac615;
	font-weight:bold;
	text-align:center;
	text-shadow: 0.1px 0.5px 0 #9ac615;
	line-height: 1.2;
}
.schoolName{
	margin-bottom:10px;
}
.schoolName span{
	font-size:16px;
	font-weight:bold;
	text-align:center;
	display:block;
}
.schoolTxt{
	font-size:16px;
	color:#222222;
	font-weight:bold;
	line-height:1.6;
}
.serviceCatch{
	font-size:14px;
	color:#222222;
}



.topNewsBnr{
	margin-bottom:25px;
}
.topNewsBnr img{
	width:100%;
}
.topContactBox1{
	display:flex;
	align-items:center;
	padding-right: 50px;
}
.topContactTit{
	font-size:30px;
	color:#31328c;
	font-weight:bold;
	background:#fff799;
	padding:0 10px;
	display: inline-block;
	margin-bottom: 10px;
}
.topContactImg{
	padding-right:30px;
	width:190px;
}
.topContactTxtBox{
	width: calc(100% - 190px);
}
.topContactTxt{
	font-size:16px;
	color:#222222;
	line-height:1.1;
	letter-spacing: -0.1em;
}
.topContactBtn{
	background:#ff2b7f;
	widdth:100%;
	height:100px;
}
.topContactBtn a{
	display:block;
	height:100%;
	font-size:20px;
	color:#fff;
	font-weight:bold;
	text-align: center;
	line-height:100px;
	letter-spacing: -0.05em;
}
.topContactBtn a:after{
	content:"\f04b";
	font-family: FontAwesome;
	padding-left: 10px;
}


@media screen and (max-width: 1199px) {
	.movieCatch{
		font-size:32px;
	}
}
@media screen and (max-width: 991px) {

}
@media screen and (max-width: 767px) {
	.schoolBoxLeft{
		margin-right:0;
	}
	.schoolBoxRight{
		margin-left:0;
	}
	.col9.padR50{
		padding-right:0;
	}
	.col3.bnrBox{
		width:100%;
	}
	.topNewsBnr{
		text-align:center;
	}
	.topNewsBnr img{
		width:auto;
		display:inline-block;
	}
}


/* ========== ai ========== */
.topImageAi img{
	width:100%;
}
.topLink .col6:nth-of-type(1) .topLinkBox{
	padding-right:7px;
}
.topLink .col6:nth-of-type(2) .topLinkBox{
	padding-left:7px;
}
.topLinkBox img{
	width:100%;
}





@media screen and (max-width: 1199px) {

}
@media screen and (max-width: 991px) {

}
@media screen and (max-width: 767px) {

}

























