

.font_mincho {
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "Sawarabi Mincho", "HG明朝E",  "ＭＳ Ｐ明朝", "MS PMincho", serif;
}
.font_garamond {
	font-family: 'Cormorant Garamond', serif;
}
.font_raleway {
	font-family: 'Raleway', sans-serif;
}

.row {
justify-content: center
}

section,
article {
	display: block;
}

img {
	vertical-align: top;
}

a img {
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}

a:hover img {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}

li {
	list-style-type: none;
}

a {
	color: #0066CC;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}
a:hover {
	color: #0099CC;
	text-decoration: none;
}

table {
	border-collapse: collapse;
}
table td {
	border-collapse: collapse;
}

.clfix:after{
  content: "."; 
  display: block; 
  height: 0; 
  font-size:0;	
  clear: both; 
  visibility:hidden;
}


/*
ローダー------------------*/
.loader-wrap {
	position: fixed;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	z-index: 10000;
	background-color: #000;
}


.loader {
	color: #888;
	font-size: 40px;
	text-indent: -9999em;
	overflow: hidden;
	width: 1em;
	height: 1em;
	border-radius: 50%;
	margin: 72px auto;
	position: relative;
	-webkit-transform: translateZ(0);
	-ms-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-animation: load6 1.7s infinite ease, round 1.7s infinite ease;
	animation: load6 1.7s infinite ease, round 1.7s infinite ease;
}

@-webkit-keyframes load6 {
  0% {
    box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
  }
  5%,
  95% {
    box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
  }
  10%,
  59% {
    box-shadow: 0 -0.83em 0 -0.4em, -0.087em -0.825em 0 -0.42em, -0.173em -0.812em 0 -0.44em, -0.256em -0.789em 0 -0.46em, -0.297em -0.775em 0 -0.477em;
  }
  20% {
    box-shadow: 0 -0.83em 0 -0.4em, -0.338em -0.758em 0 -0.42em, -0.555em -0.617em 0 -0.44em, -0.671em -0.488em 0 -0.46em, -0.749em -0.34em 0 -0.477em;
  }
  38% {
    box-shadow: 0 -0.83em 0 -0.4em, -0.377em -0.74em 0 -0.42em, -0.645em -0.522em 0 -0.44em, -0.775em -0.297em 0 -0.46em, -0.82em -0.09em 0 -0.477em;
  }
  100% {
    box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
  }
}
@keyframes load6 {
  0% {
    box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
  }
  5%,
  95% {
    box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
  }
  10%,
  59% {
    box-shadow: 0 -0.83em 0 -0.4em, -0.087em -0.825em 0 -0.42em, -0.173em -0.812em 0 -0.44em, -0.256em -0.789em 0 -0.46em, -0.297em -0.775em 0 -0.477em;
  }
  20% {
    box-shadow: 0 -0.83em 0 -0.4em, -0.338em -0.758em 0 -0.42em, -0.555em -0.617em 0 -0.44em, -0.671em -0.488em 0 -0.46em, -0.749em -0.34em 0 -0.477em;
  }
  38% {
    box-shadow: 0 -0.83em 0 -0.4em, -0.377em -0.74em 0 -0.42em, -0.645em -0.522em 0 -0.44em, -0.775em -0.297em 0 -0.46em, -0.82em -0.09em 0 -0.477em;
  }
  100% {
    box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
  }
}
@-webkit-keyframes round {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes round {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}


/*------------------*/


/*
ヘッダー
-------------------------------------------*/

h1 a img {
	display: block;
	position: absolute;
}

.h_btn a {
	display: block;
	text-align: center;
	position: absolute;
	text-decoration: none;
	color: #FFF;
	letter-spacing: 1px;
        border: 2px solid #ffffff;
	background-color: #f39800;
}
.h_btn a:hover {
	color: #FFF;
	background-color: #858585;
	border: 5px solid #fff
}
.h_tel a {
	display: block;
	text-align: center;
	position: absolute;
	text-decoration: none;
	color: rgb(34, 136, 119);;
	font-size: 20px;
	width: auto;
	font-weight: bold;
	letter-spacing: 1px;
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "Sawarabi Mincho", "HG明朝E",  "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

header .h_tel a strong {
	font-size: 130%;
}

header .h_btn a i,
header .h_tel a i {
	padding-left: 5px;
	padding-right: 5px;
}


.b_white{
    background: #fff
}



.site-title {
	margin-bottom: 0;
}
.site-title img {
	height: 85px;
}
.navbar-toggler {
    border: none;
    color: #fff;
}
.navbar-dark .navbar-toggler-icon {
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}
.navbar {
    padding: 0.7rem 0.5rem;
    background-color: #228877;
}
.navbar-brand {
    margin-right: 0.2rem;
}
#bs-navi {
    justify-content: center;
    align-items: center;
}
#primary-menu {
    margin-left: 0;
}
.nav-item {
	padding: 0.5rem 0 0.5rem 0.5rem;
    border-bottom: 1px dotted #ddd;
}
#primary-menu li a, #primary-menu li a:visited {
	color: #fff;
}
#primary-menu li a:hover {
	color: #f25425;
}
#menu-item-119 a {
	font-size: 0.00000000001rem;
}
#menu-item-119 a::before {
	content: '';
	background: url('../img/cs.png') no-repeat center center/contain;
	width: 100px;
	height: 40px;
	display: inline-block;
	margin-top: 5px;
}

.boshu{
        height: 80px !important;
    margin-top: 13px;
}

.tel_box {
display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
margin-left: auto;
}
   

.tel_box2 {
    color: #228877;
    padding: 0 40px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 86px;
    font-size: 2rem;
    font-weight: 500;
}

.contact_box {
    background: #f39800;
    color: #fff;
    padding: 0 40px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 86px
}

.contact_text_box {
    padding: 1rem;
    color: #fff;
    font-weight: 700
}

@media  all and (min-width: 992px) { 
   /* col-lg- */
    /* header */
    .menu-item {
padding: 0.5rem 2rem 0.5rem 2rem;
    font-size: 18px;
    }
    /* main */
    .strength_inner {
        height: 100%;
    }
}

/* move */
.move {
    transition: all 1s;
    transform: scale(0.2);
    opacity: 0;
}
.move.motion {
    transition: all 1s;
    transform: scale(1);
    opacity: 1;
}

.sp_block{
    display: none
}

@media  all and (max-width: 768px) { 
.tel_box {
   display: none
}

.sp_block{
    display: block
}

.pc_block{
    display: none
}
}




/*
メインコンテンツ
-------------------------------------------*/
.content {
	width: 100%;
	padding-top: 50px;
	padding-bottom: 50px;
}
.cont_wrap {
	max-width: 1200px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}

#top_slide {
	padding-top: 100px;
	background-color: #14749C;
	padding-bottom: 10px;
	background-image: url(../img/bg_03.png);
}

#sub_top {
	background-color: #EEE;
	background-repeat: no-repeat;
	background-position: center center;
	height: 110px;
	line-height: 30px;
	padding-top: 230px;
	width: 100%;
	background-size: cover;
	text-align: center;
	font-family: 'Raleway', sans-serif;
	color: #FFF;
	font-size: 20px;
	letter-spacing: 1em;
	-moz-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
	-webkit-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
	-ms-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
	text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
	position: relative;
	overflow: hidden;
}

#sub_top span {
	position: relative;
	z-index: 150;
}

.content h2 {
	font-size: 36px;
	line-height: 1.2;
	margin-bottom: 30px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CBC8BE;
	letter-spacing: 2px;
	color: #1D1B2C;
	text-align: center;
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "Sawarabi Mincho", "HG明朝E",  "ＭＳ Ｐ明朝", "MS PMincho", serif;
	padding-top: 15px;
	padding-right: 10px;
	padding-bottom: 15px;
	padding-left: 10px;
	clear: both;
}

.content h2 span {
	font-family: "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ ゴシック", "MS Gothic", sans-serif;
	font-size: 40%;
	font-weight: normal;
}

.content h3 {
	font-size: 22px;
	line-height: 30px;
	margin-bottom: 30px;
	background-color: #166887;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	position: relative;
	margin-top: 30px;
	padding-top: 15px;
	padding-right: 10px;
	padding-bottom: 15px;
	padding-left: 44px;
	color: #FFF;
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "Sawarabi Mincho", "HG明朝E",  "ＭＳ Ｐ明朝", "MS PMincho", serif;
	clear: both;
	background-image: url(../img/bg_03.png);
}

.content h3::after {
	display: block;
	width: 3px;
	height: 20px;
	position: absolute;
	top: 20px;
	left: 20px;
	background-color: #169CC9;
	content: '';
}

.content h3 span {
	font-size: 16px;
	color: #888;
	font-family: "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ ゴシック", "MS Gothic", sans-serif;
	padding-left: 15px;
}
.content h4 {
	font-size: 20px;
	color: #0085B2;
	letter-spacing: 0.1em;
	padding: 10px;
	font-weight: bold;
	clear: both;
	margin-top: 20px;
	margin-right: 30px;
	margin-bottom: 20px;
	margin-left: 30px;
}

.content p {
	font-size: 16px;
	line-height: 1.8;
	padding: 10px;
	margin-bottom: 30px;
	margin-top: 20px;
	margin-right: 30px;
	margin-left: 30px;
}

.content .ul_news li {
	line-height: 30px;
	padding-top: 20px;
	padding-bottom: 20px;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #CCC;
	font-size: 16px;
	padding-right: 10px;
	padding-left: 10px;
}
.content .ul_news li span.news_date {
	color: #999;
	padding-right: 20px;
}

.content .ul_news li span.news_icon {
	color: #FFF;
	padding-left: 10px;
	display: inline-block;
	padding-right: 10px;
	background-color: #D11444;
	margin-right: 10px;
	font-weight: bold;
	font-size: 14px;
}

.content .ul_news li span.news_icon.cl_02 {
	background-color: #009999;
}

.img_center {
	display: block;
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 20px;
}

.img_left {
	float: left;
	padding-right: 30px;
	padding-left: 30px;
	padding-bottom: 20px;
}
.img_right {
	float: right;
	padding-right: 30px;
	padding-left: 30px;
	padding-bottom: 20px;
}

.content .img_left p {
	font-size: 12px;
	margin: 0px;
}



/*
お問い合わせ部分
-------------------------------------------*/

.box_contact {
	background-color: #CCDBDD;
	padding-bottom: 50px;
	text-align: center;
	padding-right: 10px;
	padding-left: 10px;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #B4CACD;
}

.box_contact.only_tel {
	background-image: none;
}

.box_contact h3 {
	color: #006384;
}

.box_contact p {
	margin-top: 10px;
	margin-bottom: 20px;
}

.box_contact .btn a {
	font-size: 20px;
	font-weight: bold;
	color: #FFF;
	text-align: center;
	border: 5px solid #0085B2;
	text-decoration: none;
	display: block;
	width: 90%;
	background-color: #0085B2;
	margin-right: auto;
	margin-left: auto;
	line-height: 30px;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	padding-top: 15px;
	padding-bottom: 15px;
	position: relative;
	max-width: 500px;
}
.box_contact .btn a i {
	padding-right: 10px;
	font-size: 120%;
}
.box_contact .btn a:hover {
	color: #0085B2;
	background-color: #FFF;
	border-top-color: #0085B2;
	border-right-color: #0085B2;
	border-bottom-color: #0085B2;
	border-left-color: #0085B2;
}

.box_contact .tel a {
	font-size: 30px;
	font-weight: bold;
	color: #0085B2;
	text-decoration: none;
}
.box_contact .tel a strong {
	font-size: 150%;
}
.box_contact .tel a i {
	padding-right: 10px;
	font-size: 120%;
}

@media screen and (min-width:960px){
	
.box_contact .box_in {
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
	padding-top: 20px;
	padding-bottom: 20px;
}
.box_contact .btn {
	float: left;
	width: 50%;
}

.box_contact .tel {
	float: right;
	width: 50%;
}

.box_contact.only_tel .tel {
	float: none;
	width: 100%;
}

}

@media screen and (max-width:480px){
.box_contact .btn a {
	font-size: 18px;
}
.box_contact .tel a {
	font-size: 24px;
}

}

/*-----トップへ戻るボタン------*/

.to_top {
	position: fixed;
	right: 0px;
	bottom: 0px;
	z-index: 200;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}
.to_top a {
	text-decoration: none;
	color: #FFF;
	text-align: center;
	display: block;
	font-size: 10px;
	background-color: #0F6689;
	padding: 15px;
	width: 26px;
	font-size: 26px;
	line-height: 30px;
}
.to_top a:hover {
	background-color: #0085B2;
}

/*
フッター
-------------------------------------------*/

footer {
	background-color: #007095;
	color: #FFF;
	clear: both;
	width: 100%;
	display: block;
	background-image: url(../img/bg_02.png);
}

footer ul.f_bn {
	text-align: center;
	display: block;
	padding-top: 20px;
	padding-bottom: 20px;
	background-color: #006384;
	background-color: rgba(0,69,91,0.2);
}
footer .f_bn li {
	display: inline;
}
footer .f_bn li a {
	display: inline-block;
	font-size: 14px;
	letter-spacing: 1px;
	padding: 10px;
	text-decoration: none;
	color: #FFF;
	margin-left: 10px;
	font-weight: bold;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	margin-right: 10px;
}

footer .f_bn li a:hover {
	background-color: #0085B2;
}

footer .f_bn li a i {
	padding-right: 5px;
	font-size: 200%;
}


footer ul.f_list {
	display: block;
	width: 33.3%;
	float: left;
	padding-bottom: 20px;
	padding-top: 20px;
}

footer ul.f_list li a {
	text-decoration: none;
	color: #FFF;
	display: block;
	padding-top: 2px;
	padding-right: 2px;
	padding-bottom: 2px;
	padding-left: 10px;
}

footer ul.f_list li li a {
	padding-left: 27px;
	position: relative;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	font-size: 14px;
}

footer ul.f_list li a:hover {
	background-color: #0085B2;
}

footer ul.f_list li li a::before {
	content:"・";
	position: absolute;
	top: 2px;
	left: 9px;
}


address {
	font-size: 10px;
	font-style: normal;
	padding-top: 20px;
	padding-bottom: 20px;
	letter-spacing: 1px;
	text-align: center;
	display: block;
	clear: both;
	background-color: #006384;
	background-color: rgba(0,69,91,0.2);
}

footer .box_pr {
	clear: both;
	width: 100%;
	display: block;
	padding-top: 20px;
	padding-bottom: 20px;
	text-align: center;
	font-size: 10px;
	color: #C0D2D8;
	background-color: #006384;
	background-color: rgba(0,69,91,0.2);
	border-top-width: 1px;
	border-top-style: dotted;
	border-top-color: #00455B;
	letter-spacing: 1px;
}

.box_pr ul li {
	display: inline;
	padding: 5px;
}

.box_pr ul li a {
	color: #C0D2D8;
}

/*
各種テーブル
-------------------------------------------*/
.content table.table_01 {
	width: 96%;
	margin-top: 20px;
	margin-right: auto;
	margin-bottom: 30px;
	margin-left: auto;
}
.content table.table_01 th,
.content table.table_01 td {
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #987;
	padding: 20px;
}
.content table.table_01 th {
	font-size: 16px;
	white-space: nowrap;
	letter-spacing: 1px;
	width: 33%;
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "Sawarabi Mincho", "HG明朝E",  "ＭＳ Ｐ明朝", "MS PMincho", serif;
}
.content table.table_01 td {
	font-size: 14px;
	line-height: 30px;
	background-color: #F3F2F1;
}

.content table.table_02 {
	width: 96%;
	margin-top: 20px;
	margin-right: auto;
	margin-bottom: 30px;
	margin-left: auto;
	max-width: 820px;
}
.content table.table_02 th,
.content table.table_02 td {
	padding: 20px;
	border: 1px dotted #BAB4A9;
}
.content table.table_02 th {
	font-size: 18px;
	white-space: nowrap;
	letter-spacing: 1px;
	color: #222;
}
.content table.table_02 td {
	font-size: 16px;
	line-height: 30px;
	background-color: #F4F3F2;
}


.content table.table_02 .tr_gr th {
	background-color: #E0DDD8;
}
.content table.table_02 .tr_gr td {
	background-color: #EBE9E6;
}

.content table.table_02 td .price {
	font-size: 150%;
	white-space: nowrap;
	color: #006384;
	font-weight: bold;
	padding-right: 5px;
	padding-left: 5px;
}


.small {
	font-size: 80%;
	color: #666;
}
.chui {
	color: #F00036;
}


.table_01 th span {
	font-size: 12px;
	color: #CCC;
}


/*
FAQ
-------------------------------------------*/

.content dl.faq {
	margin-bottom: 30px;
	padding-top: 10px;
	padding-right: 10px;
	padding-bottom: 20px;
	padding-left: 10px;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #CCC;
}
.content dl.faq dt {
	font-size: 22px;
	line-height: 30px;
	position: relative;
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "Sawarabi Mincho", "HG明朝E",  "ＭＳ Ｐ明朝", "MS PMincho", serif;
	padding-top: 10px;
	padding-right: 20px;
	padding-bottom: 10px;
	padding-left: 50px;
	background-color: #1E4262;
	color: #FFF;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	background-image: url(../img/bg_03.png);
}
.content dl.faq dt span {
	font-size: 20px;
	font-weight: bold;
	color: #FFF;
	background-color: #169CC9;
	text-align: center;
	display: block;
	width: 50px;
	padding-top: 10px;
	height: 40px;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	position: absolute;
	top: -20px;
	left: -10px;
	z-index: 10;
}
.content dl.faq dt span::before{
	content: "";
	position: absolute;
	bottom: -5px;
	right: -3px;
 	margin-left: -12px;
  border-right: 12px solid transparent;
  border-top: 20px solid #169CC9;
  border-left: 12px solid transparent;
 	z-index: 0;
	transform: rotate(-40deg);
}
.content dl.faq dd {
	padding-top: 10px;
	padding-right: 20px;
	padding-bottom: 10px;
	padding-left: 20px;
	line-height: 1.6;
}

/*
グーグルマップ
-------------------------------------------*/

.g_map_base {
	background-color: #E2E0DC;
	padding: 20px;
}

.g_map {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}
 
.g_map iframe,
.g_map object,
.g_map embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

/*
実績一覧
-------------------------------------------*/
ul.works_list {
	display: block;
	margin-left: auto;
	margin-right: auto;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	max-width: 1400px;
	padding: 30px;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-moz-box-lines: multiple;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

ul.works_list li {
	width: 23%;
	position: relative;
	text-align: center;
	margin-bottom: 30px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

ul.works_list li .works_icon {
	position: absolute;
	top: 5px;
	left: 5px;
	font-weight: bold;
	padding-left: 10px;
	padding-right: 10px;
	color: #FFF;
	background-color: #D11444;
	z-index: 50;
}

ul.works_list li a {
	display: block;
	padding: 20px;
	background-color: #F4F3F0;
	text-decoration: none;
	color: #333;
	border: 1px solid #DDDAD5;
}
ul.works_list li a img {
	width: auto;
	width: 100%;
	height: 150px;
	object-fit: cover;
}

ul.works_list li a:hover img {
	opacity: 1.0;
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
	-webkit-filter:brightness(1.3);
    -moz-filter:brightness(1.3);
    -ms-filter:brightness(1.3);
    filter:brightness(1.3);
	-webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -o-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
}

ul.works_list li a span {
	display: block;
	padding-top: 10px;
	font-size: 14px;
	letter-spacing: 1px;
}

ul.works_list li a span.mask {
	display: block;
	width: auto;
	width: 100%;
	height: 150px;
	overflow: hidden;
	padding-top: 0px;
}

ul.works_list li a:hover {
	color: #000;
	background-color: #FFF;
}


/*
スライダー
-------------------------------------------*/

.sp-slide {
	opacity: 0.2;
	filter: alpha(opacity=20);
	-ms-filter: "alpha( opacity=20 )";
	-webkit-filter: grayscale(100%);
	filter: grayscale(100%);
	max-height: 800px;
	overflow: hidden;
}
.sp-slide.sp-selected {
	opacity: 1.0;
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
	-webkit-filter: grayscale(0%);
	filter: grayscale(0%);
}

.sp-thumbnail-container img {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
	-webkit-filter: grayscale(100%);
	filter: grayscale(100%);
	object-fit: cover;
}

.sp-thumbnail-container img {
	height: 100% !important;
}

.sp-thumbnail-container:hover img,
.sp-thumbnail-container.sp-selected-thumbnail img {
	opacity: 1.0;
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
	cursor: pointer;
	-webkit-filter: grayscale(0%);
	filter: grayscale(0%);
}

.top_base {
	position: absolute;
	z-index: 100;
	mix-blend-mode: multiply;
	width: 500px;
	height: 500px;
	top: 50%;
	left: 50%;
	margin-left: -250px;
	margin-top: -250px;
}

/*キャッチ背景　赤系*/
.top_base.cl_01 {
 background: rgb(217,0,72);
background: -moz-radial-gradient(circle, rgba(217,0,72,0.65) 10%, rgba(255,18,80,0) 60%);
background: -webkit-radial-gradient(circle, rgba(217,0,72,0.65) 10%, rgba(255,18,80,0) 60%);
background: radial-gradient(circle, rgba(217,0,72,0.65) 10%, rgba(255,18,80,0) 60%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#d90048",endColorstr="#ff1250",GradientType=1); 
}

/*キャッチ背景　緑系*/
.top_base.cl_02 {
 background: rgb(102,204,0);
background: -moz-radial-gradient(circle, rgba(102,204,0,0.65) 10%, rgba(148,207,0,0) 60%);
background: -webkit-radial-gradient(circle, rgba(102,204,0,0.65) 10%, rgba(148,207,0,0) 60%);
background: radial-gradient(circle, rgba(102,204,0,0.65) 10%, rgba(148,207,0,0) 60%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#66cc00",endColorstr="#94cf00",GradientType=1); 
}

/*キャッチ背景　青系*/
.top_base.cl_03 {
 background: rgb(0,162,221);
background: -moz-radial-gradient(circle, rgba(0,162,221,0.65) 10%, rgba(0,207,244,0) 60%);
background: -webkit-radial-gradient(circle, rgba(0,162,221,0.65) 10%, rgba(0,207,244,0) 60%);
background: radial-gradient(circle, rgba(0,162,221,0.65) 10%, rgba(0,207,244,0) 60%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#00a2dd",endColorstr="#00cff4",GradientType=1); 
}

#top_slide .top_catch {
	z-index: 200;
	font-size: 56px;
	line-height: 0.6;
	width: 100%;
	font-weight: bold;
	color: #FFF;
	text-align: center;
	position: absolute;
	top: 44%;
	letter-spacing: 0.1em;
	-moz-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
	-webkit-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
	-ms-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
	text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "Sawarabi Mincho", "HG明朝E",  "ＭＳ Ｐ明朝", "MS PMincho", serif;
}
#top_slide .top_catch span {
	font-size: 25%;
}

#top_slide .slide_btn a {
	display: block;
	position: absolute;
	z-index: 200;
	left: 50%;
	bottom: 25%;
	font-size: 18px;
	color: #FFF;
	width: 300px;
	margin-left: -150px;
	text-align: center;
	font-weight: bold;
	text-decoration: none;
	border: 2px solid #FFF;
	line-height: 40px;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}
#top_slide .slide_btn a:hover {
	background-color: #FFF;
	color: #111;
}

/*
トップピックアップバナー
-------------------------------------------*/

.pickup {
	background-color: #DEDCD6;
	padding-top: 30px;
	padding-bottom: 30px;
}

.pickup ul {
	display: block;
	margin-left: auto;
	margin-right: auto;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	max-width: 1400px;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-moz-box-lines: multiple;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.pickup ul li {
	width: 24%;
	position: relative;
}
.pickup ul li a {
	text-decoration: none;
	display: block;
}

.pickup ul li a:hover {
	background-color: #FFF;
}

.pickup ul li a .pu_icon {
	position: absolute;
	top: -5px;
	left: -5px;
	background-color: #0085B2;
	color: #FFF;
	padding-left: 10px;
	padding-right: 10px;
	font-weight: bold;
}

.pickup ul li a .pu_icon.cl_02 {
	background-color: #D11444;
}

.pickup ul li a .pu_title {
	display: block;
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 10px;
	text-align: center;
	color: #111;
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "Sawarabi Mincho", "HG明朝E",  "ＭＳ Ｐ明朝", "MS PMincho", serif;
	border-top-width: 8px;
	border-top-style: solid;
	border-top-color: #DEDCD6;
	padding-top: 10px;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #A49F8E;
	padding-bottom: 10px;
}

.pickup ul li a:hover .pu_title {
	border-top-color: #543D98;
}

.pickup ul li a p {
	color: #111;
	padding-top: 10px;
	padding-right: 20px;
	padding-bottom: 20px;
	padding-left: 20px;
}

.pickup ul li a img {
	-webkit-filter: brightness(0.8);
	-moz-filter: brightness(0.8);
	-ms-filter: brightness(0.8);
    filter:brightness(0.8);
  -webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
	width: 100%;
	height: 50%;
	object-fit: cover;
}

.pickup ul li a:hover img {
	opacity: 1.0;
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
	-webkit-filter:brightness(1.2);
    -moz-filter:brightness(1.2);
    -ms-filter:brightness(1.2);
    filter:brightness(1.2);
}





/*
    apteq_original css
*/


/* common */
*{
    margin: 0;
    padding: 0
}

body {
    margin: 0;
    display: flex;
    flex-flow: column;
    min-height: 100vh;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic";
}


main {
    background: #ffffff;
    flex: 1;
}

a{
    color: #27682a
}

a:hover {
    text-decoration: none;
    color: #27682a;

}
h4 {
    margin: 1rem auto;
}

button{
    background: #fff;
    border: none;
}

.btn.btn-info {
    border: solid 3px #17a2b8;
}
.btn.btn-info:visited {
    color: #fff;
}
.btn.btn-info:hover {
    background-color: #fff;
    color: #17a2b8;
}
h1, h2, h3, h4, h5, h6 {

}

ul{
    list-style: none;
    margin: 0
}

.slide-items {
  width: 100%;
  height: 100%;
}

.slide-items img {
  width: 100%;
  object-fit: cover;
}


.logo_img{
    width: 150px
}

.logo_img_p{
    display: flex;
    align-items: center;
    justify-content: center;
}

.google-maps {
    position: relative;
    height: 0;
    overflow: hidden;
}
.google-maps iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
}

.container {
    max-width: 1400px;
}

.founder-content{
    margin: 7em 0 4rem;
}

form.sent table{
    display:none;
}


.section_2{
    position: relative
}

.red_text{
    color: #27682a
}

.gray_text{
    color: #999999;
}

.y_link{
    color: #e0b903;
}

.list{
    margin: 0 0 1.5em 3em;
    list-style: disc;
    line-height: 2
}

.wpforms-required-label {
    color: #ff0000;
    font-weight: normal;
}

.red_border{
    width: 100%;
    border: solid #27682a 1px;
    margin: 0 0 3rem 0;
}

.top_text{
    color: #fff;
    font-weight: bold;
    position: absolute;
    top: 40%;
    left: 30%;
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: center;
    width: 100%;
    /* font-size: 2.8rem; */
    font-size: 3vw;
}

.news-item__text{
    font-size: 14px
}

.top_program_text{
    text-shadow: 1px 2px 3px #2e2e2e;
}

.paging-area{
    font-size: 1.5rem
}

.section_2_text_block{
    color: #27682a
}

.service_img{
    max-width: 800px;
    width: 100%;
}


.square_box {
    margin: auto;
    max-width: 980px
}


#movie {
    margin: 10rem 2rem 5rem
}

.youtube {
    max-width: 920px;
    aspect-ratio: 16/9;
    margin: auto
}

.youtube iframe {
    width: 100%;
    height: 100%
}

.s_content_title {
    padding: .5rem 1rem;
    border-left: 3px solid #006f19;
    font-size: 1.4rem;
    margin: 3rem 0 1rem;
    font-weight: 700
}

.kodai_kui_selbon_movie_box {
    margin: 0 0 10rem
}



.green_bk{
width: 100vw;
    height: 20vw;
    background: #006f19;
    position: absolute;
    top: 140px;
    left: 0;
    z-index: -999;
}

.slider2{
    max-width: 1600px;
    margin: auto;
}

.container_new{
    max-width: 1400px;
    margin: auto
}


.l-footer {
    grid-area: footer
}

.l-footerContact {
    background: linear-gradient(135deg, #202d37 0%, var(--KEYENCE_COLOR_BASE_BLACK) 100%);
    grid-template-columns: 1fr minmax(270px, 1200px) 1fr;
    padding-bottom: 50px;
    padding-top: 50px;
    background: #202d37;
    color: #fff;
}

.l-footerContact__inner {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 48px
}

.l-footerContact__title {
    color: var(--KEYENCE_COLOR_BASE_WHITE);
    font-size: 1.75rem;
    font-weight: bold !important;
    line-height: 1.5;
    text-align: center
}

.l-footerContact__text {
    color: var(--KEYENCE_COLOR_BASE_WHITE);
    font-size: 1rem;
    margin-top: -24px;
    text-align: center
}

.l-footerContact__phone {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 32px
}

.l-footerContact__phone:any-link {
    text-decoration: none
}

.l-footerContact__phone--pcHide {
    display: none
}

.l-footerContact__phoneTitle {
    color: var(--KEYENCE_COLOR_BASE_WHITE);
    font-size: 1rem
}

.l-footerContact__phoneText {
    align-items: center;
    color: var(--KEYENCE_COLOR_BASE_WHITE);
    display: flex;
    font-family: var(--FONT_FAMILY_ENG);
    font-size: 2.625rem;
    font-weight: bold;
    gap: 12px;
    line-height: 1.5
}

.l-footerContact__phoneText::before {
    background-image: url("data:image/svg+xml; charset=utf8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%20100%20100%22%20fill%3d%22%23277a80%22%3e%3cpath%20d%3d%22M94%2e13,77%2e03c1%2e16,1%2e16,1%2e16,3%2e03,0,4%2e19L83%2e69,91%2e65c%2d1%2e65,1%2e65%2d3%2e75,2%2e83%2d6%2e08,3%2e08c%2d17%2e89,1%2e98%2d37%2e29%2d7%2e48%2d51%2e09%2d21%2e28C12%2e73,59%2e67,3%2e28,40%2e28,5%2e26,22%2e38c0%2e26%2d2%2e32,1%2e43%2d4%2e42,3%2e08%2d6%2e08L18%2e79,5%2e87c1%2e16%2d1%2e16,3%2e03%2d1%2e16,4%2e19,0l14%2e65,14%2e65c1%2e16,1%2e16,1%2e16,3%2e03,0,4%2e19L22%2e77,39%2e56c%2d0%2e07,9%2e53,5%2e03,18%2e22,12%2e24,25%2e43c7%2e22,7%2e22,15%2e89,12%2e32,25%2e43,12%2e24l15%2e21%2d14%2e59c1%2e16%2d1%2e11,3%2d1%2e1,4%2e14,0%2e04L94%2e13,77%2e03z%22%2f%3e%3c%2fsvg%3e");
    content: "";
    display: block;
    height: 32px;
    width: 32px
}

.l-footerContact__phoneTime {
    color: var(--KEYENCE_COLOR_BASE_WHITE);
    font-size: 0.75rem
}

.l-footerContact__list {
    --local-list-gap: 16px;
    --local-list-column: 4;
    display: flex;
    flex-wrap: wrap;
    gap: var(--local-list-gap);
    justify-content: center;
    list-style: none;
    width: 100%
}

.l-footerContact__listItem {
    width: calc(100%/var(--local-list-column) - (var(--local-list-gap) - var(--local-list-gap)/var(--local-list-column)))
}

.l-footerContact__listItem::marker {
    content: none
}

.l-footerContact__link {
    align-items: center;
    background-color: var(--KEYENCE_COLOR_BASE_WHITE);
    border-radius: var(--BORDER_RADIUS_SMALL);
    display: grid;
    font-size: 1rem;
    gap: 10px;
    grid-template-columns: auto;
    grid-template-rows: auto 1fr;
    justify-content: center;
    padding: 24px;
    position: relative;
    text-align: center;
    width: 100%
}

.l-footerContact__link:any-link {
    text-decoration: none
}

.l-footerContact__link::before {
    background-repeat: no-repeat;
    content: "";
    display: block;
    height: 64px;
    margin: 0 auto;
    width: 64px
}

.l-footerContact__link::after {
    background-image: url("data:image/svg+xml; charset=utf8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%20100%20100%22%20fill%3d%22%23277a80%22%3e%3cpath%20d%3d%22M77%2e5,50L30%2e8,96%2e8l%2d4%2e6%2d4%2e6c%2d2%2e1%2d2%2d2%2e1%2d5%2e3,0%2d7%2e4L61,50L22%2e5,11%2e5l8%2e3%2d8%2e3L77%2e5,50z%22%2f%3e%3c%2fsvg%3e");
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    height: 13px;
    position: absolute;
    right: 24px;
    top: 68px;
    width: 13px
}

.l-footerContact__linkText {
    background-image: linear-gradient(var(--KEYENCE_COLOR_ROLE_PRICE_INQUIRY), var(--KEYENCE_COLOR_ROLE_PRICE_INQUIRY));
    background-position: 0 100%;
    background-repeat: no-repeat;
    background-size: 0 1px;
    color: var(--KEYENCE_COLOR_BASE_BLACK);
    font-weight: bold;
    transition: background-size var(--TRANSITION),color var(--TRANSITION);
    width: fit-content
}

@media(hover: hover)and (min-width: 971px) {
    .l-footerContact__link:hover .l-footerContact__linkText {
        background-position:0 100%;
        background-size: 100% 1px;
        color: var(--KEYENCE_COLOR_ROLE_PRICE_INQUIRY)
    }
}

.l-footerContact__link--circleContactIcon::before {
    background-image: url("data:image/svg+xml; charset=utf8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%20100%20100%22%3e%3ccircle%20fill%3d%22%23f3f3f3%22%20cx%3d%2250%22%20cy%3d%2250%22%20r%3d%2250%22%2f%3e%3cpath%20fill%3d%22%23277a80%22%20d%3d%22M31%2e1,27%2e5c%2d2,0%2d3%2e6,1%2e6%2d3%2e6,3%2e6l0,31%2e3l6%2e5%2d9%2e9h28%2e5v%2d25H31%2e1z%22%2f%3e%3cpath%20fill%3d%22%23277a80%22%20d%3d%22M66,62%2e5l6%2e5,9%2e9l0%2d34%2e9h%2d5v20H38%2e3l%2d3%2e3,5H66z%22%2f%3e%3c%2fsvg%3e")
}

.l-footerContact__link--circlePriceIcon::before {
    background-image: url("data:image/svg+xml; charset=utf8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%20100%20100%22%3e%3ccircle%20fill%3d%22%23f3f3f3%22%20cx%3d%2250%22%20cy%3d%2250%22%20r%3d%2250%22%2f%3e%3cpath%20fill%3d%22%23277a80%22%20d%3d%22M50,25c%2d13%2e8,0%2d25,11%2e2%2d25,25s11%2e2,25,25,25s25%2d11%2e2,25%2d25S63%2e8,25,50,25z%20M60%2e6,55%2e2l%2d2%2e8,4%2e2h%2d5%2e9v7%2e3h%2d4%2e2%20v%2d7%2e3h%2d7%2e4v%2d3c0%2d0%2e7,0%2e6%2d1%2e2,1%2e2%2d1%2e2h6%2e1v%2d3%2e1h%2d7%2e4v%2d3c0%2d0%2e7,0%2e6%2d1%2e2,1%2e2%2d1%2e2h4%2e3l%2d6%2e6%2d9%2e8l3%2e5%2d2%2e3l7,10%2e4l7%2d10%2e4l3%2e5,2%2e3l%2d6%2e6,9%2e8%20h7L58,52%2e1h%2d6%2e1v3%2e1H60%2e6z%22%2f%3e%3c%2fsvg%3e")
}

.l-footerContact__link--circleTestingMachineIcon::before {
    background-image: url("data:image/svg+xml; charset=utf8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%20100%20100%22%3e%3ccircle%20fill%3d%22%23f3f3f3%22%20cx%3d%2250%22%20cy%3d%2250%22%20r%3d%2250%22%2f%3e%3cpath%20fill%3d%22%23277a80%22%20fill%2drule%3d%22evenodd%22%20clip%2drule%3d%22evenodd%22%20d%3d%22M42%2e5,36c0%2d2%2e76,2%2e24%2d5,5%2d5h25v30h%2d2%2e52c0%2e01,0%2e17,0%2e02,0%2e33,0%2e02,0%2e5c0,4%2e14%2d3%2e36,7%2e5%2d7%2e5,7%2e5c%2d4%2e14,0%2d7%2e5%2d3%2e36%2d7%2e5%2d7%2e5c0%2d0%2e17,0%2e01%2d0%2e33,0%2e02%2d0%2e5h%2d9%2e03c0%2e01,0%2e17,0%2e02,0%2e33,0%2e02,0%2e5c0,4%2e14%2d3%2e36,7%2e5%2d7%2e5,7%2e5c%2d4%2e14,0%2d7%2e5%2d3%2e36%2d7%2e5%2d7%2e5c0%2d0%2e17,0%2e01%2d0%2e33,0%2e02%2d0%2e5H30c%2d1%2e38,0%2d2%2e5%2d1%2e12%2d2%2e5%2d2%2e5v%2d8%2e73c0%2d0%2e49,0%2e14%2d0%2e96,0%2e41%2d1%2e37l5%2e75%2d8%2e77c0%2e46%2d0%2e7,1%2e25%2d1%2e13,2%2e09%2d1%2e13h6%2e75V36z%20M37%2e01,42%2e25l%2d4%2e1,6%2e25h9%2e57v%2d6%2e25H37%2e01z%20M42%2e25,61%2e5c0,2%2e07%2d1%2e68,3%2e75%2d3%2e75,3%2e75c%2d2%2e07,0%2d3%2e75%2d1%2e68%2d3%2e75%2d3%2e75c0%2d2%2e07,1%2e68%2d3%2e75,3%2e75%2d3%2e75C40%2e57,57%2e75,42%2e25,59%2e43,42%2e25,61%2e5z%20M62%2e5,65%2e25c2%2e07,0,3%2e75%2d1%2e68,3%2e75%2d3%2e75c0%2d2%2e07%2d1%2e68%2d3%2e75%2d3%2e75%2d3%2e75c%2d2%2e07,0%2d3%2e75,1%2e68%2d3%2e75,3%2e75C58%2e75,63%2e57,60%2e43,65%2e25,62%2e5,65%2e25z%22%2f%3e%3c%2fsvg%3e")
}

.l-footerContact__link--circleRepairIcon::before {
    background-image: url("data:image/svg+xml; charset=utf8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%20100%20100%22%3e%3ccircle%20fill%3d%22%23f3f3f3%22%20cx%3d%2250%22%20cy%3d%2250%22%20r%3d%2250%22%2f%3e%3cpath%20fill%3d%22%23277a80%22%20d%3d%22M52%2e51,25h%2d5l0,6%2e25c0,0%2e69%2d0%2e56,1%2e25%2d1%2e25,1%2e25c%2d0%2e69,0%2d1%2e25%2d0%2e56%2d1%2e25%2d1%2e25v%2d3%2e66c%2d2%2e29,1%2e33%2d4%2e01,3%2e53%2d4%2e68,6%2e16h19%2e37c%2d0%2e68%2d2%2e63%2d2%2e39%2d4%2e84%2d4%2e69%2d6%2e16v3%2e66c0,0%2e69%2d0%2e56,1%2e25%2d1%2e25,1%2e25c%2d0%2e69,0%2d1%2e25%2d0%2e56%2d1%2e25%2d1%2e25V25z%22%2f%3e%3cpath%20fill%3d%22%23277a80%22%20d%3d%22M38%2e76,33%2e75h22%2e5v3%2e75h%2d22%2e5V33%2e75z%22%2f%3e%3cpath%20fill%3d%22%23277a80%22%20d%3d%22M50,47%2e5c%2d4%2e41,0%2d8%2e05%2d3%2e26%2d8%2e66%2d7%2e5h17%2e32C58%2e06,44%2e24,54%2e41,47%2e5,50,47%2e5z%22%2f%3e%3cpath%20fill%3d%22%23277a80%22%20d%3d%22M45%2e08,50l4%2e92,7%2e5l4%2e92%2d7%2e5h5%2e08c2%2e36,0,4%2e47,1%2e09,5%2e85,2%2e8L51%2e41,75h%2d18%2e9V57%2e5c0%2d4%2e14,3%2e36%2d7%2e5,7%2e5%2d7%2e5H45%2e08z%22%2f%3e%3cpath%20fill%3d%22%23277a80%22%20d%3d%22M67%2e51,75V60%2e42L58%2e02,75H67%2e51z%22%2f%3e%3c%2fsvg%3e")
}

.l-footerNavigation {
    background-color: var(--KEYENCE_COLOR_BACKGROUND_LIGHTGRAY);
    grid-template-columns: 1fr minmax(270px, 1200px) 1fr;
    padding-bottom: 60px;
    padding-top: 60px
}

.l-footerNavigation__list {
    display: grid;
    gap: 60px 48px;
    grid-template-columns: repeat(4, 1fr)
}

.l-footerNavigation__link {
    background-color: rgba(0,0,0,0);
    border-bottom: 1px solid #e1e1e1;
    font-size: 0.875rem;
    font-weight: bold;
    line-height: 1.75;
    padding-bottom: 12px;
    text-align: left;
    width: 100%
}

.l-footerNavigation__childLink {
    font-size: 0.75rem
}

.l-footerNavigation__listItem,.l-footerNavigation__childList {
    list-style: none
}

.l-footerNavigation__link,.l-footerNavigation__childLink {
    cursor: default;
    display: block;
    position: relative
}

.l-footerNavigation__link:any-link,.l-footerNavigation__childLink:any-link {
    cursor: pointer;
    padding-left: 16px;
    text-decoration: none
}

.l-footerNavigation__link:any-link::before,.l-footerNavigation__childLink:any-link::before {
    background-image: url("data:image/svg+xml; charset=utf8, %3csvg%20xmlns%3d%22http%3a%2f%2fwww%2ew3%2eorg%2f2000%2fsvg%22%20viewBox%3d%220%200%20100%20100%22%20fill%3d%22%23ea0437%22%3e%3cpath%20d%3d%22M77%2e5,50L30%2e8,96%2e8l%2d4%2e6%2d4%2e6c%2d2%2e1%2d2%2d2%2e1%2d5%2e3,0%2d7%2e4L61,50L22%2e5,11%2e5l8%2e3%2d8%2e3L77%2e5,50z%22%2f%3e%3c%2fsvg%3e");
    content: "";
    display: block;
    height: 9px;
    left: 0;
    position: absolute;
    top: .5em;
    width: 9px
}

.l-footerNavigation__text {
    font-weight: bold
}

.l-footerNavigation__text,.l-footerNavigation__childLinkText {
    background-image: linear-gradient(var(--KEYENCE_COLOR_RED), var(--KEYENCE_COLOR_RED));
    background-position: 100% 100%;
    background-repeat: no-repeat;
    background-size: 0 1px;
    color: var(--KEYENCE_COLOR_BASE_BLACK);
    display: inline;
    gap: 4px;
    position: relative;
    transition: background-size var(--TRANSITION),color var(--TRANSITION)
}

.l-footerNavigation__listItem::marker,.l-footerNavigation__childListItem::marker {
    content: none
}

.l-footerNavigation__childListItem--top {
    display: none
}

.l-footerNavigation__childList {
    display: grid !important;
    gap: 4px 48px;
    grid-template-columns: auto;
    margin-top: 12px
}

.l-footerNavigation__listItem--product {
    grid-column-end: 5;
    grid-column-start: 1
}

.l-footerNavigation__listItem--product .l-footerNavigation__childList {
    grid-auto-flow: column;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(5, auto)
}

.l-footerNavigation__listItem--support {
    grid-column-end: 5;
    grid-column-start: 3
}

.l-footerNavigation__listItem--support .l-footerNavigation__childList {
    grid-auto-flow: column;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(6, auto)
}


.r_p{
    position: relative;
    z-index: 999
}

.serbon_movie_box {
    width: 100%;
    text-align: center;
    margin: auto;
    padding: 4%;
    position: relative;
    z-index: 999
}

.square_box {
    margin: auto;
    max-width: 980px
}

.square_l_box {
    width: 15vw;
    height: 15vw;
    background: #006f19;
    position: absolute;
    top: -20px;
    left: -20px;
    z-index: -999
}

.square_r_box {
    width: 15vw;
    height: 15vw;
    background: #006f19;
    position: absolute;
    bottom: -20px;
    right: -20px;
    z-index: -999
}

.serbon_text {
    text-align: center;
    margin: 6rem 0 2rem;
    font-weight: 700;
    color: #006f19;
}


video.vid_main {
    width: 100%;
    max-width: 920px
}

.l-header {
  width: 100%;
  z-index: 100;
}

.l-header + * {
  margin-top: 60px;
}

.p-navigation-global__list {
  gap: 15px;
  align-items: center;
  display: flex;
  justify-content: end;
}

.p-navigation-global__list-item a {
  font-weight: 700;
  padding: 20px 5px;
}

.p-megaMenu.is-open .p-megaMenu__navigation {
  -webkit-clip-path: inset(0 -50vw);
  clip-path: inset(0 -50vw);
  visibility: visible;
}

.p-megaMenu.is-open .p-megaMenu__open::after {
  rotate: 180deg;
}

.p-megaMenu__open {
  gap: 0.5em;
  align-items: center;
  cursor: pointer;
  display: flex;
  font-weight: 700;
  justify-content: center;
  line-height: 1;
  padding: 20px 5px;
}

.p-megaMenu__open::after {
  content: "∨";
  padding-bottom: 0.2em;
  transition: rotate 0.3s;
}

.p-megaMenu__navigation {
  -webkit-clip-path: inset(0 -50vw 100%);
  background-color: #d7d7d7;
  clip-path: inset(0 -50vw 100%);
  left: 0;
  padding: 20px;
  position: absolute;
  top: 100%;
  transition: all 0.4s;
  visibility: hidden;
  width: 100%;
}

.p-megaMenu__list {
  gap: 0;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  max-width: 600px;
  width: -moz-fit-content;
  width: fit-content;
}

.p-megaMenu__list-item a {
  gap: 0.5em;
  align-items: center;
  display: inline-flex;
  padding: 5px 10px;
}

.p-megaMenu__list-item a::before {
  background-color: currentColor;
  content: "";
  display: block;
  height: 1px;
  width: 0.5em;
}
.mb{
    margin: 0 0 1rem 0
}


@media (min-width: 768px) {
  .p-navigation-global__list {
    gap: 40px;
  }

  .p-navigation-global__list-item a {
    padding: 20px 10px;
  }

  .p-megaMenu__open {
    padding: 20px 10px;
  }

  .p-megaMenu__navigation {
    padding: 40px;
  }

  .p-megaMenu__list {
    gap: 10px 30px;
    flex-direction: row;
  }

  .p-megaMenu__list-item a {
    padding: 20px 20px;
  }
}

@media (min-width: 768px) and (hover: hover) {
  .p-megaMenu:hover .p-megaMenu__navigation,
  .p-megaMenu:focus-within .p-megaMenu__navigation {
    -webkit-clip-path: inset(0 -50vw);
    clip-path: inset(0 -50vw);
    visibility: visible;
  }

  .p-megaMenu:hover .p-megaMenu__open::after,
  .p-megaMenu:focus-within .p-megaMenu__open::after {
    rotate: 180deg;
  }
}

@media (hover: hover) {
  .p-navigation-global__list-item a:hover {
    text-decoration: underline;
  }
}



@media  all and (min-width: 576px) {    /* col-sm- */

}
@media  all and (min-width: 768px) {    /* col-md- */

    .introduction_flex{
        display: flex;
        margin-right: auto;
        margin-left: auto;
        position: relative;
        max-width: 1200px;
    }


}
@media  all and (min-width: 992px) {    /* col-lg- */


}



#menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: end;
    margin: 10px 30px;
}

#menu-btn {
    display: none;
}

#menu-content {
    margin: 0;
    list-style-type: none;
}

#menu-content > li {
    position: relative;
    float: left;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
}

#menu-content > li > a {
    display: block;
    padding: 0 10px;
    line-height: 40px;
    color: #000;
    font-size: 1rem;
    font-weight: 600;
    text-decoration: none;
    letter-spacing: 1px
}

#menu-content > li > a:visited {
    color: #000;
}

#menu-content > li > a:hover {
    color: #27682a
}

#menu-content > li > a > .blogicon-chevron-down {
    margin-right: 5px;
}

#menu-content > li > ul.sub-menu {
    visibility: hidden;
    opacity: 0;
    position: absolute;
    padding-left: 0;
    list-style-type: none;
    -webkit-box-shadow: 1px 1px 7px #bbb;
    box-shadow: 1px 1px 7px #bbb;
    z-index: 999;
    background: #fff
}

#menu-content > li:hover > ul.sub-menu {
    visibility: visible;
    opacity: 1;
    -webkit-transition: opacity 0.2s, visibility 0.2s;
    transition: opacity 0.2s, visibility 0.2s;
}

#menu-content > li > ul.sub-menu > li {
    text-align: center;
    width: 250px;
    height: 50px;
    font-weight: 600;
    font-size: 1.3rem
}

#menu-content > li > ul.sub-menu > li > a {
    display: block;
    line-height: 40px;
    color: #000;
    font-size: 12px;
    text-decoration: none;
}

#menu-content > li > ul.sub-menu > li > a:hover {
    background: #eee;
    color: #27682a;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
}

.menu_flex{
    display: flex;
    position: fixed;
    z-index: 999;
    top: 0;
    left: 0;
    width: 100%;
    background: #fff;
    box-sizing: border-box;
}

.menu_box{
    margin-left: auto;
}

.section_1{
    margin: 9.2rem 0 0 0;
}

@media  all and (max-width: 991px) { 
.section_1 {
    margin: 8em 0 0 0;
}
}


@media screen and (max-width: 768px) {
    nav {
        position: fixed;
        top: 0;
        left: -300px;
        bottom: 0;
        width: 60%;
        background: #fff;
        overflow-x: hidden;
        overflow-y: auto;
        -webkit-transition: all 0.3s;
        transition: all 0.3s;
        z-index: 3;
        opacity: 0;
    }
    .open nav {
        left: 0;
        opacity: 1;
    }
    nav .menu-menu-1-container {
        padding: 25px;
    }
    nav .menu-menu-1-container ul {
        list-style: none;
        margin: 0;
        padding: 0;
    }
    nav .menu-menu-1-container ul li {
        position: relative;
        margin: 0;
    }
    nav .menu-menu-1-container ul li a {
        display: block;
        color: #333;
        font-size: 14px;
        text-decoration: none;
        -webkit-transition-duration: 0.2s;
        transition-duration: 0.2s;
    }
    .toggle_btn {
        display: block;
        position: fixed;
        top: 30px;
        right: 30px;
        width: 30px;
        height: 30px;
        -webkit-transition: all 0.3s;
        transition: all 0.3s;
        cursor: pointer;
        z-index: 3;
        top: 16px
    }
    .toggle_btn span {
        position: absolute;
        left: 0;
        width: 30px;
        height: 3px;
        background-color: #27682a;
        border-radius: 4px;
        -webkit-transition: all 0.3s;
        transition: all 0.3s
    }
    .toggle_btn span:nth-child(1) {
        top: 4px;
    }
    .toggle_btn span:nth-child(2) {
        top: 14px;
    }
    .toggle_btn span:nth-child(3) {
        bottom: 4px;
    }
    .open .toggle_btn span {
        background-color: #fff;
    }
    .open .toggle_btn span:nth-child(1) {
        -webkit-transform: translateY(10px) rotate(-315deg);
        transform: translateY(10px) rotate(-45deg);
    }
    .open .toggle_btn span:nth-child(2) {
        opacity: 0;
    }
    .open .toggle_btn span:nth-child(3) {
        -webkit-transform: translateY(-10px) rotate(315deg);
        transform: translateY(-10px) rotate(45deg);
    }
    #mask {
        display: none;
        -webkit-transition: all 0.3s;
        transition: all 0.3s;
    }
    .open #mask {
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: #000;
        opacity: 0.5;
        z-index: 2;
        cursor: pointer;
    }
    #menu-content > li {
        width: 100%;
        margin-bottom: 15px;
    }
    #menu-content > li:hover {
        background: none;
    }
    #menu-content > li > a {
        height: 100%;
        padding: 0px;
        font-size: 100%;
        border-bottom: 1px solid #000;
    }
    #menu-content > li > ul.sub-menu {
        visibility: visible;
        opacity: 1;
        width: 100%;
        position: relative;
        -webkit-box-shadow: none;
        box-shadow: none;
    }
    #menu-content > li > ul.sub-menu > li {
        width: 100%;
        text-align-last: left;
    }
    #menu-content > li > ul.sub-menu > li > a {
        padding-left: 3px;
    }
    #menu-content > li > ul.sub-menu > li > a:hover {
        background: none;
    }

    .menu_flex{
        display: box;
        height: 60px
    }
}

.navbar-brand {
    padding: 0 0.3125rem!important;
}


.entry-header{
    display: none
}

.logo_block{
display: flex
}

.site-title {
    margin-bottom: 0;
}



/* main */
.first_view img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.first_view {
    height: 100vh;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    position: relative
}


#main {
    overflow: hidden;
}

.bp_block{
    display: block;
    position: relative;
    width: 81.923%;
    margin: auto;
}

.bp_block::before {
    top: 0;
    right: 0;
    width: 0;
    height: 100%;
    background: #005AA4;
    z-index: -1;
}


.section_2_text_block{
    position: absolute;
    font-weight: bold;
    font-size: 20px;
    font-family: Quicksand, sans-serif;
    top: 30%;
    left: 30%;
    line-height: 2;
}

.ceo_text{
    font-size: 1.5rem
}

/*dlタグの設定*/
.flex-container{
    display: flex;
    justify-content: space-around;
}
.flex-item{
    padding: 1em 0;
    flex-basis: 30%
}
.flex-item dt{
    margin-bottom: 10px;
    font-size: 1.75em;
    font-weight: bold;
    text-align: center;
    color: #27682a
}

.service{
    width: 90%;
    padding-top: 120px;
    padding-bottom: 140px;
    margin: 0 auto 0;
}

.title_text{
    font-size: 2.5rem;
    color: #27682a;
}

.r_title{
color: #000000;
    padding: 2rem;
}

.book-card {
    background: white;
    padding: 15px;
    border-radius: 10px;
    text-align: center;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s;
    margin: 1rem;
}

.green_block{
    background: #006f19;
    padding: 2rem;
}

.book-card img {
    width: 100%;
    height: auto;
    border-radius: 5px;
}

.book-card:hover {
    transform: scale(1.05);
}

.book-card h3 {
    font-size: 1.2em;
    margin: 10px 0;
}

.book-card p {
    font-size: 1.1em;
    font-weight: bold;
    color: #007bff;
}

.badge {
    position: absolute;
    top: 10px;
    left: 10px;
    font-size: 0.9em;
    padding: 5px
}

.jp_r_title{
    position: relative;
    display: block;
    padding: 0 50px;
    font-size: 16px;
    width: 200px;
    margin: auto;
}

.jp_r_title:before, .jp_r_title:after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 40px;
    height: 1px;
    background-color: #fff;
}

.jp_r_title:before {
    left:0;
}
.jp_r_title:after {
    right: 0;
}

.jp_r_title_2{
    position: relative;
    display: inline-block;
    padding: 0 50px;
    font-size: 16px;
    /* width: 181px; */
    margin: 0 0 0 20px;
    justify-content: center;
    display: flex;
    align-items: center;
}


.jp_r_title_2:before, .jp_r_title_2:after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 40px;
    height: 1px;
    background-color: #fff;
}

.jp_r_title_2:before {
    left:0;
}
.jp_r_title_2:after {
    right: 0;
}

.news_flex{
    display: flex
}

.university_flex {
    display: flex;
    flex-wrap: wrap;
    max-width: 1200px;
    margin: auto;
    position: relative
}
.university_column {
    width: 100%;
}

.university_column_text{
    background: #ac0010;
    color: #fff
}

.university_name{
    margin: 0 0 1rem 0
}

.university_name_en{
    display: block;
    margin: 1.5rem 0;
    font-weight: 600
}

.university_explanation_1{
    display: block;
    margin: 1.5rem 0
}

.f_item{
    -webkit-flex: 1 1 0%;
    flex: 1 1 0%;
    height: 200px
}

.technologies_text {
    position: relative;
    overflow: hidden;
    padding: 2rem 2rem 1.5rem 160px;
    margin: 0 0 2rem 0;
    border: 2px solid #27682a;
    font-size: 2rem;
    color: #000;
}

.technologies_text:before {
    position: absolute;
    top: -150%;
    left: -100px;
    width: 260px;
    height: 300%;
    content: '';
    -webkit-transform: rotate(25deg);
    transform: rotate(25deg);
    background: #27682a;
}

.technologies_sub_text {
    position: relative;
    margin-bottom: 2rem;
    padding: 6rem 0 1rem 0;
    border-bottom: 1px solid #353535;
color: #000000;
    font-size: 1.5rem;
    font-weight: 600;
}

.technologies_sub_text:before {
    position: absolute;
    content: '';
    width: 15%;
    left: 0;
    bottom: -1px;
    border-bottom: 3px solid #27682a
}


.technologies_t_box{
    padding: 10px;

}

.change-flex-container {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
}

.technologies_midasi {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 2rem;
    text-align: center;
    /* font-weight: bold; */
    color: #27682a;
    margin: 15rem 0 4rem 0;
    z-index: 1000;
    position: relative
}

.technologies_midasi::before,
.technologies_midasi::after {
    content: '';
    width: 40px;
    height: 3px;
    background-color: #ababab
}


.technologies_midasi::before {
    margin-right: 20px;
}
.technologies_midasi::after {
    margin-left: 20px;
}

.service_block{
    background-color: #ac0010;
    padding: 2rem 2.7rem 2rem;
    position: relative;
    width: 100%;
    color: #fff;
    line-height: 2;
    font-size: 1.2rem;
    font-size: 2rem;
    text-align: center;
    font-weight: 600

}

.service_midasi{
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 2rem;
    text-align: center;
    /* font-weight: bold; */
    color: #27682a;
    margin: 6rem 0 4rem 0
}

.service_midasi::before,
.service_midasi::after {
    content: '';
    width: 40px;
    height: 3px;
    background-color: #ababab
}


.service_midasi::before {
    margin-right: 20px;
}
.service_midasi::after {
    margin-left: 20px;
}


.service_midasi_2 {
    margin: 6rem 0 2rem 0;
}


.icon_img{
    width: 200px
}


.projects_half_flex{
    display: flex
}

.projects_half{
    width: 100%;
}


.check_img{
    width: 30px
}

.projects_text_box{
    margin: 0 0 0 20px;
    width: 100%
}

.projects_sub_text{
    position: relative;
    margin-bottom: 2rem;
    padding: 0 0 1rem 0;
    border-bottom: 1px solid #353535;
    color: #27682a;
    font-size: 1.5rem
}

.projects_sub_text:before {
    position: absolute;
    content: '';
    width: 15%;
    left: 0;
    bottom: -1px;
    border-bottom: 3px solid #27682a
}


.projects_half_flex{
    display: flex
}

.projects_half{
    width: 100%;
}


.check_img{
    width: 30px
}

.projects_text_box{
    margin: 0 0 0 20px;
    width: 100%
}

.projects_sub_text{
    position: relative;
    margin-bottom: 2rem;
    padding: 0 0 1rem 0;
    border-bottom: 1px solid #353535;
    color: #27682a;
    font-size: 1.5rem
}

.projects_sub_text:before {
    position: absolute;
    content: '';
    width: 15%;
    left: 0;
    bottom: -1px;
    border-bottom: 3px solid #27682a
}



.features_text{
    color: #27682a;
    font-weight: 600;
    font-size: 1.2rem
}



.features_text{
    color: #27682a;
    font-weight: 600;
    font-size: 1.2rem
}

div.vid_contents {
    width: 100%;/*背景色を横幅いっぱいに広げる*/
    text-align: center;
    margin: auto;
    padding: 4% 4% 4% 4%;/*ここで動画の周りの余白を調整*/
}
video.vid_main {
    width: 100%;
    max-width: 820px;/*PC版での最大幅*/
}

.development_box{
    margin: 6rem 0 0 0
}


.saiyo_table th{
    font-size: 16px;
    font-weight: 500;
    background: #FAF9E9;
    text-align: center;
    vertical-align: middle;
    width: 160px;
    padding: 40px 20px;
    border-top: 2px solid #228877;
    width: 25%;
    font-weight: bold
}


.saiyo_table td{
    font-size: 15px;
    line-height: 2;
    background: #fff;
    padding: 40px;
    border-top: 2px solid #228877;
}

.saiyo_midasi{
    font-size: 1.4rem;
    font-weight: bold
}

.saiyo_midasi:first-letter {
    font-size: 130%;
    color: #27682a;
}


.company-midasi {
    padding: 0.25em 0.5em;
    color: #494949;
    background: transparent;
    border-left: solid 5px #001e8c;
    font-size: 18px;
    font-weight: bold;
    border-bottom: solid 1px #ccc;
}

.company-detail {
    margin-top: 20px;
    line-height: 30px;
}

.company-saiyo {
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%;
    border-top: 1px solid rgba(0,0,0,.05);

}

.company-saiyo tr td {
    font-size: 14px;
}


.company_table2 th{
    font-size: 18px;
    font-weight: 500;
    /* background: #f3f3f3; */
    text-align: center;
    vertical-align: middle;
    width: 160px;
    padding: 40px 10px;
    border-bottom: 2px solid #27682a;
    /* color: #626262; */
    font-weight: bold;
    width: 25%;
}

.company_table2 td{
    line-height: 2;
    background: #fff;
    padding: 40px;
    border-bottom: 2px solid #eaeaea;
}

.banner_box {
    margin-bottom: -1px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.contact_container{
    display: flex;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-direction: reverse;
    -webkit-box-orient: horizontal;
    -webkit-flex-direction: row-reverse;
    -moz-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-box-align: start;
    -ms-flex-align: start;
    -webkit-align-items: flex-start;
    -moz-align-items: flex-start;
    align-items: flex-start;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    -webkit-justify-content: flex-start;
    -moz-justify-content: flex-start;
    justify-content: flex-start;
    margin-left: 0px;
    margin-right: 0px;
    width: 100%
}


.contact_main{
    position: relative;
    -webkit-align-self: stretch;
    -moz-align-self: stretch;
    -ms-flex-item-align: stretch;
    align-self: stretch;
    -webkit-box-flex: none;
    -webkit-flex: none;
    -moz-box-flex: none;
    -moz-flex: none;
    -ms-flex: none;
    flex: none;
    min-height: 100vh;
    padding: calc(44.967888px + 75.032112 * ((100vw - 320px) / 1120));
    padding-left: calc(26.239392px + 33.760608 * ((100vw - 320px) / 1120));
    padding-right: calc(26.239392px + 33.760608 * ((100vw - 320px) / 1120));
    width: 50%
}

.contact_connect{
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
    -moz-box-flex: 1;
    -moz-flex: 1 0 auto;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    -moz-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    justify-content: center;
    background: #FAF9E9;
    padding: calc(26.239392px + 33.760608 * ((100vw - 320px) / 1120));
    width: 100%;
    /* font-size: 2.5rem; */
    text-align: center;
    /* color: #FAF9E9; */
    font-size: 1.2rem
}

.contact_side{
    transform: translateY(0px);
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    -webkit-align-items: stretch;
    -moz-align-items: stretch;
    align-items: stretch;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    -webkit-justify-content: flex-start;
    -moz-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-box-flex: none;
    -webkit-flex: none;
    -moz-box-flex: none;
    -moz-flex: none;
    -ms-flex: none;
    flex: none;
    height: 100vh;
    width: 50%

}

.contact_address{
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
    -moz-box-flex: 1;
    -moz-flex: 1 0 auto;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    -moz-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    justify-content: center;
    background: #ac0010;
    padding: calc(26.239392px + 33.760608 * ((100vw - 320px) / 1120));
    width: 100%;
    color: #fff
}

.contact_title{
    font-size: 2.5rem;
    margin: 0
}

.corp {
    margin: 0 0 1rem 0;
    font-weight: 600;
    font-size: 1.2rem;
}

.wpcf7 input[name="your-name"],
.wpcf7 input[name="your-email"],
.wpcf7 input[name="your-company"],
.wpcf7 input[name="your-tel"]
{
    width: 100%;
    height: 35px !important;
}

.wpcf7 textarea[name="your-message"] {
    width: 100%;
}


label{
    width: 100% !important
}

.wpcf7 input[type="submit"]{
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin-left: auto;
    margin-right: 0;
    padding: 1em 2em;
    width: 240px;
    color: #27682a;
    font-size: 1rem;
    font-weight: 600;
    border: 2px solid #27682a;
    transition: 0.3s;
    background: #fff;
    margin: auto
}

.wpcf7 input[type="submit"]:hover {
    color: #ffffff;
    text-decoration: none;
    background-color: #27682a;
}

.compiler_text_box{
    width: 50%;
    padding: 10px;
    align-self: center;
    line-height: 2;
    box-shadow: 0 10px 25px 0 rgb(0 0 0 / 19%);
    background: #FAF9E9
}

.news_block{
    margin: 0 0 3rem 0;
}

.news-flex-container{
    display: flex;
    flex-wrap: wrap
}


.news_more a {
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin-left: auto;
    margin-right: 0;
    padding: 1em 2em;
    width: 240px;
    color: #27682a;
    font-size: 1rem;
    font-weight: 600;
    border: 2px solid #27682a;
    background: #fff;
}

.news_more a::after {
    content: '';
    width: 10px;
    height: 10px;
    border-top: 3px solid #27682a;
    border-right: 3px solid #27682a;
    transform: rotate(45deg);
}
/*
.news_more a:hover {
  color: #ffffff;
  text-decoration: none;
  background-color: #27682a;
}

.news_more a:hover::after {
  border-top: 3px solid #ffffff;
  border-right: 3px solid #ffffff;
}
*/
.newslist{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.news-post{
    width: 100%;
    margin: 1rem
}

.news-time{
    font-weight: 600;
    margin: 0 2rem 0 0;
}

.sp_news_more_block{
    display: none
}

.news_archive_block{
    margin: 3 0 0 0rem
}

.news_archive_title{
    font-size: 1.5rem
}

.news_archive_date{
    font-size: 1.5rem;
    color: #27682a;
    font-weight: 600
}

.news_detail_block{
    margin: 3rem 0 0 0
}

.post-title-a{
    width: 100%;
    border-bottom: solid 1px #e2e2e2;
    padding: 1rem 2rem;
    display: block;
    color: #000;
}

.send_box{
    font-weight: bold;
    margin: 0;
    padding: 0;
    justify-content: center;
    width: 100%;
    font-size: 3rem;
    text-align: center;
    padding: 2rem 2.7rem 2rem;
    margin: auto
}


.banner_box a {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    color: #fff;
}


.banner_box .title_area {
    z-index: 5;
    position: absolute;
    left: 0;
    padding: 0 40px;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .35s ease;
    transition: all .35s ease;
}

.banner_box .image_wrap {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 1;
    overflow: hidden;
}

.banner_box .image {
    width: 100%;
    height: 100% !important;
    display: block;
    overflow: hidden;
    position: relative;
    z-index: 2;

}

.banner_box a:hover {
    opacity: 0.8 ;

}

.banner_box .overlay {
    position: absolute;
    width: 70%;
    height: 100%;
    z-index: 4;
}

.hfe-copyright-wrapper{
    max-width: 980px;
    text-align: center;
    margin: 2rem auto;
    color: #fff;
}


.name_img{
    max-width: 20%
}

footer{
    background-color: #228877
}

.recruit_outer{
    position: relative;
    height: 50vh;
}

.recruit_inner{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit- transform: translateY(-50%) translateX(-50%);
}


.case_flex{
    display: flex;
    width: 100%;
    flex-wrap: wrap;
}

.case_img{
    text-align: center;
}

.case_title{
    line-height: 180%;
    letter-spacing: 2px;
    color: #a30021;
    font-size: 1.5rem;
    padding: 0.25em 0.5em;
    /* color: #494949; */
    background: transparent;
    border-left: solid 5px #a30021;
}

.case_text_d{
    margin: 1rem
}

.section_5{
    max-width: 1200px;
    margin: auto;
    padding: 7rem 2rem
}

.section_5_1{
    background:#f0f2f7;
    padding: 7rem 2rem
}

.case_content{
    max-width: 1200px;
    margin: auto
}


@media screen and (max-width: 1024px) {
    .elementor-row {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }


    .section_5 {
        padding: 2rem 2rem;
    }
}


@media screen and (min-width: 768px) and (max-width: 1024px){
    .section_2_text_block{
        left: 33%;
    }

}

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

    .elementor-column {
        width: 100%;
    }

    .elementor-549 .elementor-element.elementor-element-1abe4af {
        width: 100%;
    }

    .case_flex {
        flex-flow: column;
    }

    .case_text_d{
        text-align: center
    }

    .order_text{
        order: -1;
    }

}

#footer {


}
#footer-menu {
    margin: 5rem auto 3rem auto;
    padding: 0;
    position: relative;
}
#footer-menu li {
    padding: 0.2rem 0;
    list-style: none;
}
#footer-menu li a, #footer-menu li a:visited {
    color: #fff;
    text-decoration: none;
}
#footer-menu li a:hover {
    color: #777;
}
#footer-menu li a:before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f0da";
    padding-right: 0.5rem;
}
#footer-menu .nav-item {
    border-bottom: none;
}
#footer-menu li.menu-item-119 a {
    font-size: 0.0000000001rem;
}
#footer-menu li.menu-item-119 a::before {
    content: '';
    background: url('../img/cs.png') no-repeat center center/contain;
    width: 100px;
    height: 40px;
    display: inline-block;
}

#footer-menu .sub-menu {
    display: grid;
    position:static;
    width:auto;
    box-shadow:none;

}


.footer_flex{
    display: flex;
    justify-content: center;
    max-width: 980px;
    margin: auto;
}

#footer-menu .menu-item:not(:last-child) {
    border-bottom: 0
}

#footer-menu{
    text-align: start;
}

.t_c{
    text-align: center
}

.t_r{
    text-align: right
}


@media  all and (min-width: 480px) {    /* col-sm- */


}
@media  all and (min-width: 768px) {    /* col-md- */



    .pc_br::before {
        content: "\A" ;
        white-space: pre ;
    }

    /* footer */
    #footer-menu {
        display: flex;
        justify-content: center;
    }
    #footer-menu li {
        display: inline-block;
        margin: 0 0.5rem;
    }

    .elementor-column.elementor-col-100, .elementor-column[data-col="100"] {
        width: 100%;
    }

    .study_title{
        background-color: #ac0010;
        padding: 2rem 2.7rem 2rem;
        position: relative;
        width: 44.6rem;
        color: aliceblue;
        line-height: 2;
        font-size: 1.2rem;
        top: 50%;
        left: 50%;
        transform: translateY(-50%) translateX(-50%);
        -webkit-transform: translateY(-50%) translateX(-50%);
        font-size: 2rem;
        text-align: center
    }

    .introduction_img_box{
        width: 40%;
    }

    .introduction_img_text{
        width: 60%
    }

    .google-maps {
        padding-bottom: 30%;
    }

    .case_img{
        width: 50%;
        text-align: center;
    }

    .case_text{
        width: 50%;
        padding: 0 1rem;
    }

}


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

    .banner_box .f_item {
        height: 140px;
    }

    .banner_box .f_item {
        height: 140px;
        width: 50%;
        -ms-flex: 1 0 auto;
        -webkit-flex: 1 0 auto;
        flex: 1 0 auto;
    }

}


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

    .technologies_text {
        font-size: 1.8rem;
    }
    .news-post {
        width: 100%;
        margin: 1rem;
    }

    .section_6{
        margin: 4rem 0
    }

    .pc_news_more_block{
        display: none
    }

    .sp_news_more_block{
        display: block
    }

    .news_more a {
        margin: auto
    }

    .jp_r_title_2 {
        position: relative;
        display: block;
        padding: 0 50px;
        font-size: 16px;
        width: 200px;
        margin: auto
    }

    .news_flex {
        display: block;
    }

    .r_title_news{
        text-align: center
    }

}


@media screen and (max-width: 991px) and (min-width: 768px){
    .introduction_img_box, .introduction_img_text {
        padding: 30px 10px 30px 10px;
    }
}


@media screen and (min-width: 981px) {


    .university_column_1 {
        width: 60%;
    }

    .university_column_2 {
        width: 40%;
        position: absolute;
        top: 20%;
        right: 30px;
        width: 40%
    }


    .university_column_text{
        padding: 40px 60px;
    }

    .half_box{
        width: 50%
    }


    .contact_main {
        padding: 7rem 0 0 5rem;

    }

    .section_6,.section_7,.section_8{
        padding: 0 0 100px 0;

    }


}
@media screen and (max-width: 980px) {
    .item_list .item {
        height: 100%;
    }

    .item_list .content {
        position: relative;
        width: 100%;
        padding: 15px;
        top: 0;
        -ms-transform: translateY(0%);
        -webkit-transform: translateY(0%);
        transform: translateY(0%);
    }

    .item_list .image_wrap {
        position: absolute;
        top: 0;
        left: 0;
    }

    .item_list .item a:after {
        width: 100%;
    }

    .university_column_text{
        padding: 30px 50px
    }

    .university_column_2{
        padding: 30px
    }

    .university_flex {
        justify-content: center
    }

    .half_box{
        width: 100%
    }

    .technologies_t_box {
        padding: 30px 0 0 0;
    }

    .flex-container{
        flex-direction:column;
    }


    .contact_main{
        min-height: auto;
        padding-top: 20px;
        width: 100%;
        order: 1
    }

    .contact_container{
        -webkit-box-direction: normal;
        -webkit-box-orient: vertical;
        -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: stretch;
        -ms-flex-align: stretch;
        -webkit-align-items: stretch;
        -moz-align-items: stretch;
        align-items: stretch;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        -webkit-justify-content: flex-start;
        -moz-justify-content: flex-start;
        justify-content: flex-start
    }

    .contact_side{
        height: auto;
        width: 100%;
        position: relative
    }

    .compiler_text_box{
        width: 100%
    }


}

@media screen and (max-width: 800px) {
    #footer-menu {
        text-align: center;
    }
}


@media screen and (min-width: 801px) {
    .projects_flex{
        display: flex
    }

    .projects_half{
        width: 50%;
        margin: 0 20px
    }

    .learning-data_flex{
        display: flex;
        justify-content: space-around;
    }
}


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

    .top_text {
        top: 50%;
        left: 50%;
        -ms-transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        /* font-size: 2.8rem; */
        font-size: 2rem;
    }


    .footer_flex{
        display: block
    }

    .introduction_img{
        width: 100%;
        max-width: 60%
    }

    .technologies_text {
        font-size: 1.4rem;
    }


    .technologies_sub_text {
        font-size: 1.2rem;
    }

    .technologies_midasi,.service_midasi {
        font-size: 1.4rem;
    }

    .flex-item dt {
        font-size: 1.45em;
    }

    .saiyo_table th {
        padding: 40px 0px;
    }

    .company-saiyo th,.company-saiyo td{
        display: block;
    }

    .saiyo_table th {
        width: auto;
        width: 100%
    }

    .company_table2 th {
        width: 100%
    }

    .elementor-column.elementor-col-100, .elementor-column[data-col="100"] {
        width: 100%;
    }


    .name_img{
        max-width: 40%
    }

    .study_title {
        font-size: 1.75rem;
    }

    .google-maps {
        padding-bottom: 75%;
    }

    .font_type2{
        font-size: 1.5rem;
    }


}


@media screen and (min-width: 576px) and (max-width: 767px){
    .container{
        max-width: 680px;
    }
}


@media  all and (max-width: 600px) {    /* col-sm- */


    .technologies_text {
        font-size: 1.3rem;
        padding: 2rem 0rem 1.5rem 95px
    }


    .technologies_text:before {
        position: absolute;
        top: -150%;
        left: -100px;
        width: 200px;
        height: 300%;
        content: '';
        -webkit-transform: rotate(25deg);
        transform: rotate(25deg);
    }

}

@media  all and (max-width: 480px) {    /* col-sm- */
    .mb_br::before {
        content: "\A" ;
        white-space: pre ;
    }

    .bp_block {
        display: block;
        position: relative;
        width: 91.923%;
        margin: auto;
    }


    .technologies_text {
        font-size: 1.3rem;
        padding: 2rem 0rem 1.5rem 100px;
        text-align: center;
    }

    .technologies_sub_text {
        padding: 2rem 0 1rem 0;
    }


    .technologies_sub_text {
        margin-bottom: 2rem;
        padding: 2rem 0 1rem 0;
        font-size: 1.3rem;
    }


    .technologies_t_box {
        padding: 0;
    }

    .technologies_midasi,.service_midasi {
        margin: 2rem 0 1rem 0;
    }

    .company_table2 td{
        padding: 10px
    }

    .study_title {
        font-size: 1.5rem;
    }

    .saiyo_midasi {
        font-size: 1.2rem;
    }

    .title_text {
        font-size: 2rem;

    }

    .contact_title {
        font-size: 2rem;
    }

    .top_text{
        font-size: 1.6rem;
    }
    
    .font_type2 {
        font-size: 1rem;
    }
}


/*!
*  - v1.5.0
* Homepage: http://bqworks.com/slider-pro/
* Author: bqworks
* Author URL: http://bqworks.com/
*/
/* Core
--------------------------------------------------*/
.slider-pro {
	position: relative;
	margin: 0 auto;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
}

.sp-slides-container {
	position: relative;
}

.sp-mask {
	position: relative;
	overflow: hidden;
}

.sp-slides {
	position: relative;
	-webkit-backface-visibility: hidden;
	-webkit-perspective: 1000;
}

.sp-slide {
	position: absolute;
}

.sp-image-container {
	overflow: hidden;
}

.sp-image {
	position: relative;
	display: block;
	border: none;
}

.sp-no-js {
	overflow: hidden;
	max-width: 100%;
}

/* Thumbnails
--------------------------------------------------*/
.sp-thumbnails-container {
	position: relative;
	overflow: hidden;
	direction: ltr;
}

.sp-top-thumbnails,
.sp-bottom-thumbnails  {
	left: 0;
	margin: 0 auto;
}

.sp-top-thumbnails {
	position: absolute;
	top: 0;
	margin-bottom: 4px;
}

.sp-bottom-thumbnails {
	margin-top: 4px;
}

.sp-left-thumbnails,
.sp-right-thumbnails {
	position: absolute;
	top: 0;
}

.sp-right-thumbnails {
	right: 0;
	margin-left: 4px;
}

.sp-left-thumbnails {
	left: 0;
	margin-right: 4px;
}

.sp-thumbnails {
	position: relative;
}

.sp-thumbnail {
    border: none;
}

.sp-thumbnail-container {
	position: relative;
	display: block;
	overflow: hidden;
	float: left;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.sp-rtl .sp-thumbnail-container {
	float: right;
}

/* Horizontal thumbnails
------------------------*/
.sp-top-thumbnails .sp-thumbnail-container,
.sp-bottom-thumbnails .sp-thumbnail-container {
	margin-left: 4px;
	margin-right: 4px;
}

.sp-top-thumbnails .sp-thumbnail-container:first-child,
.sp-bottom-thumbnails .sp-thumbnail-container:first-child {
	margin-left: 0;
}

.sp-top-thumbnails .sp-thumbnail-container:last-child,
.sp-bottom-thumbnails .sp-thumbnail-container:last-child {
	margin-right: 0;
}



/* Bottom thumbnails with pointer
---------------------------------*/
.sp-bottom-thumbnails.sp-has-pointer {
	margin-top: -13px;
}

.sp-bottom-thumbnails.sp-has-pointer .sp-thumbnail {
	position: absolute;
	top: 18px;
	margin-top: 0 !important;
}

.sp-bottom-thumbnails.sp-has-pointer .sp-selected-thumbnail:before {
	content: '';
	position: absolute;
	width: 100%;
	border-bottom: 5px solid #E72967;
	top: 0;
	margin-top: 13px;
}

.sp-bottom-thumbnails.sp-has-pointer .sp-selected-thumbnail:after {
	content: '';
	position: absolute;
	width: 0;
	height: 0;
	left: 50%;
	top: 0;
	margin-left: -8px;
	border-bottom: 13px solid #E72967;
	border-left: 8px solid transparent;
	border-right: 8px solid transparent;
}


/* Layers
--------------------------------------------------*/
.sp-layer {
	position: absolute;
	margin: 0;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-webkit-font-smoothing: subpixel-antialiased;
	-webkit-backface-visibility: hidden;
}

.sp-black {
	color: #FFF;
	background: rgb(0, 0, 0);
	background: rgba(0, 0, 0, 0.7);
}

.sp-white {
	color: #000;
	background: rgb(255, 255, 255);
	background: rgba(255, 255, 255, 0.7);
}

.sp-rounded {
	border-radius: 10px;
}

.sp-padding {
	padding: 10px;
}

/* Touch Swipe
--------------------------------------------------*/
.sp-grab {
	cursor: url(images/openhand.cur), move;
}

.sp-grabbing {
	cursor: url(images/closedhand.cur), move;
}

.sp-selectable {
	cursor: default;
}

/* Caption
--------------------------------------------------*/
.sp-caption-container {
	text-align: center;
	margin-top: 10px;
}

/* Full Screen
--------------------------------------------------*/
.sp-full-screen {
	margin: 0 !important;
	background-color: #000;
}

.sp-full-screen-button {
	position: absolute;
	top: 5px;
	right: 10px;
	font-size: 30px;
	line-height: 1;
	cursor: pointer;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.sp-full-screen-button:before {
	content: '\2195';
}

.sp-fade-full-screen {
	opacity: 0;
	-webkit-transition: opacity 0.5s;
	transition: opacity 0.5s;
}

.slider-pro:hover .sp-fade-full-screen {
	opacity: 1;
}

/* Buttons
--------------------------------------------------*/
.sp-buttons {
	position: relative;
	width: 100%;
	text-align: center;
	padding-top: 10px;
}

.sp-rtl .sp-buttons {
	direction: rtl;
}

.sp-full-screen .sp-buttons {
	display: none;
}

.sp-button {
	width: 10px;
	height: 10px;
	border: 2px solid #7BD;
	border-radius: 50%;
	margin: 7px;
	display: inline-block;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	cursor: pointer;
}

.sp-selected-button {
	background-color: #023;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.sp-button {
		width: 12px;
		height: 12px;
	}
}

@media only screen and (min-width: 568px) and (max-width: 768px) {
	.sp-button {
		width: 13px;
		height: 13px;
	}
}

@media only screen and (min-width: 320px) and (max-width: 568px) {
	.sp-button {
		width: 14px;
		height: 14px;
		margin: 5px;
	}
}

/* Arrows
--------------------------------------------------*/
.sp-arrows {
	position: absolute;
}

.sp-fade-arrows {
	opacity: 0;
	-webkit-transition: opacity 0.5s;
	transition: opacity 0.5s;
}

.sp-slides-container:hover .sp-fade-arrows {
	opacity: 1;
}

.sp-horizontal .sp-arrows {
	width: 100%;
	left: 0;
	top: 50%;
	margin-top: -15px;
}

.sp-vertical .sp-arrows {
	height: 100%;
	left: 50%;
	top: 0;
	margin-left: -10px;
}

.sp-arrow {
	position: absolute;
	display: block;
	width: 20px;
	height: 30px;
	cursor: pointer;
}

.sp-vertical .sp-arrow {
	-webkit-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	transform: rotate(90deg);
}

.sp-horizontal .sp-previous-arrow {
	left: 20px;
	right: auto;
}

.sp-horizontal.sp-rtl .sp-previous-arrow {
	right: 20px;
	left: auto;
}

.sp-horizontal .sp-next-arrow {
	right: 20px;
	left: auto;
}

.sp-horizontal.sp-rtl .sp-next-arrow {
	left: 20px;
	right: auto;
}

.sp-vertical .sp-previous-arrow {
	top: 20px;
}

.sp-vertical .sp-next-arrow {
	bottom: 20px;
	-webkit-transform: rotate(270deg);
	-ms-transform: rotate(270deg);
	transform: rotate(270deg);
}

.sp-previous-arrow:before,
.sp-previous-arrow:after,
.sp-next-arrow:before,
.sp-next-arrow:after {
	content: '';
	position: absolute;
	width: 50%;
	height: 50%;
	background-color: #FFF;
}

.sp-arrow:before {
	left: 30%;
	top: 0;
	-webkit-transform: skew(145deg, 0deg);
	-ms-transform: skew(145deg, 0deg);
	transform: skew(145deg, 0deg);
}

.sp-arrow:after {
	left: 30%;
	top: 50%;
	-webkit-transform: skew(-145deg, 0deg);
	-ms-transform: skew(-145deg, 0deg);
	transform: skew(-145deg, 0deg);
}

.sp-next-arrow {
	-webkit-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
	transform: rotate(180deg);
}

.sp-horizontal.sp-rtl .sp-previous-arrow {
	-webkit-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
	transform: rotate(180deg);
}

.sp-horizontal.sp-rtl .sp-next-arrow {
	-webkit-transform: rotate(0deg);
	-ms-transform: rotate(0deg);
	transform: rotate(0deg);
}

.ie8 .sp-arrow,
.ie7 .sp-arrow {
	width: 0;
	height: 0;
}

.ie8 .sp-arrow:before,
.ie8 .sp-arrow:after,
.ie7 .sp-arrow:before,
.ie7 .sp-arrow:after {
	content: none;
}

.ie8.sp-horizontal .sp-previous-arrow,
.ie7.sp-horizontal .sp-previous-arrow {
	border-right: 20px solid #FFF;
	border-top: 20px solid transparent;
	border-bottom: 20px solid transparent;
}

.ie8.sp-horizontal .sp-next-arrow,
.ie7.sp-horizontal .sp-next-arrow {
	border-left: 20px solid #FFF;
	border-top: 20px solid transparent;
	border-bottom: 20px solid transparent;
}

.ie8.sp-vertical .sp-previous-arrow,
.ie7.sp-vertical .sp-previous-arrow {
	border-bottom: 20px solid #FFF;
	border-left: 20px solid transparent;
	border-right: 20px solid transparent;
}

.ie8.sp-vertical .sp-next-arrow,
.ie7.sp-vertical .sp-next-arrow {
	border-top: 20px solid #FFF;
	border-left: 20px solid transparent;
	border-right: 20px solid transparent;
}

/* Thumbnail Arrows
--------------------------------------------------*/
.sp-thumbnail-arrows {
	position: absolute;
}

.sp-fade-thumbnail-arrows {
	opacity: 0;
	-webkit-transition: opacity 0.5s;
	transition: opacity 0.5s;
}

.sp-thumbnails-container:hover .sp-fade-thumbnail-arrows {
	opacity: 1;
}

.sp-top-thumbnails .sp-thumbnail-arrows,
.sp-bottom-thumbnails .sp-thumbnail-arrows {
	width: 100%;
	top: 50%;
	left: 0;
	margin-top: -12px;
}

.sp-left-thumbnails .sp-thumbnail-arrows,
.sp-right-thumbnails .sp-thumbnail-arrows {
	height: 100%;
	top: 0;
	left: 50%;
	margin-left: -7px;
}

.sp-thumbnail-arrow {
	position: absolute;
	display: block;
	width: 15px;
	height: 25px;
	cursor: pointer;
}

.sp-left-thumbnails .sp-thumbnail-arrows .sp-thumbnail-arrow,
.sp-right-thumbnails .sp-thumbnail-arrows .sp-thumbnail-arrow {
	-webkit-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	transform: rotate(90deg);
}

.sp-top-thumbnails .sp-previous-thumbnail-arrow,
.sp-bottom-thumbnails .sp-previous-thumbnail-arrow {
	left: 0px;
}

.sp-top-thumbnails .sp-next-thumbnail-arrow,
.sp-bottom-thumbnails .sp-next-thumbnail-arrow {
	right: 0px;
}

.sp-left-thumbnails .sp-previous-thumbnail-arrow,
.sp-right-thumbnails .sp-previous-thumbnail-arrow {
	top: 0px;
}

.sp-left-thumbnails .sp-next-thumbnail-arrow,
.sp-right-thumbnails .sp-next-thumbnail-arrow {
	bottom: 0px;
}

.sp-previous-thumbnail-arrow:before,
.sp-previous-thumbnail-arrow:after,
.sp-next-thumbnail-arrow:before,
.sp-next-thumbnail-arrow:after {
	content: '';
	position: absolute;
	width: 50%;
	height: 50%;
	background-color: #FFF;
}

.sp-previous-thumbnail-arrow:before {
	left: 30%;
	top: 0;
	-webkit-transform: skew(145deg, 0deg);
	-ms-transform: skew(145deg, 0deg);
	transform: skew(145deg, 0deg);
}

.sp-previous-thumbnail-arrow:after {
	left: 30%;
	top: 50%;
	-webkit-transform: skew(-145deg, 0deg);
	-ms-transform: skew(-145deg, 0deg);
	transform: skew(-145deg, 0deg);
}

.sp-next-thumbnail-arrow:before {
	right: 30%;
	top: 0;
	-webkit-transform: skew(35deg, 0deg);
	-ms-transform: skew(35deg, 0deg);
	transform: skew(35deg, 0deg);
}

.sp-next-thumbnail-arrow:after {
	right: 30%;
	top: 50%;
	-webkit-transform: skew(-35deg, 0deg);
	-ms-transform: skew(-35deg, 0deg);
	transform: skew(-35deg, 0deg);
}

.ie8 .sp-thumbnail-arrow,
.ie7 .sp-thumbnail-arrow {
	width: 0;
	height: 0;
}

.ie8 .sp-thumbnail-arrow:before,
.ie8 .sp-thumbnail-arrow:after,
.ie7 .sp-thumbnail-arrow:before,
.ie7 .sp-thumbnail-arrow:after {
	content: none;
}

.ie8 .sp-top-thumbnails .sp-previous-thumbnail-arrow,
.ie8 .sp-bottom-thumbnails .sp-previous-thumbnail-arrow,
.ie7 .sp-top-thumbnails .sp-previous-thumbnail-arrow,
.ie7 .sp-bottom-thumbnails .sp-previous-thumbnail-arrow {
	border-right: 12px solid #FFF;
	border-top: 12px solid transparent;
	border-bottom: 12px solid transparent;
}

.ie8 .sp-top-thumbnails .sp-next-thumbnail-arrow,
.ie8 .sp-bottom-thumbnails .sp-next-thumbnail-arrow,
.ie7 .sp-top-thumbnails .sp-next-thumbnail-arrow,
.ie7 .sp-bottom-thumbnails .sp-next-thumbnail-arrow {
	border-left: 12px solid #FFF;
	border-top: 12px solid transparent;
	border-bottom: 12px solid transparent;
}

.ie8 .sp-left-thumbnails .sp-previous-thumbnail-arrow,
.ie8 .sp-right-thumbnails .sp-previous-thumbnail-arrow,
.ie7 .sp-left-thumbnails .sp-previous-thumbnail-arrow,
.ie7 .sp-right-thumbnails .sp-previous-thumbnail-arrow {
	border-bottom: 12px solid #FFF;
	border-left: 12px solid transparent;
	border-right: 12px solid transparent;
}

.ie8 .sp-left-thumbnails .sp-next-thumbnail-arrow,
.ie8 .sp-right-thumbnails .sp-next-thumbnail-arrow,
.ie7 .sp-left-thumbnails .sp-next-thumbnail-arrow,
.ie7 .sp-right-thumbnails .sp-next-thumbnail-arrow {
	border-top: 12px solid #FFF;
	border-left: 12px solid transparent;
	border-right: 12px solid transparent;
}



.selbon_box {
    min-height: 100vh;
    display: flex;
    margin-top: 10px
}

.selbon_content {
    flex: 1;
    margin-left: 10px
}

.localNavigation {
    width: 300px;
    text-align: center;
    color: #fff;
    position: sticky;
    height: 100%;
    top: 130px
}

.side_product_name {
    text-align: center;
    height: auto;
    padding: 5rem 0 3rem;
    font-size: 1.4rem;
    color: #fff;
    font-weight: 800;
    background: #5d6366
}

.side_product_name_d {
    text-align: center;
    height: auto;
    font-size: 1.2rem;
    color: #000;
    font-weight: 800;
    border-bottom: 1px solid #037
}

.side_product_name_d:first-child {
    margin: 2rem 0
}

.s_content {
    padding: 1rem 1rem 2rem
}

.s_content_title {
    padding: .5rem 1rem;
    border-left: 3px solid #037;
    font-size: 1.4rem;
    margin: 3rem 0 1rem;
    font-weight: 700
}

.s_content_flex {
    display: flex;
    justify-content: center;
    flex-wrap: wrap
}

.site-main_s {
    margin: 7.5rem 0 0
}

.side_bar_now {
    color: #037;
    background: #f0f5ff
}

table.price_table th {
    color: #037;
    background: #f0f5ff
}

table.price_table td {
    padding: .5rem
}

.application-example_img {
    margin: 2rem 0 3rem;
    text-align: center
}

.selbon_as_setsumei {
    border: solid 3px #037;
    border-radius: 1rem;
    padding: 1rem;
    box-shadow: 0 10px 20px 0 rgba(0,0,0,.5);
    box-sizing: border-box;
    min-height: 130px;
    margin: 1rem;
    font-weight: 700;
    font-size: 1.2rem;
    background: #fffbec
}

.selbon_as_setsumei_box {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 50%
}

.side_bar_link {
    display: block;
    padding: 2rem
}

.side_bar_link:hover {
    background: #037;
    color: #fff !important
}

.side_bar_link_now {
    color: #004ea2 !important
}


.tab_table {
    width: calc(100%);
    table-layout: fixed;
    left: 0;
    position: relative;
    z-index: 1;
    display: table;
    margin: 0;
    padding: 0;
    min-height: 30px
}

.tab_table_block {
    position: relative
}

.tab {
    display: table-cell;
    padding: 0 1em;
    border-bottom: 2px solid transparent;
    vertical-align: middle;
    text-align: center;
    cursor: pointer;
    box-sizing: border-box;
    border-bottom-color: #d1d1d1
}

.tab:hover {
    border-bottom-color: #004ea2
}

.tab_box:hover {
    color: #004ea2
}

.tab_box {
    padding: .3em 0;
    width: 100%;
    height: 100%;
    display: block;
    font-weight: 700;
    font-size: 1.2rem
}

.tab_now {
    border-bottom-color: #004ea2
}

.tab_now_font {
    color: #004ea2 !important
}


/* アクティブな画像の枠線を変更 */
.sub-img li.current img {
    transition: border .5s;
}
.main-img {
 
    max-width: 430px
}
.main-img img {
    height: 320px;
    width: 100%;
}

.sub-img{
    padding: 0
}

.sub-img li {
margin-bottom: 5%;
    width: calc(75% / 1);
}
.sub-img li:nth-child(3n) {
    margin-right: 0;
}
.sub-img li img {
    transition: border .5s;
}
.sub-img img {
    cursor: pointer;
    width: 130px
}

.main-box{
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    max-width: 800px;
    margin: 4rem auto;
}


a.contact_btn {
    color: #fff;
    background-color: #f39800;
}

a.contact_btn {
    font-size: 1.5rem;
    position: relative;
    padding: 1.5rem 3rem 1.5rem 2rem
}

a.contact_btn i.fa {
    margin-right: 1rem
}

a.contact_btn:before {
    font-family: 'Font Awesome 5 Free';
    font-size: 1.6rem;
    line-height: 1;
    position: absolute;
    top: calc(50% - .8rem);
    right: 1rem;
    margin: 0;
    padding: 0;
    content: '\f054'
}

.f_contact_box {
    text-align: center;
    margin: 3rem auto 5rem;
}

.b_color{
    background: #000;
    width: 100%;
    height: 40px;
}