@charset "utf-8";
.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    font-size: 0;
    clear: both;
    visibility: hidden;
}
/* PC用 */
@media screen and (min-width: 561px){
/*2021追加*/
#side1,
#side2,
.s-category-top a,
.side-a-list .new::after {
    font-family: "A-OTF Shin Go Pro", "Hiragino Sans";
}
.s-category-top,
.s-category-top a {
    border-radius: 5px;
    box-sizing: border-box;
}
.s-category-top {
    border: 1px solid #c0c0c0;
    box-shadow: 0 1px 2px #e7e7e7;
    height: 5.5rem;
    padding: 2px;
    margin-bottom: 10px;
}
.s-category-top a {
    background: #fff;
    background: -moz-linear-gradient(top,  #ffffff 0%, #f3f3f3 100%);
    background: -webkit-linear-gradient(top,  #ffffff 0%,#f3f3f3 100%);
    background: linear-gradient(to bottom,  #ffffff 0%,#f3f3f3 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f3f3f3',GradientType=0 );
    border: 1px solid #dfdfdf;
    color: #333;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    font-weight: 500;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%;
    text-align: center;
    padding-bottom: .8em;
    position: relative;
    width: 100%;
}
.s-category-top.text-s {
    font-size: .8rem;
}
.s-category-top.text-m {
    font-size: 1.1rem;
}
.s-category-top span {
    color: #444;
    font-size: .7rem;
    left: 50%;
    position: absolute;
    bottom: 10px;
    transform: translateX(-50%);
}
.s-category-top span::before {
    content: '';
    top: .5em;
    left: -1.5em;
    box-sizing: border-box;
    border: 4px solid transparent;
    border-right: 6px solid #5e5e5e;
    margin: 0;
    position: absolute;
}
.s-category-top a:hover {
    background: #f3f3f3;
    background: -moz-linear-gradient(top,  #f3f3f3 0%, #ffffff 100%);
    background: -webkit-linear-gradient(top,  #f3f3f3 0%,#ffffff 100%);
    background: linear-gradient(to bottom,  #f3f3f3 0%,#ffffff 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f3f3f3', endColorstr='#ffffff',GradientType=0 );
    text-decoration: none;
}
.s-category-top a:hover span::before {
    border-right: 6px solid #ff5600;
}

.side-img li:not(:last-of-type) {
    margin-bottom: 10px;
}
.side-img a,
.side-img img {
    display: block;
}
.side-img a:hover {
    opacity: .9;
    position: relative;
}
.side-img a:hover::before {
    content: '';
    border: 3px solid #ff6608;
    border-radius: 5px;
    box-sizing: border-box;
    display: block;
    height: 100%;
    position: absolute;
    width: 100%;
    z-index: 1;
}

.s-list-head {
    background-color: #2d62a3;
    border-radius: 5px 5px 0 0;
    color: #fff;
    display: block;
    font-size: .85rem;
    letter-spacing: .6px;
    font-weight: 500;
    padding: .5rem 0;
    text-align: center;
    text-shadow: 0 1px 1px #ababab;
}
.s-box-head {
    background-color: #2080bf;
    color: #fff;
    display: block;
    font-size: .6rem;
    font-weight: 500;
    letter-spacing: .3px;
    height: 1.2rem;
    margin-bottom: 1px;
    text-align: center;
}
.side-a-list ul,
.s-a-box {
    background-color: #f1f1f1;
    border: 1px solid #c0c0c0;
    border-radius: 0 0 5px 5px;
    padding: 3px;
}
.s-a-box .inner-box {
    background-color: #FFF;
    border: 1px #e1e1e1 solid;
    border-radius: 0 0 5px 5px;
    box-sizing: border-box;
    width: 100%;
}
.side-a-list li {
    background-color: #FFF;
    border: 1px #e1e1e1;
    border-style: none solid solid solid;
    box-sizing: border-box;
    height: 2.9rem;
    display: block;
    width: 100%;
}
.side-a-list li:first-child {
    border-top-style: solid;
}
.side-a-list li:last-child {
    border-radius: 0 0 5px 5px;
}
.side-a-list .head-logo {
    height: 2rem;
    overflow: hidden;
}
.side-a-list .head-logo:not(:first-of-type) {
    border-top: 1px solid #e1e1e1;
    margin-top: 5px;
}
.side-a-list .head-logo img {
    display: block;
    margin: auto;
}
.side-a-list a {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    box-sizing: border-box;
    color: #333;
    display: flex;
    font-size: .8rem;
    font-weight: 700;
    letter-spacing: .5px;
    line-height: 1.2;
    height: 100%;
    text-decoration: none;
    padding-right: 7px;
    width: 100%;
}
.side-a-list a:hover {
    background-color: #eaeefb;
    border-right: 4px solid #2d62a3;
    box-sizing: border-box;
    padding-right: 0;
    text-decoration: none;
}

/*NEW*/
.side-a-list .new {
    position: relative;
}
.side-a-list .new::after {
    content: '';
    background: url(/svg/s_new.svg) no-repeat top left;
    background-size: contain;
    color: #fff;
    display: block;
    font-size: 10px;
    height: 22px;
    position: absolute;
    top: -2px;
    right: -2px;
    width: 35px;
}

/*arrow*/
.side-a-list:not(.s-category) a {
    padding-left: 1.6rem;
    position: relative;
}
.side-a-list:not(.s-category) a::before {
    content: '';
    background-size: contain;
    display: block;
    height: 10px;
    left: .5rem;
    background-color: #2d62a3;
    -webkit-mask-image: url('/svg/s_a_arrow.svg');
    mask-image: url('/svg/s_a_arrow.svg');
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 10px;
    z-index: 1;
}

/*カテゴリ別メニュー 用*/
.s-a-box.c-flex-bnr {
    border-radius: 5px;
}
.c-flex-bnr > div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}
.c-flex-bnr img {
    display: block;
    width: 100%;
}
.c-flex-bnr .inner-box > *:not(.head-img) {
    height: 135px;
}
.c-flex-bnr li:not(:last-of-type) {
    border-bottom: 1px #dfdfde dotted;
}
.c-flex-bnr a {
    background-position: center top;
    display: block;
    text-decoration: none;
    width: 100%;
}
.c-flex-bnr a:hover {
    background-position: center bottom;
}
.c-flex-bnr .waterheater01 {
    background-image: url(/waterheater/img/side_a_cost_5.gif?21011402);
}
.c-flex-bnr .waterheater02 {
    background-image: url(/waterheater/img/side_a_cost_f.gif?21011402);
}
.c-flex-bnr .solar-battery01 {
    background-image: url(/solar-battery/img/side_a_cost.gif?21011402);
}

.category-menu a {
    font-size: .72rem;
    font-weight: normal;
    letter-spacing: .5px;
}
.category-menu .list-logo li {
    height: 65px;
}
.category-menu .list-logo li:not(:last-of-type) {
    border-bottom: 1px solid #e2e2e2;
}
.category-menu .list-logo a {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #fff;
    display: block;
    height: inherit;
    position: relative;
}
.category-menu .list-logo img {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%,-50%);
}
.category-menu .list-logo a:hover {
    outline: 3px solid #ff5601;
    outline-offset: -2px;
    z-index: 1;
}

/*category*/
.s-category .s-list-head {
    background-color: #7cb130;
}
.s-category a:hover {
    background-color: #fbefea;
    border-right: 3px solid #ff5601;
}
.s-category li {
    position: relative;
}
.s-category a {
    color: #ff5601;
    padding-left: 2.9rem;
}
.s-category img {
    border: 1px solid #dfdfdf;
    border-radius: 50%;
    left: .45rem;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    max-height: 67%;
}

/*service*/
.s-service .s-list-head {
    background-color: #ff6700;
}
.s-service.side-a-list a::before {
    content: '';
    background-color: #ff5900;
}
.s-service a:hover {
    background-color: #fbefea;
    border-right: 3px solid #ff5601;
}

/*video*/
.s-video .s-list-head {
    background-color: #d00909;
}
.s-video.side-a-list a::before {
    content: '';
    background-color: #df0000;
}
.s-video a:hover {
    background-color: #fbebea;
    border-right: 3px solid #df0000;
}

/*sns*/
.s-sns .inner-box {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: inline-flex;
    height: 3rem;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0 6px;
}
.s-sns img {
    max-width: 2rem;
}

/*time*/
.s-time .inner-box {
    color: #333;
    display: inline-flex;
    font-size: .78rem;
    font-weight: 500;
    padding: 5%;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.s-time dt {
    color: #606060;
    -ms-flex-preferred-size: 40%;
    flex-basis: 40%;
}
/*office*/
.s-office span {
    display: block;
    letter-spacing: .5px;
    line-height: 1.2em;
    color: #333;
    font-size: 10px;
    font-weight: 500;
    padding-left: 3px;
    margin: 3px 0 5px;
}
    
}

/*矢印 IEのみ*/
@media all and (-ms-high-contrast: none) {
.side-a-list:not(.s-category) a::before {
    content: '';
    background-color: #fff;
    background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48cGF0aCBmaWxsPSIjMmQ2MmEzIiBkPSJNNDk5LjQzNiwyMjUuOTA1TDI5NS44NTgsMjQuNTM2Yy0xNi42MjMtMTYuNDM4LTQzLjQyOC0xNi4zMDUtNTkuODY2LDAuMzI4Yy0xNi40MzgsMTYuNjEzLTE2LjI5NCw0My40MTgsMC4zMjksNTkuODU2bDEzMC4zNTYsMTI4Ljk1OEg0Mi4zMjlDMTguOTU2LDIxMy42NzksMCwyMzIuNjI0LDAsMjU1Ljk5N2MwLDIzLjM4MywxOC45NTYsNDIuMzI4LDQyLjMyOSw0Mi4zMjhoMzI0LjM0N0wyMzYuMzIxLDQyNy4yNzNjLTE2LjYyMywxNi40MzgtMTYuNzY3LDQzLjI1NC0wLjMyOSw1OS44NjdjMTYuNDM4LDE2LjYyMiw0My4yNDMsMTYuNzY2LDU5Ljg2NiwwLjMyOGwyMDMuNTc4LTIwMS4zNjhjOC4wNDQtNy45NjMsMTIuNTY0LTE4Ljc5MiwxMi41NjQtMzAuMTAyQzUxMiwyNDQuNjg1LDUwNy40NzksMjMzLjg2Niw0OTkuNDM2LDIyNS45MDV6IiAvPjwvc3ZnPg==');
    -webkit-mask-image: none;
    mask-image: none;
}
.side-a-list:not(.s-category) a:hover::before {
    background-color: #eaeefb;
}

/*service*/
.s-service.side-a-list a::before {
    content: '';
    background-color: #fff;
    background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48cGF0aCBmaWxsPSIjZmY1OTAwIiBkPSJNNDk5LjQzNiwyMjUuOTA1TDI5NS44NTgsMjQuNTM2Yy0xNi42MjMtMTYuNDM4LTQzLjQyOC0xNi4zMDUtNTkuODY2LDAuMzI4Yy0xNi40MzgsMTYuNjEzLTE2LjI5NCw0My40MTgsMC4zMjksNTkuODU2bDEzMC4zNTYsMTI4Ljk1OEg0Mi4zMjlDMTguOTU2LDIxMy42NzksMCwyMzIuNjI0LDAsMjU1Ljk5N2MwLDIzLjM4MywxOC45NTYsNDIuMzI4LDQyLjMyOSw0Mi4zMjhoMzI0LjM0N0wyMzYuMzIxLDQyNy4yNzNjLTE2LjYyMywxNi40MzgtMTYuNzY3LDQzLjI1NC0wLjMyOSw1OS44NjdjMTYuNDM4LDE2LjYyMiw0My4yNDMsMTYuNzY2LDU5Ljg2NiwwLjMyOGwyMDMuNTc4LTIwMS4zNjhjOC4wNDQtNy45NjMsMTIuNTY0LTE4Ljc5MiwxMi41NjQtMzAuMTAyQzUxMiwyNDQuNjg1LDUwNy40NzksMjMzLjg2Niw0OTkuNDM2LDIyNS45MDV6IiAvPjwvc3ZnPg==');
}
.s-service.side-a-list a:hover::before {
    background-color: #fbefea;
}

/*video*/
.s-video.side-a-list a::before {
    content: '';
    background-color: #fff;
    background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48cGF0aCBmaWxsPSIjZGYwMDAwIiBkPSJNNDk5LjQzNiwyMjUuOTA1TDI5NS44NTgsMjQuNTM2Yy0xNi42MjMtMTYuNDM4LTQzLjQyOC0xNi4zMDUtNTkuODY2LDAuMzI4Yy0xNi40MzgsMTYuNjEzLTE2LjI5NCw0My40MTgsMC4zMjksNTkuODU2bDEzMC4zNTYsMTI4Ljk1OEg0Mi4zMjlDMTguOTU2LDIxMy42NzksMCwyMzIuNjI0LDAsMjU1Ljk5N2MwLDIzLjM4MywxOC45NTYsNDIuMzI4LDQyLjMyOSw0Mi4zMjhoMzI0LjM0N0wyMzYuMzIxLDQyNy4yNzNjLTE2LjYyMywxNi40MzgtMTYuNzY3LDQzLjI1NC0wLjMyOSw1OS44NjdjMTYuNDM4LDE2LjYyMiw0My4yNDMsMTYuNzY2LDU5Ljg2NiwwLjMyOGwyMDMuNTc4LTIwMS4zNjhjOC4wNDQtNy45NjMsMTIuNTY0LTE4Ljc5MiwxMi41NjQtMzAuMTAyQzUxMiwyNDQuNjg1LDUwNy40NzksMjMzLjg2Niw0OTkuNDM2LDIyNS45MDV6IiAvPjwvc3ZnPg==');
}
.s-video.side-a-list a:hover::before {
    background-color: #fbebea;
}
}

/* スマホ用 */
@media screen and (max-width: 560px) {
.s-category-top a {
    padding-left: 2.4em !important;
    position: relative;
}
.s-category-top a::before {
    content: '';
    top: 1rem;
    left: 1em;
    box-sizing: border-box;
    border: 6px solid transparent;
    border-bottom: 9px solid #fff;
    margin: 0;
    position: absolute;
}

/*sns*/
.s-sns .inner-box {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: inline-flex;
    height: 3rem;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0;
    width: 100%;
}
.s-sns .inner-box a {
    display: inline-block !important;
    border-bottom: none;
    text-align: center;
}
.s-sns img {
    display: inline-block !important;
}
/* カテゴリ別メニュー 用*/
.s-a-box.c-flex-bnr {
    background-color: #f1f1f1;
    height: 100px;
    padding: 1px 1px 2px 1px;
}
.c-flex-bnr > div {
    height: 100%;
    display: flex;
    justify-content: space-around;
    overflow: hidden;
}
.c-flex-bnr a {
    background-position: center top;
    background-size: 100%;
    background-repeat: no-repeat;
    display: inline-block;
    height: 100%;
    text-indent: -9999px;
    text-decoration: none;
    width: 49%;
}
.c-flex-bnr a:hover {
    background-position: center bottom;
}
.c-flex-bnr .waterheater01 {
    background-image: url(/waterheater/img/side_a_cost_5.gif?21011304);
}
.c-flex-bnr .waterheater02 {
    background-image: url(/waterheater/img/side_a_cost_f.gif?21011304);
}
.c-flex-bnr .solar-battery01 {
    background-image: url(/solar-battery/img/side_a_cost.gif?210113);
}
.c-flex-bnr img:not(.pc) {
    display: inline-block!important;
    max-width: 50%;
}
}
