@charset "utf-8";



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

    Structure= Frame

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

div#frame {

	margin-bottom: 15px;

	width: 100%;

	text-align: center;

}


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

    Structure= Contents Area

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

#contentsArea {

	zoom: 1;

	margin: 0 auto 10px;

	width: 1080px;

	text-align: left;

}


#contentsArea:after {

	content: ".";

	display: block;

	clear: both;

	height: 0;

	visibility: hidden;

}


#contentsArea h1 {

	float: left;

	margin-bottom: 4px;

	width: 190px;

}



#contentsArea h1.hdType01,
#contentsArea h1.hdType02 {

	padding: 15px 7px;

	width: 176px;

	min-height: 66px;

	_height: 66px;

	color: #fff;

	background: #dc0000 url("../img/bg_h1.gif") 0 0 no-repeat;

	font-size: 2.2em;

	line-height: 1.2;

}


#contentsArea h1.hdType01 {

	font-size: 2.2em;

}


#contentsArea h1.hdType02 {

	font-size: 1.8em;

}


body#portal #contentsArea h1 {

	float: none;

	margin-bottom: 18px;

	width: auto;

}


#contentsArea div.mainVisual {

	margin: 0 0 5px;

}


#contentsArea div.mainVisual h1 {

	float: none;

	margin: 0;

	width: auto;

}


/* ------------------------------------------------2015.12.24 update--

    Structure= Topic Path

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

#topicPath {
	clear: both;
	width: 100%;
	margin: 0 0 30px 0;
	border-bottom: 1px solid #e2e2e2;
	/*font-size:0.9em;*/
	text-align: left;
}

#topicPath p {
	width: 882px;
	margin: 5px auto;
}

#topicPath p span {
	position: absolute;
	top: -9999px;
	left: -9999px;
}



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

    Structure= Main Column

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

#mainColumn {

	float: right;

	width: 672px;

	_overflow: hidden;

}


body#portal #mainColumn {

	float: left;

	width: 578px;

}


body.col-m #mainColumn {

	float: none;

	width: 882px;

}


body.col-ms #mainColumn {

	float: left;

	margin-right: 11px;

	width: 578px;

}


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

    Structure= Sub Column

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

#subColumn {

	clear: left;

	float: left;

	width: 190px;
	opacity: 0;
	visibility: hidden;
}
#subColumn.on{
	opacity: 1;
	visibility: visible;
}

body#portal #subColumn {

	clear: none;

	float: right;

	width: 284px;

}


body.col-ms #subColumn {

	clear: none;

	float: left;

	width: 283px;

}



/* ##################################################

サイドメニュー  2019年11月〜 リニューアル対応分 WID Azusa

################################################## */
/* --------------------------------------------------

    Structure= Topic Path

----------------------------------------------------------------- */
#topicPath {
	margin: 0;
	border-bottom: none;
}

#topicPath p {
	font-family: 'Noto Sans JP', sans-serif;
	padding-left: 10.8px;
	width: 96%;
	max-width: 1080px;
	font-size: 13px;
}
#topicPath p a {
	padding: 5px 0;
	display: inline-block;
	color: #1b1b1b;
}

.hd_h1 {
	margin-bottom: 30px;
	padding: 35px 10px;
	background: #fff url("../img/bg_hd_h1.png") 0 0 no-repeat;
	background-position: 100% 10%;
	min-height: 176px;
	box-sizing: border-box;
}

.hd_h1 .hdType01, .hd_h1 .hdType02 {
	margin: auto;
	width: 1080px;
	text-align: left;
	font-size: 28px;
}
.hd_h1 p {
	margin: auto;
	width: 1080px;
	text-align: left;
	font-size: 18px;
}

#subColumn {
	width: 250px;
}


@media screen and (max-width: 1100px) {
	#contentsArea {
		width: 100%;
	}

	.hd_h1 .hdType01, .hd_h1 .hdType02 {
		width: 100%;
	}

	.hd_h1 p {
		width: 100%;
	}

	#subColumn {
		width: 23%;
		padding-left: 10px;
	}
}


@media screen and (max-width: 767px) {
	.hd_h1 {
		margin-right: calc(50% - 50vw);
		margin-left: calc(50% - 50vw);
		padding: 32px 10px;
		background: #fff url("../img/bg_hd_h1_sp.png") 0 0 no-repeat;
		background-position: center;
	}

	.hd_h1 .hdType01, .hd_h1 .hdType02 {
		width: 100%;
		font-size: 22px;
	}

	.hd_h1 p {
		width: 100%;
		font-size: 13px;
	}


}

/*リファレンス*/
#_case .contents_block2.caselist, .contents_block2._service, .contents_block2.overview_link, .contents_block2.service {
	display: flex;
	flex-wrap: wrap;
	padding-bottom: 50px
}

#_case .contents_block2.caselist li, .contents_block2._service li, .contents_block2.overview_link li, .contents_block2.service li {
	width: 50%;
	position: relative
}

#_case .contents_block2.caselist li a, .contents_block2._service li a, .contents_block2.overview_link li a, .contents_block2.service li a {
	display: block;
	color: #fff
}

#_case .contents_block2.caselist li a p, .contents_block2._service li a p, .contents_block2.overview_link li a p, .contents_block2.service li a p {
	padding-bottom: 56.4814%;
	position: relative;
	overflow: hidden
}

#_case .contents_block2.caselist li a p img, .contents_block2._service li a p img, .contents_block2.overview_link li a p img, .contents_block2.service li a p img {
	width: 101%;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	transition: .5s
}

#_case .contents_block2.caselist li a dl, .contents_block2._service li a dl, .contents_block2.overview_link li a dl, .contents_block2.service li a dl {
	width: 100%;
	position: absolute;
	bottom: 0;
	left: 0;
	box-sizing: border-box;
	padding: 2em;
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, .5) 30%, rgba(0, 0, 0, .8) 88%, rgba(0, 0, 0, .8) 99%)
}

#_case .contents_block2.caselist li a dl dt, .contents_block2._service li a dl dt, .contents_block2.overview_link li a dl dt, .contents_block2.service li a dl dt {
	font-size: 180%;
	font-weight: 600;
	margin-bottom: 3%
}

#_case .contents_block2.caselist li a dl dd, .contents_block2._service li a dl dd, .contents_block2.overview_link li a dl dd, .contents_block2.service li a dl dd {
	line-height: 1.6;
	font-size: 160%
}

#_case .contents_block2.caselist li:hover p img, .contents_block2._service li:hover p img, .contents_block2.overview_link li:hover p img, .contents_block2.service li:hover p img {
	width: 120%
}

@media screen and (max-width: 768px) {
	#_case .contents_block2.caselist li:hover p img, .contents_block2._service li:hover p img, .contents_block2.overview_link li:hover p img, .contents_block2.service li:hover p img {
		width: 101%
	}
}

@media screen and (max-width: 768px) {
	#_case .contents_block2.caselist, .contents_block2._service, .contents_block2.overview_link, .contents_block2.service {
		padding-bottom: 5%
	}

	#_case .contents_block2.sp_flex_col1.caselist li, .contents_block2.sp_flex_col1._service li, .contents_block2.sp_flex_col1.overview_link li, .contents_block2.sp_flex_col1.service li {
		width: 100%;
		margin-bottom: 10px;
		font-size: 2vw
	}

	#_case .contents_block2.sp_flex_col1.caselist li:last-child, .contents_block2.sp_flex_col1._service li:last-child, .contents_block2.sp_flex_col1.overview_link li:last-child, .contents_block2.sp_flex_col1.service li:last-child {
		margin-bottom: 0
	}
}

#_case .flex_col3.caselist, .flex_col3._service, .flex_col3.overview_link, .flex_col3.service {
	display: flex;
	flex-wrap: wrap;
	padding-bottom: 50px
}

#_case .flex_col3.caselist li, .flex_col3._service li, .flex_col3.overview_link li, .flex_col3.service li {
	width: 33.3333%;
	position: relative
}

#_case .flex_col3.caselist li a, .flex_col3._service li a, .flex_col3.overview_link li a, .flex_col3.service li a {
	display: block;
	color: #fff
}

#_case .flex_col3.caselist li a p, .flex_col3._service li a p, .flex_col3.overview_link li a p, .flex_col3.service li a p {
	position: relative;
	overflow: hidden
}

#_case .flex_col3.caselist li a p img, .flex_col3._service li a p img, .flex_col3.overview_link li a p img, .flex_col3.service li a p img {
	width: 101%;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	transition: .5s
}

#_case .flex_col3.caselist li a dl, .flex_col3._service li a dl, .flex_col3.overview_link li a dl, .flex_col3.service li a dl {
	width: 100%;
	position: absolute;
	bottom: 0;
	left: 0;
	box-sizing: border-box;
	padding: 1em;
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, .5) 30%, rgba(0, 0, 0, .8) 88%, rgba(0, 0, 0, .8) 99%)
}

#_case .flex_col3.caselist li a dl dt, .flex_col3._service li a dl dt, .flex_col3.overview_link li a dl dt, .flex_col3.service li a dl dt {
	font-size: 180%;
	font-weight: 600;
	margin-bottom: 3%
}

@media screen and (max-width: 768px) {
	#_case .flex_col3.caselist li a dl dt, .flex_col3._service li a dl dt, .flex_col3.overview_link li a dl dt, .flex_col3.service li a dl dt {
		font-size: 213.333%
	}
}

#_case .flex_col3.caselist li a dl dd, #_case .flex_col3.caselist li a dl h3, .flex_col3._service li a dl dd, .flex_col3._service li a dl h3, .flex_col3.overview_link li a dl dd, .flex_col3.overview_link li a dl h3, .flex_col3.service li a dl dd, .flex_col3.service li a dl h3 {
	line-height: 1.6;
	font-size: 160%
}

@media screen and (max-width: 768px) {
	#_case .flex_col3.caselist li a dl dd, #_case .flex_col3.caselist li a dl h3, .flex_col3._service li a dl dd, .flex_col3._service li a dl h3, .flex_col3.overview_link li a dl dd, .flex_col3.overview_link li a dl h3, .flex_col3.service li a dl dd, .flex_col3.service li a dl h3 {
		font-size: 180%
	}
}

#_case .flex_col3.caselist li a .text_box, .flex_col3._service li a .text_box, .flex_col3.overview_link li a .text_box, .flex_col3.service li a .text_box {
	width: 90%;
	position: absolute;
	bottom: 7%;
	left: 5%
}

#_case .flex_col3.caselist li a .text_box dt, .flex_col3._service li a .text_box dt, .flex_col3.overview_link li a .text_box dt, .flex_col3.service li a .text_box dt {
	font-size: 180%;
	font-weight: 600;
	margin-bottom: 3%
}

#_case .flex_col3.caselist li a .text_box dd, #_case .flex_col3.caselist li a .text_box h3, .flex_col3._service li a .text_box dd, .flex_col3._service li a .text_box h3, .flex_col3.overview_link li a .text_box dd, .flex_col3.overview_link li a .text_box h3, .flex_col3.service li a .text_box dd, .flex_col3.service li a .text_box h3 {
	line-height: 1.6;
	font-size: 160%
}

#_case .flex_col3.caselist li:hover p img, .flex_col3._service li:hover p img, .flex_col3.overview_link li:hover p img, .flex_col3.service li:hover p img {
	width: 120%
}

@media screen and (max-width: 768px) {
	#_case .flex_col3.sp_flex_col2.caselist li, .flex_col3.sp_flex_col2._service li, .flex_col3.sp_flex_col2.overview_link li, .flex_col3.sp_flex_col2.service li {
		width: 50%
	}

	#_case .flex_col3.sp_flex_col1.caselist li, .flex_col3.sp_flex_col1._service li, .flex_col3.sp_flex_col1.overview_link li, .flex_col3.sp_flex_col1.service li {
		width: 100%
	}
}

#_case .table_col2.caselist, .table_col2._service, .table_col2.overview_link, .table_col2.service {
	display: table
}

#_case .table_col2.caselist a, .table_col2._service a, .table_col2.overview_link a, .table_col2.service a {
	display: block;
	width: 100%;
	height: 100%
}

#_case .table_col2.caselist > div, .table_col2._service > div, .table_col2.overview_link > div, .table_col2.service > div {
	display: table-cell;
	vertical-align: top;
	position: relative
}

#_case .table_col2.caselist > div > div, .table_col2._service > div > div, .table_col2.overview_link > div > div, .table_col2.service > div > div {
	position: relative
}

#_case .table_col2.caselist .col1, .table_col2._service .col1, .table_col2.overview_link .col1, .table_col2.service .col1 {
	width: 50%
}

#_case .table_col2.caselist .col2, .table_col2._service .col2, .table_col2.overview_link .col2, .table_col2.service .col2 {
	width: 100%
}

#_case .table_col3.caselist, .table_col3._service, .table_col3.overview_link, .table_col3.service {
	display: table
}

#_case .table_col3.caselist a, .table_col3._service a, .table_col3.overview_link a, .table_col3.service a {
	display: block;
	width: 100%;
	height: 100%
}

#_case .table_col3.caselist > div, .table_col3._service > div, .table_col3.overview_link > div, .table_col3.service > div {
	display: table-cell;
	vertical-align: top;
	position: relative
}

#_case .table_col3.caselist > div > div, .table_col3._service > div > div, .table_col3.overview_link > div > div, .table_col3.service > div > div {
	position: relative
}

#_case .table_col3.caselist > div.col2, .table_col3._service > div.col2, .table_col3.overview_link > div.col2, .table_col3.service > div.col2 {
	font-size: 120%
}

#_case .table_col3.caselist .col1, .table_col3._service .col1, .table_col3.overview_link .col1, .table_col3.service .col1 {
	width: 33.3333%
}

#_case .table_col3.caselist .col2, .table_col3._service .col2, .table_col3.overview_link .col2, .table_col3.service .col2 {
	width: 66.6666%
}

#_case .table_col3.caselist .col3, .table_col3._service .col3, .table_col3.overview_link .col3, .table_col3.service .col3 {
	width: 100%
}

#_case .flex.caselist, .flex._service, .flex.overview_link, .flex.service {
	display: flex;
	justify-content: space-between
}

@media screen and (max-width: 768px) {
	#_case .flex.sp_flex_col2.caselist li, .flex.sp_flex_col2._service li, .flex.sp_flex_col2.overview_link li, .flex.sp_flex_col2.service li {
		width: 50%
	}

	#_case .flex.sp_flex_col1.caselist li, .flex.sp_flex_col1._service li, .flex.sp_flex_col1.overview_link li, .flex.sp_flex_col1.service li {
		width: 100%
	}
}

.text-center.lead {
	text-align: center
}

#visual-2 {
	height: 450px;
	position: relative;
	color: #fff;
	overflow: hidden
}

#visual-2 #mainvisual {
	font-size: 16px
}

#visual-2 #mainvisual .visual_text {
	width: 96%;
	max-width: 1080px;
	padding: 0 6%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	text-shadow: 0 0 5px #333
}

#visual-2 #mainvisual .visual_text .kv_back {
	background-color: rgba(0, 0, 0, .65);
	padding: 1em
}

@media screen and (max-width: 768px) {
	#visual-2 #mainvisual .visual_text .kv_back {
		padding: 1em 3%
	}
}

@media screen and (max-width: 768px) {
	#visual-2 #mainvisual .visual_text {
		padding: 0;
		width: 90%;
		text-align: center;
		right: 0;
		left: 0;
		margin: auto;
		padding-left: 0;
		top: 55%;
		transform: translate(0, -50%)
	}

	#visual-2 #mainvisual .visual_text p {
		font-size: 12px
	}
}

#visual-2 #mainvisual .visual_text h2 {
	font-size: 300%;
	font-weight: 400;
	margin-bottom: 16px
}

@media screen and (max-width: 768px) {
	#visual-2 #mainvisual .visual_text h2 {
		font-size: 200%
	}
}

#specialslide .pc {
	display: block
}

#specialslide .pc-flex {
	display: flex
}

#specialslide .pc-ib {
	display: inline-block
}

#specialslide .sp, #specialslide .sp-flex, #specialslide .sp-ib {
	display: none
}

@media screen and (max-width: 768px) {
	#specialslide .sp {
		display: block
	}

	#specialslide .sp-flex {
		display: flex
	}

	#specialslide .sp-ib {
		display: inline-block
	}

	#specialslide .pc, #specialslide .pc-flex, #specialslide .pc-ib {
		display: none
	}
}

#specialslide .inner_box {
	max-width: 1080px;
	width: 94%;
	margin: 0 auto;
	position: relative;
	box-sizing: border-box
}

#specialslide .section_ttl {
	font-family: Roboto, sans-serif;
	font-size: 440%;
	font-style: italic;
	font-weight: 300;
	color: #fff;
	margin-bottom: 30px;
	text-align: left
}

@media screen and (max-width: 768px) {
	#specialslide .section_ttl {
		font-size: 300%;
		text-align: center;
		margin-bottom: 20px
	}

	#specialslide .section_ttl img {
		height: 7vw
	}
}

.reset {
	font-family: 'Noto Sans JP', sans-serif
}

.reset a, .reset abbr, .reset acronym, .reset address, .reset applet, .reset article, .reset aside, .reset audio, .reset b, .reset big, .reset blockquote, .reset body, .reset canvas, .reset caption, .reset center, .reset cite, .reset code, .reset dd, .reset del, .reset details, .reset dfn, .reset div, .reset dl, .reset dt, .reset em, .reset embed, .reset fieldset, .reset figcaption, .reset figure, .reset footer, .reset form, .reset h1, .reset h2, .reset h3, .reset h4, .reset h5, .reset h6, .reset header, .reset hgroup, .reset html, .reset i, .reset iframe, .reset img, .reset ins, .reset kbd, .reset label, .reset legend, .reset li, .reset mark, .reset menu, .reset nav, .reset object, .reset ol, .reset output, .reset p, .reset pre, .reset q, .reset ruby, .reset s, .reset samp, .reset section, .reset small, .reset span, .reset strike, .reset strong, .reset sub, .reset summary, .reset sup, .reset table, .reset tbody, .reset td, .reset tfoot, .reset th, .reset thead, .reset time, .reset tr, .reset tt, .reset u, .reset ul, .reset var, .reset video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	vertical-align: baseline
}

.reset article, .reset aside, .reset details, .reset figcaption, .reset figure, .reset footer, .reset header, .reset hgroup, .reset menu, .reset nav, .reset section {
	display: block
}

.reset body {
	line-height: 1
}

.reset ol, .reset ul {
	list-style: none
}

.reset blockquote, .reset q {
	quotes: none
}

.reset blockquote:after, .reset blockquote:before, .reset q:after, .reset q:before {
	content: none
}

.reset table {
	border-collapse: collapse;
	border-spacing: 0
}

.reset a {
	-webkit-tap-highlight-color: transparent
}

.reset .clearfix {
	overflow: hidden
}

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

.reset * html .clearfix {
	zoom: 1
}

@media screen and (max-width: 768px) {
	main {
		padding-top: 50px
	}
}

#emergency {
	width: 96%;
	box-sizing: border-box;
	max-width: 930px;
	height: auto;
	padding: 15px;
	margin: 30px auto 30px;
	border: 2px solid red;
	border-radius: 10px
}

#emergency h1 {
	font-size: 21px;
	color: red;
	text-align: center;
	margin-bottom: 15px
}

#emergency p {
	text-align: center;
	font-size: 14px;
	margin-bottom: 10px
}

#emergency p .btn:hover {
	text-decoration: underline;
	opacity: .75
}

#emergency .text-list {
	font-size: 14px;
	margin-bottom: 12px;
	margin-left: 20px
}

#emergency .list01 {
	font-size: 14px;
	margin: 0 0 20px;
	list-style: none;
	margin-bottom: 12px
}

#emergency .list01 li {
	zoom: 1;
	margin-bottom: 4px;
	padding-left: 12px;
	background: url(/jp/cmn_2020/img/bullet_dot01.gif) 0 center no-repeat
}

#emergency .arrow-list {
	font-size: 14px;
	list-style: none;
	margin-bottom: 15px
}

#emergency .arrow-list li {
	padding-left: 15px;
	background: url(/jp/cmn_2020/img/bullet_arrow01.gif) no-repeat 0 center
}

#emergency .arrow-list li .ico-pdf {
	display: inline-block;
	padding-right: 15px;
	background: url(/jp/cmn_2020/img/icon_pdf.gif) no-repeat right center/14px 15px
}

#_visual {
	position: relative;
	color: #fff;
	overflow: hidden
}

#_visual #mainvisual {
	max-height: 654px;
	height: 50vw;
	background: #222
}

@media screen and (max-width: 768px) {
	#_visual #mainvisual {
		height: 75vw
	}
}

#_visual #mainvisual ul {
	position: relative;
	padding: 0
}

#_visual #mainvisual ul li {
	position: absolute;
	box-sizing: border-box;
	max-height: 654px;
	height: 50vw;
	width: 100vw;
	transition: transform 1s ease-out;
	z-index: 0;
	opacity: 0;
	transition: none
}

#_visual #mainvisual ul li a:hover {
	opacity: 1
}

@media screen and (max-width: 768px) {
	#_visual #mainvisual ul li {
		height: 75vw
	}
}

#_visual #mainvisual ul li div.kv_inner {
	position: absolute;
	width: 100%;
	height: 100%;
	overflow: hidden
}

#_visual #mainvisual ul li div.kv_inner .text_container {
	position: absolute;
	width: 100%;
	top: 50%;
	transform: translate3d(0, -50%, 0)
}

#_visual #mainvisual ul li div.kv_inner .text_container .text_inner {
	margin: 0 auto;
	width: 96%;
	max-width: 1228px
}

#_visual #mainvisual ul li div.kv_inner .text_container .text_inner h2.wipe, #_visual #mainvisual ul li div.kv_inner .text_container .text_inner p.wipe {
	overflow: hidden;
	width: 0
}

#_visual #mainvisual ul li div.kv_inner .text_container .text_inner h2.wipe span, #_visual #mainvisual ul li div.kv_inner .text_container .text_inner p.wipe span {
	white-space: nowrap
}

@media screen and (max-width: 768px) {
	#_visual #mainvisual ul li div.kv_inner .text_container .text_inner h2.wipe span, #_visual #mainvisual ul li div.kv_inner .text_container .text_inner p.wipe span {
		display: block;
		text-align: center;
		width: 96vw
	}
}

#_visual #mainvisual ul li img {
	max-width: 100%
}

#_visual #mainvisual ul li img.bg_image {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate3d(-50%, -50%, 0) scale(1.1);
	max-width: none;
	width: 100vw
}

@media screen and (max-width: 768px) {
	#_visual #mainvisual ul li img.bg_image {
		width: auto;
		height: 110vw
	}
}

#_visual #mainvisual ul li .text_container {
	color: #fff;
	top: 45%
}

#_visual #mainvisual ul li .text_container h2 {
	font-size: 450%
}

@media screen and (max-width: 768px) {
	#_visual #mainvisual ul li .text_container h2 {
		font-size: 200%
	}
}

#_visual #mainvisual ul li .text_container p {
	font-size: 200%;
	margin-top: 10px
}

@media screen and (max-width: 768px) {
	#_visual #mainvisual ul li .text_container p {
		font-size: 100%
	}
}

@media screen and (max-width: 768px) {
	#_visual #mainvisual ul li .text_container {
		display: none
	}
}

#_visual #mainvisual ul li.kv_fadeIn {
	z-index: 1;
	opacity: 1;
	transition: opacity 1s linear
}

#_visual #mainvisual ul li.kv_fadeIn img.bg_image {
	transform: translate3d(-50%, -50%, 0) scale(1);
	transition: transform 3s ease-out
}

#_visual #mainvisual ul li.kv_fadeIn .wipe.delay_0 {
	width: 100vw !important;
	transition: width 2s ease-out 1s
}

#_visual #mainvisual ul li.kv_fadeIn .wipe.delay_100 {
	width: 100vw !important;
	transition: width 2s ease-out 1.1s
}

#_visual #mainvisual ul li.kv_fadeIn .wipe.delay_200 {
	width: 100vw !important;
	transition: width 2s ease-out 1.2s
}

#_visual #mainvisual ul li.kv_fadeIn .wipe.delay_300 {
	width: 100vw !important;
	transition: width 2s ease-out 1.3s
}

#_visual #mainvisual ul li.kv_fadeIn .wipe.delay_400 {
	width: 100vw !important;
	transition: width 2s ease-out 1.4s
}

#_visual #mainvisual ul li.kv_fadeIn .wipe.delay_500 {
	width: 100vw !important;
	transition: width 2s ease-out 1.5s
}

#_visual #mainvisual ul li.kv_fadeIn .wipe.delay_600 {
	width: 100vw !important;
	transition: width 2s ease-out 1.6s
}

#_visual #mainvisual ul li.kv_fadeIn .wipe.delay_700 {
	width: 100vw !important;
	transition: width 2s ease-out 1.7s
}

#_visual #mainvisual ul li.kv_fadeIn .wipe.delay_800 {
	width: 100vw !important;
	transition: width 2s ease-out 1.8s
}

#_visual #mainvisual ul li.kv_fadeIn .wipe.delay_900 {
	width: 100vw !important;
	transition: width 2s ease-out 1.9s
}

#_visual #mainvisual ul li.kv_fadeIn .wipe.delay_1000 {
	width: 100vw !important;
	transition: width 2s ease-out 2s
}

#_visual #KV_CM .text_container {
	height: 100%;
	color: #000;
	top: 45% !important
}

#_visual #KV_CM .text_container .text_inner {
	height: 100%;
	position: relative
}

#_visual #KV_CM .text_container .cm_text1 {
	position: absolute;
	left: 50%;
	bottom: 13%;
	width: 50%
}

#_visual #KV_CM .text_container .cm_text2 {
	position: absolute;
	left: 65%;
	bottom: 40%;
	width: 10%
}

#_visual #KV_CM .text_container h2 {
	color: #0054a7;
	font-size: 500%;
	line-height: 120% !important;
	margin-bottom: .2em
}

#_visual #KV_CM .text_container p {
	font-size: 150%;
	margin-top: 6px;
	padding-left: .4em
}

@media screen and (max-width: 768px) {
	#_visual #KV_CM .text_container p {
		font-size: 100%
	}
}

#_visual #KV_CM .text_container p.gray {
	color: #4f4f4f
}

@media screen and (max-width: 768px) {
	#_visual #KV_CM .text_container {
		display: none
	}
}

#_visual #KV_AI_EDGE .text_container {
	color: #fff
}

#_visual #KV_AI_EDGE .text_container h2 {
	font-size: 450%
}

@media screen and (max-width: 768px) {
	#_visual #KV_AI_EDGE .text_container h2 {
		font-size: 200%
	}
}

#_visual #KV_AI_EDGE .text_container p {
	font-size: 150%
}

@media screen and (max-width: 768px) {
	#_visual #KV_AI_EDGE .text_container p {
		font-size: 100%
	}
}

@media screen and (max-width: 768px) {
	#_visual #KV_AI_EDGE .text_container {
		display: none
	}
}

#_visual #KV_iot_2019 .text_container {
	color: #fff;
	top: 45% !important
}

#_visual #KV_iot_2019 .text_container .text_inner {
	text-shadow: 0 0 5px #333
}

#_visual #KV_iot_2019 .text_container h2 {
	font-size: 450%
}

@media screen and (max-width: 768px) {
	#_visual #KV_iot_2019 .text_container h2 {
		font-size: 200%
	}
}

#_visual #KV_iot_2019 .text_container p {
	margin-top: 10px
}

@media screen and (max-width: 768px) {
	#_visual #KV_iot_2019 .text_container p {
		font-size: 100%
	}
}

@media screen and (max-width: 768px) {
	#_visual #KV_iot_2019 .text_container {
		display: none
	}
}

#_visual #KV_ceatec .text_container {
	color: #000;
	top: 45% !important
}

#_visual #KV_ceatec .text_container img {
	width: 600px
}

#_visual #KV_ceatec .text_container h2 {
	color: #0054a7;
	font-size: 500%;
	line-height: 120% !important;
	margin-bottom: .2em
}

#_visual #KV_ceatec .text_container p {
	margin-top: 6px;
	padding-left: .4em
}

@media screen and (max-width: 768px) {
	#_visual #KV_ceatec .text_container p {
		font-size: 100%
	}
}

#_visual #KV_ceatec .text_container p.gray {
	color: #4f4f4f
}

@media screen and (max-width: 768px) {
	#_visual #KV_ceatec .text_container {
		display: none
	}
}

#_visual #KV_INFRA .mvButton {
	opacity: 0
}

@media screen and (max-width: 1120px) {
	#_visual #KV_INFRA .mvButton {
		width: 230px !important
	}
}

#_visual #KV_INFRA .mvButton:hover {
	-webkit-filter: brightness(1.1);
	filter: brightness(1.1);
	cursor: pointer
}

#_visual #KV_INFRA .text_container {
	transform: none !important;
	top: 8% !important;
	left: 30px
}

#_visual #KV_INFRA .text_container div.text_inner {
	color: #000
}

#_visual #KV_INFRA .text_container div.text_inner h2 {
	font-size: 550%;
	margin-bottom: 10px
}

@media screen and (max-width: 768px) {
	#_visual #KV_INFRA .text_container div.text_inner h2 {
		font-size: 200%
	}
}

#_visual #KV_INFRA .text_container div.text_inner h2.border-bottom {
	box-sizing: border-box;
	padding-bottom: 3px
}

#_visual #KV_INFRA .text_container div.text_inner h2.border-bottom span {
	border-bottom: 3px solid #000
}

#_visual #KV_INFRA .text_container div.text_inner p {
	margin-bottom: 10px
}

@media screen and (max-width: 768px) {
	#_visual #KV_INFRA .text_container div.text_inner p {
		font-size: 100%
	}
}

#_visual #KV_INFRA .text_container div.text_inner .mt_30px {
	margin-bottom: 40px
}

#_visual #KV_INFRA .text_container div.text_inner div {
	display: block;
	width: 100%;
	max-width: 1200px;
	text-align: right;
	box-sizing: border-box;
	padding-right: 20px;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate3d(-50%, -50%, 0)
}

#_visual #KV_INFRA .text_container div.text_inner div a {
	display: inline !important
}

#_visual #KV_INFRA.kv_fadeIn .mvButton {
	transition: opacity .5s linear 2s;
	opacity: 1
}

#_visual #visual_thum {
	z-index: 5;
	box-sizing: border-box;
	padding: 20px;
	position: absolute;
	top: 0;
	right: 0;
	background-color: #313131;
	height: 100%;
	display: flex;
	align-items: center;
	flex-direction: column;
	justify-content: center;
	transform: translate(100%, 0);
	transition: 1s
}

#_visual #visual_thum:before {
	content: "";
	display: inline-block;
	width: 40px;
	height: 100px;
	background-color: #313131;
	position: absolute;
	top: 50%;
	right: 100%;
	transform: translate(0, -50%);
	border-radius: 5px 0 0 5px
}

#_visual #visual_thum:after {
	content: "";
	width: 0;
	height: 0;
	border: 7px solid transparent;
	border-right: 6px solid #9c9c9c;
	border-left: 0 solid transparent;
	position: absolute;
	top: 50%;
	z-index: 4;
	right: 100%;
	transform: translate(-16px, -50%)
}

#_visual #visual_thum.display, #_visual #visual_thum:hover {
	transform: translate(0)
}

#_visual #visual_thum li {
	position: relative;
	margin: 10px 0
}

#_visual #visual_thum li img {
	vertical-align: bottom
}

#_visual #visual_thum li.active:before, #_visual #visual_thum li:hover:before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	border: 2px solid #fff;
	position: absolute;
	top: 0;
	left: 0
}

#_visual #visual_thum li:hover p {
	opacity: 1;
	visibility: visible;
	z-index: 10
}

#_visual #visual_thum li p {
	visibility: hidden;
	transition: .5s;
	opacity: 0;
	position: absolute;
	right: 100%;
	top: 50%;
	padding: 1em;
	background-color: #000;
	word-break: keep-all;
	transform: translate(-10%, -50%)
}

#_visual #visual_thum li p:before {
	content: "";
	width: 0;
	height: 0;
	border: 3px solid transparent;
	border-left: 3px solid #000;
	position: absolute;
	top: 50%;
	left: 100%;
	transform: translate(0, -50%)
}

#_visual #visual_current {
	z-index: 4;
	width: 96%;
	max-width: 1226px;
	left: 2%;
	left: 50%;
	position: absolute;
	bottom: 12%;
	transition: 1s;
	text-align: right;
	transform: translate(-50%, 0)
}

@media screen and (max-width: 1120px) {
	#_visual #visual_current {
		bottom: 10px
	}
}

#_visual #visual_current ul {
	margin: 0 auto;
	text-align: right;
	display: inline-block;
	vertical-align: middle
}

#_visual #visual_current ul li {
	width: 50px;
	cursor: pointer;
	height: 2px;
	background-color: #fff;
	opacity: .6;
	display: inline-block
}

@media screen and (max-width: 1120px) {
	#_visual #visual_current ul li {
		width: 40px
	}
}

#_visual #visual_current ul li.current {
	opacity: 1
}

#_visual #visual_current .stop {
	display: inline-block;
	vertical-align: middle;
	margin-top: 11px;
	margin-left: 5px
}

@media screen and (max-width: 768px) {
	#_visual #mainvisual {
		font-size: 3vw
	}

	#_visual #mainvisual.flying {
		height: 120vw
	}

	#_visual #mainvisual.flying ul li {
		height: 120vw
	}

	#_visual #mainvisual .visual_text {
		text-align: center;
		width: 100%;
		padding: 0 3%;
		box-sizing: border-box;
		position: absolute;
		top: 44%;
		left: 50%;
		transform: translate(-50%, -50%)
	}

	#_visual #mainvisual .visual_text h2 {
		font-size: 210%
	}

	#_visual #visual_thum {
		display: none
	}

	#_visual #visual_current {
		display: flex;
		background-color: #333;
		position: static;
		width: 100%;
		transform: none;
		justify-content: space-between;
		align-items: center;
		padding: 3%;
		box-sizing: border-box
	}

	#_visual #visual_current ul {
		display: flex;
		align-items: center
	}

	#_visual #visual_current ul li:not(:last-child) {
		margin-right: 4px
	}

	#_visual #visual_current .stop {
		margin: 0
	}

	#_visual #visual_current .stop img {
		vertical-align: bottom
	}
}

#news {
	font-size: 150%;
	background-color: #f5f5f5;
	padding: 1em 20px;
	margin-bottom: 43px
}

#news .article {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: center
}

#news .article .category {
	display: inline-block;
	background-color: #cb1c1d;
	color: #fff;
	border-radius: 2px;
	margin-right: 30px;
	box-sizing: border-box;
	width: 10em
}

#news .article .category a {
	position: relative;
	padding: .6em;
	color: #fff;
	display: block;
	position: relative;
	display: block;
	padding: .9em;
	box-sizing: border-box
}

#news .article .category a:after {
	position: absolute;
	content: "";
	display: inline-block;
	top: 50%;
	width: 6px;
	height: 6px;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	transform: translate(0, -50%) rotate(-45deg)
}

#news .article .category a:after {
	left: 88%
}

#news .article .datetime {
	display: inline-block;
	margin-right: 30px
}

#news .article .description {
	display: inline-block;
	overflow: hidden;
	width: calc(100% - 17em);
	position: relative;
	height: 20px
}

#news .article .description li {
	height: 20px;
	font-size: 110%;
	position: absolute;
	top: 0;
	left: 0;
	line-height: 1em;
	word-break: keep-all;
	white-space: nowrap;
	opacity: 0;
	transition: opacity .5s;
	pointer-events: none
}

#news .article .description li.active {
	pointer-events: auto;
	display: block;
	opacity: 1
}

#news .article .description li a:hover {
	text-decoration: underline !important
}

@media screen and (max-width: 768px) {
	#news .article .description li a:hover {
		text-decoration: none !important
	}
}

#news .more {
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translate(0, -50%)
}

#news .more a {
	width: 40px;
	height: 40px;
	border-radius: 2px;
	display: block;
	background-color: #cb1c1d;
	position: relative
}

#news .more a:after {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	background: url(/jp/cmn_2020/img2019/press_pause.svg) no-repeat center center;
	background-size: 25%
}

#news .more.play a:after {
	background: url(/jp/cmn_2020/img2019/press_play.svg) no-repeat center center;
	background-size: 25%
}

#notice {
	font-size: 160%
}

#notice dl {
	box-sizing: border-box;
	margin-bottom: 2%;
	padding: 16px 19px;
	background-color: #f6f6f6;
	border: 1px solid red;
	position: relative;
	line-height: 1.7
}

#notice dl dt {
	color: red
}

#notice dl dd {
	font-size: 90%
}

#notice dl a {
	color: #7c7c7c
}

#notice dl a:before {
	content: "";
	display: inline-block;
	width: 6px;
	height: 6px;
	margin-right: 6px;
	border-right: 1px solid red;
	border-bottom: 1px solid red;
	transform: translate(0, -2px) rotate(-45deg)
}

#notice dl a:hover {
	opacity: 1;
	text-decoration: underline
}

@media screen and (max-width: 768px) {
	#notice {
		padding: 30px 4%
	}
}

#philosophy {
	padding: 0 4%
}

#philosophy .section_ttl {
	font-family: Roboto, sans-serif;
	font-style: italic;
	font-weight: 300;
	color: #fff;
	margin-bottom: 30px;
	font-size: 550%;
	color: #cb1c1d;
	letter-spacing: -.05em
}

#philosophy .inner_box {
	max-width: 1230px;
	width: 100%;
	margin: 0 auto;
	position: relative;
	box-sizing: border-box;
	padding: 130px 0 65px;
	background: url(/jp/img/top_philosophy_bg.png) no-repeat bottom right;
	background-size: auto 95%
}

#philosophy .description {
	padding: 1.5em 0 0 2.9%;
	margin-left: 1.8%;
	font-size: 165%;
	line-height: 1.6;
	border-left: 1px dotted #cb1c1d
}

#philosophy .description .lead {
	font-size: 150%;
	line-height: 1.6;
	color: #cb1c1d;
	font-weight: 700;
	margin-bottom: 28px;
	letter-spacing: .2em
}

#philosophy .description .btn {
	margin-top: 70px
}

#philosophy .description .btn a {
	position: relative;
	display: block;
	padding: .9em;
	box-sizing: border-box;
	width: 267px;
	text-align: center;
	background-color: #cb1c1d;
	color: #fff;
	padding: 1.3em
}

#philosophy .description .btn a:after {
	position: absolute;
	content: "";
	display: inline-block;
	top: 50%;
	width: 6px;
	height: 6px;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	transform: translate(0, -50%) rotate(-45deg)
}

#philosophy .description .btn a:after {
	right: 20px
}

@media screen and (max-width: 768px) {
	#philosophy .kv {
		width: 65%;
		margin: 30px auto 10px
	}

	#philosophy .section_ttl {
		text-align: left;
		margin-bottom: 0
	}

	#philosophy .inner_box {
		padding: 0;
		background: 0 0
	}

	#philosophy .description {
		padding: 0;
		margin-left: 0;
		font-size: 120%;
		border-left: none
	}

	#philosophy .description .lead {
		font-size: 120%;
		margin-bottom: 10px
	}

	#philosophy .description .btn {
		margin: 30px auto;
		font-size: 140%
	}

	#philosophy .description .btn a {
		width: 100%;
		display: block;
		padding: .9em
	}
}

#info2 a:hover {
	text-decoration: underline !important
}

@media screen and (max-width: 768px) {
	#info2 a:hover {
		text-decoration: none !important
	}
}

#info2 .inner_box {
	width: 94%;
	max-width: 1080px;
	margin: 0 auto;
	position: relative;
	box-sizing: border-box
}

#info2 .ttl_wrap {
	position: relative;
	margin-bottom: 26px
}

#info2 .ttl_wrap .title {
	font-size: 130%;
	line-height: 1;
	position: relative;
	padding-left: 26px
}

#info2 .ttl_wrap .title:before {
	content: "";
	display: inline-block;
	background: url(/jp/cmn_2020/img/icn_important.png) no-repeat center center;
	background-size: contain;
	width: 14px;
	height: 21px;
	vertical-align: middle;
	margin-right: 10px;
	position: absolute;
	left: 4px;
	top: 50%;
	transform: translate(0, -50%)
}

#info2 .ttl_wrap .more {
	position: absolute;
	top: 50%;
	right: 14px;
	transform: translate(0, -50%)
}

#info2 .ttl_wrap .more a {
	position: relative
}

#info2 .ttl_wrap .more a:before {
	content: "";
	display: inline-block;
	width: 6px;
	height: 6px;
	border-right: 1px solid #cb1c1d;
	border-bottom: 1px solid #cb1c1d;
	transform: translate(100%, -50%) rotate(-45deg);
	position: absolute;
	right: -5px;
	top: 50%
}

#info2 .important_list {
	margin-bottom: 40px
}

#info2 .important_list .article {
	border-top: 1px solid #cecece;
	padding-top: 16px;
	padding-bottom: 13px;
	font-size: 147%
}

#info2 .important_list .article:last-child {
	border-bottom: 1px solid #cecece
}

#info2 .important_list .article .datetime {
	width: 200px;
	display: inline-block;
	vertical-align: top;
}

#info2 .important_list .article .description {
	display: inline-block;
	font-size: 108%;
	width: calc(100% - 210px);
	position: relative;
	padding-left: 100px;
	box-sizing: border-box
}

#info2 .important_list .article .description .category {
	position: absolute;
	left: 0;
	top: 0;
	width: 70px;
	display: inline-block;
	background-color: #cecece;
	font-size: 90%;
	vertical-align: middle;
	padding: .2em 0;
	text-align: center;
	margin-right: 2em
}

#info2 .important_list .article .description a {
	color: #333
}

#info2 .important_list .article .description a:hover {
	text-decoration: underline
}

@media screen and (max-width: 768px) {
	#info2 .important_list .article .description {
		align-items: flex-start;
		display: flex;
		width: 100%;
		padding-left: 80px
	}

	#info2 .important_list .article .datetime {
		width: 100%;
		display: block;
		margin-bottom: 10px
	}
}

#info2 .announcement {
	display: flex;
	justify-content: space-between
}

#info2 .announcement .article {
	box-sizing: border-box;
	width: 49%;
	padding: 16px 19px;
	background-color: #f6f6f6;
	position: relative;
	line-height: 1.7
}

#info2 .announcement .description {
	font-size: 133%;
	margin-bottom: 1.7em;
	line-height: 1.6
}

#info2 .announcement .description a {
	text-decoration: underline;
	color: #333
}

#info2 .announcement .datetime {
	font-size: 107%;
	position: absolute;
	left: 20px;
	bottom: 11px;
	color: #7c7c7c
}

@media screen and (max-width: 768px) {
	#info2 {
		padding: 30px 4%
	}

	#info2 .important_list {
		margin-bottom: 20px
	}

	#info2 .important_list .article {
		font-size: 120%
	}

	#info2 .announcement {
		flex-wrap: wrap
	}

	#info2 .announcement .article {
		width: 100%;
		margin-bottom: 10px
	}

	#info2 .sp.more {
		display: block;
		position: inherit;
		transform: none;
		width: 100%
	}

	#info2 .sp.more a {
		text-align: center;
		box-sizing: border-box;
		background-color: #cb1c1d;
		color: #fff;
		position: relative;
		display: block;
		padding: .9em;
		box-sizing: border-box
	}

	#info2 .sp.more a:after {
		position: absolute;
		content: "";
		display: inline-block;
		top: 50%;
		width: 6px;
		height: 6px;
		border-right: 1px solid #fff;
		border-bottom: 1px solid #fff;
		transform: translate(0, -50%) rotate(-45deg)
	}

	#info2 .sp.more a:after {
		left: 88%
	}
}

#info3 {
	padding: 20px 0
}

#info3 .whatnew_list {
	border-top: 1px solid #cecece;
	border-bottom: 1px solid #cecece
}

#info3 .whatnew_list .article {
	padding-top: 16px;
	padding-bottom: 13px;
	font-size: 147%;
	display: flex
}

#info3 .whatnew_list .article .datetime {
	width: 130px;
	margin-right: 60px;
	vertical-align: top;
	color: #7c7c7c
}

#info3 .whatnew_list .article .description {
	width: calc(100% - 180px);
	font-size: 108%
}

#info3 .whatnew_list .article .description a {
	color: #333
}

#info3 .whatnew_list .article .description a:hover {
	text-decoration: underline
}

@media screen and (max-width: 768px) {
	#info3 {
		padding-bottom: 10%
	}

	#info3 .whatnew_list {
		margin-bottom: 20px
	}

	#info3 .whatnew_list .article {
		font-size: 140%;
		display: block
	}

	#info3 .whatnew_list .article .datetime, #info3 .whatnew_list .article .description {
		width: 100%;
		margin: 0
	}

	#info3 .whatnew_list .article .datetime {
		display: block
	}
}

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

.info_list1:after, .info_list1:before {
	content: '';
	display: block;
	width: 33%;
	order: 2
}

.info_list1 .info_item {
	width: 33%;
	position: relative;
	display: block
}

@media screen and (max-width: 768px) {
	.info_list1 .info_item {
		width: 100%
	}
}

.info_list1 .info_item a {
	display: block;
	color: #333
}

.info_list1 .info_item a .category_title {
	padding-bottom: 67.2222%;
	position: relative;
	overflow: hidden
}

@media screen and (max-width: 768px) {
	.info_list1 .info_item a .category_title {
		font-size: 120%
	}

}

.info_list1 .info_item a .category_title img {
	width: 101%;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	transition: .5s
}

.info_list1 .info_item a .category_title p, .info_list1 .info_item a .category_title span {
	font-size: 160%;
	color: #fff;
	position: absolute;
	bottom: 0;
	left: 0;
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, .5) 30%, rgba(0, 0, 0, .8) 88%, rgba(0, 0, 0, .8) 99%);
	width: 100%;
	box-sizing: border-box;
	padding: 1em;
	height: 6em;
	display: flex;
	align-items: flex-end
}

@media screen and (max-width: 768px) {
	.info_list1 .info_item a .category_title p, .info_list1 .info_item a .category_title span {
		font-size: 140%
	}
}

.info_list1 .info_item a .text {
	font-size: 160%;
	letter-spacing: -.001em;
	margin-top: 5%;
	padding: 0 8%;
	border-left: 1px solid #eee
}

@media screen and (max-width: 768px) {
	.info_list1 .info_item a .text {
		margin-top: 10px;
		font-size: 140%;
		padding: 0
	}
}

.info_list1 .info_item a:hover .category_title img {
	width: 120%
}

@media screen and (max-width: 768px) {
	.info_list1 .info_item a:hover .category_title img {
		width: 100%
	}
}

.info_list2 {
	display: flex;
	flex-wrap: wrap
}

.info_list2 .info_item {
	width: 33.3333%;
	position: relative;
	display: none
}

.info_list2 .info_item.show {
	display: block
}

@media screen and (max-width: 768px) {
	.info_list2 .info_item {
		width: 100%
	}
}

.info_list2 .info_item a {
	display: block;
	color: #333;
	padding-bottom: 7%
}

.info_list2 .info_item a .category {
	color: #fff;
	min-width: 82px;
	font-size: 130%;
	letter-spacing: -.001em;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: .3em 1em;
	box-sizing: border-box;
	position: absolute;
	z-index: 9;
	right: 0;
	top: 0
}

@media screen and (max-width: 768px) {
	.info_list2 .info_item a .category {
		font-size: 110%
	}
}

.info_list2 .info_item a .category_title {
	padding-bottom: 67.2222%;
	position: relative;
	overflow: hidden
}

@media screen and (max-width: 768px) {
	.info_list2 .info_item a .category_title:after {
		content: "";
		display: block;
		border-top: 1.4em solid transparent;
		border-right: 1.4em solid #cb1c1d;
		position: absolute;
		bottom: 4px;
		right: 4px;
		z-index: 10
	}
}

.info_list2 .info_item a .category_title img {
	width: 100%;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	transition: .5s
}

.info_list2 .info_item a .category_title p {
	font-size: 160%;
	color: #fff;
	position: absolute;
	bottom: 0;
	left: 0;
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, .5) 30%, rgba(0, 0, 0, .8) 88%, rgba(0, 0, 0, .8) 99%);
	width: 100%;
	box-sizing: border-box;
	padding: 1em;
	height: 6em
}

@media screen and (max-width: 768px) {
	.info_list2 .info_item a .category_title p {
		font-size: 140%;
		display: flex;
		align-items: flex-end
	}
}

.info_list2 .info_item a .text {
	font-size: 160%;
	letter-spacing: -.001em;
	margin-top: 5%;
	padding: 0 8%;
	border-left: 1px solid #eee
}

@media screen and (max-width: 768px) {
	.info_list2 .info_item a .text {
		margin-top: 10px;
		font-size: 140%;
		padding: 0
	}
}

.info_list2 .info_item a:hover .category_title img {
	width: 120%
}

@media screen and (max-width: 768px) {
	.info_list2 .info_item a:hover .category_title img {
		width: 100%
	}
}

.service li a dl dt {
	position: relative;
	display: block;
	padding: .9em;
	box-sizing: border-box;
	padding: 0
}

.service li a dl dt:after {
	position: absolute;
	content: "";
	display: inline-block;
	top: 50%;
	width: 6px;
	height: 6px;
	border-right: 1px solid red;
	border-bottom: 1px solid red;
	transform: translate(0, -50%) rotate(-45deg)
}

.service li a p {
	padding-bottom: 65.1%
}

@media screen and (max-width: 1120px) {
	.service li a dl {
		font-size: 1vw
	}
}

@media screen and (max-width: 768px) {
	.service {
		padding-bottom: 5% !important
	}

	.service.sp_flex_col1 li {
		margin-bottom: 4%
	}

	.service.sp_flex_col1 li a dl {
		font-size: 2vw
	}
}

.box_col3 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	background-color: #f6f6f6;
	padding: 30px 3%
}

.box_col3 li {
	width: 31%;
	position: relative
}

.box_col3 li a {
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 2
}

.box_col3 li dl {
	position: relative;
	background-color: #fff;
	overflow: hidden
}

.box_col3 li dl dt {
	width: 50%;
	font-size: 180%;
	font-weight: 700;
	padding: 2em 0 2em 1.2em;
	box-sizing: border-box;
	position: relative
}

.box_col3 li dl dt:after {
	margin-left: 10px;
	content: "";
	display: inline-block;
	width: 6px;
	height: 6px;
	border-right: 1px solid #ff0101;
	border-bottom: 1px solid #ff0101;
	transform: translate(0, -3px) rotate(-45deg);
	transition: .5s
}

.box_col3 li dl dd {
	width: 50%;
	height: 100%;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%)
}

.box_col3 li dl dd img {
	width: 101%;
	vertical-align: bottom
}

.box_col3 li:hover {
	opacity: .7
}

.box_col3 li:hover dl dt:after {
	transform: translate(10px, -3px) rotate(-45deg)
}

.box_col3:after {
	content: "";
	display: block;
	width: 30%
}

@media screen and (max-width: 1120px) {
	.box_col3 dl {
		font-size: .8vw
	}
}

@media screen and (max-width: 768px) {
	.box_col3 {
		padding: 3%;
		width: 80%;
		margin: 0 auto
	}

	.box_col3 li {
		width: 100%
	}

	.box_col3 li:not(:last-child) {
		margin-bottom: 3%
	}

	.box_col3 li dl {
		font-size: 2vw
	}
}

.box_col3 .printer dd {
	background: url(/jp/products/category/img/printer.jpg) no-repeat center right;
	background-size: contain
}

.box_col3 .ai dd {
	background: url(/jp/products/category/img/ai.jpg) no-repeat center right;
	background-size: contain
}

.box_col3 .ems dd {
	background: url(/jp/products/category/img/ems.jpg) no-repeat center right;
	background-size: contain
}

.technical {
	width: 80%;
	max-width: 650px;
	margin: 0 auto 70px;
	position: relative;
	background-color: #f6f6f6;
	padding: 40px;
	box-sizing: border-box
}

@media screen and (max-width: 768px) {
	.technical {
		width: 100%;
		max-width: 100%
	}
}

.technical a {
	display: block
}

.technical dl {
	position: relative;
	background-color: #fff;
	overflow: hidden
}

.technical dl dt {
	width: 50%;
	font-size: 180%;
	font-weight: 700;
	padding: 2em 0 2em 1.2em;
	position: relative;
	box-sizing: border-box
}

.technical dl dt:after {
	margin-left: 10px;
	content: "";
	display: inline-block;
	width: 6px;
	height: 6px;
	border-right: 1px solid #ff0101;
	border-bottom: 1px solid #ff0101;
	transform: translate(0, -3px) rotate(-45deg);
	transition: .5s
}

.technical dl dd {
	width: 50%;
	height: 100%;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	background: url(/jp/technology/img/technical-review.jpg) no-repeat left center;
	background-size: cover
}

.technical dl dd img {
	width: 101%;
	vertical-align: bottom
}

.technical:hover {
	opacity: .7
}

.technical:hover dl dt:after {
	transform: translate(10px, -3px) rotate(-45deg)
}

@media screen and (max-width: 768px) {
	.technical {
		padding: 3%;
		margin-bottom: 5%
	}
}

.technology {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between
}

.technology li {
	width: 24%;
	border: 1px solid #a0a0a0;
	padding: 1.4em;
	border-radius: 4px;
	box-sizing: border-box;
	font-size: 160%;
	position: relative
}

.technology li:hover {
	opacity: .7
}

.technology li a {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%
}

.technology li dl dt {
	font-weight: 700;
	font-size: 137.5%;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 4em;
	line-height: 1.2
}

.technology li dl dt span {
	position: relative
}

.technology li dl dt span:after {
	position: absolute;
	margin-left: -28px;
	content: "";
	display: inline-block;
	width: 6px;
	height: 6px;
	top: 50%;
	border-right: 2px solid #ff0101;
	border-bottom: 2px solid #ff0101;
	transform: translate(40px, -50%) rotate(-45deg)
}

.technology::before {
	content: "";
	display: block;
	width: 24%;
	order: 1
}

.technology::after {
	content: "";
	display: block;
	width: 24%
}

@media screen and (max-width: 1120px) {
	.technology li {
		font-size: 1.2vw
	}

	.technology:after {
		content: "";
		width: 30%
	}
}

@media screen and (max-width: 768px) {
	.technology li {
		font-size: 2.5vw !important;
		width: 48% !important;
		margin-bottom: 4%
	}

	.technology:after {
		content: none
	}
}

.contents_block1 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding-bottom: 70px
}

@media screen and (max-width: 768px) {
	.contents_block1 {
		width: 100%;
		margin: 0 auto 5%;
		flex-wrap: wrap;
		border: 1px solid #ccc;
		padding: 4%;
		box-sizing: border-box
	}
}

.contents_block1 .contents_sub_block1 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between
}

.contents_block1 .contents_sub_block1 .block_item {
	margin-bottom: 40px
}

@media screen and (max-width: 768px) {
	.contents_block1 .contents_sub_block1 .block_item:nth-last-child(2) {
		margin-bottom: 40px
	}
}

.contents_block1 .block_item {
	width: 48.7037%;
	color: #333;
	position: relative
}

@media screen and (max-width: 768px) {
	.contents_block1 .block_item {
		width: 100%
	}
}

.contents_block1 .block_item img {
	width: 100%;
	background-color: #efefef
}

.contents_block1 .block_item .sub_title {
	font-size: 160%;
	font-weight: 600;
	margin-bottom: 15px
}

@media screen and (max-width: 768px) {
	.contents_block1 .block_item .sub_title {
		font-size: 140%
	}
}

.contents_block1 .block_item .contents_info {
	line-height: 1.6;
	font-size: 160%;
	margin-bottom: 16px
}

@media screen and (max-width: 768px) {
	.contents_block1 .block_item .contents_info {
		font-size: 140%
	}
}

.contents_block1 .block_item .contents_list.heightfix {
	position: absolute;
	width: 100%
}

.contents_block1 .block_item .contents_list .contents_item {
	font-size: 160%;
	border-bottom: 1px solid #cecece
}

@media screen and (max-width: 768px) {
	.contents_block1 .block_item .contents_list .contents_item {
		font-size: 140%
	}
}

.contents_block1 .block_item .contents_list .contents_item a {
	display: block;
	color: #333;
	padding: 13px 0;
	background: url(/jp/cmn_2020/img/arrow_02.png) no-repeat right center
}

@media screen and (max-width: 768px) {
	.contents_block1 .block_item .contents_list .contents_item a {
		padding: 10px 0
	}
}

.contents_block1 .block_item .contents_link1 {
	font-size: 160%;
	margin-top: 25px;
	text-align: center
}

@media screen and (max-width: 768px) {
	.contents_block1 .block_item .contents_link1 {
		font-size: 140%
	}
}

.contents_block1 .block_item .contents_link1 a {
	display: block;
	color: #fff;
	padding: 15px 0;
	background: url(/jp/cmn_2020/img/arrow_03.png) no-repeat right 21px center;
	background-color: red
}

.contents_block1 .link_ip {
	width: 100%;
	text-align: center;
	padding: 40px 0;
	background-color: #f6f6f6
}

#l-social {
	background: #666
}

#l-social .social_box {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	box-sizing: border-box;
	padding: 60px 60px 0
}

#l-social .c-social {
	background: #fff;
	width: 48%;
	margin-bottom: 30px;
	padding: 20px;
	box-sizing: border-box
}

#l-social .c-social .detail_box {
	min-height: 190px;
	box-sizing: border-box;
	padding: 20px
}

#l-social .list_items {
	box-sizing: border-box
}

#l-social .list_items .list_item {
	margin-bottom: 2px
}

#l-social .list_items .list_item a {
	background: #f6f6f6;
	font-size: 140%;
	display: block;
	padding: 15px 25px 15px 15px;
	position: relative
}

#l-social .list_items .list_item a:after {
	content: "";
	position: absolute;
	width: 8px;
	height: 8px;
	top: 50%;
	transform: translate3d(0, -50%, 0) rotate(45deg) scale(1);
	border-top: 2px solid;
	border-right: 2px solid;
	border-color: red;
	right: 15px
}

@media screen and (max-width: 768px) {
	#l-social .social_box {
		margin-top: 40px;
		padding: 20px 20px 0
	}

	#l-social .c-social {
		width: 100%;
		margin-bottom: 20px
	}

	#l-social .c-social .detail_box {
		min-height: inherit
	}

	#l-social .c-social .list_items {
		padding: 0
	}
}

#l-governance {
	background: #aaa
}

#l-governance .list_items {
	box-sizing: border-box
}

#l-governance .list_items .list_item {
	margin-bottom: 2px
}

#l-governance .list_items .list_item a {
	background: #f6f6f6;
	font-size: 140%;
	display: block;
	padding: 15px 25px 15px 15px;
	position: relative
}

#l-governance .list_items .list_item a:after {
	content: "";
	position: absolute;
	width: 8px;
	height: 8px;
	top: 50%;
	transform: translate3d(0, -50%, 0) rotate(45deg) scale(1);
	border-top: 2px solid;
	border-right: 2px solid;
	border-color: red;
	right: 15px
}

#l-governance .c-governance {
	background: #fff;
	box-sizing: border-box;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	padding: 40px
}

#l-governance .c-governance .detail_box, #l-governance .c-governance .list_items {
	width: 48%
}

#l-governance .c-governance:not(:last-child) {
	margin-bottom: 40px
}

#l-governance .c-governance .list_items {
	background: #fff
}

@media screen and (max-width: 768px) {
	#l-governance .c-governance {
		padding: 20px
	}

	#l-governance .c-governance .detail_box, #l-governance .c-governance .list_items {
		width: 100%
	}

	#l-governance .c-governance .list_items {
		margin-top: 20px
	}

	#l-governance .c-governance:not(:last-child) {
		margin-bottom: 40px
	}
}

.sus_title {
	font-size: 220%;
	margin-bottom: 20px
}

.sus_title a {
	display: inline-block;
	box-sizing: border-box;
	position: relative;
	line-height: 1.4
}

.sus_title a:after {
	content: "";
	position: absolute;
	width: 7px;
	height: 7px;
	top: 50%;
	transform: translate3d(0, -50%, 0) rotate(45deg) scale(1);
	border-top: 2px solid;
	border-right: 2px solid;
	border-color: red;
	left: -20px
}

@media screen and (max-width: 768px) {
	.sus_title {
		font-size: 180%
	}
}

.sus_lead {
	font-size: 140%;
	line-height: 1.6
}

@media screen and (max-width: 768px) {
	.sus_lead {
		font-size: 120%
	}
}

._service {
	padding: 50px 0 70px;
	justify-content: space-between
}

._service.flex_col3 li {
	width: 31.482%;
	margin-bottom: 4%;
	position: relative
}

._service.flex_col3 li a:before {
	display: block;
	content: '';
	width: 100%;
	height: 60px;
	position: absolute;
	bottom: 0;
	left: 0;
	box-sizing: border-box;
	padding: 1em;
	z-index: 2;
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, .2) 30%, rgba(0, 0, 0, .8) 88%, rgba(0, 0, 0, .8) 99%)
}

._service li a h3 {
	position: relative;
	display: block;
	padding: .9em;
	box-sizing: border-box;
	padding: 0;
	position: relative;
	z-index: 3
}

._service li a h3:after {
	position: absolute;
	content: "";
	display: inline-block;
	top: 50%;
	width: 6px;
	height: 6px;
	border-right: 1px solid red;
	border-bottom: 1px solid red;
	transform: translate(0, -50%) rotate(-45deg)
}

._service li a h3:after {
	margin-left: 5px
}

._service li a p {
	padding-bottom: 61.765%
}

@media screen and (max-width: 1120px) {
	._service li a h3 {
		font-size: 1vw
	}
}

@media screen and (max-width: 768px) {
	._service {
		padding-bottom: 5% !important
	}

	._service.sp_flex_col1 li {
		margin-bottom: 4%
	}

	._service.sp_flex_col1 li a dl {
		font-size: 2vw
	}
}

.overview_link {
	flex-wrap: wrap;
	font-size: 160%;
	margin-bottom: 70px
}

.overview_link > li {
	width: 48%;
	border-top: 2px solid red;
	background-color: #fff;
	padding: 20px;
	box-sizing: border-box
}

.overview_link > li li {
	border-bottom: 1px solid #ddd
}

.overview_link > li a {
	position: relative;
	display: block;
	padding: .9em;
	box-sizing: border-box
}

.overview_link > li a:after {
	position: absolute;
	content: "";
	display: inline-block;
	top: 50%;
	width: 9px;
	height: 9px;
	border-right: 1px solid red;
	border-bottom: 1px solid red;
	transform: translate(0, -50%) rotate(-45deg)
}

.overview_link > li a:after {
	right: 20px
}

.overview_link > li a[href$=".pdf"]:after {
	content: "";
	position: absolute;
	width: 20px;
	height: 20px;
	top: 50%;
	transform: translate3d(0, -50%, 0) rotate(0) scale(1);
	right: 13px;
	background: url(/jp/cmn_2020/img/icon_pdf.png) center center no-repeat;
	background-size: contain;
	border: none
}

@media screen and (max-width: 768px) {
	.overview_link {
		margin-bottom: 5%
	}

	.overview_link > li {
		margin-bottom: 20px
	}
}

#_events .inner_box, #_whatsnew .inner_box {
	margin: 0 auto
}

#_events .flex, #_whatsnew .flex {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center
}

#_events .flex > div, #_whatsnew .flex > div {
	position: relative
}

#_events .flex > div.width50, #_whatsnew .flex > div.width50 {
	width: calc(100% / 2)
}

#_events .flex > div.width33, #_whatsnew .flex > div.width33 {
	width: calc(100% / 3)
}

#_events .flex > div .description, #_whatsnew .flex > div .description {
	padding: 1em 1.6em
}

#_events .flex > div a, #_whatsnew .flex > div a {
	transition: none
}

#_events .flex > div a img, #_whatsnew .flex > div a img {
	max-width: 100%
}

#_events .flex > div a:hover, #_whatsnew .flex > div a:hover {
	opacity: 1
}

#_events .flex > div a:hover img, #_whatsnew .flex > div a:hover img {
	width: 120%
}

#_events .flex .description_wrap, #_whatsnew .flex .description_wrap {
	position: relative;
	padding-bottom: 67.4%;
	overflow: hidden
}

#_events .flex .description_wrap img, #_whatsnew .flex .description_wrap img {
	width: 101%;
	max-width: none;
	transition: .5s;
	vertical-align: top;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%)
}

#_events .flex .description_wrap:hover img, #_whatsnew .flex .description_wrap:hover img {
	width: 120%
}

#_events .flex .new:before, #_whatsnew .flex .new:before {
	content: "NEW";
	text-align: center;
	width: 10em;
	background-color: #cb1c1d;
	color: #fff;
	padding: .3em;
	font-size: 107%;
	display: inline-block;
	position: absolute;
	left: -3.4em;
	top: 1em;
	z-index: 3;
	font-weight: 700;
	transform: rotate(-45deg)
}

#_events .flex .category, #_whatsnew .flex .category {
	background-color: #cb1c1d;
	color: #fff;
	padding: .5em 1em;
	font-size: 70%;
	letter-spacing: .06em;
	position: absolute;
	z-index: 9999;
	right: 0;
	top: 0
}

#_events .flex h3, #_whatsnew .flex h3 {
	transition: 0s;
	font-size: 110%;
	max-height: 6em;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4
}

#_events .flex .description, #_whatsnew .flex .description {
	transition: .5s;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	font-size: 155%;
	color: #fff;
	box-sizing: border-box;
	padding: 10px 26px;
	letter-spacing: .1em;
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, .5) 30%, rgba(0, 0, 0, .8) 88%, rgba(0, 0, 0, .8) 99%)
}

#_events .flex .description .datetime, #_whatsnew .flex .description .datetime {
	display: block;
	font-size: 100%;
	letter-spacing: .06em;
	margin-bottom: 10px;
	margin-top: 5px
}

#_events .flex .description dl, #_whatsnew .flex .description dl {
	transition: .5s;
	visibility: hidden;
	opacity: 0
}

#_events .flex .description dl dt, #_whatsnew .flex .description dl dt {
	margin-bottom: 1em
}

#_events .flex .description dl dd, #_whatsnew .flex .description dl dd {
	font-size: 80%
}

#_events .btn, #_whatsnew .btn {
	text-align: center;
	font-size: 170%
}

#_events .btn a, #_whatsnew .btn a {
	position: relative;
	display: block;
	padding: .9em;
	box-sizing: border-box;
	background-color: #cb1c1d;
	color: #fff
}

#_events .btn a:after, #_whatsnew .btn a:after {
	position: absolute;
	content: "";
	display: inline-block;
	top: 50%;
	width: 6px;
	height: 6px;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	transform: translate(0, -50%) rotate(-45deg)
}

#_events .btn a:after, #_whatsnew .btn a:after {
	margin-left: 10px
}

@media screen and (max-width: 768px) {
	#_events, #_whatsnew {
		padding: 4% 0 30px
	}

	#_events .container, #_whatsnew .container {
		position: relative;
		overflow: hidden;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 30px;
		max-width: 1000px
	}

	#_events .swiper-container, #_whatsnew .swiper-container {
		width: 100%;
		height: 100%;
		overflow: visible;
		z-index: 1;
		margin-bottom: 30px
	}

	#_events .swiper-slide, #_whatsnew .swiper-slide {
		box-sizing: border-box;
		padding: 0 3%;
		background-color: transparent
	}

	#_events .mainvisual, #_whatsnew .mainvisual {
		margin-bottom: 30px
	}

	#_events .mainvisual .description, #_whatsnew .mainvisual .description {
		font-size: 140%
	}

	#_events .mainvisual .description h3, #_whatsnew .mainvisual .description h3 {
		font-size: 120%
	}

	#_events .description_wrap, #_whatsnew .description_wrap {
		position: relative;
		overflow: hidden
	}

	#_events .description_wrap img, #_whatsnew .description_wrap img {
		width: 100%;
		vertical-align: top
	}

	#_events .new:before, #_whatsnew .new:before {
		content: "NEW";
		text-align: center;
		width: 10em;
		background-color: #cb1c1d;
		color: #fff;
		padding: .3em;
		font-size: 10px;
		display: inline-block;
		position: absolute;
		left: -3.4em;
		top: 1em;
		z-index: 3;
		font-weight: 700;
		transform: rotate(-45deg)
	}

	#_events .category, #_whatsnew .category {
		background-color: #cb1c1d;
		color: #fff;
		padding: .5em 1em;
		font-size: 70%;
		letter-spacing: .06em;
		position: absolute;
		z-index: 9999;
		right: 0;
		top: 0
	}

	#_events .description, #_whatsnew .description {
		transition: .5s;
		position: absolute;
		left: 0;
		bottom: 0;
		width: 100%;
		color: #fff;
		box-sizing: border-box;
		padding: 4%;
		letter-spacing: .1em;
		background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, .5) 30%, rgba(0, 0, 0, .8) 88%, rgba(0, 0, 0, .8) 99%)
	}

	#_events .description .datetime, #_whatsnew .description .datetime {
		display: block;
		letter-spacing: .06em;
		margin-bottom: 10px
	}

	#_events .description dl, #_whatsnew .description dl {
		transition: .5s;
		visibility: hidden;
		opacity: 0
	}

	#_events .description dl dt, #_whatsnew .description dl dt {
		margin-bottom: 1em
	}

	#_events .btn, #_whatsnew .btn {
		width: 92%;
		margin: 0 auto;
		font-size: 140%
	}

	#_events .btn a, #_whatsnew .btn a {
		padding: .9em
	}

	#_events .btn a:after, #_whatsnew .btn a:after {
		margin-left: 0;
		right: 20px
	}
}

#search_wrap.kv {
	z-index: 7;
	max-width: 1226px;
	width: 100%;
	position: relative;
	box-sizing: border-box;
	padding: 1em 2em 1em 0;
	margin: -55px auto 53px;
	font-size: 160%;
	background-color: #434343;
	display: flex;
	justify-items: center;
	align-items: center
}

#search_wrap.kv ul {
	width: 50%;
	display: flex;
	position: absolute;
	left: 0;
	bottom: 2px
}

#search_wrap.kv ul li {
	width: 50%;
	display: inline-block;
	letter-spacing: .1em;
	position: relative
}

#search_wrap.kv ul li a:hover:before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
	background-color: rgba(255, 255, 255, .2)
}

#search_wrap.kv ul li:before {
	content: "";
	display: inline-block;
	position: absolute;
	left: 45px;
	top: 50%;
	transform: translate(-50%, -50%)
}

#search_wrap.kv ul li:after {
	content: "";
	display: inline-block;
	width: 6px;
	height: 6px;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translate(-50%, -50%) rotate(-45deg)
}

#search_wrap.kv ul li.icn_products {
	background-color: #cb1c1d
}

#search_wrap.kv ul li.icn_products:before {
	width: 49px;
	height: 34px;
	background: url(/jp/cmn_2020/img/icn_products.png) no-repeat center center;
	background-size: contain
}

#search_wrap.kv ul li.icn_profile {
	background-color: #7e0d0e
}

#search_wrap.kv ul li.icn_profile:before {
	width: 63px;
	height: 63px;
	background: url(/jp/cmn_2020/img/icn_profile.jpg) no-repeat center center;
	background-size: contain
}

#search_wrap.kv ul li h3 {
	font-size: 180%;
	font-weight: 100;
	margin-bottom: 6px
}

#search_wrap.kv ul li span {
	font-size: 80%;
	padding-left: 2px
}

#search_wrap.kv ul li a {
	line-height: 1;
	color: #fff;
	display: block;
	padding: 26px 10px 26px 90px
}

#search_wrap.kv .search {
	display: flex;
	align-items: center;
	justify-items: center;
	width: 100%;
	padding-left: 55%;
	box-sizing: border-box
}

#search_wrap.kv .search > dt {
	word-break: keep-all;
	color: #cbcbcb;
	margin-right: 20px
}

#search_wrap.kv .search > dd {
	width: 100%
}

#search_wrap.kv .search_form dl {
	position: relative
}

#search_wrap.kv .search_form dl input {
	width: 100%;
	padding: .8em 1em;
	box-sizing: border-box;
	background-color: #eee;
	border: none;
	border-radius: 5px;
	font-size: 100%;
	outline: 0 !important
}

#search_wrap.kv .search_form dl dd {
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%)
}

#search_wrap.kv .search_form dl dd button {
	display: block;
	padding: 6px;
	background: 0 0;
	border: none
}

#search_wrap.kv .search_form dl dd button span {
	display: block;
	width: 22px;
	height: 22px;
	background: url(/jp/cmn_2020/img/icn_search.png) no-repeat scroll 0 0;
	background-size: contain
}

@media screen and (max-width: 768px) {
	#search_wrap.kv .search_form dl dd button span {
		width: 20px;
		height: 20px
	}
}

@media screen and (max-width: 1120px) {
	#search_wrap.kv {
		display: block;
		padding: 0 4% 3%;
		margin-bottom: 0;
		margin-top: 0
	}

	#search_wrap.kv ul {
		box-sizing: border-box;
		width: 60%;
		left: 20px;
		top: -42px;
		bottom: auto
	}

	#search_wrap.kv ul li:before {
		left: 14%
	}

	#search_wrap.kv ul li.icn_products:before {
		width: 32px;
		height: 22px
	}

	#search_wrap.kv ul li.icn_profile:before {
		width: 42px;
		height: 42px
	}

	#search_wrap.kv ul li span {
		font-size: 70%
	}

	#search_wrap.kv ul li h3 {
		font-size: 150%
	}

	#search_wrap.kv ul li a {
		padding: 20px 20px 20px 24%
	}

	#search_wrap.kv .search {
		padding: 7% 4% 0;
		display: block
	}

	#search_wrap.kv .search > dt {
		margin-bottom: 10px;
		margin-right: 0
	}
}

@media screen and (max-width: 768px) {
	#search_wrap.kv {
		margin-top: 0
	}

	#search_wrap.kv .search_btn {
		width: 100%;
		box-sizing: border-box;
		padding: 0 4%;
		top: 15px;
		bottom: auto;
		display: flex;
		left: 0
	}

	#search_wrap.kv .search_btn li {
		width: 50%;
		font-size: 3vw
	}

	#search_wrap.kv .search_btn li:before {
		left: 10%
	}

	#search_wrap.kv .search_btn li:after {
		right: 5px
	}

	#search_wrap.kv .search_btn li.icn_products:before {
		width: 14%;
		height: 30%
	}

	#search_wrap.kv .search_btn li.icn_profile:before {
		width: 19%;
		height: 54%
	}

	#search_wrap.kv .search_btn li h3 {
		font-size: 150%
	}

	#search_wrap.kv .search_btn li a {
		padding: 14px 13px 14px 21%
	}

	#search_wrap.kv .search {
		padding: 27% 0 2% !important;
		font-size: 80%
	}
}

#visual-2.original_kv {
	background: url(/jp/ad/img/visual_ad.jpg) no-repeat center center/cover
}

#visual-2.original_kv #mainvisual .visual_text {
	text-shadow: none;
	top: 50%
}

#visual-2.original_kv #mainvisual .visual_text .kv_back {
	display: inline-block;
	padding: 4em 3em
}

#visual-2.original_kv #mainvisual .visual_text h2, #visual-2.original_kv #mainvisual .visual_text p {
	color: #333
}

@media screen and (max-width: 768px) {
	#visual-2.original_kv {
		background: url(/jp/ad/img/visual_ad_sp.jpg) no-repeat center center/cover
	}

	#visual-2.original_kv #mainvisual .visual_text .kv_back {
		display: block;
		padding: 1em
	}
}

#_case {
	background-color: #f6f6f6
}

#_case .inner_box {
	max-width: 1080px;
	width: 94%;
	margin: 0 auto;
	position: relative;
	box-sizing: border-box
}

#_case .title_block {
	padding: 50px 0 30px;
	position: relative
}

#_case .title_block.flex {
	display: flex;
	justify-content: space-between;
	align-items: center
}

@media screen and (max-width: 768px) {
	#_case .title_block {
		margin-bottom: 5%;
		padding: 5% 0 0
	}
}

#_case .title_block .title-2 {
	font-size: 320%;
	font-weight: 600
}

@media screen and (max-width: 768px) {
	#_case .title_block .title-2 {
		font-size: 4.4vw
	}
}

#_case .title_block .link_btn {
	width: 240px;
	font-size: 160%;
	border: 1px solid #a0a0a0
}

#_case .title_block .link_btn a {
	position: relative;
	display: block;
	padding: .9em;
	box-sizing: border-box;
	text-align: center;
	color: #333;
	position: relative
}

#_case .title_block .link_btn a:after {
	position: absolute;
	content: "";
	display: inline-block;
	top: 50%;
	width: 6px;
	height: 6px;
	border-right: 1px solid #ff0101;
	border-bottom: 1px solid #ff0101;
	transform: translate(0, -50%) rotate(-45deg)
}

#_case .title_block .link_btn a:after {
	right: 20px
}

@media screen and (max-width: 768px) {
	#_case .title_block .link_btn {
		width: 170px;
		font-size: 120%
	}
}

#_case .caselist.contents_block2 li a p {
	padding-bottom: 52%
}

#_case .caselist li {
	overflow: hidden
}

@media screen and (max-width: 768px) {
	#_case .caselist li:after {
		content: "";
		display: block;
		border-top: 1.4em solid transparent;
		border-right: 1.4em solid #cb1c1d;
		position: absolute;
		bottom: 4px;
		right: 4px;
		z-index: 10
	}
}

@media screen and (max-width: 768px) {
	#_case {
		padding-bottom: 5%
	}
}

#search_wrap.category {
	background-color: #f6f6f6
}

#search_wrap.category .inner_box {
	max-width: 1080px;
	margin: 0 auto;
	font-size: 160%;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between
}

#search_wrap.category .anchorlist {
	margin-top: 40px;
	margin-bottom: 40px;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between
}

#search_wrap.category .anchorlist li {
	width: 32%;
	border: 1px solid #cb1c1d;
	text-align: center
}

#search_wrap.category .anchorlist li a {
	color: #1b1b1b;
	font-weight: 700;
	position: relative;
	display: block;
	padding: 1em
}

#search_wrap.category .anchorlist li a:after {
	position: absolute;
	content: "";
	display: inline-block;
	width: 6px;
	height: 6px;
	top: 50%;
	right: 10px;
	border-right: 1px solid #ff0101;
	border-bottom: 1px solid #ff0101;
	transform: translate(0, -50%) rotate(45deg)
}

#search_wrap.category .anchorlist li:nth-child(n+4) {
	margin-top: 3%
}

#search_wrap.category .anchorlist:after {
	content: "";
	display: block;
	width: 32%
}

@media screen and (max-width: 768px) {
	#search_wrap.category .anchorlist {
		margin: 0 auto 3%
	}

	#search_wrap.category .anchorlist li {
		width: 96%;
		margin: 0 auto
	}

	#search_wrap.category .anchorlist li:nth-child(n) {
		margin-top: 0
	}

	#search_wrap.category .anchorlist li:not(:last-child) {
		margin-bottom: 10px
	}
}

#specialslide {
	background-color: #121212
}

#specialslide a, #specialslide abbr, #specialslide acronym, #specialslide address, #specialslide applet, #specialslide article, #specialslide aside, #specialslide audio, #specialslide b, #specialslide big, #specialslide blockquote, #specialslide body, #specialslide canvas, #specialslide caption, #specialslide center, #specialslide cite, #specialslide code, #specialslide dd, #specialslide del, #specialslide details, #specialslide dfn, #specialslide div, #specialslide dl, #specialslide dt, #specialslide em, #specialslide embed, #specialslide fieldset, #specialslide figcaption, #specialslide figure, #specialslide footer, #specialslide form, #specialslide h1, #specialslide h2, #specialslide h3, #specialslide h4, #specialslide h5, #specialslide h6, #specialslide header, #specialslide hgroup, #specialslide html, #specialslide i, #specialslide iframe, #specialslide img, #specialslide ins, #specialslide kbd, #specialslide label, #specialslide legend, #specialslide li, #specialslide mark, #specialslide menu, #specialslide nav, #specialslide object, #specialslide ol, #specialslide output, #specialslide p, #specialslide pre, #specialslide q, #specialslide ruby, #specialslide s, #specialslide samp, #specialslide section, #specialslide small, #specialslide span, #specialslide strike, #specialslide strong, #specialslide sub, #specialslide summary, #specialslide sup, #specialslide table, #specialslide tbody, #specialslide td, #specialslide tfoot, #specialslide th, #specialslide thead, #specialslide time, #specialslide tr, #specialslide tt, #specialslide u, #specialslide ul, #specialslide var, #specialslide video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	vertical-align: baseline
}

#specialslide article, #specialslide aside, #specialslide details, #specialslide figcaption, #specialslide figure, #specialslide footer, #specialslide header, #specialslide hgroup, #specialslide menu, #specialslide nav, #specialslide section {
	display: block
}

#specialslide body {
	line-height: 1
}

#specialslide ol, #specialslide ul {
	list-style: none
}

#specialslide blockquote, #specialslide q {
	quotes: none
}

#specialslide blockquote:after, #specialslide blockquote:before, #specialslide q:after, #specialslide q:before {
	content: none
}

#specialslide table {
	border-collapse: collapse;
	border-spacing: 0
}

#specialslide a {
	-webkit-tap-highlight-color: transparent
}

#specialslide .clearfix {
	overflow: hidden
}

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

#specialslide * html .clearfix {
	zoom: 1
}

#specialslide a {
	transition: .3s;
	text-decoration: none
}

#specialslide a:hover {
	text-decoration: none;
	opacity: .7
}

#specialslide .section_ttl {
	margin-bottom: 20px;
	letter-spacing: 0
}

#specialslide .container {
	overflow: hidden;
	margin-bottom: 50px
}

#specialslide .slider {
	display: flex;
	justify-content: space-between;
	font-size: 140%;
	letter-spacing: .04em
}

#specialslide .slider li {
	position: relative;
	box-sizing: border-box;
	background-color: transparent;
	width: 31%;
	text-align: center;
	overflow: hidden
}

#specialslide .slider li:hover img {
	width: 120%
}

#specialslide .slider li img {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 102%;
	max-width: none;
	transition: .5s
}

#specialslide .slider li a {
	color: #fff;
	line-height: 1.7;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center
}

#specialslide .slider li .slide-inner {
	padding-bottom: 44%;
	position: relative;
	overflow: hidden;
	box-sizing: border-box;
	background: center center no-repeat;
	background-size: cover
}

#specialslide .sns_wrap {
	background-color: #333;
	padding: 30px 0
}

#specialslide .sns_wrap .sns {
	max-width: 1080px;
	margin: 0 auto;
	text-align: right
}

#specialslide .sns_wrap .sns li {
	display: inline-block;
	margin-left: 40px
}

#specialslide .swiper-button-next, #specialslide .swiper-button-prev {
	background: #cb1c1d;
	width: 64px;
	height: 64px;
	top: 55%;
	margin-top: 0
}

#specialslide .swiper-button-next:after, #specialslide .swiper-button-prev:after {
	content: "";
	position: absolute;
	display: inline-block;
	width: 9px;
	height: 21px;
	background: url(/jp/cmn_2020/img/arrow.svg) no-repeat center center;
	background-size: contain;
	top: 50%;
	left: 50%
}

#specialslide .swiper-button-next.swiper-button-next, #specialslide .swiper-button-prev.swiper-button-next {
	right: -30px
}

#specialslide .swiper-button-next.swiper-button-next:after, #specialslide .swiper-button-prev.swiper-button-next:after {
	transform: translate(-50%, -50%) rotate(180deg);
	margin-left: 2px
}

#specialslide .swiper-button-next.swiper-button-prev, #specialslide .swiper-button-prev.swiper-button-prev {
	left: -30px
}

#specialslide .swiper-button-next.swiper-button-prev:after, #specialslide .swiper-button-prev.swiper-button-prev:after {
	transform: translate(-50%, -50%);
	margin-left: -3px
}

#specialslide .swiper-container3 .swiper-button-next, #specialslide .swiper-container3 .swiper-button-prev {
	width: 50px;
	height: 50px
}

#specialslide .swiper-container3 .swiper-button-next.swiper-button-next, #specialslide .swiper-container3 .swiper-button-prev.swiper-button-next {
	right: 0
}

#specialslide .swiper-container3 .swiper-button-next.swiper-button-prev, #specialslide .swiper-container3 .swiper-button-prev.swiper-button-prev {
	left: 0
}

#specialslide .inner_box {
	padding-top: 34px
}

@media screen and (max-width: 768px) {
	#specialslide {
		padding-top: 0
	}

	#specialslide .inner_box {
		padding-top: 0
	}

	#specialslide .section_ttl {
		padding: 3% 0;
		margin-bottom: 0
	}

	#specialslide .container {
		margin-bottom: 5%
	}

	#specialslide .slider {
		overflow: inherit
	}

	#specialslide .slider li {
		padding: 0 4%;
		box-sizing: border-box
	}

	#specialslide .slider li .slide-inner {
		padding-bottom: 44%
	}

	#specialslide .slider li:hover img {
		width: 102%
	}

	#specialslide .slider li a:hover {
		opacity: 1
	}

	#specialslide .sns_wrap {
		margin-top: 20px
	}

	#specialslide .sns_wrap .sns {
		text-align: center
	}

	#specialslide .sns_wrap .sns li {
		margin: 0 10px
	}

	#specialslide .sns_wrap .sns li.twitter {
		width: 34px
	}

	#specialslide .sns_wrap .sns li.facebook {
		width: 12px
	}

	#specialslide .sns_wrap .sns li.instagram {
		width: 24px
	}
}

#specialslide #contact {
	color: #fff;
	text-align: center;
	padding: 50px 20px 60px;
	background: url(/jp/img/visual_contact.jpg) no-repeat center center;
	background-size: cover
}

@media screen and (max-width: 768px) {
	#specialslide #contact {
		padding: 25px 3% 30px
	}
}

#specialslide #contact .contact_title {
	font-size: 320%;
	font-weight: 700;
	margin-bottom: 30px
}

@media screen and (max-width: 768px) {
	#specialslide #contact .contact_title {
		font-size: 180%;
		margin-bottom: 20px
	}
}

#specialslide #contact .contact_info {
	line-height: 1.6;
	font-size: 160%;
	height: 3.2em;
	margin-bottom: 23px
}

@media screen and (max-width: 768px) {
	#specialslide #contact .contact_info {
		height: 5.2em;
		font-size: 140%;
		text-align: left;
		margin-bottom: 20px
	}

	#specialslide #contact .contact_info br {
		display: none
	}
}

#specialslide #contact .contact_link {
	width: 360px;
	font-size: 180%;
	margin: 0 auto
}

@media screen and (max-width: 768px) {
	#specialslide #contact .contact_link {
		width: 100%;
		font-size: 140%
	}
}

#specialslide #contact .contact_link a {
	display: block;
	color: #000;
	padding: 14px 0;
	background-color: #fff;
	position: relative;
	text-decoration: none
}

#specialslide #contact .contact_link a:after {
	position: absolute;
	content: "";
	display: inline-block;
	width: 6px;
	height: 6px;
	top: 50%;
	right: 21px;
	border-right: 1px solid #ff0101;
	border-bottom: 1px solid #ff0101;
	transform: translate(0, -50%) rotate(-45deg)
}

#specialslide #contact .technology_item {
	display: none
}

#rdc {
	padding: 60px 0;
	background: url(/jp/technology/img/rdc_bg.jpg) no-repeat center center/cover
}

#rdc .inner_box {
	max-width: 800px;
	box-sizing: border-box;
	background: #fff;
	border-radius: 10px;
	padding: 40px
}

#rdc .inner_box img {
	width: 100%;
	display: block
}

@media screen and (max-width: 768px) {
	#rdc {
		padding: 20px 0
	}
}

.block3 col:nth-child(1) {
	width: 50.0092%
}

.block3 col:nth-child(2) {
	width: 21.666%
}

.block3 col:nth-child(3) {
	width: 28.0555%
}

@media screen and (max-width: 1080px) {
	.block3 col:nth-child(1) {
		width: 60%
	}

	.block3 col:nth-child(2) {
		width: 20%
	}

	.block3 col:nth-child(3) {
		width: 20%
	}
}

@media screen and (max-width: 768px) {
	.block3 col:nth-child(1) {
		width: 33.333%
	}

	.block3 col:nth-child(2) {
		width: 33.333%
	}

	.block3 col:nth-child(3) {
		width: 33.333%
	}
}

.block3.col2:nth-child(1) {
	width: 71.6752%
}

.block3.col2:nth-child(2) {
	width: 28.0555%
}

@media screen and (max-width: 1080px) {
	.block3.col2:nth-child(1) {
		width: 80%
	}

	.block3.col2:nth-child(2) {
		width: 20%
	}
}

@media screen and (max-width: 768px) {
	.block3.col2:nth-child(1) {
		width: 66.666%
	}

	.block3.col2:nth-child(2) {
		width: 33.333%
	}
}

.title-4 {
	font-size: 180%;
	font-weight: 600;
	margin-bottom: 30px;
	padding: 16px 10px 16px 24px;
	border-bottom: 1px dotted #6f6f6f;
	position: relative
}

.title-4:after {
	content: "";
	display: block;
	width: 2px;
	height: 47px;
	background-color: red;
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto
}

@media screen and (max-width: 768px) {
	.title-4 {
		font-size: 160%;
		margin-bottom: 4%
	}
}

.title_block {
	position: relative
}

.title_block a, .title_block abbr, .title_block acronym, .title_block address, .title_block applet, .title_block article, .title_block aside, .title_block audio, .title_block b, .title_block big, .title_block blockquote, .title_block body, .title_block canvas, .title_block caption, .title_block center, .title_block cite, .title_block code, .title_block dd, .title_block del, .title_block details, .title_block dfn, .title_block div, .title_block dl, .title_block dt, .title_block em, .title_block embed, .title_block fieldset, .title_block figcaption, .title_block figure, .title_block footer, .title_block form, .title_block h1, .title_block h2, .title_block h3, .title_block h4, .title_block h5, .title_block h6, .title_block header, .title_block hgroup, .title_block html, .title_block i, .title_block iframe, .title_block img, .title_block ins, .title_block kbd, .title_block label, .title_block legend, .title_block li, .title_block mark, .title_block menu, .title_block nav, .title_block object, .title_block ol, .title_block output, .title_block p, .title_block pre, .title_block q, .title_block ruby, .title_block s, .title_block samp, .title_block section, .title_block small, .title_block span, .title_block strike, .title_block strong, .title_block sub, .title_block summary, .title_block sup, .title_block table, .title_block tbody, .title_block td, .title_block tfoot, .title_block th, .title_block thead, .title_block time, .title_block tr, .title_block tt, .title_block u, .title_block ul, .title_block var, .title_block video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	vertical-align: baseline
}

.title_block article, .title_block aside, .title_block details, .title_block figcaption, .title_block figure, .title_block footer, .title_block header, .title_block hgroup, .title_block menu, .title_block nav, .title_block section {
	display: block
}

.title_block body {
	line-height: 1
}

.title_block ol, .title_block ul {
	list-style: none
}

.title_block blockquote, .title_block q {
	quotes: none
}

.title_block blockquote:after, .title_block blockquote:before, .title_block q:after, .title_block q:before {
	content: none
}

.title_block table {
	border-collapse: collapse;
	border-spacing: 0
}

.title_block a {
	-webkit-tap-highlight-color: transparent
}

.title_block .clearfix {
	overflow: hidden
}

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

.title_block * html .clearfix {
	zoom: 1
}

.title_block.flex {
	display: flex;
	justify-content: space-between;
	align-items: center
}

@media screen and (max-width: 768px) {
	.title_block {
		margin-bottom: 5%
	}
}

.title_block .title-2 {
	font-size: 320%;
	font-weight: 600
}

@media screen and (max-width: 768px) {
	.title_block .title-2 {
		font-size: 4.4vw
	}
}

.title_block .more {
	font-size: 160%;
	position: absolute;
	top: 50%;
	right: 14px;
	transform: translate(0, -50%)
}

.title_block .more a {
	position: relative;
	position: relative;
	display: block;
	padding: .9em;
	box-sizing: border-box
}

.title_block .more a:hover {
	text-decoration: underline
}

.title_block .more a:after {
	position: absolute;
	content: "";
	display: inline-block;
	top: 50%;
	width: 6px;
	height: 6px;
	border-right: 1px solid #cb1c1d;
	border-bottom: 1px solid #cb1c1d;
	transform: translate(0, -50%) rotate(-45deg)
}

@media screen and (max-width: 768px) {
	.title_block .more {
		display: none;
		font-size: 120%
	}
}

.title_wrap {
	position: relative;
	padding-bottom: 1px
}

.title_wrap .title-1 {
	font-size: 320%;
	font-weight: 600;
	text-align: center;
	margin-bottom: 60px;
	padding: 60px 0 10px;
	position: relative;
	line-height: 1.6
}

.title_wrap .title-1:after {
	content: "";
	display: block;
	width: 100px;
	height: 2px;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto
}

@media screen and (max-width: 768px) {
	.title_wrap .title-1 {
		font-size: 4.4vw;
		padding: 10% 0 10px;
		margin-bottom: 10%
	}
}

.title_wrap .btn {
	text-align: center;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(0, -50%);
	width: 240px;
	font-size: 160%;
	border: 1px solid #a0a0a0
}

.title_wrap .btn a {
	position: relative;
	display: block;
	padding: .9em;
	box-sizing: border-box;
	text-align: center;
	color: #333;
	position: relative
}

.title_wrap .btn a:after {
	position: absolute;
	content: "";
	display: inline-block;
	top: 50%;
	width: 6px;
	height: 6px;
	border-right: 1px solid #cb1c1d;
	border-bottom: 1px solid #cb1c1d;
	transform: translate(0, -50%) rotate(-45deg)
}

.title_wrap .btn a:after {
	right: 20px
}

@media screen and (max-width: 1120px) {
	.title_wrap .btn {
		position: static;
		width: 100%;
		transform: none;
		margin-bottom: 10px
	}
}

.lead {
	font-size: 160%;
	line-height: 2;
	margin-bottom: 4%
}

@media screen and (max-width: 767px) {
	.lead {
		font-size: 120%
	}
	.lead img {
		max-width: 100%;
	}
}

#_special {
	background-color: #121212
}

#_special a {
	transition: .3s;
	text-decoration: none
}

#_special a:hover {
	text-decoration: none;
	opacity: .7
}

#_special .section_ttl {
	margin-bottom: 20px;
	letter-spacing: 0
}

#_special .container {
	overflow: hidden;
	margin-bottom: 50px
}

#_special .inner_box {
	padding-top: 34px
}

@media screen and (max-width: 768px) {
	#_special {
		padding-top: 0
	}

	#_special .inner_box {
		padding-top: 0
	}

	#_special .section_ttl {
		padding: 3% 0;
		margin-bottom: 0
	}

	#_special .container {
		margin-bottom: 5%
	}

	#_special .slider {
		overflow: inherit
	}

	#_special .slider li {
		padding: 0 4%;
		box-sizing: border-box
	}

	#_special .slider li .slide-inner {
		padding-bottom: 44%
	}

	#_special .slider li:hover img {
		width: 102%
	}

	#_special .slider li a:hover {
		opacity: 1
	}

	#_special .sns_wrap {
		margin-top: 20px
	}

	#_special .sns_wrap .sns {
		text-align: center
	}

	#_special .sns_wrap .sns li {
		margin: 0 10px
	}

	#_special .sns_wrap .sns li.twitter {
		width: 34px
	}

	#_special .sns_wrap .sns li.facebook {
		width: 12px
	}

	#_special .sns_wrap .sns li.instagram {
		width: 24px
	}
}

#_special #_contact {
	color: #fff;
	text-align: center;
	padding: 50px 20px 60px;
	background: url(/jp/img/visual_contact.jpg) no-repeat center center;
	background-size: cover
}

@media screen and (max-width: 768px) {
	#_special #_contact {
		padding: 25px 3% 30px
	}

	#_special #_contact dl {
		font-size: 10px;
	}
}

#_special #_contact .contact_title {
	font-size: 320%;
	font-weight: 700;
	margin-bottom: 30px
}

@media screen and (max-width: 768px) {
	#_special #_contact .contact_title {
		font-size: 180%;
		margin-bottom: 20px
	}
}

#_special #_contact .contact_info {
	line-height: 1.6;
	font-size: 160%;
	height: 3.2em;
	margin-bottom: 23px
}

@media screen and (max-width: 768px) {
	#_special #_contact .contact_info {
		height: 5.2em;
		font-size: 140%;
		text-align: left;
		margin-bottom: 20px
	}

	#_special #_contact .contact_info br {
		display: none
	}
}

#_special #_contact .contact_link {
	width: 360px;
	font-size: 180%;
	margin: 0 auto
}

@media screen and (max-width: 768px) {
	#_special #_contact .contact_link {
		width: 100%;
		font-size: 140%
	}
}

#_special #_contact .contact_link a {
	display: block;
	color: #000;
	padding: 14px 0;
	background-color: #fff;
	position: relative;
	text-decoration: none
}

#_special #_contact .contact_link a:after {
	position: absolute;
	content: "";
	display: inline-block;
	width: 6px;
	height: 6px;
	top: 50%;
	right: 21px;
	border-right: 1px solid #cb1c1d;
	border-bottom: 1px solid #cb1c1d;
	transform: translate(0, -50%) rotate(-45deg)
}

#_special #_contact .technology_item {
	display: none
}

#_contact table, #_contact td, #_contact th {
	border: 1px solid #fff;
	box-sizing: border-box
}

@media screen and (max-width: 768px) {
	#_contact table, #_contact td, #_contact th {
		display: block
	}
}

#_contact table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0
}

@media screen and (max-width: 768px) {
	#_contact table {
		display: block
	}
}

#_contact td, #_contact th {
	vertical-align: middle;
	text-align: left;
	background-color: #f6f6f6;
	padding: 17px 2%
}

@media screen and (max-width: 768px) {
	#_contact td, #_contact th {
		display: block
	}
}

#_contact .block3 col:nth-child(1) {
	width: 50.0092%
}

#_contact .block3 col:nth-child(2) {
	width: 21.666%
}

#_contact .block3 col:nth-child(3) {
	width: 28.0555%
}

@media screen and (max-width: 1080px) {
	#_contact .block3 col:nth-child(1) {
		width: 60%
	}

	#_contact .block3 col:nth-child(2) {
		width: 20%
	}

	#_contact .block3 col:nth-child(3) {
		width: 20%
	}
}

@media screen and (max-width: 768px) {
	#_contact .block3 col:nth-child(1) {
		width: 33.333%
	}

	#_contact .block3 col:nth-child(2) {
		width: 33.333%
	}

	#_contact .block3 col:nth-child(3) {
		width: 33.333%
	}
}

#_contact .block3.col2:nth-child(1) {
	width: 71.6752%
}

#_contact .block3.col2:nth-child(2) {
	width: 28.0555%
}

@media screen and (max-width: 1080px) {
	#_contact .block3.col2:nth-child(1) {
		width: 80%
	}

	#_contact .block3.col2:nth-child(2) {
		width: 20%
	}
}

@media screen and (max-width: 768px) {
	#_contact .block3.col2:nth-child(1) {
		width: 66.666%
	}

	#_contact .block3.col2:nth-child(2) {
		width: 33.333%
	}
}

#_contact .block2 {
	width: 50%
}

@media screen and (max-width: 768px) {
	#_contact .block2 {
		width: 25%
	}
}

#_contact .contact_area {
	text-align: center
}

@media screen and (max-width: 1080px) {
	#_contact .text_link_area {
		display: block
	}
}

#_contact .text_link_area dl {
	display: flex;
	justify-content: space-between;
	align-items: center
}

#_contact .text_link_area dl dt {
	display: inline-block;
	font-size: 160%
}

@media screen and (max-width: 768px) {
	#_contact .text_link_area dl dt {
		width: 47%;
		font-size: 140%
	}
}

#_contact .text_link_area dl dd {
	display: inline-block;
	width: 246px;
	font-size: 160%;
	text-align: center
}

@media screen and (max-width: 768px) {
	#_contact .text_link_area dl dd {
		width: 52%;
		font-size: 140%
	}
}

#_contact .text_link_area dl dd a {
	display: block;
	color: #fff;
	padding: 14px 0;
	background: url(/jp/cmn_2020/img/arrow_03.png) no-repeat right 13px center red
}

@media screen and (max-width: 768px) {
	#_contact .text_link_area dl dd a {
		padding: 10px 0;
		background-position: right 5px center
	}
}

#_contact .item_text {
	font-size: 160%;
	max-width: 670px;
	line-height: 1.9
}

@media screen and (max-width: 768px) {
	#_contact .item_text {
		font-size: 140%
	}
}

#_contact .item_text dt {
	font-weight: 600;
	line-height: 1.7
}

#_contact .item_text dd {
	line-height: 1.7
}

#_contact .item_text a {
	text-decoration: underline
}

#_contact .item_text a:after {
	content: "";
	display: inline-block;
	width: 7px;
	height: 12px;
	margin-left: 20px;
	background: url(/jp/cmn_2020/img/arrow_05.png) no-repeat center;
	background-size: cover
}

#_contact .item {
	display: flex
}

@media screen and (max-width: 768px) {
	#_contact .item .item_image {
		font-size: 120%;
		margin-bottom: 10px
	}
}

#_contact .item .item_text {
	font-size: 160%;
	line-height: 1.7;
	max-width: 330px;
	margin-left: 35px
}

@media screen and (max-width: 768px) {
	#_contact .item .item_text {
		font-size: 140%;
		margin-left: 10px
	}
}

#_contact .con_btn-1 {
	display: inline-block;
	width: 74px;
	font-size: 110%;
	margin: 5px;
	position: relative
}

#_contact .con_btn-1 a {
	display: block;
	padding: 50px 0 0;
	background: url(/jp/contact/img/icon_1.png) no-repeat top center
}

#_contact .link_btn_2 {
	width: 100%
}

#_contact .link_btn_2 li {
	max-width: 246px;
	font-size: 140%;
	text-align: center;
	margin: 0 auto 11px
}

@media screen and (max-width: 768px) {
	#_contact .link_btn_2 li {
		width: 246px;
		font-size: 140%
	}
}

#_contact .link_btn_2 li a {
	display: block;
	color: #fff;
	padding: 14px 20px 14px 10px;
	background: url(/jp/cmn_2020/img/arrow_03.png) no-repeat right 8px center red
}

@media screen and (max-width: 768px) {
	#_contact .link_btn_2 li a {
		padding: 10px 0
	}
}

#_contact .link_btn_2 li:last-child {
	margin-bottom: 0
}

#field {
	background-color: #aaa
}

#field .field {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 0 0 30px
}

#field .field li {
	width: 23%;
	height: 250px;
	text-align: center;
	background-color: #fff;
	position: relative;
	margin-bottom: 20px
}

#field .field li:hover img {
	visibility: hidden;
	opacity: 0
}

#field .field li:hover img.on {
	visibility: visible;
	opacity: 1
}

#field .field li a {
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 2
}

#field .field li img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	transition: .5s;
	opacity: 1
}

#field .field li img.on {
	visibility: hidden;
	opacity: 0
}

#field .field li p {
	font-size: 180%;
	font-weight: 700;
	position: absolute;
	bottom: 20px;
	width: 100%
}

#field .field li p span {
	position: relative
}

#field .field li p span:after {
	position: absolute;
	margin-left: -28px;
	content: "";
	display: inline-block;
	width: 6px;
	height: 6px;
	top: 50%;
	border-right: 1px solid #ff0101;
	border-bottom: 1px solid #ff0101;
	transform: translate(40px, -51%) rotate(-45deg)
}

@media screen and (max-width: 1120px) {
	#field .field {
		padding: 3% 0
	}

	#field .field li {
		width: 30%
	}

	#field .field:after {
		content: "";
		width: 30%
	}
}

@media screen and (max-width: 768px) {
	#field .field li {
		width: 48% !important;
		height: 48vw;
		margin-bottom: 10px
	}

	#field .field li p {
		font-size: 130%
	}

	#field .field li img {
		transform: translate(-50%, -50%) scale(.8)
	}

	#field .field:after {
		content: none
	}
}

.module_btn1 {
	margin-top: 70px;
	font-size: 16px
}

.module_btn1 a {
	position: relative;
	display: block;
	padding: .9em;
	box-sizing: border-box;
	width: 267px;
	text-align: center;
	background-color: #cb1c1d;
	color: #fff;
	padding: 1.3em
}

.module_btn1 a:after {
	position: absolute;
	content: "";
	display: inline-block;
	top: 50%;
	width: 6px;
	height: 6px;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	transform: translate(0, -50%) rotate(-45deg)
}

.module_btn1 a:after {
	right: 20px
}

.module_btn2 {
	margin-top: 70px;
	font-size: 16px
}

.module_btn2 a {
	position: relative;
	display: block;
	padding: .9em;
	box-sizing: border-box;
	width: 100%;
	text-align: center;
	background-color: #cb1c1d;
	color: #fff;
	padding: 1.3em
}

.module_btn2 a:after {
	position: absolute;
	content: "";
	display: inline-block;
	top: 50%;
	width: 6px;
	height: 6px;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	transform: translate(0, -50%) rotate(-45deg)
}

.module_btn2 a:after {
	right: 20px
}

#main {
	font-size: 62.5%;
	font-feature-settings: "palt";
	font-family: 'Noto Sans JP', sans-serif;
	line-height: 1.5;
	color: #1b1b1b
}

#main .entry-new {
	font-size: 160%
}

#main .ttl-type1 {
	font-size: 30px;
	font-weight: 300;
	text-align: center;
	margin-bottom: 10px
}

#main .ttl-type1 + p {
	font-size: 14px
}

#main .btn-black:active, #main .btn-black:link, #main .btn-black:visited {
	color: #fff;
	text-decoration: none
}

#main .title_about {
	text-align: center;
	font-size: 28px;
	font-weight: 700;
	color: #d82689;
	margin: 0 0 30px;
	line-height: 1.3
}

@media screen and (max-width: 768px) {
	#main .title_about {
		font-size: 6vw
	}
}

#main .title_about span {
	font-size: 20px
}

#main .type3 {
	border-bottom: 6px solid #004980;
	color: #000;
	background: #fff;
	padding: 20px 0 15px 87px;
	line-height: 1
}

#main .type3 span {
	word-wrap: normal
}

#main .type3::after {
	content: none
}

#main .detail-seminar h2.type3::before {
	content: "";
	width: 67px;
	height: 67px;
	background-position: left top;
	background: url(/jp/yume_pro/events/img/event_ttl_ico_seminar.png) no-repeat center center;
	position: absolute;
	left: 0;
	bottom: -6px
}

.pan {
	width: 96%;
	max-width: 1080px;
	margin: 0 auto;
    margin: 9px auto;
	text-align: left;
}

.pan a, .pan abbr, .pan acronym, .pan address, .pan applet, .pan article, .pan aside, .pan audio, .pan b, .pan big, .pan blockquote, .pan body, .pan canvas, .pan caption, .pan center, .pan cite, .pan code, .pan dd, .pan del, .pan details, .pan dfn, .pan div, .pan dl, .pan dt, .pan em, .pan embed, .pan fieldset, .pan figcaption, .pan figure, .pan footer, .pan form, .pan h1, .pan h2, .pan h3, .pan h4, .pan h5, .pan h6, .pan header, .pan hgroup, .pan html, .pan i, .pan iframe, .pan img, .pan ins, .pan kbd, .pan label, .pan legend, .pan li, .pan mark, .pan menu, .pan nav, .pan object, .pan ol, .pan output, .pan p, .pan pre, .pan q, .pan ruby, .pan s, .pan samp, .pan section, .pan small, .pan span, .pan strike, .pan strong, .pan sub, .pan summary, .pan sup, .pan table, .pan tbody, .pan td, .pan tfoot, .pan th, .pan thead, .pan time, .pan tr, .pan tt, .pan u, .pan ul, .pan var, .pan video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	vertical-align: baseline
}

.pan article, .pan aside, .pan details, .pan figcaption, .pan figure, .pan footer, .pan header, .pan hgroup, .pan menu, .pan nav, .pan section {
	display: block
}

.pan body {
	line-height: 1
}

.pan ol, .pan ul {
	list-style: none
}

.pan blockquote, .pan q {
	quotes: none
}

.pan blockquote:after, .pan blockquote:before, .pan q:after, .pan q:before {
	content: none
}

.pan table {
	border-collapse: collapse;
	border-spacing: 0
}

.pan a {
	-webkit-tap-highlight-color: transparent
}

.pan .clearfix {
	overflow: hidden
}

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

.pan * html .clearfix {
	zoom: 1
}

@media screen and (max-width: 768px) {
	.pan {
		width: 100%;
		margin-top: 8px;
        margin-bottom: 9px;
		font-size: 10px;
	}
}

.pan ul {
	font-size: 120%;
	padding-left: .9em
}

@media screen and (max-width: 768px) {
	.pan ul {
		border-top: 1px solid #333;
        padding-top: .9em;
	}
}

.pan ul li {
	display: inline-block;
    padding: .2em;
}

.pan ul li a {
	position: relative;
	display: block;
	/*padding: .9em;*/
	box-sizing: border-box;
	padding-left: 0;
	padding-right: 1.8em;
	color: #1b1b1b;
}

.pan ul li a:after {
	position: absolute;
	content: "";
	display: inline-block;
	top: 50%;
	width: 5px;
	height: 5px;
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
	transform: translate(0, -50%) rotate(-45deg)
}

.pan ul li a:after {
	position: absolute;
	right: .6em
}

.pan ul li:last-child {
	/*padding: .9em 0 ;*/
}


/*widthsize-class*/
.w1per{width:1%;box-sizing:border-box}.w2per{width:2%;box-sizing:border-box}.w3per{width:3%;box-sizing:border-box}.w4per{width:4%;box-sizing:border-box}.w5per{width:5%;box-sizing:border-box}.w6per{width:6%;box-sizing:border-box}.w7per{width:7%;box-sizing:border-box}.w8per{width:8%;box-sizing:border-box}.w9per{width:9%;box-sizing:border-box}.w10per{width:10%;box-sizing:border-box}.w11per{width:11%;box-sizing:border-box}.w12per{width:12%;box-sizing:border-box}.w13per{width:13%;box-sizing:border-box}.w14per{width:14%;box-sizing:border-box}.w15per{width:15%;box-sizing:border-box}.w16per{width:16%;box-sizing:border-box}.w17per{width:17%;box-sizing:border-box}.w18per{width:18%;box-sizing:border-box}.w19per{width:19%;box-sizing:border-box}.w20per{width:20%;box-sizing:border-box}.w21per{width:21%;box-sizing:border-box}.w22per{width:22%;box-sizing:border-box}.w23per{width:23%;box-sizing:border-box}.w24per{width:24%;box-sizing:border-box}.w25per{width:25%;box-sizing:border-box}.w26per{width:26%;box-sizing:border-box}.w27per{width:27%;box-sizing:border-box}.w28per{width:28%;box-sizing:border-box}.w29per{width:29%;box-sizing:border-box}.w30per{width:30%;box-sizing:border-box}.w31per{width:31%;box-sizing:border-box}.w32per{width:32%;box-sizing:border-box}.w33per{width:33%;box-sizing:border-box}.w34per{width:34%;box-sizing:border-box}.w35per{width:35%;box-sizing:border-box}.w36per{width:36%;box-sizing:border-box}.w37per{width:37%;box-sizing:border-box}.w38per{width:38%;box-sizing:border-box}.w39per{width:39%;box-sizing:border-box}.w40per{width:40%;box-sizing:border-box}.w41per{width:41%;box-sizing:border-box}.w42per{width:42%;box-sizing:border-box}.w43per{width:43%;box-sizing:border-box}.w44per{width:44%;box-sizing:border-box}.w45per{width:45%;box-sizing:border-box}.w46per{width:46%;box-sizing:border-box}.w47per{width:47%;box-sizing:border-box}.w48per{width:48%;box-sizing:border-box}.w49per{width:49%;box-sizing:border-box}.w50per{width:50%;box-sizing:border-box}.w51per{width:51%;box-sizing:border-box}.w52per{width:52%;box-sizing:border-box}.w53per{width:53%;box-sizing:border-box}.w54per{width:54%;box-sizing:border-box}.w55per{width:55%;box-sizing:border-box}.w56per{width:56%;box-sizing:border-box}.w57per{width:57%;box-sizing:border-box}.w58per{width:58%;box-sizing:border-box}.w59per{width:59%;box-sizing:border-box}.w60per{width:60%;box-sizing:border-box}.w61per{width:61%;box-sizing:border-box}.w62per{width:62%;box-sizing:border-box}.w63per{width:63%;box-sizing:border-box}.w64per{width:64%;box-sizing:border-box}.w65per{width:65%;box-sizing:border-box}.w66per{width:66%;box-sizing:border-box}.w67per{width:67%;box-sizing:border-box}.w68per{width:68%;box-sizing:border-box}.w69per{width:69%;box-sizing:border-box}.w70per{width:70%;box-sizing:border-box}.w71per{width:71%;box-sizing:border-box}.w72per{width:72%;box-sizing:border-box}.w73per{width:73%;box-sizing:border-box}.w74per{width:74%;box-sizing:border-box}.w75per{width:75%;box-sizing:border-box}.w76per{width:76%;box-sizing:border-box}.w77per{width:77%;box-sizing:border-box}.w78per{width:78%;box-sizing:border-box}.w79per{width:79%;box-sizing:border-box}.w80per{width:80%;box-sizing:border-box}.w81per{width:81%;box-sizing:border-box}.w82per{width:82%;box-sizing:border-box}.w83per{width:83%;box-sizing:border-box}.w84per{width:84%;box-sizing:border-box}.w85per{width:85%;box-sizing:border-box}.w86per{width:86%;box-sizing:border-box}.w87per{width:87%;box-sizing:border-box}.w88per{width:88%;box-sizing:border-box}.w89per{width:89%;box-sizing:border-box}.w90per{width:90%;box-sizing:border-box}.w91per{width:91%;box-sizing:border-box}.w92per{width:92%;box-sizing:border-box}.w93per{width:93%;box-sizing:border-box}.w94per{width:94%;box-sizing:border-box}.w95per{width:95%;box-sizing:border-box}.w96per{width:96%;box-sizing:border-box}.w97per{width:97%;box-sizing:border-box}.w98per{width:98%;box-sizing:border-box}.w99per{width:99%;box-sizing:border-box}.w100per{width:100%;box-sizing:border-box}.w10px{width:10px;box-sizing:border-box}.w20px{width:20px;box-sizing:border-box}.w30px{width:30px;box-sizing:border-box}.w40px{width:40px;box-sizing:border-box}.w50px{width:50px;box-sizing:border-box}.w60px{width:60px;box-sizing:border-box}.w70px{width:70px;box-sizing:border-box}.w80px{width:80px;box-sizing:border-box}.w90px{width:90px;box-sizing:border-box}.w100px{width:100px;box-sizing:border-box}.w110px{width:110px;box-sizing:border-box}.w120px{width:120px;box-sizing:border-box}.w130px{width:130px;box-sizing:border-box}.w140px{width:140px;box-sizing:border-box}.w150px{width:150px;box-sizing:border-box}.w160px{width:160px;box-sizing:border-box}.w170px{width:170px;box-sizing:border-box}.w180px{width:180px;box-sizing:border-box}.w190px{width:190px;box-sizing:border-box}.w200px{width:200px;box-sizing:border-box}.w210px{width:210px;box-sizing:border-box}.w220px{width:220px;box-sizing:border-box}.w230px{width:230px;box-sizing:border-box}.w240px{width:240px;box-sizing:border-box}.w250px{width:250px;box-sizing:border-box}.w260px{width:260px;box-sizing:border-box}.w270px{width:270px;box-sizing:border-box}.w280px{width:280px;box-sizing:border-box}.w290px{width:290px;box-sizing:border-box}.w300px{width:300px;box-sizing:border-box}.w310px{width:310px;box-sizing:border-box}.w320px{width:320px;box-sizing:border-box}.w330px{width:330px;box-sizing:border-box}.w340px{width:340px;box-sizing:border-box}.w350px{width:350px;box-sizing:border-box}.w360px{width:360px;box-sizing:border-box}.w370px{width:370px;box-sizing:border-box}.w380px{width:380px;box-sizing:border-box}.w390px{width:390px;box-sizing:border-box}.w400px{width:400px;box-sizing:border-box}.w410px{width:410px;box-sizing:border-box}.w420px{width:420px;box-sizing:border-box}.w430px{width:430px;box-sizing:border-box}.w440px{width:440px;box-sizing:border-box}.w450px{width:450px;box-sizing:border-box}.w460px{width:460px;box-sizing:border-box}.w470px{width:470px;box-sizing:border-box}.w480px{width:480px;box-sizing:border-box}.w490px{width:490px;box-sizing:border-box}.w500px{width:500px;box-sizing:border-box}.w510px{width:510px;box-sizing:border-box}.w520px{width:520px;box-sizing:border-box}.w530px{width:530px;box-sizing:border-box}.w540px{width:540px;box-sizing:border-box}.w550px{width:550px;box-sizing:border-box}.w560px{width:560px;box-sizing:border-box}.w570px{width:570px;box-sizing:border-box}.w580px{width:580px;box-sizing:border-box}.w590px{width:590px;box-sizing:border-box}.w600px{width:600px;box-sizing:border-box}.w610px{width:610px;box-sizing:border-box}.w620px{width:620px;box-sizing:border-box}.w630px{width:630px;box-sizing:border-box}.w640px{width:640px;box-sizing:border-box}.w650px{width:650px;box-sizing:border-box}.w660px{width:660px;box-sizing:border-box}.w670px{width:670px;box-sizing:border-box}.w680px{width:680px;box-sizing:border-box}.w690px{width:690px;box-sizing:border-box}.w700px{width:700px;box-sizing:border-box}.w710px{width:710px;box-sizing:border-box}.w720px{width:720px;box-sizing:border-box}.w730px{width:730px;box-sizing:border-box}.w740px{width:740px;box-sizing:border-box}.w750px{width:750px;box-sizing:border-box}.w760px{width:760px;box-sizing:border-box}.w770px{width:770px;box-sizing:border-box}.w780px{width:780px;box-sizing:border-box}.w790px{width:790px;box-sizing:border-box}.w800px{width:800px;box-sizing:border-box}.w810px{width:810px;box-sizing:border-box}.w820px{width:820px;box-sizing:border-box}.w830px{width:830px;box-sizing:border-box}.w840px{width:840px;box-sizing:border-box}.w850px{width:850px;box-sizing:border-box}.w860px{width:860px;box-sizing:border-box}.w870px{width:870px;box-sizing:border-box}.w880px{width:880px;box-sizing:border-box}.w890px{width:890px;box-sizing:border-box}.w900px{width:900px;box-sizing:border-box}.w910px{width:910px;box-sizing:border-box}.w920px{width:920px;box-sizing:border-box}.w930px{width:930px;box-sizing:border-box}.w940px{width:940px;box-sizing:border-box}.w950px{width:950px;box-sizing:border-box}.w960px{width:960px;box-sizing:border-box}.w970px{width:970px;box-sizing:border-box}.w980px{width:980px;box-sizing:border-box}.w990px{width:990px;box-sizing:border-box}.w1000px{width:1000px;box-sizing:border-box}
img.w1per{width:1%!important}img.w1per,img.w2per{max-width:100%!important}img.w2per{width:2%!important}img.w3per{width:3%!important}img.w3per,img.w4per{max-width:100%!important}img.w4per{width:4%!important}img.w5per{width:5%!important}img.w5per,img.w6per{max-width:100%!important}img.w6per{width:6%!important}img.w7per{width:7%!important}img.w7per,img.w8per{max-width:100%!important}img.w8per{width:8%!important}img.w9per{width:9%!important}img.w9per,img.w10per{max-width:100%!important}img.w10per{width:10%!important}img.w11per{width:11%!important}img.w11per,img.w12per{max-width:100%!important}img.w12per{width:12%!important}img.w13per{width:13%!important}img.w13per,img.w14per{max-width:100%!important}img.w14per{width:14%!important}img.w15per{width:15%!important}img.w15per,img.w16per{max-width:100%!important}img.w16per{width:16%!important}img.w17per{width:17%!important}img.w17per,img.w18per{max-width:100%!important}img.w18per{width:18%!important}img.w19per{width:19%!important}img.w19per,img.w20per{max-width:100%!important}img.w20per{width:20%!important}img.w21per{width:21%!important}img.w21per,img.w22per{max-width:100%!important}img.w22per{width:22%!important}img.w23per{width:23%!important}img.w23per,img.w24per{max-width:100%!important}img.w24per{width:24%!important}img.w25per{width:25%!important}img.w25per,img.w26per{max-width:100%!important}img.w26per{width:26%!important}img.w27per{width:27%!important}img.w27per,img.w28per{max-width:100%!important}img.w28per{width:28%!important}img.w29per{width:29%!important}img.w29per,img.w30per{max-width:100%!important}img.w30per{width:30%!important}img.w31per{width:31%!important}img.w31per,img.w32per{max-width:100%!important}img.w32per{width:32%!important}img.w33per{width:33%!important}img.w33per,img.w34per{max-width:100%!important}img.w34per{width:34%!important}img.w35per{width:35%!important}img.w35per,img.w36per{max-width:100%!important}img.w36per{width:36%!important}img.w37per{width:37%!important}img.w37per,img.w38per{max-width:100%!important}img.w38per{width:38%!important}img.w39per{width:39%!important}img.w39per,img.w40per{max-width:100%!important}img.w40per{width:40%!important}img.w41per{width:41%!important}img.w41per,img.w42per{max-width:100%!important}img.w42per{width:42%!important}img.w43per{width:43%!important}img.w43per,img.w44per{max-width:100%!important}img.w44per{width:44%!important}img.w45per{width:45%!important}img.w45per,img.w46per{max-width:100%!important}img.w46per{width:46%!important}img.w47per{width:47%!important}img.w47per,img.w48per{max-width:100%!important}img.w48per{width:48%!important}img.w49per{width:49%!important}img.w49per,img.w50per{max-width:100%!important}img.w50per{width:50%!important}