@charset "Shift_JIS";
/* ===========================================
	base
=========================================== */
body #HeaderArea2 {
	z-index: 10;
}

body #Contents {
	padding-bottom: 65px;
}

body #Contents.Newstyle {
	padding-bottom: 0;
	letter-spacing: 0.075em;
}

#TopicPath ul:not(.Visible) {
	visibility: hidden;
}

#TopicPath.Wide ul {
	width: 1275px;
}

#TopicPath + .l-wrapper {
	margin-top: -1px;
	padding-top: 1px;
}

.l-section {
	position: relative;
}

.l-section .Section {
	position: relative;
	z-index: 1;
}

.l-section .Section.Wide {
	padding-bottom: 70px;
}

.l-section .Section h1,
.l-section .Section h2 {
	margin-bottom: 40px;
}

.CatchCopy.Large {
	margin-bottom: 60px;
	font-size: 125%;
	line-height: 170%;
}

em.download {
	font-style: normal;
	white-space: nowrap;
}

img + em.download {
	display: none;
}

.ShowU1305,
.ShowU995,
.ShowU580,
.ShowU400 {
	display: none;
}

.disp_ib {
	display: inline-block;
	max-width: 100%;
}

.disp_flex {
	display: flex;
}

.hidden {
	visibility: hidden;
}

.withShadow {
	box-shadow: 1px 1px 10px 0 #e5e5e5, -1px -1px 10px 0 #e5e5e5;
}

.Plate {
	display: inline-block;
	padding: 4.545%;
	background-color: #ffffff;
}

/* MegaMenu */
#HeaderArea2 #MegaMenu {
	width: auto!important;
	margin: 0!important;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-direction: row;
	flex-direction: row;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

#HeaderArea2 .MMSet {
	top: 100%;
}

#HeaderArea2 .MMGlobalNaviStyle a {
	line-height: 60px;
}

#HeaderArea2 .MMGlobalNaviStyle.Current.MMSetMenu a {
	line-height: 60px;
}

#HeaderArea2 .MMGlobalNaviStyle.Current.MMSetMenu a.Strong strong {
	line-height: 60px;
}

#HeaderArea2 .MMGlobalNaviStyle.Current a strong {
	line-height: 60px;
}

#HeaderArea2 .MMGlobalNaviStyle.Current a em {
	line-height: 60px;
}

#HeaderArea2 .MMGlobalNaviStyle.Current.MMSetMenu a em {
	line-height: 60px;
}

@media screen and (max-width: 767px) {
	#HeaderArea2 > .Container #MegaMenu {
		display: none;
	}
}

/* ===========================================
	heading
=========================================== */
.PageTitleWrapper {
	margin-bottom: 85px;
	background-repeat: no-repeat;
	background-size: cover;
}
.PageTitleWrapper#domain {
	background-image: url(/company/about/domain/image/bg_pagetitle.jpg);
	background-position: center bottom;
}

.PageTitleWrapper .PageTitle {
	display: flex;
	align-items: center;
	min-height: 300px;
	padding: 50px 0;
}
.PageTitleWrapper#domain .PageTitle {
	margin-left: 310px;
}

.PageTitleWrapper .PageTitle .Inner {
	text-align: center;
	text-shadow: 5px 5px 20px #fff, -5px -5px 20px #fff;
}

.PageTitleWrapper .PageTitle .SubTitle {
	display: inline-block;
	margin-bottom: 40px;
	padding-bottom: 3px;
	font-size: 112.5%;
	font-weight: bold;
	color: #000000;
	border-bottom: 2px solid #cc0022;
}

.PageTitleWrapper .PageTitle h1 {
	margin-bottom: 25px;
	font-size: 200%;
	font-weight: bold;
}

#Contents.Newstyle h1.c-hd--type01,
.PageTitleStyle1.Newstyle h1.c-hd--type01 {
	padding-top: 25px;
}

.PageTitleStyle1.Newstyle h1.c-hd--type01 {
	display: block;
	margin-bottom: 0;
	white-space: normal;
	font-size: 100%;
}

#Contents.Newstyle h1.c-hd--type01,
#Contents.Newstyle h2.c-hd--type01,
.PageTitleStyle1.Newstyle h1.c-hd--type01 {
	margin-left: 0;
	margin-right: 0;
	background-image: none;
}

#Contents.Newstyle h1.c-hd--type01 span,
#Contents.Newstyle h2.c-hd--type01 span,
.PageTitleStyle1.Newstyle h1.c-hd--type01 span {
	display: block;
	padding: 0;
	background-color: transparent;
	font-weight: normal;
	line-height: 130%;
}

#Contents.Newstyle h1.c-hd--type01 span.c-hd--type01__main,
#Contents.Newstyle h2.c-hd--type01 span.c-hd--type01__main,
.PageTitleStyle1.Newstyle h1.c-hd--type01 span.c-hd--type01__main {
	margin-bottom: 5px;
	font-size: 225%;
	color: #333333;
}
.PageTitleStyle1.Newstyle h1.c-hd--type01 span.c-hd--type01__main:after {
	display: none;
}

#Contents.Newstyle h1.c-hd--type01 span.c-hd--type01__sub,
#Contents.Newstyle h2.c-hd--type01 span.c-hd--type01__sub,
.PageTitleStyle1.Newstyle h1.c-hd--type01 span.c-hd--type01__sub {
	font-size: 125%;
	color: #888888;
	letter-spacing: 0;
}

#Contents.Newstyle h2.c-hd--type02 {
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	margin-left: 0;
	margin-right: 0;
	background-image: none;
}
#Contents.Newstyle h2.c-hd--type02:before,
#Contents.Newstyle h2.c-hd--type02:after {
	content: "";
	flex-grow: 1;
	display: block;
	height: 1px;
	background-color: #bbbbbb;
}

#Contents.Newstyle h2.c-hd--type02 span {
	position: relative;
	padding: 3px 35px 0;
	font-size: 175%;
	color: #333333;
	background-color: transparent;
}
#Contents.Newstyle h2.c-hd--type02 span:before,
#Contents.Newstyle h2.c-hd--type02 span:after {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	display: block;
	width: 9px;
	height: 9px;
	background-color: #b1000e;
}
#Contents.Newstyle h2.c-hd--type02 span:before {
	left: 0;
}
#Contents.Newstyle h2.c-hd--type02 span:after {
	right: 0;
}

#Contents.Newstyle h2.c-hd--type02.LeftAdjust {
	text-align: left;
}
#Contents.Newstyle h2.c-hd--type02.LeftAdjust:before {
	display: none;
}

#Contents.Newstyle h2.c-hd--type02.LeftAdjust span {
	padding-left: 0;
}
#Contents.Newstyle h2.c-hd--type02.LeftAdjust span:before {
	display: none;
}

/* ===========================================
	column
=========================================== */
.ColumnSet.Flex {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.ColumnSet.Flex:after {
	display: none;
}
.ColumnSet.Flex.Reverse {
	flex-direction: row-reverse;
}
.ColumnSet.Flex.AlignCenter {
	align-items: center;
}
.ColumnSet.Flex.Stretch {
	align-items: stretch;
}

.ColumnSet.Flex .Column2 {
	display: flex;
	max-width: 600px;
	margin: 0;
}

.ColumnSet.Flex.Box .Inner {
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	margin-bottom: 15px;
}

.ColumnSet.Flex.Box .Inner .Img {
	position: relative;
	width: 46.667%;
	height: 280px;
}

.ColumnSet.Flex.Box .Inner .Img img {
	width: 100%;
	height: 100% !important;
	object-fit: cover;
}

.ColumnSet.Flex.Box .Inner .Txt {
	display: flex;
	flex-grow: 1;
	height: 100%;
	margin-left: -23.3334%;
	background-color: #ffffff;
	box-shadow: 1px 1px 10px 0 #e5e5e5, -1px -1px 10px 0 #e5e5e5;
}

.ColumnSet.Flex.Box .Inner .Txt .TxtInner {
	width: 100%;
	height: 100%;
	min-height: 335px;
	padding: 50px 30px 50px 37%;
	box-sizing: border-box;
}
.ColumnSet.Flex.Box .Inner .Txt h2 {
	margin-bottom: 10px;
}

.ColumnSet.Flex.Box .Inner .Txt .LinkListStyle1 {
	margin-bottom: 0;
}

.ColumnSet.Flex.Type01 {
	justify-content: flex-start;
}

.ColumnSet.Flex.Type01 .Column3 {
	max-width: 815px;
}

.ColumnSet.Flex.Type01 .Column1 {
	margin-left: 80px;
}

.ColumnSet.Flex.Type02 .Column1 {
	width: 440px;
}

.ColumnSet.Flex.Type02 img {
	max-width: 100%;
}

.ColumnSet.Flex.Type02 .Column2 {
	width: 785px;
	max-width: none;
}

.ColumnSet.Flex.Type02 .CatchCopy.Large {
	margin-bottom: 30px;
}

.ColumnSet.Flex.ImgHeadingSet {
	flex-wrap: wrap;
	justify-content: center;
}

.ColumnSet.Flex.ImgHeadingSet .Column1:not(.FirstItem) {
	margin-left: 50px;
}

.ColumnSet.Flex.ImgHeadingSet a.ImgHeadingStyle {
	display: block;
	text-decoration: none;
}

.ColumnSet.Flex.ImgHeadingSet .Title h2 {
	display: flex;
	align-items: center;
	min-height: 40px;
	margin-bottom: 0;
	font-size: 90%;
	background-image: none;
	background-color: rgba(0, 0, 0, 0.68);
}

.ColumnSet.Flex.ImgHeadingSet .Title h2 .Inner {
	display: block;
	width: 100%;
	margin: -10px;
	padding: 10px 22px 10px 15px;
	border-right: solid 3px transparent;
	font-weight: inherit;
	text-decoration: inherit;
	background-image: url(/image/jp/r1/icon/icon_link_right_l_white_hd.gif);
	background-repeat: no-repeat;
	background-position: right center;
	background-size: 16px 16px;
}
.ColumnSet.Flex.ImgHeadingSet a:hover .Title h2 .Inner,
.ColumnSet.Flex.ImgHeadingSet a:active .Title h2 .Inner {
	padding-right: 24px;
	text-decoration: underline;
	border-right: solid 1px transparent;
}

.ColumnSet.Flex.ImgHeadingSet .Title h2 .Inner * {
	font-weight: inherit;
	text-decoration: inherit;
}

.ColumnSet.Flex.Special {
	max-width: 1125px;
	margin: 0 auto 40px;
}

.ColumnSet.Flex.Special .Column {
	width: 40%;
}

.ColumnSet.Flex.Special .Column h2 {
	margin: 0 0 20px;
	background-image: none;
}

.ColumnSet.Flex.Special .Column h2 span {
	padding: 0;
	font-size: 200%;
	color: #333333;
	background-color: transparent;
}

.ColumnSet.Flex.Special .Column .Txt {
	font-weight: bold;
}

.ColumnSet.Flex.Special .Img {
	width: 20%;
	padding: 20px 6% 0;
	text-align: center;
	box-sizing: border-box;
}

.ColumnSet.Flex.Box01 .Column2 {
	max-width: none;
	margin-bottom: 25px;
	padding-top: 0.8em;
}

.ColumnSet.Flex.Box01 .Column2 .Inner {
	position: relative;
	display: flex;
	padding: 50px 20px 40px;
	flex-direction: column;
	justify-content: space-between;
	background-color: #f2f2f2;
}

.ColumnSet.Flex.Box01 .Column2 .Inner h3 {
	position: absolute;
	left: 20px;
	top: 0;
	width: calc(100% - 40px);
	margin-top: -0.6em;
	text-align: center;
	font-size: 150%;
	color: #cc0022
}

.ColumnSet.Flex.Box01 .Column2 .Inner h3 span {
	position: relative;
	display: inline-block;
	padding: 0 40px;
}
.ColumnSet.Flex.Box01 .Column2 .Inner h3 span:before,
.ColumnSet.Flex.Box01 .Column2 .Inner h3 span:after {
	content: "";
	position: absolute;
	top: 50%;
	width: 1px;
	height: 120%;
	background-color: #000000;
	transform-origin: top;
}
.ColumnSet.Flex.Box01 .Column2 .Inner h3 span:before {
	left: 0;
	transform: translateY(-40%) rotate(-45deg);
}
.ColumnSet.Flex.Box01 .Column2 .Inner h3 span:after {
	right: 0;
	transform: translateY(-40%) rotate(45deg);
}

.ColumnSet.Flex.Box01 .Column2 .Inner .CatchCopy {
	margin-bottom: 15px;
	font-size: 100%;
	font-weight: bold;
}

.ColumnSet.Flex.Box01 .Column2 .Inner .BoxList {
	display: flex;
	flex-wrap: wrap;
	margin-left: -10px;
	padding-top: 10px;
}

.ColumnSet.Flex.Box01 .Column2 .Inner .BoxList li {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: calc(33.33333333% - 10px);
	margin: 0 0 10px 10px;
	padding: 15px 5px 25px;
	background-color: #ffffff;
	box-sizing: border-box;
}

.ColumnSet.Flex.Box01 .Column2 .Inner h4 {
	font-size: 90%;
	line-height: 140%;
	text-align: center;
}

.ColumnSet.Flex.Box01 .Column2 .Inner .Img {
	display: flex;
	width: 100%;
	height: 90px;
	justify-content: center;
	align-items: center;
}

.ColumnSet.Flex.Box01 .Column2 .Inner .TextStyle1.etc {
	position: absolute;
	bottom: 0;
	right: 20px;
}

/* ===========================================
	box
=========================================== */
.SpecialBox {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	max-width: 925px;
	margin: 0 auto 90px;
	padding: 20px 0 7px;
	border: 1px solid #707070;
}
.SpecialBox.Type02 {
	margin-bottom: 60px;
	border-style: none;
	box-shadow: 1px 1px 10px 0 #e5e5e5, -1px -1px 10px 0 #e5e5e5;
}

.SpecialBox .Txt,
.SpecialBox .ButtonStyle1.Movie {
	margin: 0 15px;
}

.SpecialBox .ButtonStyle1.Movie a {
	padding: 11px 45px 11px 40px;
	text-align: left;
	font-size: 90%;
	background-color: #b1000e;
	background-image: url(/image/jp/r1/icon/icon_movie_white_hd.png);
	background-position: right 20px center;
	border-radius: 40px;
	border-style: none;
	transition: 0.2s;
}
.SpecialBox .ButtonStyle1.Movie a:hover,
.SpecialBox .ButtonStyle1.Movie a:active {
	background-color: #7e000a;
}

/* ===========================================
	button
=========================================== */
.ButtonStyle1.Flex {
	display: flex;
	flex-wrap: wrap;
	max-width: 100%;
}

.ButtonStyle1.Flex.CenterAdjust {
	justify-content: center;
}

.ButtonStyle1.Flex a {
	display: flex;
	padding: 5px 40px 2px;
	justify-content: center;
	align-items: center;
	line-height: 150%;
	background-position: right 15px center;
	background-size: 32px auto;
	box-sizing: border-box;
	transition: 0.2s;
}
.ButtonStyle1.Flex a:hover,
.ButtonStyle1.Flex a:active {
	background-position: right 12px center;
}

.l-section .Section .ButtonStyle1.Flex a {
	width:100%;
	max-width: 450px;
	min-height: 100px;
	font-size: 112.5%;
	color: #333333;
	background-color: rgba(255, 255, 255, 0.7);
	background-image: url(/image/jp/r1/icon/icon_link_right_hd.gif);
	background-size: 32px auto;
	border: 1px solid #333333;
}
.l-section .Section .ButtonStyle1.Flex a:hover,
.l-section .Section .ButtonStyle1.Flex a:active {
	color: #ffffff;
	background-color: #b1000e;
	background-image: url(/image/jp/r1/icon/icon_link_right_white_hd.gif);
	border-color: #b1000e;
}

.l-section .Section .ColumnSet + .ButtonStyle1.Flex,
.l-section .Section .p-summary + .ButtonStyle1.Flex {
	margin-top: 55px;
}

.l-section .Section .ButtonStyle1.Flex a:nth-child(n+2) {
	margin-top: 15px;
}

.l-section .SectionInner .ButtonStyle1.Flex {
	margin-top: 70px;
}

/* ===========================================
	list
=========================================== */
.LinkListStyle1.PanelLink {
	border-bottom: 1px solid #333333;
}

.LinkListStyle1.PanelLink li {
	padding: 15px 30px 15px 15px;
	border-top: 1px solid #333333;
}

.LinkListStyle1.PanelLink li a {
	position: relative;
	display: block;
	margin: -15px -30px -15px -15px;
	padding: 15px 30px 15px 15px;
	background-image: none !important;
	transition: 0.2s;
}
.LinkListStyle1.PanelLink li a:hover,
.LinkListStyle1.PanelLink li a:active {
	background-color: #f2f2f2;
}
.LinkListStyle1.PanelLink li a:after {
	content: "";
	position: absolute;
	display: block;
	width: 16px;
	height: 16px;
	top: 50%;
	right: 7px;
	margin: -8px 0 0;
	background-image: url(/image/jp/r1/icon/icon_link_right_hd.gif);
	background-repeat: no-repeat;
	background-size: 16px 16px;
	transition: 0.2s;
}
.LinkListStyle1.PanelLink li a:hover:after,
.LinkListStyle1.PanelLink li a:active:after {
	right: 5px;
}
.LinkListStyle1.PanelLink li.pdf a:after,
.LinkListStyle1.PanelLink li a[href*=".pdf"]:after {
	right: 9px !important;
	background-image: url(/image/jp/r1/icon/icon_pdf_hd.gif) !important;
}

.LinkListStyle1.PanelLink .p-summary__meta {
	display: block;
	margin-right: -5px;
	padding: 0 0 3px;
	color: #333333;
	text-decoration: none;
	letter-spacing: -1em;
}

.LinkListStyle1.PanelLink .p-summary__time {
	display: inline-block;
	width: 9em;
	margin-bottom: 5px;
	letter-spacing: normal;
	vertical-align: middle;
}

.LinkListStyle1.PanelLink .p-summary__cat {
	display: inline-block;
	min-width: 8em;
	margin: 0 5px 5px 0;
	padding: 4px 0.5em;
	text-align: center;
	font-size: 90.3%;
	vertical-align: middle;
	border: 1px solid #888888;
	letter-spacing: normal;
	box-sizing: border-box;
}

.l-section .SectionInner .InnerLinksArea {
	padding: 25px 0 10px;
}

.l-section .SectionInner .InnerLinksArea .LinkListStyle5 li {
	margin-right: 20px;
}
.l-section .SectionInner .InnerLinksArea .LinkListStyle5 li:last-child {
	margin-right: 0;
}

.l-section .SectionInner .Section .ResponsiveLinkListStyle {
	display: flex;
	flex-wrap: wrap;
	margin-left: -25px;
}

.l-section .SectionInner .Section .LinkListStyle1 {
	width: 50%;
	margin: 0;
	padding-left: 25px;
	box-sizing: border-box;
}
.l-section .SectionInner .Section .LinkListStyle1.long {
	width: 100%;
	margin-top: 15px;
}

/* ===========================================
	section
=========================================== */
.withBg.company {
	background-image: url(/company/image/bg_company.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}

.l-section.panel_unit {
	padding-top: 90px;
	background-color: #f2f2f2;
}

.l-section#domain_intro {
	background-image: url(/company/about/domain/image/bg_intro.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

.l-section#domain_innovation {
	background-image: url(/company/about/domain/image/bg_innovation.jpg);
	background-repeat: no-repeat;
	background-position: center -100px;
	background-size: cover;
}

#innovation_map {
	position: relative;
	max-width: 1225px;
	margin: 170px auto 0;
}

#innovation_map .Section {
	position: absolute;
	width: 330px;
	padding: 0;
}
#innovation_map .Section#modernize {
	left: 255px;
	bottom: 525px;
}
#innovation_map .Section#security {
	left: 0;
	bottom: 305px;
}
#innovation_map .Section#supplychain {
	right: 0;
	bottom: 305px;
}
#innovation_map .Section#payment {
	right: 85px;
	bottom: 35px;
}
#innovation_map .Section#workstyle {
	left: 85px;
	bottom: 35px;
}

#innovation_map .Section h3 {
	font-size: 112.5%;
	color: #333333;
}
#innovation_map .Section.Left h3 {
	margin-right: 45px;
}
#innovation_map .Section.Right h3 {
	margin-left: 45px;
}

#innovation_map .Section .TextStyle1 {
	margin-bottom: 5px;
	padding-bottom: 10px;
	border-bottom: 1px solid #333333;
}
#innovation_map .Section.Left .TextStyle1 {
	padding-right: 45px;
}
#innovation_map .Section.Right .TextStyle1 {
	padding-left: 45px;
}

#innovation_map .Section.Right .ButtonStyle1 {
	text-align: right;
}

#innovation_map .Section .ButtonStyle1 a {
	display: inline-flex;
	margin-bottom: 0;
	align-items: center;
	min-height: 30px;
	padding: 3px 30px 3px 15px;
	font-size: 90%;
	font-weight: bold;
	background-color: #333333;
	background-position: right 15px center;
	border-style: none;
	border-radius: 30px;
	box-sizing: border-box;
	transition: 0.2s;
}
#innovation_map .Section .ButtonStyle1 a:hover,
#innovation_map .Section .ButtonStyle1 a:active {
	background-color: #555555;
	background-position: right 13px center;
}

.l-section .SectionInner {
	max-width: 965px;
	margin: 0 auto;
}

.l-section .SectionInner .Section {
	padding: 30px 0;
}

.l-section .SectionInner .Section h3 {
	margin-bottom: 40px;
	text-align: center;
	font-size: 112.5%;
	color: #000000;
}

a.ImgLink {
	display: inline-block;
	max-width: 100%;
	background-color: #ffffff;
}

.ImgOnlyStyle a.ImgLink {
	margin-bottom: 5px;
}

a.ImgLink img {
	margin-bottom: 0;
}
a.ImgLink:hover img,
a.ImgLink:active img {
	opacity: 0.8;
}

/* ===========================================
	footer
=========================================== */
footer.l-footer {
	padding: 0 15px;
	background-color: #fafafa;
	border-top: 1px solid #dddddd;
}

footer.l-footer * {
	box-sizing: border-box;
}

footer.l-footer .l-footer__inner {
	max-width: 1275px;
	margin: 0 auto;
	padding: 60px 0 90px;
	letter-spacing: 0.075em;
}

.l-footer .p-sitemap {
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 0 -30px;
	padding: 35px 0 0;
}

.l-footer .p-sitemap__nav {
	width: 25%;
	padding-left: 30px;
}

.l-footer .p-sitemap__cat {
	margin-bottom: 15px;
	font-size: 87.5%;
	color: #333333;
}

.l-footer .p-sitemap__item {
	font-size: 81.25%;
	color: #333333;
}
.l-footer .p-sitemap__item {
	margin-bottom: 3px !important;
}

.l-footer .p-sitemap__cat a,
.l-footer .p-sitemap__item a {
	text-decoration: none;
	color: inherit;
}
.l-footer .p-sitemap__cat a:hover,
.l-footer .p-sitemap__cat a:active,
.l-footer .p-sitemap__item a:hover,
.l-footer .p-sitemap__item a:active {
	text-decoration: underline;
}

.l-footer .p-sitemap__cat a *,
.l-footer .p-sitemap__item a * {
	text-decoration: inherit;
}

#PageTopControler {
	position: relative;
}

#PageTopControler #FooterPageTop {
	width: 50px;
	height: 50px;
	right: 50px;
	top: auto;
	bottom: 50px;
	z-index: 10;
	background-color: transparent;
	border-radius: 50%;
	box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.3);
	overflow: hidden;
}
#PageTopControler #FooterPageTop.Fixed {
	position: fixed;
}
#PageTopControler #FooterPageTop:before,
#PageTopControler #FooterPageTop:after {
	display: none;
}

#PageTopControler #FooterPageTop img {
	width: 100%;
	height: 100%;
	transition: 0.2s;
}
.PC #PageTopControler #FooterPageTop:hover img,
.PC #PageTopControler #FooterPageTop:active img {
	opacity: 0.7;
}

.SP .download--pdf {
	display: none;
}

/* ===========================================
	side parts
=========================================== */
#navi_parts_area {
	width: 100%;
}

#VerticalLocalNavi + #navi_parts_area {
	margin-top: 25px;
}

.InquiryBox {
	padding: 20px 30px 25px;
	text-align: center;
	color: #000000;
	background-color: #f1f1f1;
	letter-spacing: 0.025em;
}
.InquiryBox:not(:first-of-type) {
	margin-top: 20px;
}

.Grid1 .InquiryBox {
	padding-left: 15px;
	padding-right: 15px;
}

.InquiryBox * {
	font-family: 'メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック',Arial,Helvetica,sans-serif !important;

}

.InquiryBox h2 {
	margin-bottom: 20px !important;
	padding-bottom: 5px;
	font-size: 120%;
	font-weight: bold;
	letter-spacing: 0.075em;
	border-bottom: 2px solid #b1000e;
}

.InquiryBox h3 {
	margin-bottom: 3px;
	font-size: 90%;
	color: inherit;
	border-bottom: none;
}

.InquiryBox h3 span {
	position: relative;
	display: inline-block;
	padding-left: 10px;
}
.InquiryBox h3 span:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	display: block;
	width: 5px;
	height: 5px;
	background-color: #b1000e;
}

.InquiryBox .TextStyle2 {
	margin-bottom: 8px;
}

.InquiryBox .Tel {
	font-size: 137.5%;
	font-weight: bold;
	letter-spacing: 0.075em;
	line-height: 100%;
}

.InquiryBox .InquiryTime {
	display: inline-flex;
	flex-wrap: wrap;
	width: 17.5em;
	max-width: 100%;
	margin-bottom: 15px;
	text-align: left;
	font-size: 70%;
	letter-spacing: 0.05em;
}

.InquiryBox .InquiryTime dt {
	width: 4.5em;
	margin-right: 1em;
	line-height: 140%;
}

.InquiryBox .InquiryTime dd {
	width: calc(100% - 5.5em);
	line-height: 140%;
}

.InquiryBox a.Btn {
	display: flex;
	justify-content: center;
	max-width: 320px;
	margin: 8px auto 0;
	padding: 0 5px;
	font-weight: bold;
	font-size: 90%;
	color: #ffffff;
	text-decoration: none;
	background-color: #333333;
	border-radius: 100px;
	box-sizing: border-box;
}
.InquiryBox a.Btn:hover,
.InquiryBox a.Btn:active {
	opacity: 0.8;
}

.InquiryBox a.Btn span {
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 45px;
	padding-right: 20px;
	background-image: url(/image/hsc2/common/icon_inquiry_white.png);
	background-position: right center;
	background-repeat: no-repeat;
	background-size: 19px 19px;
}

.BannerArea li {
	margin-top: 20px;
}

.BannerArea li.banner {
	border: 1px solid #bebebe;
}

.BannerArea li.banner a {
	position: relative;
	display: block;
	width: 100%;
	height: 105px;
	background-color: #ffffff;
}

.BannerArea li.banner a .Img {
	text-align: center;
}

.BannerArea li.banner a .Title {
	position: absolute;
	bottom: 0;
	left: 0;
	display: flex;
	width: 100%;
}

.BannerArea li.banner a .Title h2 {
	display: flex;
	align-items: center;
	width: 100%;
	min-height: 40px;
	margin-bottom: 0;
	padding: 5px 0 5px 15px;
	font-size: 90%;
	color: #ffffff;
	background-image: none;
	background-color: rgba(0, 0, 0, 0.68);
	box-sizing: border-box;
}

.BannerArea li.banner a .Title h2 .Inner {
	display: block;
	width: 100%;
	padding-right: 20px;
	line-height: 120%;
	font-weight: normal;
	background-image: url(/image/jp/r1/icon/icon_link_right_l_white_hd.gif);
	background-repeat: no-repeat;
	background-position: right 3px center;
	background-size: 16px 16px;
	text-decoration: none;
}
.BannerArea li.banner a:hover .Title h2 .Inner,
.BannerArea li.banner a:active .Title h2 .Inner {
	background-position: right 1px center;
	text-decoration: underline;
}

.BannerArea li.catalog {
	border: 1px solid #818181;
}

.BannerArea li.catalog a {
	display: flex;
	height: 90px;
	justify-content: center;
	align-items: center;
	text-decoration: none;
	background-image: url(/image/hsc2/common/bg_banner_brochure.png);
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: cover;
}
.BannerArea li.catalog a:hover,
.BannerArea li.catalog a:active {
	opacity: 0.8;
}

.BannerArea li.catalog a h2 {
	width: 100%;
	margin-bottom: 0;
	padding: 5px;
	text-align: center;
	line-height: 120%;
	border-bottom: 4px solid #b1000e;
}

.BannerArea li.catalog a h2 .Inner {
	display: inline-block;
	padding: 2px 25px 0 0;
	text-align: left;
	font-size: 112.5%;
	font-weight: bold;
	color: #000000;
	background-image: url(/image/hsc2/common/icon_download_red.png);
	background-position: right center;
	background-repeat: no-repeat;
	background-size: 20px auto;
	letter-spacing: 0.025em;
}

.BannerArea li.catalog a em {
	display: none;
}

/* ===================================================
   for Responsive Web Design
==================================================== */
@media screen and (min-width: 1305px) {
	.OptionWide .Grid1 .InquiryBox {
		padding-left: 30px;
		padding-right: 30px;
	}

	.l-section#top-information {
		overflow: hidden;
	}

	/* MegaMenu (from wide.css)*/
	.Container.Wide .MMColumnArea {
		width: 1275px;
		padding-bottom: 15px;
	}

	.Container.Wide .MMGrid1 {
		width: 300px;
		margin: 0 0 0 25px;
	}

	.Container.Wide .MMGrid2 {
		width: 625px;
		margin: 0 0 0 25px;
	}

	.Container.Wide .MMGrid3 {
		width: 950px;
		margin: 0 0 0 25px;
	}

	.Container.Wide .MMGrid4 {
		width: 1275px;
	}

	.Container.Wide .MMGrid1.MMFirstItem,
	.Container.Wide .MMGrid2.MMFirstItem,
	.Container.Wide .MMGrid3.MMFirstItem {margin: 0;}

	.Container.Wide .MMColumn1,
	.Container.Wide .MMTopColumnMenu1,
	.Container.Wide .MMBottomColumnMenu {
		width: 300px;
		margin: 0 0 0 25px;
	}

	.Container.Wide .MMColumn2,
	.Container.Wide .MMTopColumnMenu2 {
		width: 625px;
		margin: 0 0 0 25px;
	}

	.Container.Wide .MMColumn3,
	.Container.Wide .MMTopColumnMenu3 {
		width: 950px;
		margin: 0 0 0 25px;
	}

	.Container.Wide .MMColumn4,
	.Container.Wide .MMTopColumnMenu4 {width: 1275px;}

	.Container.Wide .MMColumn1.MMFirstItem,
	.Container.Wide .MMColumn2.MMFirstItem,
	.Container.Wide .MMColumn3.MMFirstItem,
	.Container.Wide .MMTopColumnMenu1.MMFirstItem,
	.Container.Wide .MMTopColumnMenu2.MMFirstItem,
	.Container.Wide .MMTopColumnMenu3.MMFirstItem,
	.Container.Wide .MMBottomColumnMenu.MMFirstItem {margin: 0;}

	.Container.Wide ul.MMLinkListStyle {
		margin: -5px -25px 15px 0;
		overflow: hidden;
	}

	.Container.Wide ul.MMLinkListStyle li {
		width: calc(100% - 25px);
		margin: 0 25px 0 0;
	}
}

@media screen and (min-width: 768px) {
	.OptionWide .p-breadcrumb {
		max-width: 1275px;
	}

	.OptionWide .l-article {
		max-width: 1275px;
	}

	.OptionWide .l-txt-figure.u-fw10 .c-txt_box {
		width: calc(100% - 100px);
		flex-basis: calc(100% - 100px);
	}

	.OptionWide .l-txt-figure.u-fw20 .c-txt_box {
		width: calc(100% - 200px);
		flex-basis: calc(100% - 200px);
	}

	.OptionWide .l-txt-figure.u-fw30 .c-txt_box {
		width: calc(100% - 300px);
		flex-basis: calc(100% - 300px);
	}

	.OptionWide .l-txt-figure.u-fw40 .c-txt_box {
		width: calc(100% - 380px);
		flex-basis: calc(100% - 380px);
	}

	.OptionWide .l-txt-figure.u-fw50 .c-txt_box {
		width: calc(100% - 420px);
		flex-basis: calc(100% - 420px);
	}
}

@media screen and (min-width :995px) and (max-width: 1304px) {
	/* MegaMenu (from wide.css)*/
	.Container.Wide .MMSet {
		min-width: 965px;
	}

	.Container.Wide .MMColumnArea {
		width: auto;
		padding: 0 15px 15px 0;
		margin-left: -10px;
	}

	.Container.Wide .MMGrid1 {
		width: 25%;
		margin: 0;
		padding: 0 0 0 25px;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
	.Container.Wide .MMGrid2 {
		width: 50%;
		margin: 0;
		padding: 0 0 0 25px;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
	.Container.Wide .MMGrid3 {
		width: calc(75% + 25px);
		margin: 0 0 0 -25px;
		padding: 0 0 0 25px;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
	.Container.Wide .MMGrid4 {
		width: 100%;
		margin: 0;
	}

	.Container.Wide .MMGrid1 > div,
	.Container.Wide .MMGrid2 > div,
	.Container.Wide .MMGrid3 > div,
	.Container.Wide .MMGrid4 > div {
		margin: 0;
		padding: 0 0 0 25px;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}

	.Container.Wide .MMGrid1 .MMColumn1,
	.Container.Wide .MMGrid1 .MMTopColumnMenu1,
	.Container.Wide .MMGrid1 .MMBottomColumnMenu {width: 100%;}

	.Container.Wide .MMGrid2 .MMColumn1,
	.Container.Wide .MMGrid2 .MMTopColumnMenu1,
	.Container.Wide .MMGrid2 .MMBottomColumnMenu {width: 50%;}
	.Container.Wide .MMGrid2 .MMColumn2,
	.Container.Wide .MMGrid2 .MMTopColumnMenu2 {width: 100%;}

	.Container.Wide .MMGrid3 .MMColumn1,
	.Container.Wide .MMGrid3 .MMTopColumnMenu1,
	.Container.Wide .MMGrid3 .MMBottomColumnMenu {width: 33.3333333%;}
	.Container.Wide .MMGrid3 .MMColumn2,
	.Container.Wide .MMGrid3 .MMTopColumnMenu2 {width: 66.6666666%;}
	.Container.Wide .MMGrid3 .MMColumn3,
	.Container.Wide .MMGrid3 .MMTopColumnMenu3 {width: 100%;}

	.Container.Wide .MMGrid4 .MMColumn1,
	.Container.Wide .MMGrid4 .MMTopColumnMenu1,
	.Container.Wide .MMGrid4 .MMBottomColumnMenu {width: 25%;}
	.Container.Wide .MMGrid4 .MMColumn2,
	.Container.Wide .MMGrid4 .MMTopColumnMenu2 {width: 50%;}
	.Container.Wide .MMGrid4 .MMColumn3,
	.Container.Wide .MMGrid4 .MMTopColumnMenu3 {width: 75%;}
	.Container.Wide .MMGrid4 .MMColumn4,
	.Container.Wide .MMGrid4 .MMTopColumnMenu4 {width: 100%;}

	.Container.Wide h2.MMSubHeaderStyle,
	.Container.Wide h3.MMSubHeaderStyle {margin-left: 0;}

	.Container.Wide ul.MMLinkListStyle {
		margin: -5px -25px 15px 0;
		overflow: hidden;
	}

	.Container.Wide ul.MMLinkListStyle li {
		width: calc(100% - 10px) !important;
		margin: 0;
		padding: 5px 15px 0 0;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}

	.Container.Wide .MMColumn1 ul.MMLinkListStyle li,
	.Container.Wide .MMTopColumnMenu1 ul.MMLinkListStyle li,
	.Container.Wide .MMBottomColumnMenu ul.MMLinkListStyle li {width: 100%;}
	.Container.Wide .MMColumn2 ul.MMLinkListStyle li,
	.Container.Wide .MMTopColumnMenu2 ul.MMLinkListStyle li {width: 50%;}
	.Container.Wide .MMColumn3 ul.MMLinkListStyle li,
	.Container.Wide .MMTopColumnMenu3 ul.MMLinkListStyle li {width: 33.3333333%;}
	.Container.Wide .MMColumn4 ul.MMLinkListStyle li,
	.Container.Wide .MMTopColumnMenu4 ul.MMLinkListStyle li {width: 25%;}

	.Container.Wide .MMBannerLinkStyle img {
		width: 100%;
		height: auto;
	}

	.Container.Wide h2.MMBannerLinkStyle,
	.Container.Wide h3.MMBannerLinkStyle {margin-left: 0;}

	.Container.Wide .MMGrid3 p.MMSubHeaderStyle {padding-left: 25px;}
}

@media screen and (max-width: 1304px) {
	.JS #TopicPath.Wide ul {
		width: auto;
		max-width: 1275px;
		padding: 20px 15px 5px;
	}

	.JS .HideU1305 {
		display: none;
	}

	.JS .ShowU1305 {
		display: block;
	}

	.JS br.ShowU1305,
	.JS strong.ShowU1305,
	.JS em.ShowU1305,
	.JS sub.ShowU1305,
	.JS sup.ShowU1305,
	.JS img.ShowU1305,
	.JS span.ShowU1305 {
		display: inline;
	}

	.JS .PageTitleWrapper,
	.JS .l-section.WithBg,
	.JS .withBg.company,
	.JS .l-section.panel_unit {
		margin-left: -15px;
		margin-right: -15px;
		padding-left: 15px;
		padding-right: 15px;
	}

	.JS .ColumnSet.Flex .Column2 {
		max-width: 625px;
	}

	.JS .ColumnSet.Flex.Type01 .Column3 {
		max-width: 840px;
	}

	.JS .ColumnSet.Flex.Type01 .Column1 {
		margin-left: 5.15%;
		padding-left: 0;
	}

	.JS .ColumnSet.Flex.Type02 .Column1 {
		width: 35.77%;
	}

	.JS .ColumnSet.Flex.Type02 .Column2 {
		width: 64.23%;
		max-width: 810px;
	}

	.JS .ColumnSet.Flex.ImgHeadingSet {
		margin-left: -50px;
	}

	.JS .ColumnSet.Flex.ImgHeadingSet .Column1 {
		width: 33.33333333%;
		max-width: 350px;
		margin: 0;
		padding: 0 0 0 50px;
	}

	.JS .withBg.company {
		background-position: center center;
		background-size: auto;
	}

	.JS .PageTitleWrapper#domain {
		background-position: 35% bottom;
	}

	.JS .PageTitleWrapper#domain .PageTitle {
		margin-left: 30%;
	}

	.JS .l-section#domain_intro {
		background-size: auto;
	}

	.JS .l-section#domain_innovation {
		background-position: center top;
		background-size: auto;
	}

	.JS #innovation_map img {
		width: 49.388%;
	}

	.JS #innovation_map .Section {
		width: 26.9388%;
	}
	.JS #innovation_map .Section#modernize {
		left: 24%;
		bottom: 89.7436%;
	}
	.JS #innovation_map .Section#security {
		bottom: 52.1368%;
	}
	.JS #innovation_map .Section#supplychain {
		bottom: 52.1368%;
	}
	.JS #innovation_map .Section#payment {
		right: 6.9388%;
		bottom: 0;
	}
	.JS #innovation_map .Section#workstyle {
		left: 6.9388%;
		bottom: 0;
	}

	.JS #innovation_map .Section.Left h3 {
		margin-right: 13.6364%;
	}
	.JS #innovation_map .Section.Right h3 {
		margin-left: 13.6364%;
	}

	.JS #innovation_map .Section.Left .TextStyle1 {
		padding-right: 13.6364%;
	}
	.JS #innovation_map .Section.Right .TextStyle1 {
		padding-left: 13.6364%;
	}
}

@media screen and (max-width: 994px) {
	.JS .Container.Wide .MMSet {
		min-width: 738px;
	}

	.JS .Container.Wide .MMGrid3 {
		width: calc(75% + 15px);
		margin-left: -15px;
	}

	.JS .Container.Wide ul.MMLinkListStyle li {
		width: calc(100% - 10px) !important;
	}

	.JS .Container.Wide .MMGrid3 p.MMSubHeaderStyle {padding-left: 15px;}

	.JS .HideU995 {
		display: none;
	}

	.JS .ShowU995 {
		display: block;
	}

	.JS br.ShowU995,
	.JS strong.ShowU995,
	.JS em.ShowU995,
	.JS sub.ShowU995,
	.JS sup.ShowU995,
	.JS img.ShowU995,
	.JS span.ShowU995 {
		display: inline;
	}

	.JS .ColumnSet.Flex.Box .Inner {
		display: block;
		padding-top: 100px;
	}

	.JS .ColumnSet.Flex.Box .Inner .Img {
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
		width: 200px;
		height: 200px;
	}

	.JS .ColumnSet.Flex.Box .Inner .Txt {
		display: block;
		margin-left: 0;
	}

	.JS .ColumnSet.Flex.Box .Inner .Txt .TxtInner {
		min-height: auto;
		padding: 130px 30px 40px 30px;
	}

	.JS .ColumnSet.Flex.Type01 .Column1 {
		min-width: 235px;
		margin-left: 0;
		padding-left: 15px;
	}

	.JS .ColumnSet.Flex.ImgHeadingSet {
		margin-left: -15px;
	}

	.JS .ColumnSet.Flex.ImgHeadingSet .Column1 {
		max-width: 315px;
		padding: 0 0 0 15px;
	}

	.JS .p-sitemap {
		margin-left: -15px;
	}

	.JS .p-sitemap__nav {
		padding-left: 15px;
	}

	.JS .PageTitleWrapper .PageTitle h1 {
		font-size: 150%;
	}

	.JS .ColumnSet.Flex.Special .Column {
		width: 42.5%;
	}

	.JS .ColumnSet.Flex.Special .Img {
		width: 15%;
		padding: 20px 3% 0;
	}

	.JS #innovation_map .Section#modernize {
		bottom: 87%;
	}
	.JS #innovation_map .Section#payment {
		bottom: -3.5%;
		right: 0;
		width: 35%;
	}
	.JS #innovation_map .Section#workstyle {
		bottom: -3.5%;
		left: 0;
		width: 35%;
	}

	.JS #innovation_map .Section .TextStyle1 {
		font-size: 76%;
	}

	.JS #innovation_map .Section .ButtonStyle1 a {
		font-size: 83%;
	}

	.JS .ColumnSet.Flex.Box01 .Column2 .Inner .BoxList li {
		width: calc(50% - 10px);
	}
}

@media screen and (max-width: 767px) {
	.JS #Contents.Newstyle h2.c-hd--type01 span.c-hd--type01__main {
		font-size: 180%;
		font-weight: bold;
	}

	.JS #Contents.Newstyle h2.c-hd--type02.LeftAdjust {
		text-align: center;
	}
	.JS #Contents.Newstyle h2.c-hd--type02.LeftAdjust:before {
		display: block;
	}

	.JS #Contents.Newstyle h2.c-hd--type02.LeftAdjust span {
		padding-left: 35px;
	}
	.JS #Contents.Newstyle h2.c-hd--type02.LeftAdjust span:before {
		display: block;
	}

	.JS .ColumnSet.Flex {
		display: block;
	}

	.JS .ColumnSet.Flex .Column2 {
		max-width: none;
	}

	.JS .ColumnSet.Flex.Box .Column2.FirstItem .Inner {
		margin-bottom: 50px;
	}

	.JS .ColumnSet.Flex.Box .Inner .Txt .TxtInner {
		padding: 130px 15px 25px 15px;
	}

	.JS .ColumnSet.Flex .ResponsiveLinkListStyle {
		margin-left: 0;
		margin-right: 0;
	}

	.JS .ColumnSet.Flex.Type01 .Column3 {
		margin-bottom: 30px;
	}

	.JS .ColumnSet.Flex.Type02 .Column1 {
		width: auto;
		margin-bottom: 20px;
	}

	.JS .ColumnSet.Flex.Type02 .Column2 {
		width: auto;
	}

	.JS .ColumnSet.Flex.Type02 .Txt {
		width: 100%;
	}

	.JS .ColumnSet.Flex.Type02 .Plate {
		max-width: 600px;
		box-sizing: border-box;
	}

	.JS .ColumnSet.Flex.ImgHeadingSet {
		display: flex;
	}

	.JS footer.l-footer .l-footer__inner {
		padding-bottom: 60px;
	}

	.JS .l-footer .p-sitemap {
		margin-left: 0;
	}

	.JS .l-footer .p-sitemap__nav {
		width: 100%;
		margin: 0 0 15px !important;
		padding: 0 0 15px;
		border-bottom: 1px solid #dddddd;
	}

	.JS .l-footer .p-sitemap__list {
		display: block;
	}

	.JS .l-footer .p-sitemap__item {
		width: 100%;
		margin-bottom: 10px !important;
	}

	.JS #PageTopControler #FooterPageTop {
		right: 15px;
		bottom: 15px;
	}

	.JS .PageTitleWrapper {
		margin-bottom: 50px;
	}

	.JS .PageTitleWrapper .PageTitle {
		min-height: 230px;
		padding: 20px 0;
	}

	.JS .PageTitleWrapper .PageTitle .Inner {
		text-align: left;
	}

	.JS .PageTitleWrapper .PageTitle .SubTitle {
		margin-bottom: 30px;
		font-size: 100%;
	}

	.JS .PageTitleWrapper .PageTitle h1 {
		margin-bottom: 0;
		font-size: 125%;
	}

	.JS .CenterAdjustClear1 {
		text-align: left;
	}

	.JS .l-section .Section.Type01 h2 {
		margin-bottom: 25px;
	}

	.JS .l-section#domain_intro {
		background-image: url(/company/about/domain/image/bg_intro_sp.jpg);
	}

	.JS .ColumnSet.Flex.Special {
		margin-bottom: 20px;
	}

	.JS .ColumnSet.Flex.Special .Column {
		width: auto;
		max-width: 450px;
		margin: 0 auto;
	}

	.JS .ColumnSet.Flex.Special .Img {
		width: auto;
		padding: 30px 0;
	}

	.JS .ColumnSet.Flex.Special .Column h2 span {
		font-size: 175%;
	}

	.JS .l-section#domain_innovation {
		background-image: none;
	}

	.JS .l-section#domain_innovation:before {
		content: "";
		position: absolute;
		top: -180px;
		left: 0;
		width: 100%;
		height: 100%;
		background: url(/company/about/domain/image/bg_innovation.jpg) no-repeat center top;
	}

	.JS #innovation_map {
		margin-top: 0;
	}

	.JS #innovation_map .Img {
		padding-bottom: 15px;
	}

	.JS #innovation_map img {
		width: 100%;
		max-width: 450px;
	}

	.JS #innovation_map .Section {
		width: auto !important;
		position: static;
		margin-top: 30px;
	}

	.JS #innovation_map .Section.Left h3 {
		margin-right: 0;
	}
	.JS #innovation_map .Section.Right h3 {
		margin-left: 0;
	}

	.JS #innovation_map .Section .TextStyle1 {
		margin-bottom: 10px;
		font-size: 90%;
	}
	.JS #innovation_map .Section.Left .TextStyle1 {
		padding-right: 0;
	}
	.JS #innovation_map .Section.Right .TextStyle1 {
		padding-left: 0;
	}

	.JS #innovation_map .Section .ButtonStyle1{
		text-align: right;
	}

	.JS #innovation_map .Section .ButtonStyle1 a {
		font-size: 90%;
	}

	.JS .ColumnSet.Flex.Box01 .Column2.FirstItem {
		margin-bottom: 40px;
	}

	.JS .ColumnSet.Flex.Box01 .Column2 .Inner {
		margin-left: -15px;
		margin-right: -15px;
		padding-top: 1px;
	}

	.JS .ColumnSet.Flex.Box01 .Column2 .Inner h3 {
		position: static;
		width: auto;
		margin-bottom: 30px;
	}

	.JS .ColumnSet.Flex.Box01 .Column2 .Inner .BoxList li {
		width: calc(33.33333333% - 10px);
	}

	.JS .l-section .SectionInner .InnerLinksArea .LinkListStyle5 {
		display: block;
		text-align: left;
	}

	.JS .l-section .SectionInner .InnerLinksArea .LinkListStyle5 li {
		margin-right: 0;
	}

	.JS .l-section .SectionInner .Section .ResponsiveLinkListStyle {
		display: block;
		margin-left: -15px;
	}

	.JS .l-section .SectionInner .Section .LinkListStyle1 {
		width: auto;
		padding-left: 0;
	}
	.JS .l-section .SectionInner .Section .LinkListStyle1:not(:last-child) {		border-bottom: solid 1px #ddd;
	}

	.JS .l-section .SectionInner .Section .LinkListStyle1.long {
		border-top: solid 1px #ddd;
	}

	.JS .Grid1 #navi_parts_area {
		margin-bottom: 45px;
	}

	.JS .Grid1 .InquiryBox {
		padding-left: 30px;
		padding-right: 30px;
	}

	.JS .Grid1 .BannerArea li.catalog {
		border-color: #bebebe;
	}

	.JS .l-txt-figure.u-fw10 .c-txt_box,
	.JS .l-txt-figure.u-fw20 .c-txt_box,
	.JS .l-txt-figure.u-fw30 .c-txt_box,
	.JS .l-txt-figure.u-fw40 .c-txt_box,
	.JS .l-txt-figure.u-fw50 .c-txt_box {
		width: 100%;
		flex-basis: 100%;
	}

	.JS .l-txt-figure.u-fw10 + .c-txt_box,
	.JS .l-txt-figure.u-fw20 + .c-txt_box,
	.JS .l-txt-figure.u-fw30 + .c-txt_box,
	.JS .l-txt-figure.u-fw40 + .c-txt_box,
	.JS .l-txt-figure.u-fw50 + .c-txt_box {
		margin-top: 20px;
	}
}

@media screen and (max-width: 579px) {
	.JS .HideU580 {
		display: none;
	}

	.JS .ShowU580 {
		display: block;
	}

	.JS br.ShowU580,
	.JS strong.ShowU580,
	.JS em.ShowU580,
	.JS sub.ShowU580,
	.JS sup.ShowU580,
	.JS img.ShowU580,
	.JS span.ShowU580 {
		display: inline;
	}

	.JS #Contents.Newstyle h2.c-hd--type02:before,
	.JS #Contents.Newstyle h2.c-hd--type02:after {
		display: none !important;
	}

	.JS #Contents.Newstyle h2.c-hd--type02 span {
		padding-left: 25px !important;
		padding-right: 25px !important;
	}

	.JS .ColumnSet.Flex.ImgHeadingSet {
		justify-content: flex-start;
	}

	.JS .ColumnSet.Flex.ImgHeadingSet .Column1 {
		width: 50%;
	}

	.JS .PageTitleWrapper#domain {
		background-position: 30% bottom;
	}

	.JS .PageTitleWrapper#domain .PageTitle {
		margin-left: 37%;
	}

	.JS .ColumnSet.Flex.Box01 .Column2 .Inner h3 span {
		padding: 0 30px;
	}

	.JS .ColumnSet.Flex.Box01 .Column2 .Inner .BoxList li {
		width: calc(50% - 10px);
	}
}

@media screen and (max-width: 399px) {
	.JS .HideU400 {
		display: none !important;
	}

	.JS .ShowU400 {
		display: block;
	}

	.JS br.ShowU400,
	.JS strong.ShowU400,
	.JS em.ShowU400,
	.JS sub.ShowU400,
	.JS sup.ShowU400,
	.JS img.ShowU400,
	.JS span.ShowU400 {
		display: inline;
	}

	.JS .ColumnSet.Flex.ImgHeadingSet .Column1 {
		width: 100%;
		max-width: none;
	}

	.JS .ColumnSet.Flex.ImgHeadingSet .Title h2 {
		background-color: transparent;
	}

	.JS .ColumnSet.Flex.ImgHeadingSet .Title h2 .Inner {
		display: inline-block;
		margin: 0;
		padding: 0 17px 0 0 !important;
		font-weight: bold;
		background-image: url(/image/jp/r1/icon/icon_link_right_l_hd.gif);
		background-repeat: no-repeat !important;
		background-position: center right !important;
		border-right: none !important;
		text-decoration: none;
	}

	.JS .ColumnSet.Flex.ImgHeadingSet a:hover .Title h2 .Inner,
	.JS .ColumnSet.Flex.ImgHeadingSet a:active .Title h2 .Inner {
		color: #b1000e;
		background-image: url(/image/jp/r1/icon/icon_link_right_l_hover_hd.gif);
	}

	.JS .PageTitleWrapper .PageTitle .SubTitle {
		font-size: 90%;
	}

	.JS .PageTitleWrapper .PageTitle h1 {
		font-size: 100%;
	}

	.JS .l-section .SectionInner .ButtonStyle1.Flex a {
		padding-left: 10%;
	}
}

/* ===================================================
   for Solution & Product Pages
==================================================== */
/* Case Studies */
#case .flex_container {
	display: block;
	width: 100%;
}

#case .flex_container ul {
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

#case .flex_container li {
	display: block;
	opacity: 1;
	width: calc((100% - 48px) / 3);
	background-color: #FFF;
	margin: 10px 8px;
	border: 1px solid #e5e5e5;
	padding: 5px;
	box-shadow: 10px 10px 15px -10px;
}

#case .flex_container a {
	display: block;
	height: 100%;
	color: #000;
	text-decoration: none;
}
#case .flex_container a:hover,
#case .flex_container a:active {
	opacity: 0.8;
	text-decolation:none;
}

#case .flex_container img{
	width: 100%; 
	height: auto; 
}

#case .flex_container .textbox {
	display: block;
	width: 90%; 
	height: auto;
	min-height: 120px;
	margin: 20px auto;
}

#case .flex_container .text_title {
	width: 100%; 
	margin-bottom: 16px; 
	font-size: 1.125em; 
	line-height: 1.44; 
	font-weight: bold;
}

#case .flex_container .text_inner,
#case .flex_container .text_product{
	font-size: 0.875em; 
	line-height: 1.625;
}

#case .flex_container .text_product{
	border-top: 1px solid #CCC;
}

#case .flex_container .Btn-blank {
	width: 80%;
	margin: 0 auto;
	padding: 10px;
	margin-top: 10px;
	margin-bottom: 15px;
	text-decoration: none !important;
	color: #ffffff !important;
	background-color: #8b1010 !important;
	font-weight: normal !important;
	line-height: 1;
	display: flex;
	align-items: center;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	opacity: 1;
}

#case .flex_container .Btn-blank p {
	margin: 0 !important;
	font-size: 0.875em;
	position: relative;
	color: inherit !important;
}
#case .flex_container .Btn-blank p::after{
	content: "";
	display: inline-block;
	background-image: url("/image/hsc/common/icon_new-window_white.svg");
	width: 12px;
	height: 12px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: 0 0;
	margin: 0 0 -2px 8px;
}

#case .p-case-wrapper {
	margin-bottom: 80px;
	padding: 0 20px;
}

#case .p-case-wrapper a {
	display: block;
	border: 1px solid #DDD;
	text-decoration: none;
}
#case .p-case-wrapper a:hover,
#case .p-case-wrapper a:active {
	opacity: 0.8;
	text-decoration: none;
}

/* Business Columns */
#column.column_article {
	margin: 0 0 60px 0;
	padding: 0;
}

#column.column_article a {
	display: block;
	text-decoration: none;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}

#column.column_article article {
	display: block;
	margin: 0px 0px 20px 0px;
	padding: 8px 8px;
	border: 1px solid #D8D8D8;
}
#column.column_article article:after {
	content: "";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

#column.column_article .inner {
	width: calc(100% - 260px) !important;
	float: right;
	margin: 0px;
	padding: 0px 5px 0 0;
	color: #333;
	font-size: 0.9em;
}

#column.column_article p.text_title {
	margin: 5px 0px 15px 0px;
	line-height: 1.4;
	font-size: 1.25em;
	font-weight: bold;
	text-decoration: underline;
}
#column.column_article a:hover p.text_title,
#column.column_article a:active p.text_title {
	text-decoration: none;
	color: #e60f33;
}

#column.column_article time {
	display: block;
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	line-height: 1;
}
#column.column_article p {
	margin: 7px 0px 0px 0px;
	padding: 0px;
	line-height: 1.4;
}
#column.column_article p.more {
	text-decoration :underline;
	text-align: right;
	margin: 10px 10px 5px 0;
	padding-left: 17px !important;
	position: relative;
	display: inline-block;
	float: right;
	vertical-align: middle;
}
#column.column_article a:hover p.more,
#column.column_article a:active p.more {
	text-decoration: none;
	color: #e60f33;
}
#column.column_article p.more::before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	border-style: solid;
	border-bottom: none;
	border-left: none;
	width: 7px;
	height: 7px;
	border-width: 1px;
	border-color: #e60b27;
}
#column.column_article p.more::after {
	display: none;
}

#column.column_article article figure {
	width: 240px !important;
	float: left;
	margin: 0 !important;
	padding: 0;
}
#column.column_article article figure img {
	margin: 0px;
	padding: 0px;
	border: none;
	width: 100%;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}
#column.column_article a:hover figure img,
#column.column_article a:active figure img {
	opacity: 0.7;
	-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(opacity=70)";
	-ms-filter: "alpha(opacity=70)";
	-moz-opacity: 0.7;
	-khtml-opacity: 0.7;
}

#column.column_article button.more {
	padding-right: 45px;
	background-image: url(/image/jp/r1/icon/icon_down_l_hd.gif);
	background-position: calc(50% + 2.5em) center;
	background-repeat: no-repeat;
	background-size: 16px auto;
}
#column.column_article button.more:hover,
#column.column_article button.more:active {
	background-image: url(/image/jp/r1/icon/icon_down_l_white_hd.gif);
}

/* Seminar & Exhibition Information */
#seminar {
	margin-bottom: 60px;
}

#seminar table th,
#seminar table td {
	padding: 10px 15px;
	border: solid 1px #ddd;
	font-size: 83%;
	text-align: left;
}
#seminar table th {
	background-color: #f2f2f2;
	font-weight: normal;
}

#seminar table td {
	background-color: #fff;
}

#seminar table a {
	background-position: right center;
	background-repeat: no-repeat;
}

/* Related Solutions */
#solution .c-txt {
	margin-bottom: 20px;
}

/* for Responsive Web Design */
@media only screen and (max-width: 767px) {
	.JS #case .flex_container {
		width: 98%;
		margin: 0 auto;
	}

	.JS #case .flex_container ul li{
		width: 100%; 
		margin: 5px auto;
	}

	.JS #case .flex_container ul li img { 
		display: block;
		margin: 0 auto;
		width: 70%;
		height: auto;
	}

	.JS #case .flex_container ul li .textbox{
		height: auto;
		min-height: auto;
	}

	.JS #case .flex_container ul li a .Btn-blank {
		width: 80%;
	}

	.JS #case .p-case-wrapper {
		margin-bottom: 30px;
		padding: 0;
	}

	.JS #case .p-case-wrapper a {
		width: calc(100% - 20px);
		margin: 0 auto;
	}

	.JS #column.column_article .inner {
		width: auto !important;
		float: none;
	}

	.JS #column.column_article p {
		overflow: hidden;
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 3;
	}

	.JS #column.column_article article figure {
		width: 100% !important;
		float: none;
	}
}

@media screen and (max-width: 579px) {
	.JS #seminar table th,
	.JS #seminar table td {
		padding: 10px 10px;
		font-size: 76%;
	}
}
