#boomerang_s {
    padding-left: 15px;
    padding-right: 15px;
}
#boomerang_s .container, #boomerang_s .container2 {
    padding-left: 15px;
    padding-right: 15px;
}
#boomerang_s section {
    margin: 0 -30px;
    width: 100vw;
}
.boomerang_s_wrap {
    width: 100%;
    max-width: 1080px;
    margin: 0 auto;
}
#boomerang_main .inquiry_link li {
    padding: 0;
    margin: 10px 0;
}
#content {
    position: relative;
}
#content_01 {
    width: 100%;
    max-width: 265px;
}
#content_02 {
    position: absolute;
    bottom: 0;
    right: -15px;
}
.main_ph figure img {
    width: 100%;
    height: auto;
    max-width: 120px;
}
.inquiry_link .download_materials p a {
    display: inline-block;
    border-radius: 30px;
    padding: 6px 20px 3px;
    background: rgb(255, 153, 0);
    border: 1px solid #fff;
    color: #fff;
    font-size: clamp(13px, 1.5vw, 18px);
    white-space: nowrap;
    text-decoration: none;
    text-align: center;
    z-index: 9999;
    transition: all 0.3s ease;
}
.inquiry_link .download_materials p a:hover {
    background: #ff6600;
    border: 1px solid #fff;
    color: #fff;
}
.inquiry_link .inquiry p a {
    display: inline-block;
    border-radius: 30px;
    padding: 6px 20px 3px;
    background: #fff;
    color: #ff3366;
    border: 1px solid #ff3366;
    font-size: clamp(13px, 1.5vw, 18px);
    white-space: nowrap;
    text-decoration: none;
    text-align: center;
    z-index: 9999;
    transition: all 0.3s ease;
}
.inquiry_link .inquiry p a:hover {
    background: #ff3366;
    color: #fff;
    border: 1px solid #fff;
}
@media print, screen and (min-width:768px) {
    #content_02 .main_ph {
        display: flex;
        justify-content: center;
    }
    .main_ph figure img {
        width: 100%;
        height: auto;
        max-width: 400px;
    }
    #content_01 {
        width: 100%;
        max-width: 345px;
    }
    #content_02 {
        position: absolute;
        bottom: 50px;
        right: calc(50% - 550px);
        width: 100%;
        max-width: 800px;
    }
    .main_ph figure {
        margin: 0 10px;
    }
}
/*#main_contents {
  
}*/
/*----------------------------------------���̃y�[�W��pankuzu�p*/
#pankuzu {
    padding-right: 15px !important;
    padding-left: 15px !important;
    margin-right: auto !important;
    margin-left: auto !important;
}
@media print, screen and (min-width:768px) {
    #pankuzu {
        width: 750px !important;
    }
}
@media print, screen and (min-width:992px) {
    #pankuzu {
        width: 970px !important;
    }
}
@media print, screen and (min-width: 1200px) {
    #pankuzu {
        width: 1080px !important;
    }
}
.ttlbox {
    display: none !important;
}
.kasoucontents .container {
    width: 100% !important;
    overflow-x: hidden;
}
.section p {
    font-size: 1em;
}
.cta_box ul li.tel .tel_num {
    font-size: 35px !important;
}
.title01 {
    margin: 10px 0 30px 0;
}
@media print, screen and (min-width:768px) {
    .title01 {
        margin: 40px 0;
    }
}
footer .container, .container2 {
    padding-right: 15px !important;
    padding-left: 15px !important;
    margin-right: auto !important;
    margin-left: auto !important;
}
@media print, screen and (min-width:768px) {
    footer .container, .container2 {
        width: 750px !important;
    }
}
@media print, screen and (min-width:992px) {
    footer .container, .container2 {
        width: 970px !important;
    }
}
@media print, screen and (min-width: 1200px) {
    footer .container, .container2 {
        /*width: 1030px;*/
        width: 1080px !important;
    }
}
#boomerang_main {
    background: center no-repeat;
    background-image: url("../img/boomerang_s_img/main_bg2.jpg");
    height: auto;
    background-size: cover;
    width: 100vw;
    margin-left: calc(-50vw + 50%);
    position: relative;
    z-index: 1;
    padding: 24px 15px;
}
@media print, screen and (min-width: 800px) {
    #boomerang_main {
        background-image: url("../img/boomerang_s_img/main_bg.jpg");
        padding: 50px 0;
    }
}
.container_main {
    max-width: 1140px;
    width: 100%;
    margin: 0 auto;
    padding: 0 10px;
}
@media print, screen and (min-width: 1140px) {
    .container_main {
        max-width: 1140px;
        width: 100%;
    }
}
#boomerang_main h2 {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: clamp(20px, 3vw, 32px);
    color: #fff;
    font-weight: bold;
    text-align: center;
    text-shadow: 0 1px 0 #009e52, 1px 0 0 #009e52, 0 -1px 0 #009e52, -1px 0 0 #009e52, -1px -1px 0 #009e52, 1px -1px 0 #009e52, -1px 1px 0 #009e52, 1px 1px 0 #009e52;
}
@media print, screen and (min-width: 800px) {
    #boomerang_main h2 {}
}
#boomerang_main h3 {
    font-size: clamp(24px, 6.5vw, 70px);
    color: #FFFD27;
    text-align: center;
    line-height: 1.3;
    margin-top: 0;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 900;
    text-shadow: 0 0 3px #51514f, 0 0 10px #51514f;
    /*text-shadow: 0 1px 0 #fff, 1px 0 0 #fff, 0 -1px 0 #fff, -1px 0 0 #fff, -1px -1px 0 #fff, 1px -1px 0 #fff, -1px 1px 0 #fff, 1px 1px 0 #fff;*/
}
@media print, screen and (min-width: 400px) {
    #boomerang_main h3 {}
}
@media print, screen and (min-width: 768px) {
    #boomerang_main h3 {}
}
#boomerang_main h3 span {
    /*background-color: rgba(255, 255, 255, 0.9);*/
    line-height: 1;
    padding: 0 20px;
}
#boomerang_main .row {
    margin-top: 40px;
}
#boomerang_main .row .col-sm-3 .greenbox {
    background: #009e52;
    padding: 15px 10px;
    border-radius: 10px;
    margin-bottom: 10px;
}
#boomerang_main .row .col-sm-3 h4 {
    font-size: 17px;
    font-weight: bold;
    color: #fff;
    text-align: center;
}
#boomerang_main .content_list {
    border: 1px solid #009e52;
    border-radius: 5px;
    padding: 20px 15px;
    background-color: #fff;
    color: #009e52;
    margin: 0 0 20px 0;
}
#boomerang_main .content_list li {
    color: #009e52;
    position: relative;
    list-style-type: none;
    counter-increment: cnt;
    margin-bottom: 15px;
    padding: 0 0 0 20px;
    line-height: 1.4;
    font-size: clamp(14px, 1.7vw, 18px);
}
#boomerang_main .content_list li::after {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    content: "\f14a";
    font-family: "Font Awesome 5 Free";
    color: #009e52;
}
#boomerang_main .content_list li:last-of-type {
    margin-bottom: 0;
}
@media print, screen and (min-width: 400px) {
    #boomerang_main .row .col-sm-3 h4 {
        font-size: 20px;
    }
}
#boomerang_main .row .col-sm-3 p {
    font-size: 20px;
    font-weight: bold;
    color: #FFFD27;
    text-align: center;
}
#boomerang_desk {
    text-align: center;
    padding: 30px 10px 30px 10px;
}
@media print, screen and (min-width: 768px) {
    #boomerang_desk {
        text-align: center;
        padding: 30px 25px 50px 25px;
    }
}
#boomerang_desk h3 {
    text-align: center;
    color: #444;
}
#boomerang_desk .fig_box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 820px;
    margin: 0 auto;
    padding-top: 40px;
}
#boomerang_desk .fig_box > figure {
    width: 58%;
}
#boomerang_desk .fig_box > figure img {
    width: 100%;
    height: auto;
}
#boomerang_desk .fig_box div {
    width: 47%;
    margin-left: -5%;
}
#boomerang_desk .fig_box div figure {
    text-align: right;
}
#boomerang_desk .fig_box div figure img {
    width: 100%;
    max-width: 332px;
    height: auto;
}
#boomerang_desk .fig_box div ul li {
    margin: 3px 0;
    padding: 8px;
    text-align: center;
    line-height: 1.1;
    border-radius: 10px;
    color: #fff;
    background: #009e52;
}
#boomerang_desk .fig_box div ul li br {
    display: none;
}
@media print, screen and (min-width: 576px) {
    #boomerang_desk .fig_box div ul {
        display: flex;
        justify-content: space-between;
    }
    #boomerang_desk .fig_box div ul li {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 32%;
        aspect-ratio: 1 / 1;
        margin: 0;
        padding: 0px;
        text-align: center;
        line-height: 1.1;
        border-radius: 100%;
        color: #fff;
        background: #009e52;
    }
    #boomerang_desk .fig_box div ul li br {
        display: inline;
    }
}
@media print, screen and (min-width: 768px) {
    #boomerang_desk .fig_box div ul li {
        font-size: 26px;
    }
    #boomerang_desk .fig_box div ul li span {
        line-height: 1.3;
        display: flex;
        justify-content: center;
        align-items: center;
        margin: 10px 0 0 0;
    }
}
#boomerang_desk .change {
    margin-top: 40px;
    list-style: none;
}
#boomerang_desk .change li:not(:last-child) {
    margin-bottom: 30px;
}
#boomerang_desk .change li figure {
    margin-bottom: 10px;
    text-align: center;
}
#boomerang_desk .change li figure img {
    width: 100%;
    max-width: 300px;
    height: auto;
}
#boomerang_desk .change li h4 {
    text-align: center;
    margin-bottom: 10px;
    line-height: 1.3;
    font-size: 18px;
    font-weight: bold;
    color: #009e52;
}
#boomerang_desk .change li p {
    text-align: left;
}
@media print, screen and (min-width: 768px) {
    #boomerang_desk .change {
        display: flex;
        justify-content: space-between;
    }
    #boomerang_desk .change li {
        width: 32%;
    }
    #boomerang_desk .change li:not(:last-child) {
        margin-bottom: 0;
    }
    #boomerang_desk .change li figure {
        margin-bottom: 15px;
    }
    #boomerang_desk .change li figure img {
        width: 100%;
        max-width: 360px;
        height: auto;
    }
    #boomerang_desk .change li h4 {
        font-size: 24px;
    }
}
h3.boomerang_contact_ti {
    margin: 0 !important;
    padding: 5px 1em !important;
    width: 100%;
    font-size: 24px;
    text-align: center !important;
}
@media print, screen and (min-width: 768px) {
    h3.boomerang_contact_ti {
        font-size: 28px;
    }
}
/*--------------------------------------------------------------------------------------------------------------------- �u�[�������f�X�N���I�΂�闝�R */
#why_choose_us .cta_box {
    display: inline-block;
    border: 1px solid #009e52;
    border-radius: 12px;
    padding-bottom: 20px;
    margin: 0 auto;
    background: #fff;
}
#why_choose_us .cta_box h3 {
    color: #fff;
}
.cta_box ul li.tel {
    margin-top: 10px;
}
ul.double {
    list-style: none;
    width: 100%;
    margin: 0;
    padding: 0
}
ul.double li {
    list-style: none;
}
.officedesk .bg_aqua_dot .price_area ul.double {
    list-style: none;
    width: 90%;
    margin: 0 5%;
    padding: 0
}
ul.double li.price_lsize {
    width: 100%;
    margin: 0 0 20px 0;
    padding: 0;
    float: left;
    list-style-type: none !important;
}
ul.double li.price_ssize {
    width: 100%;
    margin: 0;
    padding: 0;
    float: right;
    list-style-type: none !important;
}
@media print, screen and (min-width: 768px) {
    ul.double li.price_lsize {
        width: 48%;
        margin: 0 2% 0 0;
        padding: 0;
        float: left;
        list-style-type: none !important;
    }
    ul.double li.price_ssize {
        width: 48%;
        margin: 0;
        padding: 0;
        float: right;
        list-style-type: none !important;
    }
}
ul.double li.price_lsize dl, ul.double li.price_ssize dl {
    width: 100%;
    margin: 0;
    padding: 0;
    border: none;
}
ul.double li.price_lsize dl dt, ul.double li.price_ssize dl dt {
    width: 100%;
    margin: 0;
    padding: 10px 0;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
    background: #009e52;
    color: #ffffff;
    text-align: center;
    font-size: 130%;
    border-width: 0 1px 0 1px;
    border-color: #009e52;
    border-style: solid;
}
@media print, screen and (min-width: 992px) {
    ul.double li.price_lsize dl dt, ul.double li.price_ssize dl dt {
        font-size: 180%;
    }
}
ul.double li.price_lsize dl dd, ul.double li.price_ssize dl dd {
    width: 100%;
    margin: 0;
    padding: 10px;
    border-bottom-left-radius: 8px;
    border-bottom-right-radius: 8px;
    background: #ffffff;
    border-width: 0 1px 1px 1px;
    border-color: #009e52;
    border-style: solid;
}
ul.double li.price_lsize dl dd p, ul.double li.price_ssize dl dd p {
    margin: 10px 5% 0;
    width: 90%;
}
ul.double li.price_lsize dl dd img, ul.double li.price_ssize dl dd img {
    width: 90%;
    margin: 0 5%;
}
ul.double p {
    text-align: left;
    line-height: 180%;
    color: #000;
}
ul.double li a {
    display: block;
}
ul.double li a .order_txt {
    width: 90%;
    margin: 10px 5%;
    text-align: center;
}
ul.double .sale-price {
    text-align: center;
    margin: 0;
}
a .order_txt {
    border: 1px solid #333333;
    color: #333333;
    display: inline-block;
    padding: 15px 20px;
    border-radius: 5px;
    font-size: 130%;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#f9df8e+0,fcc000+100 */
    background: #f9df8e; /* Old browsers */
    background: -moz-linear-gradient(top, #f9df8e 0%, #fcc000 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top, #f9df8e 0%, #fcc000 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, #f9df8e 0%, #fcc000 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f9df8e', endColorstr='#fcc000', GradientType=0); /* IE6-9 */
}
.sale-price {
    font-size: 150%;
    margin-top: 10px;
}
.sale-price small {
    font-size: 60%;
}
.sale-price .off {
    color: #ff0000;
    font-size: 100%;
}
a:hover .order_txt {
    background: #f9df8e;
    color: #333333;
}
#sec01 {
    padding: 60px 0;
}
#sec02 {
    display: inline-block !important;
    margin-top: 40px;
}
#sec02 .title_dotline {
    font-size: 1.7em;
    width: 100%;
}
#sec03 {
    display: inline-block;
    padding: 20px 25px 30px 25px;
}
#sec04 {
    padding-bottom: 80px;
}
#price {
    display: inline-block;
    padding: 20px 25px 30px 25px;
    margin-top: 50px;
}
#layout {
    padding: 0;
}
@media screen and (min-width:768px) {
    #layout {
        padding: 20px 0;
    }
}
.info_txt {
    font-weight: bold;
    font-size: 120%;
    margin: 0 5% 20px;
    text-align: center;
    line-height: 150%;
}
.margin_t40s {
    margin-top: 30px;
}
.margin_t50p {
    margin-top: 50px;
}
@media screen and (min-width:768px) {
    .margin_t40s {
        margin-top: 0;
    }
    .margin_t50p {
        margin-top: 50px;
    }
}
.officedesk .reason2 {
    display: inline-block;
    margin: 0;
    padding: 20px 0;
    text-align: center;
    width: 100%;
}
@media screen and (min-width:768px) {
    .officedesk .reason2 {
        padding: 40px 0;
    }
}
.officedesk .reason2 h3 {
    width: 100%;
    font-weight: bold;
    font-size: 180%;
    margin: 10px 0 0;
    padding: 0;
    text-align: center;
    color: #000;
    display: inline-block;
}
.officedesk .reason2 ul.double3 {
    list-style: none;
    width: 96%;
    margin: 0 2%;
    padding: 0;
}
.officedesk .reason2 ul.double3 li {
    width: 48%;
    margin: 0 0 20px 0;
    padding: 0;
    float: left;
    background: #ffffff;
    border-radius: 8px;
}
.officedesk .reason2 ul.double3 li.last {
    width: 48%;
    margin: 0 0 20px 0;
    padding: 0;
    float: right;
}
.officedesk .reason2 ul.double3 li .wrapper {
    margin: 20px;
    padding: 0;
    width: 100%;
    margin: 20px;
    padding: 0;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    flex-flow: column;
    justify-content: flex-start;
    height: 320px;
}
#why_choose_us.officedesk .reason2 ul.double3 li .wrapper h3 {
    font-size: 170%;
    margin: 10px 0 30px;
    padding: 0;
    font-weight: bold;
    color: #ff8f22;
}
.officedesk .reason2 ul.double3 li .wrapper dl {
    width: 100%;
    margin: 0;
    padding: 0;
    border: none;
    height: auto;
}
.officedesk .reason2 ul.double3 li .wrapper dl dt {
    width: 40%;
    margin: 0;
    padding: 0;
    float: left;
    display: inline-block;
}
.officedesk .reason2 ul.double3 li .wrapper dl dd {
    width: 4%;
    margin: 0 3%;
    padding: 20px 0;
    float: left;
    display: inline-block;
}
.officedesk .reason2 ul.double3 li .wrapper dl dt img, .officedesk .reason2 ul.double3 li dl dd img {
    width: 100%;
}
.officedesk .reason2 ul.double3 li .wrapper dl dt p {
    text-align: left;
    font-weight: normal;
    margin-top: 10px;
}
.officedesk .reason2 ul.double3 li .wrapper dl dt p.after {
    color: #cc0033;
}
.bg_aqua_dot {
    background: #f8f8ff;
    background-image: radial-gradient(#fff 20%, transparent 0), radial-gradient(#fff 20%, transparent 0);
    background-position: 0 0, 10px 10px;
    background-size: 20px 20px;
    display: inline-block;
    /*margin: 30px 0 40px 0;*/
    padding: 30px 0 40px 0;
}
@media screen and (min-width:768px) {
    .bg_aqua_dot {
        margin: 0;
    }
}
.officedesk .point2 {
    display: inline-block;
    margin: 0;
    padding: 0;
    text-align: center;
    width: 100%;
}
.officedesk .point2 .catch_copy {
    font-size: 180%;
    font-weight: bold;
    width: 100%;
    margin: 10px 0 30px;
    display: inline-block;
}
.officedesk .point2 ul.double3 {
    list-style: none;
    width: 96%;
    margin: 0 2%;
    padding: 0;
}
.officedesk .point2 ul.double3 li {
    width: 31%;
    margin: 0 3% 20px 0;
    padding: 0;
    float: left;
}
.officedesk .point2 ul.double3 li.last {
    width: 32%;
    margin: 0 0 20px 0;
    padding: 0;
    float: right;
}
.officedesk .point2 ul.double3 li dl {
    width: 100%;
    margin: 0;
    padding: 0;
    border: none;
    position: relative;
}
.officedesk .point2 ul.double3 li dl dt {
    width: 100%;
    margin: 0;
    padding: 10px 0;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
    background: #009e52;
    color: #ffffff;
    text-align: center;
    font-size: 160%;
    border-width: 0 1px 0 1px;
    border-color: #009e52;
    border-style: solid;
}
.officedesk .point2 ul.double3 li dl dd {
    height: 160px;
    width: 100%;
    margin: 0;
    padding: 10px;
    border-bottom-left-radius: 8px;
    border-bottom-right-radius: 8px;
    background: #ffffff;
    border-width: 0 1px 1px 1px;
    border-color: #009e52;
    border-style: solid;
}
.officedesk .point2 ul.double3 li h3 {
    font-size: 150%;
    margin: 0 !important;
    padding: 0 !important;
    font-weight: bold !important;
    text-align: center !important;
    width: 100% !important;
}
.catch_title {
    font-size: 180%;
    margin: 5px 0;
    font-weight: bold;
    color: #cc0033;
    text-align: center;
}
.officedesk .point2 ul.double3 li p {
    text-align: left;
    margin-bottom: 10px;
}
.officedesk .point2 ul.double3 li i {
    position: absolute;
    bottom: 0;
    left: 50%;
    font-size: 200%;
    font-weight: bold;
    color: #009e52;
}
.officedesk .point2 ul.double3 li small {
    font-size: 12px;
}
.officedesk .point2 ul.double3 li img {
    width: 100%;
}
@media screen and (max-width:780px) {
    .officedesk .reason2 ul.double3 li {
        width: 100%;
        margin: 0 0 20px 0;
        padding: 0;
        clear: left;
    }
    .officedesk .reason2 ul.double3 li.last {
        width: 100%;
        margin: 0 0 20px 0;
        padding: 0;
        clear: right;
    }
    .point2 ul.double3 li {
        width: 100% !important;
        margin: 0 0 20px 0;
        padding: 0;
        float: left;
    }
    .point2 ul.double3 li.last {
        width: 100%;
        margin: 0 0 20px 0;
        padding: 0;
        float: right;
    }
    .point2 ul.double3 li dl dd {
        height: auto;
    }
}
.officedesk .reason2 ul.double3 li {
    overflow: hidden;
}
.officedesk .point2 ul.double3 li a {
    display: block;
    color: #000;
}
.officedesk .point2 ul.double3 li a:hover {
    opacity: 0.8;
}
@media screen and (max-width:1080px) {
    .officedesk .reason2 ul.double3 li .wrapper h3 {
        font-size: 120%;
    }
}
@media screen and (max-width:780px) {
    .officedesk .reason2 ul.double3 li {
        height: auto;
    }
}
.officedesk .point2 small.att {
    text-align: left;
    display: block;
    margin-left: 10px;
}
.price_area {
    display: inline-block;
}
.price_area ul.double {
    list-style: none;
    width: 100%;
    margin: 0;
    padding: 0
}
.price_area ul.double li {
    list-style: none;
}
.bg_aqua_dot .price_area ul.double {
    list-style: none;
    width: 90%;
    margin: 0 5%;
    padding: 0
}
.price_area ul.double li.price_lsize {
    width: 48%;
    margin: 0 2% 0 0;
    padding: 0;
    float: left;
    list-style-type: none !important;
}
.price_area ul.double li.price_ssize {
    width: 48%;
    margin: 0;
    padding: 0;
    float: right;
    list-style-type: none !important;
}
.price_area ul.double li.price_lsize dl, .price_area ul.double li.price_ssize dl {
    width: 100%;
    margin: 0;
    padding: 0;
    border: none;
}
.price_area ul.double li.price_lsize dl dt, .price_area ul.double li.price_ssize dl dt {
    width: 100%;
    margin: 0;
    padding: 10px 0;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
    background: #1E5799;
    color: #ffffff;
    text-align: center;
    font-size: 180%;
    border-width: 0 1px 0 1px;
    border-color: #1E5799;
    border-style: solid;
}
.price_area ul.double li.price_lsize dl dd, .price_area ul.double li.price_ssize dl dd {
    width: 100%;
    margin: 0;
    padding: 10px;
    border-bottom-left-radius: 8px;
    border-bottom-right-radius: 8px;
    background: #ffffff;
    border-width: 0 1px 1px 1px;
    border-color: #1E5799;
    border-style: solid;
}
.price_area ul.double li.price_lsize dl dd p, .price_area ul.double li.price_ssize dl dd p {
    margin: 10px 5% 0;
    width: 90%;
}
.price_area ul.double li.price_lsize dl dd img, .price_area ul.double li.price_ssize dl dd img {
    width: 90%;
    margin: 0 5%;
}
.price_area ul.double p {
    text-align: left;
    line-height: 180%;
    color: #000;
}
.price_area p.info_txt {
    width: 90%;
    margin: 10px auto;
}
.price_area ul.double li a {
    display: block;
}
.price_area ul.double li a .order_txt {
    width: 90%;
    margin: 10px 5%;
    text-align: center;
}
.price_area ul.double .sale-price {
    text-align: center;
    margin: 0;
}
.price_area ul.triple {
    list-style: none;
    width: 100%;
    margin: 0;
    padding: 0
}
.price_area ul.triple li.price_lsize {
    width: 100%;
    margin: 0 3% 15px 0;
    padding: 0;
    float: left;
}
.price_area ul.triple li.price_ssize {
    width: 100%;
    margin: 0;
    padding: 0;
    float: right;
}
@media screen and (min-width:768px) {
    .price_area ul.triple li.price_lsize {
        width: 31%;
        margin: 0 3% 0 0;
        padding: 0;
        float: left;
    }
    .price_area ul.triple li.price_ssize {
        width: 31%;
        margin: 0;
        padding: 0;
        float: right;
    }
}
.price_area ul.triple li.price_lsize dl, .price_area ul.triple li.price_ssize dl {
    width: 100%;
    margin: 0;
    padding: 0;
    border: none;
}
.price_area ul.triple li.price_lsize dl dt, .price_area ul.triple li.price_ssize dl dt {
    width: 100%;
    margin: 0;
    padding: 10px 0;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
    background: #009e52;
    color: #ffffff;
    text-align: center;
    font-size: 130%;
    border-width: 0 1px 0 1px;
    border-color: #009e52;
    border-style: solid;
}
.price_area ul.triple li.price_lsize dl dd, .price_area ul.triple li.price_ssize dl dd {
    width: 100%;
    margin: 0;
    padding: 10px;
    border-bottom-left-radius: 8px;
    border-bottom-right-radius: 8px;
    background: #ffffff;
    border-width: 0 1px 1px 1px;
    border-color: #009e52;
    border-style: solid;
}
.price_area ul.triple li.price_lsize dl dd p, .price_area ul.triple li.price_ssize dl dd p {
    margin: 10px 5% 0;
    width: 90%;
}
.price_area ul.triple li.price_lsize dl dd img, .price_area ul.triple li.price_ssize dl dd img {
    width: 90%;
    margin: 0 5%;
}
.price_area ul.triple p {
    text-align: left;
    line-height: 180%;
    color: #000;
}
.price_area ul.triple li a {
    display: block;
}
.price_area ul.triple li a .order_txt {
    width: 90%;
    margin: 10px 5%;
    text-align: center;
}
.price_area ul.triple .sale-price {
    text-align: center;
    margin: 0;
}
.reason2 p.info_txt, .price_area p.info_txt, .layout_area p.info_txt {
    font-weight: bold;
    font-size: 120%;
    margin: 10px 20px;
    text-align: center;
    line-height: 150%;
}
.price_area ul.single {
    width: 90%;
    margin: 0 5%;
    padding: 0;
}
.price_area ul.single dt strong {
    font-size: 130%;
}
@media screen and (max-width:780px) {
    .price_area ul.double li.price_lsize {
        width: 100%;
        margin: 0 0 20px 0;
        padding: 0;
        clear: left;
    }
    .price_area ul.double li.price_ssize {
        width: 100%;
        margin: 0 0 0 0;
        padding: 0;
        clear: right;
    }
    .price_area h2, .case_area h2, .layout_area h2 {
        font-size: 220%;
    }
    .reason2 p.info_txt, .price_area p.info_txt, .layout_area p.info_txt {
        font-size: 120%;
        width: 90%;
        margin: 0 5% 20px;
        text-align: left;
        line-height: 150%;
    }
}
.main_area ul li dl {
    padding: 18px;
    border: 1px solid #ccc;
    background: #fff;
    display: inline-block;
}
.main_area ul li dl dt {
    font-size: 120%;
    text-align: center;
    padding: 5px 0;
    color: #000;
}
.main_area ul.double li {
    float: left;
    width: 40%;
    margin: 0 5% 0 0;
    padding: 0;
}
.main_area ul.double li.last {
    margin: 0 20%;
    width: 60%;
    text-align: center;
}
.main_area ul.double li img {
    width: 100%;
}
.main_area ul.single {
    margin: 0;
    padding: 0;
    width: 100%;
}
.main_area ul.single li {
    margin: 0 0 20px 0;
    padding: 0;
    display: inline-block;
}
.main_area ul.single li.question {
    margin: 0;
    padding: 10px;
    border-bottom: 1px dotted #ccc;
    font-weight: bold;
    font-size: 115%;
}
.main_area ul.single li.answer {
    margin: 0 0 20px 0;
    padding: 10px;
    font-size: 110%;
}
.main_area ul.single li dl dd {
    font-size: 110%;
}
.main_area ul.single li dl dd p {
    line-height: 150%;
}
.catch {
    font-size: 230%;
    line-height: 150%;
    margin: 20px 0;
    font-weight: bold;
}
.main_area ul li dl dt {
    padding-bottom: 10px;
    border-bottom: 2px solid #009e52;
    margin-bottom: 10px;
    color: #009e52;
}
@media screen and (max-width:780px) {
    .main_area ul li dl dt {
        font-size: 120%;
    }
}
/*--------------------------------------------------------------------------------------------------------------------- �ቿ�i�E���i���E���@�\ */
#scene .main_area ul li dl dd .f_left {
    float: left;
    width: 30%;
}
#scene .main_area ul li dl dd .f_left img {
    width: 90%;
    margin: 0 5%;
    padding-bottom: 0;
}
#scene .main_area ul li dl dd .f_right {
    float: right;
    width: 70%;
    font-size: 0.9em;
}
@media screen and (max-width:780px) {
    #scene .main_area ul li dl dd .f_left {
        clear: left;
        width: 100%;
        margin: 0;
    }
    #scene .main_area ul li dl dd .f_right {
        clear: right;
        width: 100%;
        margin: 0;
    }
    #scene .main_area ul li dl dd .f_left img {
        width: 90%;
        margin: 0 5%;
        padding-bottom: 15px;
    }
}
.kasoucontents ul li {
    padding: 0 20px;
}
.layout_area p {
    line-height: 35px;
}
.kasoucontents h3 {
    text-align: center;
}
.ttl01 {
    width: 100%;
    font-weight: bold;
    font-size: 220% !important;
    margin: 20px 0 20px;
    padding: 0;
    text-align: center;
    color: #1E5799 !important;
}
@media screen and (min-width:768px) {
    .ttl01 {
        font-size: 280% !important;
    }
}
/*--------------------------------------------------------------------------------------------------------------------- ���C�A�E�g�^�u�Ő؂�ւ� */
/*----------------------------------------------

-----------------------------------------------*/
#layout .layout_suggestions {
    margin: 30px 0;
}
#layout .layout_tab_ctr {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 1px;
}
#layout .layout_tab_ctr li {
    width: calc(50% - 1px);
    padding: 0;
}
@media print, screen and (min-width: 768px) {
    /*.layout_tab_ctr li {
    width: calc(25% - 1px);
  }*/
}
#layout .layout_tab_switch a {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: clamp(14px, 1.7vw, 18px);
    font-weight: 700;
    background: #ddd;
    color: #fff;
    text-decoration: none;
    line-height: 1.2;
    padding: 1em 0.5em;
    transition: 0.2s;
}
#layout .layout_tab_switch a:hover {
    background: #009e52;
}
#layout .layout_tab_switch.active a {
    background: #009e52;
    color: #fff;
}
@media print, screen and (min-width: 768px) {
    #layout .layout_tab_switch a {
        border-radius: 6px 6px 0 0;
    }
}
#layout .layout_tab_cts {
    display: none;
    background: #fff;
    padding: clamp(16px, 3vw, 32px);
    box-sizing: border-box;
    text-align: center;
}
#layout .layout_tab_cts.active {
    display: block;
    border: 1px solid #009e52;
    margin-top: 10px;
}
@media print, screen and (min-width: 768px) {
    #layout .layout_tab_cts.active {
        margin-top: 0;
    }
}
#layout .layout_tab_ti {
    border-bottom: 1px dotted #009e52;
    font-size: 150%;
    margin: 0 0 30px;
    font-weight: 700;
    color: rgb(0, 153, 0);
    padding: 0 0 10px;
}
#layout .layout_tab_txt {
    font-size: 1.2em;
    margin-bottom: 1.5em;
    text-align: left;
}
#layout .layout_tab_img a img {
    margin: 5px auto;
    width: 100%;
}
#layout .layout_tab_btn a {
    display: inline-block;
    margin: auto;
    font-size: 1em;
    width: 300px;
    padding: 10px;
    border-radius: 5px;
    text-align: center;
    background: rgb(255, 153, 0);
    color: rgb(255, 255, 255);
    /*display: block;*/
    text-decoration: none;
    margin-left: auto;
    margin-right: auto;
}
#layout .layout_tab_cts iframe {
    aspect-ratio: 853/480;
    width: min(100%, 853px);
    height: auto;
    margin-left: auto;
    margin-right: auto;
}
#layout .furniture_used_link {
    border: 1px solid #009e52;
    border-radius: 5px;
    padding: 30px;
    background-color: #ccffcc;
}
#layout .furniture_used_link h3 {
    color: #fff;
    background: #009e52;
    border-radius: 5px;
    font-size: clamp(14px, 1.7vw, 18px);
    padding: 5px 20px;
    margin: 0 0 20px 0;
}
/*--------------------------------------------------------------------------------------------------------------------- �������� */
/*----------------------------------------------
#case_study_01
-----------------------------------------------*/
#case_study_01 {
    text-align: center;
}
#case_study_01 .theme {
    padding: 40px 0;
}
#case_study_01 .resolution {
    padding: 0 0 40px 0;
    background-color: #ccffcc;
}
/*----------------------------------------------
#case_study_02
-----------------------------------------------*/
#case_study_02 {
    padding: 40px 0;
}
#case_study_02 .col-sm-4 {
    margin-bottom: 20px;
}
#case_study_02 .row {
    margin-right: 0;
    margin-left: 0;
}
.introduction {
    margin: 0 0 40px 0;
}
@media print, screen and (min-width: 768px) {
    #case_study_01 .theme {
        padding: 80px 0;
    }
    #case_study_01 .resolution {
        padding: 0 0 80px 0;
        background-color: #ccffcc;
    }
    #case_study_02 {
        padding: 80px 0 0;
    }
    .introduction {
        margin: 40px 0 80px 0;
    }
}
/*--------------------------------------------------------------------------------------------------------------------- ���i�d�l */
#spec .sheet_basic {
    width: 100%;
    table-layout: fixed;
    word-break: break-all;
    word-wrap: break-all;
    max-width: 940px;
    margin: 0 auto;
}
#spec .sheet_basic .youtube_wrap {
    padding-top: 56.25%;
    width: 100%;
    position: relative;
}
#spec .sheet_basic .youtube_wrap iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
}
/*----desk20230628----*/
#content_01 {
    max-width: 100% !important;
}
@media print, screen and (min-width:768px) {
    #content_01 {
        max-width: 33% !important;
    }
}
.main_ph figure {
    margin: 0 !important;
}
.main_ph figure img {
    max-width: 100% !important;
    width: 60% !important;
}
#content_02 {
    right: 50px !important;
    width: auto !important;
    max-width: auto !important;
    position: inherit !important;
}
#boomerang_main .content_list li a {
    color: #009e52;
    text-decoration: underline;
}
.inquiry_link {
    margin-top: 20px;
}
ul.inquiry_link li {
    text-align: center;
}
.inquiry_link .download_materials p a {
    width: 100%;
    max-width: 600px;
}
.inquiry_link .inquiry p a {
    width: 100%;
    max-width: 600px;
}
@media print, screen and (min-width:768px) {
    #content_02 {
        position: relative !important;
    }
    .main_ph figure img {
        width: 95% !important;
    }
}
@media print, screen and (min-width:992px) {
    .main_ph figure img {
        width: 100% !important;
    }
}
.officedesk .reason2 ul.double3 li {
    width: 100% !important;
    padding-bottom: 10px !important;
}
#case_study h3.title02 {
    width: 100% !important;
    margin-top: -30px;
    color: #6d6d6d;
}
.title04 {
    font-size: 28px;
    font-weight: bold;
    color: #009e52;
    text-align: center;
    margin: 0 0 30px 0;
}
@media print, screen and (min-width:768px) {
    .title04 {
        margin: 30px 0 0 0;
    }
}
#case_study_01 .theme {
    padding: 0 !important;
    margin-top: -20px;
    margin-bottom: 50px;
}
.introduction {
    margin: 0 !important;
}
.officedesk .reason2 ul.double3 li .wrapper {
    height: auto !important;
}
.officedesk .reason2 ul.double3 li .wrapper dl {
    margin: 0 !important;
}
@media print, screen and (min-width:768px) {
    .officedesk .reason2 ul.double3 li .wrapper dl {
        margin: 0 30px !important;
    }
}
#main_img2 {
    position: absolute;
    width: 60%;
    right: 0;
    bottom: 0;
    right: -60px;
}
@media print, screen and (min-width:768px) {
    #main_img2 {
        width: 300px;
        right: 0;
    }
}
@media print, screen and (min-width:1200px) {
    #main_img2 {
        right: -100px;
    }
}
#main_img2 img {
    max-width: 200px !important;
}
#boomerang_main .row {
    margin-top: 0 !important;
}
@media print, screen and (min-width:768px) {
    #boomerang_main .row {
        display: flex;
        justify-content: center;
        margin-top: 40px !important;
    }
}
.title05 {
    font-size: 24px;
    font-weight: bold;
    margin-top: 30px;
    margin-bottom: 30px;
}
#desk_layout .boomerang_s_wrap > p {
    font-size: 16px;
    margin-bottom: 30px;
}
#desk_layout ul li {
    margin-bottom: 30px;
}
#desk_layout img {
    width: 100%;
    height: auto;
}
/*===================================
25.08.20
===================================*/
#desk_layout .cta_box {
    background: #fff;
}
.boomerang_row {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    margin: 0 0 30px 0;
}
.boomerang_row li {
    padding: 0 !important;
    width: 100%;
}
.boomerang_row li:last-child figure {
    text-align: center;
}
@media print, screen and (min-width: 576px) {
    .boomerang_row {
        margin: 0 0 20px 0;
    }
}
@media print, screen and (min-width: 768px) {
    .boomerang_row {
        flex-wrap: nowrap;
        justify-content: space-between;
        margin: 0 0 0 0;
    }
    .boomerang_row li:first-of-type {
        width: 71%;
    }
}
.boomerang_cp_btn {
    position: absolute;
    display: inline-block;
    bottom: 0;
    width: 100%;
    max-width: 500px;
    right: 0;
}
.boomerang_cp_btn a {
    position: absolute;
    bottom: 0;
    right: 0;
    display: block !important;
    background: #fff700;
    text-decoration: none;
    border-radius: 50px;
    padding: 20px 40px;
    transition: all 0.3s ease;
    animation: pulse 3s infinite;
    max-width: 500px;
    text-align: center;
}
.boomerang_cp_btn a p {
    margin: 0;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.4;
    position: relative;
    z-index: 1;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}
.boomerang_cp_btn a:hover {
    transform: translateY(-3px);
    background: #ff6600;
    color: #fff;
}
.boomerang_cp_btn a p:hover {
    color: #fff;
}
@keyframes pulse {
    0%, 100% {
        transform: scale(1);
        /*box-shadow: 0 8px 25px rgba(238, 90, 82, 0.4);*/
    }
    50% {
        transform: scale(1.04);
        /*box-shadow: 0 10px 30px rgba(238, 90, 82, 0.5);*/
    }
}
@keyframes shimmer {
    0% {
        background-position: -400% 0;
    }
    100% {
        background-position: 400% 0;
    }
}
@keyframes bounce {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
    }
    25% {
        transform: translateY(-2px) rotate(-4deg);
    }
    75% {
        transform: translateY(-1px) rotate(4deg);
    }
}
/* new */
.new-badge {
    position: absolute;
    top: -25px;
    left: -5px;
    background: #ff6600;
    color: white;
    padding: 5px 7px;
    font-size: 12px;
    font-weight: 900;
    animation: wiggle 2s ease-in-out infinite;
    z-index: 2;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    transition: all 0.3s ease;
}
.boomerang_cp_btn a:hover .new-badge {
    background: #fff700;
    color: #000;
}
@keyframes wiggle {
    0%, 100% {
        transform: rotate(-5deg);
    }
    50% {
        transform: rotate(5deg);
    }
}
/*************************************************************/
#discount_campaign.campaign-card {
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
    border-radius: 20px;
    padding: 40px;
    text-align: center;
    width: 100%;
    position: relative;
    overflow: hidden;
    margin: 0 0 60px 0;
}
#discount_campaign .campaign-badge {
    background: #ff6600;
    color: #fff;
    padding: 12px 24px;
    border-radius: 50px;
    font-weight: 900;
    font-size: clamp(1rem, -1.625rem + 7.29vw, 1.875rem);
    display: inline-block;
    margin-bottom: 20px;
    letter-spacing: 1px;
}
#discount_campaign .title {
    display: block;
    font-size: 28px;
    font-weight: 900;
    margin-bottom: 30px;
    line-height: 1.2;
    margin: 0 0 20px;
}
#discount_campaign .price-list {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 20px;
    margin-bottom: 20px;
}
@media print, screen and (min-width: 576px) {
    #discount_campaign .price-list {
        flex-direction: row;
    }
}
#discount_campaign .price-item {
    background: #fff;
    padding: 20px;
    border: 1px #009e52 solid;
    border-radius: 15px;
    box-shadow: 0 5px 5px rgba(0, 158, 82, 0.1);
    position: relative;
    overflow: hidden;
}
#discount_campaign .price-item::before {
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: left 0.5s;
}
#discount_campaign .size-label {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 10px;
    background: #f8f852;
    padding: 5px 45px 1px;
    border-radius: 50px;
    display: inline-block;
}
#discount_campaign .price-comparison {
    font-size: 16px;
}
#discount_campaign .original-price {
    position: relative;
    text-decoration: line-through;
    opacity: 0.8;
    font-size: clamp(0.938rem, -0.75rem + 4.69vw, 1.5rem);
    margin: 0 0 30px 0;
    width: 100%;
}
#discount_campaign .original-price::after {
    content: '';
    display: inline-block;
    width: 0;
    height: 0;
    border-right: 15px solid transparent;
    border-left: 15px solid transparent;
    border-top: 20px solid #009e52;
    position: absolute;
    bottom: -30px;
    left: 0;
    right: 0;
    margin: auto;
}
#discount_campaign .sale_price {
    font-size: clamp(1.5rem, -0.188rem + 4.69vw, 2.5rem);
    font-weight: 900;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    background: linear-gradient(transparent 60%, #f8f852 0%);
    color: #ff0015;
}
#discount_campaign .discount-amount {
    background: rgba(255, 255, 255, 0.2);
    padding: 6px 12px;
    border-radius: 20px;
    font-size: 14px;
    font-weight: 700;
    margin: auto;
}
#discount_campaign .note {
    color: #636e72;
    font-size: 14px;
    margin-top: 20px;
    font-style: italic;
}
#discount_campaign .price_wr {
    display: block;
}
@media print, screen and (min-width: 768px) {
    #discount_campaign .price-comparison {
        font-size: 16px;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-wrap: wrap;
        gap: 10px;
    }
    #discount_campaign .price_wr {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }
    /*#discount_campaign .original-price::after {
        border-top: 20px solid transparent;
        border-bottom: 20px solid transparent;
        border-left: 20px solid #009e52;
        bottom: 0;
        left: calc(100% + 15px);
        right: 0;
        margin: 0;
    }*/
}