@charset "utf-8";
@import url(https://fonts.googleapis.com/css?family=Roboto:400,500,700);
@import url(https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css);

/*
Theme Name: kensetsu
Theme URI: http://bckmn.com/naked-wordpress
Author: J Beckman rebuiled by m.yamagishi
Author URI: http://wtblue.jp/
Description: A super bare theme for designers who don't know Wordpress PHP but want to build with Wordpress.
Version: 1.0
License: GNU General Public License */


/* styles
-------------------------------------------------------------- */
html {
    font-size: 62.5%;
}

body,
button,
input,
select,
textarea {
    padding: 0;
    margin: 0;
    background: #ffffff;
    box-sizing: border-box;
    -webkit-text-size-adjust: 100%;
}

body {
    font-size: 16px;
    color: #222222;
    background: #2378D7;
    font-family: -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, "メイリオ", "Yu Gothic", "游ゴシック", Osaka, sans-serif;
}

.site-wrapper {
    max-width: 1260px;
    margin: 0 auto;
    background: #ffffff;
}

.container,
.post.error{
    max-width: 1080px;
    margin: 0 auto;
}

img {
    max-width: 100%;
    height: auto;
}


a {
    color: #222222;
}

a:hover {
    text-decoration: none;
}

input:not([type="radio"]),
select,
textarea {
    border: 1px solid #CCCCCC;
    border-radius: 3px;
    padding: 5px;
    -webkit-appearance: none;
}
input.btn-search {
    text-indent: -9999px;
    width: 22px;
    height: 22px;
    background: url(img/products/icon-search.png) no-repeat center center;
    background-size: contain;
    border: none;
}

input[type="radio"] {
    margin-right: 5px;
    border: 1px solid #CCCCCC;
}

select {
    -webkit-appearance: none;
    appearance: none;
    padding: 6px 30px 6px 6px;
}

.select_container {
    position: relative;
}

.select_container:after {
    display: inline-block;
    content: '▲';
    position: absolute;
    top: calc(50% - 6px);
    right: 10px;
    transform: rotate(180deg);
    font-size: 12px;
    font-size: 1.2rem;
    color: #2378d7;
    z-index: 99;
}

textarea {
    width: 100%;
    height: 195px;
}

ol li{
    list-style-type:decimal;
    margin-left: 1.2em;
}

@media only screen and (max-width: 1080px) {
    .container,
    .post.error {
        padding: 0 20px;
    }
}

/* SP */
@media only screen and (max-width: 912px) {
    .site-wrapper {
        margin: 0 6px;
    }
}

/* typography
-------------------------------------------------------------- */
.title {
    position: relative;
    font-size: 18px;
    font-size: 1.8rem;
    text-align: center;
    margin-bottom: 30px;
}

.title small {
    display: block;
    font-size: 36px;
    font-size: 3.6rem;
    font-family: 'Roboto', sans-serif;
}

.title small:before,
.title small:after {
    content: '／';
    color: #2378D7;
    margin: 0 30px;
}

.subtitle {
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
}

/* PC */
@media only screen and (min-width: 912px) {}

/* SP */
@media only screen and (max-width: 912px) {
    .title {
        font-size: 12px;
        font-size: 1.2rem;
        margin-bottom: 20px;
        line-height: 1.3;
    }

    .title small {
        font-size: 25px;
        font-size: 2.5rem;
    }

    .subtitle {
        font-size: 16px;
        font-size: 1.6rem;
        font-weight: bold;
    }

    .title small:before {
        margin: 0 12px 0 0;
    }

    .title small:after {
        margin: 0 0 0 12px;
    }
    
    .sp-f14{
        font-size: 14px;
        font-size: 1.4rem;
    }
}



/* header
-------------------------------------------------------------- */
header.site-header {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-end;
    margin: 0 auto;
    max-width: 1080px;
}

.site-title {
    margin: 20px 0 0;
}

.site-subtitle {
    width: 100%;
    margin: 10px 0 0;
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: normal;
}

header.site-header a {
    text-decoration: none;
    text-align: center;
}

.header-entry_btn {
    position: relative;
    display: inline-block;
    background: url(img/flow/bg-header-entry.svg) no-repeat center center;
    background-size: contain;
    font-weight: bold;
    line-height: 44px;
    padding: 0 20px 0 36px;
    color: #2378D7;
}
.header-cart_btn {
    position: relative;
    display: inline-block;
    background: #2378D7 url(img/common/icon-cart.png) no-repeat left 20px center;
    background-size: 20px auto;
    font-weight: bold;
    color: #fff;

}

.header-cart_btnNum {
    position: absolute;
    top: calc(50% - 16px);
    right: -25px;
    width: 32px;
    height: 32px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 16px;
    background-color: #C81428;
    color: #fff;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
}

.header-cart_btnNum:before {
    position: absolute;
    left: -13px;
    top: 12px;
    content: '';
    width: 8px;
    height: 4px;
    box-sizing: border-box;
    border-top: 4px solid transparent;
    border-left: 8px solid transparent;
    border-bottom: 4px solid transparent;
    border-right: 8px solid #C81428;
}

.header-tel_btn {
    font-weight: bold;
    font-size: 24px;
    font-size: 2.4rem;
    background: url(img/common/icon-tel.png) no-repeat left calc(50% + 2px);
    padding-left: 20px;
    margin-left: 10px;
}

.header-menu_list {
    display: flex;
    list-style: none;
    margin: 0;
}


.header-menu_item a {
    font-weight: bold;
}

.header-menu_item a:hover {
    text-decoration: underline;
}

/* PC */
@media only screen and (min-width: 912px) {
    .header-entry_btn{
        line-height: 44px;
        font-size: 14px;
        font-size: 1.4rem;
    }
    .header-cart_btn {
        padding: 0 22px 0 45px;
        margin-right: 15px;
        line-height: 44px;
        border-radius: 22px;
        font-size: 14px;
        font-size: 1.4rem;
    }

    .navbar {
        width: 100%;
        margin-top: 20px;
        padding-bottom: 20px;
    }

    .header-menu_item {
        margin: 0 38px 0 0;
    }

    .header-menu_list small {
        display: none;
    }
    
    .header-cart {
        display: flex;
        align-items: center;
        margin-top: 20px;
    }
    
    .header-tel {
        font-size: 14px;
        font-size: 1.4rem;
        list-style: none; /* デフォルトのリストマーク（・）を念のため消す */
        padding: 0;
        margin: 0;
    }

    .header-tel li {
        display: flex;
        justify-content: space-between; /* 両端揃え（テキストを左、電話番号を右に配置） */
        align-items: center;            /* 縦のズレを防ぐ */
        margin-bottom: 5px;             /* 2つの電話番号の間の行間（お好みで調整してください） */
    }
    .header-tel li:last-child {
        margin-bottom: 0;               /* 最後の行の下には余白を作らない */
    }
    
    .header-menu_item8 a {
        display: inline-block;
        border: 2px solid #2378D7;
        background: #fff;
        border-radius: 10px;
        font-size: 14px;
        font-size: 1.4rem;
        font-weight: bold;
        color: #2378D7;
        line-height: 40px;
        padding: 0 30px;
        position: relative;
        top: -10px;
    }
}

/* SP */
@media only screen and (max-width: 912px) {
    header.site-header {
        padding: 0 20px;
        align-items: stretch;
    }

    .site-title {
        width: 51.39%;
    }

    .header-menu_item a.header-entry_btn {
        background: url(img/flow/bg-header-entry-sp.svg) no-repeat center center;
        background-size: contain;
        width: 100%;
        line-height: 57px;
        padding: 0 20px 0 36px;
        margin: 0 auto;
    }
    .header-cart_btn {
        background: #2378D7 url(img/common/icon-cart.png) no-repeat left 10px top 10px;
        background-size: 20px auto;
        height: 57px;
        padding: 35px 8px 0;
        margin-right: 48px;
        font-size: 11px;
        font-size: 1.1rem;
    }

    .header-cart_btnNum {
        position: absolute;
        top: 3px;
        right: 10px;
        width: 26px;
        height: 26px;
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 16px;
        background-color: #C81428;
        color: #fff;
        font-size: 16px;
        font-size: 1.6rem;
        font-weight: bold;

    }


    .navbar {
        position: absolute;
        right: 0;
        top: 0;
        z-index: 9999;
    }

    .header-menu_btn {
        position: relative;
        z-index: 100;
        width: 68px;
        height: 57px;
    }

    .header-menu_btn span {
        position: absolute;
        display: block;
        width: 24px;
        height: 3px;
        background: #222222;
        transition: all .5s cubic-bezier(.19, 1, .22, 1)
    }

    .header-menu_btn span:nth-child(1) {
        top: 18px;
        left: 22px
    }

    .header-menu_btn span:nth-child(2) {
        top: 28px;
        left: 22px
    }

    .header-menu_btn span:nth-child(3) {
        top: 38px;
        left: 22px
    }

    .header-menu_btn--op span:nth-child(1) {
        top: 30px;
        left: 22px;
        background: #fff;
        -webkit-transform: rotate(-315deg) scaleX(1);
        transform: rotate(-315deg) scaleX(1);
        -webkit-transform-origin: center;
        transform-origin: center
    }

    .header-menu_btn--op span:nth-child(2) {
        top: 30px;
        left: 22px;
        opacity: 0
    }

    .header-menu_btn--op span:nth-child(3) {
        top: 30px;
        left: 22px;
        background: #fff;
        -webkit-transform: rotate(315deg);
        transform: rotate(315deg);
        -webkit-transform-origin: center;
        transform-origin: center
    }

    .header-menu_list {
        position: fixed;
        right: 0;
        top: 0;
        padding: 57px 20px 20px;
        width: 100%;
        height: 100%;
        display: block;
        -webkit-transform: translateX(100%);
        transform: translateX(100%);
        background: rgba(35, 120, 215, .9);
        transition: all .5s cubic-bezier(.19, 1, .22, 1)
    }

    .header-menu_list--op {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        overflow-y: scroll;
    }

    .header-menu_item {
        border-bottom: 1px solid #2261BC;
    }

    .header-menu_item5 ~ li[class*="header-menu_item"] {
        border: none;
    }

    .header-menu_item a {
        display: block;
        color: #fff;
        font-size: 20px;
        font-size: 2rem;
        padding: 18px 20px;
    }

    .header-menu_item a small {
        display: block;
        font-size: 10px;
        font-size: 1rem;
        font-family: 'Roboto', sans-serif;
    }

    .header-menu_item7,
    .header-menu_item8 a {
        background: #fff;
        border-radius: 12px;
        color: #222;
        box-shadow: 0 6px 4px 0 rgba(0, 0, 0, .2);
    }

    .header-menu_item7 {
        text-align: center;
        padding: 15px 10px;
        line-height: 1.5;
        margin-top: 18px;
    }
    
    .header-menu_item7 a {
        display: inline-block;
        padding: 0;
        color: #222;
        font-size: 2.4rem;
    }

    .header-menu_item7 a:before {
        content: '';
        display: inline-block;
        vertical-align: middle;
        background: url(img/common/icon-tel.png) no-repeat center center;
        width: 19px;
        height: 24px;
        margin-right: 2px;
    }

    .header-menu_item8 a {
        justify-content: center;
        align-items: center;
        margin-top: 18px;
        font-size: 2.4rem;
        display: flex;
        height: 56px;
        color: #2378D7;
        font-size: 16px;
        font-size: 1.6rem;
    }
}


/* footer
-------------------------------------------------------------- */
footer {
    padding: 30px 0 70px;
    font-size: 14px;
    font-size: 1.4rem;
    background-color: #F2F2F2;
}


.footer-siteinfo_address {
    flex-basis: 44.8%;
    font-style: normal;
}

.footer-siteinfo_h3 {
    display: inline-block;
    font-size: 14px;
    font-size: 1.4rem;
    border: 1px solid #222222;
    padding: 5px 10px;
    margin-bottom: 12px;
}

.footer-siteinfo_h2 {
    margin-bottom: 30px;
}

.footer-siteinfo_license {
    padding: 18px 20px;
    border: 1px solid #CCCCCC;
    border-radius: 12px;
    margin: 22px 0 30px;
}

.footer-menu {
    display: flex;
}

.footer-menu_item {
    margin-bottom: 10px;
}

.footer-link_item {
    margin-bottom: 8px;
}

.copyright {
    text-align: center;
    font-size: 12px;
    font-size: 1.2rem;
    padding: 10px;
    color: #fff;
    font-family: 'Roboto', sans-serif;
}


/* PC */
@media only screen and (min-width: 912px) {
    .footer-banner_list {
        display: flex;
        justify-content: space-between;
        width: 1100px;
        max-width: 100%;
        margin: 0 auto;
    }

    .footer-siteinfo {
        display: flex;
        justify-content: space-between;
        margin: 80px auto 0;
    }

    .footer-siteinfo_license {
        display: inline-block;
        margin-bottom: 0;
    }

    .footer-menu_list:first-child {
        margin-right: 50px;
    }

}

/* SP */
@media only screen and (max-width: 912px) {
    footer {
        font-size: 12px;
        font-size: 1.2rem;
        padding-bottom: 35px;
    }

    .footer-banner_list {
        margin: 0 10px;
    }

    .footer-siteinfo {
        margin: 40px 35px 0;
    }

    .footer-siteinfo_h3 {
        padding: 5px;
        margin-bottom: 5px;
    }

    .footer-siteinfo_h2 {
        margin-bottom: 20px;
    }

    .footer-menu {
        justify-content: space-between;
    }

    .footer-link_list {
        margin: 30px auto 0;
        text-align: center;
    }
}

/* inc-footer-option
    一部accessと共有注意 */

.footerOption-banner {
    background: url(img/common/inc-footer-bg.png) repeat;
    padding: 35px 0;
    text-align: center;
}

.footerOption-submenu_title {
    border-bottom: 3px solid #2378D7;
    font-size: 20px;
    font-size: 2rem;
    color: #2378D7;
    margin-bottom: 18px;
}

.footerOption-submenu_title small {
    font-size: 14px;
    font-size: 1.4rem;
    font-family: 'Roboto', sans-serif;
    color: #222222;
    display: block;
}

.footerOption-contact_tel,
.footerOption-contact_webFax {
    padding-bottom: 20px;
}

.footerOption-submenu_h3 {
    font-family: 'Roboto', sans-serif;
    font-size: 20px;
    font-size: 2rem;
    font-weight: bold;
}

.footerOption-submenu_h3jp {
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
}

.footerOption-submenu_h3Fax {
    border-top: 1px solid #CCCCCC;
    padding-top: 25px;
}

.footerOption-submenu_place {
    font-family: 'Roboto', sans-serif;
    font-size: 15px;
    font-size: 1.5rem;
    font-weight: bold;
    line-height: 1;
    display: block;
    margin-top: 10px;
}

.footerOption-submenu_num {
    font-family: 'Roboto', sans-serif;
    font-size: 30px;
    font-size: 3rem;
    font-weight: bold;
    line-height: 1;
    display: block;
}

.footerOption-submenu_h4 {
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: normal;
}

.footerOption-contact_telBtn {
    display: inline-block;
    background: #2378D7 url(img/common/inc-footer-icon.png) no-repeat left 20px center;
    padding: 0 20px 0 60px;
    margin-top: 10px;
    border-radius: 23px;
    line-height: 46px;
    color: #fff;
    font-weight: bold;
    transition: .3s;
}

.footerOption-contact_telBtn:hover {
    background: #3D8ED8 url(img/common/inc-footer-icon.png) no-repeat left 20px center;
}

.footerOption-contact_webBtn {
    display: block;
    background: #fff;
    border: 1px solid #E6E6E6;
    border-radius: 12px;
    box-shadow: 0 10px 6px 0 rgba(0, 0, 0, .2);
    margin: 8px 0 30px;
    padding: 15px 18px;
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: bold;
    color: #2378D7;
    text-align: center;
    transition: .3s;
}

.footerOption-contact_webBtn:hover {
    background: #2378D7;
    color: #fff;
}

.footerOption-contact_webFax > * {
    padding-left: 8px;
}

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

.footerOption-access_list::after{
  content:"";
  display: block;
  width:30.4%;
}

.footerOption-access_item {
    width: 30.4%;
}

.footerOption-access_link {
    display: block;
    padding: 18px;
    margin-bottom: 18px;
    background: #fff;
    border: 1px solid #2378D7;
    border-radius: 12px;
    color: #2378D7;
    font-size: 14px;
    font-size: 1.5rem;
    font-weight: bold;
    text-align: center;
    transition: .3s;
}

.footerOption-access_link:hover {
    background: #2378D7;
    color: #fff;
}

/* PC */
@media only screen and (min-width: 912px) {
    .footerOption-submenu {
        display: flex;
        justify-content: space-between;
        padding: 60px 0 55px;
    }

    .footerOption-submenu_item {
        flex-basis: 46.3%;
    }

    .footerOption-contact_inner {
        display: flex;
        justify-content: space-between;
    }

    .footerOption-contact_webFax {
        padding-left: 18px;
        border-left: 1px solid #CCCCCC;
    }

    .footerOption-submenu_h4 {
        margin-top: 40px;
    }
}

/* SP */
@media only screen and (max-width: 912px) {
    .footerOption-banner {
        padding: 20px 0;
        text-align: center;
    }

    .footerOption-submenu {
        max-width: 300px;
        margin: 35px auto;
    }

    .footerOption-submenu_title small {
        display: none;
    }

    .footerOption-submenu_h3,
    .footerOption-submenu_h3jp {
        text-align: center;
    }

    .footerOption-submenu_h3jp,
    .footerOption-submenu_h3Fax {
        border-top: 1px solid #CCCCCC;
        padding-top: 20px;
    }

    .footerOption-submenu_h4 {
        text-align: center;
    }

    .footerOption-submenu p {
        margin-left: auto;
        margin-right: auto;
        text-align: center;
    }

    .footerOption-contact_webBtn {
        max-width: 225px;
        margin-left: auto;
        margin-right: auto;
    }

    .footerOption-access_item {
        width: 46%;
    }

    .footerOption-access_link {
        padding: 14px;
        margin-bottom: 10px;
    }
}





/* Posts/Articles
-------------------------------------------------------------- */
.pankuzu {
    display: flex;
    flex-wrap: wrap;
    font-size: 14px;
    font-size: 1.4rem;
    max-width: 1080px;
    margin: 0 auto 40px;
}

.pankuzu_item:not(:last-child):after {
    content: '';
    width: 7px;
    height: 7px;
    display: inline-block;
    border-right: 1px solid #2378D7;
    border-bottom: 1px solid #2378D7;
    transform: rotate(-45deg);
    margin: 0 12px;
}

#content {
    margin-bottom: 80px;
}

article {
    background: transparent;
    padding: 0;
    margin-bottom: 80px;
}

article .the-content img {
    max-width: 100%;
    height: auto;
}

/* PC */
@media only screen and (min-width: 912px) {
    .pankuzu {
        padding: 15px 0;
        border-top: 1px solid #CCCCCC;
        border-bottom: 1px solid #CCCCCC;
    }
}

/* SP */
@media only screen and (max-width: 912px) {
    .pankuzu {
        font-size: 11px;
        font-size: 1.1rem;
        margin: 10px 20px 30px;
    }

    .pankuzu_item:not(:last-child):after {
        width: 6px;
        height: 6px;
    }

}


/* slide */
.the-content .slick-slide {
    height: auto;
}

.slick-dots {
    display: flex;
    justify-content: center;
    margin-top: 15px;
}

.slick-dots li {
    position: relative;
    width: 12px;
    height: 12px;
    margin: 0 3px;
    padding: 0;
    cursor: pointer;
}

.slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 20px;
    height: 20px;
    padding: 5px;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}

.slick-dots li button::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 6px;
    height: 6px;
    content: '';
    text-align: center;
    border-radius: 6px;
    border: 1px solid #cccccc;
    background-color: #fff;
}

.slick-dots li.slick-active button::before {
    background-color: #ccc;
}
.slick-arrow {
  background-color: transparent;
  bottom: 0;
  margin: auto;
  position: absolute;
  top: 0;
  width: 10px;
  height: 10px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  padding: 0;
    text-indent: -9999;
    overflow: hidden;
    z-index: 99;
}
.slick-prev {
  border-bottom: 3px solid #2378d7;
  border-left: 3px solid #2378d7;
  border-right: none;
  border-top: none;
  left: -15px;
    transform: rotate(45deg);
}
.slick-next {
  border-bottom: 3px solid #2378d7;
  border-left: none;
  border-right: 3px solid #2378d7;
  border-top: none;
  right: -15px;
    transform: rotate(-45deg);
}


/* single */
.single-date {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    font-family: 'Roboto', sans-serif;
    color: #2378D7;
    padding-bottom: 15px;
    margin-bottom: 35px;
    border-bottom: 1px solid #CCCCCC;
}

.single-content .the-content {
    margin-bottom: 130px;
}

.single-content .the-content p {
    margin-bottom: 1.5em;
    line-height: 1.75;
}

.single-content a {
    text-decoration: underline;
}

.single-content a:hover {
    text-decoration: none;
}


/* PC */
@media only screen and (min-width: 912px) {
    .single-content .the-content {
        display: flex;
        justify-content: space-between;
        width: 100%;
    }
}

/* SP */
@media only screen and (max-width: 912px) {
    .single-date {
        font-size: 16px;
        font-size: 1.6rem;
    }

    .single-content_thumb {
        margin: 40px auto;
        text-align: center;
    }
}



/* Misc & mixens
-------------------------------------------------------------- */
.en {
    font-family: 'Roboto', sans-serif;
}

.fb {
    font-weight: bold;
}

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

.attention {
    color: #c81428;
}

a.blue,
.text-blue{
    color: #2378d7;
}


.red_btn {
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 364px;
    margin: 0 0 0 auto;
    background: linear-gradient(to bottom, #E10A14, #C81428);
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    color: #fff;
    line-height: 56px;
    border-radius: 28px;
    transition: .3s;
}

.red_btn:hover {
    background: linear-gradient(to bottom, #f10A14, #d81428);
}

.red_btn:before {
    content: '';
    width: 26px;
    height: 28px;
    display: block;
    background: url(img/common/icon-cart.png) no-repeat center center;
}

.red_btn:after {
    content: '';
    width: 6px;
    height: 6px;
    display: block;
    border-right: 3px solid #FFFFFF;
    border-top: 3px solid #FFFFFF;
    transform: rotate(45deg);
    margin-left: 10px;
}


.blue_btn {
    position: relative;
    display: inline-block;
    max-width: 364px;
    margin: 0 0 0 auto;
    padding: 0 60px;
    background: linear-gradient(to bottom, #238cd7, #2378d7);
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    color: #fff;
    line-height: 56px;
    border-radius: 28px;
    transition: .3s;
}

.blue_btn:hover {
    background: linear-gradient(to bottom, #3d9de2, #2378d7);
}

.blue_btn:after {
    position: absolute;
    top: calc(50% - 3px);
    right: 20px;
    content: '';
    width: 6px;
    height: 6px;
    display: block;
    border-right: 3px solid #FFFFFF;
    border-top: 3px solid #FFFFFF;
    transform: rotate(45deg);
    margin-left: 10px;
}

.blue-border_btn {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 364px;
    margin: 0 auto;
    padding: 0 30px;
    background: #fff;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    color: #2378d7;
    line-height: 56px;
    border-radius: 28px;
    border: 1px solid #2378d7;
    transition: .3s;
}

.blue-border_btn:hover {
    background: #2378d7;
    color: #fff;
}

.blue-border_btn:after {
    content: '';
    width: 6px;
    height: 6px;
    display: block;
    border-right: 3px solid #2378d7;
    border-top: 3px solid #2378d7;
    transform: rotate(45deg);
    margin-left: 10px;
}

.blue-border_btn:hover:after {
    border-right: 3px solid #fff;
    border-top: 3px solid #fff;
}

.yellow_btn {
    position: relative;
    display: inline-block;
    max-width: 364px;
    margin: 0 0 0 auto;
    padding: 0 60px;
    background: #ffe600 url(img/flow/icon-flow-btn.png) no-repeat right 25px center;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    color: #222222;
    line-height: 56px;
    border-radius: 28px;
    opacity: 1;
}

.yellow_btn:hover {
    background: #ffe600 url(img/flow/icon-flow-btn.png) no-repeat right 25px center;
}


/* PC */
@media only screen and (min-width: 912px) {
    .sp {
        display: none !important;
    }

    .border-blue_btn:hover {
        background-color: #2378d7;
        color: #fff;
    }

    .border-blue_btn {
        color: #2378d7;
        display: inline-block;
        background-color: #fff;
        border: 1px solid #2378d7;
        border-radius: 20px;
        line-height: 40px;
        padding: 0 30px;
        transition: .3s;
    }
}

/* SP */
@media only screen and (max-width: 912px) {
    .pc {
        display: none !important;
    }
    .blue-border_btn{
        padding: 0 20px;
    font-size: 16px;
    font-size: 1.6rem;
    }
    .border-blue_btn:not(.page-newproducts_btn) {
        color: #2378d7;
        display: inline-block;
        background-color: #fff;
        border: 1px solid #2378d7;
        border-radius: 20px;
        line-height: 40px;
        padding: 0 30px;
        transition: .3s;
    }
}


/* Top
-------------------------------------------------------------- */
.top-slider .slick-slide img {
    border-radius: 20px;
    box-shadow: 3px 8px 5px 0  rgba(0, 0, 0, .2);
    margin: 0 20px 20px;
    width: calc(916/1260 * 100vw);
    height: calc(490/1260 * 100vw);
    object-fit: cover;
}
@media only screen and (min-width: 1260px) {/* サイズ固定、はみ出しカット */
    .top-slider .slick-slide img {
        width: 916px;
        height: 490px;
    }
}
.slide-arrow{
    width: 44px;
    height: 44px;
    z-index: 99;
}
.top-slider .prev-arrow{
    top:0;
    left:11.7%;
    transform: rotate(180deg);
}
.top-slider .next-arrow{
    top:0;
    right:11.7%;
}


.top-news_shoulder{
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #2378D7;
}
.top-news_title{
    position: relative;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1;
    width: 271px;
    height: 36px;
    padding: 5px 15px 0;
    background-color: #2378D7;
    color: #fff;
}  
.top-news_title big {
    font-size: 25px;
    font-size: 2.5rem;
    font-family: 'Roboto', sans-serif;
}
.top-news_title:after {
    position: absolute;
    right: -36px;
    top: 0;
    content: '';
    display: inline-block;
    width: 36px;
    height: 36px;
    border-left: 36px solid #2378D7;
    border-top: 36px solid transparent;
    box-sizing: border-box;
}
.top-news_btn{
    font-size: 14px;
}
.top-news_btn:before{
    content: '';
    display: inline-block;
    width: 8px;
    height: 10px;
    border-left: 8px solid #2378D7;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    box-sizing: border-box;
    margin-right: 8px;
}

.top-news_item{
    display: flex;
    font-size: 14px;
    font-size: 1.4rem;
    padding: 14px 0;
}
.top-news_item:not(:last-child){
    border-bottom: 1px solid #dddddd;
}
.top-news_date{
    position: relative;
    flex-basis: 113px;
    font-weight: bold;
    font-family: 'Roboto', sans-serif;
    padding: 0 10px 0 30px;
}
.top-news_date.top-news_new:before,
.single-date.top-news_new:before{
    position: absolute;
    left: 0;
    top: 3px;
    content: 'NEW';
    font-size: 10px;
    color: #c81428;
}
.single-date.top-news_new:before{
    position: relative;
    top: auto;
    margin-right: 6px;
    font-size: 12px;
}
.top-news_text{
}
.top-news_cat{
    white-space:nowrap;
}
.single-category{
    margin-left: 10px;
}
.top-news_cat img,
.single-category img{
    margin-right: 6px;
    width: 100px;
}
.top-news_textInner{
    margin-left: 6px;
}

.top-search {
    background: url(img/common/inc-footer-bg.png) repeat;
    padding: 40px 0;
    text-align: center;
}
.top-search_container{
    background: #fff;
    padding: 50px 60px;
}
.top-search_title{
    font-size: 30px;
    font-size: 3rem;
    line-height: 1.2;
    margin-bottom: 15px;
}
.top-search_title small{
    display: block;
    color: #2378d7;
    font-size: 16px;
    font-size: 1.6rem;
}

.top-search_bar dt{
    color: #fff;
    font-size: 22px;
    font-size: 2.2rem;
    font-weight: bold;
    width: 142px;
    padding: 0 4px 0 0;
    text-align: center;
}
.top-search_form{
    position: relative;
}
.top-search_text{
    border: none;
    background-color: #fff;
    width: 570px;
    height: 76px;
    border-radius: 0;
    padding: 0 15px;
}
.top-search_form input.btn-search{
    position: absolute;
    right: 15px;
    top: calc(50% - 20px);
    width: 41px;
    height: 41px;
    background-size: 41px 41px;
}

.top-searchCategory_title{
    background-color: #ffe600;
    text-align: center;
    border-radius: 12px;
    padding: 15px;
    font-size: 22px;
    font-size: 2.2rem;
}
.top-searchCategory_listItem a{
    display: block;
}
.top-searchCategory_listItem a:hover{
    background-color: #fff7b2;
}

.top-searchBanner_title{
    font-size: 22px;
    font-size: 2.2rem;
    font-weight: bold;
}
.top-searchBanner_img{
    margin-top: 15px;
}
.top-searchContact{
    background-color: #2378d7;
    padding: 38px 60px;
}
.top-searchContact .page-estimateFinish_contact{
    margin: 0 auto;
}

.top-newitems,
.top-catalogs{
    padding-top: 75px;
}
.top-newitems_slider,
.top-catalogs_slider{
    margin-bottom: 20px;
}
.top-newitems .slick-arrow,
.top-catalogs_slider .slick-arrow{
    width: 12px;
    cursor: pointer;
}
.top-newitems .prev-arrow,
.top-catalogs_slider .prev-arrow{
    left: -12px;
    transform: rotate(180deg);
}
.top-newitems .next-arrow,
.top-catalogs_slider .next-arrow{
    right: -12px;
}
.top-newitems-item{
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 2px 6px 0 rgba(0, 0, 0, .2);
    font-size: 14px;
    font-size: 1.4rem;
    margin: 0 12px 15px 12px;
}
.top-catalogs-item{
    font-size: 14px;
    font-size: 1.4rem;
    margin: 10px 19px 0 19px;
    text-align: center;
}
.top-newitems_date{
    color: #2378d7;
    font-weight: bold;
    font-family: 'Roboto',sans-serif;
    padding: 15px 18px 0;
}
.top-catalogs-item img{
    box-shadow: 0 2px 6px 0 rgba(0, 0, 0, .2);
    margin-bottom: 20px;
}
.top-newitems_text{
    padding: 0 18px 15px;
}
.top-newitems .border-blue_btn,
.top-catalogs .border-blue_btn{
    font-size: 14px;
    font-size: 1.4rem;
    padding-left: 50px;
    padding-right: 50px;
}

/* PC */
@media only screen and (min-width: 912px) {
.top-news{
    margin: 20px auto;
}
.top-search_bar{
    background-color: #2378d7;
    border: 4px solid #2378d7;
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 720px;
    margin: 0 auto 50px;
    box-shadow: 3px 8px 5px 0 rgba(0, 0, 0, .2);
}
.top-searchCategory_list{
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 53px;
}
.top-searchCategory_listItem{
    flex-basis: calc(calc(100% - 30px) / 4);
    margin-top: 10px;
}
.top-searchCategory_listItem:not(:nth-child(4n)){
    margin-right: 10px;
}
.top-searchCategory_listItem a{
    border: 1px solid #cccccc;
    border-radius: 8px;
    padding: 20px;
    font-weight: bold;
}
}

/* SP */
@media only screen and (max-width: 912px) {
    .top-slider{
        margin-top: 10px;
    }
    .top-slider .slick-slide img {
        margin: 0 7px 20px;
    }
    .slide-arrow{
        width: 21px;
        height: 21px;
    }
    .top-slider .prev-arrow{
        left:9%;
    }
    .top-slider .next-arrow{
        right:9%;
    }
    
    .top-news_date{
        display: flex;
        align-items: center;
        padding-left: 0;
        font-size: 12px;
    }
    .top-news_date.top-news_new:before{
        position: relative;
        margin: 0 6px 0 0;
        top: 1px;
    }
    .top-news_item{
        flex-wrap: wrap;
    }
.top-news_title {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 28px;
    padding-top: 3px;
    width: auto;
    box-sizing: border-box;
}
    .top-news_cat img:last-child{
        margin-right: 0;
    }
    .top-news_text{
        flex-basis: 100%;
        width: 100%;
    }
    .top-news_next{
        position: relative;
        text-align: center;
        color:#2378d7;
        font-size: 14px;
        padding-bottom: 20px;
        margin: 10px auto;
    }
    .top-news_next.top-news_next--op{
        display: none;
    }
    .top-news_next:after{
        position: absolute;
        left: calc(50% - 4px);
        bottom: 10px;
        content: '';
        display: block;
        width: 8px;
        height: 8px;
        border-left: 1px solid #2378d7;
        border-bottom: 1px solid #2378d7;
        transform: rotate(-45deg);
        box-sizing: border-box;
    }
    
.top-search {
    padding: 20px 15px;
}
.top-search_container{
    padding: 30px 25px;
}
.top-search_title{
    font-size: 22px;
    font-size: 2.2rem;
}
.top-search_title small{
    font-size: 12px;
    font-size: 1.2rem;
}
    
.top-search_bar{
    margin-bottom: 30px;
}
.top-search_bar dt{
    display: none;
}
.top-search_text{
    border: 2px solid #2378d7;
    width: 100%;
    height: 46px;
    padding: 0;
}
.top-search_form input.btn-search{
    right: 10px;
    top: calc(50% - 12px);
    width: 24px;
    height: 24px;
    background-size: 24px 24px;
}

.top-searchCategory_title{
    position: relative;
    padding: 10px 15px;
    font-size: 16px;
    font-size: 1.6rem;
    margin-bottom: 10px;
}
    .top-searchCategory_title:before{
        content: '+';
        position: absolute;
        display: block;
        left: 15px;
        top: calc(50% - 13px);
        line-height: 1;
        font-size: 26px;
        font-size: 2.6rem;
    }
    .top-searchCategory_title--op{
        margin-bottom: 0;
    }
    .top-searchCategory_title--op:before{
        content: '-';
    }
.top-searchCategory_list{
    display: none;
    margin-bottom: 10px;
}
.top-searchCategory_listItem a{
    border-bottom: 1px solid #cccccc;
    padding: 10px 0;
    text-align: left;
}
.top-searchBanner_title{
    font-size: 16px;
    font-size: 1.6rem;
    margin-top: 20px;
}
.top-searchBanner_img{
    margin-top: 10px;
}
.top-searchContact{
    padding: 20px;
}
    
.top-newitems,
.top-catalogs{
    padding: 45px 0 0;
}
    .top-newitems_slider,
    .top-catalogs_slider{
        margin-bottom: 5px;
    }
.top-newitems-item{
    width: 44.7vw;
}
.top-catalogs-item{
    width: 42.5vw;
    margin: 10px 19px 10px 19px;
    text-align: center;
}
    .top-newitems_slider .slick-prev,
    .top-catalogs_slider .slick-prev{
        left: calc(28% - 18px);
    }
    .top-newitems_slider .slick-next,
    .top-catalogs_slider .slick-next{
        right: calc(28% - 18px);
    }
.top-newitems_date{
    color: #2378d7;
    font-weight: bold;
    font-family: 'Roboto',sans-serif;
    padding: 15px 18px 0;
}
.top-catalogs-item img{
    margin-bottom: 10px;
}
.top-newitems_text{
    padding: 0 18px 15px;
}
}



/* News
-------------------------------------------------------------- */
/* 一覧 */
#content.archive-news_content {
    margin-bottom: 130px;
}

.archive-news_post {
    font-size: 18px;
    font-size: 1.8rem;
    margin: 0;
    border-top: 1px solid #CCCCCC;
}

.archive-news_post:last-child {
    border-bottom: 1px solid #CCCCCC;
}

.archive-news_link {
    position: relative;
    display: flex;
    align-items: center;
    padding: 15px 0 15px 35px;
}

.archive-news_date {
    margin-right: 25px;
    font-family: 'Roboto', sans-serif;
    font-weight: bold;
}
.archive-news_new{
    position: absolute;
    font-size: 12px;
    color: #c81428;
    top: 20px;
    left: 0;
    font-weight: bold;
    font-family: 'Roboto', sans-serif;
}
.archive-news_category img{
    margin-right: 6px;
    width: 100px;
}
.archive-news_category img:last-child{
    margin-right: 12px;
}
.archive-news_link h2{
    font-weight: normal;
}

/* SP */
@media only screen and (max-width: 912px) {
    .archive-news_link{
        flex-wrap: wrap;
        font-size: 14px;
        padding-left: 27px;
    }
    .archive-news_new{
        top: 17px;
        font-size: 10px;
    }
    .archive-news_date{
        font-size: 12px;
        margin-right: 6px;
    }
    .archive-news_category img{
        width: 95px;
    }
    .archive-news_link h2{
        margin-top: 5px;
        width: 100%;
    }
}



/* Catalog
-------------------------------------------------------------- */
/* 一覧 */
.archive-catalog_post {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.archive-catalog_thumb img {
    box-shadow: 3px 8px 5px 0 rgba(0, 0, 0, .2);
    margin-bottom: 15px;
}

.archive-catalog_title {
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: normal;
    text-align: center;
}

/* PC */
@media only screen and (min-width: 912px) {
    .archive-catalog_item {
        flex-basis: 13.7%;
        margin-bottom: 45px;
    }

    .archive-catalog_item:not(:nth-child(6n)) {
        margin-right: 2%;
    }
}

/* SP */
@media only screen and (max-width: 912px) {
    .archive-catalog_item {
        flex-basis: 45.82%;
        margin-bottom: 30px;
    }
    .archive-catalog_thumb img {
        width: 100%;
        object-fit: contain;
    }
}



/* Products
-------------------------------------------------------------- */
/* 一覧 */
.products-title {
    font-size: 30px;
    font-size: 3rem;
    border-bottom: 2px solid #2378D7;
    padding: 0 10px 10px;
    margin-bottom: 20px;
    text-align: left;
}

.archive-products_label {
    background-color: rgba(35, 120, 215, .2);
    display: flex;
    justify-content: space-between;
    font-size: 12px;
    font-size: 1.2rem;
}

.archive-products_labelItem {
    padding: 5px;
}

.archive-products_item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 5px 0;
}

.archive-products_item:nth-child(2n) {
    background-color: #F2F2F2;
}

.archive-products_thumb,
.archive-products_labelItem:first-child {
    flex-basis: 100px;
}

.archive-products_text {
    flex-basis: calc(100% - 120px);
}

.archive-products_title {
    flex-basis: calc(100% - 155px);
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: normal;
}

.archive-products_labelItem:nth-child(2) {
    flex-basis: calc(100% - 290px);
}

.archive-products_labelItem:last-child,
.archive-products_num {
    flex-basis: 155px;
    padding: 5px;
}

/* PC */
@media only screen and (min-width: 912px) {

    .products-container,
    .single-products-container {
        display: flex;
        justify-content: space-between;
    }

    .archive-products_content,
    .single-products_content {
        order: 2;
        width: calc(100% - 288px);
    }

    .archive-products_text {
        display: flex;
        justify-content: space-between;
    }

    #side {
        order: 1;
        width: 248px;
    }
}

/* SP */
@media only screen and (max-width: 912px) {

    .archive-products_post,
    #content.archive-products_content {
        margin-bottom: 25px;
    }

    .products-title {
        font-size: 20px;
        font-size: 2rem;
        padding: 0 5px;
        margin-bottom: 5px;
    }

    .archive-products_label {
        display: none;
    }

    .archive-products_num {
        font-size: 11px;
        font-size: 1.1rem;
        padding: 0;
    }

    .post-type-archive-products .footerOption-banner,
    .single-products .footerOption-banner {
        display: none;
    }

}



/* 詳細 */
.singleProducts-thecontent:after {
    content: '';
    display: block;
    clear: both;
}

.singleProducts-title {
    font-size: 24px;
    font-size: 2.4rem;
    margin-bottom: 35px;
}

.single-slider {
    margin-bottom: 10px;
}

.single-slider img {
    object-fit: contain;
    object-position: center center;
}

.single-slider-nav .slick-track {
    width: 100% !important;
}

.single-slider-nav .slick-slide {
    width: 69px !important;
    margin-bottom: 10px;
}

.single-slider-nav .slick-slide:not(:nth-child(5n)) {
    margin-right: 10px;
}

.single-slider-nav img {
    width: 69px;
    height: 69px;
    object-fit: contain;
    object-position: center center;
}

.singleProducts-size_list {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 40px;
}

.singleProducts-size_item {
    width: 30.22%;
    margin-bottom: 12px;
}
.singleProducts-size_item:not(:nth-child(3n)){
    margin-right: 17px;
}

.singleProducts-size_label {
    display: block;
    border: 1px solid #CCCCCC;
    background-color: #FFf;
    padding: 10px;
    font-size: 14px;
    font-size: 1.4rem;
    border-radius: 5px;
    cursor: pointer;
}

.singleProducts-size_label:hover,
.singleProducts-size_label.selected {
    background-color: #FFFBD9;
    border: 1px solid #2378D7;
    color: #2378D7;
    font-weight: bold;
}

.singleProducts-amount {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.singleProducts-amount_btn {
    background-color: #F2F2F2;
    border: 1px solid #CCCCCC;
    width: 36px;
    line-height: 34px;
    border-radius: 3px;
    margin-left: 5px;
    cursor: pointer;
}

.singleProducts-amount_num {
    background-color: #fff;
    border: 1px solid #CCCCCC;
    width: 62px;
    height: 36px;
    border-radius: 3px;
    margin-left: 5px;
    text-align: center;
}

.singleProducts-cart {
    margin-top: 20px;
}

.singleProducts-cart_btn {
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 364px;
    margin: 0 0 0 auto;
    background: linear-gradient(to bottom, #E10A14, #C81428);
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    color: #fff;
    line-height: 56px;
    border-radius: 28px;
    transition: .3s;
}

.singleProducts-cart_btn:hover {
    background: linear-gradient(to bottom, #f10A14, #d81428);
}

.singleProducts-cart_btn:before {
    content: '';
    width: 26px;
    height: 28px;
    display: block;
    background: url(img/common/icon-cart.png) no-repeat center center;
}

.singleProducts-cart_btn:after {
    content: '';
    width: 6px;
    height: 6px;
    display: block;
    border-right: 3px solid #FFFFFF;
    border-top: 3px solid #FFFFFF;
    transform: rotate(45deg);
    margin-left: 10px;
}


.singleProducts-moreinfo_title {
    font-size: 18px;
    font-size: 1.8rem;
    margin: 50px 0 15px;
}

.singleProducts-moreinfo_table {
    border-bottom: 1px solid #ccc;
    margin-bottom: 30px;
}

.singleProducts-moreinfo_table tr {
    border-top: 1px solid #ccc;
    font-size: 14px;
    font-size: 1.4rem;
}

.singleProducts-moreinfo_table th {
    background-color: rgba(35, 120, 215, .1);
    width: 168px;
    text-align: center;
    font-weight: normal;
    padding: 8px 22px;
    line-height: 1.57;
    vertical-align: middle;
}

.singleProducts-moreinfo_table td {
    padding: 8px 22px;
    line-height: 1.57;
}

.singleProducts-relate_list {
    display: flex;
    margin-top: 15px;
}

.singleProducts-relate_item {
    flex-basis: 140px;
    width: 140px !important;
}

.singleProducts-relate_item a {
    color: #2378d7;
    font-size: 12px;
    font-size: 1.2rem;
    ;
    vertical-align: top;
}

.singleProducts-relate_item img {
    display: block;
    margin-bottom: 10px;
    width: 140px;
    height: 140px;
    object-fit: contain;
    object-position: center;
}



/* PC */
@media only screen and (min-width: 912px) {
    .singleProducts-slide_container {
        width: 390px;
        float: left;
    }

    .singleProducts-title {
        float: right;
        width: 364px;
        font-size: 24px;
        font-size: 2.4rem;
        margin-bottom: 35px;
    }

    .single-slider img {
        width: 390px;
        height: 390px;
    }

    .singleProducts-text {
        width: 364px;
        float: right;
    }

    .singleProducts-relate {
        margin-top: 70px;
    }
    .singleProducts-relate_item:not(:nth-child(5n)) {
        margin-right: 15px;
    }
}

/* SP */
@media only screen and (max-width: 912px) {
    .singleProducts-slide_container .single-slider-nav {
        display: none;
    }

    .singleProducts-size_list {
        margin-bottom: 10px;
    }

    .singleProducts-size_item {
        width: calc(calc(100% - 24px) / 3);
        margin-bottom: 12px;
    }
    .singleProducts-cart_btn {
    font-size: 16px;
    font-size: 1.6rem;
    }

    .singleProducts-moreinfo_table th {
        width: 68px;
        padding: 8px 5px;
    }

    .singleProducts-moreinfo_table td {
        padding: 8px 10px;
    }

    .singleProducts-relate_title {
        margin: 50px 0 15px;
    }
    .singleProducts-relate_list{
        margin:0 0 0 15px;
    }
    .singleProducts-relate_item {
        margin-right: 15px;
    }
}



/* sidebar */
.sidebar-item {
    margin-bottom: 25px;
}

.sidebar-banner_item {
    margin-bottom: 10px;
}

.sidebar-search_form {
    position: relative;
    margin-top: 7px;
}

.sidebar-search_text {
    width: 100%;
}

.sidebar-search_form .btn-search {
    position: absolute;
    right: 8px;
    top: calc(50% - 11px);
}

.sidebar-category_item > span,
.sidebar-category_subitem a {
    display: block;
    border-bottom: 1px solid #ccc;
    padding: 8px 15px;
    transition: .3s;
}

.sidebar-category_item > span {
    background-color: #F2F2F2;
    font-weight: bold;
}

.sidebar-category_subitem a {
    background-color: #fff;
    font-size: 14px;
    font-size: 1.4rem;
    padding: 10px 15px;
}

.sidebar-category_subitem a:hover {
    background-color: #F2F2F2;
}

.sidebar-shop_link {
    display: block;
    margin-top: 10px;
}

/* PC */
@media only screen and (min-width: 912px) {
    .sidebar-title {
        font-size: 16px;
        font-size: 1.6rem;
        font-weight: bold;
        padding: 10px;
        background-color: #2378D7;
        color: #fff;
        line-height: 1;
    }

    .sidebar-category_sublist {
        margin-bottom: 34px;
    }
}

/* SP */
@media only screen and (max-width: 912px) {
    #side {
        position: relative;
        background: url(img/common/inc-footer-bg.png) repeat;
        margin: 0 -20px;
        padding: 20px;
    }

    .sidebar-inner {
        background-color: #fff;
        display: flex;
        flex-wrap: wrap;
        padding: 20px;
    }

    .sidebar-item {
        width: 100%;
    }

    .sidebar-banner_list {
        order: 3;
    }

    .sidebar-search {
        order: 1;
    }

    .sidebar-category {
        order: 2;
    }

    .sidebar-shop {
        order: 4;
        margin: auto;
        text-align: center;
    }

    .sidebar-title {
        text-align: center;
        font-size: 22px;
        font-size: 2.2rem;
        margin-bottom: 10px;
    }

    .sidebar-title small {
        font-size: 14px;
        font-size: 1.4rem;
        font-family: 'Roboto', sans-serif;
        display: block;
        color: #2378D7;
    }

    .sidebar-search_text {
        border: 2px solid #2378D7;
        border-radius: 0;
        padding: 10px 5px;
        box-shadow: 3px 8px 5px 0 rgba(0, 0, 0, .2);
    }

    .sidebar-category_item {
        margin-bottom: 5px;
    }

    .sidebar-category_item > span {
        position: relative;
        border-bottom: none;
        background-color: #FFE600;
        border-radius: 12px;
        text-align: center;
        padding: 15px;
        line-height: 1;
    }

    .sidebar-category_item > span:before {
        position: absolute;
        left: 15px;
        top: calc(50% - 17px);
        content: '+';
        font-size: 30px;
        font-size: 3rem;
    }

    .sidebar-category_item > .sidebar-category_item--op:before {
        content: '-';
    }

    .sidebar-category_sublist {
        display: none;
    }

    .sidebar-banner_list {
        text-align: center;
        margin: auto;
    }

    .sidebar-shop .sidebar-title {
        font-size: 16px;
        font-size: 1.6rem;
        margin-top: 20px;
    }

    .sidebar-shop .sidebar-title .sp span {
        color: #2378D7;
    }
}




/* New Products
-------------------------------------------------------------- */
.page-newproducts_date {
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: bold;
    color: #2378d7;
    margin-top: 10px;
}

.page-newproducts_title {
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: normal;
}

.page-newproducts_list {
    font-size: 12px;
    font-size: 1.2rem;
    display: flex;
}

.page-newproducts_dt {
    margin-right: 1em;
}


/* PC */
@media only screen and (min-width: 912px) {
    .page-newproducts_post {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    .page-newproducts_item {
        flex-basis: 29.63%;
        margin-bottom: 50px;
    }

    .page-newproducts_item > img {
        width: 100%;
        height: 29.63vw;
        max-height: 320px;
        object-fit: cover;
    }

    .page-newproducts_title {
        border-bottom: 1px solid #cccccc;
        padding-bottom: 10px;
        margin-bottom: 10px;
    }

    .page-newproducts_btnContainer {
        text-align: center;
    }

    .page-newproducts_btn {
        margin-top: 20px;
        min-width: 174px;
    }
}

/* SP */
@media only screen and (max-width: 912px) {
    .page-newproducts_item {
        display: flex;
        justify-content: space-between;
        align-items: center;
        width: 100%;
        margin-bottom: 20px;
    }

    .page-newproducts_item > img {
        width: 100px;
        height: 100px;
        object-fit: cover;
    }

    .page-newproducts_text {
        width: calc(100% - 110px);
    }

    .page-newproducts_list {
        display: none;
    }

    .page-newproducts_btnContainer {
        text-align: right;
        margin: 20px auto 0 0;
    }

    .page-newproducts_btn {
        display: flex;
        justify-content: flex-end;
        align-items: center;
        color: #2378d7;
        margin: auto;
        font-size: 12px;
        font-size: 1.2rem;
    }

    .page-newproducts_btn:after {
        content: '';
        display: inline-block;
        width: 6px;
        height: 6px;
        border-top: 2px solid #2378d7;
        border-right: 2px solid #2378d7;
        transform: rotate(45deg);
        margin-left: 5px;
    }
}




/* estimate p1
-------------------------------------------------------------- */
/* お問い合わせ等と共通パーツ 修正注意 */
.page-estimate_ProgressList {
    display: flex;
    border: 1px solid #808080;
    line-height: 38px;
    font-size: 12px;
    color: #808080;
    overflow: hidden;
    margin-bottom: 45px;
}

.page-estimate_ProgressItem {
    flex-basis: 25%;
    position: relative;
    text-align: center;
    background-color: #fff;
}

.page-estimate_ProgressItem.current {
    background-color: #fff7b2;
    color: #222222;
}

.page-estimate_ProgressItem:first-child {
    z-index: 99;
}

.page-estimate_ProgressItem:not(:last-child):before {
    position: absolute;
    top: -2px;
    right: -15px;
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-color: transparent transparent transparent #808080;
    border-width: 22px 0 22px 18px;
    border-style: solid;
    z-index: 10;
}

.page-estimate_ProgressItem:not(:last-child):after {
    position: absolute;
    top: -2px;
    right: -13px;
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-color: transparent transparent transparent #fff;
    border-width: 22px 0 22px 18px;
    border-style: solid;
    z-index: 10;
}

.page-estimate_ProgressItem.current:not(:last-child):after {
    border-color: transparent transparent transparent #fff7b2;
}

.page-estimate_header {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #cccccc;
    padding-bottom: 20px;

}

.page-estimate_title {
    font-size: 24px;
    font-size: 2.4rem;
    position: relative;
    padding-left: 20px;
    line-height: 1;
}

.page-estimate_title:before {
    content: '';
    position: absolute;
    left: 0;
    top: 6px;
    width: 6px;
    height: 6px;
    border: 4px solid #2378d7;
}

.page-estimate_faq {
    color: #2378d7;
    font-size: 14px;
    font-size: 1.4rem;
}

.page-estimate_item {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 30px 0 30px 20px;
    width: 100%;
    border-bottom: 1px solid #cccccc;
    font-size: 14px;
    font-size: 1.4rem;
}

.page-estimate_item > img {
    width: 120px;
    height: 120px;
    object-fit: contain;
    margin-right: 25px;
}

.page-estimate_text {
    flex-basis: calc(100% - 200px);
}

.page-estimate_itemTitle {
    font-size: 20px;
    font-size: 2rem;
}

.page-estimate_itemCode {
    margin-bottom: 20px;
}

.singleProducts-amount_note {
    margin-left: 30px;
    width: 400px;
}

.singleProducts-amount_note input {
    width: 350px;
}

.page-estimate_footer {
    font-size: 14px;
    font-size: 1.4rem;
}

.page-estimate_btnset {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 40px 0 35px;
}

.page-estimate_select {
    color: #222222;
    background-color: #f2f2f2;
    border: 1px solid #cccccc;
    border-radius: 5px;
    padding: 20px 30px;
    transition: .3s;
}

.page-estimate_select:hover {
    background-color: #ccc;
}

.page-estimate_share {
    background-color: #666666;
    padding: 5px;
    width: 100%;
}

.page-estimate_shareTitle {
    font-weight: bold;
    color: #fff;
    flex-basis: 184px;
}

.page-estimate_shareURL {
    flex-basis: calc(100% - 184px);
    background-color: #fff;
    border-radius: 3px;
    padding: 10px 12px;
    overflow: hidden;
}

.page-estimate_shareAttention {
    margin-top: 15px;
}

/* PC */
@media only screen and (min-width: 912px) {

    .page-template-page-estimate .singleProducts-amount {
        position: absolute;
        right: 0;
        bottom: 30px;
    }

    .page-estimate_btnset:after {
        content: ' ';
        display: block;
        width: 174px;
    }

    .page-estimate_share {
        display: flex;
        align-items: center;
    }

    .page-estimate_shareTitle {
        text-align: center;
        padding-right: 5px;
    }

    .page-estimate_shareAttention {
        text-align: center;
    }
}

/* SP */
@media only screen and (max-width: 912px) {
    .page-estimate_ProgressList {
        line-height: 1.2;
        font-size: 10px;
        margin: 10px 20px 24px;
        padding: 0;
    }

    .page-estimate_ProgressItem {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 34px;
        vertical-align: middle;
    }

    .page-estimate_ProgressItem:last-child {
        margin-right: 0;
    }

    .page-estimate_ProgressItem:not(:last-child):before {
        top: -4px;
        right: -15px;
    }

    .page-estimate_ProgressItem:not(:last-child):after {
        top: -4px;
        right: -13px;
    }

    .page-estimate_header {
        padding: 0 0 10px;
        margin: 0 20px;
    }

    .page-estimate_title {
        font-size: 20px;
        font-size: 2.0rem;
    }

    .page-estimate_title:before {
        top: 4px;
    }

    .page-estimate_item {
        flex-wrap: wrap;
        align-items: flex-start;
        padding: 20px 0;
    }

    .page-estimate_item > img {
        width: 100px;
        height: 100px;
        object-fit: contain;
        margin-right: 15px;
    }

    .page-estimate_text {
        flex-basis: calc(100% - 115px);
        font-size: 12px;
        font-size: 1.2rem;
    }

    .page-estimate_itemTitle {
        font-size: 16px;
        font-size: 1.6rem;
    }

    .page-estimate_itemCode {
        font-size: 10px;
        font-size: 1rem;
        margin-bottom: 10px;
    }

    .singleProducts-amount {
        align-self: flex-end;
        text-align: right;
        flex-basis: 100%;
        flex-wrap: wrap;
    }

    .singleProducts-amount_note {
        flex-basis: 100%;
        width: auto;
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-left: 0;
        margin-top: 10px;
    }

    .singleProducts-amount_note input {
        width: calc(100% - 40px);
    }


    .page-estimate_footer {
        font-size: 12px;
        font-size: 1.2rem;
    }

    .page-estimate_btnset {
        flex-wrap: wrap;
        margin: 20px 0 35px;
        text-align: center;
    }

    .page-estimate_btnset > div {
        width: 100%;
    }

    .page-estimate_select {
        display: inline-block;
        padding: 15px 20px;
        margin-bottom: 10px;
    }

    .page-estimate_shareURL {
        flex-basis: calc(100% - 184px);
        background-color: #fff;
        border-radius: 3px;
        padding: 10px 12px;
    }
}




/* estimate p2
-------------------------------------------------------------- */
.page-estimate_attention {
    font-size: 14px;
    font-size: 1.4rem;
    margin-left: 25px;
}

.page-estimate_form {
    margin-bottom: 60px;
}

.page-estimate_formItem dt {
    width: 260px;
}

.page-estimate_formItem dt:before {
    content: '任意';
    display: inline-block;
    background-color: #999999;
    color: #fff;
    padding: 1px 4px;
    margin-right: 8px;
    border-radius: 3px;
    font-size: 12px;
    font-size: 1.2rem;
}

.page-estimate_formItem dt.page-estimate_formNeed:before {
    content: '必須';
    background-color: #c81428;

}

.page-estimate_formItem dd {
    width: calc(100% - 260px);
    font-size: 14px;
    font-size: 1.4rem;
}

div:not(.page-estimate_formConfirm) > .page-estimate_formItem.page-estimate_formGray dd {
    color: #ccc;
}

.page-estimate_formItem dd input[type="text"] {
    width: 352px;
}

.page-estimate_formItem dd input.page-estimate_formShort[type="text"] {
    width: 100px;
}

.page-estimate_formItem dd input[type="tel"] {
    width: 100px;
}

.page-estimate_formItem dd p {
    margin-top: 5px;
}

.page-estimate_termsTitle {
    font-size: 20px;
    font-size: 2rem;
    font-weight: normal;
    margin-bottom: 5px;
}

.page-estimate_termsPre {
    border: 1px solid #CCCCCC;
    border-radius: 3px;
    padding: 20px;
    height: 140px;
    overflow-y: scroll;
    white-space: pre-wrap;
    font-size: 14px;
    font-size: 1.4rem;
}

.page-estimate_formBtn {
    margin-top: 35px;
}

/* PC */
@media only screen and (min-width: 912px) {
    .page-estimate_formItem {
        display: flex;
        border-bottom: 1px solid #ccc;
        padding: 20px;
    }

    .page-estimate_terms {
        padding: 0 13%;
    }
}

/* SP */
@media only screen and (max-width: 912px) {
    .page-estimate_header {
        position: relative;
        padding-bottom: 20px;
    }

    .page-estimate_attention {
        position: absolute;
        left: -25px;
        bottom: 0;
    }

    .page-estimate_formItem {
        margin: 15px;
    }

    .page-estimate_formItem dd {
        width: 100%;
        margin-top: 5px;
    }

    .page-estimate_formItem dd input[type="text"] {
        width: 100%;
    }

    .page-estimate_formItem dd input.page-estimate_formShort[type="text"] {
        width: 25%;
    }

    .page-estimate_formItem dd input[type="tel"] {
        width: 25%;
    }
}




/* estimate p3
-------------------------------------------------------------- */
.page-estimate_products.container {
    margin-bottom: 60px;
}
.page-estimateConfirm_terms{
    padding: 20px;
    font-size: 20px;
    font-size: 2rem;
}


/* PC */
@media only screen and (min-width: 912px) {
.page-estimateConfirm_terms{
    text-align: center;
    border-bottom: 1px solid #ccc;
}
}

/* SP */
@media only screen and (max-width: 912px) {
    .page-estimate_products .singleProducts-amount{
        align-self: flex-start;
        text-align: left;
        justify-content: flex-start;
}
.page-estimateConfirm_terms{
    padding: 15px;
    }
    .page-estimate_select{
        margin-bottom: 20px;
    }
    
}




/* estimate p4
-------------------------------------------------------------- */
.page-estimate_finishText{
    padding: 60px 20px;
}
.page-estimate_finishText > p{
    margin-bottom: 2em;
    line-height: 1.75;
}
.page-estimateFinish_contact{
    background-color: #f2f2f2;
    border-radius: 12px;
    margin: 60px auto;
    padding: 20px;
}
.page-estimateFinish_contact .page-estimate_itemTitle{
    flex-basis: 165px;
}
.page-estimateFinish_contact .footerOption-submenu_h3Fax{
    flex-basis: 260px;
    padding-left: 25px;
}
.page-estimateFinish_contact .page-estimate_text{
    flex-basis: 300px;
}
.page-estimateFinish_contact .footerOption-submenu_h4 {
    margin-top: 0;

}

/* PC */
@media only screen and (min-width: 912px) {
.page-estimateFinish_contact{
    display: flex;
    align-items: center;
}
.page-estimateFinish_contact .footerOption-submenu_h3{
    flex-basis: 235px;
    border:none;
    border-left:1px solid #ccc;
}
.page-estimateFinish_contact .footerOption-submenu_h3{
    padding: 25px 0 25px 25px;
}
}

/* SP */
@media only screen and (max-width: 912px) {
    .page-estimateFinish_contact{
        margin-bottom: 0;
    }
.page-estimate_finishText{
    padding: 20px 30px;
}
.page-estimateFinish_contact .page-estimate_itemTitle{
    text-align: center;
    border-bottom:1px solid #ccc;
    padding-bottom: 10px;
}
.page-estimateFinish_contact .footerOption-submenu_h3{
    padding: 20px 0 10px;
}
    .page-estimateFinish_contact .page-estimate_text{
        text-align: center;
        padding-bottom: 20px;
    }
}




/* contact
-------------------------------------------------------------- */
.page-contact_ProgressList .page-estimate_ProgressItem{
    flex-basis: calc(100% / 3);
}




/* recruit
-------------------------------------------------------------- */
.page-recruit_title{
    background-color: #65a0e3;
    color: #fff;
    font-size: 20px;
    font-size: 2rem;
    padding: 5px 15px;
}
.page-recruit_item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 20px;
    width: 100%;
    border-bottom: 1px solid #cccccc;
}

.page-recruit_item dt{
    width: 140px;
}
.page-recruit_item dd {
    flex-basis: calc(100% - 140px);
}
.page-recruit_btn{
    text-align: center;
    margin: 15px auto 70px;
}

.page-recruit_attention{
    text-align: right;
    font-size: 14px;
    font-size: 1.4rem;
    border-bottom: 1px solid #cccccc;
    padding-bottom: 15px;
}
.page-recruit_container{
    border-top: 1px solid #cccccc;
}

/* PC */
@media only screen and (min-width: 912px) {}

/* SP */
@media only screen and (max-width: 912px) {
    .page-recruit_title{
        text-align: center;
    font-size: 16px;
    font-size: 1.6rem;
    }
    .page-recruit_item {
    padding: 15px 0;
    font-size: 14px;
    font-size: 1.4rem;
}
.page-recruit_item dt{
    width: 75px;
}
.page-recruit_item dd {
    flex-basis: calc(100% - 75px);
}
}




/* partner recruit
-------------------------------------------------------------- */

.partner-tel_btn {
    font-weight: bold;
    font-size: 36px;
    font-size: 3.6rem;
    color:#2378d7;
    background: url(img/partner/icon-tel-blue.png) no-repeat left calc(50% + 2px);
    padding-left: 30px;
}



/* company
-------------------------------------------------------------- */
.page-company_title{
    background-color: rgba(35,120,215,.1);
}

/* PC */
@media only screen and (min-width: 912px) {
.page-company_list{
    border-top: 1px solid #cccccc;
}
.page-company_item{
    display: flex;
    border-bottom: 1px solid #cccccc;
}
.page-company_title{
    width: 285px;
    padding: 20px 22px;
}
.page-company_text{
    width: calc(100% - 285px);
    padding: 20px 22px;
}
}

/* SP */
@media only screen and (max-width: 912px) {
    .page-company_list{
        font-size: 14px;
        font-size: 1.4rem;
    }
    .page-company_item{
        margin-bottom: 10px;
    }
    .page-company_title,
    .page-company_text{
        padding: 5px 10px;
    }
}



/* access
-------------------------------------------------------------- */
.page-access_map{
    margin-bottom: 70px;
}
.page-access_subtitle{
    background-color: #65a0e3;
    padding: 10px;
    text-align: center;
    color: #fff;
    font-size: 24px;
    font-size: 2.4rem;
}
.page-access_img img{
    width: 100%;
    margin-bottom: 20px;
}
.page-access_btn .blue-border_btn{
    margin: 0 13px;
    border-width: 2px;
}

/* PC */
@media only screen and (min-width: 912px) {
.footerOption-access_list.page-access_list{
    margin-bottom: 35px;
}
.footerOption-access_list.page-access_list .footerOption-access_item {
    width: 18.0%;
}
.page-access_btn{
    display: flex;
    justify-content: center;
    margin: 0 auto;
}
}

/* SP */
@media only screen and (max-width: 912px) {
.footerOption-access_list.page-access_list{
    margin-bottom: 20px;
    justify-content: flex-start;
}
.footerOption-access_list.page-access_list .footerOption-access_item{
    flex-basis: 100px;
    width: 100px;
}
    .footerOption-access_list.page-access_list .footerOption-access_link,
    .footerOption-access_list.page-access_list .footerOption-access_link:hover{
        border:none;
        background-color: transparent;
        padding: 0;
        text-align: left;
        color: #2378d7;
    }
    .footerOption-access_list.page-access_list .footerOption-access_link:before {
    content: '';
    width: 6px;
    height: 6px;
    display: inline-block;
    border-right: 3px solid #2378d7;
    border-top: 3px solid #2378d7;
    transform: rotate(45deg);
    margin-right: 10px;
}
    .page-access_map{
    margin-bottom: 35px;
}
.page-access_subtitle{
    padding: 5px 10px;
    font-size: 16px;
    font-size: 1.6rem;
}
.page-access_img img{
    margin-bottom: 15px;
}
.page-access_btn .blue-border_btn{
    margin: 0 auto 10px;
    padding: 0 15px;
    line-height: 45px;
    width: 220px;
}

}



/* faq
-------------------------------------------------------------- */
.page-faq_item{
    border-bottom: 1px solid #ccc;
    padding: 20px;
}
.page-faq_q{
    position: relative;
    background: url(img/faq/icon-q.png) no-repeat left 23px top;
    background-size: 35px auto;
    padding-left: 75px;
    min-height: 35px;
    font-size: 22px;
    font-size: 2.2rem;
    font-weight: bold;
}
.page-faq_q:before{
    position: absolute;
    left: 0;
    top:13px;
    content: '';
    width: 8px;
    height: 8px;
    display: inline-block;
    border-right: 3px solid #2378d7;
    border-top: 3px solid #2378d7;
    transform: rotate(45deg);
    transition: .3s;
}
.page-faq_q--op:before{
    transform: rotate(135deg);
    top:10px;
}
.page-faq_a{
    display: none;
    background: url(img/faq/icon-a.png) no-repeat left 23px top;
    background-size: 35px auto;
    padding-left: 75px;
    padding-top: 5px;
    margin-top: 10px;
    min-height: 35px;
}

/* PC */
@media only screen and (min-width: 912px) {
    
}

/* SP */
@media only screen and (max-width: 912px) {
.page-faq_item{
    padding: 15px 0;
}
.page-faq_q{
    background: url(img/faq/icon-q.png) no-repeat left 20px top;
    background-size: 30px auto;
    padding-left: 65px;
    min-height: 30px;
    font-size: 16px;
    font-size: 1.6rem;
}
.page-faq_q:before{
    top:10px;
    width: 6px;
    height: 6px;
}
.page-faq_a{
    background: url(img/faq/icon-a.png) no-repeat left 20px top 5px;
    background-size: 30px auto;
    padding-left: 65px;
    font-size: 14px;
    font-size: 1.4rem;
    margin-top: 0;
}
    
}




/* privacy
-------------------------------------------------------------- */
.page-privacy_shoulder{
    margin-bottom: 20px;
}
.page-privacy_subtitle{
    font-size: 20px;
    font-size: 2rem;
    font-weight: bold;
    color: #2378d7;
    border-bottom: 1px solid #cccccc;
    padding-bottom: 5px;
    margin-bottom: 10px;
    margin-top: 30px;
}
.page-privacy_main ul{
    margin-left: 0;
}
.page-privacy_main li{
    position: relative;
    padding-left: 32px;
}
.page-privacy_main li:before{
    position: absolute;
    left: 13px;
    content: '・';
}

/* PC */
@media only screen and (min-width: 912px) {
.page-privacy_main{
    margin-bottom: 50px;
}
}

/* SP */
@media only screen and (max-width: 912px) {
    .page-privacy_shoulder,
    .page-privacy_main{
    font-size: 14px;
    font-size: 1.4rem;
}
.page-privacy_subtitle{
    font-size: 16px;
    font-size: 1.6rem;
    padding-bottom: 2px;
    margin-bottom: 5px;
    }
.page-privacy_main{
    margin-bottom: 40px;
}
    .page-privacy_container .page-estimateFinish_contact{
        max-width: 280px;
    }
}




/* sitemap
-------------------------------------------------------------- */
.page-sitemap_item{
    position: relative;
    padding-left: 25px;
    margin-bottom: 40px;
}
.page-sitemap_access.page-sitemap_item ~ .page-sitemap_item{
    margin-bottom: 25px;
}
.page-sitemap_item > a{
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
}
.page-sitemap_item:before{
    position: absolute;
    left: 0;
    top: 5px;
    content: '';
    width: 8px;
    height: 8px;
    display: inline-block;
    border-right: 3px solid #2378d7;
    border-top: 3px solid #2378d7;
    transform: rotate(45deg);
    transition: .3s;
}

.page-sitemap_item2{
    margin-top: 20px;
}

.page-sitemap_list3{
    display: flex;
    flex-wrap: wrap;
    padding: 10px 10px 0;
}
.page-sitemap_list3 li{
    flex-basis: 250px;
    font-size: 14px;
    font-size: 1.4rem;
    margin-bottom: 5px;
}

/* PC */
@media only screen and (min-width: 912px) {
.page-sitemap_item2 > a{
    display: block;
    background-color: #f2f2f2;
    padding: 8px 10px;
    font-weight: bold;
}
}

/* SP */
@media only screen and (max-width: 912px) {
.page-sitemap_item{
    margin-bottom: 25px;
}
    .page-sitemap_item ul{
        display: none;
    }
    .page-sitemap_item2 {
        position: relative;
        border-bottom: none;
    }
    .page-sitemap_item2 > a{
        display: block;
        background-color: #FFE600;
        border-radius: 12px;
        text-align: center;
        padding: 15px;
        line-height: 1;
    }
    .page-sitemap_icon{
        position: absolute;
        left: 0;
        top: 2px;
        width: 20px;
        height: 20px;
    }

    .page-sitemap_itemParent2:before {
        position: absolute;
        left: 10px;
        top: -4px;
        content: '+';
        font-size: 30px;
        font-size: 3rem;
        padding: 2px 5px;
    }

    .page-sitemap_itemParent2--op:before {
        content: '-';
    }
    
    .page-sitemap_list3 li{
        border-bottom: 1px solid #ccc;
        padding-bottom: 5px;
    }
}



/* report 22.4.27
-------------------------------------------------------------- */
.page-report_list{
    margin-top: 30px;
}

.page-report_list .archive-catalog_item:first-child{
    width: 29.4%;
}

/* PC */
@media only screen and (min-width: 912px) {
.page-report_list:after{
    content: '';
    display: block;
    clear: both;
}
    .page-report_list .archive-catalog_item{
        float: left;
        width: 130px;
        margin-bottom: 20px;
        opacity: 1;
        transition: .3s;
    }
    .page-report_list .archive-catalog_item:hover{
        opacity: .7;
    }
    .page-report_list .archive-catalog_item:not(:first-child) .archive-catalog_thumb img {
        width: 130px;
        height: 198px;
        object-fit: cover;
        margin-bottom: 8px;
    }
}

/* SP */
@media only screen and (max-width: 912px) {
    .page-report_list {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .page-report_list .archive-catalog_item {
        flex-basis: 45.82%;
        margin-bottom: 30px;
    }
    .page-report_list .archive-catalog_item:first-child{
        flex-basis: 100%;
    }
    .page-report_list .archive-catalog_thumb img {
        width: 100%;
        object-fit: contain;
    }
}



/* flow 22.8.31
-------------------------------------------------------------- */
.page-flow_content .the-content > *{
    max-width: 866px;
    margin: 0 auto;
}
.page-flow_item{
    position: relative;
    padding: 40px 0 50px 170px;
    background: url(img/flow/icon-flow01.svg) no-repeat left 38px center;
    background-size: auto 114px; 
}
.page-flow_item:nth-child(2){
    background: url(img/flow/icon-flow02.svg) no-repeat left 42px center;
    background-size: auto 114px; 
    
}
.page-flow_item:nth-child(3){
    background: url(img/flow/icon-flow03.svg) no-repeat left 50px center;
    background-size: auto 114px; 
    
}
.page-flow_item:not(:last-child){
    border-bottom: 1px solid #222222;
}
.page-flow_item:not(:last-child):after{
    position: absolute;
    bottom: -8px;
    left: calc(50% - 7px);
    content: '';
    width: 14px;
    height: 14px;
    background-color: #fff;
    border-right: 1px solid #222222;
    border-bottom: 1px solid #222222;
    transform: rotate(45deg);
}
.page-flow_item h2{
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1.4;
    margin-bottom: 12px;
}
.page-flow_item h2 span{
    display: block;
    font-size: 18px;
    font-size: 1.8rem;
    color: #2378d7;
}

.page-flow_btn,
.page-flow_content .the-content > .page-flow_btn{
    margin: 60px auto;
}

/* SP */
@media only screen and (max-width: 912px) {
.page-flow_item,
    .page-flow_item:nth-child(2),
    .page-flow_item:nth-child(3){
    padding: 30px 0 40px;
    background: none;
}
    .page-flow_item h2{
        position: relative;
        padding-left: 60px;
        background: url(img/flow/icon-flow01.svg) no-repeat left center;
        background-size: 52px 52px; 
    }
    .page-flow_item:nth-child(2) h2{
        background: url(img/flow/icon-flow02.svg) no-repeat left center;
        background-size: 50px 52px; 

    }
    .page-flow_item:nth-child(3) h2{
        background: url(img/flow/icon-flow03.svg) no-repeat left center;
        background-size: 40px 52px; 

    }
.page-flow_btn,
.page-flow_content .the-content > .page-flow_btn{
    margin: 0 auto 33px;
}
}




/* #Media Queries
================================================== */


/* PC */
@media only screen and (min-width: 912px) {}

/* SP */
@media only screen and (max-width: 912px) {}
