#anime_header{
	position:absolute;
	left:0;
	top:0;
	width:100%;
	background-color:#fff;
	z-index:1;
}
#container{
	padding-bottom:0;
}
@media screen and (max-width: 804px) {
#wrap{
	padding-top:0;
}

#anime_header{
	position:fixed;
	right:0px;
	top:0px;
	width:100%;
	z-index:1000;
	
	left:auto;
	z-index:2;
}
}

/* main */
#main{
	overflow:hidden;
	position:relative;
}
#main {
	height:800px;
}
.slick li a{
	height:800px;
}
.slick li a h2{
	text-indent:-999999px;
}
.slick li a .ttl h2{
	text-indent:inherit;
}
#main .ttl{
	position:absolute;
	left:0;
	top:50%;
	text-align:center;
	width:100%;
	-webkit-transform:translateY(-50%);
  transform:translateY(-50%);
	z-index:1;
}
#main .ttl h2{
	padding:0 40px;
}
#main .ttl span{
	display:block;
	-webkit-transition:opacity 0.6s;
	-moz-transition:opacity 0.6s;
	-ms-transition:opacity 0.6s;
	-o-transition:opacity 0.6s;
	transition:opacity 0.6s;
	opacity:0;
	margin:10px auto 0 auto;
	max-width:500px;
}
#main .fast-active{
	opacity:0 !important;
}
#main .fast-active .ttl span{
	opacity:0 !important;
}
#main .slick-active .ttl span{
	transition-delay:3s;
	opacity:1;
}
#main .ttl img{
	display:block;
	width:100%;
	height:auto;
	opacity:1 !important;
}
.fast-active path{
	fill:none !important;
	animation:none !important;
}
.slick-active path {
	fill:none;
	stroke-dasharray:3000;
	stroke-dashoffset:3000;
	animation:DASH 1.5s ease-in 1s forwards;
	-webkit-animation:DASH 2s ease-in 1s forwards;
}
@keyframes DASH {
	0% {
		stroke-dashoffset:3000;
		fill:rgba(255, 255, 255, 0);
	}
	50% {
		stroke-dashoffset:1500;
		fill:rgba(255, 255, 255, 0.1);
	}
	100% {
		stroke-dashoffset: 0;
		fill:rgba(255, 255, 255, 1);
	}
}
@-webkit-keyframes DASH {
    0% {
        stroke-dashoffset: 3000;
        fill: rgba(255, 255, 255, 0);
    }
    50% {
        stroke-dashoffset: 1500;
        fill: rgba(255, 255, 255, 0.1);
    }
    100% {
        stroke-dashoffset: 0;
        fill: rgba(255, 255, 255, 1);
    }
}

/*IE10だけに適用されるCSSハック*/
@media all and (-ms-high-contrast:none){
.fast-active path{
	fill:rgba(255, 255, 255, 1);
	animation:none !important;
}
.slick-active path {
	fill:rgba(255, 255, 255, 1) !important;
	animation:none !important;
}
#main .ttl span{
	opacity:1 !important;
}
#main .fast-active .ttl span{
	opacity:1 !important;
}
#main .slick-active .ttl span{
	opacity:1 !important;
}
}
 
/*IE11だけに適用されるCSSハック*/
@media all and (-ms-high-contrast:none){
*::-ms-backdrop, .fast-active path{
	fill:rgba(255, 255, 255, 1);
	animation:none !important;
}
*::-ms-backdrop, .slick-active path {
	fill:rgba(255, 255, 255, 1) !important;
	animation:none !important;
}
*::-ms-backdrop, #main .ttl span{
	opacity:1 !important;
}
*::-ms-backdrop, #main .fast-active .ttl span{
	opacity:1 !important;
}
*::-ms-backdrop, #main .slick-active .ttl span{
	opacity:1 !important;
}
}

/* slick reset */
.slick li{
	position:relative;
	background-position:center center;
	background-repeat:no-repeat;
	background-size:cover;
}
.slick li a{
	position:relative;
	background-position:center center;
	background-repeat:no-repeat;
	display:block;
	width:100%;
}
.slick li a.cover{
	background-size:cover;
}
.slick-slider{
	position:relative;
	display:block;
	box-sizing:border-box;
	-webkit-user-select:none;
	-moz-user-select:none;
	-ms-user-select:none;
	user-select:none;
	-webkit-touch-callout:none;
	-khtml-user-select:none;
	-ms-touch-action:pan-y;
	touch-action:pan-y;
	-webkit-tap-highlight-color:transparent;
  margin:0 auto;
}
.slick-list{
	position:relative;
	display:block;
	overflow:hidden;
	margin:0;
	padding:0;
}
.slick-list:focus{
	outline:none;
}
.slick-list.dragging{
	cursor:pointer;
	cursor:hand;
}
.slick-slider .slick-track,
.slick-slider .slick-list{
	-webkit-transform:translate3d(0, 0, 0);
	-moz-transform:translate3d(0, 0, 0);
	-ms-transform:translate3d(0, 0, 0);
	-o-transform:translate3d(0, 0, 0);
	transform:translate3d(0, 0, 0);
}
.slick-track{
	position:relative;
	top:0;
	left:0;
	display:block;
}
.slick-track:before,
.slick-track:after{
	display:table;
	content:'';
}
.slick-track:after{
clear:both;
}
.slick-loading .slick-track{
	visibility:hidden;
}
.slick-slide{
	display:none;
	float:left;
	height:100%;
	min-height:1px;
}
[dir='rtl'] .slick-slide{
	float:right;
}
.slick-slide img{
	display:block;
}
.slick-slide.slick-loading img{
	display:none;
}
.slick-slide.dragging img{
	pointer-events:none;
}
.slick-initialized .slick-slide{
	display:block;
}
.slick-loading .slick-slide{
	visibility:hidden;
}
.slick-vertical .slick-slide{
	display:block;
	height:auto;
	border:1px solid transparent;
}
.slick-arrow.slick-hidden {
	display:none;
}
.slick-prev,
.slick-next{
	font-size:0;
	line-height:0;
	position:absolute;
	display:none !important;
	width:43px;
	height:73px;
	padding:0;
	top:50%;
	-webkit-transform:translateY(-50%);
  transform: translateY(-50%);
	cursor:pointer;
	color:transparent;
	border:none;
	outline:none;
	background:transparent;
	z-index:1;
	width:26px;
	height:44px;
	background-size:26px 44px;
}
.slick-prev{
	left:40px;
	background-image:url(/img/index/main_arrow_prev.png);
}
.slick-next{
	right:40px;
	background-image:url(/img/index/main_arrow_next.png);
}
.slick-prev:hover,
.slick-next:hover{
	opacity:0.6;
}
.slick-dots{
	position:absolute;
	bottom:100px;
	left:0;
	width:100%;
	text-align:center;
}
.slick-dots li{
	overflow:hidden;
	display:inline-block;
	*display:inline;
	*zoom:1;
	width:14px;
	height:14px;
	background-color:#fff;
	margin:0 7px;
	border-radius:50%;
	-webkit-border-radius:50%;
	-moz-border-radius:50%;
	outline:none;
	opacity:0.6;
}
.slick-dots li:hover,
.slick-dots li.slick-active{
	opacity:1;
}
.slick-dots li button{
	font-size:0;
	line-height:0;
	display:block;
	padding-top:14px;
	height:0;
	widows:0;
	cursor:pointer;
	color:transparent;
	border:0;
	outline:none;
	background:transparent;
	border-radius:50%;
	-webkit-border-radius:50%;
	-moz-border-radius:50%;
}
.slick-dots li button:hover,
.slick-dots li button:focus{
	outline:none;
}
@media screen and (max-width: 1600px) {
.slick li a{
	background-position:center center;
	background-size:cover;
}
}

@media screen and (max-width: 1200px) {
#main {
	height:650px;
}
.slick li a{
	height:650px;
}
}
@media screen and (max-width: 804px) {
#main {
	height:340px;
	padding-top:10px;
}
.slick li a{
	height:340px;
}
#main .ttl{
	padding-top:53px;
}
#main .ttl h2{
	padding:0 20px;
}
#main .ttl span{
	margin:5px auto 0 auto;
	max-width:280px;
}
svg{
	width:280px !important;
	height:42px !important;
}
.slick li a{
	background-size:auto 150%;
}
.slick-prev,
.slick-next{
	width:18px;
	height:30px;
	background-size:18px 30px;
	bottom:20px;
	top:auto;
	-webkit-transform:translateY(0);
  transform: translateY(0);
}
.slick-prev{
	left:20px;
}
.slick-next{
	right:20px;
}
.slick-dots{
	bottom:15px;
}
}

/* section */
.section{
	position:relative;
	background-color:#fff;
}
#sec_service {
	padding:40px 0 180px 0;
}
#sec_about{
	background-color:#335A94;
	padding:40px 0 180px 0;
}
#sec_news{
	background-color:#EBEBEB;
	padding:80px 0 180px 0;
}
#sec_technology{
	background-color:#335A94;
	padding:40px 0 180px 0;
}
#sec_service::after,
#sec_about::after,
#sec_news::after,
#sec_technology::after {
	content:"";
	position:absolute;
	display: block;
	z-index:0;
	width:200%;
	height:200px;
	-webkit-transform: rotate(-3deg);
	-moz-transform: rotate(-3deg);
	-o-transform: rotate(-3deg);
	-ms-transform: rotate(-3deg);
	transform: rotate(-3deg);
	top:-80px;
	left:-50%;
	background-color:#fff;
}
#sec_about::after{
	background-color:#335A94;
}
#sec_news::after{
	background-color:#EBEBEB;
}
#sec_technology::after{
	background-color:#335A94;
}
.section .inner{
	position:relative;
	max-width:1200px;
	margin:0 auto;
	/*padding:0 40px;*/
	padding:0;
	z-index:1;
}
.section#sec_news .inner{
	max-width:1116px;
}
.section .inner #news{
	float:left;
	width:47.75%;
	margin-right:4.5%;
}
.section .inner #event{
	float:left;
	width:47.75%;
}
@media screen and (max-width: 1160px) {
.section .inner #news{
	float:none;
	width:100%;
	margin-right:0;
	/*padding-bottom:80px;*/
}
.section .inner #event{
	float:none;
	width:100%;
}
}
@media screen and (max-width: 804px) {
.section .inner{
	padding:0 20px;
}
#sec_service {
	padding:20px 0 100px 0;
}
#sec_about{
	padding:20px 0 40px 0;
}
#sec_news{
	padding:50px 0 80px 0;
}
#sec_technology{
	padding:20px 0 100px 0;
}
/*#sec_news::after{
	display:none;
}*/
#sec_service::after,
#sec_about::after,
#sec_news::after,
#sec_technology::after {
	height:100px;
	top:-30px;
}
}

/* ttl */
.section .ttl{
	text-align:center;
	border-bottom:1px solid #315996;
	margin-bottom:60px;
}
.section#sec_news .ttl{
	text-align:left;
	padding:0 10px 15px;
	margin-bottom:0;
}
.section#sec_about .ttl{
	border-bottom:1px solid #fff;
}
.section#sec_technology .ttl{
	border-bottom:1px solid #fff;
}
.section .ttl h3{
	color:#315996;
	margin-bottom:-12px;
}
.section#sec_about .ttl h3{
	color:#fff;
}
.section#sec_news .ttl h3{
	margin-bottom:0;
}
.section#sec_technology .ttl h3{
	color:#fff;
}
.section .ttl h3 strong{
	display:block;
	font-family:'Oswald', arial, serif;
	font-size:38px;
	margin-bottom:15px;
}
.section .ttl h3 span{
	display:inline-block;
  *display:inline;
  *zoom:1;
	font-size:14px;
	background-color:#fff;
	padding:0 5px;
}
.section#sec_about .ttl h3 span{
	background-color:#315996;
}
.section#sec_news .ttl h3 span{
	padding:0;
	background-color:transparent;
}
.section#sec_technology .ttl h3 span{
	background-color:#355B92;
}
@media screen and (max-width: 804px) {
.section .ttl{
	margin-bottom:30px;
}
.section .ttl h3{
	margin-bottom:-10px;
}
.section .ttl h3 strong{
	font-size:30px;
	margin-bottom:10px;
}
.section .ttl h3 span{
	font-size:12px;
	padding:0 5px;
}
}

/* col4 */
.col4{
	overflow:hidden;
	margin-right:-20px;
	margin-bottom:-50px;
}
.col4 li{
	position:relative;
	float:left;
	width:25%;
	margin-bottom:50px;
}
.col4 li a{
	display:block;
	margin-right:20px;
	text-decoration:none;
	padding-bottom:40px;
}
.col_cn a{
	border-bottom:2px solid #B7552A;
}
.col_so a{
	border-bottom:2px solid #008AD3;
}
.col_be a{
	border-bottom:2px solid #A3CE72;
}
.col_me a{
	border-bottom:2px solid #F6BB6D;
}
.col_if a{
	border-bottom:2px solid #FFC000;
}
.col_se a{
	border-bottom:2px solid #4D5EA4;
}
.col_ha a{
	border-bottom:2px solid #58BE89;
}
.col_pro a{
	border-bottom:2px solid #8D9EB2;
}
#sec_technology .col4 li a{
	border-bottom:none;
	padding-bottom:0;
	text-align:center;
}
.col4 li a .img{
	overflow:hidden;
	position:relative;
	margin-bottom:30px;
	padding-top:55%;
}
.col4 li a .img img{
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:auto;
	-webkit-transition:width 0.3s,margin 0.3s;
	-moz-transition:width 0.3s,margin 0.3s;
	-ms-transition:width 0.3s,margin 0.3s;
	-o-transition:width 0.3s,margin 0.3s;
	transition:width 0.3s,margin 0.3s;
}
.col4 li a:hover .img img{
	width:110%;
	margin:-5% 0 0 -5%;
}
.col4 li a .txt h4{
	margin-bottom:20px;
}
#sec_technology .col4 li a .txt h4{
	color:#fff;
	font-size:37px;
	line-height:1.2;
	margin-bottom:0;
}
.col4 li a .txt h4 img{
	opacity:1 !important;
	width:100%;
	height:auto;
}
.col4 li a .txt p{
	margin:0 20px;
	font-size:93%;
	line-height:1.8em;
}
#sec_technology .col4 li a .txt p{
	color:#fff;
	font-size:108%;
	line-height:1.5;
	font-weight:bold;
	margin:0;
}
@media screen and (max-width: 1000px) {
.col4 li{
	width:33.333333%;
}
}
@media screen and (max-width: 804px) {
.col4 li{
	width:50%;
}
#sec_technology .col4 li a .txt h4{
	font-size:20px;
}
.col4 li a .txt p{
	margin:0 10px;
}
#sec_technology .col4 li a .txt p{
	font-weight:normal;
	font-size:93%;
}
}
@media screen and (max-width: 450px) {
.col4{
	margin-right:-10px;
	margin-bottom:-40px;
}
.col4 li{
	width:50%;
	margin-bottom:40px;
}
.col4 li a{
	padding-bottom:15px;
	margin-right:10px;
}
.col4 li a .img{
	margin-bottom:15px;
}
.col4 li a .txt h4{
	margin-bottom:10px;
}
.col4 li a .txt p{
	margin:0;
	font-size:11px;
}
}

/* sec_service */
#sec_service .col3{
	overflow:hidden;
	margin-right:-60px;
	margin-bottom:-50px;
}
#sec_service .col3 li{
	position:relative;
	float:left;
	width:33.333333%;
	margin-bottom:50px;
}
#sec_service .col3 li a{
	display:block;
	margin-right:60px;
	text-decoration:none;
	padding-bottom:40px;
}
.col_cn a{
	border-bottom:2px solid #B7552A;
}
.col_so a{
	border-bottom:2px solid #008AD3;
}
.col_be a{
	border-bottom:2px solid #A3CE72;
}
.col_me a{
	border-bottom:2px solid #F6BB6D;
}
.col_if a{
	border-bottom:2px solid #FFC000;
}
.col_se a{
	border-bottom:2px solid #4D5EA4;
}
.col_ha a{
	border-bottom:2px solid #58BE89;
}
.col_pro a{
	border-bottom:2px solid #8D9EB2;
}
.col_sp a{
	border-bottom:2px solid #003b74;
}
#sec_service .col3 li a .img{
	overflow:hidden;
	position:relative;
	margin-bottom:30px;
	padding-top:56.112%;
}
#sec_service .col3 li a .img img{
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:auto;
	-webkit-transition:width 0.3s,margin 0.3s;
	-moz-transition:width 0.3s,margin 0.3s;
	-ms-transition:width 0.3s,margin 0.3s;
	-o-transition:width 0.3s,margin 0.3s;
	transition:width 0.3s,margin 0.3s;
}
#sec_service .col3 li a:hover .img img{
	width:110%;
	margin:-5% 0 0 -5%;
}
#sec_service .col3 li a .new{
	width: 74px;
	height: 74px;
	position: absolute;
	left: 0;
	top: 0;
	background-image: url("/img/index/bnr_new.png");
	background-size: cover;
}
#sec_service .col3 li a .txt h4{
	margin-bottom:20px;
}
#sec_service .col3 li a .txt h4 img{
	opacity:1 !important;
	width:100%;
	height:auto;
}
#sec_service .col3 li a .txt p{
	margin:0 20px;
	font-size:93%;
	line-height:1.8em;
}
@media screen and (max-width: 1000px) {
#sec_service .col3{
	margin-right:-20px;
}
#sec_service .col3 li a{
	margin-right:20px;
}
}
@media screen and (max-width: 804px) {
#sec_service .col3{
	margin-bottom:-40px;
}
#sec_service .col3 li{
	width:50%;
	margin-bottom:40px;
}
#sec_service .col3 li:nth-child(3){
	clear:left;
}
#sec_service .col3 li a .new{
	width: 45px;
	height: 45px;
}
}
@media screen and (max-width: 450px) {
#sec_service .col3{
	margin-right:-10px;
	margin-bottom:-40px;
}
#sec_service .col3 li{
	width:50%;
	margin-bottom:40px;
}
#sec_service .col3 li a{
	padding-bottom:15px;
	margin-right:10px;
}
#sec_service .col3 li a .img{
	margin-bottom:15px;
}
#sec_service .col3 li a .txt h4{
	margin-bottom:10px;
}
#sec_service .col3 li a .txt p{
	margin:0;
	font-size:11px;
}
}

/* sec_about */
#sec_about .col3{
	overflow:hidden;
	margin-right:-60px;
}
#sec_about .col3 li{
	float:left;
	width:33.333333%;
}
#sec_about .col3 li a{
	position:relative;
	display:block;
	margin-right:60px;
	text-decoration:none;
}
#sec_about .col3 li a .img{
	overflow:hidden;
	position:relative;
	margin-bottom:30px;
	padding-top:55%;
	background-color:#fff;
}
#sec_about .col3 li a .img img{
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:auto;
	-webkit-transition:width 0.3s,margin 0.3s;
	-moz-transition:width 0.3s,margin 0.3s;
	-ms-transition:width 0.3s,margin 0.3s;
	-o-transition:width 0.3s,margin 0.3s;
	transition:width 0.3s,margin 0.3s;
}
#sec_about .col3 li a:hover .img img{
	width:110%;
	margin:-5% 0 0 -5%;
}
#sec_about .col3 li a h4{
	text-align:center;
	color:#fff;
}
#sec_about .col3 li a h4 strong{
	display:block;
	font-family:'Oswald', arial, serif;
	font-size:22px;
	font-weight:normal;
	margin-bottom:5px;
}
#sec_about .col3 li a h4 span{
	display:block;
	font-size:93%;
	line-height:1.2em;
}
@media screen and (max-width: 1000px) {
#sec_about .col3{
	margin-right:-20px;
}
#sec_about .col3 li a{
	margin-right:20px;
}
}
@media screen and (max-width: 804px) {
#sec_about .col3{
	margin-bottom:-40px;
}
#sec_about .col3 li{
	width:50%;
	margin-bottom:40px;
}
#sec_about .col3 li:nth-child(3){
	clear:left;
}
#sec_about .col3 li a .img{
	margin-bottom:15px;
}
#sec_about .col3 li a h4 strong{
	font-size:16px;
	margin-bottom:3px;
}
#sec_about .col3 li a h4 span{
	font-size:11px;
	font-weight:normal;
}
}
@media screen and (max-width: 450px) {
#sec_about .col3{
	margin-right:-10px;
	margin-bottom:-15px;
}
#sec_about .col3 li{
	margin-bottom:15px;
}
#sec_about .col3 li a{
	margin-right:10px;
}
}

.triangle{
	width:20px;
	position:absolute;
	left:0;
	top:0;
	z-index:1;
}
.triangle img{
	width:100%;
	height:auto;
	opacity:1 !important;
}

/* info_list */
.info_list{
	margin:0;
}
.info_list li{
	border-bottom:1px solid #315996;
	padding:20px 0;
	min-height:4.80em;
}
.info_list li a{
	display:block;
	text-decoration:none;
	color:#315996;
	font-size:108%;
	font-weight:bold;
	margin-left:11.2em;
	text-indent:-11.2em;
}
.info_list li a:hover{
	text-decoration:underline;
}
.info_link{
	text-align:center;
	margin:0 50px;
	padding-top:50px;
	clear:both;
}
.info_link a{
	display:inline-block;
	*display:inline;
	*zoom:1;
	text-decoration:none;
	color:#315996;
	font-size:108%;
	font-weight:bold;
	line-height:1em;
	height:12px;
	padding-right:16px;
	background-image:url(/common/img/more_arrow.png);
	background-repeat:no-repeat;
	background-position:right 0px;
}
.info_link a:hover{
	text-decoration:underline;
	background-position:right -12px;
}
@media screen and (max-width: 1160px) {
.info_list li{
	min-height:0;
}
}
@media screen and (max-width: 1000px) {
.info_list{
	margin:0;
}
.info_link{
	margin:0;
}
}
@media screen and (max-width: 804px) {
.info_list li{
	padding:12px 10px;
}
.info_list li a{
	display:block;
	text-decoration:none;
	color:#315996;
	font-size:108%;
	font-weight:bold;
	margin-left:0;
	text-indent:0;
	font-size:12px;
}
.info_list a span{
	display:block;
}
.info_link{
	margin:0 0;
	padding-top:20px;
}
.info_link a{
	font-size:12px;
	background-image:url(/common/img/more_arrow_sp.png);
	background-size:9px 24px;
}
}

/* info_bnr */
.info_bnr{
	margin:15px 0 0;
	font-size:0;
}
.info_bnr li{
	display:inline-block;
	margin:10px 10px 0 0;
}
@media screen and (max-width: 1000px) {
.info_bnr{
	margin:15px 0 0;
}
}
@media screen and (max-width: 804px) {
.info_bnr{
	margin:15px 0 0;
	text-align:center;
}
.info_bnr li{
	margin:10px 5px 0;
}
}

#tfs{
	text-align:center;
	color:#fff;
	padding:40px 0;
	border-bottom:1px solid #fff;
}
#tfs .subttl{
	text-align:center;
	border-bottom:1px solid #fff;
	margin-bottom:60px;
}
#tfs .subttl strong{
	display:block;
	margin-bottom:-12px;
}
#tfs .subttl strong span{
	display:inline-block;
  *display:inline;
  *zoom:1;
	font-size:14px;
	background-color:#fff;
	padding:0 5px;
	background-color:#315996;
}
#tfs .logo{
	max-width:430px;
	margin:0 auto;
	padding:0 20px;
}
#tfs .logo img{
	width:100%;
	height:auto;
}
#tfs p{
	line-height:2;
	margin-top:20px;
}
#tfs a.link{
	display:inline-block;
	color:#fff;
	text-decoration:none;
	margin-top:20px;
}
#tfs a.link:hover{
	text-decoration:underline;
}
@media screen and (max-width: 804px) {
#tfs{
	padding:40px 0 0 0;
	border-bottom:none;
}
#tfs .subttl{
	margin-bottom:30px;
}
#tfs .subttl strong{
	margin-bottom:-10px;
}
#tfs .subttl strong span{
	font-size:12px;
}
#tfs p{
	text-align:left;
	font-size:12px;
	padding:0 20px;
}
#tfs p br{
	display:none;
}
#tfs a.link{
	font-size:12px;
	margin-top:20px;
}
}


/*----/ 202310追記 /----*/
a:hover img{
	opacity: inherit;
	filter: none;
}
.inset__fx__sb-wp {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.inset__fx__sb-nwp {
  display: flex;
  justify-content: space-between;
}
.inset__fx__ct {
  display: flex;
  justify-content: center;
}
.inset__w-half {
  width: 47% !important;
}
.inset__w-onethird {
  width: 30%;
}
.inset__w-quarter {
  width: 22.5% !important;
}

.inset__fullimg img {
  width: 100%;
  height: auto;
}
.inset_gap_A {
  gap: 3em;
}
/*body#toppage {
  font-size: 0.94em !important;
}*/
#header {
  font-size: 13px;
}

.section .ttl {
  margin-bottom: 15px;
}
.section .ttl h3 {
  margin-bottom: -15px;
}

.section .ttl h3 strong {
  font-size: 3em;
  margin-bottom: 0;
}
.section .ttl h3 span {
  font-size: 1em;
  font-weight: 500;
}

#sec_service ul li {
  margin-top: 4em;
}

#sec_service .txt {
  color: #222;
}
#sec_service .txt h4 {
  min-height: 42px;
  font-size: 2.4em;
  font-weight: 500;
  line-height: 1em;
  text-align: center;
}
#sec_service .txt h4.mini {
  font-size: 1.33em;
  line-height: 42px;
}
#sec_service .txt h4 img.sizeA {
  height: 1.12em;
  width: auto;
}
#sec_service .txt h4 img.sizeB {
  height: 0.8em;
  width: auto;
}

#sec_service .txt h5 {
  margin-bottom: 10px;
  font-size: 1.07em;
  font-weight: 600;
  text-align: center;
}
#sec_service .txt p {
  margin-top: 15px;
}

#sec_technology .col4 li a .txt h4 {
  margin-top: 10px;
  font-size: 1.6em !important;
  font-weight: 500;
}
#sec_technology .col4 li a .txt p.en {
  margin-top: 25px;
  font-size: 0.93em;
  font-weight: 400;
  color: #ACBCD5;
}
#sec_technology .col4 li a .txt p.jp {
  margin-top: 10px;
  font-size: 0.93em;
  font-weight: 400;
}
#sec_technology .col4 li a img {
  border-radius: 16px;
}
.section#sec_technology .ttl h3 span {
  color: #FFF;
}
#sec_about {
  padding-bottom: 200px;
}
#sec_csr {
	padding:40px 0 120px 0;
}
#sec_csr::after {
	content:"";
	position:absolute;
	display: block;
	z-index:0;
	width:200%;
	height:200px;
	-webkit-transform: rotate(-3deg);
	-moz-transform: rotate(-3deg);
	-o-transform: rotate(-3deg);
	-ms-transform: rotate(-3deg);
	transform: rotate(-3deg);
	top:-80px;
	left:-50%;
	background-color:#fff;
}
@media screen and (max-width: 804px) {
  .section .inner{
	  padding:0 20px;
  }
  #sec_csr {
	  padding:20px 0 100px 0;
  }
  #sec_csr::after {
	  height:100px;
	  top:-30px;
  }
}
.section#sec_news .inner {
  max-width: 1200px;
}
.section .inner #news {
  float: none;
  width: inherit;
  margin-right: inherit;
}
.section .inner #event {
  float: none;
  width: inherit;
}
.section#sec_news .ttl {
  text-align: center;
  padding: inherit;
  margin-bottom: 60px;
}
.section#sec_news .ttl h3 {
  margin-bottom: -12px;
}
.section#sec_news .ttl h3 span {
  padding: 0 5px;
  background-color: #EBEBEB;
}
.section#sec_news .article {
  min-height: 3.5em;
  margin-bottom: 1.33em;
  padding: 0 0.5em 1.33em 0.5em;
  font-weight: 500;
  border-bottom: 1px solid #BBB;
}
.section#sec_news .article dt {
  float: left;
  width: 9.5em;
  color: #777;
}
.section#sec_news .article dd {
  margin-left: 9.5em;
  position: relative;
}
.section#sec_news .article dd a {
  /*display: inline-block;*/
  /*padding-bottom: 2px;*/
  text-decoration: none;
  border-bottom-width: 2px;
  border-bottom-style: solid;
  border-bottom-color: transparent;
  transition: 0.4s all;
}
/*.section#sec_news .article dd a::before {
  content: url("../assets/common/img/icon_link_pdf.png");
  position: absolute;
  top: 0;
  left: -2em;
}*/
.section#sec_news .article dd a:hover {
  color: #315996;
  border-bottom-width: 2px;
  border-bottom-color: #315996;
  /*border-bottom-color: transparent;*/
  /*transform: translateY(-4px);*/
}


.col4 {
  overflow: inherit;
  margin-right: 0;
}
.col4 li {
  position: inherit;
  float: inherit;
  width: inherit;
}
.col4 li a {
  display: inherit;
  margin-right: 0;
}
.info_list li {
  border-bottom: 1px solid #BBB;
}
.info_list li span {
  margin-right: 2em;
  font-weight: 400;
}
.info_list li a {
  display: inline-block;
  font-weight: 500;
  color: inherit;
}

.info_link {
  max-width: 1200px;
  margin: 0 auto;
  text-align: center;
}
.info_link a,
.info_link_B a {
  /*display: block;*/
  width: 16em;
  height: inherit;
  padding: 1.5em 2em;
  text-align: left;
  font-weight: 500;
  color: #FFF;
  background-color: #333;
  border-radius: 32px;
  position: relative;
  transition: 0.8s;
}
.info_link a:hover,
.info_link_B a:hover {
  background-color: #019FE0;
  text-decoration: none;
  transform: translateX(1em)
}
.info_link a::after,
.info_link_B a::after {
  /*content: url("../assets/common/img/icon_arrow_circle-w.svg");
  position: absolute;
  top: 1.25em;
  right: 1.5em;
  transition: 0.8s;*/
}
.info_link a:hover::after,
.info_link_B a:hover::after {
  /*content: url("../assets/common/img/icon_arrow_circle-lb.svg");*/
}
.info_link_B a {
  text-decoration: none;
  padding: 1.2em 2em;
  border-radius: 30px;
}
.info_bnr li {
  display: inherit;
  margin: 0 0 0 0;
}
.link__about {
  position: relative;
}
.link__about img {
  border-radius: 16px;
}
.link__about__txt {
  font-size: 1.33em;
  font-weight: 500;
  color: #FFF;
  position: absolute;
  top: 50%;
  left: 5%;
  transform: translate(0%, -50%);
  -webkit-transform: translate(0%, -50%);
  -ms-transform: translate(0%, -50%);
}
.link__about__txt strong {
  display: inline-block;
  margin-right: 0.5em;
  font-family: 'Oswald', arial, serif;
  font-size: 2.4em;
  position: relative;
  top: 8px;
}
.info_bnr {
  font-size: inherit; 
}