@charset "UTF-8";
sup {
	vertical-align: super;
	font-size: smaller;
}
sub {
	vertical-align: sub;
	font-size: smaller;
}
sup.sup2 {
	vertical-align: super;
	font-size: 50%;
}
table td.empty {
	background-image: linear-gradient(to top right, transparent 49%, #e1e1e1 49%, #e1e1e1 51%, transparent 51%, transparent); 
}

.subpage .p-sdgs-img{
	margin: 40px auto 0px;
}
.subpage .p-art-logo {
	max-width: 300px;
}
.subpage .p-art-logo2{
	max-width: 220px;
}
.u-max-w-230 {
	max-width: 230px;
}

.u-max-w-260 {
	max-width: 260px;
}

.u-max-w-350 {
	max-width: 350px;
}
.u-max-w-480 {
	max-width: 480px;
}
.u-max-w-600 {
	max-width: 600px;
}
.subpage .p-tab-menu-item.active figcaption {
	width: 100%;
	text-align: center;
}
.subpage .l-content-1040 .p-product-main-img{
	position: relative;
}
.subpage .l-content-1040 .p-product-main-img::before {
	content: "";
	background: rgba(0, 0, 0, .25);
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
.u-fc-ff2e17{
	color: #ff2e17
}

.u-fc-ff6a20{
	color: #ff6a20
}

.u-icon-window-menu {
	position: relative;
	padding-right: 21px;
}
.u-icon-window-menu::after {
	content: "";
	width: 16px;
	height: 12px;
	background: url(../img/svg/common/window.svg) no-repeat;
	background-size: contain;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	right: 0;
}
.u-icon-window-menu.--w::after {
	-webkit-filter: brightness(0) invert(1);
	filter: brightness(0) invert(1);
}


@media only screen and (max-width:600px){
	.subpage .movieWrap{
		display: block;
		aspect-ratio: 1 / 1;
		overflow: hidden;
		position: relative;
	}
}
.c-btn-w{
	margin: auto;
	width: 500px;
}
@media (max-width: 767px) {
	a[href^="tel:"] {
		color: blue;
		text-decoration: underline;
	}
	.subpage .p-office-content{
		flex-direction: column-reverse;
	}


}


.catalogpage .p-catalog {
	padding: 0 15px
}

.catalogpage .p-catalog-content {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 24px;
	max-width: 1440px;
	padding: 40px 30px;
	background: #222020
}

.catalogpage .p-catalog-column.--btn {
	-webkit-flex-shrink: 0;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	-webkit-flex-basis: 280px;
	-ms-flex-preferred-size: 280px;
	flex-basis: 280px;
	width: 100%
}

.catalogpage .p-catalog-column.--btn ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	gap: 12px
}

.catalogpage .p-catalog-ttl {
	font-family: Roboto, sans-serif;
	font-weight: 900;
	font-size: clamp(28px, 3.9772727273vw, 4.375rem);
	color: #f76600;
	position: relative;
	line-height: 1
}

.catalogpage .p-catalog-ttl::after {
	content: "";
	width: clamp(30px, 2.5568181818vw, 45px);
	height: 3px;
	background: #fff;
	position: absolute;
	left: 103%;
	top: 50%;
	-webkit-transform: translateY(50%);
	transform: translateY(50%)
}

.catalogpage .p-catalog-txt {
	font-weight: 700;
	font-size: clamp(1.125rem, 1.3636363636vw, 1.5rem);
	letter-spacing: .01em;
	color: #fff
}

.subpage .p-product-bnr-list .p-product-bnr-dl {
	bottom: 40px;
}

.subpage .p-product-bnr-list .p-product-bnr-txt {
	font-family: Roboto, sans-serif;
	font-size: 12px;
	text-align: center;
	font-weight: 800;
	line-height: 1.8;
}

@media only screen and (max-width:1280px) {
	.catalogpage .p-catalog-ttl::after {
		content: none
	}
}
@media only screen and (max-width:1024px) {
	.catalogpage .p-catalog {
		min-height: auto;
		padding: 30px 15px 40px
	}

	.catalogpage .p-catalog-content {
		gap: 24px;
		margin-left: 0;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column
	}

	.catalogpage .p-catalog-column.--btn {
		-webkit-flex-basis: auto;
		-ms-flex-preferred-size: auto;
		flex-basis: auto
	}

	.catalogpage .p-catalog-column.--btn li a {
		margin: auto
	}

	.catalogpage .p-catalog-txt {
		text-align: center
	}

	.catalogpage .p-catalog-btn-sp {
		position: relative;
		padding-right: 96px
	}

	.catalogpage .p-catalog-btn-sp::before {
		content: "";
		position: absolute;
		right: 0;
		top: 50%;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
		width: 67px;
		height: 67px;
		background: #f76600;
		border-radius: 50%;
		-webkit-transition: var(--trans2s);
		transition: var(--trans2s)
	}

	.catalogpage .p-catalog-btn-sp::after {
		content: "";
		width: 34.44px;
		height: 25.97px;
		background: url(../../../img/svg/common/book.svg) no-repeat;
		background-size: contain;
		position: absolute;
		right: 17px;
		top: 50%;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%)
	}
}

.scroll-img1400{
	width: 1400px;
}

.ta-left{
	padding-left: 10px !important;
	text-align: left!important;
}

.ta-left2{
	padding-left: 50px!important;
	text-align: left!important;
}

.ta-right{
	padding-right: 50px !important;
	text-align: right!important;
}

.zaiko tr td{
	padding: 2px;
}

.tx-left{
	padding-left: 48px;
}
.tx-left2{
	padding-left: 100px;
}

tbody tr .col-2{
background: #222020;
color: white;
}

.subpage .icon_s {
	width: 24px;
	height: 24px;
	background: url(../img/svg/common/icon_s.svg) no-repeat;
	background-position: center;
	background-size: contain;
	display: inline-block;
}

.c-table .u-fw-bold {
    width: 15%;
    border-right: none;
}
.c-table .u-fw-bold2 {
    border-left: none;
}

@media only screen and (max-width:1024px) {
	.subpage .p-product-bnr-list .p-product-bnr-dl {
    bottom: 0;
}
} 

@media only screen and (max-width:1024px) {
.subpage .l-content-1040 .p-product-main-img::before {
     display: none;
}
.subpage .p-product-main-img {
        padding: 40px 20px 0;
    }

.subpage .p-tab-menu-item.active figcaption {
        font-size: 1rem;
    }
.subpage .p-product-head-ttl {
    font-size: 1.2rem;
} 
.lh8 {
display: block;
line-height: .8;
}

.c-table .u-fw-bold2 {
border-left: 1px solid #e1e1e1;
}
.img-kp{
height: 125px;
object-fit: cover;
object-position: left;
}
.img-fb{
height: 125px;
object-fit: cover;
object-position: -150px;
}
.img-h{
height: 125px;
object-fit: cover;
object-position: -80px;
}
.img-sk{
height: 125px;
object-fit: cover;
object-position: -140px;
}
.img-ip{
height: 125px;
    object-fit: cover;
    object-position: -160px;
	}
}
@media only screen and (max-width: 768px) {
.c-table .u-fw-bold {
width: 100%;
border-right: 1px solid #e1e1e1;
}
.p-initiatives li span {
        font-size: 0.7rem;
}
    .subpage .p-strength2-btn a {
        width: 100%;
    }
	.c-btn span.spl {
    padding-left: 23.1818%;
}	
}
@media only screen and (max-width: 600px) {
.fs-11{
font-size: 11.5px;
}
.tk-btn .c-btn-w {
    margin: auto;
    width: 350px;
}
.ws::after {
     content: "\A";
     white-space: pre;
}
.tk-btn span {
    position: relative;
    text-align: left;
    font-weight: 700;
    color: #fff;
    padding-left: 18%;
    z-index: 3;
    width: 100%;
}

}

.tk-btn span {
    position: relative;
    text-align: left;
    font-weight: 700;
    color: #fff;
    padding-left: 10%;
    z-index: 3;
    width: 100%;
}

@media only screen and (max-width:1024px) {
.p-initiatives li span {
     font-size: 1.06rem;
}
	.p-initiatives li .ws::after {
     content: "\A";
     white-space: pre;
}
}

.subpage .p-product-bnr-list .p-product-bnr-wc,.subpage .p-product-bnr-list .p-product-bnr-dl{
aspect-ratio: auto;
height: 70px;
}
@media only screen and (max-width:600px) {
.p-initiatives li span {
        font-size: 0.8rem;
}
.top .scrolldown span{
display: none;
}

}

.subpage .active::before {
    background: rgba(255, 177, 113, 0.45);
}



@media only screen and (max-width: 768px) {
.m1080s.c-table3._w780 {
max-width: initial;
width: 1080px;
}
.m1080s .w20{
width: 20%;
}
.u-w-100 {
width: 100PX;
}
}

.external-link {
  position: relative;
  padding-right: 1.2em; 
}

.external-link::after {
  content: '';
  display: inline-block;
  vertical-align: middle;
  width: 1em;
  height: 1em;
  margin-left: 0.2em;
  background: no-repeat center/contain url('../img/svg/common/window.svg');
}
.external-link.--w::after {
  background: no-repeat center/contain url('../img/svg/common/window_wh.svg');
}


.c-table._officer tr td:nth-of-type(1){
width:23%;
}

@media only screen and (max-width: 768px) {
	.c-table._officer tr td:nth-of-type(1){
	width:100%;
	border-bottom:none;
	padding-bottom:0;
	}
	.c-table._officer tr td{
	border-top:none;
	}
	.c-table._officer tr td:nth-of-type(2){
	padding-top:0;
	}
}

.scroll-hint-icon-wrap{
    z-index: 9;
}

.l-contact-content::before {
content:none;
}

.l-contact-content-column{
max-width:100%;
}
/*ヘッダー言語切替*/
.header-lang a{
  text-align: center;
    font-size: 16px;
    font-weight: bold;
    position: relative;
    color: #fff;
    position: relative;
      width: 46px;
      height: 46px;
      display: flex;
      justify-content: center;
      align-items: center;
}

.header-lang a::before{
      content: "";
      width: 46px;
      height: 46px;
    background:#222020;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%,-50%);
      border-radius: 50%;
      z-index: -1;
      transition: all 0.2s ease-in;
    }

@media (hover:hover) {
  .header-lang a:hover::before{
  background:  #f76600;
  }
  .pc-header.header-fixed .header-lang a:hover::before{
  background:  #f76600;
  }
  .pc-header.header-fixed2 .header-lang a:hover::before{
  background:  #f76600;
  }
}

.header-contact-btn{
	height: 48px;
	max-width:130px;
	margin-left:16px;
	}

.header-contact-btn span {
	padding-left: 26px;
	}

.pc-header.--top .header-lang a::before {
    background: transparent;
    border:1px solid #fff;

}

.pc-header.header-fixed .header-lang a::before {
    background:#222020;
    border:none;
}

.pc-header.header-fixed2 .header-lang a::before {
    background: #222020;
    border:none;
}
