/*cate.css*/

/*Marge cate01.css_0820_(1)_START*/

/*----------------
style.css
------------------*/

.u-desktop-only {
    display: block;
}

.u-mobile-only {
    display: none;
}

.super {
    vertical-align: text-top;
    font-size: 1.2rem;
}

h3 {
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 1.2px;
}

.nobar h3 {
    position: relative;
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 1.2px;
    padding-top: 12px;
    margin-bottom: 16px;
}

.nobar h3::before {
    position: absolute;
    content: "";
    display: block;
    width: 22.75%;
    height: 3px;
    background-color: var(--blue20);
    top: -1px;
    left: 0;
}

.nobar h3:after {
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: var(--cloud30);
  top: 0;
  left: 0;
}

h4 {
  position: relative;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.9px;
  padding-left: 20px;
}

h4::before {
  position: absolute;
  content: "";
  width: 10px;
  height: 10px;
  top: 10px;
  left: 0;
  background-color: var(--cloud40);
}

.link_btn01.right {
  margin-left: auto;
}

.radio {
  appearance: none;
  position: relative;
  width: 20px;
    min-width: 20px;
  height: 20px;
  border: 1px solid;
  border-color: var(--cloud40);
  background-color: #fff;
  border-radius: 50%;
  cursor: pointer;
  box-sizing: border-box;
  top: 52%;
  transform: translateY(-50%);
}

.radio:checked {
  border-color: var(--blue30);
}

.radio:checked::after {
  opacity: 1;
}

.radio::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 10px;
  height: 10px;
  background-color: var(--blue30);
  border-radius: 50%;
  opacity: 0;
}


/*Marge cate01.css_0820_(1)_END*/

.rnd_chk label {
    display: flex;
}

.rnd_chk label .radio {
    top: auto;
    transform: none;
    min-width: 20px;
    margin-top: 4px;
}

.fs18 {
    font-size: 1.8rem!important;
}


/*----------------
base
------------------*/

html {
    font-size: clamp(59.375%, 0.833vw, 62.5%);
}

main {
    padding-bottom: 120px;
}

/*----------------
common
------------------*/

ul.disc {
    margin-left: 1.5em;
}

ul.disc li {
    list-style-type: disc;
}

.simple_flex {
    display: flex;
    align-items: center;
}

.inlow_left_aligned {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

.center_img {
    margin: 24px auto 0;
    max-width: 100%;
    text-align: center;
    width: fit-content;
    
}

.center_img img {
    display: block;
    width: auto;
    max-width: 100%;
}

.left_img {
    width: fit-content;
    max-width: 100%;
    margin-top: 24px;
    margin-right: auto;
}

.left_img img {
    display: block;
    width: auto;
    max-width: 100%;
}

.right_img {
    width: fit-content;
    max-width: 100%;
    margin-top: 24px;
    margin-left: auto;
}

.right_img img {
    display: block;
    width: auto;
    max-width: 100%;
}

.ul_link {
    color: var(--blue40);
    text-decoration: underline!important;
}

.tx_note {
    font-size: 1.4rem;
    margin-top: 16px;
}

.tx_note span,
.tx_note p,
.tx_note ul li,
.tx_note ol li {
    font-size: 1.4rem;
}

.tx_note ul li,
.tx_note ol li {
    margin-left: 1em;
}

.flex {
    display: flex;
}

.sideSearchInverter .checkboxWrapper .flex {
    width: 100%;
}

.modal-trigger:hover {
    color: var(--blue40);
}

input[type="checkbox"] {
    width: 18px;
    height: 18px;
    min-width: 18px;
    accent-color: #026EF2;
    vertical-align: middle;

}

input[type="checkbox"]:focus-visible{
    outline: 2px solid #026EF2;
    outline-offset: 2px;
}

/*----------------
bread
------------------*/

nav.bread {
    margin-top: 128px;
    background-color: #fff;
    border-bottom: 1px solid;
    border-color: var(--cloud20);
}

nav.bread .inner {
    padding-top: 6px;
    padding-bottom: 6px;
}

nav.bread ol {
    display: flex;
    flex-wrap: wrap;
}

nav.bread ol li,
nav.bread ol li a{
    font-size: 1.0rem;
    line-height: 1.3;
}

nav.bread ol li {
    list-style-type: none;
}

nav.bread ol li a {
    position: relative;
    color: var(--cloud40);
}

nav.bread ol li a:after {
    content: "/";
    display: inline-block;
    vertical-align: middle;
    margin: -4px 10px 0;
}

/*----------------
Scrollbar
------------------*/

/*solutionArea*/
@media screen and (min-width:768px) {
    /*スクロールバー全体の高さ*/
    .solutionArea::-webkit-scrollbar {
        height: 6px;
    }
    /*スクロールバー全体の背景*/
    .solutionArea::-webkit-scrollbar-track {
        background: #B3B4B5;
    }
    /*スクロールバーの動く部分*/
    .solutionArea::-webkit-scrollbar-thumb {
        background: var(--blue30);
        border: none;
    }
    ul.robotdlListBtn {
        padding-bottom: 8px;
    }

    ul.robotdlListBtn::-webkit-scrollbar {
        height: 6px;
    }
    ul.robotdlListBtn::-webkit-scrollbar-track {
        background: #B3B4B5;
    }
    ul.robotdlListBtn::-webkit-scrollbar-thumb {
        background: var(--blue30);
        border: none;
    }

}


/*scroll_area（PC・SP共通）*/
.scroll_area {
    overflow-y: hidden!important;
    overflow-x: auto;
}
.scroll_table {
    padding-bottom: 8px;
}
.scroll_table::-webkit-scrollbar {
    height: 6px;
}
.scroll_table::-webkit-scrollbar-track {
    background: #B3B4B5;
}
.scroll_table::-webkit-scrollbar-thumb {
    background: var(--blue30);
    border: none;
}


/*scroll_areaのスクロールバーを非表示*/
.scroll_area {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.scroll_area::-webkit-scrollbar {
    display: none;
}




.scroll_areaInverter {
    padding-bottom: 0;
    overflow-x: auto;
    -ms-overflow-style: none;
    scrollbar-width: none!important;
    -webkit-overflow-scrolling: touch;
}
.scroll_areaInverter::-webkit-scrollbar {
    height: 0!important;
    background: transparent!important;
}


.ul.robotdlListBtn {
    padding-bottom: 0;
    overflow-x: auto;
    -ms-overflow-style: none;
    scrollbar-width: none!important;
    -webkit-overflow-scrolling: touch;
}
.ul.robotdlListBtn::-webkit-scrollbar {
    height: 0!important;
    background: transparent!important;
}


/*
.printModalContent {
    padding-bottom: 0;
    overflow-x: auto;
    -ms-overflow-style: none;
    scrollbar-width: none!important;
    -webkit-overflow-scrolling: touch;
}
.printModalContent::-webkit-scrollbar {
    height: 0!important;
    background: transparent!important;
}
*/






/*----------------
cate_top
------------------*/

.cate_top01_wrap {
    height: 180px;
/*    padding: 45px 0 45px;*/
/*    background-image: url("/assets/img/product/category_top01.jpg");*/
    background-image: url("/assets/img/contact/category_top.jpg");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    width: var(--vw, 100%);
    margin-left:  calc(50% - (var(--vw, 100%) / 2));
    margin-right: calc(50% - (var(--vw, 100%) / 2));
    background-size: 100% 100%;
}

.cate_top01_wrap > .inner {
    height: 100%;
}

.cate_top01 {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    column-gap: 3%;
}

.cate_top01_l,
.cate_top01_r {
    width: 48.5%;
}

h1 {
    font-size: 3.4rem;
    font-weight: 700;
    line-height: 1.3;
    padding-left: 20px;
    position: relative;
    letter-spacing: 0.05em;
}

h1:before {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 4px;
    height: 28px;
    background-color: var(--blue30);
    position: absolute;
    top: 10px;
    left: 0;
}

h1:after {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 4px;
    height: 14px;
    background-color: var(--blue40);
    position: absolute;
    top: 24px;
    left: 0;
}

/*
.cate_top01_wrap p {
    line-height: 1.5;
}
*/

.cate_top01_wrap p.r_series {
    font-weight: 500;
}

.cate_top01_l .tit {
    font-size: 1.8rem;
    line-height: 1.5;
    font-weight: 500;
    margin-top: 40px;
    margin-bottom: 8px;
    padding-left: 12px;
    position: relative;
}

.cate_top01_l .tit:before {
    content: '';
    display: inline-block;
    width: 4px;
    height: 18px;
    background-color: var(--cloud40);
    position: absolute;
    top: 6px;
    left: 0;
}

.cate_top02_wrap {
    padding: 0;
    height: auto;
}

.cate_top02_wrap .cate_top01 {
    align-items: stretch;
}

.cate_top02_wrap .cate_top01_l {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-top: 20px;
    padding-bottom: 20px;
}

.cate_top02_wrap .page_head_img {
    height: 100%;
}

.cate_top02_wrap .page_head_img img {
    width: 100%;
    height: 100%;
/*    aspect-ratio: 16 / 9;*/
    object-fit: cover;
}

.cate_top03_wrap .cate_top01_l {
    width: calc(100% - 350px);
}

.cate_top03_wrap .cate_top01_r {
    width: 320px;
}

.cate_top03_wrap .cate_top01_r img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

ul.cate_top01_l_spec {
    margin-top: 20px;
    margin-left: 1.2em;
}

ul.cate_top01_l_spec li {
    list-style-type: disc;
    margin-bottom: 2px;
}

ul.cate_top01_l_spec li a {
    color: var(--blue30);
    text-decoration: underline;
    margin-right: 5px;
}


/*----------------
productArea
------------------*/

.productAreaWrap {
    padding-top: 32px;
    padding-bottom: 32px;
    background-color: var(--cloud10);
    width: var(--vw, 100%);
    margin-left:  calc(50% - (var(--vw, 100%) / 2));
    margin-right: calc(50% - (var(--vw, 100%) / 2));
}

.productArea {
    width: 100%;
    height: 100%;
    border: 1px solid var(--cloud20);
    display: flex;
    justify-content: space-between;
    box-shadow: var(--shadow30-small);
    background-color: #fff;
}

.productAreaCont {
    width: 50%;
    padding: clamp(40px, 6.5vw, 78px) clamp(32px, 5.3vw, 64px);
}

.productAreaImg {
    width: 50%;
	max-width: 582px;
    overflow: hidden;
}

.productAreaImg img {
    display: block;
/*    aspect-ratio: 16 / 9;*/
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition-duration: .4s;
}

.productArea:hover,
.productArea:focus-visible {
    border: 1px solid var(--blue40);
    outline: 1px solid var(--blue40);
    outline-offset: 0;
    box-shadow: var(--shadow30-mid);
}

.productArea:hover .productAreaImg img,
.productArea:focus-visible .productAreaImg img {
    transform: scale(1.08);
}

@media screen and (min-width: 768px) {
	.productArea {
		height: 327px;
	}
	.productAreaCont {
		box-sizing: border-box;
		padding: 30px 60px 30px 60px;
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
	.productAreaImg img {
		height: calc(100% + 2px);
	}

}

.productAreaCont .tit {
    font-size: 2.8rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    transition: color 0.3s ease;
}

.productAreaCont .subset_tit {
    font-size: 2.4rem;
    font-weight: 700;
    color: var(--cloud40);
    letter-spacing: 1px;
    line-height: 1.5;
    margin-top: 40px;
    transition: color 0.3s ease;
}

.productAreaCont .subset_tit span {
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--cloud40);
    letter-spacing: 1px;
    display: inline-block;
    line-height: 1.5;
    transition: color 0.3s ease;
}

.productArea:hover .productAreaCont .tit {
    color: var(--blue40);
}

.productArea:hover .productAreaCont .subset_tit {
    color: var(--blue40);
}

.productArea:hover .productAreaCont .subset_tit span {
    color: var(--blue40);
}


/*----------------
SOLUTION
------------------*/

.sol_wrap {
    margin-top: 80px;
}

ul.sol {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 24px 3%;
    margin-bottom: 52px;
}

ul.sol::after{
    content:"";
    display: block;
    width: 376px;
    max-width: 31.333333%;
}

ul.sol li {
    width: 376px;
    max-width: 31.333333%;
}

ul.sol li > div {
    height: 100%;
    border: 1px solid var(--cloud20);
    box-shadow: var(--shadow30-small);
}

ul.sol li > div:hover {
    cursor: default!important;
}

ul.sol li > a {
    display: block;
    height: 100%;
    border: 1px solid var(--cloud20);
    box-shadow: var(--shadow30-small);
}

ul.sol li > a:hover,
ul.sol li > a:focus-visible {
    box-shadow: var(--shadow30-mid);
    border: 1px solid var(--blue40);
}

ul.sol li .sol_img {
    overflow: hidden;
}

ul.sol li .sol_img img {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    transition-duration: .6s;
}

ul.sol li > a:hover .sol_img img,
ul.sol li > a:focus-visible .sol_img img {
    transform: scale(1.2);
}

ul.sol li .sol_text {
    padding: 20px 30px 32px 20px;
}

ul.sol li .sol_text > span {
    display: block;
    position: relative;
    font-size: 1.4rem;
    color: var(--cloud40);
    font-size: clamp(1.2rem, 1vw, 1.4rem);
    font-weight: 700;
    margin-bottom: 5px;
    padding-left: 15px;
}

ul.sol li .sol_text > span:before {
    content: '';
    display: inline-block;
    width: 2px;
    height: 13px;
    background-color: var(--cloud40);
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto 0;
}

ul.sol li .sol_text h3 {
    font-size: clamp(16px, 1.5vw, 18px);
    line-height: 1.25;
    font-weight: 500;
}

/*----------------
download
------------------*/

.downloadListArea {
    width: 100%;
    background-color: #fff;
    padding: 12px 2.1vw 12px 2.1vw;
    display: flex;
    align-items: center;
    margin-top: 24px;
}

.downloadListArea .tit {
    width: 180px;
    width: 15%;
    font-weight: 700;
}

.downloadListArea ul.downloadList {
    width: calc(100% - 180px);
    width: 85%;
    display: flex;
    column-gap: 1.7%;
}

.downloadListArea .tit:before {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 1px;
    height: 16px;
    background: #000;
    margin-right: 8px;
    margin-top: -4px;
}

.downloadListArea ul.downloadList li {
    width: 176px;
    max-width: 18.4%
}

.downloadListArea ul.downloadList li a {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid;
    border-color: var(--cloud30);
    border-radius: 30px;
    background-color: #fff;
    width: 100%;
    height: 52px;
    transition: color 0.2s ease, background-color 0.2s ease;
    padding-left: 10px;
    padding-right: 10px;
    position: relative;
    overflow: hidden;
}

.downloadListArea ul.downloadList li a::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background-color: var(--hot30);
    z-index: 0;
    transition: all 0.4s ease-out;
}

.downloadListArea ul.downloadList li a:hover::before {
    width: 100%;
}

.downloadListArea ul.downloadList li a p {
    line-height: 1.2;
    font-weight: 500!important;
    z-index: 9;
    position: relative;
}

.downloadListArea ul.downloadList li a img {
    display: block;
    width: 30px;
    max-width: 100%;
    transition: all 0.2s ease;
    margin-right: 8px;
}

.downloadListArea ul.downloadList li a:hover {
    border: 1px solid;
    border-color: var(--hot30);
    color: #fff;
}

.downloadListArea ul.downloadList li a .img {
    position: relative;
    display: inline-block;
    width: 30px;
    height: 30px;
    margin-right: 8px;
}

/*SVG USE*/
.downloadListArea ul.downloadList li a .img svg {
    width: 28px;
    height: 28px;
    color: var(--hot30);
    transition: color 0.2s ease;
}

.downloadListArea ul.downloadList li a:hover .img svg {
    color: #fff;
}

.downloadListArea ul.downloadList li a p {
    font-size: clamp(1.3rem, 1.2vw, 1.6rem);
    font-weight: 500;
}

.downloadListArea ul.downloadList li a:hover p {
    color: #fff;
}

.downloadListAreaWrap {
    border: 1px solid;
    border-color: var(--cloud20);
}

.downloadListAreaWrap .downloadListArea {
    background-color: var(--cloud10);
    margin-top: 0;
}

.downloadListAreaWrap .downloadListArea ul.downloadList {
    width: 87%;
    justify-content: flex-start;
    margin: 0 auto;
}

.downloadListAreaWrap .downloadListAreaHeading {
    padding: 11px 24px 11px 48px;
}

.downloadListAreaWrap .downloadListAreaHeading p {
    font-weight: 700;
}

.downloadListAreaWrap .downloadListAreaHeading p span {
    display: inline-block;
    font-size: 1.4rem;
    margin-left: 24px;
}

.downloadListArea.stand_al {
    background-color: var(--cloud10);
    border: 1px solid;
    border-color: var(--cloud20);
}


/*----------------
solutionArea
------------------*/

.solutionAreaWrap {
    padding: 56px 0 56px 0;
    background-color: var(--blue00);
    width: var(--vw, 100%);
    margin-left:  calc(50% - (var(--vw, 100%) / 2));
    margin-right: calc(50% - (var(--vw, 100%) / 2));
}

.solution_slide {
    width: var(--vw, 100%);
    margin-left:  calc(50% - (var(--vw, 100%) / 2));
    margin-right: calc(50% - (var(--vw, 100%) / 2));
}

.solutionAreaWrap .link_btn01 {
    margin-top: 40px!important;
}

.solution_slide .slider-img {
    margin: 0 16px;
}

.solution_slide .slider-img img {
    height: auto;
    width: 100%;
}

.solutionAreaItem  {
    padding-bottom: 20px;
}

.solutionAreaItem .sol_item {
    display: block;
    width: 376px;
    height: 100%;
    border: 1px solid var(--cloud20);
    box-shadow: var(--shadow30-small);
    background-color: #fff;
}

.solutionAreaItem .sol_item:hover,
.solutionAreaItem .sol_item:focus-visible {
    box-shadow: var(--shadow30-mid);
    border: 1px solid var(--blue40);
    outline: 1px solid var(--blue40);
    outline-offset: 0;
}

.solutionAreaItem .sol_item .sol_img {
    overflow: hidden;
}

.solutionAreaItem .sol_item .sol_img img {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    transition-duration: .6s;
}

ul.sol li > a:hover .sol_img img,
ul.sol li > a:focus-visible .sol_img img {
    transform: scale(1.2);
}

.solutionAreaItem .sol_item .sol_text {
    padding: 20px 24px 20px 24px;
}

/*
ul.sol li > a:hover .sol_text span,
ul.sol li > a:hover .sol_text p {
    color: var(--blue40);
}
*/

.solutionAreaItem .sol_item .sol_text > span {
    display: block;
    position: relative;
    font-size: 1.4rem;
    line-height: 1.5;
    color: var(--cloud40);
    font-weight: 700;
    margin-bottom: 10px;
    padding-left: 15px;
    transition: all 0.3s ease;
}

.solutionAreaItem .sol_item .sol_text > span:before {
    content: '';
    display: inline-block;
    width: 2px;
    height: 13px;
    background-color: var(--cloud40);
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto 0;
    transition: all 0.3s ease;
}

.solutionAreaItem .sol_item .sol_text h3 {
    font-size: clamp(16px, 1.5vw, 18px);
    line-height: 1.25;
    font-weight: 500!important;
    transition: all 0.3s ease;
}

.solutionAreaItem .sol_item:focus-visible .sol_text > span,
.solutionAreaItem .sol_item:focus-visible  .sol_text h3,
.solutionAreaItem .sol_item:hover .sol_text > span,
.solutionAreaItem .sol_item:hover  .sol_text h3 {
    color: var(--blue40);
}

.solutionAreaItem .sol_item:focus-visible .sol_text > span:before,
.solutionAreaItem .sol_item:hover .sol_text > span:before {
    background-color: var(--blue40);
}

/*----------------
Slider dots
------------------*/
.solution_ar_wrap {
    width: 100%;
    position: relative;
    height: 48px;
    display: flex;
    align-items: center;
}

.dots_box {
    display: flex;
    justify-content: center;
    width: 780px;
    max-width: 65%;
    margin: 0 auto;
}
.dots_items {
    width: 100%;
    display: flex;
    justify-content: center;
}

.dots_items li {
    flex-grow:1;
    height: 4px;
    margin: 0;
    background-color: var(--cloud30);
    cursor: pointer;
}

.dots_items li button {
    display: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    padding: 0;
    border: none;
    background-color: transparent;
}

.dots_items li:hover,
.dots_items li.slick-active {
    background-color: var(--blue30);
}

/*----------------
Slider Arrow
------------------*/

.solutionArea .arrow_box {
    display: flex;
    position: absolute;
    top: 0;
    right: 0;
}

.solutionArea .slide_ar {
    width: 48px;
    height: 48px;
    background-color: #000;
    border: 1px solid #fff;
    position: relative;
}

.solutionArea .slide_ar:hover {
    cursor: pointer;
    opacity: 0.7;
}

.solutionArea .slide_ar.prev {
    border-radius: 6px 0 0 6px;
}

.solutionArea .slide_ar.next {
    border-radius: 0 6px 6px 0;
}

.solutionArea .slide_ar.prev:before {
    content: '';
    width: 12px;
    height: 12px;
    border: 0;
    border-top: solid 2px #fff;
    border-left: solid 2px #fff;
    transform: rotate(-45deg);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    margin-left: 20px;
}

.solutionArea .slide_ar.next:before {
    content: '';
    width: 12px;
    height: 12px;
    border: 0;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    margin-right: 20px;
}

/*----------------
Special Feature
------------------*/

ul.special_fea {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: stretch;
    gap: 32px 3%;
    margin-top: 80px;
}

ul.special_fea li {
    width: 582px;
    max-width: 48.5%;
    height: auto;
    max-height: 184px;
}

ul.special_fea li a {
    width: 100%;
    height: 100%;
    border: 1px solid var(--cloud20);
    display: flex;
    box-shadow: var(--shadow30-small);
}

ul.special_fea li a:hover,
ul.special_fea li a:focus-visible {
    border: 1px solid var(--blue40);
    outline: 1px solid var(--blue40);
    outline-offset: 0;
    box-shadow: var(--shadow30-mid);
}

ul.special_fea li a:hover .special_fea_cont h3,
ul.special_fea li a:focus-visible .special_fea_cont h3,
ul.special_fea li a:hover .special_fea_cont p.subset,
ul.special_fea li a:hover .special_fea_cont p {
    color: var(--blue40);
}

.special_fea_cont {
/*    width: 52%;*/
    flex: 1 1 auto;
    padding: 24px 16px 24px 24px;
}

.special_fea_img {
    width: 48%;
    max-width: 273px;
    flex: 0 0 auto;
    overflow: hidden;
}

.special_fea_img img {
    display: block;
    aspect-ratio: 16 / 9;
    height: 100%;
    object-fit: cover;
    transition-duration: .3s;
}

ul.special_fea li a:hover .special_fea_img img,
ul.special_fea li a:focus-visible .special_fea_img img {
    transform: scale(1.2);
}

.special_fea_cont h3 {
    font-size: 1.8rem;
    font-size: clamp(1.5rem, 1.6vw, 1.8rem);
    letter-spacing: 0.05em;
    font-weight: 700;
    line-height: 1.25;
    transition: all 0.3s ease;
}

.special_fea_cont p {
    font-size: 1.4rem;
    font-size: clamp(1.2rem, 1vw, 1.4rem);
    line-height: 1.5;
    color: var(--cloud40);
    transition: all 0.3s ease;
}

.special_fea_cont p span {
    font-size: 1.2rem;
    color: var(--cloud40);
    font-family: "Inter", sans-serif;
    transition: all 0.3s ease;
}

.special_fea_cont p.subset {
    font-weight: 700;
    margin-bottom: 2px;
    transition: all 0.3s ease;
}

/*----------------
SearchRobot
------------------*/

.SearchRobot {
    width: 100%;
    padding: 32px 52px 32px 52px;
    background-color: var(--blue00);
    border: 1px solid;
    border-color: var(--blue40);
    border-radius: 3px;
}

.SearchRobotItems {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 8px 8px;
    margin-top: 32px;
}

.SearchRobotItems li a {
    display: block;
    font-size: 1.4rem;
    line-height: 1;
    white-space: nowrap;
    text-align: center;
    color: var(--blue30);
    background-color: #fff;
    padding: 4px 14px 4px 14px;
    border: 1px solid;
    border-color: var(--blue10);
    border-radius: 30px;
}

.SearchRobotItems li a:hover {
    cursor: pointer;
    background-color: var(--blue00);
    box-shadow: var(--shadow30-nano);
}

.SearchRobot .tit {
    font-size: 1.6rem;
    font-weight: 500;
}

.SearchRobot .tit:before {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 1px;
    height: 17px;
    background-color: #000;
    margin-right: 10px;
    margin-top: -4px;
}

/*----------------
Lineup
------------------*/

a.icInfo {
    display: inline-block;
    vertical-align: middle;
    font-weight: 500;
    margin-left: 16px;
}

a.icInfo:after {
    content: '';
    display: inline-block;
    width: 20px;
    height: 20px;
    background-image: url("/assets/img/common/ic_info.png");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    margin-left: 6px;
    margin-top: -4px;
}

a.icInfo:hover {
    color: var(--blue40);
}

.tabBox .tabArea {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    column-gap: 3px;
    border-bottom: 1px solid var(--cloud20);
}

.tabBox .tabArea .one_tab {
/*    width: 24.8%;*/
    flex: 1;
}

.tabBox .tabArea .one_tab a {
    display: block;
    text-decoration: none;
    transition-duration: 0.2s;
    text-align: center;
    color: #fff;
    border: 1px solid var(--cloud20);
    background-color: var(--cloud10);
    padding: 10px 10px 10px 10px;
    box-shadow: inset 0 -2px 6px rgba(0, 0, 0, 0.05);
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.tabBox .tabArea .one_tab a:hover,
.tabBox .tabArea .one_tab a:focus-visible {
    opacity: 0.7;
    text-decoration: none;
}

.tabBox .tabArea .one_tab a.select {
    background-color: #fff;
    border-bottom: 1px solid #fff;
    border-top: 3px solid #000;
    padding-top: 9px;
    padding-bottom: 9px;
    box-shadow: none;
    position: relative;
}

.tabBox .tabArea .one_tab a.select:after {
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    background-color: #fff;
    position: absolute;
    left: 0;
    bottom: -2px;
}

.tabBox .tabArea .one_tab span.tab_inner {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.6rem;
    font-weight: 500;
    transition-duration: 0.2s;
}

.tabBox .tabArea .one_tab .select span.tab_inner {
    font-weight: 700;
}

.tabCont .tab_main {
    display: none;
    padding: 0;
    text-align: center;
    transition-duration: 0.2s;
}

.tab_main.is_show {
    display: block;
}

.tabBox .tabArea .one_tab a.robot_ic {
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 10px;
    padding-top: 3px;
    padding-bottom: 3px;
    min-height: 64px;
    position: relative;
}

.lineupWrap .tabCont {
    margin-top: 32px;
}

.tabBox .tabArea .one_tab a.robot_ic span.ic_img img {
    display: block;
    width: 74px;
}

.tabBox .tabArea .one_tab a.robot_ic p {
    font-size: clamp(1.3rem, 1.2vw, 1.6rem);
    font-weight: 500;
    text-align: center;
}

.lineupItemWrap {
    display: flex;
    flex-wrap: wrap;
    gap: 28px 3%;
}

.lineupItemWrap .lineupItem {
    width: 376px;
    max-width: 31.33%;
/*    margin-top: 24px;*/
    border: 1px solid;
    border-color: var(--cloud20);
    box-shadow: var(--shadow30-mini);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    transition: all 0.2s ease-out;
    position: relative;
}

.lineupItemWrap .lineupItem:hover {
    color: var(--blue40);
    box-shadow: var(--shadow30-mid)!important;
    border: 1px solid var(--blue40);
    outline: 1px solid var(--blue40);
    outline-offset: 0;
}

/*
.lineupItemWrap .lineupItem:hover::after {
    transition: all 0.2s ease;
}

.lineupItemWrap .lineupItem:hover::after {
    content: '';
    width: 100%;
    height: 100%;
    border: 2px solid var(--blue40);
    position: absolute;
    top: 0;
    left: 0;
}
*/

.lineupItemWrap .lineupItem p {
    transition: all 0.3s;
}

.lineupItemWrap .lineupItem:hover h3,
.lineupItemWrap .lineupItem:hover p,
.lineupItemWrap .lineupItem:hover a,
.lineupItemWrap .lineupItem:focus-visible h3,
.lineupItemWrap .lineupItem:focus-visible p,
.lineupItemWrap .lineupItem:focus-visible a {
    color: var(--blue40);
}

.lineupItemWrap .lineupItemCont {
    padding: 24px 30px 24px 30px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
}

.lineupItemWrap .lineupItemCont p {
    text-align: left;
    transition: all 0.2s ease-out;
}


.lineupItemWrap .lineupItemCont .tit h3 {
    display: block;
    font-size: 1.8rem;
    font-weight: 700;
    text-align: left;
    margin-bottom: 12px;
    padding-right: 20px;
    position: relative;
    transition: all 0.3s ease-out;
}

.lineupItemWrap .lineupItemCont .tit {
    display: block;
    font-size: 1.8rem;
    font-weight: 700;
    text-align: left;
    margin-bottom: 12px;
    padding-right: 12px;
    position: relative;
    transition: all 0.3s ease-out;
}

.lineupItemWrap .lineupItemCont .tit:after {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 10px;
    height: 10px;
    border: 0;
    border-top: solid 2px;
    border-right: solid 2px;
    border-color: var(--blue40);
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
}

.lineupItemWrap .lineupItemCont .mass {
    border-top: 1px solid;
    border-color: var(--cloud20);
    padding-top: 12px;
    margin-top: 12px;
    transition: all 0.3s ease-out;
}

.lineupItemWrap .lineupItemCont .mass p {
    font-size: 1.8rem;
    font-weight: 500;
}

.dl_btns {
    display: flex;
    justify-content: space-between;
    column-gap: 8px;
    padding-top: 12px;
    margin-top: 12px;
    border-top: 1px solid;
    border-color: var(--cloud20);
    transition: all 0.3s;
}

a.dlbtn.solbtn {
    width: 181px;
}

a.dlbtn p {
    line-height: 1;
    font-weight: 500;
}

/*対象ボタン全てのパターンを考慮した設定になります。変更が必要な場合は要相談*/
a.dlbtn {
/*    width: 147px;*/
    width: fit-content;
    min-width: 130px;
    height: 40px;
    padding: 4px 8px;
    display: flex;
    align-items: center;
    border: 1px solid var(--cloud30);
    background-color: #fff;
    border-radius: 30px;
    transition: all 0.3s ease-out;
    display: flex;
    justify-content: center;
    align-items: center;
    text-decoration: none!important;
    position: relative;
    overflow: hidden;
}

a.dlbtn::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background-color: var(--hot30);
    z-index: 0;
    transition: all 0.4s ease-out;
}

a.dlbtn_wide {
    width: 582px;
    margin: 0 auto;
    min-height: 52px;
}

a.dlbtn:hover::before {
    width: 100%;
}

a.dlbtn svg {
    width: 26px;
    height: 26px;
    color: var(--hot30);
    margin-right: 4px;
    transition: color 0.3s ease;
    position: relative;
    z-index: 2;
}

.lineupItemHeading a.dlbtn svg {
    width: 28px;
    height: 28px;
}

.lineupItemWrap .lineupItemCont a.dlbtn p {
    line-height: 1.3;
    font-size: clamp(14px, 1.35vw, 16px);
    font-weight: 500!important;
    transition: all 0.3s;
    position: relative;
    z-index: 2;
}

a.dlbtn:hover svg {
    color: #fff;
}

a.dlbtn:hover {
/*    background-color: var(--hot30);*/
    border: 1px solid var(--hot30);
}

a.dlbtn:hover p {
    position: relative;
    z-index: 2;
}

a.dlbtn:hover p {
    color: #fff!important;
}

.lineupItemWrap .lineupItem:hover a.dlbtn p {
    color: #000;
}

.lineupItemWrap .lineupItem:hover .mass {
    border-color: var(--blue40);
}

.lineupItemWrap .lineupItem:hover .dl_btns {
    border-color: var(--blue40);
}

@media screen and (max-width:1000px) {
    .dl_btns {
        flex-direction: column;
        align-items: center;
        gap: 8px;
    }
    a.dlbtn,
    a.dlbtn.solbtn {
        width: 100%;
    }
    .lineupItemWrap .lineupItemCont {
        padding-left: 15px;
        padding-right: 15px;
    }
}

/*
a.dlbtn .img {
    display: block;
    width: 18px;
    margin-right: 5px;
    display: inline-block;
    vertical-align: middle;
}
*/

/*
a.dlbtn .img img {
    transition: all 0.3s;
}

a.dlbtn .img img.hov {
    display: none;
    opacity: 0;
}

a.dlbtn:hover .img img {
    display: none;
    opacity: 0;
}

a.dlbtn:hover .img img.hov {
    display: block;
    opacity: 1;
}
*/



/*----------------
Banner Links
------------------*/

ul.col02 {
    display: flex;
    justify-content: space-between;
    column-gap: 3%;
}

ul.col02 li {
    width: 582px;
    max-width: 48.5%;
}

ul.col03 {
    display: flex;
    justify-content: space-between;
}

ul.col03::after{
    content:"";
    display: block;
    width: 31.33%;
}

ul.col03 li {
    width: 376px;
    max-width: 31.33%;
}

ul.banlinks {
    margin: 80px auto 80px;
}

.tab_main ul.col03 li {
	max-width: 100%;
}

ul.banlinks a {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    padding: 19px 30px 20px 30px;
    background-color: #fff;
    border: 1px solid var(--cloud20);
    box-shadow: var(--shadow30-mini);
    position: relative;
    transition: all 0.3s ease;
}

ul.banlinks a:hover {
    border: 1px solid var(--blue40);
    outline: 1px solid var(--blue40);
    outline-offset: 0;
}

ul.banlinks a:after {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 10px;
    height: 10px;
    border: 0;
    border-top: solid 2px;
    border-right: solid 2px;
    border-color: var(--blue40);
    transform: rotate(45deg);
    margin-left: 8px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 14px;
    margin: auto;
}

ul.banlinks a .ban_ic {
    display: block;
    width: 57px;
    margin-right: 16px;
}

ul.banlinks a:hover .ban_ic img {
    transition: all 0.2s ease;
}

ul.banlinks a .ban_ic img.hov {
    display: none;
    opacity: 0;
}

ul.banlinks a:hover .ban_ic img {
    display: none;
    opacity: 0;
}

ul.banlinks a:hover .ban_ic img.hov {
    display: block;
    opacity: 1;
}

ul.banlinks a .ban_text {
    width: calc(100% - 73px);
    font-size: clamp(1.5rem, 1.25vw, 1.8rem);
    font-weight: 500!important;
    letter-spacing: 0.05em;
	text-align: left;
    transition: color 0.3s ease;
}

ul.banlinks a:hover .ban_text span {
    transition: color 0.3s ease;
}

ul.banlinks a:hover,
ul.banlinks a:focus-visible {
    box-shadow: var(--shadow30-mid);
}

ul.banlinks a:hover .ban_text,
ul.banlinks a:focus-visible .ban_text,
ul.banlinks a:hover .ban_text span,
ul.banlinks a:focus-visible .ban_text span {
    color: var(--blue40);
}

/*----------------
Installation Support
------------------*/

.instSupportWrap > .tit {
    padding: 22px 64px 21px 64px;
    border: 1px solid;
    border-color: var(--cloud20);
    font-size: 2.4rem;
    font-weight: 700;
}

.instSupport .link_btn01_wh span {
    color: #000;
}

.instSupport .link_btn01_wh:hover span {
    color: #fff;
}

.instSupport {
    display: flex;
    transition: all 0.3s ease;
}

.instSupport_l {
    width: 50%;
    background-color: var(--accent00);
    padding: 32px 2.4vw 48px 3.2vw;
}

.instSupport_r {
    width: 50%;
    background-color: var(--accent50);
    padding: 24px 3.2vw 32px 3.2vw;
}

ul.fuki_wrap {
    display: flex;
    align-items: flex-end;
}

ul.fuki_wrap .fuki {
    width: 407px;
    min-width: 376px;
    max-width: 90%;
    min-height: 189px;
    aspect-ratio: 407 / 189;
    padding: 0;
    background-image: url("/assets/img/product/fukidashi.png");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

ul.fuki_wrap .fuki_img {
    max-width: 103px;
    margin: 0 auto;
}

ul.fuki_wrap .fuki p {
    width: 86%;
    margin-left: -18px;
    word-wrap: break-word;
    overflow-wrap: break-word;
    word-break: normal; 
}


/*
@media screen and (min-width:768px) {
    ul.fuki_wrap .fuki {
        width: 80%;
    }
    ul.fuki_wrap .fuki_img {
        width: 103px;
        min-width: 20%;
        margin: 0 auto;
    }
}
*/






/*三角形部分だけSVGバージョン*/
/*
.fuki{
  --b: 2px;
  --r: 10px;
  --tailW: 18px;
  --tailH: 36px;
  --stroke: #023E6B;
  --bg: #B6DDED;
  --overlap: 1px;
  --pad: 1px;
  position: relative;
  padding: 16px 20px;
  background: var(--bg);
  border: var(--b) solid var(--stroke);
  border-right: none;
  border-radius: var(--r);
  line-height: 1.7;
}

.fuki::after{
    content:"";
    position:absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(var(--stroke), var(--stroke))
    top right / var(--b) calc(50% - (var(--tailH)/2) + var(--pad)) no-repeat,
    linear-gradient(var(--stroke), var(--stroke))
    bottom right / var(--b) calc(50% - (var(--tailH)/2) + var(--pad)) no-repeat;
    border-radius: var(--r);
    z-index: 1;
}

.fuki::before{
    content:"";
    position:absolute;
    top:50%;
    right: calc(-1 * var(--tailW) + var(--overlap));
    width: var(--tailW);
    height: var(--tailH);
    transform: translateY(-50%);
    pointer-events: none;
    z-index: 2;
    background:
    center/100% 100% no-repeat
    url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 41' preserveAspectRatio='none'>\
  <path d='M0.698811 0.968749L19.2074 16.2325C21.3536 18.0024 22.4267 18.8874 22.796 19.9385C23.1197 20.8598 23.0952 21.8677 22.7272 22.7722C22.3072 23.8042 21.1924 24.6359 18.9628 26.2995L0.698809 39.9271' \
        fill='none' stroke='%23023E6B' stroke-width='2' \
        stroke-linecap='butt' stroke-linejoin='round' \
        vector-effect='non-scaling-stroke'/>\
</svg>");
}

.fuki > p {
    margin:0;
}
*/



/*全てSVGバージョン*/
/*
.fuki{
    --fuki-b: 2px;
    --fuki-stroke: #023E6B;
    --fuki-bg: #B6DDED;
    position: relative;
    padding: 14px 16px;
    list-style: none;
}
.fuki > p{
    position: relative;
    z-index: 1;
    margin: 0;
    line-height: 1.8;
}
.fuki .fuki-border{
    position: absolute;
    inset: 0;
    width: 100%; height: 100%;
    z-index: 0;
    pointer-events: none;
}
.fuki .fuki-border .fill{
    fill: var(--fuki-bg);
}
.fuki .fuki-border .stroke{
    fill: none;
    stroke: var(--fuki-stroke);
    stroke-width: var(--fuki-b);
    stroke-linejoin: round;
    vector-effect: non-scaling-stroke;
}

.fuki.is-left .fuki-border{
    transform: scaleX(-1);
    transform-origin: center;
}
*/










.box_link {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.box_link li {
    width: 100%;
}

.box_link li a {
    width: 100%;
/*    max-width: 516px;*/
    height: 96px;
    display: flex;
    align-items: center;
    padding: 19px 60px 20px 30px;
    background-color: #fff;
    border: 1px solid var(--cloud20);
    box-shadow: var(--shadow30-mini);
    position: relative;
    transition: all 0.3s ease;
}

.box_link li a .ban_ic {
    display: block;
    width: 57px;
    margin-right: 16px;
}

.box_link li a .ban_text {
    width: calc(100% - 73px);
    font-size: 1.8rem;
/*    font-size: clamp(1.5rem, 1.25vw, 1.8rem);*/
    font-weight: 500;
    transition: color 0.3s ease;
}

.box_link li a:after {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 10px;
    height: 10px;
    border: 0;
    border-top: solid 2px;
    border-right: solid 2px;
    border-color: var(--blue40);
    transform: rotate(45deg);
    margin-left: 8px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 14px;
    margin: auto;
}

.box_link li a:hover,
.box_link li a:focus-visible {
    box-shadow: var(--shadow30-mid);
    border: 1px solid var(--blue40);
    outline: 1px solid var(--blue40);
    outline-offset: 0;
}

.box_link li a:hover p,
.box_link li a:focus-visible p {
    color: var(--blue40);
}

.box_link li a .ban_ic img {
    transition: all 0.3s ease;
}

.box_link li a .ban_ic img.hov {
    display: none;
    opacity: 0;
}

.box_link li a:hover .ban_ic img,
.box_link li a:focus-visible .ban_ic img {
    display: none;
    opacity: 0;
}

.box_link li a:hover .ban_ic img.hov,
.box_link li a:focus-visible .ban_ic img.hov {
    display: block;
    opacity: 1;
}



@media screen and (max-width:1000px) {
    .instSupport {
        flex-direction: column;
        align-items: center;
    }
    .instSupport_l,
    .instSupport_r {
        width: 100%;
    }
    .instSupport_l {
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    .instSupport .box_link li a {
        margin: 0 auto;
    }
}


.instSupport_r .tit {
    font-size: 2.8rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    color: #fff;
    text-align: center;
}

ul.fyi_list {
    margin-top: 20px;
}

ul.fyi_list li {
    padding-bottom: 12px;
    margin-bottom: 12px;
    border-bottom: 1px solid #fff;
}

ul.fyi_list li:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

ul.fyi_list li .ranking {
    display: inline-block;
    font-size: 1.6rem;
    font-weight: 700;
    text-align: center;
    width: 32px;
    height: 32px;
    vertical-align: middle;
    line-height: 32px;
    margin-right: 12px;
}

ul.fyi_list li .ranking.r_first {
    color: #fff;
    background-color: var(--hot00);
}

ul.fyi_list li .ranking.r_second {
    color: var(--accent50);
    background-color: var(--cloud10);
}

ul.fyi_list li .ranking.r_third{
    color: #fff;
    background-color: var(--accent30);
}

ul.fyi_list li span.cat {
    display: inline-block;
    color: #fff;
    border: 1px solid #fff;
    font-size: 1.2rem;
    text-align: center;
    padding: 4px 8px;
}

ul.fyi_list li a {
    display: block;
    color: #fff;
    font-size: 1.8rem;
    font-weight: 500;
    letter-spacing: 0.05em;
    margin-top: 8px;
    position: relative;
    padding-right: 30px;
}

ul.fyi_list li a:after {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 10px;
    height: 10px;
    border: 0;
    border-top: solid 2px;
    border-right: solid 2px;
    border-color: #fff;
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    bottom: 0;
    right: 5px;
    margin: auto;
}

ul.fyi_list li a:hover {
    opacity: 0.7;
}

/*----------------
Related Links
------------------*/

.relatedLinksItem {
    display: block;
    background-color: #fff;
    border: 1px solid var(--cloud20);
    box-shadow: var(--shadow30-mini);
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 24px 30px 24px 30px;
    transition: all 0.3s ease-out;
}

.relatedLinksItem .ic {
    display: block;
    width: 80px;
    margin-right: 16px;
    margin-bottom: 20px;
    transition: all 0.3s ease-out;
}

.relatedLinksItem .ic img {
    transition: all 0.3s ease-out;
}

.relatedLinksItem .ic img.hov {
    display: none;
    opacity: 0;
}

.relatedLinksItem .text {
    width: 100%;
    font-size: 1.8rem;
    line-height: 1.4;
    font-weight: 500!important;
    position: relative;
    transition: all 0.3s ease-out;
}

.relatedLinksItem .text:after {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 10px;
    height: 10px;
    border: 0;
    border-top: solid 2px;
    border-right: solid 2px;
    border-color: var(--blue40);
    transform: rotate(45deg);
    margin-left: 8px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: -10px;
    margin: auto;
}

.relatedLinksItem .text span {
    font-size: 1.6rem;
    font-weight: 500;
    letter-spacing: 0.01em;
}

.relatedLinksItem:hover,
.relatedLinksItem:focus-visible {
    box-shadow: var(--shadow30-mid);
    border-color: var(--blue40);
    outline: 1px solid var(--blue40);
    outline-offset: 0;
}

.relatedLinksItem:hover .text,
.relatedLinksItem:focus-visible .text,
.relatedLinksItem:hover .text span,
.relatedLinksItem:focus-visible .text span {
    color: var(--blue40);
}

.relatedLinksItem:hover span.ic img,
.relatedLinksItem:focus-visible .ic img {
    display: none;
    opacity: 0;
}

.relatedLinksItem:hover span.ic img.hov,
.relatedLinksItem:focus-visible span.ic img.hov {
    display: block;
    opacity: 1;
}

.relatedLinksItem:hover span.ic img.single,
.relatedLinksItem:focus-visible .ic img.single {
    display: block;
    opacity: 1;
}

.lineupItemHeading {
    background-color: var(--cloud10);
    padding: 12px 24px 12px 24px;
    text-align: left;
    margin-top: 24px;
    margin-bottom: 24px;
    position: relative;
}

.lineupItemHeading h3 {
    font-size: 2.4rem;
    font-weight: 700;
}

.lineupItemHeading a.dlbtn {
    width: fit-content;
    min-height: 52px;
    font-size: clamp(14px, 1.35vw, 16px);
    padding: 0 20px;
    position: absolute;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 32px;
    margin: auto;
}

.tab_anc_links {
    background-color: var(--blue00);
    border: 1px solid var(--cloud20);
    padding: 12px 32px 12px 32px;
    box-shadow: var(--shadow15-small);
    margin-top: 24px;
}

.tab_anc_links ul {
    display: flex;
    flex-wrap: wrap;
    column-gap: 2%
}

.tab_anc_links ul li {
    width: 22%;
    text-align: left;
    margin-bottom: 6px;
}

.tab_anc_links ul li.extend {
    width: 25%
}

.tab_anc_links ul li a {
    display: block;
    font-size: clamp(14px, 1.35vw, 16px);
    text-align: left;
    line-height: 1.3;
    position: relative;
    padding-left: 22px;
}

.tab_anc_links ul li a:before {
    content: '';
    display: inline-block;
    width: 10px;
    height: 10px;
    border: 0;
    border-bottom: solid 2px;
    border-right: solid 2px;
    border-color: var(--blue40);
    transform: rotate(45deg);
    margin-right: 12px;
    position: absolute;
    top: 3px;
    left: 0;
}

.tab_anc_links ul li a:hover {
    color: var(--blue40);
}

/*----------------
specRobot
------------------*/

.specRobotWrap {
    width: 100%;
    padding: 32px 42px 24px 42px;
    background-color: var(--blue00);
    border: 1px solid;
    border-color: var(--blue40);
    border-radius: 3px;
}

.specRobot {
    display: flex;
    justify-content: space-between;
}

.specRobotCapa,
.specRobotReach {
    width: 525px;
    max-width: 48.5%;
}

.specRobot .tit {
    font-weight: 500;
    font-size: 1.4rem;
    margin-bottom: 8px;
}

.specRobot .tit:before {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 1px;
    height: 17px;
    background-color: #000;
    margin-right: 10px;
    margin-top: -4px;
}

.numOfCases {
    font-size: 2.4rem;
    font-weight: 700;
    text-align: center;
    margin-top: 10px;
    margin-bottom: 5px;
}

.numOfCases span {
    font-size: 3.4rem;
    font-weight: 700;
    color: var(--blue40);
    letter-spacing: 0.05em;
}

.filterResult {
    display: flex;
    justify-content: center;
    align-items: center;
    column-gap: 33px;
}

.filterResult .numOfCases {
    margin: 0;
}

.filterResult .link_btn01 {
    margin: 0;
}

/*----------------
selectbox
------------------*/

/* 初期化 */
select {
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    background: none;
    border: none;
    color: #333;
    font-size: 16px;
    width: 100%;
    height: 100%;
    padding: 0 10px;
}

option[selected][disabled] {
    display: none;
}

.selectbox {
    position: relative;
}

.selectbox select {
    width: 525px;
    max-width: 100%;
    height: 56px;
    position: relative;
    background-color: #fff;
    border: 1px solid #B3B4B5;
    border-radius: 3px;
    font-size: 1.4rem;
    padding: 0 16px;
}

.selectbox::before {
    content: '';
    width: 1px;
    height: 100%;
    background: #B3B4B5;
    position: absolute;
    top: 0;
    right: 52px;
    z-index: 1;
}

.selectbox::after {
    content: '';
    width: 12px;
    height: 12px;
    border: 0;
    border-bottom: solid 2px #0056B9;
    border-right: solid 2px #0056B9;
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    right: 20px;
    bottom: 0;
    margin: auto;
    z-index: 1;
    pointer-events: none;
}

/*----------------
robotLineup
------------------*/

.robotLineup {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    row-gap: 24px;
}

.robotLineup::before{
    content:"";
    display: block;
    width:22.85%;
    order:1;
}
.robotLineup::after{
    content:"";
    display: block;
    width:22.85%;
}

.robotLineup li {
    width: 22.85%;
}

.robotLineup li > a {
    display: block;
    width: 100%;
    height: 100%;
    background-color: #fff;
    border: 1px solid;
    border-color: var(--cloud20);
    box-shadow: var(--shadow30-mini);
}

.robotLineup li > a .robotLineupImg img {
    display: block;
    width: 100%;
    aspect-ratio: 273 / 154;
    object-fit: cover;
    margin: 0 auto;
}

.robotLineup li > a .robotLineupCont {
    padding: 12px 24px 24px 24px;
}

.robotLineup li > a .robotLineupCont h3 {
    font-size: 1.8rem;
    font-weight: 700;
    position: relative;
    padding-right: 12px;
}

.robotLineup li > a .robotLineupCont h3:after {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 10px;
    height: 10px;
    border: 0;
    border-top: solid 2px;
    border-right: solid 2px;
    border-color: var(--blue40);
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
}

.robotLineup li > a:hover {
    box-shadow: var(--shadow30-mid);
    border-color: var(--blue40);
    outline: 1px solid var(--blue40);
    outline-offset: 0;
}

.robotLineup li > a:hover h3 {
    color: var(--blue40);
}

.robotLineup li > a:hover p {
    color: var(--blue40);
}

/*----------------
tableCheckList
------------------*/

.scroll_table {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.scroll_table table {
    min-width: 1000px;
    border-collapse: collapse;
}

table.tableCheckList {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    table-layout: fixed;
}

table.tableCheckList th,
table.tableCheckList td {
    border: 1px solid;
    border-color: var(--cloud30);
    padding: 10px 8px 10px;
}

table.tableCheckList th {
    background-color: var(--cloud10);
    font-weight: 500;
    text-align: left;
}

table.tableCheckList td.v_top {
    vertical-align: top;
}

table.tableCheckList td.tclImg {
    padding: 0;
}

table.tableCheckList td.tclImg img {
    width: 88px;
    max-width: 64px;
}

table.tableCheckList .dl_btns {
    width: fit-content;
    padding: 0;
    margin: 0 auto;
    border-top: none;
}

@media screen and (max-width: 1000px) {
    table.tableCheckList .dl_btns {
        flex-direction: row;
    }
}

table.tableCheckList a.dlbtn {
    width: 132px;
}

table.tableCheckList a.dlbtn p {
    font-size: 1.4rem;
}

a.tclLink {
    color: var(--blue30);
    text-decoration: underline;
}

a.tclLink:hover,
a.tclLink:focus-visible {
  color: var(--cloud40);
}

table.tableCheckList input[type="checkbox"] {
    display: block;
    width: 17px;
    height: 17px;
    margin: 0 auto;
}

.red_aster {
    font-weight: 500;
    color: var(--hot50);
}



/*----------------
searchResult
------------------*/

ul.searchResult li {
/*    margin-top: 24px;*/
}

ul.searchResult li > a .robotLineupCont {
    padding: 5px 20px 20px 20px;
}

.robotLineupContText {
    border-top: 1px solid;
    border-color: var(--cloud20);
    margin-top: 12px;
    padding-top: 12px;
}

/*----------------
usefulInfo
------------------*/

.usefulInfo {
    display: flex;
    column-gap: 3%;
}

.usefulInfoItem {
    width: 376px;
    max-width: 31%;
}

.usefulInfoItemImg {
    margin-bottom: 14px;
    cursor: pointer;
}

.usefulInfoItemImg img,
usefulInfoItemImg iframe {
    width: 100%;
    margin: 0 auto;
    aspect-ratio: 16/ 9;
    object-fit: cover;
}

.usefulInfoItem h3 {
    font-size: 1.8rem;
    font-weight: 700;
    margin-bottom: 14px;
}

/*----------------
MOTOMAN-HC10DTP
------------------*/

dl.r_details {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}

dl.r_details dt,
dl.r_details dd {
    margin-bottom: 2px;
}

dl.r_details dt {
    width: 150px;
    margin-right: 10px;
}

dl.r_details dd {
    width: calc(100% - 160px);
    padding-left: 10px;
    position: relative;
}

dl.r_details dd:before {
    content: ':';
    display: inline-block;
    vertical-align: middle;
    position: absolute;
    top: -2px;
    left: 0;
}

dl.r_details dd a {
    color: var(--blue30);
    text-decoration: underline;
    margin-right: 5px;
}

.centerImgWide {
    max-width: 788px;
    margin: 40px auto 0;
}

.centerImgWide iframe {
    width: 100%;
    aspect-ratio: 788 / 433;
    object-fit: cover;
}

.prodArticle {
    display: flex;
    justify-content: space-between;
    padding-top: 12px;
    border-top: 1px solid;
    border-color: var(--cloud30);
    position: relative;
    margin-top: 80px;
}

.prodArticle:before {
    content: '';
    display: block;
    width: 273px;
    width: 22.75%;
    height: 3px;
    background-color: var(--blue20);
    position: absolute;
    top: -2.5px;
    left: 0;
}

.prodArticle01 {
    flex-wrap: wrap;
}

.prodArticle01 h3 {
    width: 100%;
}

.prodArticleCont {
    width: 48.25%;
}

.prodArticleImg {
    width: 48.5%;
    margin-top: 8px;
}

.prodArticleImg img {
    display: block;
    max-width: 100%;
    margin: 0 auto;
/*
    aspect-ratio: 16/ 9;
    object-fit: cover;
*/
}

.prodArticle .link_btn01 {
    margin-top: 60px;
}

table.tableNormal {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
/*    table-layout: fixed;*/
    margin-bottom: 15px;
}

table.tableNormal th,
table.tableNormal td {
    border: 1px solid;
    border-color: var(--cloud30);
    padding: 10px 10px 10px 10px;
    vertical-align: top;
}

table.tableNormal th {
    background-color: var(--cloud10);
    font-weight: 500;
    text-align: left;
    
}

table th a,
table td a {
    color: var(--blue30);
    text-decoration: underline!important;
}

.aster {
    font-size: 1.4rem;
}

/*----------------
Download
------------------*/

ul.robotdlListBtn {
    display: flex;
    border-bottom: 1px solid;
    border-color: var(--cloud20);
/*
    overflow-x: auto;
    overflow-y: hidden;
*/
}

ul.robotdlListBtn li {
    flex-grow: 1;
    width: 100%;
    min-width: 168px;
    margin: 0 1px;
    flex-grow: 1;
}

ul.robotdlListBtn li:first-child {
    margin-left: 0;
}

ul.robotdlListBtn li:last-child {
    margin-right: 0;
}

ul.robotdlListBtn li > a {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    font-size: 1.6rem;
    font-weight: 600;
    padding: 10px 10px 10px 10px;
    background-color: var(--cloud10);
    border: 1px solid;
    border-color: var(--cloud20);
    box-shadow: var(--innerShadow01);
}

ul.robotdlListBtn li > a:hover {
    opacity: 0.7;
}

ul.robotdlListBtn li > a.act {
    background-color: #fff;
    border-bottom: 1px solid #fff;
    border-top: 3px solid #000;
    padding-top: 9px;
    padding-bottom: 9px;
    box-shadow: none;
    position: relative;
    pointer-events: none;
    font-weight: 700;
}

ul.robotdlListBtn li > a.act:after {
    content: '';
    display: block;
    width: 100%;
    height: 4px;
    background-color: #fff;
    position: absolute;
    left: 0;
    bottom: -4px;
    z-index: 2;
}


/*----------------
langCheckbox
------------------*/

.langCheckboxWrap {
    margin-top: 24px;
}

.langCheckboxWrap .dl_search_result {
    font-weight: 700;
    margin-top: 12px;
}

.langCheckbox {
    display: flex;
/*    align-items: center;*/
    align-items: flex-start;
    border: none;
    margin: 0;
    margin-top: 24px;
    background-color: var(--cloud10);
    padding: 20px 32px 20px 32px;
}

.group-label {
    white-space: nowrap;
    font-weight: 500;
    margin-right: 8px;
    position: relative;
}

.group-label:before {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 1px;
    height: 16px;
    background-color: #000;
    margin-right: 10px;
    margin-top: -4px;
}

.langCheckbox div {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-left: 24px;
}

.langCheckbox label {
    font-weight: 500;
    line-height: 1.3;
}

.checkboxes {
    display: flex;
    flex-wrap: wrap;
    column-gap: 24px;
}

.langCheckbox div.checkboxes {
    margin-left: 24px;
/*    gap: 0.75em 24px;*/
    gap: 8px 16px;
}

.langCheckbox div.checkboxes div {
    margin-left: 0;
}

.filedset_group {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 24px;
    background-color: var(--cloud10);
    padding: 20px 32px 20px 32px;
    gap: 12px 2%;
}

.filedset_group .filedset_item {
    width: 49%;
}

.filedset_group .filedset_item .langCheckbox {
    margin: 0;
    padding: 0;
    background-color: transparent;
}

/*----------------
catDlList
------------------*/

.catDlList {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 24px 3%;
}

.catDlListItem {
    width: 582px;
    max-width: 48.5%;
    border: 1px solid;
    border-color: var(--cloud30);
/*    padding: 30px 1.8vw 30px;*/
    padding: 24px 24px 24px;
    background-color: #fff;
}

.pdf_size {
/*    font-size: 1.4rem;*/
    font-size: clamp(1.2rem, 1.25vw + 6px, 1.4rem);
    line-height: 1.2;
    white-space: nowrap;
    color: var(--cloud40);
    margin-top: 8px;
/*    padding-left: 24px;*/
    position: relative;
    color: var(--cloud40);
}

.pdf_size:before {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 14px;
    height: 17px;
    background-image: url("/assets/img/common/dl_pdf.svg");
    background-size: contain;
    background-position: center;
    margin-right: 6px;
/*
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
*/
}

.catDlListItemMain {
    display: flex;
    column-gap: 6.55%;
}

.catDlListItemMainImg {
/*
    width: 98px;
    max-width: 20.25%;
*/
    width: calc(100% * 98 / 534);
    width: 18.35%;
}

.catDlListItemMainImg img {
    width: 100%;
}

.catDlListItemMain h3 {
    width: calc(100% * 326 / 534);
    width: 61.05%;
    font-size: 1.8rem;
    line-height: 1.5;
    font-weight: 500;
    padding-bottom: 20px;
}

.catDlListItemMain h3 span {
    font-size: 1.8rem;
    font-weight: 500;
    padding-bottom: 20px;
}

.catDlListItemMain h3:hover {
    color: var(--blue40);
}

/*
.catDlListItemMain label.favorite_btn span {
    width: calc(100% * 40 / 534);
    width: 7.49%;
}
*/




.catDlListItemCont {
    margin-left: 24.5%;
    margin-top: -15px;
}

.catDlListItemCont p {
    font-size: 1.4rem;
}

.catDlListItemCont .btns {
    display: flex;
    column-gap: 15px;
    margin-top: 15px;
}

.catDlListItemCont .btns .dl_btn {
    width: 157px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-left: 8px;
    padding-right: 8px;
    column-gap: 8px;
    color: #fff;
    background-color: var(--hot30);
    border: 1px solid;
    border-color: var(--hot30);
    box-shadow: var(--shadow15-small);
}

.catDlListItemCont .btns .dl_btn span {
    color: #fff;
/*    font-size: 1.4rem;*/
    font-size: clamp(1.2rem, 1.25vw + 6px, 1.4rem);
    line-height: 1.3;
    font-weight: 700;
}

.dl_btn svg {
    color: #fff;
}

.dl_btn:hover svg,
.catDlListItem:hover .dl_btn svg {
    color: var(--hot30);
}



.dl_add_btn svg {
    color: var(--hot30);
}

.dl_add_btn:hover svg {
    color: #fff;
}

.catDlListItemCont .btns .dl_btn .ic img.hov,
.catDlListItemCont .btns .dl_add_btn .ic img.hov {
    display: none;
}

.catDlListItem:hover .btns .dl_btn .ic img {
    display: none;
}

.catDlListItem:hover .btns .dl_btn .ic img.hov {
    display: block;
}

.catDlListItemCont .btns .dl_add_btn {
    width: 220px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-left: 8px;
    padding-right: 8px;
    column-gap: 8px;
    color: var(--hot30);
    background-color: #fff;
    border: 1px solid;
    border-color: var(--hot30);
    box-shadow: var(--shadow15-small);
}

.catDlListItemCont .btns .dl_add_btn span {
    color: var(--hot30);
/*    font-size: 1.4rem;*/
    font-size: clamp(1.2rem, 1.25vw + 6px, 1.4rem);
    line-height: 1.3;
    font-weight: 700;
    text-align: left;
}

/*----------------
Favorite Button
------------------*/

label.favorite_btn {
    width: 40px;
    height: 40px;
    margin-left: auto;
}

label.favorite_btn input {
    display: none;
}

label.favorite_btn span {
    display: block;
    width: 40px;
    height: 40px;
    background-color: var(--cloud10);
    border-radius: 3px;
    margin-left: auto;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}

label.favorite_btn input ~ span.star_on {
    display: none;
    opacity: 0;
}

label.favorite_btn input:checked + span.star_off {
    display: none;
    opacity: 0;
}

label.favorite_btn input:checked ~ span.star_on {
    display: flex;
    opacity: 1;
    color: var(--accent40);
    background-color: rgba(0,20,201,0.1);
}

/*----------------
tableLineup
------------------*/

table.tableLineup {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
/*    table-layout: fixed;*/
    margin-top: 24px;
}

.tableLineup .proImg {
    display: block;
    transition: all 0.2s;
}

.tableLineup .proImg:hover {
    opacity: 0.8;
}

.tableLineup .proImg img {
    min-width: 160px;
    width: 160px;
    aspect-ratio: 16 / 9;
    object-fit: cover;
}

table.tableLineup th {
    padding: 10px 10px 10px 10px;
}

table.tableLineup td {
    padding: 20px 10px 20px 10px;
}

table.tableLineup th {
    background-color: var(--cloud10);
    font-weight: 500;
    text-align: left;
    border: 1px solid var(--cloud30);
}

table.tableLineup td {
    border-bottom: 1px solid var(--cloud30);
}

table.tableLineup td .dlbtn {
    min-width: 140px;
    width: 140px;
    margin: 0 20px;
}

table.tableLineup .proName {
    display: block;
    font-size: 1.8rem;
    font-weight: 700;
    margin-bottom: 5px;
    transition: all 0.3s;
}

table.tableLineup .proName:hover {
    cursor: pointer;
    color: var(--blue40);
}

table.tableLineup td .dlbtn {
    width: 120px;
    min-width: 120px;
    margin: 0 10px;
}

/*----------------
From Servo
------------------*/

.prodArticleColumnImg {
    margin-top: 32px;
/*    max-width: 788px!important;*/ /*NG*/
    width: auto!important;
    margin-inline: auto;
    box-sizing: border-box;
}

.prodArticleColumnImg img {
    display: block;
    width: 100%;
    aspect-ratio: auto!important;
}

.prodArticleColumnNote {
    margin-top: 12px;
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.5;
}

rodArticleColumnNoteWrap {
    margin-top: 32px;
    border:1px solid var(--cloud20);
    padding: 8px 48px;
}

.prodArticleColumnLabel {
    display: inline-block;
    padding: 8px;
    color: var(--accent30);
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 1;
    letter-spacing:0;
    border:1px solid var(--accent30);
}

.prodArticleColumnTitle {
    margin-left: 1rem;
    display: inline-block;
    color: #000;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing:0.05em;
}

.prodArticleColumnContent {
    padding: 24px 48px;
    background-color: var(--cloud10);
    border:1px solid var(--cloud20);
}

.prodArticleColumnContent p{
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing:0;
    color: #000;
}

.prodArticleColumnNoteWrap {
    margin-top: 3.2rem;
    border: 1px solid var(--cloud20);
    padding: 0.8rem 4.7rem;
}

.ServoTabBoxBottom {
    margin-top: 80px;
}

.prodArticleColumn{
    margin-top: 56px;
    padding-top: 12px!important;
    border-top: 1px solid;
    border-color: var(--cloud30);
    position: relative;
}

.prodArticleColumn:before{
    content: '';
    display: block;
    width: 273px;
    width: 22.75%;
    height: 3px;
    background-color: var(--blue20);
    position: absolute;
    top: -1.5px;
    left: 0;
}

.prodArticleColumn h3.feat_tit{
    margin-bottom: 8px!important;
}

.prodArticleColumn p{
    letter-spacing:0;
}

/*
.prodArticleColumnImg{
    margin-top: 32px;
    width: 792px;
    max-width: 100%;
    margin-inline:auto;
}
*/

.prodArticleColumnImg img{
  width: 100%;
/*
  aspect-ratio: 788/443;
  object-fit: contain;
*/
}

/*
.prodArticleColumnImg.prodArticleColumnImg_i3 img{

    aspect-ratio: 788/528;
}
*/

.prodArticleColumnImg.prodArticleColumnImg_i4{
    width: 582px;
    max-width: 100%;
}

/*
.prodArticleColumnImg.prodArticleColumnImg_i4 img{
    aspect-ratio: 582/270;
}

.prodArticleColumnImg.prodArticleColumnImg_i5 img,
.prodArticleColumnImg.prodArticleColumnImg_i6 img {
  aspect-ratio: 788/346;
}
*/

.prodArticleColumnImg.prodArticleColumnImg_i7,
.prodArticleColumnImg.prodArticleColumnImg_i8 {
    width: 448px;
    max-width: 100%;
}

/*
.prodArticleColumnImg.prodArticleColumnImg_i7 img,
.prodArticleColumnImg.prodArticleColumnImg_i8 img{
    aspect-ratio: 600/352;
}
*/

.prodArticleColumnImg.prodArticleColumnImg_i9,
.prodArticleColumnImg.prodArticleColumnImg_i10,
.prodArticleColumnImg.prodArticleColumnImg_i11,
.prodArticleColumnImg.prodArticleColumnImg_i12{
    max-width: 100%;
    width: 994px;
}

/*
.prodArticleColumnImg.prodArticleColumnImg_i9 img{
  aspect-ratio: 994/500;
}

.prodArticleColumnImg.prodArticleColumnImg_i10 img{
  aspect-ratio: 994/428;
}

.prodArticleColumnImg.prodArticleColumnImg_i11 img{
  aspect-ratio: 994/426;
}

.prodArticleColumnImg.prodArticleColumnImg_i12 img{
  aspect-ratio: 994/526;
}
*/

.ServoTabBoxBottom ul.robotdlListBtn li > a.act {
    border-bottom: 3px solid #000;
    border-top: none;
}

.ServoTabBoxBottom ul.robotdlListBtn li > a.act:after {
    content: none;
}

.ServoTabBox{
    margin-top: 56px;
}



/*Marge cate01.css_0820_(2)_START*/

/*temporary*/
.schoolCardList {
    gap: 0!important;
}

.ServoFormBlock th,
.ServoFormBlock td {
    padding: 8px 12px!important;
}






/*----------------
スクール
------------------*/

.dropdown {
    position: relative;
    width: 300px;
    max-width: 100%;
}

.dropdown::before {
  position: absolute;
  content: "";
  width: 1px;
  height: 100%;
  background: var(--cloud30);
  top: 0;
  right: 55px;
}

.dropdown::after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 10px;
  height: 10px;
  border: 0;
  border-top: solid 2px;
  border-right: solid 2px;
  border-color: var(--blue40);
  transform: rotate(135deg);
  position: absolute;
  top: 0;
  bottom: 0;
  right: 20px;
  margin: auto;
}

.dropdown select {
  background-color: #fff;
  border: 1px solid var(--cloud30);
  border-radius: 3px;
  padding: 16px;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.9px;
  cursor: pointer;
}

/*----------------
ロボットスクール
------------------*/

.solutionAreaContainer {
  display: flex;
  gap: 36px;
}

.solutionArea {
  width: 100%;
}

.colutionAreaBox {
  border: 1px solid var(--cloud20);
}

.colutionAreaBox.w600 {
    width: 600px;
    max-width: 100%;
}

.colutionAreaHeader {
  padding: 6px 48px;
  display: flex;
  align-items: center;
  border-bottom: 1px solid var(--cloud20);
}

.colutionAreaItem {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
}

.colutionAreaItem a:focus-visible {
  color: var(--cloud40);
}

.colutionAreaLink {
  color: var(--blue30);
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: 0.05rem;
  line-height: 1.8;
  text-decoration: underline !important;
}

.colutionAreaLabel {
  display: inline-block;
  font-size: 1.2rem;
  font-weight: 400;
  color: var(--accent30);
  line-height: 1;
  border: 1px solid var(--accent30);
  padding: 6px;
}

.colutionAreaTitle {
  margin-left: 10px;
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.8px;
}

.colutionAreaBody {
  background-color: #f1f1f1;
  padding: 16px 48px;
}

.solutionAreaBtn {
  margin: 56px auto 0;
  max-width: 578px;
  width: 100%;
}

.courseLinkButton {
  position: relative;
  display: block;
  background-color: var(--hot00);
  padding: 16px 0;
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 0.9px;
  box-shadow: var(--shadow30-mini);
  border-radius: 6px;
  text-align: center;
  transition: background-color 0.2s ease, box-shadow 0.2s ease;
}

.courseLinkButton::after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 10px;
  height: 10px;
  border: 0;
  border-top: solid 2px;
  border-right: solid 2px;
  border-color: var(--black00);
  transform: rotate(45deg);
  margin-left: 8px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 16px;
  margin: auto;
}

.courseLinkButton:hover,
.courseLinkButton:focus-visible {
  box-shadow: var(--shadow30-mid);
  background-color: rgba(246, 204, 52, 0.6);
}

.courseLinkLabel {
  display: inline-block;
  font-size: 1.8rem;
  font-weight: 500;
  color: var(--hot50);
  letter-spacing: 0.9px;
  border: 1px solid var(--hot40);
  padding: 2px 8px;
  margin-right: 8px;
  border-radius: 6px;
  background-color: var(--cloud10);
}

/*----------------
モーションコントロールスクール
------------------*/

ul.colutionAreaLists {
  display: flex;
  flex-wrap: wrap;
  padding: 1.2rem 3.2rem;
  box-shadow: var(--shadow15-small);
  background-color: var(--blue00);
  gap: 0 3.2rem;
}

ul.colutionAreaLists > li {
    box-sizing: border-box;
    flex: 0 0 calc((100% - (3.2rem * 2)) / 3);
}

ul.ancher_6column {
    gap 0 2.4rem;
    flex-wrap: nowrap;
}

ul.ancher_6column > li {
    flex: 0 0 calc((100% - (2.4rem * 5)) / 6);
}

.colutionAreaAncler a {
  position: relative;
  display: block;
  margin-left: 27px;
  padding: 4px 0;
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.5;
}

ul.ancher_6column .colutionAreaAncler a {
    white-space: nowrap;
}

.colutionAreaAncler a:hover,
.colutionAreaAncler a:focus-visible {
  color: var(--blue40);
  text-decoration: underline;
}

.colutionAreaAncler a::after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 10px;
  height: 10px;
  border: 0;
  border-top: solid 2px;
  border-right: solid 2px;
  border-color: var(--blue40);
  transform: rotate(135deg);
  position: absolute;
  top: 8px;
  left: -19px;
  margin: auto;
}

.colutionAreaAncler.item_auto {
    flex: initial;
    width: auto;
}

/*----------------
ロボットスクール
------------------*/

.scroll_table-tabWrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.colutionAreaAnnotation {
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0.8px;
    border: 1px solid var(--cloud30);
    padding: 20px 40px;
    margin-top: 16px;
}

.scroll_table-tab {
    min-width: 1200px;
}

.table-tab {
    display: none;
}

.robotCourseTable {
    display: table;
    width: 100%;
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: 0.05em;
    line-height: 1.6;
}

.robotCourseTableSmall {
    border: 1px solid var(--cloud30);
    border-collapse: collapse;
}

.robotCourseTableHeader {
    display: flex;
    justify-content: space-between;
    width: 1195px;
}

.robotCourseTableHeaderItem {
    cursor: pointer;
    position: relative;
    z-index: 1;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0.8px;
    text-align: center;
    min-width: 238px;
    border: 1px solid var(--cloud20);
    padding: 13px 0;
}

.robotCourseTableHeaderItem::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 2px;
    top: 0;
    left: 0;
}

.robotCourseTableHeaderItem--blue::before {
    background-color: var(--blue20);
}

.robotCourseTableHeaderItem--gray::before {
    background-color: var(--cloud30);
}

.robotCourseTableHeaderItem--green::before {
    background-color: var(--fine10);
}

.robotCourseTableHeaderItem--purple::before {
    background-color: var(--accent60);
}

.robotCourseTableHeaderItem--orange::before {
    background-color: var(--accent80);
}

.robotCourseTableHeaderItem::after {
    position: absolute;
    z-index: -1;
    content: "";
    width: 100%;
    height: 100%;
    background-image: url("/assets/img/school/tab-bg.png");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    top: 0;
    left: 0;
}

.robotCourseTableHeaderItem span {
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1.5;
}

.robotCourseTableHeaderItem--active.robotCourseTableHeaderItem::after {
    display: none;
}

.robotCourseTableHeaderItem--active.robotCourseTableHeaderItem {
    font-weight: 700;
    border-bottom: none;
}

.robotCourseTableRow {
    display: flex;
}

.robotCourseTableRow--header {
    font-weight: 700;
}

.robotCourseTableCell--bottom {
    border-bottom: 1px solid var(--cloud30);
}

.robotCourseTableCell--left {
    border-left: 1px solid var(--cloud30);
}

.robotCourseTableCell {
    padding: 8px 5px;
    font-size: 1.4rem;
    font-weight: 400;
    border-right: 1px solid var(--cloud30);
    border-top: 1px solid var(--cloud30);
}

.robotCourseTableCell a:focus-visible,
.robotCourseTableCell a:hover {
    color: var(--cloud40);
}

.robotCourseTableparking {
    width: 20px;
    margin-top: 7px;
}

.robotCourseTablePdf {
    width: 1.8rem;
    margin: 0 auto;
}

.vertical-align-baseline {
    vertical-align: baseline;
}

.vertical-align-top {
    vertical-align: top;
}

.w1046 {
  width: 1046px;
}

.w618 {
  width: 618px;
}

.w515 {
  width: 515px;
}

.w485 {
  width: 485px;
}

.w445 {
  width: 445px;
}

.w298 {
  min-width: 298px;
}

.w296 {
  width: 296px;
}

.w311 {
  width: 311px;
}

.w273 {
  width: 273px;
}

.w222 {
  width: 222px;
}

.w206 {
  width: 206px;
}

.w204 {
  width: 204px;
}

.w171 {
  width: 171px;
}

.w154 {
  width: 154px;
}

.w140 {
  width: 140px;
}

.w103 {
  width: 103px;
}

.w95 {
  width: 95px;
}

.w82 {
  width: 82px;
}

.w78 {
  width: 78px;
}

.w70 {
  width: 70px;
}

.w68 {
  width: 68px;
}

.w40 {
  width: 40px;
}

a.tableLink {
  position: relative;
  text-decoration: none !important;
  color: #000;
}

.tableLink::after {
  position: absolute;
  content: "";
  background: url("/assets/img/common/ic_info.png") no-repeat center center / cover;
  width: 20px;
  height: 20px;
  right: -23px;
  top: 55%;
  transform: translateY(-50%);
}

.robotCourseTableCell--blue {
  background-color: var(--blue20);
  border: 1px solid var(--cloud10);
}

.crs_skillup .robotCourseTableCell--blue {
    background-color: var(--accent70);
}

.crs_other .robotCourseTableCell--blue {
    background-color: var(--fine10);
}

.crs_onsite .robotCourseTableCell--blue {
    background-color: var(--accent60);
}

.crs_ondemand .robotCourseTableCell--blue {
    background-color: var(--accent80);
}






.robotCourseTableCell--gray {
  background-color: var(--cloud10);
}

.robotCourseTableCell--center {
  text-align: center;
}

.robotCourseTableCell {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
}

.robotCourseTableCell a {
  display: block;
  color: var(--blue30);
  font-size: 1.6rem;
  text-decoration: underline;
  text-align: center;
}

.robotCourseTableCell span {
  display: inline-block;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.5;
}

.robotCourseNoLink {
  color: var(--cloud40);
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}

.robotCourseTableNote {
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.5;
  display: flex;
  align-items: center;
  margin-top: 8px;
}

.robotCourseTableNote img {
  width: 20px;
}

/*----------------
展示会・イベント
------------------*/

.expoCardList {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 36px;
}

.expoCardItem {
  box-shadow: var(--shadow30-mini);
}

.expoCardItem a {
  height: 100%;
  display: flex;
  flex-direction: column;
  border: 1px solid var(--cloud20);
  transition: box-shadow 0.2s ease, border 0.2s ease;
}

.expoCardItem a:hover,
.expoCardItem a:focus-visible {
    box-shadow: var(--shadow30-mid);
    border: 1px solid var(--blue40);
    outline: 1px solid var(--blue40);
    outline-offset: 0;
}

.expoCardItem a:hover .expoCardItemTitle,
.expoCardItem a:focus-visible .expoCardItemTitle,
.expoCardItem a:hover .expoCardItemSub,
.expoCardItem a:focus-visible .expoCardItemSub,
.expoCardItem a:hover .expoCardItemInfo li,
.expoCardItem a:focus-visible .expoCardItemInfo li,
.expoCardItem a:hover .expoCardItemInfo li span,
.expoCardItem a:focus-visible .expoCardItemInfo li span {
  color: var(--blue40);
}

.expoCardItemImage img {
  width: 100%;
  height: auto;
  object-fit: cover;
  aspect-ratio: 376 / 212;
}

.expoCardItemTextInner {
  position: relative;
}

.expoCardItemTextInner::after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 10px;
  height: 10px;
  border: 0;
  border-top: solid 2px;
  border-right: solid 2px;
  border-color: var(--blue40);
  transform: rotate(45deg) translateY(-50%);
  position: absolute;
  top: 50%;
  right: 0;
}

.expoCardItemText {
  padding: 10px 25px 20px;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.expoCardItemTitle {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.9px;
  transition: color 0.3s ease;
}

.expoCardItemSub {
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.5;
  padding-bottom: 10px;
  transition: color 0.3s ease;
}

.expoCardItemInfo {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
  border-top: 1px solid var(--cloud20);
  margin-top: auto;
  padding-top: 10px;
  transition: color 0.3s ease;
}

/*----------------
展示会カレンダー
------------------*/

.exhibitionScheduleTable {
  width: 100%;
  border-collapse: collapse;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
}

.exhibitionScheduleTable th,
.exhibitionScheduleTable td {
  border: 1px solid var(--cloud30);
  padding: 9px 10px;
  text-align: left;
}

.exhibitionScheduleTable th {
  background-color: var(--cloud10);
  font-weight: 500;
}

.exhibitionScheduleTable td a {
  display: flex;
  align-items: center;
}

.exhibitionScheduleTable td a img {
  width: 24px;
}

.exhibitionScheduleTable a {
  color: var(--blue30);
  text-decoration: underline;
}

.bgc-cloud10 {
  background-color: var(--cloud10);
}

.bgc-cloud20 {
  background-color: var(--cloud20);
}

.bgc-cloud30 {
  background-color: var(--cloud30);
}

.bgc-cloud40 {
  background-color: var(--cloud40);
}


.tableHead18 {
  width: 18%;
}

.tableHead22 {
  width: 22%;
}

.tableCell13 {
  width: 13%;
}

.tableIcon18 {
  margin-left: 18px;
}

.textBtnMiniArrowWhite {
  position: relative;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.8px;
  padding: 14px 32px 14px 0;
  text-align: right;
  color: var(--blue40);
  border: 1px solid var(--blue40);
  border-radius: 6px;
  display: block;
  box-shadow: var(--shadow15-small);
  max-width: 295px;
  width: 100%;
  margin: 0 auto;
}

.textBtnMiniArrowWhite::after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 10px;
  height: 10px;
  border: 0;
  border-top: solid 2px;
  border-right: solid 2px;
  border-color: var(--blue40);
  transform: rotate(-135deg);
  margin-left: 8px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 20px;
  margin: auto;
}

.textBtnMiniArrowWhite:hover,
.textBtnMiniArrowWhite:focus-visible {
  box-shadow: var(--shadow30-mid);
  color: var(--blue40);
}

.textLink3 {
  position: relative;
  padding-left: 16px;
}

.textLink3::after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 10px;
  height: 10px;
  border-bottom-style: initial;
  border-left-style: initial;
  transform: rotate(-225deg);
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: 0;
  border-width: 2px 2px 0px 0px;
  border-image: initial;
  border-top: 2px solid;
  border-right: 2px solid;
  border-color: var(--blue40);
  margin: auto;
}

.textLink3:hover,
.textLink3:focus-visible {
  color: var(--cloud40);
  text-decoration: underline;
}

/*----------------
インバータ
------------------*/

.rangeList {
/*
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(3, 1fr);
    grid-column-gap: 40px;
    grid-row-gap: 0px;
    width: 100%;
*/
    
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 40px;
    row-gap: 16px;
    align-items: start;
    width: 100%;
}

.rangeItem {
    width: 100%;
    max-width: 525px;
    padding-bottom: 16px;
}

.rangeItem--1,
.rangeItem--2,
.rangeItem--3 {
    border-bottom: 1px solid var(--blue10);
}

.rangeItem--3,
.rangeItem--4,
.rangeItem--5 {
    margin-top: 16px;
}

@media screen and (min-width: 767px) {
    .rangeItem--3,
    .rangeItem--4,
    .rangeItem--5 {
        margin-top: 0;
    }
}

.rangeItem--1 {
    grid-area: 1 / 1 / 3 / 2;
}
.rangeItem--2 {
    grid-area: 1 / 2 / 2 / 3;
}
.rangeItem--3 {
    grid-area: 2 / 2 / 3 / 3;
}
.rangeItem--4 {
    grid-area: 3 / 1 / 4 / 2;
}
.rangeItem--5 {
    grid-area: 3 / 2 / 4 / 3;
}

.checkboxWrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 20px 35px;
}

.checkboxWrapper .checkbox {
  top: 3px;
}

.checkbox {
  appearance: none;
  position: relative;
  width: 18px;
  height: 18px;
  border: 1px solid;
  border-color: var(--cloud40);
  background-color: #fff;
  border-radius: 2px;
  cursor: pointer;
  box-sizing: border-box;
  margin-top: 2px;
}

.checkbox:checked {
  border-color: var(--blue30);
  background-color: var(--blue30);
}

.checkbox:checked::after {
  content: "";
  position: absolute;
  top: 4px!important;
  left: 3px;
  width: 10px;
  height: 5px;
/*
  border-bottom: 3px solid #fff!important;
  border-left: 3px solid #fff!important;
*/
  transform: rotate(-45deg);
}

.checkboxWrapper .checkboxLabel {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.8px;
  margin-left: 4px;
  cursor: pointer;
}

.printModal .checkbox {
  position: absolute;
  margin-top: 4px;
}

.printModal .checkboxLabel {
  padding-left: 24px;
}

.titFs24 {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.12rem;
  transition: color 0.3s ease;
}

.tab_main--inverter .tit {
  padding: 16px 30px;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.05em;
  transition: color 0.3s ease;
}

.tab_main--inverter .tit:hover,
.tab_main--inverter .tit:focus-visible {
  color: var(--blue40);
}

.tab_main--inverter .lineupItemContTextWrap {
  padding: 0 16px 20px;
}

.tab_main .lineupItemWrap .bottom {
  border-top: 1px solid var(--cloud20);
  padding-top: 12px;
  margin-top: 12px;
  transition: all 0.3s ease-out;
}

.tab_main .lineupItemWrap .bottom p {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.9px;
}

.tab_main .lineupItemWrap .bottomWrap {
  position: relative;
  margin-top: 16px;
  display: flex;
  gap: 12px;
  align-items: center;
}

.tab_main .lineupItemWrap .bottomWrap::before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 10px;
  height: 10px;
  border: 0;
  border-top: solid 2px;
  border-right: solid 2px;
  border-color: var(--blue40);
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
}

.tab_main .lineupItemWrap .bottomWrap img {
  max-width: 119px;
  width: 100%;
}

.tab_main .lineupItemWrap .bottomWrap span {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.25;
  transition: color 0.3s ease;
}

.tab_main .lineupItemWrap a:hover span,
.tab_main .lineupItemWrap a:focus-visible span,
.tab_main .lineupItemWrap a:hover .titFs24,
.tab_main .lineupItemWrap a:focus-visible .titFs24 {
  color: var(--blue40);
}

.link_btn01_down {
  display: block;
  padding: 11px 32px 11px 32px;
  background-color: var(--blue40);
  border: 1px solid var(--blue40);
  border-radius: 6px;
  color: #fff;
  font-weight: 500;
  text-align: center;
  width: fit-content;
  min-width: 256px;
  box-shadow: var(--shadow15-small);
  position: relative;
  overflow: hidden;
}

.link_btn01_down span {
  color: #fff;
  text-align: center;
  font-weight: 500;
  position: relative;
}

.link_btn01_down span::after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 12px;
  height: 12px;
  border: 0;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  transform: rotate(135deg);
  margin-left: 14px;
  margin-top: -8px;
}

.link_btn01_down.center {
  margin: 0 auto;
}

.link_btn01_down:hover,
.link_btn01_down:focus-visible {
  background-color: #fff;
  box-shadow: var(--shadow30-mid);
}

.link_btn01_down:hover span,
.link_btn01_down:focus-visible span {
  color: var(--blue40);
}

.link_btn01_down:hover span::after,
.link_btn01_down:focus-visible span::after {
  border-top: solid 2px var(--blue40);
  border-right: solid 2px var(--blue40);
}

.link_btn01_down::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background: #fff;
  z-index: 0;
  transition: all 0.6s ease-out;
}

.link_btn01_down:hover::before {
  width: 100%;
}

.textBtnClose {
  cursor: pointer;
  display: flex;
  align-items: center;
  padding: 11px 32px 11px 45px;
  background-color: var(--blue40);
  border: 1px solid var(--blue40);
  border-radius: 6px;
  color: #fff;
  font-weight: 500;
  margin: 0 auto;
  width: fit-content;
  min-width: 200px;
  box-shadow: var(--shadow15-small);
  position: relative;
}

.textBtnClose::after {
  position: absolute;
  content: "";
  background: url("/assets/img/common/ic_add_circle.svg") no-repeat center center / cover;
  width: 24px;
  height: 24px;
  top: 50%;
  transform: translateY(-50%);
  right: 16px;
  transition: all 0.3s ease;
}

.textBtnClose:hover,
.textBtnClose:focus-visible {
    background-color: #fff;
    color: var(--blue40);
    box-shadow: var(--shadow30-mid);
}

.textBtnClose:hover::after,
.textBtnClose:focus-visible::after {
  background: url("/assets/img/common/ic_add_circle_blue.svg") no-repeat center center / cover;
}

/* もっと見る/閉じるボタンの開いた状態のスタイル */
.textBtnClose.is-open {
  background-color: #fff;
  color: var(--blue40);
  box-shadow: var(--shadow30-mid);
}

.textBtnClose.is-open::after {
  background: url("/assets/img/common/ic_close_circle.svg") no-repeat center center / cover;
  transform: translateY(-50%);
}

.textBtnClose.is-open:hover,
.textBtnClose.is-open:focus-visible {
  background-color: #fff;
  color: var(--blue40);
  box-shadow: var(--shadow30-mid);
}

.textBtnClose.is-open:hover::after,
.textBtnClose.is-open:focus-visible::after {
  background: url("/assets/img/common/ic_close_circle.svg") no-repeat center center / cover;
}

/* 検索フィルターボックスの初期状態 */
.searchFilterBox {
  display: none;
}

/* ボタンがアクティブな場合のスタイル */
.link_btn01_down.active {
  background-color: #fff;
  color: var(--blue40);
}

.link_btn01_down.active span {
  color: var(--blue40);
}

.link_btn01_down.active span::after {
  border-top: solid 2px var(--blue40);
  border-right: solid 2px var(--blue40);
  transform: rotate(-45deg);
  margin-top: 0;
}

/*----------------
仕様表
------------------*/

.inverterSpecTable table {
  width: 100%;
  font-weight: 500;
}

.inverterSpecTable table,
.inverterSpecTable td,
.inverterSpecTable th {
  border: 1px solid var(--cloud30);
  border-collapse: collapse;
}
.inverterSpecTable td,
.inverterSpecTable th {
  padding: 10px;
}

.inverterSpecTable li {
  position: relative;
  padding-left: 16px;
  font-weight: 500;
}

.inverterSpecTable li::before {
  position: absolute;
  content: "・";
  top: 0px;
  left: 0;
}

.w381 {
  width: 381px;
}

.w230 {
  width: 230px;
}

.w170 {
  width: 170px;
}

.annotationNote {
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.5;
}

.annotationNote a {
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.5;
  text-decoration: underline;
}

.scroll_table .peripheralEquipmentList {
  min-width: 1200px;
  border-collapse: collapse;
}

.peripheralEquipmentList {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  z-index: 0;
  grid-template-rows: repeat(6, 1fr);
  grid-column-gap: 36px;
}

.peripheralEquipmentList::before {
  position: absolute;
  z-index: -1;
  content: "";
  width: 1px;
  height: 87%;
  background-color: #000;
  top: 5%;
  left: 51.5%;
  transform: translateX(-50%);
}

.peripheralEquipmentList::after {
  position: absolute;
  z-index: -1;
  content: "";
  width: 100%;
  height: 1px;
  background-color: #000;
  top: 43%;
  left: 0;
}

.peripheralEquipmentItem1 {
  grid-area: 1 / 2 / 2 / 3;
  max-width: 102px;
  margin: 0 auto;
}
.peripheralEquipmentItem2 {
  grid-area: 2 / 2 / 3 / 3;
}
.peripheralEquipmentItem3 {
  grid-area: 3 / 1 / 4 / 2;
}
.peripheralEquipmentItem4 {
  grid-area: 3 / 2 / 5 / 3;
  max-width: 118px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  flex-direction: column;
  margin-left: 145px;
  margin-top: -20px;
}
.peripheralEquipmentItem5 {
  grid-area: 3 / 3 / 4 / 4;
  padding-bottom: 15px;
}
.peripheralEquipmentItem6 {
  grid-area: 4 / 3 / 5 / 4;
}
.peripheralEquipmentItem7 {
  grid-area: 5 / 2 / 6 / 3;
}
.peripheralEquipmentItem8 {
  grid-area: 6 / 2 / 7 / 3;
  max-width: 165px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  flex-direction: column;
}
.peripheralEquipmentItem9 {
  grid-area: 6 / 3 / 7 / 4;
}

.peripheralEquipmentContents {
  border: 1px solid var(--cloud20);
  box-shadow: var(--shadow30-mini);
  margin-top: 8px;
  min-height: 115px;
  background-color: #fff;
}

.peripheralEquipmentContents a {
  display: flex;
  align-items: center;
  gap: 3.6rem;
  max-width: 376px;
  min-height: 115px;
  margin: auto;
}

.peripheralEquipmentContents a:hover,
.peripheralEquipmentContents a:focus-visible {
  box-shadow: var(--shadow30-mid);
}

.peripheralEquipmentContents a:hover li,
.peripheralEquipmentContents a:focus-visible li {
  color: var(--blue40);
}

.peripheralEquipmentContents img {
  max-width: 170px;
  width: 100%;
}

.peripheralEquipmentContents ul {
  width: fit-content;
  margin: 0 auto;
  padding: 0 1rem;
}

.peripheralEquipmentContents li {
  position: relative;
  padding-left: 14px;
  transition: color 0.3s ease;
}

.peripheralEquipmentContents li::before {
  position: absolute;
  content: "・";
  top: 0;
  left: 0;
}

.prodNavi .prodNaviState .prod_name a {
  font-size: 1.4rem;
  color: var(--blue30);
  text-decoration: underline;
}

.prodNavi .prodNaviState .prod_name a:hover,
.prodNavi .prodNaviState .prod_name a:focus-visible {
  color: var(--cloud40);
}

/*----------------
検索フォーム
------------------*/

.searchForm {
  display: flex;
  border: 1px solid var(--cloud30);
  border-radius: 5px;
  max-width: 638px;
  overflow: hidden;
}

.searchFormInput {
  flex: 1;
  padding: 26px 20px;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.9px;
  border: none;
  outline: none;
}

.searchFormButton {
  background-color: var(--accent20);
  color: #fff;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 1.2px;
  padding: 24px 28px;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 152px;
}

.searchFormButton img {
  width: 24px;
  margin-left: 10px;
}

.scroll_areaInverter {
  overflow-x: auto;
}

.scroll_area_inverter {
    min-width: 1000px;
}

.prodNaviInverter .prodNavi .prodNaviLinks {
  width: 100%;
  padding: 18px;
  background-color: var(--cloud10);
}

.prodNaviInverter .prodNavi .prodNaviLinks ul {
  margin: 0 auto;
  width: fit-content;
}

.prodNaviInverter .prodNavi .prodNaviLinks ul li {
  width: 210px;
}

.h2-flex {
  display: flex;
  align-items: center;
}

.h2-flex.baseline {
  align-items: baseline;
  justify-content: space-between;
}

.h2-flex.baseline h2:before {
  margin-top: 3px;
}

.h2-flex.gap16 {
  gap: 16px;
}

.h2-flex.gap16 .link_btn01 {
  min-width: 164px;
}

.prodNaviLinksLists {
  width: 47%;
}

.prodNaviLinksLists ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 10px;
}

.prodNaviLinksLists li {
  position: relative;
  font-weight: 500;
}

.prodNaviLinksLists li::before {
  position: absolute;
  content: "・";
  top: 0;
  left: -16px;
}

.prodNaviWrap.prodNaviWrap_Σ-X .prod_name .prodNaviDetail {
  color: #000;
  display: inline;
  margin-left: 7px;
}

/*Marge cate01.css_0820_(2)_END*/


span.eventEnd {
    display: inline-block;
    vertical-align: middle;
    font-size: 2.4rem;
    font-weight: 500;
    line-height: 1.2;
    color: var(--hot40);
    border-radius: 4px;
    border: 4px solid var(--hot40);
    background: var(--cloud10);
    padding: 3px 10px;
    margin: 0 0 0 12px;
}

.eventAreaItemTit {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 32px;
}

.eventAreaItemTit h2 {
    margin: 0!important;
}

.schoolAreaWrap {
    padding-top: 73px;
}

.onlineExpoCardItem a:hover, .onlineExpoCardItem a:focus {
    outline: 1px solid var(--blue40);
    outline-offset: 0;
}

.facilityCardItem a:hover,
.facilityCardItem a:focus {
    outline: 1px solid var(--blue40);
    outline-offset: 0;
}

/*---------------------
exh_event.cssに移行_start
-----------------------*/

.facilityCardItemText {
    padding: 20px 20px 20px!important;
}

.facilityCardItemDescription {
    margin-top: 8px!important;
    padding: 8px 0!important;
}

.ic_feature01Wrap {
    gap: 8px!important;
    margin-top: 8px!important;
}

.facilityCardItemTag {
    margin-top: 8px!important;
}

.ic_feature01 {
    padding: 4px 8px!important;
}

.exhibitionReportItem .textBtn18{
    height: 64px;
    padding: 0 30px 0 30px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.exhibitionReportItemTitle {
    display: block;
    transition: all 0.3s ease;
}

.exhibitionReportItemTitle:hover {
    color: var(--blue40);
}

.exhibitionReportItemImage {
    display: block;
    overflow: hidden;
    transition: transform 0.6s ease;
}

.exhibitionReportItemImage img {
    transition: transform 0.6s ease;
}

.exhibitionReportItemImage:hover img,
.exhibitionReportItemImage:focus-visible img {
    transform: scale(1.2);
}

.schoolCard .schoolCardImage {
    display: block;
    overflow: hidden;
}

.schoolCard .schoolCardImage img {
    aspect-ratio: 376 / 212;
    width: 100%;
    height: auto;
    object-fit: cover;
    transition: transform 0.6s ease;
}

.schoolCard .schoolCardImage:hover img {
    transform: scale(1.2);
}

.schoolCard .schoolCardTitle {
    font-size: 2.3rem;
    font-weight: 700;
    letter-spacing: 1.2px;
    line-height: 1.2;
    margin-top: 20px;
}

.schoolCard .schoolCardTitle a {
    display: block;
    font-size: 2.3rem;
    font-weight: 700;
    letter-spacing: 1.2px;
    line-height: 1.2;
    transition: all 0.3s ease;
}

.schoolCard .schoolCardTitle a:hover {
    color: var(--blue40);
}

.facilityCardItem a:hover p,
.facilityCardItem a:hover .facilityCardItemTag,
.facilityCardItem a:hover .ic_feature01 {
    color: var(--blue40);
}

.locationCardLink:hover p,
.locationCardLink--tab:hover p {
    color: var(--blue40);
}

.eventAreaWrap {
    padding: 0!important;
    margin-top: 56px;
}

.exhibitionReportItemTitle {
    margin-top: 12px!important;
}

.exhibitionReportItemDescription {
    margin-top: 16px!important;
}

.onlineExpoCardItemLabel {
    display: block;
    width: fit-content;
}

.productShowcaseArea {
    gap: 56px!important;
}

.onlineExpoCardList {
    column-gap: 32px;
}

.onlineExpoCardItemText {
    padding: 16px 18px 16px 32px;
}

.onlineExpoCardItemDate {
    letter-spacing: 0.01em;
}

/*---------------------
exh_event.cssに移行_end
-----------------------*/


/*---------------------
school.cssに移行_start
-----------------------*/

.schoolAreaWrap {
    margin-top: 56px;
    padding-top: 0!important;
}

/*---------------------
school.cssに移行_end
-----------------------*/

.mgn_x01 {
    margin-top: 56px;
}


/*---------------------
solution.cssに移行_start
-----------------------*/

.labelingSolutionBox {
    margin-top: 56px!important;
}

/*---------------------
solution.cssに移行_end
-----------------------*






























/*Marge sa_cate.css_0907_START*/

/* サーボ　バナー2列（Rectangle 118） */
/*
.productAreaWrap2column{
    padding-top: 2.4rem;
    padding-bottom: 1.6rem;
    background-color: var(--cloud10);
    width: 100vw;
    margin: 0 calc(50% - 50vw);
}

.productAreaWrap2column .inner{
    padding-left: 2.2rem;
    padding-right: 2.2rem;
}
*/

.special_fea.productCardList {
    margin-top: 0;
    flex-wrap: nowrap;
}

.productCardList .productCardItem {
    max-width: 58.2rem;
    width: 100%;
    height: auto;
    max-height: inherit;
/*    margin: 0 auto 24px;*/
    margin: 0 auto 0;
}

.productCardList li a {
    width: 100%;
    height: 100%;
    border: 1px solid var(--cloud20);
    display: flex;
    box-shadow: var(--shadow30-small);
}

.productCardCont {
    width: 53.5%;
    padding-left: clamp(12px, 1.6vw, 32px);
    padding-right: 2.5rem;
    background-color: #fff;
}

.productCardCont p {
    font-size: 1.4rem;
    color: var(--cloud50);
    line-height: 1.5;
    font-weight: 500;
}

.productCardCont h3 {
    font-size: 1.8rem;
    color: var(--cloud50);
    line-height: 1.5;
    font-weight: 700;
    letter-spacing: 0.01em;
}

.productCardCont .productCardSub {
    font-size: 1.4rem;
    color: var(--cloud40);
    line-height: 1.5;
    font-weight: 500;
    letter-spacing: 0.05em;
}

/* サーボ　ラインアップ */
.lineupItemCont_text-red{
    color: var(--hot50);
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0.05em;
}

.lineupItem:hover .lineupItemCont_text-red,
.lineupItem:hover .lineupItemContHead .tit span{
    color: var(--blue40);
    transition: all 0.3s ease-out;
}

.lineupWrap.lineupWrap_2column .lineupItem {
    width: 58.2rem;
    max-width: 48.5%;
}

.lineupItemCont.lineupItemCont_2column {
    width: 58.2rem;
    max-width: 100%;
    padding: 3rem 3rem 3rem 3rem;
    justify-content: flex-start;
}

.lineupItemCont.lineupItemCont_2column .lineupItemImg{
    width: 100%;
    max-width: 37.6rem;
    margin-inline: auto;
    margin-top: -3rem;
}

.lineupItemCont.lineupItemCont_2column .lineupItemImg img{
    width: 100%;
}

.lineupWrap.lineupWrap_2column .lineupItemCont span{
display: inline-block;
}

.lineupWrap_2column ul.col03 li{
/*    max-width: 35.1rem;*/
    width: 100%;
}

.lineupWrap_2column ul.col03 li a{
    padding: 1.9rem 1.5rem 1.9rem 1.5rem;
}

.lineupWrap_2column ul.col03 li a span{
    display: block;
}

/* サーボ　製品を仕様から探す */
.contentBg-gray {
    background-color: var(--cloud10);
    width: var(--vw, 100%);
    margin-left: calc(50% - (var(--vw, 100%) / 2));
    margin-right: calc(50% - (var(--vw, 100%) / 2));
/*
    width: 100vw;
    margin: 0 calc(50% - 50vw);
*/
}

.contentBg-gray .inner{
    padding-left: 1.2rem;
    padding-right: 1.2rem;
}

.productBtn{
    width: 48.5%;
    max-width: 58.2rem;
}

.productBtn a{
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    padding: 1.2rem 1.7rem 1.2rem 0;
    background-color: #fff;
    border: 1px solid var(--cloud20);
    box-shadow: var(--shadow30-mini);
    position: relative;
    transition: all 0.3s ease;
}

.productBtn a:hover{
    box-shadow: var(--shadow30-mid);
    border: 1px solid var(--blue40);
    outline: 1px solid var(--blue40);
    outline-offset: 0;
}

.productBtn a:after {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 10px;
    height: 10px;
    border: 0;
    border-top: solid 2px;
    border-right: solid 2px;
    border-color: var(--blue40);
    transform: rotate(45deg);
    margin-left: 8px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 20px;
    margin: auto;
}

.productBtn a img{
    width: 32%;
    max-width: 17rem;
    aspect-ratio: 85/48;
    object-fit: contain;
}

.productBtnText {
    font-size: 2.4rem;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: 0.05em;
    transition: all 0.6s ease;
}

.productBtn a:hover .productBtnText{
    color: var(--blue40);
}

/* サーボ　関連情報 */
.relatedLinksItem{
    height: 100%;
}

.relatedLinksItem .ic.ic_mechatrocloud{
    width: 100%;
    max-width: 37.6rem;
}

/* product3-2 */
.lineupItem.product3-2 {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 4;
    gap: 0;
    max-width: 27.3rem;
    width: 100%;
    padding: 1.2rem 2.5rem 2.5rem;
    border: 1px solid var(--cloud20);
    background-color: #fff;
    text-decoration: none;
    transition: all 0.2s ease;
    margin-top: 0;
    margin-inline: auto;
}
  
.lineupItem.product3-2:hover{
    box-shadow: var(--shadow30-mid);
}
  
.product3-2Image{
    max-width: 27.3rem;
    width: 100%;
    transform: scale(1.235);
}
  
.product3-2Image img{
    width: 100%;
    aspect-ratio: 273/154;
    object-fit: contain;
}

.product3-2Model {
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--cloud50);
    line-height: 1.5;
    letter-spacing: 0.05em;
    margin-top: 1.6rem;
    text-align: left;
    position: relative;
}

.product3-2Model::after {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 10px;
    height: 10px;
    border: 0;
    border-top: solid 2px;
    border-right: solid 2px;
    border-color: var(--blue40);
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
}
  
.product3-2Tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
	padding: 0 16px 12px;
}

.product3-2Tag {
    display: inline-block;
    font-size: 2rem;
    font-weight: 700;
    color: var(--accent50);
    background-color: var(--accent10);
    line-height: 1;
    letter-spacing: 0.05em;
    border: 1px solid var(--accent50);
    border-radius: 0.8rem;
    padding: 0.65rem;
    max-height: 3.5rem;
}
  
.produbt3-2Text{
    font-size: 1.6rem;
    font-weight:500;
    color: var(--cloud50);
    line-height: 1.5;
    letter-spacing: 0.05em;
    text-align: left;
    margin-top: 0.7rem;
}
  
.product3-2SpecList {
    font-size: 1.6rem;
    font-weight: 500;
    color: var(--cloud50);
    line-height: 1.5;
    letter-spacing: 0.05em;
    margin-top: 0.6rem;
    padding-top: 1.3rem;
    border-top: 1px solid var(--cloud20);
    text-align: left;
}
  
.lineupItem:hover .product3-2SpecList li{
    color: var(--blue40);
}

/* サーボ 製品ラインナップ：サーボパックモデル一覧 */
.productModelBtn {
    width: 100%;
    max-width: 376px;
    border-top: 3px solid var(--cloud30);
    border-bottom: 3px solid var(--cloud30);
    padding-bottom: 12px;
}

.productModelBtnImage{
    width: 100%;
    max-width: 37.6rem;
}
  
.productModelBtnImage img {
    width: 100%;
    aspect-ratio: 376/212;
    object-fit: cover;
}
  
.productModelBtnTitle {
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--cloud50);
    line-height: 1.5;
    letter-spacing: 0.05em;
    text-align: left;
}
  
.productModelBtnList {
    list-style: none;
    padding: 0;
    margin-top: 0.8rem;
}

.productModelBtnList li:not(:first-child) {
    margin-top: 0.8rem;
}
  
.productModelBtnLink {
    width: 100%;
    max-width: 37.6rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 14px 32px 14px 20px;
    background-color: #fff;
    border: 1px solid var(--cloud20);
    color: var(--cloud50);
    font-weight: 500;
    box-shadow: var(--shadow30-mini);
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease-out;
    text-align: left;
}

.productModelBtnLink::after {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 10px;
    height: 10px;
    border: 0;
    border-top: solid 2px;
    border-right: solid 2px;
    border-color: var(--blue40);
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    bottom: 0;
    right: 18px;
    margin: auto;
    font-size: 1.8rem;
    font-weight: 500;
}

.productModelBtnLink:hover {
    color: var(--blue40);
    box-shadow: var(--shadow30-mid);
    border: 1px solid var(--blue40);
    outline: 1px solid var(--blue40);
    outline-offset: 0;
}

.productModelBtnRange {
    font-size: 1.6rem;
    font-weight: 500;
    font-weight: 400;
    color: var(--cloud50);
    line-height: 1.5;
    letter-spacing: 0;
    margin-top: 2.4rem;
    text-align: left;
}

.prodArticleColumnImg img {
    margin: 0 auto;
}

/*Marge sa_cate.css_0907_END*/













/*---------------------
cate-subset.css更新_START
-----------------------*/

ul.sol li > a:hover,
ul.sol li > a:focus-visible {
    box-shadow: var(--shadow30-mid);
    border: 1px solid var(--blue40);
    outline: 1px solid var(--blue40);
    outline-offset: 0;
}

.supportList.splistNew  {
    padding-top: 1.6rem!important;
}

ul.sol li .sol_text.sierCard {
    padding: 16px 20px 16px 20px!important;
}

.cardTtl {
    padding: 1.2rem 0!important;
}

ul.sol li > a:hover p,
ul.sol li > a:hover .cardTtl,
ul.sol li > a:hover div,
ul.sol li > a:hover ul li,
ul.sol li > a:hover span {
    color: var(--blue40)!important;
}

.btnSearch span {
    letter-spacing: 0.35em!important;
}

ul.robotdlListBtn.featureListBtn {
    border-bottom: none;
}

.barscroll {
    padding-bottom: 0!important;
}

ul.robotdlListBtn {
    padding-bottom: 0!important;
}

.popUpBoxCont {
    height: auto!important;
    bottom: auto!important;
    top: 20%!important;
}

.faqRatingBox {
    padding: 24px 24px!important;
}

.networkTable td {
    vertical-align: top;
}

.networkTable td .networkTableAddress {
    align-items: flex-start;
}

.upperTtl {
    display: inline-block;
    margin-bottom: 5px;
}

.northAmericaTable.saleListTbl tr > td.saleList {
    padding-right: 1rem!important;
}

a.formatTxt:hover {
    color: var(--blue40);
}

.replaceBtn::after {
    top: 0!important;
}

.newsDetail {
    margin-top: 56px!important;
}

.newsDetail .openLink:hover {
    color: var(--blue40);
}

.accordionBody {
    padding: 24px 24px!important;
}

.searchResultBold {
    margin-top: 16px;
}

.fileTypeTxt {
    white-space: normal;
}

.networkMap {
    padding-top: 40px;
}

.networkMap .networkLastUpdateTxtBox {
    position: absolute;
    top: 0;
    right: 0;
}


/*---------------------
cate-subset.css更新_END
-----------------------*/


/*---------------------
inverter.cssに移行_start
-----------------------*/

.lineupItemImgFlex .lineupItemImg img {
    width: 100%;
    aspect-ratio: 94 / 53;
    object-fit: cover;
}

.inverterSpecTable td {
    font-weight: 400;
}

.inverterSpecTable td.prodArticleColumnImgTitle {
    font-weight: 500;
}

.inverterSpecTable li {
    font-weight: 400!important;
}


.prodNaviLinksLists li{
    font-weight: 400!important;
}

/*
.acInverterWrap {
    padding-top: 12px;
}
*/

.sideSearchInverter .checkbox {
    width: 16px;
    height: 16px;
    border-color: var(--cloud30)!important;
}

.sideSearchInverter .checkbox:checked::after {
    border-bottom: 2px solid #fff!important;
    border-left: 2px solid #fff!important;
    width: 9px!important;
}



@media screen and (min-width:768px) {
    .h2-flex.baseline.pc {
        display: flex!important;
        align-items: flex-end!important;
        margin-bottom: 16px;
    }
    .h2-flex.baseline.pc h2 {
        margin-bottom: 0!important;
    }
    .h2-flex.gap16 {
        margin-bottom: 0!important;
    }
}




/* /product/inverter.html指定箇所開閉アコーディオン_01 */
.tab_main_more {
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    transition: max-height .35s ease, opacity .25s ease;
}

/* 開：クラス付与でスライド展開 */
.tab_main_more.is-open {
    max-height: 1000px; /* 中身より十分大きければOK。必要に応じて調整 */
    max-height: max-content;
    opacity: 1;
    margin-top: 56px;
}

@media (prefers-reduced-motion: reduce) {
    .tab_main_more { transition: none; }
}


/* /product/inverter.html指定箇所開閉アコーディオン_02 */
.btnMore {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 11px 32px 11px 32px;
    background-color: var(--blue40);
    border: 1px solid var(--blue40);
    border-radius: 6px;
    color: #fff;
    font-weight: 500;
    width: fit-content;
    min-width: 200px;
    box-shadow: var(--shadow15-small);
    position: relative;
    margin: 56px auto 56px;
    
    background-image: linear-gradient(90deg, #fff 0 0);
    background-repeat: no-repeat;
    background-size: 0% 100%;
    background-position: left top;
    transition: background-size .4s ease, color .3s ease;
}

.btnMore::after {
    position: absolute;
    content: "";
    background: url("/assets/img/common/ic_add_circle.svg") no-repeat center center / cover;
    width: 24px;
    height: 24px;
    top: 50%;
    transform: translateY(-50%);
    right: 16px;
    transition: all 0.4s ease;
}

.btnMore:hover,
.btnMore:focus-visible {
/*  background-color: #fff;*/
    color: var(--blue40);
    box-shadow: var(--shadow30-mid);
    background-size: 100% 100%;
    color: var(--blue40);
}

.btnMore:hover::after,
.btnMore:focus-visible::after {
    background: url("/assets/img/common/ic_add_circle_blue.svg") no-repeat center center / cover;
}

/* もっと見る/閉じるボタンの開いた状態のスタイル */
.btnMore.is-open {
    background-color: #fff;
    color: var(--blue40);
    box-shadow: var(--shadow30-mid);
}

.btnMore.is-open::after {
    background: url("/assets/img/common/ic_close_circle.svg") no-repeat center center / cover;
    transform: translateY(-50%);
}

.btnMore.is-open:hover,
.btnMore.is-open:focus-visible {
    background-color: #fff;
    color: var(--blue40);
    box-shadow: var(--shadow30-mid);
}

.btnMore.is-open:hover::after,
.btnMore.is-open:focus-visible::after {
    background: url("/assets/img/common/ic_close_circle.svg") no-repeat center center / cover;
}













/*---------------------
inverter.cssに移行_end
-----------------------*/



/*----------------------------
printModal(inverter.css)_start
------------------------------*/

.printModalContentWrap {
    position: relative;
    padding: 72px 40px 79px;
    background: #fff;
    max-width: 1200px;
    min-height: 700px;
    margin: 340px auto 200px;
    width: 90%;
    overflow-y: scroll;
}

.printModalContentWrap .filterButtonArea {
    position: absolute;
    right: 40px;
    top: 40px;
}


.printModalWrap {
    background-color: #fff;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    overflow-y: auto; /*縦*/
}


.printModal {
    position: fixed!important;
    inset: 0;
    display: flex!important;
    flex-direction: column;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 101;
    overflow-y: auto;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 240ms ease, visibility 0s linear 240ms; /* フェード用 */
}

/* 表示時（フェードイン） */
.printModal.active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition: opacity 240ms ease;
}

.printModalContentWrap {
    height: 70vh!important;
    min-height: auto!important;
    width: 100%!important;
    margin: auto!important;
    position: absolute!important;
    left: 0!important;
    right: 0!important;
    top: 25%!important;
}

.printModalContentWrap .filterButtonArea {
    margin: 0!important;
    top: 10px!important;
    right: 30px!important;
}

.printFlexHead {
    width: 21%!important;
}

.printModalContent .checkbox:checked::after {
    left: 3px!important;
    border-bottom: 3px solid #fff!important;
    border-left: 3px solid #fff!important;
}
















.printModalContent {
    width: 995px;
    max-width: 100%!important;
    margin: 0 auto;
}

.printModal .checkboxLabel {
  padding-left: 24px;
  font-size: 1.4rem;
  line-height: 1.5;
  cursor: pointer;
    display: inline-block;
}

.printFlex {
  display: flex;
  border-top: 1px solid var(--cloud30);
  border-left: 1px solid var(--cloud30);
  border-right: 1px solid var(--cloud30);
}

.printFlexBottom {
  border-bottom: 1px solid var(--cloud30);
}

.printFlexHead {
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: 0.8px;
  padding: 15px 12px;
  background-color: var(--cloud10);
  border-right: 1px solid var(--cloud30);
  width: 206px;
  flex-shrink: 0;
  font-weight: 600;
}

.printFlexHead label {
  display: flex;
  align-items: baseline;
}

.printModal .printFlexHead .checkbox {
  margin-top: 2px;
}

.printFlexBody {
  padding: 15px 12px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}

.printFlexBodyWrap {
  padding: 15px 12px;
  display: flex;
  flex-direction: column;
  gap: 8px 0;
}

.printFlexBodyWrapper4 {
  display: flex;
  flex-direction: column;
  padding: 15px 12px;
  gap: 15px;
}

.printFlexBodyWrap4 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 15px 0;
}

.printFlexBodyFlex {
  display: grid;
  gap: 8px 0;
  grid-template-columns: repeat(3, 1fr);
}

.printFlexBodyFlexs {
  display: flex;
  gap: 8px 0;
}

.printBtnFlex {
  display: flex;
  justify-content: center;
  gap: 36px;
  margin-top: 56px;
  padding-bottom: 20px;
}

.printBtnFlex a {
  min-width: 200px;
}

.printBtn {
  display: block;
  padding: 12px 32px 12px 32px;
  border: 1px solid var(--blue40);
  border-radius: 6px;
  font-weight: 500;
  text-align: center;
  width: fit-content;
  box-shadow: var(--shadow15-small);
  position: relative;
  overflow: hidden;
}

.printBtn span {
  color: var(--blue40);
}

.printBtn:hover,
.printBtn:focus-visible {
  box-shadow: var(--shadow30-mid);
}


/*----------------------------
printModal(inverter.css)_end
------------------------------*/


/*----------------------------
pm-motor.css_start
------------------------------*/

.printBtnFlex {
    border: none!important;
}

/*----------------------------
pm-motor.css_end
------------------------------*/

/*---------------------
product.cssに移行_start
-----------------------*/

.categoryCardListItem a:hover {
    color: var(--blue40);
}

.categoryCardListGroup ul li a:hover {
    color: var(--blue40);
}

.categoryCardTitle:hover {
    color: var(--blue40);
}

.categoryCardTitle::after,
.categoryCardListItem a::after,
.categoryCardListGroup ul li a::after {
    transition: right .2s ease;
}

.categoryCardTitle:hover::after,
.categoryCardListItem a:hover::after,
.categoryCardListGroup ul li a:hover::after {
    right: 0;
}

.categoryGrid {
    gap: 40px!important;
}

.categoryBottom {
    margin-top: 40px!important;
}

/*---------------------
product.cssに移行_end
-----------------------*/


/*----------------	
Pagination Start
------------------*/
.pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}

.paginationNav {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 4px;
    text-decoration: none;
    transition: all 0.2s ease;
    cursor: pointer;
}

.paginationArrow {
    position: relative;
    display: inline-block;
    font-size: 0;
}

.paginationFirst .paginationArrow::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 22px;
    height: 22px;
    background: url(/assets/img/download/SkipPreviousFilled.png) no-repeat;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    opacity: 0.4;
    filter: grayscale(100%);
}

.paginationPrev .paginationArrow::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 22px;
    height: 22px;
    background: url(/assets/img/download/ChevronLeftFilled.png) no-repeat;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    opacity: 0.4;
    filter: grayscale(100%);
}

.paginationNext .paginationArrow::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 22px;
    height: 22px;
    background: url(/assets/img/download/ChevronRightFilled.png) no-repeat;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.paginationLast .paginationArrow::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 22px;
    height: 22px;
    background: url(/assets/img/download/SkipNextFilled.png) no-repeat;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.paginationItem {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 0.4rem;
    font-size: 1.6rem;
    font-weight: 400;
    cursor: pointer;
}

.paginationActive {
    background-color: var(--blue30);
    color: #fff;
}

.paginationActive:hover {
    background-color: var(--blue30);
    color: #fff;
}

.paginationIndicator {
    display: none;
}

/*----------------
Pagination End
------------------*/


/*----------------
もっと見る START
------------------*/

.js-btn {
    cursor: pointer;
    display: flex;
    align-items: center;
    padding: 11px 50px 11px 40px;
/*    background-color: var(--blue40);*/
    border: 1px solid var(--blue40);
    border-radius: 6px;
    color: #fff;
    font-weight: 500;
    margin: 0 auto;
    width: fit-content;
    min-width: 200px;
    box-shadow: var(--shadow15-small);
    position: relative;
    margin: 56px auto;
    transition: all 0.3s ease;
    
    
    background-color: var(--blue40);
    color: #fff;
    /* 白レイヤを上に重ねる（初期は幅0%） */
    background-image: linear-gradient(90deg, #fff 0 0);
    background-repeat: no-repeat;
    background-size: 0% 100%;      /* ←ここがポイント */
    background-position: left top;
    transition: background-size .4s ease, color .3s ease, box-shadow .3s ease, border-color .3s ease;
    border-color: var(--blue40);
}

.js-btn-more:hover,
.js-btn-more:focus-visible{
    background-size: 100% 100%;  /* 左→右に白で塗る */
    color: var(--blue40);
}

.js-btn-more:hover::after {
    position: absolute;
    content: "";
    background: url("/assets/img/common/ic_add_circle_hov.svg") no-repeat center center / cover;
    width: 24px;
    height: 24px;
    top: 50%;
    transform: translateY(-50%);
    right: 16px;
    transition: all 0.3s ease;
}

.js-btn-close {
    background: #fff;
    border: 1px solid var(--blue40);
    color: var(--blue40);
}

.js-btn::after {
    position: absolute;
    content: "";
    background: url("/assets/img/common/ic_add_circle.svg") no-repeat center center / cover;
    width: 24px;
    height: 24px;
    top: 50%;
    transform: translateY(-50%);
    right: 16px;
    transition: all 0.3s ease;
}

.js-btn-close::after {
    position: absolute;
    content: "";
    background: url("/assets/img/common/ic_back_circle.svg") no-repeat center center / cover;
    width: 20px;
    height: 20px;
    top: 50%;
    transform: translateY(-50%);
    right: 16px;
    transition: all 0.3s ease;
}




/*
.catDlList {
    overflow: hidden;  必要か要確認
}
*/

.catDlList > a.is-hidden {
    display: none;
}


/* 初期：もっと見るを表示、閉じるは隠す */
.js-more .js-btn-more { display: block; }
.js-more .js-btn-close { display: none; }

/* 展開中：.is-expanded が付いたら「閉じる」を表示、「もっと見る」を隠す */
.js-more.is-expanded .js-btn-more {
    display: none;
}
.js-more.is-expanded .js-btn-close {
    display: block;
}

/*----------------
もっと見る End
------------------*/


/*---------------------
servo.css更新_START
-----------------------*/

.lineupItemHeading.lineupItemHeading_sgmx .lineupSgmxBtnWrap .link_btn01 {
    max-width: 100%!important;
}

.servo_ic span.ic_img {
    width: 96px!important;
    max-width: 96px!important;
}

.servo_ic span.ic_img img {
    aspect-ratio: auto!important;
}

.servo_ic p {
    margin-left: 4px;
    line-height: 1.25;
}

.servo_ic {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 5px 10px 5px 10px!important;
}

.lineupItemWrap.lineupItemWrap_servopack-ft .lineupItemCont .tit {
    min-height: auto!important;
}

.lineupItemWrap.lineupItemWrap_servopack-ft .lineupItemCont .tit .tit_num {
    font-weight: 700;
}

.ServopackCapacity {
    padding-top: 12px!important;
    margin-top: 12px!important;
}

.lineupItemWrap.lineupItemWrap_servopack-ft .lineupItemCont {
    padding: 16px 24px 20px 24px!important;
}

.ServoTabBox {
    margin-top: 56px!important;
}

.prodArticleColumn h3.feat_tit {
    
}

.servoSgmxjContTorqueBtn a svg {
    width: 28px;
    height: 28px;
    color: var(--hot30);
    transition: color 0.2s ease;
    margin-right: 8px;
}

.servoSgmxjContTorqueBtn a:hover svg {
    color: #fff;
}

.servoSgmxjContTorqueBtn {
    width: 582px!important;
    max-width: 100%!important;
    margin: 12px auto 0!important;
}

.ServoDataImg img {
    aspect-ratio: auto!important;
}

.ServoSgmxjCont {
    margin-top: 24px;
}

.ServoTabBox_sgmx-morter {
    margin-top: 56px!important;
}

.dl_search_result {
    font-weight: 700;
}

.servoLineupItemWrap {
    display: flex;
    flex-wrap: wrap;
    gap: 28px 3%;
    margin-top: 24px;
}

.servoLineupItemWrap .lineupItem {
    width: 376px;
    max-width: 31.33%;
}

.servoLineupItemWrap .lineupItem .productModelBtn {
    max-width: 100%!important;
}


/*モーダルの中のチェックボックス*/
.model-list input[type="checkbox"]{
    appearance:none; -webkit-appearance:none;
    width:18px;
    height:18px;
    border: 1px solid var(--cloud40);
    border-radius: 2px;
    background:#fff;
    position:relative;
    vertical-align:middle;
    outline:none;
    transition:background-color .12s, border-color .12s, box-shadow .12s;
}
.model-list input[type="checkbox"]::after{
    content:"";
    position:absolute;
    inset:0;
    margin:auto;
    width:6px;
    height:10px;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(-45deg) scale(0);
    transform-origin:center; transition:transform .12s ease-out;
}
.model-list input[type="checkbox"]:checked{
    background:#026EF2; border-color:#026EF2;
}
.model-list input[type="checkbox"]:checked::after{
    transform: rotate(45deg) scale(1);
}
.model-list input[type="checkbox"]:focus-visible{
    box-shadow:0 0 0 2px rgba(2,110,242,.35);
}


/*---------------------
servo.css更新_END
-----------------------*/

.updateCheckboxLabel { position:relative; }
.updateCheckboxLabel::before,
.updateCheckboxLabel::after { pointer-events:none; }


/*---------------------
scroll_START
-----------------------*/

.scroll_area,
.scroll_table {
    overflow-x: auto!important;
    overflow-y: hidden!important;
    -webkit-overflow-scrolling: touch;
/*    white-space: nowrap;*/ /*NG*/
}


@media screen and (max-width: 1000px) {
    .scroll_area,
    .scroll_table {
        cursor: grab;
    }
    .scroll_area.grabbing,
    .scroll_table.grabbing {
        cursor: grabbing;
    }
}


/*---------------------
scroll_END
-----------------------*/

.learningFormOptionItem .checkbox:checked::after {
    content: "";
    position: absolute;
    top: 5px;
    left: 3px;
    width: 10px;
    height: 5px;
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
    transform: rotate(-45deg);
}



/*---------------------
スクロールで12件ずつ表示_START
-----------------------*/

[hidden]{ display:none !important; }

.js-scroll-reveal { --rise: 40px; }

.js-scroll-reveal__item{
  opacity: 0;
  transform: translateY(var(--rise)) scale(.98);
  will-change: opacity, transform;
}

.js-scroll-reveal__item.is-visible{
  animation: fadeUpHoldVar .8s ease-out forwards;
}

@keyframes fadeUpHoldVar{
  0%   { opacity:0;   transform:translateY(var(--rise))           scale(.98); }
  50%  { opacity:0;   transform:translateY(calc(var(--rise)*.85)) scale(.985); }
  68%  { opacity:.25; transform:translateY(calc(var(--rise)*.50)) scale(.99);  }
  85%  { opacity:.65; transform:translateY(calc(var(--rise)*.20)) scale(.995); }
  100% { opacity:1;   transform:translateY(0)                     scale(1);    }
}

@media (prefers-reduced-motion: reduce){
  .js-scroll-reveal__item{ opacity:1; transform:none; }
  .js-scroll-reveal__item.is-visible{ animation:none; }
}

/*---------------------
スクロールで12件ずつ表示_END
-----------------------*/

.motorCapacityClose {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.motorCapacityClose span {
    display: block;
    font-size: 1.3rem;
}

@media screen and (min-width:768px) {
    .instSupportWrap > .inner {
        padding: 0;
    }
}

div.rStep {
    cursor: auto!important;
}

.checkboxWrapper label {
    display: flex;
    align-items: center;
    column-gap: 5px;
}

.checkboxWrapper label > .checkbox {
    position: relative;
    top: 0;
}

/*---------------------
#485
-----------------------*/

.acdn dt {
    background: #fff;
    border: 1px solid var(--cloud20);
    box-shadow: 0 3px 3px rgba(0, 0, 0, 0.3);
    padding: 8px 18px 8px 64px;
    position: relative;
    font-size: 1.8rem;
    line-height: 1.5;
    font-weight: 500;
    margin-top: 32px;
}

.acdn dd {
    padding-left: 10px;
    display: none;
    background-color: #f3f7fa;
    padding: 32px 64px 32px 64px;
}

.acdn dt::before {
    content: '';
    display: block;
    width: 20px;
    height: 20px;
    background-color: var(--cloud40);
    position: absolute;
    top: 50%;
    left: 18px;
    border-radius: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}

.acdn dt::after {
    content: '＋';
    position: absolute;
    top: 50%;
    left: 21.5px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    color: #fff;
    font-size: 14px;
    font-weight: 700;
}
.acdn dt.open::after {
    content: '－';
}

.flowChartImage01 {
    width: 1000px;
    max-width: 100%;
    margin: 0 auto;
}

.table_normal {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid #ccc;
    font-size: 1.6rem;
}

.table_normal th,
.table_normal td {
    border: 1px solid #ccc;
    padding: 0.5em 1em;
    text-align: left;
    vertical-align: top;
    border: 1px solid var(--cloud30);
}

.table_normal th {
    background-color: var(--cloud10);
    font-weight: 500;
}

.table_normal td {
    background-color: #fff;
}

/*---------------------
#480
-----------------------*/

.rangeList li {
    width: 100%;
}

.result_center {
    width: fit-content;
    display: flex;
    justify-content: center;
    align-items: center;
    column-gap: 16px;
    margin: 24px auto 0;
    padding: 0 24px;
    border-left: 1px solid var(--cloud30);
    border-right: 1px solid var(--cloud30);
}

.result_center .link_btn01 {
    width: 215px;
    min-width: 215px;
}

.result_center .numOfCases {
    font-size: 1.6rem;
}

.numOfCases span {
    font-size: 2.4rem;
}

/*---------------------
テーブルヘッダー固定
-----------------------*/

@media screen and (min-width: 768px) {
    .servo_scroll_table table.fixed_table {
        min-width: auto;
    }
    
}

.is-limit-hidden {
  display: none;
}

ul.sideSearchChks.column_2 {
    display: flex;
    flex-wrap: wrap;
    column-gap: 2%;
}

ul.sideSearchChks.column_2 li {
    width: 49%;
}

.ac-wrap.no_border {
    border-bottom: none;
}

.tabBox .nonTabArea {
    flex-wrap: nowrap;
}

.tabBox .nonTabArea .one_tab {
    min-width: 200px;
}

.proCateRadioWrap {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 12px;
    
    background-color: var(--blue00);
    border: 1px solid var(--blue40);
    border-radius: 3px;
    
    padding: 24px 24px 24px 24px;
}

.proCateRadio_tit {
    
}

.proCateRadio_tit p {
    font-size: 1.6rem;
    font-weight: 500;
}

.proCateRadio_tit p:before {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 1px;
    height: 16px;
    background-color: #000;
    margin-right: 10px;
    margin-top: -4px;
}

.proCateRadio_cont {
    display: flex;
    gap: 12px 4rem;
}

.proCateRadio_option {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.proCateRadio_input {
    width: 2rem;
    height: 2rem;
    margin: 0;
    accent-color: var(--blue30);
    cursor: pointer;
}

.proCateRadio_label {
    font-size: 1.6rem;
    font-weight: 500;
    color: #000000;
    cursor: pointer;
    margin: 0;
}

.proCateRadio .proCateRadioWrap {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.proCateRadio .tecdocCheckboxDiv {
    padding: 24px 24px 24px 24px;
    background-color: var(--cloud10);
    box-shadow: inset 0 3px 3px 0 rgba(0, 0, 0, 0.15);
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-top: none;
}

@media screen and (max-width: 767px) {
    .proCateRadio_cont {
        flex-wrap: wrap;
    }
    .proCateRadio_label {
        font-size: 1.4rem;
    }
}

.cloud10_bk {
    background-color: var(--cloud10);
    width: var(--vw, 100%);
    margin-left:  calc(50% - (var(--vw, 100%) / 2));
    margin-right: calc(50% - (var(--vw, 100%) / 2));
}

@media screen and (max-width: 767px) {
    .cloud10_bk > .inner {
        padding-left: 15px;
        padding-right: 15px;
    }
}

.cadModalDiv.cadModalActive:has(.cadModalHeadArr) {
    max-width: 207px;
}

.downloadListDiv.downloadListDivWidth {
    max-width: 207px;
}

.downloadListDiv.downloadListDivWidth .downloadListTtl {
    padding: 10px 10px;
    cursor: pointer;
}

.acInverterWrapGray {
    background-color: var(--cloud10);
    box-shadow: inset 0 3px 3px 0 rgba(0, 0, 0, 0.3);
    width: calc(100% + 48px);
    margin: 0 -24px;
    padding: 32px 24px 32px;
}

@media screen and (max-width:767px) {
    .acInverterWrapGray {
        padding-bottom: 16px;
    }
}

.acInverterWrapGray.grayBorder {
    box-shadow: none;
    border-top: 1px solid var(--blue40);
}

.twoColumnPageSideSearchWrap .twoColumnPageSideWidthGray {
    padding-bottom: 0;
}

@media screen and (min-width:768px) {
    .blockLeft {
        margin-left: 0!important;
    }
    ul.column-6,
    .column-6 {
        display: flex;
        gap: 10px;
    }
    .column-6 li,
    .column-6 > * {
        flex: 0 0 calc((100% - (10px * 5)) / 6);
        max-width: calc((100% - (10px * 5)) / 6);
    }
    ul.column-4,
    .column-4 {
        display: flex;
        gap: 10px;
    }
    .column-4 li,
    .column-4 > * {
        flex: 0 0 calc((100% - (10px * 3)) / 4);
        max-width: calc((100% - (10px * 3)) / 4);
    }
    .column-3 {
        width: 100%;
        display: flex;
        gap: 10px;
    }
    .column-3 > * {
        flex: 0 0 calc((100% - (10px * 2)) / 3);
        max-width: calc((100% - (10px * 2)) / 3);
    }
    .rangeListPm.specSearch > * {
        flex: 0 0 calc(50% - 40px);
    }

}


a.productCardInverter:hover .productCardInverterTitle,
a.productCardInverter:hover .productCardInverterSubTitle {
    color: var(--blue40);
}

.productCardLink:has(.productCardImage:hover),
.productCardLink:has(.productCardBody:hover) {
    box-shadow: var(--shadow30-mid);
    border-color: var(--blue40);
    outline: 1px solid var(--blue40);
}

.productCardLink:has(.productCardImage:hover) .productCardBody p {
    color: var(--blue40);
}

.productCardLink:has(.productCardImage:hover) .productCardInverterTitle,
.productCardLink:has(.productCardBody:hover) .productCardInverterTitle {
    color: var(--blue40);
}

.productCardLink:has(.productCardImage:hover) .productCardInverterSubTitle,
.productCardLink:has(.productCardBody:hover) .productCardInverterSubTitle{
    color: var(--blue40);
}

a.productCardBody:hover p {
    color: var(--blue40);
}

input[type="checkbox"]:disabled {
    background-color: var(--cloud10);
    border: 1px solid var(--cloud30);
}

input[type="checkbox"]:disabled + .checkboxLabel {
    color: var(--cloud30);
    pointer-events: none;
}

/*---------------------
Rest Button
-----------------------*/

.searchFilterSection > .searchFilterSolInner {
    padding: 64px 64px 0!important;
    position: relative;
}

.resetBt {
    width: fit-content;
    position: absolute;
    right: 53px;
    top: 18px;
    padding: 0!important;
}

.resetBt button {
    width: 160px;
    height: 30px;
    border: 1px solid;
    border-color: var(--cloud30);
    background-color: #fff;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    column-gap: 4px;
    border-radius: 6px;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.15);
    transition: all 0.3s ease-out;
}

.resetBt span {
    display: block;
    color: var(--cloud40);
    font-size: 1.6rem;
    line-height: 1;
    transition: all 0.3s ease-out;
}

.resetBt img {
    display: block;
    width: 24px;
}

.resetBt button:hover,
.resetBt button:focus-visible {
    cursor: pointer;
    background-color: #fff;
    
    border: 1px solid var(--blue40);
    box-shadow: var(--shadow30-mid);
}

.resetBt button:hover span,
.resetBt button:focus-visible span {
    color: var(--blue40);
}


/*----------------
#482
------------------*/

.lineupItemWrap--inverter.lineupItemWrap .lineupItem--hover {
    border: 3px solid;
    border-color: var(--cloud20);
    border-left: none;
    border-right: none;
    box-shadow: none;
    cursor: pointer;
}
.lineupItemWrap--inverter .lineupItem--hover:has(.lineupItemLinkHover:hover) {
    color: var(--blue40);
    box-shadow: none!important;
    border: 3px solid;
    border-color: var(--blue40);
    border-left: none!important;
    border-right: none!important;
    outline: none!important;
}
.tab_main .lineupItemWrap .lineupItemLinkHover:hover .tit,
.tab_main .lineupItemWrap .lineupItemLinkHover:focus-visible .tit,
.lineupItemLinkHover:hover .lineupItemContText,
.lineupItemLinkHover:focus-visible .lineupItemContText,
.lineupItemLinkHover:hover .lineupItemContText p,
.lineupItemLinkHover:focus-visible .lineupItemContText p {
    color: var(--blue40) !important;
}
.lineupItemLinkHover:hover .lineupItemContText,
.lineupItemLinkHover:focus-visible .lineupItemContText {
    border-bottom: 1px solid var(--blue40) !important;
}
.lineupItemWrap--inverter .lineupItemLinkHoverBottom {
    border: 1px solid;
    border-color: var(--cloud20);
}
.lineupItemWrap--inverter .lineupItemLinkHoverBottom:hover {
    border-color: var(--blue40);
}
.lineupItemWrap--inverter .lineupItem {
    border: 3px solid;
    border-color: var(--cloud20);
    border-left: none;
    border-right: none;
    box-shadow: none;
}
.lineupItemWrap--inverter .lineupItem:hover {
    color: var(--blue40);
    box-shadow: none!important;
    border: none;
    border-top: 3px solid;
    border-bottom: 3px solid;
    border-color: var(--blue40);
    outline: none;
}

.hover-zoom{
  display:block;
  overflow:hidden;
}

.hover-zoom img{
    display:block;
    width:100%;
    height:auto;
    transform:scale(1);
    transition:transform .35s ease;
}

.hover-zoom:hover img{
    transform:scale(1.06);
}

.schoolCard > a:hover + .schoolCardTitle a {
  color: var(--blue40);
}

.menuChoose {
    border: 1px solid var(--cloud30)!important;
    padding-bottom: 3.2rem!important;
}

.coporateModal {
    padding-top: 56px!important;
}

.coporateModalClose {
    position: absolute!important;
    top: 12px;
    right: 12px;
}

.popUpBox.show {
    height: auto!important;
}

.popUpBoxContPop .popUpBoxMessageWrap.open {
    height: auto!important;
}


.motorCapacityModal .motorCapacityModalHeader {
    padding-top: 12px;
}

.faqBox .faqProName {
    color: var(--accent50);
    font-weight: 400;
    margin-left: 6.4rem;
    margin-top: 16px;
}

@media screen and (max-width: 767px) {
    .faqBox .faqProName {
        margin-top: 16px;
    }
}

.sideSearchInverter .checkboxWrapper {
	gap: 8px 8px!important;
}

.langCheckboxWrap form.gap0 {
	gap: 0;
}

.lineupItemWrap--motor .lineupItem--hover .lineupItemContText {
	border-bottom: none!important;
}

.lineupItemWrap--inverter .lineupItemLinkHover {
	padding-top: 8px;
}

.lineupItemWrap--motor.lineupItemWrap .lineupItemLinkHover {
	border-bottom: 1px solid var(--cloud20);
}

.lineupItemWrap--motor.lineupItemWrap {
	display: flex;
    gap: 3%;
}

.lineupItemWrap--motor.lineupItemWrap .lineupItem--hover {
    max-width: 100%;
    width: 48.5%;
}
.lineupItemWrap--motor.lineupItemWrap .lineupItem--hover .lineupItemImgFlex .lineupItemImg img {
	max-width: 376px;
	width: 100%;
	margin: 0 auto;
}

@media screen and (max-width: 767px) {
	.lineupItemWrap--motor.lineupItemWrap {
		flex-direction: column;
		row-gap: 16px;
	}
	.lineupItemWrap--motor.lineupItemWrap .lineupItem--hover {
		width: 100%;
	}
}

/*---------------------
251226
-----------------------*/

@media screen and (min-width: 768px) {
	.link_btn01.w232,
	.link_btn01_down.w232 {
		width: 232px;
		min-width: 232px;
		max-width: 232px;
		padding-left: 24px;
		padding-right: 24px;
	}
	.link_btn01.w232 span,
	.link_btn01_down.w232 span {
		padding-left: 8px;
		padding-right: 8px;
	}
}

.RboxBanWrap {
	width: 1200px;
	max-width: 100%;
	margin: 0 auto;
	border: 1px solid;
	border-color: var(--cloud40);
}

.RboxBanWrap .RboxBan {
	display: flex;
}

.RboxBanWrap .RboxBan .RboxBanImg {
	width: 40%;
}

.RboxBanWrap .RboxBan .RboxBanImg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.RboxBanWrap .RboxBan .RboxBanCont {
	width: 60%;
	background-color: var(--cloud10);
	padding: 48px 6% 36px 6%;
}

.RboxBanWrap .RboxBan .RboxBanCont p {
	font-variant-position: 1.8rem;
	font-weight: 500;
	line-height: 1.7;
}

.RboxBanWrap .RboxBan .RboxBanCont .link_btn01 {
	min-width: 215px;
}

.robotLineup li > a:hover .robotLineupContText {
	border-color: var(--blue40);
}


/*---------------------
/product/robot/assembly.html
-----------------------*/

/* NewRobotLineup Acttion */
.Lup_btnGrid{
	width: 100%;
	display: grid;
	grid-template-columns: 1fr 1fr; /* 50% 50% */
/*	gap: 12px;*/
	column-gap: 3%;
	list-style: none;
	padding: 0;
	margin: 0;
}

.Lup_btn{
	padding: 12px 16px 12px 44px;
	border: 1px solid;
	border-color: var(--cloud20);
	cursor: pointer;
	background: #fff;
	box-shadow: 0px 3px 3px 0px rgba(0, 0, 0, 0.3);
	margin-bottom: 24px;
	position: relative;
}

.Lup_dropdown {
	grid-column: 1 / -1;
	width: 100%;
	background-color: var(--cloud10);
	box-sizing: border-box;
	overflow: hidden;
	max-height: 0;
	padding: 0;
	transition: max-height .3s ease, padding .3s ease;
	box-sizing: border-box;
	margin-top: -22px;
	margin-bottom: 24px;
}

/* 開いた状態 */
.Lup_dropdown.is-open{
	max-height: 100%!important;
/*	box-shadow: var(--shadow20-mid);*/
	box-shadow: inset 0px 3px 3px 3px rgba(0, 0, 0, 0.05);
    border-color: var(--blue40);
    outline: 1px solid var(--blue40);
    outline-offset: 0;
}

/* 中身切り替え */
.Lup_dropdown > div{
	display: none;
}
.Lup_dropdown > div.is-active{
	display: block;
	border: 2px solid;
	border-color: var(--blue40);
	padding: 45px 32px 32px 32px;
	position: relative;
	z-index: 2;
}

/* 追加：閉じる時だけ少しゆっくり（padding を効かせる） */
.Lup_dropdown{
  transition: padding 0.2s ease;
}

.Lup_dropdown{
  transition: padding 0.2s ease, opacity 0.2s ease;
  opacity: 0;
}

.Lup_dropdown.is-open{
  opacity: 1;
}

/* NewRobotLineup Acttion */

/* NewRobotLineup Style */

.NewRobotLineup .tableCheckList {
	background-color: #fff;
}

.NewRobotLineup table.tableCheckList td.tclImg img {
	display: block;
	width: 94px;
	max-width: 94px;
	margin: 0 auto;
}

/* NewRobotLineup Style */

.NewRobotLineupItem .NewRobotLineupItemIc {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 20px;
	margin: auto 0;
}

.NewRobotLineupItem > div {
	display: flex;
	align-items: center;
	column-gap: 2%;
}

.NewRobotLineupItem .NewRobotLineupItemImg {
/*	width: 224px;*/
	width: 44%;
}

.NewRobotLineupItem .NewRobotLineupItemCont {
	width: 54%;
}

.NewRobotLineupItem .NewRobotLineupItemImg img {
	display: block;
	max-width: 224px;
	margin: 0 auto;
}

.NewRobotLineupItem .NewRobotLineupItemContTit {
	font-size: 1.8rem;
	font-weight: 700;
	margin-bottom: 10px;
}

.NewRobotLineupItem .NewRobotLineupItemContTextAdd {
	font-weight: 500;
	margin-top: 12px;
}

.NewRobotLineupItemIc{
  width: 24px;
  height: 24px;
  display: inline-block;
  position: relative;
  border-radius: 50%;
  background-color: var(--blue40);
}

/* 共通：白い横棒（＋の横 / －の横） */
.NewRobotLineupItemIc::before{
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 12px;
  height: 2px;
  background: #fff;
  transform: translate(-50%, -50%);
  border-radius: 1px;
}

/* プラスの縦棒 */
.NewRobotLineupItemIc::after{
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 2px;
  height: 12px;
  background: #fff;
  transform: translate(-50%, -50%);
  border-radius: 1px;
}

.open .NewRobotLineupItemIc {
	background-color: var(--blue40);
}

/* open でマイナス（縦棒を消す） */
.open .NewRobotLineupItemIc::after{
	opacity: 0;
}

.NewRobotLineupItem:hover {
	transition: all 0.3s ease-out;
}

.NewRobotLineupItem.open,
.NewRobotLineupItem:hover {
    box-shadow: var(--shadow20-mid);
    border-color: var(--blue40);
    outline: 1px solid var(--blue40);
    outline-offset: 0;
}

.NewRobotLineupItem.open .NewRobotLineupItemContTit,
.NewRobotLineupItem:hover .NewRobotLineupItemContTit {
	color: var(--blue40);
}

.NewRobotLineupItem.open p,
.NewRobotLineupItem:hover p {
	color: var(--blue40);
}

.NewRobotLineupItem.open .NewRobotLineupItemIc,
.NewRobotLineupItem:hover .NewRobotLineupItemIc {
	background-color: var(--cloud40);
}

.NeoRobotLineup {
	display: flex;
	width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px 3%;
    list-style: none;
    padding: 0;
    margin: 0;
}

.NeoRobotLineupItem a {
	display: flex;
	align-items: center;
	width: 100%;
	height: 100%;
	column-gap: 3%;
	padding: 20px 16px 20px 16px;
    border: 1px solid;
    border-color: var(--cloud20);
    cursor: pointer;
    background: #fff;
    box-shadow: 0px 3px 3px 0px rgba(0, 0, 0, 0.3);
    position: relative;
}

.NeoRobotLineupItem .NeoRobotLineupItemImg {
	width: 29%;
}

.NeoRobotLineupItem .NeoRobotLineupItemImg img {
	display: block;
	max-width: 160px;
	margin: 0 auto;
}

.NeoRobotLineupItem .NeoRobotLineupItemCont {
	width: 68%;
}

.NeoRobotLineupItem .NeoRobotLineupItemCont .NeoRobotLineupItemContTit {
	font-size: 1.8rem;
	font-weight: 700;
	padding-right: 20px;
	margin-bottom: 10px;
	position: relative;
}

.NeoRobotLineupItem:hover {
    box-shadow: var(--shadow30-mid);
    border-color: var(--blue40);
    outline: 1px solid var(--blue40);
    outline-offset: 0;
}

.NeoRobotLineupItem:hover .NeoRobotLineupItemContTit {
	color: var(--blue40);
}

.NeoRobotLineupItem:hover p {
	color: var(--blue40);
}

.NeoRobotLineupItem .NeoRobotLineupItemCont .NeoRobotLineupItemContTit::after {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 10px;
    height: 10px;
    border: 0;
    border-top: solid 2px;
    border-right: solid 2px;
	border-color: var(--blue40);
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    bottom: 0;
    right: 12px;
    margin: auto 0;
}

.lineupItem .lineupItemCont .dl_btns {
	justify-content: center;
}

.Lup_dropdown ul.banlinks {
	margin-top: 16px;
	margin-bottom: 0;
}

.cateCheckbox {
    display: flex;
    align-items: flex-start;
    margin-top: 24px;
    margin-bottom: 16px;
    background-color: var(--blue00);
    border: 1px solid var(--blue40);
    padding: 20px 32px 20px 32px;
    border-radius: 3px;
}

.cateCheckboxFlex {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    gap: 6.4rem !important;
}

.cateCheckboxFlexIn {
    display: flex;
    align-items: center;
    gap: 12px;
}


