@charset "UTF-8";
/*
@import "https://fonts.googleapis.com/css?family=PT+Sans";

@font-face {
    font-family: 'huifont';
    src: url("fonts/HuiFontP29.eot?") format("eot"), url("fonts/HuiFontP29.woff2") format("woff2"), url("fonts/HuiFontP29.woff") format("woff");
    font-weight: normal;
    font-style: normal;
}*/

/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,menu,nav,section,summary,time,mark,audio,video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}
html {
    margin: 0 auto 0 auto !important;
    font-size: 10px;
}
body {
    line-height: 1;
    font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro','メイリオ', 'Meiryo', '游ゴシック', 'Yu Gothic', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
article,aside,details,figcaption,figure,footer,header,menu,nav,section {display: block;}
ul,ol {list-style: none;}
blockquote,q {quotes: none;}
blockquote:before,blockquote:after,q:before,q:after {
    content: '';
    content: none;
}
a {
    margin: 0;
    padding: 0;
    /*font-size:100%;*/
    vertical-align: baseline;
    background: transparent;
}
img {
    vertical-align: top;
    font-size: 0;
    line-height: 0;
    width:100%;
    height: auto;
}
*,::before,::after {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
html {
    height: 100%;
    width: 100%;
}

body {
    width: 100%;
    height: 100%;
    min-width: 1020px;
    font-size: 1.4rem;
    line-height: 1.8;
    letter-spacing: 0.08em;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

@media screen and (max-width: 639px) {
    body {
        min-width: 420px;
        max-width: 100% !important;
    }
}

a {
    color: inherit;
    text-decoration: none;
    transition: 0.3s;
    display: inline-block;
}

a:hover {
    transition: 0.3s;
}

p {
    text-align: justify;
}

.opa {
    color: inherit;
    text-decoration: none;
    transition: 0.3s;
}

.opa:hover {
    transition: 0.3s;
    opacity: 0.7;
}

.sc {
    display: block;
    position: relative;
}

.sc img {
    max-width: 100%;
    height: auto;
}


.mode_wp:not(#page_index) #header {
    top: 32px;
}

.mode_wp .panel_area .panel_wrap,
.mode_wp .panel_area .panel_btn_box {
    top: 32px;
}

.mode_wp .fixed_info {
    top: 59px;
}

@media screen and (max-width: 782px) {

    .mode_wp .panel_area .panel_wrap,
    .mode_wp .panel_area .panel_btn_box {
        top: 46px;
    }

    .mode_wp .fixed_info {
        top: 73px;
    }
}

@media screen and (max-width: 600px) {

    .mode_wp .panel_area .panel_wrap,
    .mode_wp .panel_area .panel_btn_box {
        top: 0;
    }

    .mode_wp .fixed_info {
        top: 27px;
    }
}

#wrap {
    padding: 0;
    overflow: hidden;
}

@media only screen and (max-width: 639px) {
    #wrap {
        padding: 0;
overflow:hidden;
    }
}


.title_type01 {
    margin: 0 auto 35px;
    color: #000000;
    text-align: center;
    line-height: 1.4;
}

.title_type01 .en {
    font-family: 'Josefin Sans', sans-serif;
    font-size: 43px;
    font-size: 4.3rem;
    font-weight: 600;
    letter-spacing: 0.1em;
}

.title_type01 .jp {
    font-size: 11px;
    font-size: 1.1rem;
    font-weight: normal;
    letter-spacing: 0.16em;
}

@media screen and (max-width: 640px) {
    .title_type01 {
        border-bottom: 2px solid #ffffff;
        padding: 30px 35px;
        margin: 0 -20px;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        -webkit-align-items: center;
        align-items: center;
    }

    .title_type01 .en {
        font-size: 29px;
        font-size: 2.9rem;
        line-height: 1.0;
    }

    .title_type01 .jp {
        padding: 10px 0 0;
        font-size: 10px;
        font-size: 1rem;
        line-height: 1.0;
    }
}

.btn {
    margin: 0 auto;
    text-decoration: none;
    display: block;
    cursor: pointer;
    transition: 0.3s;
}

.btn:hover {
    transition: 0.3s;
}

.btn_type01 {
    width: 268px;
    padding: 0 0 0 28px;
}

.btn_type01 span {
    border: 1px solid #000000;
    width: 100%;
    height: 40px;
    margin: 0 auto;
    color: #000000;
    font-family: 'Josefin Sans', sans-serif;
    font-size: 26px;
    font-size: 2.6rem;
    font-weight: 100;
    text-align: center;
    line-height: 40px;
    letter-spacing: 0.05em;
    display: block;
    position: relative;
    transition: 0.3s;
}

.btn_type01 span::before {
    content: "";
    background: url("../content/images/common/btn01.svg") center no-repeat;
    background-size: contain;
    width: 35px;
    height: 35px;
    margin: auto;
    position: absolute;
    left: -15px;
    top: 0;
    bottom: 0;
}

.btn_type01:hover span {
    background: #000000;
    color: #ffffff;
    transition: 0.3s;
}

@media screen and (max-width: 768px) {
    .btn_type01 {
        width: 188px;
    }

    .btn_type01 span {
        font-size: 19px;
        font-size: 1.9rem;
    }
}

.btn_type02 {
    width: 268px;
    padding: 0 0 0 28px;
}

.btn_type02 span {
    border: 1px solid #ffffff;
    width: 100%;
    height: 40px;
    margin: 0 auto;
    color: #ffffff;
    font-family: 'Josefin Sans', sans-serif;
    font-size: 26px;
    font-size: 2.6rem;
    font-weight: 100;
    text-align: center;
    line-height: 40px;
    letter-spacing: 0.05em;
    display: block;
    position: relative;
    transition: 0.3s;
}

.btn_type02 span::before {
    content: "";
    background: url("../content/images/common/btn02.svg") center no-repeat;
    background-size: contain;
    width: 35px;
    height: 35px;
    margin: auto;
    position: absolute;
    left: -15px;
    top: 0;
    bottom: 0;
}

.btn_type02:hover span {
    background: #ffffff;
    color: #000000;
    transition: 0.3s;
}

@media screen and (max-width: 768px) {
    .btn_type02 {
        width: 188px;
    }

    .btn_type02 span {
        font-size: 19px;
        font-size: 1.9rem;
    }
}

.ul_type01 {
    margin: -12px -12px 0;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    justify-content: center;
}

.ul_type01 li {
    margin: 12px;
}

.ul_type01 li a {
    background: #000000 url("images/link_off.png") left center no-repeat;
    background-size: 20px auto;
    border: 1px solid #000000;
    min-width: 134px;
    height: 52px;
    padding: 0 15px 0 35px;
    color: #ffffff;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 52px;
}

.ul_type01 li a:hover {
    background-color: transparent;
    background-image: url("images/link_on.png");
    border: 1px solid #000000;
    color: #000000;
}

@media screen and (max-width: 768px) {
    .ul_type01 {
        margin: -4px -4px 0;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
    }

    .ul_type01 li {
        margin: 4px;
    }
}

.cs_area {
    padding: 50px 0;
}

.cs_area .text {
    font-size: 30px;
    font-size: 3rem;
    font-weight: bold;
    text-align: center;
}

/*通常ページ メインイメージ部分*/
.mainimg_area {
    border-bottom: 15px solid #000000;
}

.mainimg_area .area_inner {
    background-image: url("../content/images/common/topimg.png");
    background-position: center bottom;
    background-repeat: no-repeat;
    background-size: contain;
    width: 1000px;
    height: 240px;
    padding: 145px 0 0;
    margin: 0 auto;
}

.mainimg_area .area_inner .page_title {
    width: 310px;
    padding: 0 10px;
    margin: 0 0 0 auto;
    text-align: center;
    line-height: 1.0;
}

.mainimg_area .area_inner .page_title .en {
    font-family: 'Josefin Sans', sans-serif;
    font-size: 24px;
    font-size: 3rem;
    font-weight: 600;
    letter-spacing: 0.1em;
}

.mainimg_area .area_inner .page_title .jp {
    margin: 12px 0 0;
    font-size: 10px;
    font-size: 1rem;
}

@media screen and (max-width: 768px) {
    .mainimg_area {
        border-bottom: none;
    }

    .mainimg_area .area_inner {
        background-image: none;
        width: 100%;
        height: auto;
        padding: 50px 0 40px;
        margin: 0 auto;
    }

    .mainimg_area .area_inner .page_title {
        width: 100%;
        padding: 0 20px;
        margin: 0 auto;
    }

    .mainimg_area .area_inner .page_title .en {
        font-family: 'Josefin Sans', sans-serif;
        font-size: 20px;
        font-size: 2.6rem;
        font-weight: bold;
        letter-spacing: 0.1em;
    }

    .mainimg_area .area_inner .page_title .jp {
        margin: 12px 0 0;
        font-size: 12px;
        font-size: 1.2rem;
    }
}

.fixed_nav {
    margin: auto;
    position: fixed;
    right: 50px;
    top: 0;
    bottom: 0;
    z-index: 1000;
    pointer-events: none;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    justify-content: center;
}

.fixed_nav ul li {
    width: 69px;
    margin: 10px 0;
    pointer-events: auto;
    text-align: center;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 100;
}

.fixed_nav ul li .box_title {
    margin: 3px auto 0;
}

@media screen and (max-width: 768px) {
    .fixed_nav {
        display: none;
    }
}

#header {
    background-image: linear-gradient(#ffffff, #ffffff 60%, rgba(255, 255, 255, 0.3) 80%, rgba(0, 0, 0, 0));
    width: 100%;
    padding: 0;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
}

/*ヘッダー w768以下非表示*/
@media screen and (max-width: 768px) {
    #header {
        display: none;
    }
}

/*上部ナビ*/
#header .nav_area {
    width: 100%;
    padding: 0 35px 0 0;
    display: -webkit-flex;
    display: flex;
}

#header .nav_area .h_nav {
    padding: 20px 0 0 25px;
    display: -webkit-flex;
    display: flex;
}

#header .nav_area .h_nav li {
    height: 60px;
    margin: 0 10px;
}

#header .nav_area .h_nav li a,
#header .nav_area .h_nav li .label {
    padding: 10px 0;
    color: #000000;
    text-align: center;
    font-weight: normal;
    line-height: 1.0;
    display: block;
    cursor: pointer;
}

#header .nav_area .h_nav li a .en,
#header .nav_area .h_nav li .label .en {
    font-family: 'Josefin Sans', sans-serif;
    font-size: 21px;
    font-size: 2.3rem;
    display: block;
    font-weight: 100;
}

#header .nav_area .h_nav li a .jp,
#header .nav_area .h_nav li .label .jp {
    margin: 6px auto 0;
    font-size: 8px;
    font-size: 0.8rem;
    display: block;
}

#header .nav_area .h_nav li:hover a .en,
#header .nav_area .h_nav li:hover .label .en {
    font-weight: 600;
}

#header .nav_area .h_nav li.tree {
    position: relative;
}

#header .nav_area .h_nav li.tree .child {
    width: 160px;
    height: 0;
    padding: 0 0 0 30px;
    margin: -10px 0 0;
    position: absolute;
    left: calc(50% - 30px);
    overflow: hidden;
    transition: 0.3s;
}

#header .nav_area .h_nav li.tree .child.active {
    transition: 0.3s;
}

#header .nav_area .h_nav li.tree .child li {
    width: 100%;
    height: 30px;
    margin: 0;
    position: relative;
}

#header .nav_area .h_nav li.tree .child li::before {
    content: "";
    border-left: 1px solid #000000;
    border-bottom: 1px solid #000000;
    width: 10px;
    height: 30px;
    position: absolute;
    left: -10px;
    bottom: 50%;
}

#header .nav_area .h_nav li.tree .child li:first-child {
    margin-top: 15px;
}

#header .nav_area .h_nav li.tree .child li:first-child::before {
    height: 30px;
}

#header .nav_area .h_nav li.tree .child li a {
    width: 100%;
    padding: 0 10px;
    margin: 0;
    font-size: 12px;
    font-size: 1.2rem;
    text-align: left;
    display: block;
}

#header .nav_area .h_nav li.tree .child li a span {
    height: 30px;
    display: table-cell;
    vertical-align: middle;
}

#header .nav_area .h_nav li:nth-child(1) a {
    width: 100px;
}

#header .nav_area .h_nav li:nth-child(2) a {
    width: 140px;
}

#header .nav_area .h_nav li:nth-child(3) .label {
    width: 70px;
}

#header .nav_area .h_nav li:nth-child(4) a {
    width: 90px;
}

#header .nav_area .h_nav li:nth-child(5) a {
    width: 80px;
}

#header .nav_area .h_nav li:nth-child(6) a {
    width: 90px;
}

#header .nav_area .sns_list {
    padding: 30px 0 0;
    margin-left: auto;
    display: -webkit-flex;
    display: flex;
}

#header .nav_area .sns_list li {
    width: 25px;
    margin: 0 5px;
}

@media screen and (max-width: 768px) {
    #header .nav_area {
        width: 100%;
    }

    #header .nav_area .h_nav {
        display: block;
    }

    #header .nav_area .h_nav li {
        height: 40px;
    }

    #header .nav_area .h_nav li.logo a {
        padding: 0;
        display: inline;
    }

    #header .nav_area .h_nav li.logo a img {
        width: auto;
        max-width: initial;
        max-height: 100%;
    }

    #header .nav_area .h_nav li:not(.logo) {
        display: none;
    }
}

#header .page_header {
    width: 1000px;
    padding: 0;
    margin: 0 auto;
    display: -webkit-flex;
    display: flex;
}

@media screen and (max-width: 768px) {
    #header .page_header {
        background: #6F5949;
        height: 70px;
        width: 100%;
        padding: 15px;
    }
}

#header .main_slider {
    width: 100%;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: -1;
}

#header .main_slider .slider_item {
    background-image: none;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;
    height: 100vh;
}

@media screen and (max-width: 640px) {
    #header .main_slider .slider_item {}
}

#header .i_header {
    width: 1100px;
    height: 780px;
    margin: 0 auto;
    position: relative;
}

#header .i_header .nav_area {
    background: #ffffff;
    width: 190px;
    padding: 37px 0 0;
    -webkit-flex-direction: column-reverse;
    flex-direction: column-reverse;
    position: relative;
}

#header .i_header .nav_area::before {
    content: "";
    background: url("../content/images/common/nav_bg.png") center no-repeat;
    background-size: contain;
    width: 190px;
    height: 94px;
    position: absolute;
    bottom: -94px;
}

#header .i_header .nav_area .h_nav {
    width: 100%;
    padding: 0;
    margin: 15px auto 0;
    -webkit-flex-direction: column;
    flex-direction: column;
}

#header .i_header .nav_area .h_nav li {
    height: auto;
    margin: 6px 0 0;
}

#header .i_header .nav_area .h_nav li a,
#header .i_header .nav_area .h_nav li .label {
    width: 100%;
    padding: 8px 0;
}

#header .i_header .nav_area .h_nav li.tree .child {
    width: 0;
    height: 36px;
    padding: 0;
    margin: auto;
    position: absolute;
    left: calc(100% - 10px);
    top: 0;
    bottom: 0;
}

#header .i_header .nav_area .h_nav li.tree .child:before {
    content: "";
    border-style: solid;
    border-width: 10px 10px 10px 0;
    border-color: transparent #000000 transparent transparent;
    width: 0;
    height: 0;
    margin: auto;
    position: absolute;
    top: 6px;
    left: 0;
}

#header .i_header .nav_area .h_nav li.tree .child_nav {
    background: rgba(0, 0, 0, 0.9);
    height: 36px;
    padding: 0;
    margin: 0 0 0 10px;
    display: -webkit-flex;
    display: flex;
}

#header .i_header .nav_area .h_nav li.tree .child_nav li {
    border-right: 2px solid #ffffff;
    border-bottom: 2px solid #ffffff;
    width: 121px;
    height: 36px;
    margin: 0;
}

#header .i_header .nav_area .h_nav li.tree .child_nav li::before {
    content: none;
}

#header .i_header .nav_area .h_nav li.tree .child_nav li a {
    width: 120px;
    height: 36px;
    padding: 0 10px;
    color: #ffffff;
    font-size: 13px;
    font-size: 1.3rem;
    text-align: center;
}

#header .i_header .nav_area .h_nav li.tree .child_nav li a span {
    width: 120px;
    height: 36px;
}

#header .i_header .nav_area .sns_list {
    padding: 0;
    margin: 0 auto;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
}

#header .i_header .nav_area .sns_list li {
    margin: 0 5px;
}

#header .i_header .logo_box {
    position: absolute;
    right: 0px;
    bottom: 120px;
}

@media screen and (max-width: 640px) {
    #header .i_header {
        width: 100%;
        height: 110vh;
    }

    #header .i_header .nav_area {
        display: none;
    }

    #header .i_header .logo_box {
        padding: 35px 0 0;
        position: absolute;
        top: auto;
        left: 0;
        right: 0;
        bottom: 40vh;
        -moz-transform: translateY(100%);
        -ms-transform: translateY(100%);
        -webkit-transform: translateY(100%);
        transform: translateY(100%);
    }

    #header .i_header .logo_box .logo {
        max-width: 225px;
        margin: 0 auto;
        text-align: center;
    }

    #header .i_header .scroll_nav {
        width: 230px;
        margin: auto;
        text-align: right;
        position: absolute;
        bottom: 30px;
        right: 45px;
    }
}


#mymap {
    margin-bottom: 0px;
    width: 100%;
    height: 500px;
    overflow: hidden;
    position: relative;
    margin-top: 0px;
}

#mymap iframe {
    margin-top: -48px;
}


#footer {
    padding: 0;
}

@media screen and (max-width: 640px) {
    #footer {
        padding: 0;
    }
}

#footer .access_area {
    position: relative;
    background: #000000;
}

#footer .access_area .sp_img {
    display: none;
}

#footer .access_area .area_title {
    margin-bottom: 40px;
}

#footer .access_area .map_wrap {
    border-top: 10px solid #000000;
    border-left: 25px solid #000000;
    border-right: 25px solid #000000;
    border-bottom: 25px solid #000000;
    position: relative;
}

#footer .access_area .map_wrap #map {
    width: 100%;
    height: 420px;
}

#footer .access_area .map_wrap .map_img {
    pointer-events: none;
    position: absolute;
    bottom: 0;
    left: 90px;
}

#footer .access_area .map_wrap .map_link {
    width: 170px;
    height: 30px;
    position: absolute;
    right: 20px;
    bottom: 20px;
}

#footer .access_area .map_wrap .map_link a {
    background: #ffffff;
    border: 2px solid #000000;
    width: 170px;
    height: 30px;
    font-size: 14px;
    font-size: 1.4rem;
    text-align: center;
    line-height: 27px;
}

@media screen and (max-width: 640px) {
    #footer .access_area {
        padding: 20px 20px 0;
        background: #000000;
    }

    #footer .access_area .sp_img {
        text-align: center;
        display: block;
    }

    #footer .access_area .area_title {
        margin-bottom: 0;
        color: #ffffff;
    }

    #footer .access_area .map_wrap {
        border: none;
        border-bottom: 20px solid #000000;
        width: calc(100% + 40px);
        margin: 0 -20px;
    }

    #footer .access_area .map_wrap #map {
        height: 325px;
    }

    #footer .access_area .map_wrap .map_img {
        width: 268px;
        bottom: -10px;
        left: 10px;
    }

    #footer .access_area .map_wrap .map_link {
        width: 115px;
        height: 25px;
        position: absolute;
        top: 10px;
        right: 10px;
        bottom: auto;
    }

    #footer .access_area .map_wrap .map_link a {
        width: 115px;
        height: 25px;
        font-size: 12px;
        font-size: 1.2rem;
        line-height: 23px;
    }
}

#footer .info_area {
    padding: 75px 0 0;
    position: relative;
}


#footer .info_area .box_wrap {
    display: -webkit-flex;
    display: flex;
}

#footer .info_area .box_wrap .left_box {
    width: 355px;
    padding: 30px 0 0;
}

#footer .info_area .box_wrap .center_box {
    width: 290px;
}

#footer .info_area .box_wrap .center_box .info_wrap {
    font-family: 'Josefin Sans', "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
    font-weight: 600;
}

#footer .info_area .box_wrap .center_box .info_wrap .tel_box {
    margin: 10px 0 0;
    line-height: 1.2;
}

#footer .info_area .box_wrap .center_box .info_wrap .tel_box .box_head {
    font-size: 18px;
    font-size: 1.8rem;
    vertical-align: middle;
}

#footer .info_area .box_wrap .center_box .info_wrap .tel_box .partition {
    margin: 0 5px;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: normal;
}

#footer .info_area .box_wrap .center_box .info_wrap .tel_box .tel {
    font-size: 24px;
    font-size: 2.4rem;
    vertical-align: middle;
}

#footer .info_area .box_wrap .center_box .info_wrap .time_box {
    font-size: 13px;
    font-size: 1.3rem;
    font-weight: 600;
}

#footer .info_area .box_wrap .center_box .info_wrap .time_box .partition {
    margin: 0 3px;
    font-weight: normal;
}

#footer .info_area .box_wrap .center_box .info_wrap .time_box .time {
    letter-spacing: 0.08em;
}

#footer .info_area .box_wrap .center_box .info_wrap .time_box.open_box {
    margin: 5px 0 0;
    line-height: 1.4;
}

#footer .info_area .box_wrap .center_box .info_wrap .time_box.open_box .box_head {
    width: 60px;
    display: inline-block;
}

#footer .info_area .box_wrap .center_box .info_wrap .time_box.close_box .close {
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: bold;
}

#footer .info_area .box_wrap .center_box .sns_list {
    margin: 10px 0 0;
    display: -webkit-flex;
    display: flex;
}

#footer .info_area .box_wrap .center_box .sns_list li {
    width: 35px;
    margin: 0 13px 0 0;
}

#footer .info_area .box_wrap .center_box .sns_list li:last-child {
    margin-right: 0;
}

#footer .info_area .box_wrap .right_box {
    margin: 0 0 0 auto;
}

@media screen and (max-width: 640px) {
    #footer .info_area {
        padding: 60px 0 0;
    }

    #footer .info_area .box_wrap {
        -webkit-flex-direction: column;
        flex-direction: column;
    }

    #footer .info_area .box_wrap .left_box {

        padding: 0;
        margin: 0 auto;
    }

    #footer .info_area .box_wrap .center_box {
        width: 100%;
        max-width: 250px;
        margin: 32px auto 0;
    }

    #footer .info_area .box_wrap .center_box .sns_list {
        display: none;
    }

    #footer .info_area .box_wrap .right_box {
        display: none;
    }
}

#footer .insta_area {
    padding: 18px 0 0;
}

#footer .insta_area .area_head {
    margin: 0 0 13px;
}

#footer .insta_area .img_list {
    display: -webkit-flex;
    display: flex;
}

#footer .insta_area .img_list li {
    width: 128px;
    height: 128px;
    margin: 0 14px 0 0;
    overflow: hidden;
}

#footer .insta_area .img_list li:last-child {
    margin-right: 0;
}

#footer .insta_area .img_list li a {
    display: block;
}

@media screen and (max-width: 640px) {
    #footer .insta_area {
        display: none;
    }
}

/*専門店です部分*/
#footer .senmon_area {
    padding: 70px 0 60px;
}

#footer .senmon_area .modal_inline {
    display: none;
}

#footer .senmon_area .senmon_box {
    width: 590px;
    margin: 0 auto;
}

#footer .senmon_area .senmon_box .text {
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
}

#footer .senmon_area .senmon_box .text span {
    background-size: 34px auto;
    padding: 0 40px 0 10px;
    position: relative;
}

@media screen and (max-width: 640px) {
    #footer .senmon_area {
        padding: 40px 0 35px;
    }

    #footer .senmon_area .senmon_box {
        border: 1px solid #000000;
        width: 100%;
        max-width: 300px;
        padding: 10px 20px;
        margin: 0 auto;
    }

    #footer .senmon_area .senmon_box .text {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.5;
    }

    #footer .senmon_area .senmon_box .text span {
        background: none;
        padding: 0;
        letter-spacing: 0.1em;
    }
}

#footer .copyright_box {
    background: #000000;
    padding-bottom: 120px;
}

#footer .copyright_box .copyright {
    height: 55px;
    padding: 21px 10px;
    color: #ffffff;
    font-size: 13px;
    font-size: 1.3rem;
    text-align: center;
    line-height: 1.0;
    display: block;
}

.fixed_info {
    background: rgba(0, 0, 0, 0.83);
    width: 260px;
    position: fixed;
    top: 27px;
    right: 23px;
    z-index: 1000;
}

.fixed_info .icon_close {
    background: #ffffff;
    border: 1px solid #000000;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    position: absolute;
    top: -10px;
    right: -10px;
    cursor: pointer;
}

.fixed_info .icon_close:before,
.fixed_info .icon_close:after {
    content: "";
    background: #000000;
    width: 12px;
    height: 1px;
    margin: 0 auto;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    display: block;
}

.fixed_info .icon_close:before {
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.fixed_info .icon_close:after {
    -moz-transform: rotate(-135deg);
    -ms-transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
}

.fixed_info .info_wrap {
    padding: 14px 0 14px 20px;
    color: #ffffff;
    line-height: 1.0;
    font-family: 'Josefin Sans', "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
    font-weight: 600;
}

.fixed_info .info_wrap .tel_box {
    line-height: 1.2;
}

.fixed_info .info_wrap .tel_box .box_head {
    font-size: 15px;
    font-size: 1.5rem;
    vertical-align: middle;
}

.fixed_info .info_wrap .tel_box .partition {
    margin: 0 5px;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: normal;
}

.fixed_info .info_wrap .tel_box .tel {
    font-size: 19px;
    font-size: 1.9rem;
    vertical-align: middle;
}

.fixed_info .info_wrap .time_box {
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 1.4;
}

.fixed_info .info_wrap .time_box .partition {
    margin: 0 3px;
    font-weight: normal;
}

.fixed_info .info_wrap .time_box .time {
    letter-spacing: 0.08em;
}

.fixed_info .info_wrap .time_box.open_box {
    margin: 5px 0 0;
}

.fixed_info .info_wrap .time_box.open_box .box_head {
    width: 60px;
    display: inline-block;
}

.fixed_info .info_wrap .time_box.close_box {
    margin: 2px 0 0;
}

.fixed_info .info_wrap .time_box.close_box .box_head {
    font-size: 15px;
    font-size: 1.5rem;
}

.fixed_info .info_wrap .time_box.close_box .close {
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: bold;
}

@media screen and (max-width: 768px) {
    .fixed_info {
        display: none;
    }
}

/*モーダルメニュー部*/
.mode_wp .panel_area .panel_wrap,
.mode_wp .panel_area .panel_btn_box {
    top: 32px;
}

.mode_wp .fixed_info {
    top: 59px;
}

@media screen and (max-width: 782px) {

    .mode_wp .panel_area .panel_wrap,
    .mode_wp .panel_area .panel_btn_box {
        top: 46px;
    }

    .mode_wp .fixed_info {
        top: 73px;
    }
}

@media screen and (max-width: 600px) {

    .mode_wp .panel_area .panel_wrap,
    .mode_wp .panel_area .panel_btn_box {
        top: 0;
    }

    .mode_wp .fixed_info {
        top: 27px;
    }
}

.panel_area .panel_btn_box,
.panel_area .panel_logo_box,
.panel_area .panel_wrap {
    display: none;
}


@media screen and (max-width: 1199px) {
    .panel_area {
        width:100%;
        background:#000000;
        display: block;
        position: fixed;
        top: 0;
        z-index: 2001;
        height:100px;
    }
    .panel_area .panel_btn_box {
        width: 80px;
        height: 100px;
        padding: 0;
        display: block;
        position: fixed;
        top: 0;
        right: 15px;
        z-index: 2002;
    }
    .panel_area .panel_logo_box {
        height: 100px;
        padding: 0;
        display: block;
        position: fixed;
        top: 0;
        left: 15px;
        z-index: 2002;
    }
    
    .panel_area .panel_btn_box .panel_btn {
        cursor: pointer;
    }

    .panel_area .panel_btn_box .panel_btn .btn_open {
        display: block;
    }

    .panel_area .panel_btn_box .panel_btn .btn_close {
        display: none;
    }

    .panel_area .panel_btn_box .panel_btn.panel_close .btn_open {
        display: none;
    }

    .panel_area .panel_btn_box .panel_btn.panel_close .btn_close {
        display: block;
    }

    .panel_area .panel_overlay {
        background: rgba(0, 0, 0, 0.7);
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 1000;
        display: none;
    }

    .panel_area .panel_wrap {
        width: 100%;
        height: 100%;
        padding: 0px 0 30px;
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 1001;
        overflow-y: scroll;
        -webkit-overflow-scroling: touch;
        display: none;
    }

    .panel_area .panel_wrap.mode_open {
        display: block;
    }

    .panel_area .panel_wrap .panel_nav {
        width: 100%;
        margin: 0 auto;
        position: relative;
        overflow: hidden;
    }

    .panel_area .panel_wrap .sns_list {
        margin: 40px auto 0;
        display: -webkit-flex;
        display: flex;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: center;
        justify-content: center;
    }

    .panel_area .panel_wrap .sns_list li {
        width: 35px;
        margin: 0 7px;
    }

    .panel_area .panel_wrap .bottom_area {
        display: -webkit-flex;
        display: flex;
        -webkit-flex-direction: column;
        flex-direction: column;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-align-items: center;
        -webkit-align-items: center;
        align-items: center;
    }

    .panel_area .panel_wrap .bottom_area .info_wrap {
        margin: 30px auto 0;
        color: #ffffff;
        font-family: 'Josefin Sans', "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
        font-weight: 600;
        line-height: 1.0;
    }

    .panel_area .panel_wrap .bottom_area .info_wrap .tel_box {
        margin: 0;
        line-height: 1.2;
    }

    .panel_area .panel_wrap .bottom_area .info_wrap .tel_box .box_head {
        font-size: 15px;
        font-size: 1.5rem;
        vertical-align: middle;
    }

    .panel_area .panel_wrap .bottom_area .info_wrap .tel_box .partition {
        margin: 0 5px;
        font-size: 14px;
        font-size: 1.4rem;
        font-weight: normal;
    }

    .panel_area .panel_wrap .bottom_area .info_wrap .tel_box .tel {
        font-size: 19px;
        font-size: 1.9rem;
        vertical-align: middle;
    }

    .panel_area .panel_wrap .bottom_area .info_wrap .time_box {
        font-size: 15px;
        font-size: 1.5rem;
        font-weight: 600;
        line-height: 1.4;
    }

    .panel_area .panel_wrap .bottom_area .info_wrap .time_box .partition {
        margin: 0 3px;
        font-weight: normal;
    }

    .panel_area .panel_wrap .bottom_area .info_wrap .time_box .time {
        letter-spacing: 0.15em;
    }

    .panel_area .panel_wrap .bottom_area .info_wrap .time_box.open_box {
        margin: 3px 0 0;
        line-height: 1.4;
    }

    .panel_area .panel_wrap .bottom_area .info_wrap .time_box.close_box .close {
        font-size: 12px;
        font-size: 1.2rem;
        font-weight: bold;
    }

    .panel_area .panel_wrap .bottom_area .logo_box {
        margin: 30px auto 0;
        text-align: center;
    }
}

@media screen and (max-width: 640px) {
    .panel_area {
        width:100%;
        background:#000000;
        display: block;
        position: fixed;
        top: 0;
        z-index: 2001;
        height:60px;
    }
    .panel_area .panel_btn_box {
        width: 50px;
        height: 60px;
        padding: 0;
        display: block;
        position: fixed;
        top: 0;
        right: 15px;
        z-index: 2002;
    }
    .panel_area .panel_logo_box {
        width: 150px;
        height: 100px;
        padding: 0;
        display: block;
        position: fixed;
        top: 0;
        left: 15px;
        z-index: 2002;
    }
    
    .panel_area .panel_btn_box .panel_btn {
        cursor: pointer;
    }

    .panel_area .panel_btn_box .panel_btn .btn_open {
        display: block;
    }

    .panel_area .panel_btn_box .panel_btn .btn_close {
        display: none;
    }

    .panel_area .panel_btn_box .panel_btn.panel_close .btn_open {
        display: none;
    }

    .panel_area .panel_btn_box .panel_btn.panel_close .btn_close {
        display: block;
    }

    .panel_area .panel_overlay {
        background: rgba(0, 0, 0, 0.7);
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 1000;
        display: none;
    }

    .panel_area .panel_wrap {
        width: 100%;
        height: 100%;
        padding: 0px 0 30px;
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 1001;
        overflow-y: scroll;
        -webkit-overflow-scroling: touch;
        display: none;
    }

    .panel_area .panel_wrap.mode_open {
        display: block;
    }

    .panel_area .panel_wrap .panel_nav {
        width: 100%;
        margin: 0 auto;
        position: relative;
        overflow: hidden;
    }

    .panel_area .panel_wrap .sns_list {
        margin: 40px auto 0;
        display: -webkit-flex;
        display: flex;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: center;
        justify-content: center;
    }

    .panel_area .panel_wrap .sns_list li {
        width: 35px;
        margin: 0 7px;
    }

    .panel_area .panel_wrap .bottom_area {
        display: -webkit-flex;
        display: flex;
        -webkit-flex-direction: column;
        flex-direction: column;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-align-items: center;
        -webkit-align-items: center;
        align-items: center;
    }

    .panel_area .panel_wrap .bottom_area .info_wrap {
        margin: 30px auto 0;
        color: #ffffff;
        font-family: 'Josefin Sans', "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
        font-weight: 600;
        line-height: 1.0;
    }

    .panel_area .panel_wrap .bottom_area .info_wrap .tel_box {
        margin: 0;
        line-height: 1.2;
    }

    .panel_area .panel_wrap .bottom_area .info_wrap .tel_box .box_head {
        font-size: 15px;
        font-size: 1.5rem;
        vertical-align: middle;
    }

    .panel_area .panel_wrap .bottom_area .info_wrap .tel_box .partition {
        margin: 0 5px;
        font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
        font-size: 14px;
        font-size: 1.4rem;
        font-weight: normal;
    }

    .panel_area .panel_wrap .bottom_area .info_wrap .tel_box .tel {
        font-size: 19px;
        font-size: 1.9rem;
        vertical-align: middle;
    }

    .panel_area .panel_wrap .bottom_area .info_wrap .time_box {
        font-size: 15px;
        font-size: 1.5rem;
        font-weight: 600;
        line-height: 1.4;
    }

    .panel_area .panel_wrap .bottom_area .info_wrap .time_box .partition {
        margin: 0 3px;
        font-weight: normal;
    }

    .panel_area .panel_wrap .bottom_area .info_wrap .time_box .time {
        letter-spacing: 0.15em;
    }

    .panel_area .panel_wrap .bottom_area .info_wrap .time_box.open_box {
        margin: 3px 0 0;
        line-height: 1.4;
    }

    .panel_area .panel_wrap .bottom_area .info_wrap .time_box.close_box .close {
        font-size: 12px;
        font-size: 1.2rem;
        font-weight: bold;
    }

    .panel_area .panel_wrap .bottom_area .logo_box {
        margin: 30px auto 0;
        text-align: center;
    }
}

.modal_inline {
    min-width: 860px;
    padding: 0;
    color: #000000;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.8;
    letter-spacing: 0.1em;
}

.modal_inline .top_block {
    padding: 60px 40px 40px;
}

.modal_inline .top_block .block_head {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
}

.modal_inline .top_block .block_head .box_img {
    margin: 0 25px 0 0;
}

.modal_inline .top_block .block_head .text {
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
}

.modal_inline .top_block .block_head .text span {
    padding: 0 0 0 10px;
    letter-spacing: 0.18em;
    position: relative;
}

.modal_inline .top_block .block_head .text span::before,
.modal_inline .top_block .block_head .text span::after {
    content: "";
    border-top: 2px solid #000000;
    width: 27px;
    height: 1px;
    position: absolute;
    left: 0;
}

.modal_inline .top_block .block_head .text span::before {
    top: -13px;
    -moz-transform: rotate(-16deg);
    -ms-transform: rotate(-16deg);
    -webkit-transform: rotate(-16deg);
    transform: rotate(-16deg);
}

.modal_inline .top_block .block_head .text span::after {
    bottom: -13px;
    -moz-transform: rotate(16deg);
    -ms-transform: rotate(16deg);
    -webkit-transform: rotate(16deg);
    transform: rotate(16deg);
}

.modal_inline .top_block .text_box {
    margin: 50px auto 0;
}

.modal_inline .top_block .text_box p {
    text-align: center;
}

.modal_inline .top_block .text_box p:not(:first-child) {
    margin-top: 25px;
}

.modal_inline .top_block .info_wrap {
    margin: 30px auto 0;
    text-align: center;
    line-height: 1.0;
    font-family: 'Josefin Sans', "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
    font-weight: 600;
}

.modal_inline .top_block .info_wrap .tel_box {
    border-bottom: 1px solid #000000;
    padding: 0 5px;
    line-height: 1.0;
    display: inline-block;
}

.modal_inline .top_block .info_wrap .tel_box .box_head {
    font-size: 22px;
    font-size: 2.2rem;
    vertical-align: middle;
}

.modal_inline .top_block .info_wrap .tel_box .partition {
    margin: 0 5px;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
    font-size: 20px;
    font-size: 2rem;
    font-weight: normal;
}

.modal_inline .top_block .info_wrap .tel_box .tel {
    font-size: 28px;
    font-size: 2.8rem;
    vertical-align: middle;
}

.modal_inline .top_block .info_wrap .address_box {
    margin: 15px auto 0;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
    font-size: 14px;
    font-size: 1.4rem;
}

.modal_inline .top_block .info_wrap .time_box {
    margin-top: 10px;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 1.4;
}

.modal_inline .top_block .info_wrap .time_box .partition {
    margin: 0 3px;
    font-weight: normal;
}

.modal_inline .top_block .info_wrap .time_box .time {
    letter-spacing: 0.1em;
}

.modal_inline .top_block .info_wrap .time_box .open_box {
    margin: 0 3px;
    display: inline-block;
}

.modal_inline .top_block .info_wrap .time_box .close_box {
    margin: 0 3px;
    display: inline-block;
}

.modal_inline .top_block .info_wrap .time_box .close_box .box_head {
    font-size: 15px;
    font-size: 1.5rem;
}

.modal_inline .top_block .info_wrap .time_box .close_box .close {
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: bold;
}

.modal_inline .bottom_block {
    padding: 0;
}

@media screen and (max-width: 768px) {
    .modal_inline {
        width: 100%;
        min-width: 280px;
        font-size: 13px;
        font-size: 1.3rem;
        line-height: 1.8;
    }

    .modal_inline .top_block {
        padding: 50px 20px 20px;
    }

    .modal_inline .top_block .block_head {
        -webkit-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }

    .modal_inline .top_block .block_head .box_img {
        width: 38px;
        margin: 10px auto 0;
    }

    .modal_inline .top_block .block_head .text {
        font-size: 16px;
        font-size: 1.6rem;
        font-weight: bold;
        text-align: center;
    }

    .modal_inline .top_block .block_head .text span {
        padding: 0 30px;
        letter-spacing: 0.18em;
        display: block;
        position: relative;
    }

    .modal_inline .top_block .block_head .text span::before,
    .modal_inline .top_block .block_head .text span::after {
        content: "";
        border-top: 2px solid #000000;
        width: 27px;
        height: 1px;
        position: absolute;
        top: 30px;
        bottom: auto;
        left: auto;
    }

    .modal_inline .top_block .block_head .text span::before {
        left: 0;
        -moz-transform: rotate(-106deg);
        -ms-transform: rotate(-106deg);
        -webkit-transform: rotate(-106deg);
        transform: rotate(-106deg);
    }

    .modal_inline .top_block .block_head .text span::after {
        right: 0;
        -moz-transform: rotate(106deg);
        -ms-transform: rotate(106deg);
        -webkit-transform: rotate(106deg);
        transform: rotate(106deg);
    }

    .modal_inline .top_block .text_box {
        margin: 20px auto 0;
    }

    .modal_inline .top_block .text_box p {
        text-align: justify;
    }

    .modal_inline .top_block .text_box p:not(:first-child) {
        margin-top: 25px;
    }

    .modal_inline .top_block .info_wrap {
        margin: 30px auto 0;
        text-align: left;
        line-height: 1.0;
        font-weight: 600;
    }

    .modal_inline .top_block .info_wrap .tel_box .box_head {
        font-size: 20px;
        font-size: 2rem;
    }

    .modal_inline .top_block .info_wrap .tel_box .partition {
        font-size: 19px;
        font-size: 1.9rem;
    }

    .modal_inline .top_block .info_wrap .tel_box .tel {
        font-size: 26px;
        font-size: 2.6rem;
    }

    .modal_inline .top_block .info_wrap .address_box {
        margin: 15px auto 0 0;
        font-size: 10px;
        font-size: 1rem;
        line-height: 1.4;
    }

    .modal_inline .top_block .info_wrap .time_box {
        margin-top: 5px;
        font-size: 10px;
        font-size: 1rem;
    }

    .modal_inline .top_block .info_wrap .time_box .close_box .box_head {
        font-size: 10px;
        font-size: 1rem;
    }

    .modal_inline .top_block .info_wrap .time_box .close_box .close {
        font-size: 10px;
        font-size: 1rem;
    }

    .modal_inline .bottom_block .block_img {
        width: 100%;
    }

    .modal_inline .bottom_block .block_img img {
        width: 100%;
        max-width: initial;
    }
}

.contents {
    padding: 100px 0 0;
    margin: 0 auto;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.8;
}

@media screen and (max-width: 640px) {
    .contents {
        padding-bottom: 80px;
    }
}

/*トップページ用*/
#page_index #header {
    background: none;
    position: static;
}

@media screen and (max-width: 640px) {
    #page_index #header {
        width: 100%;
        display: block;
    }
}

#page_index .anker {
    top: -20px;
}

#page_index .contents {
    padding-bottom: 90px;
}

@media screen and (max-width: 640px) {
    #page_index .contents {
        padding: 0;
    }
}

#page_index .about_area {
    padding: 35px 0 0;
    margin: 35px 0 0;
    position: relative;
}

#page_index .about_area .area_img {
    position: absolute;
    top: 0;
    left: 0;
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
    -moz-transform: translateY(40px);
    -ms-transform: translateY(40px);
    -webkit-transform: translateY(40px);
    transform: translateY(40px);
    transition: 1.4s;
}

#page_index .about_area .area_img.active {
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -webkit-transform: translateY(0);
    transform: translateY(0);
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
}



.tabimg {
    max-width: 80% !important;
}

#page_index .about_area .area_head {
    font-size: 11px;
    font-size: 1.1rem;
    text-align: center;
}

#page_index .about_area .area_title {
    margin: 50px auto 0;
    font-size: 19px;
    font-size: 1.9rem;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.28em;
}

#page_index .about_area .area_text {
    margin: 35px auto 0;
}

#page_index .about_area .area_text p {
    font-size: 14px;
    font-size: 1.4rem;
    text-align: center;
    line-height: 2.8;
    letter-spacing: 0.4em;
}

#page_index .about_area .area_text p:not(:first-child) {
    margin: 40px auto 0;
}

#page_index .about_area .btn_box {
    margin: 50px auto 0;
}

@media screen and (max-width: 768px) {
    #page_index .about_area {
        padding: 0;
        margin: 40px 0 0;
        position: relative;
    }

    #page_index .about_area .area_img {
        max-width: 220px;
        top: 70px;
        filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
        opacity: 1;
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    #page_index .about_area .area_head {
        width: 186px;
        margin: 0 auto 50px;
        font-size: 14px;
        font-size: 1.4rem;
    }

    #page_index .about_area .area_head .jp {
        margin: 10px auto 0;
    }

    #page_index .about_area .area_title {
        font-size: 18px;
        font-size: 1.8rem;
        line-height: 2.2;
        margin: 0 auto;
    }

    #page_index .about_area .area_text {
        padding: 0 20px;
        margin: 35px auto 0;
    }

    #page_index .about_area .area_text p {
        font-size: 14px;
        font-size: 1.4rem;
        text-align: justify;
        line-height: 2.0;
        letter-spacing: 0.15em;
    }

    #page_index .about_area .area_text p:not(:first-child) {
        margin: 30px auto 0;
    }

    #page_index .about_area .btn_box {
        margin: 40px auto 0;
    }
}

#page_index .concept_area {
    padding: 130px 0 0;
    position: relative;
}

#page_index .concept_area .area_img {
    margin: -270px 0 0;
    text-align: right;
    position: relative;
    z-index: -1;
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
    -moz-transform: translateY(40px);
    -ms-transform: translateY(40px);
    -webkit-transform: translateY(40px);
    transform: translateY(40px);
    transition: 1.4s;
}

#page_index .concept_area .area_img.active {
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -webkit-transform: translateY(0);
    transform: translateY(0);
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
}

#page_index .concept_area .area_text {
    margin: 50px auto 0;
    font-size: 14px;
    font-size: 1.4rem;
    text-align: center;
    line-height: 2.8;
    letter-spacing: 0.4em;
}

@media screen and (max-width: 768px) {
    #page_index .concept_area {
        padding: 20px 0 0;
        position: relative;
    }

    #page_index .concept_area .area_img {
        width: 100%;
        max-width: 400px;
        margin: 0 auto;
        text-align: center;
        filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
        opacity: 1;
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    #page_index .concept_area .area_img img {
        width: 100%;
    }

    #page_index .concept_area .area_text {
        padding: 0 40px;
        margin: 15px auto 0;
        text-align: justify;
        line-height: 2.0;
        letter-spacing: 0.15em;
    }
}

#page_index .menu_area {
    padding: 250px 0 300px;
}

#page_index .menu_area .menu_wrap {
    height: 1200px;
    padding: 52px 0 0 79px;
    position: relative;
}

#page_index .menu_area .menu_wrap .block {
    display: -webkit-flex;
    display: flex;
    position: absolute;
    left: 79px;
    overflow: hidden;
}

#page_index .menu_area .menu_wrap .block .block_head a {
    background-color: #000000;
    height: 100%;
    width: 180px;
    display: block;
    position: relative;
}

#page_index .menu_area .menu_wrap .block .block_head a:before {
    content: "";
    border-style: solid;
    border-width: 9px 0 9px 9px;
    border-color: transparent transparent transparent #000000;
    width: 0;
    height: 0;
    margin: auto;
    position: absolute;
    right: -9px;
    top: 0;
    bottom: 0;
}

#page_index .menu_area .menu_wrap .block .block_head a .label {
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
}

#page_index .menu_area .menu_wrap .block .block_head a .label .label_img {
    width: 62px;
    margin: 0 auto;
    text-align: center;
}

#page_index .menu_area .menu_wrap .block .block_head a .label .label_text {
    color: #ffffff;
    font-family: 'Josefin Sans', sans-serif;
    font-size: 19px;
    font-size: 1.9rem;
    font-weight: 100;
    text-align: center;
    line-height: 1.6;
}

#page_index .menu_area .menu_wrap .block .block_left {
    padding: 0 31px 0 0;
}

#page_index .menu_area .menu_wrap .block .block_center {
    padding: 0 31px 0 0;
}

#page_index .menu_area .menu_wrap .block .box_wrap {
    margin: 0 0 25px;
    display: -webkit-flex;
    display: flex;
}

#page_index .menu_area .menu_wrap .block .box_wrap .menu_box {
    margin: 0 30px 0 0;
}

/*#page_index .menu_area .menu_wrap .block .box_wrap .menu_box:last-child {
margin-right: 0;
}*/
#page_index .menu_area .menu_wrap .block .menu_box {
    width: 210px;
}

#page_index .menu_area .menu_wrap .block .menu_box .menu_cat {
    margin: 6px auto 0;
    font-family: 'Josefin Sans', sans-serif;
    font-size: 17px;
    font-size: 1.7rem;
    font-weight: 100;
    text-align: center;
}

#page_index .menu_area .menu_wrap .block .link_box {
    width: 450px;
    height: 45px;
}

#page_index .menu_area .menu_wrap .block .link_box a {
    background: #000000;
    border: 1px solid #000000;
    height: 100%;
    min-width: 134px;
    padding: 0 10px 0 10px;
    text-align: center;
    color: #ffffff;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 45px;
    letter-spacing: 0.2em;
    display: block;
}

#page_index .menu_area .menu_wrap .block .link_box a:hover {
    background-color: transparent;
    border: 1px solid #000000;
    color: #000000;
}

#page_index .menu_area .menu_wrap .block .block_text {
    padding: 15px 0 0 20px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 2.0;
    letter-spacing: 0.3em;
}

/*トップページ メニュー*/
#page_index .menu_area .menu_wrap .renove_block {
    height: 235px;
    top: 52px;
}

#page_index .menu_area .menu_wrap .renove_block .block_head {
    height: 180px;
}

#page_index .menu_area .menu_wrap .natural_block {
    height: 236px;
    top: 290px;
}

#page_index .menu_area .menu_wrap .natural_block .block_head {
    height: 180px;
}

#page_index .menu_area .menu_wrap .design_block {
    height: 236px;
    top: 529px;
}

#page_index .menu_area .menu_wrap .design_block .block_head {
    height: 180px;
}

#page_index .menu_area .menu_wrap .wall_block {
    height: 236px;
    top: 768px;
}

#page_index .menu_area .menu_wrap .wall_block .block_head {
    height: 180px;
}

#page_index .menu_area .menu_wrap .water_block {
    height: 236px;
    top: 1006px;
}

#page_index .menu_area .menu_wrap .water_block .block_head {
    height: 180px;
}

#page_index .menu_area .menu_wrap .onestop_block {
    height: 236px;
    top: 1244px;
}

#page_index .menu_area .menu_wrap .onestop_block .block_head {
    height: 180px;
}

@media screen and (max-width: 768px) {
    #page_index .menu_area {
        padding: 95px 0 90px;
    }

    #page_index .menu_area .area_title {
        background: #000000;
        color: #ffffff;
    }

    #page_index .menu_area .menu_wrap {
        background: none;
        height: auto;
        padding: 0;
        position: relative;
    }

    #page_index .menu_area .menu_wrap .block {
        height: auto;
        -webkit-flex-direction: column;
        flex-direction: column;
        position: static;
        overflow: visible;
    }

    #page_index .menu_area .menu_wrap .block .block_head {
        height: auto;
        padding-top: 15px;
        margin-bottom: -35px;
    }

    #page_index .menu_area .menu_wrap .block .block_head a {
        background-color: #ffffff;
        background-image: url("images/icon_menu04.png");
        background-position: center;
        background-repeat: no-repeat;
        background-size: 45px auto;
        border-radius: 50%;
        height: 74px;
        width: 74px;
        margin: 0 auto;
    }

    #page_index .menu_area .menu_wrap .block .block_head a:before {
        content: none;
    }

    #page_index .menu_area .menu_wrap .block .block_head a .label {
        display: none;
    }

    #page_index .menu_area .menu_wrap .block .block_left {
        padding: 0;
    }

    #page_index .menu_area .menu_wrap .block .block_center {
        padding: 0;
    }

    #page_index .menu_area .menu_wrap .block .box_wrap {
        margin: 0 0 20px;
    }

    #page_index .menu_area .menu_wrap .block .box_wrap .menu_box {
        margin: 0;
    }

    #page_index .menu_area .menu_wrap .block .box_wrap .menu_box:nth-child(1) ~ .menu_box {
        display: none;
    }

    #page_index .menu_area .menu_wrap .block .menu_box {
        width: 100%;
        margin-bottom: 20px;
    }

    #page_index .menu_area .menu_wrap .block .menu_box .menu_cat {
        display: none;
    }

    #page_index .menu_area .menu_wrap .block .menu_box .menu_img {
        width: calc(100% + 40px);
        margin: 0 -20px;
    }

    #page_index .menu_area .menu_wrap .block .menu_box .menu_img a {
        width: 100%;
    }

    #page_index .menu_area .menu_wrap .block .menu_box .menu_img img {
        width: 100%;
        max-width: initial;
    }

    #page_index .menu_area .menu_wrap .block .link_box {
        width: 100%;
        max-width: 450px;
        height: 59px;
        margin: 0 auto;
    }

    #page_index .menu_area .menu_wrap .block .link_box a {
        background: #000000;
        padding: 0 10px 0 10px;
        font-size: 17px;
        font-size: 1.7rem;
        line-height: 59px;
        text-align: center;
    }

    #page_index .menu_area .menu_wrap .block .block_text {
        width: 100%;
        max-width: 450px;
        padding: 15px 10px 0 10px;
        margin: 0 auto;
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 2.0;
        letter-spacing: 0.3em;
    }

    #page_index .menu_area .menu_wrap .renove_block .block_head a {
        background-image: url("../content/images/top/icon_menu06.svg");
    }

    #page_index .menu_area .menu_wrap .natural_block .block_head a {
        background-image: url("../content/images/top/icon_menu07.svg");
    }

    #page_index .menu_area .menu_wrap .design_block .block_head a {
        background-image: url("../content/images/top/icon_menu08.svg");
    }

    #page_index .menu_area .menu_wrap .wall_block .block_head a {
        background-image: url("../content/images/top/icon_menu09.svg");
    }

    #page_index .menu_area .menu_wrap .water_block .block_head a {
        background-image: url("../content/images/top/icon_menu10.svg");
    }

    #page_index .menu_area .menu_wrap .onestop_block .block_head a {
        background-image: url("../content/images/top/icon_menu12.svg");
    }
}

/*----------------------------------cloverhouse CSS */
.br_sp {
    display: none;
}

@media only screen and (min-width: 768px) {
    .br_sp {
        display: block;
    }
}


.clearboth {
    clear: both;
}

/*汎用装飾*/
.txt-bold {
    font-weight: bold;
}

.txt-black {
    color: #000000;
}

.txt-white {
    color: #ffffff;
}

.txt-orang {
    color: #ff9a4c;
}

.txt-center {
    text-align: center !important;
}
.txt-right {
    text-align:right !important;
}



/*トップページ 特集 PC*/
.feature_area {
    background: #000000;
    padding: 90px 0 95px;
    color: #ffffff;
}

.feature_area .area_title {
    margin-bottom: 50px;
    color: #ffffff;
}

.feature_area .btn_box {
    margin: 50px auto 0;
}



.feature_block .feature_box .img_wrap {
    position: relative;
}

.feature_block .feature_box .img_wrap .icon_new {
    position: absolute;
    top: -78px;
    left: 10px;
}

.feature_block .feature_box .textbox {
    margin: 15px 0 0;
}

.feature_block .feature_box .textbox .box_title {
    font-size: 17px;
    font-size: 1.7rem;
    font-weight: bold;
    letter-spacing: 0.1em;
}

/*トップページ 特集 SP*/
@media screen and (max-width: 640px) {
    .feature_area {
        padding: 0 0 120px;
    }

    .feature_area .area_title {
        margin-bottom: 0;
    }

    .feature_area .btn_box {
        margin: 20px auto 0;
    }


    .feature_block {
        width: 100%;
        margin: 0;
    }

    .feature_block .feature_box {
        background-image: linear-gradient(to right, #ffffff, #ffffff 40%, rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, 0) 100%);
        background-size: 6px 1px;
        background-position: bottom left;
        background-repeat: repeat-x;
        width: 100%;
        padding: 0;
        margin: 0;
    }

    .feature_block .feature_box:last-child {
        background: none;
    }

    .feature_block .feature_box .link_box {
        padding: 20px 0;
        display: -webkit-flex;
        display: flex;
    }

    .feature_block .feature_box .img_wrap .box_img {
        width: 100px;
        object-fit: cover;
    }

    .feature_block .feature_box .img_wrap .icon_new {
        display: none;
    }

    .feature_block .feature_box .textbox {
        padding: 0px 0 0 15px;
        margin: 0;
    }

    .feature_block .feature_box .textbox .box_title {
        font-size: 14px;
        font-size: 1.4rem;
    }
}

/*example 施工事例 PC */
.example_contents {
    width: 100%;
    padding-top: 0px;
}

.example_main {
    width: 100%;
}

.example_1stbox {
    width: 860px;
    margin: -80px auto 10px;
}

.example_1st {
    width: 100%;
    margin: 0px;
    padding: 30px 30px 0px 30px;
    background: rgba(255, 255, 255, 0.8);
    position: relative;
}

.example_1st h3 {
    font-size: 1.2em;
    letter-spacing: 0.4em;
    text-align: center;
}

.example_text {
    text-align: justify;
    font-size: 1em;
    letter-spacing: 0.1em;
    line-height: 2.5em;
    padding: 20px 80px 40px 80px;
}

.example_box {
    width: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin: 0 auto;
}
.example_box li {
    width: 23%;
    text-align: center;
    margin:0 1% 0 1%;
}

.example_box li a:hover {
    opacity: 0.5;
    color: #cc0000;
}


.example_img {
    position: relative;
    /* 相対位置指定 */
}

.example_img .caption {
    font-size: 1.2rem;
    text-align: left;
    padding: 5px 10px 30px 10px;
}

.example_img .mask {
    width: 100%;
    height: 100%;
    position: absolute;
    /* 絶対位置指定 */
    top: 0;
    left: 0;
    opacity: 0;
    /* マスクを表示しない */
    background-color: rgba(0, 0, 0, 0.4);
    /* マスクは半透明 */
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
}

.example_img:hover .mask {
    opacity: 1;
    /* マスクを表示する */
}

/*example 施工事例 スマホ */
@media only screen and (max-width: 640px) {
    .example_contents {
        width: 100%;
        padding-top: 0px;
        padding-bottom: 10px;
    }

    .example_1stbox {
        width: 100%;
        margin: 10px auto 10px;
    }

    .example_1st {
        width: 100%;
        margin: 0px;
        padding: 30px 0 10px 0 !important;
    }

    .example_1st h3 {
        font-size: 1.1em;
        letter-spacing: 0.4em;
    }

    .example_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 20px 10px 40px 10px !important;
    }

    .example_box {
        width: 99%;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: row wrap;
        margin: 0 auto;
    }

    .example_box li {
        width: 46%;
        text-align: center;
        margin: 0 2% 0 2%;
    }

}

/*example 施工事例詳細 PC */
.example_det_1stbox {
    width: 860px;
    margin: -80px auto 10px;
}

.example_det_1st {
    width: 100%;
    margin: 0px;
    padding: 30px 30px 30px 30px;
    background: rgba(255, 255, 255, 0.8);
    position: relative;
}

.example_det_1st h3 {
    font-size: 1.2em;
    letter-spacing: 0.4em;
    text-align: center;
}

.example_det_l-title_box {
    width: 100%;
    background: #000000;
    padding: 10px;
}

.example_det_l-title {
    font-size: 1.8rem;
    text-align: center;
    font-weight: bold;
    color: #ffffff;
}

.example_det_contents {
    width: 860px;
    margin: 10px auto 10px;
}

.example_det_contents .example_1colm {
    width: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-flow: row wrap;
    margin: 25px auto;
}

.example_det_contents .example_1colm li {
    width: 100%;
    text-align: center;
}

.example_det_contents .example_2colm {
    width: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-flow: row wrap;
    margin: 25px auto;
}

.example_det_contents .example_2colm li {
    width: 48%;
    text-align: center;
}

.example_det_contents .example_2colm2 {
    width: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-flow: row wrap;
    margin: 0px auto;
}

.example_det_contents .example_2colm2 li {
    width: 48%;
    text-align: center;
    padding-top: 20px;
}

.example_det_contents .example_3colm {
    width: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-flow: row wrap;
    margin: 25px auto;
}

.example_det_contents .example_3colm li {
    width: 30%;
    text-align: center;
    padding-top: 20px;
}

.example_det_contents .example_3col1 {
    width: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-flow: row wrap;
    margin: 25px auto;
}

.example_det_contents .example_3col1 li {
    width: 30%;
    text-align: center;
    padding-top: 20px;
}

.example_det_text {
    text-align: justify;
    font-size: 1.1em;
    letter-spacing: 0.1em;
    line-height: 2em;
    padding: 20px 50px 20px 50px;
    text-align: left;
}

#example_image_layout {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 10px;
}


#example_image_layout li {
    margin-bottom: 5px;
}

#example_image_layout li.vertically {
    width: 30.4%;
}

#example_image_layout li.horizontally-l {
    width: 68.4%;
}

#example_image_layout li.horizontally-s {
    width: 49.5%;
}

/*施工事例データ PC・SP共通*/
.example_table_title_box {
    width: 100%;
    margin: 0 !important;
    padding: 20px 50px 0px 50px;
}

.example_table_title {
    border-top: 1px solid #999999;
    border-bottom: 1px solid #999999;
    padding: 5px;
    font-size: 1.1em;
    font-weight: bold;
}

.example_table_box {
    width: 100%;
    margin: 0 !important;
    padding: 5px 50px 20px 50px;
}

.example_table_box li:nth-child(odd) {
    width: 30%;
    background: #dddddd;
    border-bottom: 1px solid #999999;
    margin: 0px;
    padding: 3px 0px 3px 0px;
    font-size: 1em;
    font-weight: bold;
}
.example_table_box li:nth-child(even) {
    width: 70%;
    background: #ffffff;
    border-bottom: 1px solid #999999;
    margin: 0px;
    padding: 3px 0px 3px 0px;
}
.exa_info { /*工事内容*/
    width: 100% !important;
    background: #ffffff !important;
    border-bottom: 1px solid #999999;
    margin: 0px;
    padding: 3px 0px 3px 0px;
    font-size:0.8rem !important;
    font-weight:normal !important;
}

.example_table_title2 {
    border-top: 1px solid #999999;
    border-bottom: 1px solid #999999;
    padding: 5px;
    margin-top: 50px;
    font-size: 1.1em;
    font-weight: bold;
}

.example_table_box2 {
    width: 100%;
    margin: 0 !important;
    padding: 5px 50px 20px 50px;
}

.example_table_box2 li:nth-child(odd) {
    width: 20%;
    background: #dddddd;
    border-bottom: 1px solid #999999;
    margin: 0px;
    padding: 3px 0px 3px 0px;
    font-size: 1em;
    font-weight: bold;
}

.example_table_box2 li:nth-child(even) {
    width: 80%;
    background: #ffffff;
    border-bottom: 1px solid #999999;
    margin: 0px;
    padding: 3px 0px 3px 0px;
}

.example_table_text {
    margin: 0px 5px 0px 16px;
    text-align: left;
}

/*施工の様子 タイトル*/
.construction_table_title_box {
    width: 100%;
    margin: 0 !important;
    padding: 20px 0px 0px 0px;
}

.construction_table_title {
    border-top: 1px solid #999999;
    border-bottom: 1px solid #999999;
    padding: 5px;
    font-size: 1.1em;
    font-weight: bold;
    text-align:center;
}


/*example 施工事例詳細 SP */
@media only screen and (max-width: 640px) {
    .example_det_1stbox {
        width: 100%;
        margin: 10px auto 10px;
    }

    .example_det_1st {
        width: 100%;
        margin: 0px;
        padding: 30px 0 10px 0 !important;
    }

    .example_det_1st h3 {
        font-size: 1.1em;
        letter-spacing: 0.4em;
    }

    .example_det_l-title {
        font-size: 1.6rem;
        line-height:3.0rem;
        text-align: center;
        padding-top:30px !important;
    }

    .example_det_contents {
        width: 100%;
        margin: 10px auto 10px;
    }

    .example_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 10px 15px 20px 15px !important;
        text-align: left;
    }

    .example_det_contents .example_2colm2 li {
        width: 100%;
        text-align: center;
        padding-top: 20px;
    }

    .example_det_contents .example_3col1 li {
        width: 100%;
        text-align: center;
        padding-top: 20px;
    }

    .example_table_box li:nth-child(odd) {
        font-size: 0.8em;
    }

    .example_table_title_box2 {
        width: 100%;
        margin: 0 !important;
        padding: 20px 20px 0px 20px;
    }

    .example_table_title2 {
        border-top: 1px solid #999999;
        border-bottom: 1px solid #999999;
        padding: 5px;
        margin-top: 50px;
        font-size: 1.1em;
        font-weight: bold;
    }

    .example_table_box2 {
        width: 100%;
        margin: 0 !important;
        padding: 5px 20px 20px 20px;
    }

    .example_table_box2 li:nth-child(odd) {
        width: 100%;
        background: #dddddd;
        border-bottom: 1px solid #999999;
        margin: 0px;
        padding: 3px 0px 3px 0px;
        font-size: 1em;
        font-weight: bold;
    }

    .example_table_box2 li:nth-child(even) {
        width: 100%;
        background: #ffffff;
        border-bottom: 1px solid #999999;
        margin: 0px;
        padding: 3px 0px 3px 0px;
    }
}

/*example2 施工事例詳細 ver2 width1200 PC*/
.exp_det_cont {
    width: 1200px;
    margin: 0 auto 0 auto;
}
.exp_det_cont ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top:0px;
}
.exp_det_cont ul li {
    margin-bottom: 10px;
    vertical-align: top;
}
.exp_det_cont ul li.length01 {
    width: 30.4%;
}
.exp_det_cont ul li.length02 {
    width: 32.5%;
}
.exp_det_cont ul li.oblong01 {
    width: 68.4%;
}
.exp_det_cont ul li.oblong02 {
    width: 49.5%;
}
.exp_det_cont ul li img {
    width: 100%;
    height: auto;
    border-radius: 0px !important;
    box-shadow: 0 !important;
}

@media only screen and (min-width:641px) and (max-width: 1199px) {
    .exp_det_cont {
        width: 100%;
        margin: 0 auto 0 auto;
    }
    .exp_det_cont ul li.length01 {
        width: 100%;
    }
    .exp_det_cont ul li.length02 {
        width: 100%;
    }
    .exp_det_cont ul li.oblong01 {
        width: 100%;
    }
    .exp_det_cont ul li.oblong02 {
        width: 100%;
    }
}

/*example 施工事例詳細 SP */
@media only screen and (max-width: 640px) {
    .exp_det_cont {
        width: 100%;
        margin: 0 auto 0 auto;
    }
    .exp_det_cont ul li.length01 {
        width: 100%;
    }
    .exp_det_cont ul li.length02 {
        width: 100%;
    }
    .exp_det_cont ul li.oblong01 {
        width: 100%;
    }
    .exp_det_cont ul li.oblong02 {
        width: 100%;
    }
}

/*about クローバーハウスについて PC */
.about_about {
    width: 100%;
    background-color: #000000;
    padding-top: 0px;
    padding-bottom: 200px;
}

.about_about_buttom {
    width: 100%;
}

.about_about_main {
    width: 100%;
}

.about_about_box {
    width: 860px;
    margin: -150px auto;
}

.about_about_box-t {
    width: 100%;
    margin: 0px;
    position: relative;
}

.about_about_box-m {
    width: 100%;
    margin: 0px;
    background: #ffffff;
    position: relative;
}

.about_about_box-m h3 {
    font-size: 27px;
    letter-spacing: 0.4em;
    text-align: center;
}

.about_about_box-b {
    width: 100%;
    margin: 0px;
    position: relative;
}

.about_about_text {
    text-align: justify;
    font-size: 1.2em;
    letter-spacing: 0.1em;
    line-height: 1.8em;
    padding: 20px 200px 40px 200px;
}

/*about クローバーハウスについて スタジオ紹介 PC */
.about_studio {
    margin: auto;
    width: 980px;
}

.about_studio_title {
    font-size: 23px;
    letter-spacing: 0.8em;
    padding-bottom: 10px;
    border-bottom: #000 dotted 1px;
    text-align: center;
    margin-top: 0px;
    margin-bottom: 0px;
}

.about_studio_box1 {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.about_studio_box1 li:nth-child(odd) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 1;
}

.about_studio_box1 li:nth-child(even) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 2;
}

.about_studio_box2 {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.about_studio_box2 li:nth-child(odd) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 1;
}

.about_studio_box2 li:nth-child(even) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 2;
}

.about_studio_text {
    text-align: justify;
    font-size: 14px;
    letter-spacing: 0.1em;
    line-height: 1.8em;
    padding: 10px 20px 40px 70px;
}

.about_studio_text2 {
    text-align: justify;
    font-size: 14px;
    letter-spacing: 0.1em;
    line-height: 1.8em;
    padding: 10px 70px 40px 20px;
}

/*about クローバーハウスについて スタッフ紹介 PC */
.about_staff {
    width: 980px;
    margin: 60px auto;
}

.about_staff_title {
    width: 980px;
    color: #fff;
    font-size: 21px;
    background-color: #000;
    padding: 20px 0px 20px 0px;
    text-align: center;
    letter-spacing: 0.15em;
}

.about_staff_box {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.about_staff_box li {
    width: 33%;
    margin-top: 40px;
    padding: 20px 50px 40px 50px;
    text-align: center;
    border-right: #000 1px dotted;
}

.about_staff_box li img {
    border-radius: 50%;
    margin-left: auto;
    margin-right: auto;
}

.about_staff_box_p1 {
    font-size:1.8rem;
    font-weight: normal;
    font-weight: bold;
    margin-bottom: 20px;
    text-align: center;
}

.about_staff_box_p2 {
    font-size:1.0rem;
    border: #000 1px solid;
    border-radius: 30px;
    padding: 5px 15px;
    line-height: 2.5rem;
}

.about_staff_box_p3 {
    font-size: 14px;
    text-align: justify;
    line-height: 2rem;
    margin-top: 20px;
}

/*about クローバーハウスについて 会社概要 PC */
.about_company {
    background-color: #000;
    width: 100%;
    margin-top:0px;
    padding: 30px 0px 80px 0px;
    color: #fff;
}

.about_company_box {
    width: 980px;
    margin: auto;
}

.about_company_title {
    width: 100%;
    color: #fff;
    font-size: 21px;
    background-color: #000;
    padding: 20px 0px 20px 0px;
    text-align: center;
    letter-spacing: 0.15em;
}

.about_company_calc {
    width: 80%;
    margin-top: 10px;
    margin-left: auto;
    margin-right: auto;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    padding-top: 8px;
    background: #ffffff;
}

.about_company_calc li:nth-child(1n) {
    width: 30%;
    margin-top: 10px;
    border-bottom: 1px dashed #666666;
    background: #ffffff;
}

.about_company_calc li:nth-child(2n) {
    width: 70%;
    margin-top: 10px;
    border-bottom: 1px dashed #666666;
    background: #FFFFFF;
}

.calc_p-r {
    font-size: 1.2rem;
    margin: 8px;
    color: #666666;
    text-align: right;
}

.calc_p-l {
    font-size: 1.2rem;
    margin: 8px;
    color: #666666;
    text-align: left;
}

.img_pc {
    display: block;
}

.about_br {
    display: none;
}

/*about クローバーハウスについて ビジョンPC */
.about_vision {
    width: 100%;
    margin-top: 100px;
    padding: 30px 0px 30px 0px;
    background: url("../content/images/about/vision_img001.jpg") center bottom no-repeat;
}

.about_vision_box {
    width: 980px;
    margin: auto;
    background: #ffffff;
    opacity: 0.9;
    padding: 20px;
}

.about_vision_title {
    font-size: 1.8em;
    letter-spacing: 0.8em;
    padding-bottom: 10px;
    border-bottom: #000 dotted 1px;
    text-align: center;
    padding-top: 20px;
    margin-bottom: 0px;
    font-weight: bold;
}

.about_vision_box ul {
    width: 80%;
    margin: 0px auto 0px auto;
}

.about_vision_box li {
    margin: 50px auto 50px auto;
    text-align: justify;
    font-size: 1.4em;
    letter-spacing: 0.1em;
    line-height: 1.8em;
}

@media only screen and (max-width: 640px) {

    /*about クローバーハウスについて スマホ */
    .about_about {
        width: 100%;
        background-color: #000000;
        padding-top: 0px;
        padding-bottom: 10px;
    }

    .about_about_main {
        width: 100%;
    }

    .about_about_box {
        width: 80%;
        margin: 10px auto 10px;
    }

    .about_about_box-t {
        display: none;
    }

    .about_about_box-m {
        width: 100%;
        margin: 0px;
        background-color: #000000 !important;
        color: #ffffff;
    }

    .about_about_box-m h3 {
        font-size: 1.3em;
        letter-spacing: 0.4em;
        color: #ffffff;
    }

    .about_about_box-b {
        display: none;
    }

    .about_about_text {
        text-align: justify;
        font-size: 1em;
        letter-spacing: 0.1em;
        line-height: 1.8em;
        padding: 20px 20px 40px 20px;
    }

    /*about クローバーハウスについて スタジオ紹介 SP */
    .about_studio {
        margin: auto;
        width: 100%;
    }

    .about_studio_title {
        font-size: 18px;
        letter-spacing: 0.8em;
        padding-bottom: 10px;
        border-bottom: #000 dotted 1px;
        text-align: center;
        margin-top: 50px;
        margin-bottom: 50px;
    }

    .about_studio_box1 {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: column wrap;
        width: 100%;
    }

    .about_studio_box1 li:nth-child(odd) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 2;
    }

    .about_studio_box1 li:nth-child(even) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 1;
    }

    .about_studio_box2 {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: column wrap;
        width: 100%;
    }

    .about_studio_box2 li:nth-child(odd) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 1;
    }

    .about_studio_box2 li:nth-child(even) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 2;
    }

    .about_studio_text {
        text-align: justify;
        font-size: 14px;
        letter-spacing: 0.1em;
        line-height: 1.8em;
        padding: 10px 20px 40px 20px;
    }

    .about_studio_text2 {
        text-align: justify;
        font-size: 14px;
        letter-spacing: 0.1em;
        line-height: 1.8em;
        padding: 10px 20px 40px 20px;
    }

    /*about クローバーハウスについて スタッフ紹介 SP */
    .about_staff {
        width: 100%;
        margin: auto;
        padding-bottom: 50px;
    }

    .about_staff_title {
        width: 100%;
        color: #fff;
        font-size: 18px;
        background-color: #000;
        padding: 10px 0px;
        letter-spacing: 0.15em;
        text-align: center;
        margin-top: 80px;
    }

    .about_staff_box {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: column wrap;
        width: 100%;
    }

    .about_staff_box li {
        width: 100%;
        text-align: center;
        padding: 20px 50px 40px 50px;
        margin-top: 40px;
        border-right: none;
        border-bottom: #000 1px dotted;
    }

    .about_staff_box li img {
        border-radius: 50%;
        margin-left: auto;
        margin-right: auto;
    }

    .about_staff_box_p1 {
        font-size: 21px;
        font-weight: normal;
        font-weight: bold;
        margin-bottom: 20px;
    }

    .about_staff_box_p2 {
        font-size: 15px;
        border: #000 1px solid;
        border-radius: 30px;
        padding: 5px 15px;
        margin-top: 10px;
        line-height: 2em;
    }

    .about_staff_box_p3 {
        font-size: 14px;
        text-align: justify;
        line-height: 2em;
        margin-top: 20px;
    }


    /*about クローバーハウスについて 会社概要 SP */
    .about_company {
        background-color: #000;
        width: 100%;
        margin-top: 0px;
        padding: 30px 0px 80px 0px;
        z-index: 0 !important;
        color: #fff;
    }

    .about_company_box {
        width: 100%;
        margin: auto;
    }

    .about_company_title {
        width: 100%;
        color: #fff;
        font-size: 18px;
        background-color: #000;
        padding: 10px 0px;
        letter-spacing: 0.15em;
        text-align: center;
        margin-top: 80px;
    }

    .about_company_calc {
        width: 75%;
        margin-top: 0px;
        margin-left: auto;
        margin-right: auto;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: column wrap;
        padding-top: 0px !important;
    }

    .about_company_calc li:nth-child(odd) {
        width: 100%;
        margin-top: 0px !important;
        border-bottom: none !important;
        background: #000000;
    }

    .about_company_calc li:nth-child(2n) {
        width: 100%;
        margin-top: 0px !important;
        background: #FFFFFF !important;
        border-bottom: none !important;
    }

    /*about クローバーハウスについて ビジョンSP */
    .about_vision {
        width: 100%;
        margin-top: 100px;
        padding: 30px 0px 0px 0px;
        background: url("../content/images/about/vision_img001.jpg") center bottom no-repeat;
    }

    .about_vision_box {
        width: 100%;
        margin: auto;
        background: #ffffff;
        opacity: 0.9;
        padding: 20px 20px 30px 20px;
    }

    .about_vision_title {
        font-size: 1.8em;
        letter-spacing: 0.8em;
        padding-bottom: 10px;
        border-bottom: #000 dotted 1px;
        text-align: center;
        padding-top: 20px;
        margin-bottom: 0px;
        font-weight: bold;
    }

    .about_vision_box ul {
        width: 80%;
        margin: 0px auto 0px auto;
    }

    .about_vision_box li {
        margin: 50px auto 50px auto;
        text-align: justify;
        font-size: 1.4em;
        letter-spacing: 0.1em;
        line-height: 1.8em;
    }

    .calc_p-r {
        font-size: 1rem;
        margin: 8px;
        color: #ffffff;
        text-align: center;
        font-weight: bold;
    }

    .calc_p-l {
        font-size: 1rem;
        margin: 8px;
        color: #666666;
        text-align: center;
    }

    .about_br {
        display: block;
    }
}

/*トップページ*/
.concepttopimg {
    margin-top: -400px;
    z-index: -100;
    text-align: right;
    position: relative;
}

.concepttopimg2 {
    z-index: 100;
}

/*menu リノベーション PC*/
.menu_renovation_contents {
    width: 100%;
    padding-top: 0px;
}

.menu_renovation_main {
    width: 100%;
}

.menu_renovation_1stbox {
    width: 860px;
    margin: -150px auto 10px;
}

.menu_renovation_1st {
    width: 100%;
    margin: 0px;
    padding: 30px 30px 0px 30px;
    background: rgba(255, 255, 255, 0.8);
    position: relative;
}

.menu_renovation_box {
    width: 860px;
    margin: 0 auto;
}

.menu_renovation_box2 {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.menu_renovation_box2 li:nth-child(odd) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 1;
}

.menu_renovation_box2 li:nth-child(even) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 2;
}

.menu_renovation_box3 {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.menu_renovation_box3 li:nth-child(odd) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 1;
}

.menu_renovation_box3 li:nth-child(even) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 2;
}

.menu_renovation_1st h3 {
    font-size: 1.2em;
    letter-spacing: 0.4em;
    text-align: center;
}

.menu_renovation_text {
    text-align: justify;
    font-size: 1em;
    letter-spacing: 0.1em;
    line-height: 2.5em;
    padding: 20px 80px 40px 80px;
}

.renovation_box2_text {
    text-align: justify;
    font-size: 1em;
    letter-spacing: 0.1em;
    line-height: 2.5em;
    padding: 10px 20px 40px 20px;
}

.renovation_box3_text {
    text-align: justify;
    font-size: 1em;
    letter-spacing: 0.1em;
    line-height: 2.5em;
    padding: 10px 20px 40px 20px;
}

.renovation_onestop {
    background-color: #000000;
    width: 100%;
    margin-top: 50px;
    padding: 30px 0px 50px 0px;
    color: #ffffff;
}

.renovation_onestop_box {
    width: 860px;
    margin: auto;
}

.renovation_onestop_title {
    width: 100%;
    color: #fff;
    font-size: 1.5em;
    background-color: #000;
    padding: 20px 0px 20px 0px;
    text-align: center;
    letter-spacing: 0.15em;
}

.renovation_onestop_contents {
    width: 100%;
    margin: 0px;
    padding: 30px 30px 0px 30px;
}

.renovation_onestop_col2 {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.renovation_onestop_col2 li:nth-child(odd) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 1;
}

.renovation_onestop_col2 li:nth-child(even) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 2;
}

.renovation_onestop_text {
    text-align: justify;
    font-size: 1em;
    letter-spacing: 0.1em;
    line-height: 2.5em;
    padding: 10px 20px 40px 20px;
}

/*menu リノベーション SP*/
@media only screen and (max-width: 640px) {
    .menu_renovation_contents {
        width: 100%;
        padding-top: 0px;
        padding-bottom: 10px;
    }

    .menu_renovation_main {
        width: 100%;
    }

    .menu_renovation_1stbox {
        width: 100%;
        margin: 10px auto 10px;
    }

    .menu_renovation_1st {
        width: 100%;
        margin: 0px;
        padding: 30px 0 30px 0 !important;
    }

    .menu_renovation_box {
        width: 100%;
    }

    .menu_renovation_box2 {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: column wrap;
        width: 100%;
    }

    .menu_renovation_box2 li:nth-child(odd) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 2;
    }

    .menu_renovation_box2 li:nth-child(even) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 1;
    }

    .menu_renovation_box3 {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: column wrap;
        width: 100%;
    }

    .menu_renovation_box3 li:nth-child(odd) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 1;
    }

    .menu_renovation_box3 li:nth-child(even) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 2;
    }

    .menu_renovation_1st h3 {
        font-size: 1.1em;
        letter-spacing: 0.4em;
    }

    .menu_renovation_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 20px 10px 40px 10px !important;
    }

    .renovation_box2_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 10px 10px 40px 10px !important;
    }

    .renovation_box3_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 10px 10px 40px 10px !important;
    }

    .renovation_onestop {
        background-color: #000000;
        width: 100%;
        margin: 0px auto 50px auto;
        padding: 30px 0px 50px 0px;
        z-index: 0 !important;
        color: #ffffff;
    }

    .renovation_onestop_box {
        width: 100%;
        margin: auto;
    }

    .renovation_onestop_title {
        width: 100%;
        color: #fff;
        font-size: 1.2emx;
        background-color: #000;
        padding: 10px 0px;
        letter-spacing: 0.15em;
        text-align: center;
    }

    .renovation_onestop_contents {
        width: 100%;
        margin: 0px;
        padding: 10px 20px 0px 20px;
    }

    .renovation_onestop_col2 {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: column wrap;
        width: 100%;
    }

    .renovation_onestop_col2 li:nth-child(odd) {
        width: 100%;
        margin-top: 20px;
        text-align: center;
        order: 2;
    }

    .renovation_onestop_col2 li:nth-child(even) {
        width: 100%;
        margin-top: 20px;
        text-align: center;
        order: 1;
    }

    .renovation_onestop_text {
        text-align: justify;
        font-size: 1em;
        letter-spacing: 0.1em;
        line-height: 2.5em;
        padding: 0px 20px 40px 20px;
    }
}

/*menu 自然素材 PC*/
.menu_natural_contents {
    width: 100%;
    padding-top: 0px;
    margin-top:-8rem;
}

.menu_natural_main {
    width: 100%;
}

.menu_natural_1stbox {
    width: 860px;
    margin: -150px auto 10px;
}

.menu_natural_1st {
    width: 100%;
    margin: 0px;
    padding: 30px 30px 0px 30px;
    background: rgba(255, 255, 255, 0.8);
    position: relative;
}

.menu_natural_1st h3 {
    font-size: 1.2em;
    letter-spacing: 0.4em;
    text-align: center;
}

.menu_natural_text {
    text-align: justify;
    font-size: 1em;
    letter-spacing: 0.1em;
    line-height: 2.5em;
    padding: 20px 80px 40px 80px;
    color:#000000;
}

.menu_natural_box {
    width: 860px;
    margin: 0 auto;
}

.natural_text_stitle {
    font-size: 1.3em;
    letter-spacing: 0.4em;
    text-align: center;
    font-weight: bold;
}

.menu_natural_box2 {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.menu_natural_box2 li:nth-child(odd) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 1;
}

.menu_natural_box2 li:nth-child(even) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 2;
}

.natural_box2_text {
    text-align: justify;
    font-size: 1em;
    letter-spacing: 0.1em;
    line-height: 2.5em;
    padding: 10px 20px 40px 20px;
}

.menu_natural_box3 {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.menu_natural_box3 li:nth-child(odd) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 1;
}

.menu_natural_box3 li:nth-child(even) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 2;
}

.natural_box3_text {
    text-align: justify;
    font-size: 1em;
    letter-spacing: 0.1em;
    line-height: 2.5em;
    padding: 10px 20px 40px 20px;
}

/*menu 自然素材 SP*/
@media only screen and (max-width: 640px) {
    .menu_natural_contents {
        width: 100%;
        padding-top: 0px;
        padding-bottom: 10px;
    }

    .menu_natural_main {
        width: 100%;
    }

    .menu_natural_1stbox {
        width: 100%;
        margin: 10px auto 10px;
    }

    .menu_natural_1st {
        width: 100%;
        margin: 0px;
        padding: 30px 0 30px 0 !important;
    }

    .menu_natural_1st h3 {
        font-size: 1.1em;
        letter-spacing: 0.4em;
    }

    .menu_natural_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 20px 10px 40px 10px !important;
        color:#ffffff;
    }

    .menu_natural_box {
        width: 100%;
    }

    .menu_natural_box2 {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: column wrap;
        width: 100%;
    }

    .menu_natural_box2 li:nth-child(odd) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 2;
    }

    .menu_natural_box2 li:nth-child(even) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 1;
    }

    .natural_box2_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 10px 10px 40px 10px !important;
    }

    .menu_natural_box3 {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: column wrap;
        width: 100%;
    }

    .menu_natural_box3 li:nth-child(odd) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 1;
    }

    .menu_natural_box3 li:nth-child(even) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 2;
    }

    .natural_box3_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 10px 10px 40px 10px !important;
    }
}

/*menu デザインリフォーム PC*/
.menu_design_contents {
    width: 100%;
    padding-top: 0px;
}

.menu_design_main {
    width: 100%;
}

.menu_design_1stbox {
    width: 860px;
    margin: -150px auto 10px;
}

.menu_design_1st {
    width: 100%;
    margin: 0px;
    padding: 30px 30px 0px 30px;
    background: rgba(255, 255, 255, 0.8);
    position: relative;
}

.menu_design_1st h3 {
    font-size: 1.2em;
    letter-spacing: 0.4em;
    text-align: center;
}

.menu_design_text {
    text-align: justify;
    font-size: 1em;
    letter-spacing: 0.1em;
    line-height: 2.5em;
    padding: 20px 80px 40px 80px;
}

.menu_design_box {
    width: 860px;
    margin: 0 auto;
}

.design_text_stitle {
    font-size: 1.3em;
    letter-spacing: 0.4em;
    text-align: center;
    font-weight: bold;
}

.menu_design_box2 {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.menu_design_box2 li:nth-child(odd) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 1;
}

.menu_design_box2 li:nth-child(even) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 2;
}

.design_box2_text {
    text-align: justify;
    font-size: 1em;
    letter-spacing: 0.1em;
    line-height: 2.5em;
    padding: 10px 20px 40px 20px;
}

.menu_design_box3 {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.menu_design_box3 li:nth-child(odd) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 1;
}

.menu_design_box3 li:nth-child(even) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 2;
}

.design_box3_text {
    text-align: justify;
    font-size: 1em;
    letter-spacing: 0.1em;
    line-height: 2.5em;
    padding: 10px 20px 40px 20px;
}

/*menu デザインリフォーム SP*/
@media only screen and (max-width: 640px) {
    .menu_design_contents {
        width: 100%;
        padding-top: 0px;
        padding-bottom: 10px;
    }

    .menu_design_main {
        width: 100%;
    }

    .menu_design_1stbox {
        width: 100%;
        margin: 10px auto 10px;
    }

    .menu_design_1st {
        width: 100%;
        margin: 0px;
        padding: 30px 0 30px 0 !important;
    }

    .menu_design_1st h3 {
        font-size: 1.1em;
        letter-spacing: 0.4em;
    }

    .menu_design_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 20px 10px 40px 10px !important;
    }

    .menu_design_box {
        width: 100%;
    }

    .menu_design_box2 {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: column wrap;
        width: 100%;
    }

    .menu_design_box2 li:nth-child(odd) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 2;
    }

    .menu_design_box2 li:nth-child(even) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 1;
    }

    .design_box2_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 10px 10px 40px 10px !important;
    }

    .menu_design_box3 {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: column wrap;
        width: 100%;
    }

    .menu_design_box3 li:nth-child(odd) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 1;
    }

    .menu_design_box3 li:nth-child(even) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 2;
    }

    .design_box3_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 10px 10px 40px 10px !important;
    }
}

/*menu 外壁・屋根メンテナンス PC*/
.menu_wallroof_contents {
    width: 100%;
    padding-top: 0px;
}

.menu_wallroof_main {
    width: 100%;
}

.menu_wallroof_1stbox {
    width: 860px;
    margin: -150px auto 10px;
}

.menu_wallroof_1st {
    width: 100%;
    margin: 0px;
    padding: 30px 30px 0px 30px;
    background: rgba(255, 255, 255, 0.8);
    position: relative;
}

.menu_wallroof_1st h3 {
    font-size: 1.2em;
    letter-spacing: 0.4em;
    text-align: center;
}

.menu_wallroof_text {
    text-align: justify;
    font-size: 1em;
    letter-spacing: 0.1em;
    line-height: 2.5em;
    padding: 20px 80px 40px 80px;
}

.menu_wallroof_box {
    width: 860px;
    margin: 0 auto;
}

.wallroof_text_stitle {
    font-size: 1.3em;
    letter-spacing: 0.4em;
    text-align: center;
    font-weight: bold;
}

.menu_wallroof_box2 {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.menu_wallroof_box2 li:nth-child(odd) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 1;
}

.menu_wallroof_box2 li:nth-child(even) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 2;
}

.wallroof_box2_text {
    text-align: justify;
    font-size: 1em;
    letter-spacing: 0.1em;
    line-height: 2.5em;
    padding: 10px 20px 40px 20px;
}

.menu_wallroof_box3 {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.menu_wallroof_box3 li:nth-child(odd) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 1;
}

.menu_wallroof_box3 li:nth-child(even) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 2;
}

.wallroof_box3_text {
    text-align: justify;
    font-size: 1em;
    letter-spacing: 0.1em;
    line-height: 2.5em;
    padding: 10px 20px 40px 20px;
}

/*menu 外壁・屋根メンテナンス SP*/
@media only screen and (max-width: 640px) {
    .menu_wallroof_contents {
        width: 100%;
        padding-top: 0px;
        padding-bottom: 10px;
    }

    .menu_wallroof_main {
        width: 100%;
    }

    .menu_wallroof_1stbox {
        width: 100%;
        margin: 10px auto 10px;
    }

    .menu_wallroof_1st {
        width: 100%;
        margin: 0px;
        padding: 30px 0 30px 0 !important;
    }

    .menu_wallroof_1st h3 {
        font-size: 1.1em;
        letter-spacing: 0.4em;
    }

    .menu_wallroof_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 20px 10px 40px 10px !important;
    }

    .menu_wallroof_box {
        width: 100%;
    }

    .menu_wallroof_box2 {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: column wrap;
        width: 100%;
    }

    .menu_wallroof_box2 li:nth-child(odd) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 2;
    }

    .menu_wallroof_box2 li:nth-child(even) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 1;
    }

    .wallroof_box2_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 10px 10px 40px 10px !important;
    }

    .menu_wallroof_box3 {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: column wrap;
        width: 100%;
    }

    .menu_wallroof_box3 li:nth-child(odd) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 1;
    }

    .menu_wallroof_box3 li:nth-child(even) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 2;
    }

    .wallroof_box3_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 10px 10px 40px 10px !important;
    }

}

/*menu デザインリフォーム SP*/
@media only screen and (max-width: 640px) {
    .menu_design_contents {
        width: 100%;
        padding-top: 0px;
        padding-bottom: 10px;
    }

    .menu_design_main {
        width: 100%;
    }

    .menu_design_1stbox {
        width: 100%;
        margin: 10px auto 10px;
    }

    .menu_design_1st {
        width: 100%;
        margin: 0px;
        padding: 30px 0 30px 0 !important;
    }

    .menu_design_1st h3 {
        font-size: 1.1em;
        letter-spacing: 0.4em;
    }

    .menu_design_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 20px 10px 40px 10px !important;
    }

    .menu_design_box {
        width: 100%;
    }

    .menu_design_box2 {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: column wrap;
        width: 100%;
    }

    .menu_design_box2 li:nth-child(odd) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 2;
    }

    .menu_design_box2 li:nth-child(even) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 1;
    }

    .design_box2_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 10px 10px 40px 10px !important;
    }

    .menu_design_box3 {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: column wrap;
        width: 100%;
    }

    .menu_design_box3 li:nth-child(odd) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 1;
    }

    .menu_design_box3 li:nth-child(even) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 2;
    }

    .design_box3_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 10px 10px 40px 10px !important;
    }
}

/*menu 水まわり PC*/
.menu_watersection_contents {
    width: 100%;
    padding-top: 0px;
}

.menu_watersection_main {
    width: 100%;
}

.menu_watersection_1stbox {
    width: 860px;
    margin: -150px auto 10px;
}

.menu_watersection_1st {
    width: 100%;
    margin: 0px;
    padding: 30px 30px 0px 30px;
    background: rgba(255, 255, 255, 0.8);
    position: relative;
}

.menu_watersection_1st h3 {
    font-size: 1.2em;
    letter-spacing: 0.4em;
    text-align: center;
}

.menu_watersection_text {
    text-align: justify;
    font-size: 1em;
    letter-spacing: 0.1em;
    line-height: 2.5em;
    padding: 20px 80px 40px 80px;
}

.menu_watersection_box {
    width: 860px;
    margin: 0 auto;
}

.watersection_text_stitle {
    font-size: 1.3em;
    letter-spacing: 0.4em;
    text-align: center;
    font-weight: bold;
}

.menu_watersection_box2 {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.menu_watersection_box2 li:nth-child(odd) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 1;
}

.menu_watersection_box2 li:nth-child(even) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 2;
}

.watersection_box2_text {
    text-align: justify;
    font-size: 1em;
    letter-spacing: 0.1em;
    line-height: 2.5em;
    padding: 10px 20px 40px 20px;
}

.menu_watersection_box3 {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.menu_watersection_box3 li:nth-child(odd) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 1;
}

.menu_watersection_box3 li:nth-child(even) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 2;
}

.watersection_box3_text {
    text-align: justify;
    font-size: 1em;
    letter-spacing: 0.1em;
    line-height: 2.5em;
    padding: 10px 20px 40px 20px;
}

/*menu 水まわり SP*/
@media only screen and (max-width: 640px) {
    .menu_watersection_contents {
        width: 100%;
        padding-top: 0px;
        padding-bottom: 10px;
    }

    .menu_watersection_main {
        width: 100%;
    }

    .menu_watersection_1stbox {
        width: 100%;
        margin: 10px auto 10px;
    }

    .menu_watersection_1st {
        width: 100%;
        margin: 0px;
        padding: 30px 0 30px 0 !important;
    }

    .menu_watersection_1st h3 {
        font-size: 1.1em;
        letter-spacing: 0.4em;
    }

    .menu_watersection_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 20px 10px 40px 10px !important;
    }

    .menu_watersection_box {
        width: 100%;
    }

    .menu_watersection_box2 {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: column wrap;
        width: 100%;
    }

    .menu_watersection_box2 li:nth-child(odd) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 2;
    }

    .menu_watersection_box2 li:nth-child(even) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 1;
    }

    .watersection_box2_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 10px 10px 40px 10px !important;
    }

    .menu_watersection_box3 {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: column wrap;
        width: 100%;
    }

    .menu_watersection_box3 li:nth-child(odd) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 1;
    }

    .menu_watersection_box3 li:nth-child(even) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 2;
    }

    .watersection_box3_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 10px 10px 40px 10px !important;
    }

}


/*feature 特集 PC*/
.ft_feature_area {
    width:70%;
    margin:0 auto 0 auto;
    padding: 20px 0 95px;
}

.ft_feature_area .area_title {
    margin-bottom: 50px;
}

.ft_feature_area .btn_box {
    margin: 50px auto 0;
}

.ft_feature_block {
    margin: 0;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.ft_feature_block .feature_box {
    width: 215px;
    margin: 0 30px 0 0;
}

.ft_feature_block .feature_box:nth-child(4n) {
    margin-right: 0;
}

.ft_feature_block .feature_box .img_wrap {
    position: relative;
}

.ft_feature_block .feature_box .img_wrap .icon_new {
    position: absolute;
    top: -78px;
    left: 10px;
}

.ft_feature_block .feature_box .textbox {
    margin: 15px 0 0;
}

.ft_feature_block .feature_box .textbox .box_title {
    font-size: 17px;
    font-size: 1.7rem;
    font-weight: bold;
    letter-spacing: 0.1em;
}

.feature_contents {
    width: 100%;
    padding-top: 0px;
}

.feature_main {
    width: 100%;
}

.feature_1stbox {
    width: 860px;
    margin: -150px auto 10px;
}

.feature_1st {
    width: 100%;
    margin: 0px;
    padding: 30px 30px 0px 30px;
    background: rgba(255, 255, 255, 0.8);
    position: relative;
}

.feature_1st h3 {
    font-size: 1.2em;
    letter-spacing: 0.4em;
    text-align: center;
}

.feature_text {
    text-align: justify;
    font-size: 1em;
    letter-spacing: 0.1em;
    line-height: 2.5em;
    padding: 20px 80px 40px 80px;
}

.feature_box {
    width: 860px;
    margin: 0 auto;
}

.feature_text_stitle {
    font-size: 1.3em;
    letter-spacing: 0.4em;
    text-align: center;
    font-weight: bold;
}

.feature_box2 {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.feature_box2 li:nth-child(odd) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 1;
}

.feature_box2 li:nth-child(even) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 2;
}

.feature_box2_text {
    text-align: justify;
    font-size: 1em;
    letter-spacing: 0.1em;
    line-height: 2.5em;
    padding: 10px 20px 40px 20px;
}

.feature_box3 {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.feature_box3 li:nth-child(odd) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 1;
}

.feature_box3 li:nth-child(even) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 2;
}

.feature_box3_text {
    text-align: justify;
    font-size: 1em;
    letter-spacing: 0.1em;
    line-height: 2.5em;
    padding: 10px 20px 40px 20px;
}

.feature_box4 {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.feature_box4 li {
    width: 100%;
    text-align: center;
}

.feature_box4_text {
    text-align: justify;
    font-size: 1em;
    letter-spacing: 0.1em;
    line-height: 2em;
    padding: 10px 20px 20px 20px;
}

.feature_box_2colm {
    width: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-flow: row wrap;
    margin: 0px auto;
}

.feature_box_2colm li {
    width: 48%;
    text-align: center;
}

.feature_manner_box {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.feature_manner_box li:nth-child(odd) {
    width: 100%;
    padding: 0px 20px 0px 10px;
    margin: 20px 10px 0px 10px;
    text-align: left;
    font-size: 1.5em;
    font-weight: bold;
    border-left: 4px dotted #000000;
}

.feature_manner_box li:nth-child(even) {
    width: 100%;
    padding: 0px 20px 40px 20px;
    margin: 0px 10px 20px 10px;
    text-align: left;
    font-size: 1.2em;
}

/*リフォームの流れ PC*/
.feature_flow_box {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin: 40px auto 10px auto;
}

.feature_flow_box li:nth-child(1) {
    width: 4%;
    margin: 0px 0.5% 0px 0.5%;
}

.feature_flow_box li:nth-child(2) {
    width: 37%;
    margin: 0px 0.5% 0px 0.5%;
}

.feature_flow_box li:nth-child(3) {
    width: 6%;
    margin: 0px 0.5% 0px 0.5%;
}

.feature_flow_box li:nth-child(4) {
    width: 49%;
    margin: 0px 0.5% 0px 0.5%;
    border-left: 5px solid #000000;
}

.feature_flow_title {
    font-size: 1.2em;
    font-weight: bold;
    margin: 3px 10px 3px 10px;
}

.feature_flow_text {
    font-size: 1.0em;
    line-height: 1.8em;
    margin: 3px 10px 3px 10px;
}

.feature_flow_text-s {
    font-size: 0.8em;
    line-height: 1.6em;
    margin: 3px 20px 3px 20px;
}

.feature_flow_arrow {
    background: url("../content/images/feature/flow_arrow.svg") center bottom no-repeat;
}


/*youtube埋め込み*/
.youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}

.youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
}

/*feature 特集 SP*/
@media only screen and (max-width: 640px) {
    .ft_feature_area {
        padding: 0 0 120px;
    }

    .ft_feature_area .area_title {
        margin-bottom: 0;
    }

    .ft_feature_area .btn_box {
        margin: 20px auto 0;
    }


    .ft_feature_block {
        width: 100%;
        margin: 0;
    }

    .ft_feature_block .feature_box {
        background-image: linear-gradient(to right, #ffffff, #ffffff 40%, rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, 0) 100%);
        background-size: 6px 1px;
        background-position: bottom left;
        background-repeat: repeat-x;
        width: 100%;
        padding: 0;
        margin: 0;
    }

    .ft_feature_block .feature_box:last-child {
        background: none;
    }

    .ft_feature_block .feature_box .link_box {
        padding: 20px 0;
        display: -webkit-flex;
        display: flex;
    }

    .ft_feature_block .feature_box .img_wrap .box_img {
        width: 100px;
        object-fit: cover;
    }

    .ft_feature_block .feature_box .img_wrap .icon_new {
        display: none;
    }

    .ft_feature_block .feature_box .textbox {
        padding: 0px 0 0 15px;
        margin: 0;
    }

    .ft_feature_block .feature_box .textbox .box_title {
        font-size: 14px;
        font-size: 1.4rem;
    }

    .feature_contents {
        width: 100%;
        padding-top: 0px;
        padding-bottom: 10px;
    }

    .feature_main {
        width: 100%;
    }

    .feature_1stbox {
        width: 100%;
        margin: 10px auto 10px;
    }

    .feature_1st {
        width: 100%;
        margin: 0px;
        padding: 30px 0 10px 0 !important;
    }

    .feature_1st h3 {
        font-size: 1.1em;
        letter-spacing: 0.4em;
    }

    .feature_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 20px 10px 40px 10px !important;
    }

    .feature_box {
        width: 100%;
    }

    .feature_box2 {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: column wrap;
        width: 100%;
    }

    .feature_box2 li:nth-child(odd) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 2;
    }

    .feature_box2 li:nth-child(even) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 1;
    }

    .feature_box2_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 10px 10px 40px 10px !important;
    }

    .feature_box3 {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: column wrap;
        width: 100%;
    }

    .feature_box3 li:nth-child(odd) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 1;
    }

    .feature_box3 li:nth-child(even) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 2;
    }

    .feature_box3_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 10px 10px 40px 10px !important;
    }

    .feature_box4 {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: column wrap;
        width: 100%;
        margin-bottom: 20px;
    }

    .feature_box4 li {
        width: 100%;
        text-align: center;
    }

    .feature_box4_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 10px 10px 10px 10px !important;
    }

    .feature_box_2colm li {
        width: 100%;
        text-align: center;
    }

    .feature_manner_box {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: row wrap;
        margin-left: auto;
        margin-right: auto;
    }

    .feature_manner_box li:nth-child(odd) {
        width: 100%;
        padding: 0px 20px 0px 10px;
        margin: 20px 10px 0px 10px;
        text-align: left;
        font-size: 1.3em;
        font-weight: bold;
        border-left: 4px dotted #000000;
    }

    .feature_manner_box li:nth-child(even) {
        width: 100%;
        padding: 0px 20px 40px 20px;
        margin: 0px 10px 20px 10px;
        text-align: left;
        font-size: 1.0em;
    }

    /*リフォームの流れ PC*/
    .feature_flow_box {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: row wrap;
        margin: 40px auto 10px auto;
    }

    .feature_flow_box li:nth-child(1) {
        width: 8%;
        margin: 0px 1% 0px 1%;
    }

    .feature_flow_box li:nth-child(2) {
        width: 76%;
        margin: 0px 1% 0px 1%;
    }

    .feature_flow_box li:nth-child(3) {
        width: 10%;
        margin: 0px 1% 0px 1%;
    }

    .feature_flow_box li:nth-child(4) {
        position: relative;
        width: 98%;
        margin: 0px 1% 0px 1%;
        border-left: 5px solid #000000;
        border-bottom: 1px solid #000000;
    }

    .feature_flow_box li:nth-child(4):after {
        content: "";
        position: absolute;
        right: 0;
        bottom: -20px;
        left: 0;
        width: 0px;
        height: 0px;
        margin: auto;
        border-style: solid;
        border-color: #000000 transparent transparent transparent;
        border-width: 20px 20px 0 20px;
    }

    .feature_flow_title {
        font-size: 1.2em;
        font-weight: bold;
        margin: 3px 10px 3px -30px;
    }

    .feature_flow_text {
        font-size: 0.9em;
        line-height: 1.8em;
        margin: 3px 15px 10px 15px;
    }

    .feature_flow_text-s {
        font-size: 0.7em;
        line-height: 1.6em;
        margin: 3px 25px 10px 25px;
    }

    .feature_flow_arrow {
        background: none;
    }
}

/*Line PC*/
.line_box {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.line_box li {
    width: 28%;
    margin-top: 40px;
    text-align: center;
}

.line_box2 {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.line_box2 li {
    width: 28%;
    margin-top: 40px;
    margin-left: 4%;
    text-align: center;
}



/*contact お問合せ PC*/
.contact_contents {
    width: 100%;
    padding-top: 0px;
}

.contact_box {
    width: 860px;
    margin: 50px auto 0px auto;
}

.contact_main {
    width: 100%;
}

.contact_1stbox {
    width: 860px;
    margin: -150px auto 10px;
}

.contact_1st {
    width: 100%;
    margin: 0px;
    padding: 30px 30px 0px 30px;
    background: rgba(255, 255, 255, 0.8);
    position: relative;
}

.contact_1st h3 {
    font-size: 1.2em;
    letter-spacing: 0.4em;
    text-align: center;
}

.contact_text {
    text-align: justify;
    font-size: 1em;
    letter-spacing: 0.1em;
    line-height: 2.5em;
    padding: 20px 80px 40px 80px;
}

.contact_box_r-img {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.contact_box_r-img li:nth-child(odd) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 1;
}

.contact_box_r-img li:nth-child(even) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 2;
}

.contact_box_r-img_text {
    font-size: 1em;
    letter-spacing: 0.1em;
    line-height: 2.5em;
    padding: 10px 20px 40px 20px;
    text-align: left;
}

.contact_box_l-img {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.contact_box_l-img li:nth-child(odd) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 1;
}

.contact_box_l-img li:nth-child(even) {
    width: 50%;
    margin-top: 40px;
    text-align: center;
    order: 2;
}

.contact_box_l-img_text {
    text-align: justify;
    font-size: 1em;
    letter-spacing: 0.1em;
    line-height: 2.5em;
    padding: 10px 20px 40px 20px;
}

.contact_box_full {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.contact_box_full li {
    width: 100%;
    text-align: center;
}

.contact_box_full_text {
    text-align: justify;
    font-size: 1em;
    letter-spacing: 0.1em;
    line-height: 2em;
    padding: 10px 20px 20px 20px;
}

.iframe_reservation {
    height: 1900px;
    width: 100%;
    border: 0;
}

.iframe_request {
    height: 1700px;
    width: 100%;
    border: 0;
}

.iframe_partner {
    height: 1150px;
    width: 100%;
    border: 0;
}

.iframe_consul {
    height: 1400px;
    width: 100%;
    border: 0;
}

.iframe_tenken {
    height: 1000px;
    width: 100%;
    border: 0;
}
.iframe_craftsman {
    height: 700px;
    width: 100%;
    border: 0;
}

/*contact お問合せ SP*/
@media only screen and (max-width: 640px) {
    .contact_box {
        width: 100%;
        margin: 50px auto 0px auto;
    }

    .contact_1stbox {
        width: 100%;
        margin: 10px auto 10px;
    }

    .contact_1st {
        width: 100%;
        margin: 0px;
        padding: 30px 0 10px 0 !important;
    }

    .contact_1st h3 {
        font-size: 1.1em;
        letter-spacing: 0.4em;
    }

    .contact_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 20px 10px 40px 10px !important;
    }

    .contact_box_r-img {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: column wrap;
        width: 100%;
    }

    .contact_box_r-img li:nth-child(odd) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 2;
    }

    .contact_box_r-img li:nth-child(even) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 1;
    }

    .contact_box_r-img_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 10px 10px 40px 10px !important;
    }

    .contact_box_l-img {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: column wrap;
        width: 100%;
    }

    .contact_box_l-img li:nth-child(odd) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 1;
    }

    .contact_box_l-img li:nth-child(even) {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        order: 2;
    }

    .contact_box_l-img_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 10px 10px 40px 10px !important;
    }

    .contact_box_full {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: column wrap;
        width: 100%;
        margin-bottom: 20px;
    }

    .contact_box_full li {
        width: 100%;
        text-align: center;
    }

    .contact_box_full_text {
        text-align: justify;
        font-size: 0.9em;
        padding: 10px 10px 10px 10px !important;
    }

    .iframe_reservation {
        height: 2500px;
        width: 100%;
        border: 0;
    }

    .iframe_request {
        height: 1800px;
        width: 100%;
        border: 0;
    }

    .iframe_partner {
        height: 1450px;
        width: 100%;
        border: 0;
    }

    .iframe_consul {
        height: 1750px;
        width: 100%;
        border: 0;
    }
    .iframe_tenken {
        height: 1600px;
        width: 100%;
        border: 0;
    }
    .iframe_craftsman {
        height: 1000px;
        width: 100%;
        border: 0;
    }
}

/*共通*/
.m10 { margin: 10px !important; }
.m20 { margin: 20px !important; }
.m40 { margin: 40px !important; }
.m50 { margin: 50px !important; }
.m60 { margin: 60px !important; }
.mt10 { margin-top: 10px !important; }
.mt20 { margin-top: 20px !important; }
.mt30 { margin-top: 30px !important; }
.mt40 { margin-top: 40px !important; }
.mt50 { margin-top: 50px !important; }
.mt60 { margin-top: 60px !important; }
.mb10 { margin-bottom: 10px !important; }

.bold_red { font-weight: bold;color: #cc0000; }


/*footer contactエリア PC*/
.foot_contact {
    width: 1200px;
    padding-top: 0px;
    margin: 0 auto 0 auto;
}

@media only screen and (max-width: 1199px) {
    .foot_contact {
        width: 100%;
        padding-top: 0px;
        margin: 0 auto 0 auto;
    }
}

.foot_contact_box {
    width: 75%;
    margin: 1em auto 75px;
    border: 4px solid #b8b9b4;
    box-sizing: border-box;
}

.foot_contact_box .ttl {
    text-align: center;
    margin: -3rem 0 0px;
}

.foot_contact_box .ttl .jp {
    font-size: 3rem;
    font-weight: 600;
    letter-spacing: 0.1rem;
    background: #fff;
    padding: 0 20px;
}

.foot_contact_box .ttl .en {
    font-family: 'Josefin Sans', sans-serif;
    font-size: 3rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    background: #fff;
    padding: 0 20px;
}

.foot_contact_box .txt {
    text-align: center;
    font-size: 1.2em;
    margin: 20px;
}

.foot_contact_box .tel {
    text-align: center;
    font-family: "Arial";
    font-size: 40px;
    font-weight: bold;
    line-height: 1;
    margin-bottom: 40px;
}

.foot_contact_box .tel img {
    width: 60px;
    vertical-align: baseline;
    margin-right: 15px;
}

.foot_contact .contact_list {
    width: 70%;
    margin: 0 auto 30px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.foot_contact_box .contact_list li {
    font-weight: bold;
    color: #ffffff;
    background: #000000;
    width: 31%;
    fill: currentColor;
}

.foot_contact_box .contact_list li img {
    width: 30px !important;
}

.foot_contact_box .contact_list li a {
    display: block;
    height: 100%;
    width: 100%;
    padding: 10px;
    border: 1px solid #000000;
}

.foot_contact_box .contact_list li a:hover {
    color: #ffffff;
    background: #999999;
    border: 1px solid #000000;
}

.contact_list_text {
    font-size: 1.2em;
    margin-left: 15px;
}

.foot_contact .consul_box {
    width: 90%;
    margin: 0 auto 30px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.foot_contact_box .consul_box li {
    width: 48%;
    text-align: left;
}

.foot_contact_box .consul_box li a {
    display: block;
    height: 100%;
    width: 100%;
    margin: 25px auto 25px auto;
    padding: 10px;
    background: #000000;
    border: 1px solid #000000;
    color: #ffffff;
    text-align: center;
    font-size: 1.2em;
}

.foot_contact_box .consul_box li a:hover {
    color: #000000;
    background: #ffffff;
    border: 1px solid #000000;
}

.f_logo {
    width: 70%;
    text-align: center;
}

@media only screen and (max-width: 1199px) {
    .contact_list_text {
        font-size: 1.4rem;
        margin-left: 15px;
    }
}

/*footer contactエリア SP*/
@media only screen and (max-width: 640px) {
    .foot_contact {
        width: 100%;
        padding-top: 0px;
        padding-bottom: 10px;
        margin-top: 0;
    }

    .foot_contact_box {
        width: initial;
        border-left: none;
        border-right: none;
        border-bottom: none;
        margin-bottom: 20px;
    }

    .foot_contact_box .ttl {
        margin-bottom: 10px;
    }

    .foot_contact_box .txt {
        font-size: 1em;
        margin-bottom: 30px;
    }

    .foot_contact_box .tel {
        font-size: 2.5em;
        margin-bottom: 30px;
    }

    .foot_contact_box .tel img {
        width: 40px !important;
    }

    .foot_contact_box .contact_list {
        width: 78.66%;
        margin-bottom: 0;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: column wrap;
    }

    .foot_contact_box .contact_list li {
        display: inline-block;
        margin: 0px auto 20px auto;
        width: 90%;
        text-align: center;
    }

    .f_logo {
        width: 100%;
        text-align: center;
    }

    .foot_contact .consul_box {
        width: 90%;
        margin: 0 auto 30px;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        flex-flow: row wrap;
        margin-left: auto;
        margin-right: auto;
    }

    .foot_contact_box .consul_box li {
        width: 100%;
        text-align: left;
    }
}

/*footer 加盟団体エリア 大バナー PC*/
.foot_group_box2 {
    width: 1200px;
    padding-top: 0px;
    margin: 0 auto 0 auto;
}
.foot_group_box2 ul {
    width: 70%;
    margin: 0 auto 0 auto;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    align-items: center;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}
.foot_group_box2 ul li {
    width: 33%;
    margin: 5px 0 5px 0;
}
@media only screen and (max-width: 1199px) {
    .foot_group_box2 {
        width: 100% !important;
        padding-top: 0px;
        margin: 0 auto 0 auto;
    }
}
@media only screen and (max-width: 640px) {
    .foot_group_box2 {
        width: 100% !important;
        padding-top: 0px;
        margin: 0 auto 0 auto;
    }

    .foot_group_box2 ul {
        width: 96% !important;
        margin: 0 auto 0 auto;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        align-items: center;
        flex-flow: column wrap;
        margin-left: auto;
        margin-right: auto;
    }

    .foot_group_box2 ul li {
        width: 97% !important;
        margin: 5px auto 5px auto;
        text-align:center;
    }
}


/*footer 加盟団体エリア PC*/
.foot_group_box {
    width: 1200px;
    padding-top: 0px;
    margin: 0 auto 0 auto;
}

@media only screen and (max-width: 1199px) {
    .foot_group_box {
        width: 100%;
        padding-top: 0px;
        margin: 0 auto 0 auto;
    }
}

.foot_group_box ul {
    width: 70%;
    margin: 0 auto 0 auto;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    align-items: center;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.foot_group_box ul li {
    width: 18%;
    margin: 5px 0 5px 0;
}

/*footer 加盟団体エリア SP*/
@media only screen and (max-width: 640px) {
    .foot_group_box {
        width: 98%;
        padding-top: 0px;
        margin: 0 auto 0 auto;
    }

    .foot_group_box ul {
        width: 100%;
        margin: 0 auto 0 auto;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        align-items: center;
        flex-flow: row wrap;
        margin-left: auto;
        margin-right: auto;
    }

    .foot_group_box ul li {
        width: 30%;
        margin: 5px 1.5% 5px 1.5%;
    }
}

/*footer 雑リンク PC*/
.foot_etc_box {
    width: 1200px;
    padding-top: 0px;
    margin: 0 auto 0 auto;
}

@media only screen and (max-width: 1199px) {
    .foot_etc_box {
        width: 90%;
        padding-top: 0px;
        margin: 0 auto 0 auto;
    }
}

.foot_etc_box ul {
    width: 100%;
    margin: 0 auto 0 auto;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    align-items: center;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.foot_etc_box ul li {
    width: 18%;
    margin: 5px 0 5px 0;
    font-size: 1rem;
}

.foot_etc_box ul li a {
    display: block;
    text-align: center;
    padding: 5px;
    border: 1px solid #666666;
}

.foot_etc_box ul li a:hover {
    background: #666666;
    color: #ffffff;
}

/*footer 雑リンク SP*/
@media only screen and (max-width: 640px) {
    .foot_etc_box {
        width: 98%;
        padding-top: 0px;
        margin: 0 auto 0 auto;
    }

    .foot_etc_box ul {
        width: 100%;
        margin: 0 auto 0 auto;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        align-items: center;
        flex-flow: row wrap;
        margin-left: auto;
        margin-right: auto;
    }

    .foot_etc_box ul li {
        width: 30%;
        margin: 5px 1.5% 5px 1.5%;
        font-size: 0.8rem;
    }
}

/*フッター 問い合わせ関連*/
#gNav {
    width: 100%;
    display: block;
    position: fixed;
    bottom: 0;
    background: #000000;
    color: #ffffff;
    opacity: 0.9;
    z-index: 1000;
    margin:0 !important;
    padding:0 !important;
}
@media screen and (max-height: 450px) { /*ソフトキーボードが出た時対策*/
    #gNav { display: none; }
 }

#gNav .gNav_box {
    width: 1200px;
    margin: 10px auto 10px auto;
}

@media only screen and (max-width: 1199px) {
    #gNav .gNav_box {
        width: 100%;
        margin: 10px auto 10px auto;
    }
}

#gNav .gNav_box ul {
    width: 75%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

#gNav .gNav_box ul li:nth-child(1) {
    width: 50%;
    text-align: center;
    order: 1;
}

#gNav .gNav_box ul li:nth-child(2) {
    width: 10%;
    text-align: center;
    order: 2;
}

#gNav .gNav_box ul li:nth-child(3) {
    width: 10%;
    text-align: center;
    order: 3;
}

#gNav .gNav_box ul li:nth-child(4) {
    width: 10%;
    text-align: center;
    order: 4;
}

#gNav .gNav_box ul li:nth-child(5) {
    width: 10%;
    text-align: center;
    order: 5;
}

#gNav .gNav_box ul li:nth-child(6) {
    width: 10%;
    text-align: center;
    order: 6;
}

@media only screen and (max-width: 640px) {
    #gNav {
        width: 100%;
        position: fixed;
        bottom: 0;
        background: #000000;
        color: #ffffff;
        z-index: 1000;
    }

    #gNav .gNav_box_sp {
        width: 100%;
        margin: 10px auto 10px auto;
    }

    #gNav .gNav_box_sp ul {
        width: 90%;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        flex-flow: row wrap;
        margin-left: auto;
        margin-right: auto;
    }

    #gNav .gNav_box_sp ul li {
        width: 24%;
        text-align: center;
    }

    #gNav .gNav_box_sp ul li:nth-child(4) {
        width: 19% !important;
        text-align: center;
    }

    #footer .copyright_box {
        background: #000000;
        padding-bottom: 80px;
    }
}

/*footer 安心をご提供エリア PC*/
.relief_contents {
    width: 1200px;
    padding-top: 0px;
    margin: 0 auto 0 auto;
}

@media only screen and (max-width: 1199px) {
    .relief_contents {
        width: 100%;
        padding-top: 0px;
        margin: 0 auto 0 auto;
    }
}

.relief_box {
    width: 75%;
    margin: 0 auto 0 auto;
    border: 4px solid #b8b9b4;
    box-sizing: border-box;
}

.relief_box .ttl {
    text-align: center;
    margin: -2.5rem 0 20px;
}

.relief_box .ttl .jp {
    font-size: 3rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    background: #fff;
    padding: 0 20px;
}

.relief_box .txt {
    text-align: center;
    font-size: 1.6rem;
    margin: 20px;
}

/*.relief_box ul {
width: 90%;
margin: 0 auto 30px;
display: -webkit-flex;
display: flex;
-webkit-justify-content: space-between;
justify-content: space-between;
flex-flow: row wrap;
margin-left: auto;
margin-right: auto;
align-items: center;
}

.relief_box li:nth-child(odd) {
width: 60%;
margin-top: 20px;
text-align: center;
vertical-align: middle;
}

.relief_box li:nth-child(even) {
width: 40%;
margin-top: 20px;
text-align: center;
vertical-align: middle;
}*/

/*footer 安心をご提供エリア SP*/
@media only screen and (max-width: 640px) {
    .relief_contents {
        width: 100%;
        padding-top: 0px;
        padding-bottom: 10px;
        margin-top: 50px;
    }

    .relief_box {
        width: initial;
        border-left: none;
        border-right: none;
        border-bottom: none;
        margin-bottom: 20px;
    }

    .relief_box .ttl {
        margin-bottom: 10px;
    }

    .relief_box .txt {
        font-size: 1.4rem;
        margin-bottom: 30px;
    }

    /*    relief_box ul {
    width: 78.66%;
    margin-bottom: 0;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: column wrap;
}

    .relief_box li:nth-child(odd) {
    width: 100%;
    margin-top: 20px;
    text-align: center;
}

    .relief_box li:nth-child(even) {
    width: 100%;
    margin-top: 0px;
    text-align: center;
}*/
}


/*トップページ 特記*/
.s-mention {
    width: 70%;
    margin: 0 auto 0 auto;
}

.s-mention a:hover {
    opacity: 0.5;
}

/*特記 PC */
.s-mention_contents {
    width: 100%;
    padding-top: 0px;
}

.s-mention_main {
    width: 100%;
}

.s-mention_1stbox {
    width: 860px;
    margin: -80px auto 10px;
}

.s-mention_1st {
    width: 100%;
    margin: 0px;
    padding: 30px 30px 0px 30px;
    background: rgba(255, 255, 255, 0.8);
    position: relative;
}

.s-mention_2ndbox {
    width: 860px;
    margin: 50px auto 10px;
}

.s-mention_2ndbox p {
    font-size: 1.5rem;
    line-height: 4rem;
    margin: 8px;
}

.s-mention_2ndbox ul {
    width: 100%;
    margin: 0 auto 0 auto;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    align-items: center;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.s-mention_2ndbox ul li {
    width: 48%;
    margin: 0px 1% 5px 1%;
}

.s-mention_3rdbox {
    width: 860px;
    margin: 50px auto 10px;
    background: #EAF4E9;
}

.s-mention_3rdbox p {
    font-size: 1.5rem;
    line-height: 4rem;
    margin: 8px 25px 8px 25px;
}

.s-title {
    font-size: 2rem;
    text-align: center;
    margin: 50x auto 20px auto;
}

.s-days {
    text-align: right;
}

.s-mention_text {
    line-height: 6rem !important;
}

.s-mention_contents a:hover {
    opacity: 0.5;
    color: #cc0000 !important;
}

/*特記 スマホ */
@media only screen and (max-width: 640px) {
    .s-mention {
        width: 95%;
        margin: 0 auto 0 auto;
    }

    .s-mention_contents {
        width: 100%;
        padding-top: 0px;
        padding-bottom: 10px;
    }

    .s-mention_1stbox {
        width: 100%;
        margin: 10px auto 10px;
    }

    .s-mention_1st {
        width: 100%;
        margin: 0px;
        padding: 30px 0 10px 0 !important;
    }

    .s-mention_2ndbox {
        width: 90%;
        margin: 10px auto 10px;
    }

    .s-mention_2ndbox p {
        font-size: 1.3rem;
        line-height: 2.2rem;
        margin: 8px;
    }

    .s-mention_2ndbox ul li {
        width: 100%;
        margin: 0px 0 5px 0;
    }

    .s-mention_3rdbox {
        width: 90%;
        margin: 10px auto 10px;
        background: #EAF4E9;
    }

    .s-mention_3rdbox p {
        font-size: 1.3rem;
        line-height: 2.5rem;
        margin: 8px 15px 8px 15px;
    }
}






/*コンテンツ 大枠修正 20200629*/
/* font基本サイズ 10px=1rem*/
/*.gothic {font-family: "Sawarabi Gothic";}
.mincho {font-family: "Sawarabi Mincho";}*/

.f-base {
    font-size:1.6rem;
    line-height:3rem;
    letter-spacing: normal;
    padding:5px;
}
.f-black {
    color:#000000 !important;
}
@media only screen and (max-width: 639px) {
    .f-base {
        font-size:1.2rem;
        line-height:2.0rem;
        letter-spacing: normal;
        padding:5px;
    }
}

/* 画像切り替え */
.pc { display: block !important; }
.tab { display: none !important; }
.sp { display: none !important; }
.pc_on { display: inline; }
.sp_on { display: none; }

@media only screen and (max-width: 1199px) {
    .pc { display:none !important; }
    .tab { display:block !important; }
    .sp { display:none !important; }
}

@media only screen and (max-width: 639px) {
    .pc { display: none !important; }
    .tab { display: none !important; }
    .sp { display: block !important; }
    .pc_on { display: none; }
    .sp_on { display: inline; }
}


.contents00 {
    width: 100%;
    z-index: 1;
}

.contents01 {
    width: 100%;
    margin-top: -8rem;
    padding-bottom: 10px;
    z-index: -100;
}

.contents02 {
    width: 100%;
    padding-bottom: 20px;
    background: #ffffff;
}

.contents03 {
    width: 100%;
    padding: 10px 0 20px 0;
    background: #000000;
}

.contents04 {
    width: 100%;
    padding-bottom: 10px;
    background: #e7ffd5;
}

.contents05 {
    width: 100%;
    padding-bottom: 10px;
    background: #F4F4F4;
}

.contents_menu {
    width: 100%;
    padding-top:20px;
    padding-bottom:20px;
    background: #F4F4F4;
}

/*PC用*/
.ct_contents_box {
    width: 1200px;
    padding: 0;
    margin: 0px auto 0px auto;
}

.main_img_box {
    width: 100%;
    margin-top: -8rem;
    padding-bottom: 10px;
    z-index: -100;
}


/*タブレット用*/
@media only screen and (max-width: 1199px) {
    .contents00 {
        display: none;
    }

    .ct_contents_box {
        width: 100% !important;
        padding: 0;
    }

    .main_img_box {
        width: 100%;
        margin-top: -6.5rem;
        padding-bottom: 10px;
        z-index: -100;
    }
}

/*スマホ用*/
@media only screen and (max-width: 639px) {
    .contents00 {
        display: none;
    }

    .ct_contents_box {
        width: 100% !important;
        padding: 0;
    }
}


.ct_box01 {
    width: 85%;
    margin: 0px auto 0px auto;
}
.ct_box02 {
    width: 70%;
    margin: 0px auto 0px auto;
}
.ct_box03 {
    width: 85%;
    margin: 30px auto 30px auto;
    border: solid 15px #d1d1d1;
    background: #ffffff;
}
.ct_box04 {
    width: 50%;
    margin: 0px auto 0px auto;
}

.ct_box_menu {
    width: 85%;
    margin: 0px auto 0px auto;
}

@media only screen and (max-width: 639px) {
    .ct_box01 {
        width: 85%;
        margin: 0px auto 0px auto;
        padding: 0;
    }
    .ct_box02 {
        width: 85%;
        margin: 0px auto 0px auto;
    }
    .ct_box03 {
        width: 100%;
        margin: 0px auto 0px auto;
        padding: 20px 0 20px 0;
        border: solid 15px #d1d1d1;
        background: #ffffff;
    }
    .ct_box04 {
        width: 85%;
        margin: 0px auto 0px auto;
    }

    .ct_box_menu {
        width: 95%;
        margin: 0px auto 0px auto;
        padding: 0;
    }
}



/*上部メニューナビ*/
.head_menu {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-flow: row wrap;
    width: 100%;
    margin: 0 auto 0 auto;
}

.head_logo {
    position: relative;
    z-index: 100;
}

.head_menu li:nth-child(1) {
    width: 15%;
}

.head_menu li:nth-child(2) {
    width: 85%;
}

.head_menu .menu {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-flow: row wrap;
    width: 100%;
    margin: 0 auto 0 auto;
    top: 0;
}

.head_menu .menu li {
    position: relative;
    margin-top: 0px;
    width: 16%;
}

.head_menu .menu li a {
    display: block;
    margin: 0;
    padding: 10px 0 10px;
    font-size: 1.4rem;
    color: #000000;
    text-align: center;
    text-decoration: none;

}

.head_menu .menu_dmn {
    display: block;
    margin: 0;
    padding: 10px 0 10px;
    font-size: 1.4rem;
    color: #000000;
    text-align: center;
    text-decoration: none;

}

.head_menu .menu li:hover > a {
    background: #000000;
    color: #ffffff;
}


.menu li ul {
    list-style: none;
    position: absolute;
    width: 100%;
    top: 100%;
    left: 0;
    margin: 0;
    padding: 0;
}

.head_menu .menu li ul li {
    font-size: 0.8rem;
    overflow: hidden;
    width: 100%;
    height: 0;
    color: #fff;
    -moz-transition: .2s;
    -webkit-transition: .2s;
    -o-transition: .2s;
    -ms-transition: .2s;
    transition: .2s;
}

.head_menu .menu li ul li a {
    font-size: 1.2rem;
    width: 100%;
    padding: 5px;
    background: #ffffff;
    text-align: left;
    font-weight: normal;
    border:1px solid #999999;
}


.head_menu .menu li:hover ul li {
    overflow: visible;
    height: 35px;
    z-index: 2;
    opacity: 0.9;
}

.menu_s-font {
    font-size: 1rem !important;
}


/*フッター インフォメーション*/
.ft_info_box ul {
    width: 100%;
    margin: 0 auto 0 auto;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    align-items: center;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.ft_info_box li:nth-child(1) {
    width: 20%;
}

.ft_info_box li:nth-child(2) {
    width: 40%;
}

.ft_info_box li:nth-child(3) {
    width: 30%;
}

.address {
    padding: 5px 10px 5px 10px;
    font-size: 1.4rem;
}

.ft_sns_box ul {
    width: 80%;
    margin: 0 auto 0 auto;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    align-items: center;
    flex-flow: row wrap;
    margin-left: auto;
    margin-right: auto;
}

.ft_sns_box li {
    width: 35px !important;
    margin-right: 5px;
}

.ft_info_txt {
    text-align: center;
    font-size: 1.6rem;
    font-weight: bold;
}

@media only screen and (max-width: 639px) {
    .ft_info_box li:nth-child(1) {
        width: 60%;
        margin: 0 auto 0 auto;
    }

    .ft_info_box li:nth-child(2) {
        width: 70%;
        margin: 0 auto 0 auto;
    }

    .ft_info_box li:nth-child(3) {
        display: none;
    }

    .address {
        padding: 3px 10px 2px 10px;
        font-size: 1.4rem;
    }

    .ft_sns_box ul {
        width: 80%;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        align-items: center;
        flex-flow: row wrap;
        margin-top: 10px;
        margin-left: auto;
        margin-right: auto;
    }

    .ft_sns_box li {
        display: block !important;
        width: 24%;
        margin: 0 1% 0 0 !important;
    }
}

.img_center {
    margin: 0 auto 0 auto;
}

.ft-kyoka {
    font-size:1.0rem !important;
}

/*ラインタイトル 黒背景 白文字*/
.mb_line-title_box {
    text-align: center;
    position: relative;
    /* 位置調整 */
    margin: 0 0 5px 0;
    /* 周りの余白指定 */
}

.mb_line-title_box:before {
    content: '';
    /* 空白の要素を作る */
    background-color: #ffffff;
    /* 背景色指定 */
    display: block;
    /* ブロック要素にする */
    position: absolute;
    /* 位置調整 */
    left: 0;
    /* 位置調整 */
    width: 100%;
    /* 幅指定 */
    height: 2px;
    /* 高さ指定 */
    top: 0;
    /* 位置調整 */
    bottom: 0;
    /* 位置調整 */
    margin: auto;
    /* 位置調整 */
}

.mb_line-title {
    color: #ffffff;
    margin: 0;
    /* デフォルトCSS打ち消し */
    font-size: 2.4rem;
    /* 文字サイズ指定 */
    position: relative;
    /* 位置調整 */
    /*font-weight:  normal;    文字の太さ調整 */
    display: inline-block;
    /* インラインブロックにする */
    background-color: #000000;
    /* 背景色指定 */
    margin-left: 20px;
    /* 周りの余白指定 */
    padding: 0 10px;
    /* 余白指定 */
}

.mb_line-title p {
    margin: 0;
    /* デフォルトCSS打ち消し */
    line-height: 2;
    /* 行間調整 */
}

/*ラインタイトル 白背景 黒文字*/
.mb_line-title_box02 {
    text-align: center;
    position: relative;
    /* 位置調整 */
    margin: 0 0 5px 0;
    /* 周りの余白指定 */
}

.mb_line-title_box02:before {
    content: '';
    /* 空白の要素を作る */
    background-color: #000000;
    /* 背景色指定 */
    display: block;
    /* ブロック要素にする */
    position: absolute;
    /* 位置調整 */
    left: 0;
    /* 位置調整 */
    width: 100%;
    /* 幅指定 */
    height: 2px;
    /* 高さ指定 */
    top: 0;
    /* 位置調整 */
    bottom: 0;
    /* 位置調整 */
    margin: auto;
    /* 位置調整 */
}

.mb_line-title02 {
    color: #000000;
    margin: 0;
    /* デフォルトCSS打ち消し */
    font-size: 2.4rem;
    /* 文字サイズ指定 */
    position: relative;
    /* 位置調整 */
    /*font-weight:  normal;    文字の太さ調整 */
    display: inline-block;
    /* インラインブロックにする */
    background-color: #ffffff;
    /* 背景色指定 */
    margin-left: 20px;
    /* 周りの余白指定 */
    padding: 0 10px;
    /* 余白指定 */
}

.mb_line-title02 p {
    margin: 0;
    /* デフォルトCSS打ち消し */
    line-height: 2;
    /* 行間調整 */
}

/*背景グレー版*/
.mb_line-title03 {
    color: #000000;
    margin: 0;
    /* デフォルトCSS打ち消し */
    font-size: 2.4rem;
    /* 文字サイズ指定 */
    position: relative;
    /* 位置調整 */
    /*font-weight:  normal;    文字の太さ調整 */
    display: inline-block;
    /* インラインブロックにする */
    background-color: #f4f4f4;
    /* 背景色指定 */
    margin-left: 20px;
    /* 周りの余白指定 */
    padding: 0 10px;
    /* 余白指定 */
}

/*ラインタイトル 消えていくグラデ*/
.mb_line-title_box03 {
    width:80%;
    margin:0 auto 0 auto;
    position: relative;
    text-align: center;
    font-size:2.4rem;
    color:#005c17;
}
.mb_line-title_box03::before{
    position: absolute;
    top: 50%;
    z-index: 1;
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background: #000;
    background: linear-gradient(-45deg, transparent, #005c17 10%, #005c17 90%, transparent);
}
.mb_line-title_box03 span{
    position: relative;
    z-index: 2;
    display: inline-block;
    padding: 0 20px;
    background-color: #fff;
    text-align: left;
}





/*index 施工事例 PC*/
.index_exp_box {
    padding: 0;
}
.exp_block {
    width: 70%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    flex-flow: row wrap;
    margin: 0px auto 0px auto;
}
.exp_block li {
    border: 1px solid #000000;
    border-bottom-width: 20px;
    width: 30%;
    margin: 10px 1.5% 10px 1.5%;
}
.index_exp_img {
    padding: 20px 20px 10px 20px;
    width:100% !important;
}
.index_exp_txt {
    padding: 0px 15px 10px 15px;
    font-size: 1.4rem;
    font-weight: bold;
}
.index_exp_box .btn_box {
    margin: 50px auto 0;
}
.exp_new {
    position: relative;
}
.exp_new::before {
    content: "";
    top: 0;
    left: 0;
    border-bottom: 6em solid transparent;
    border-left: 6em solid #c12748;
    /* ラベルの色はここで変更 */
    position: absolute;
    z-index: 100;
}
.exp_new::after {
    content: "New!";
    display: block;
    top: 15px;
    transform: rotate(-45deg);
    color: #fff;
    /* 文字色はここで変更 */
    left: 10px;
    position: absolute;
    z-index: 101;
}
.exp_btn_box {
    margin: 10px auto 0;
    font-size: 1.2rem !important;
}
.exp_btn {
    width: 20%;
    padding: 0 0 0 28px;
}
.exp_btn span {
    border: 1px solid #000000;
    width: 100%;
    height: 40px;
    margin: 0 auto;
    color: #000000;
    font-size: 1.6rem;
    font-weight: 100;
    text-align: center;
    line-height: 40px;
    letter-spacing: 0.05em;
    display: block;
    position: relative;
    transition: 0.3s;
}
.exp_btn span::before {
    content: "";
    background: url("../content/images/common/btn01.svg") center no-repeat;
    background-size: contain;
    width: 35px;
    height: 35px;
    margin: auto;
    position: absolute;
    left: -15px;
    top: 0;
    bottom: 0;
}
.exp_btn:hover span {
    background: #000000;
    color: #ffffff;
    transition: 0.3s;
}
@media only screen and (max-width: 639px) {
    .index_exp_box {
        margin: 0 auto 0 auto;
    }
    .index_exp_box .area_title {
        background: #000000;
        color: #ffffff;
        margin-bottom: 15px;
    }

    .exp_block {
        width: 100%;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: center;
        justify-content: center;
        flex-flow: row wrap;
        margin: 0 auto 0 auto;
    }

    .exp_block li {
        width: 100%;
        margin-top: 0px;
        border: 0 !important;
    }
    .index_exp_img {
        padding: 5px 0px 5px 0px !important;
        width:100% !important;
    }
    .exp_btn {
        width: 70%;
    }

    .exp_btn span {
        font-size: 1.6rem;
    }
}


/*特集 feature*/
.feature_box {
    width: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    align-items: stretch;
    flex-flow: row wrap;
    margin: 0 auto 0 auto;
}

.feature_box li {
    width: 20%;
    margin: 0 1.5% 0 1.5%;
}

.feature_text_box {
    color: #ffffff;
}

.feature_text_box_title {
    font-size: 1.7rem;
    font-weight: bold;
    letter-spacing: 0.1em;
}

.feature_box_in {
    width: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    align-items: center;
    flex-flow: row wrap;
    margin: 0 auto 0 auto;
}

.feature_box_in li {
    width: 100%;
}

.feature_btn_box {
    margin: 20px auto 0;
    font-size: 1.2rem !important;
}

.feature_btn {
    width: 20%;
    padding: 0 0 0 28px;
}

.feature_btn span {
    border: 1px solid #ffffff;
    width: 100%;
    height: 40px;
    margin: 0 auto;
    color: #ffffff;
    font-size: 1.6rem;
    font-weight: 100;
    text-align: center;
    line-height: 40px;
    letter-spacing: 0.05em;
    display: block;
    position: relative;
    transition: 0.3s;
}

.feature_btn span::before {
    content: "";
    background: url("../content/images/common/btn02.svg") center no-repeat;
    background-size: contain;
    width: 35px;
    height: 35px;
    margin: auto;
    position: absolute;
    left: -15px;
    top: 0;
    bottom: 0;
}

.feature_btn:hover span {
    background: #ffffff;
    color: #000000;
    transition: 0.3s;
}

@media only screen and (max-width: 639px) {
    .feature_box li {
        width: 100%;
        margin: 5px 0 5px 0;
    }

    .feature_box_in {
        width: 100%;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        align-items: center;
        flex-flow: row wrap;
        margin: 0 auto 0 auto;
    }

    .feature_box_in li:nth-child(1) {
        width: 30%;
    }

    .feature_box_in li:nth-child(2) {
        width: 65%;
    }

    .feature_btn {
        width: 70%;
    }

    .feature_btn span {
        font-size: 1.6rem;
    }
}

/*地域密着のサービス*/
.community_box {
    width: 80%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    align-items: center;
    flex-flow: row wrap;
    margin: 0 auto 0 auto;    
}
.community_box li:nth-child(1) {
    width:65%;
    margin:0 1% 0 1%;
}
.community_box li:nth-child(2) {
    width:30%;
    margin:0 1% 0 1%;
}

.community_box02 {
    width:80%;
    margin:0 auto 0 auto;
}
@media only screen and (max-width: 639px) {
    .community_box {
        width: 100%;
    }
    .community_box li:nth-child(1) {
        width:90%;
        margin:0;
    }
    .community_box li:nth-child(2) {
        width:90%;
        margin:0;
    }
    .community_box02 {
        width:100%;
        margin:0 auto 0 auto;
    }
}

/*メニュー menu*/
.menu_box {
    width: 80%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    align-items: center;
    flex-flow: row wrap;
    margin: 0 auto 0 auto;
}

.menu_box li {
    width: 100%;
    margin: 10px 0 10px 0;
}

.menu_box_in {
    width: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-flow: row wrap;
    margin: 0 auto 0 auto;
}

.menu_box_in li:nth-child(1) {
    width: 100%;
    margin: 10px 0 5px 0;
    background: #000000;
    color: #ffffff;
    font-size: 1.6rem;
    font-weight: 100;
    text-align: center;
    line-height: 3.2rem;
}

.menu_box_in li:nth-child(2) {
    width: 35%;
    margin: 5px 0 5px 0;
}

.menu_box_in li:nth-child(3) {
    width: 60%;
    margin: 5px 0 5px 0;
}

.menu_box_text {
    font-size: 1.6rem;
    line-height: 3.0rem;
    padding-right: 20px;
}

@media only screen and (max-width: 639px) {
    .menu_box {
        width: 100%;
    }

    .menu_box_in li:nth-child(2) {
        width: 100%;
        margin: 5px 0 5px 0;
    }

    .menu_box_in li:nth-child(3) {
        width: 100%;
        margin: 5px 0 5px 0;
    }
    .menu_box_text {
        font-size: 1.2rem;
        line-height: 2.0rem;
        padding-right: 20px;
    }
}

/*メニュー(新) menu 200821*/
.n-menu_box {
    width: 80%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    align-items: center;
    flex-flow: row wrap;
    margin: 0 auto 0 auto;
}
.n-menu_box img {
    width:100% !important;
}
.n-menu_box li {
    width: 47%;
    margin: 8px 1.5% 8px 1.5%;
}
.n-menu_box-dolive {
    width:77%;
    margin:10px auto 10px auto;
}

@media only screen and (max-width: 639px) {
    .n-menu_box {
        width: 100%;
    }

    .n-menu_box li {
        width: 100%;
        margin: 5px 0 5px 0;
    }
    .n-menu_box-dolive {
        width:100%;
        margin:10px auto 10px auto;
    }
}


/*モーダルメニュー*/
@media only screen and (max-width: 1199px) {
    .modal_wrap {
        background: #000000;
        padding-top: 90px;
        padding-bottom: 20px;
    }

    /*ラインタイトル 黒背景 白文字*/
    .modal_line-title_box {
        text-align: center;
        position: relative;
        /* 位置調整 */
        margin: 0 0 5px 0;
        /* 周りの余白指定 */
    }

    .modal_line-title_box:before {
        content: '';
        /* 空白の要素を作る */
        background-color: #ffffff;
        /* 背景色指定 */
        display: block;
        /* ブロック要素にする */
        position: absolute;
        /* 位置調整 */
        left: 0;
        /* 位置調整 */
        width: 100%;
        /* 幅指定 */
        height: 2px;
        /* 高さ指定 */
        top: 0;
        /* 位置調整 */
        bottom: 0;
        /* 位置調整 */
        margin: auto;
        /* 位置調整 */
    }

    .modal_line-title {
        color: #ffffff;
        margin: 0;
        /* デフォルトCSS打ち消し */
        font-size: 2rem;
        /* 文字サイズ指定 */
        position: relative;
        /* 位置調整 */
        /*font-weight:  normal;    文字の太さ調整 */
        display: inline-block;
        /* インラインブロックにする */
        background-color: #000000;
        /* 背景色指定 */
        margin-left: 20px;
        /* 周りの余白指定 */
        padding: 0 10px;
        /* 余白指定 */
    }

    .modal_line-title p {
        margin: 0;
        /* デフォルトCSS打ち消し */
        line-height: 2;
        /* 行間調整 */
    }


    .modal_menu {
        width: 80%;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: row wrap;
        margin: 0 auto 0 auto;
    }

    .modal_menu li {
        width: 9.5%;
        background: #000000;
        color: #ffffff;
        margin: 5px 1.5% 5px 1.5%;
    }
}


@media only screen and (max-width: 639px) {
    .modal_wrap {
        background: #000000;
        padding-top: 60px;
        padding-bottom: 20px;
    }

    /*ラインタイトル 黒背景 白文字*/
    .modal_line-title_box {
        text-align: center;
        position: relative;
        /* 位置調整 */
        margin: 0 0 5px 0;
        /* 周りの余白指定 */
    }

    .modal_line-title_box:before {
        content: '';
        /* 空白の要素を作る */
        background-color: #ffffff;
        /* 背景色指定 */
        display: block;
        /* ブロック要素にする */
        position: absolute;
        /* 位置調整 */
        left: 0;
        /* 位置調整 */
        width: 100%;
        /* 幅指定 */
        height: 2px;
        /* 高さ指定 */
        top: 0;
        /* 位置調整 */
        bottom: 0;
        /* 位置調整 */
        margin: auto;
        /* 位置調整 */
    }

    .modal_line-title {
        color: #ffffff;
        margin: 0;
        /* デフォルトCSS打ち消し */
        font-size: 2rem;
        /* 文字サイズ指定 */
        position: relative;
        /* 位置調整 */
        /*font-weight:  normal;    文字の太さ調整 */
        display: inline-block;
        /* インラインブロックにする */
        background-color: #000000;
        /* 背景色指定 */
        margin-left: 20px;
        /* 周りの余白指定 */
        padding: 0 10px;
        /* 余白指定 */
    }

    .modal_line-title p {
        margin: 0;
        /* デフォルトCSS打ち消し */
        line-height: 2;
        /* 行間調整 */
    }


    .modal_menu {
        width: 70%;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: row wrap;
        margin: 0 auto 0 auto;
    }

    .modal_menu li {
        width: 22%;
        background: #000000;
        color: #ffffff;
        margin: 5px 1.5% 5px 1.5%;
    }
}


/*CSSでスライド*/
.swiper-container{
    width: 1020px;
    height: auto;
    margin-top:-9rem !important;
}
.swiper-container img {
    width:100% !important;
}
@media only screen and (max-width: 1199px) {
    .swiper-container{
        width:100%;
        margin-top:75px !important;
    }
}
@media only screen and (max-width: 639px) {
    .swiper-container{
        width:100%;
        margin-top:60px !important;
    }
}

/*通常コンテンツ 共通*/
.normal_contents_top {
    width: 100%;
    padding-top: 0px;
    margin-top:-8rem;
}
.normal_contents_top-img img {
    width: 100% !important;
}
.normal_contents_top_box {
    width: 70%;
    margin:-20rem auto 0px auto;
}
.normal_contents_top_alfa {
    width: 100%;
    margin: 0px;
    padding: 30px 30px 0px 30px;
    background: rgba(255, 255, 255, 0.8);
    position: relative;
}
.normal_contents_top_alfa h3 {
    font-size: 1.8rem;
    letter-spacing: 0.2rem;
    text-align: center;
    color:#000000;
}
.normal_contents_text {
    text-align:left;
    font-size: 1.4rem;
    line-height:2.8rem;
    padding: 5px 80px 5px 80px;
    color:#000000;
}
.normal_contents_box {
    width: 70%;
    margin:0 auto 0 auto;
}
.normal_contents_2col {
    width:100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin: 0 auto 0 auto;
}
.normal_contents_2col li {
    width:48%;
}
.normal_contents_3col {
    width:100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content:space-between;
    justify-content:space-between;
    flex-flow: row wrap;
    margin: 0 auto 0 auto;
}
.normal_contents_3col li {
    width:32%;
}

@media only screen and (max-width: 1199px) {
    .normal_contents_top {
        width: 100%;
        padding-top: 0px;
        margin-top:75px !important;
    }
    .normal_contents_top_box {
        width: 90%;
        margin:-10rem auto 0px auto;
    }
    .normal_contents_top_alfa {
        width: 100%;
        margin: 0px;
        padding: 30px 30px 0px 30px;
        background: rgba(255,255,255, 0.8);
        position: relative;
    }
    .normal_contents_top_alfa h3 {
        font-size: 1.8rem;
        letter-spacing: 0.2rem;
        text-align: center;
        color:#000000;
    }
    .normal_contents_text {
        text-align:left;
        font-size: 1.4rem;
        line-height:2.8rem;
        padding:5px 80px 5px 80px;
        color:#000000;
    }
    .normal_contents_box {
        width:90%;
        margin:20px auto 0 auto;
    }
}

@media only screen and (max-width: 639px) {
    .normal_contents_top {
        width: 100%;
        padding-top: 0px;
        padding-bottom: 10px;
        margin-top:50px !important;
    }
    .normal_contents_top_box {
        width: 85%;
        margin: -10rem auto 0px auto;
        padding: 0;
    }
    .normal_contents_top_alfa {
        width: 100%;
        margin: 0px;
        padding: 30px 30px 0px 30px;
        background: rgba(0,0,0, 0.8);
        position: relative;
    }
    .normal_contents_top_alfa h3 {
        font-size: 1.6rem;
        letter-spacing: 0.2rem;
        text-align: center;
        color:#ffffff;
    }
    .normal_contents_text {
        text-align:left;
        font-size: 1.4rem;
        line-height:2.2rem;
        padding: 5px 0 20px 0;
        color:#ffffff;
    }
    .normal_contents_box {
        width: 85%;
        margin:0 auto 0 auto;
    }
    .normal_contents_3col li {
        width:47%;
    }
}

/*加盟団体*/
.group_contents_2col {
    width:100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    align-items: center;
    flex-flow: row wrap;
    margin: 0 auto 0 auto;
}
.group_contents_2col li {
    width:21%;
    margin:0 2% 10px 2%;
}
@media only screen and (max-width: 639px) {
    .group_contents_2col li {
        width:46%;
        margin:0 2% 10px 2%;
    }
}


/*特集 追加*/
.feature_flow_last {
    width:100%;
    background:#000000;
    padding:10px;
    color:#ffffff;
    text-align:center;
    font-size:1.6rem;
}




/*施工事例一覧 PC*/
.all_example_box {
    width: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin: 0 auto;
}
.all_example_box li {
    width: 23%;
    text-align: center;
    margin:0 1% 0 1%;
}
.all_example_box li img {
    width:100% !important;
}
.all_example_box li a:hover {
    opacity: 0.5;
    color: #cc0000;
}
.index_exp_txt {
    margin: 0px 15px 10px 15px;
    font-size: 1.2rem;
    font-weight:normal;
}
@media only screen and (max-width: 1199px) {
    .all_example_box {
        width: 100%;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: row wrap;
        margin: 0 auto 0 auto;
    }
    .all_example_box li {
        width: 47%;
        margin-top: 10px;
        border: 0 !important;
    }
}
@media only screen and (max-width: 639px) {
    .all_example_box {
        width: 90%;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: row wrap;
        margin: 10px auto 0 auto;
    }
    .all_example_box li {
        width: 100%;
        margin-top: 0px;
        border: 0 !important;
    }
}

/*施工事例一覧 カテゴリ PC*/
.all_example-catg_box {
    width: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin: 0 auto;
}
.all_example-catg_box li {
    width: 31%;
    text-align: center;
    margin:0 1% 0 1%;
}
.all_example-catg_box li img {
    width:100% !important;
}
.all_example_box-catg li a:hover {
    opacity: 0.5;
    color: #cc0000;
}
@media only screen and (max-width: 1199px) {
    .all_example-catg_box {
        width: 100%;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: row wrap;
        margin: 0 auto 0 auto;
    }
    .all_example-catg_box li {
        width: 47%;
        margin-top: 10px;
        border: 0 !important;
    }
}
@media only screen and (max-width: 639px) {
    .all_example-catg_box {
        width: 90%;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: row wrap;
        margin: 10px auto 0 auto;
    }
    .all_example-catg_box li {
        width: 100%;
        margin-top: 10px;
        border: 0 !important;
    }
}

/*スタッフ紹介 一覧*/
.staff_contents_box {
    width: 75%;
    margin:0 auto 0 auto;
}
.staff_contents_2col {
    width:100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin: 0 auto 0 auto;
}
.staff_contents_2col li {
    width:48%;
    margin:30px 1% 0 1%;
}
.staff_name-jp {
    font-size:2.0rem;
    font-weight:bold;
    line-height:3.6rem;
    text-align:center;
}
.staff_name-en {
    font-size:1.6rem;
    line-height:2.4rem;
    text-align:center;
    color:#999999;
}
.staff_position {
    font-size:1.4rem;
    line-height:2.4rem;
    text-align:center;
}
.staff_details {
    font-size:1.4rem;
    border: #000 1px solid;
    border-radius: 30px;
    padding: 5px 15px;
    line-height: 2.5rem;
}
.staff_details_waku {
    margin:15px auto 0 auto;
    text-align:center;
}
@media only screen and (max-width: 1199px) {
    .staff_contents_box {
        width: 85%;
        margin:0 auto 0 auto;
    }
    .staff_contents_2col li {
        margin:40px 1% 0 1%;
    }
}
@media only screen and (max-width: 639px) {
    .staff_contents_box {
        width: 90%;
        margin:0 auto 0 auto;
    }
    .staff_contents_2col li {
        width:100%;
        margin:10px 0;
    }
}

/*スタッフ紹介 詳細*/
.staff_contents_2-1 {
    width:100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    align-items: center;
    flex-flow: row wrap;
    margin: 0 auto 0 auto;
}
.staff_contents_2-1 li:nth-child(1) {
    width:59%;
    margin:10px 0.5% 0 0.5%;
}
.staff_contents_2-1 li:nth-child(2) {
    width:39%;
    margin:10px 0.5% 0 0.5%;
}
.staff_about {
    width:100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    align-items: center;
    flex-flow: row wrap;
    margin: 0 auto 0 auto;
}
.staff_about li:nth-child(1) {
    width:59%;
    margin:10px 0.5% 0 0.5%;
}
.staff_about li:nth-child(2) {
    width:39%;
    margin:10px 0.5% 0 0.5%;
}
.staff_text {
    font-size:1.4rem;
    padding: 15px 15px 0 15px;
    line-height: 2.5rem;
}
@media only screen and (max-width: 1199px) {
    .staff_about li:nth-child(1) {
        width:100%;
        margin:10px 0;
    }
    .staff_about li:nth-child(2) {
        width:100%;
        margin:0px 0;
    }
}
@media only screen and (max-width: 639px) {
    .staff_contents_2-1 li:nth-child(1) {
        width:100%;
        margin:10px 0;
    }
    .staff_contents_2-1 li:nth-child(2) {
        width:100%;
        margin:0px 0;
    }
    .staff_about li:nth-child(1) {
        width:100%;
        margin:10px 0;
    }
    .staff_about li:nth-child(2) {
        width:100%;
        margin:0px 0;
    }
}

/*メニュー 除菌コーティング*/
.virus_title {
    text-align:center;
    font-size:3.2rem;
    line-height:4.6rem;
    font-weight:bold;
    color:#5d5ded;
}
.virus_title_red {
    font-size:4.2rem;
    color:#cc0000;
}
.virus_title02 {
    text-align:center;
    font-size:2.4rem;
    line-height:4.0rem;
    font-weight:bold;
    color:#5d5ded;
}
.virus_title03 {
    text-align:center;
    font-size:2.4rem;
    line-height:4.0rem;
    font-weight:bold;
    color:#cc0000;
}

.virus_text00 {
    font-size:1.6rem;
    line-height:3.4rem;
} 
.virus_text01 {
    font-size:1.6rem;
    line-height:3.4rem;
    text-align:center;
    color:#5d5ded;
} 
.underline {
    text-decoration: underline;
}
hr.break01 {
    position: relative;
    height: 1px;
    border-width: 0;
    background-image: -webkit-linear-gradient(left,
        transparent 0%,#283593 50%,transparent 100%);
    background-image:         linear-gradient(90deg,
        transparent 0%,#283593 50%,transparent 100%);
}


@media only screen and (max-width: 639px) {
    .virus_title {
        text-align:center;
        font-size:2.0rem;
        line-height:3.2rem;
        letter-spacing: 0rem;
        font-weight:bold;
        color:#5d5ded;
    }
    .virus_title02 {
        text-align:center;
        font-size:2.0rem;
        line-height:3.2rem;
        font-weight:bold;
        color:#5d5ded;
    }
    .virus_title03 {
        text-align:center;
        font-size:2.0rem;
        line-height:3.2rem;
        font-weight:bold;
        color:#cc0000;
    }

    .virus_text00 {
        font-size:1.4rem;
        line-height:2.4rem;
        letter-spacing: 0rem;
    } 
    .virus_text01 {
        font-size:1.4rem;
        line-height:2.4rem;
        letter-spacing: 0rem;
        text-align:center;
        color:#5d5ded;
    } 
}


/*ベースコンテンツ*/
.content_base { /*contents01系 置き換え*/
    width: 100%;
    padding-bottom: 20px;
    background: #ffffff;
}
.base_opa {
    display: block;
    height: 100%;
    width: 100%;
    padding: 10px;
    border: 1px solid #aaaaaa;
    background:#eeeeee;
}
.base_opa:hover {
    transition: 0.3s;
    background:#333333;
    color:#ffffff;
}

/*PC用*/
.base_box { /*ct_contents_box 置き換え*/
    width: 1200px;
    padding: 0;
    margin: 0px auto 0px auto;
}
.base_main { /*s-mention 置き換え*/
    width: 70%;
    margin: 0 auto 0 auto;
}
.base_main4col {
    margin: 0;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
.base_text {
    text-align:left;
    font-size: 1.4rem;
    line-height:2.8rem;
    padding: 5px 80px 5px 80px;
    color:#000000;
}

/*タブレット用*/
@media only screen and (max-width: 1199px) {
    .base_box {
        width: 100% !important;
        padding: 0;
    }
    .base_text {
        text-align:left;
        font-size: 1.4rem;
        line-height:2.8rem;
        padding:5px 80px 5px 80px;
        color:#000000;
    }
}

/*スマホ用*/
@media only screen and (max-width: 639px) {
    .base_box {
        width: 100% !important;
        padding: 0;
    }
    .base_main {
        width: 95%;
        margin: 0 auto 0 auto;
    }
    .base_text {
        text-align:left;
        font-size: 1.8rem;
        line-height:2.4rem;
        padding: 10px 10px 20px 10px;
        color:#000000;
    }
}



/*ミニマム施工事例 m_exa*/
.m_exa_l-title_box {
    width: 100%;
    background: #3c2e2e;
    padding: 10px;
}
.m_exa_l-title {
    font-size: 1.8rem;
    text-align: center;
    font-weight: bold;
    color: #ffffff;
}


.m_exa_info {
    width:50% !important;
    margin:0 auto 0 auto;
}
@media only screen and (max-width: 639px) {
    .m_exa_info {
        width:100% !important;
        margin:0 auto 0 auto;
    }
}

.m_exa_table_title_box {
    width: 100%;
    margin: 0 !important;
    padding: 20px 50px 0px 50px;
}
.m_exa_table_box {
    width: 100%;
    margin: 0 !important;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 5px 50px 0px 50px;
}

.m_exa_table_box li:nth-child(odd) {
    width: 30%;
    background: #dddddd;
    border-bottom: 1px solid #999999;
    margin: 0px;
    padding: 3px 0px 3px 0px;
    font-size: 1em;
    font-weight: bold;
}
.m_exa_table_box li:nth-child(even) {
    width: 70%;
    background: #ffffff;
    border-bottom: 1px solid #999999;
    margin: 0px;
    padding: 3px 0px 3px 0px;
}
.m_exa_lead {
    width: 100% !important;
    background: #ffffff !important;
    margin: 10px auto 10px auto;
    padding: 5px 50px 20px 50px;
    font-size:1.4rem !important;
    font-weight:normal !important;
}
.m_exa_txt {
    width: 100% !important;
    background: #ffffff !important;
    margin: 10px auto 10px auto;
    padding: 5px 50px 20px 50px;
    font-size:1.4rem !important;
    font-weight:normal !important;
}
.m_exa_info1 { /*工事内容*/
    width: 100% !important;
    background: #ffffff !important;
    margin: 0px;
    padding: 5px 50px 20px 50px;
    font-size:0.8rem !important;
    font-weight:normal !important;
}
.m_exa_info2 { /*アピールエリア*/
    width:100%;
    background:#ffffff;
    border:1px dashed #3D8445;
    color:#3D8445;
    margin:10px auto 10px auto;
    padding: 20px 50px 20px 50px;
    font-size:1.4rem;
    font-weight:bold;
}

/*m_exaブロック*/
.m_exa_imgbox {
    width: 900px;
    margin: 0 auto 0 auto;
}
.m_exa_imgbox ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: stretch;
    margin-top:0px;
}
.m_exa_imgbox ul li:nth-child(1){
    width: 48%;
    text-align:center;
}
.m_exa_imgbox ul li:nth-child(2){
    width: 3%;
    text-align:center;
}
.m_exa_imgbox ul li:nth-child(3){
    width: 48%;
    text-align:center;
}
.m_exa_waku {
    border:1px solid #aaaaaa;
}
.m_exa_imgbox ul li img{
    width: 87%;
    margin:20px auto 20px auto;
}
.sankaku {
    width:20px;
    margin:0 auto 0 auto;
}
.sankaku_pc {margin-top:200px !important;}
.m_exa_txt {
    width: 80% !important;
    background: #ffffff !important;
    margin: 10px auto 10px auto;
    padding: 5px 20px 10px 20px;
    font-size:1.4rem !important;
    font-weight:normal !important;
}
.m_exa_txt2 {
    width: 90% !important;
    background: #ffffff !important;
    margin: -10px auto 10px auto;
    padding: 5px 20px 10px 20px;
    font-size:1.4rem !important;
    font-weight:normal !important;
}
.under { background: linear-gradient(transparent 60%, #fff5c7 20%); }
.under a { color:#ff0000;text-decoration: underline;}
.m_exa_back {
    width: 900px;
    margin: 40px auto 0 auto;
}
.m_exa_back ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    margin-top:0px;
}
.m_exa_back ul li {
    width: 48%;
    text-align:center;
    background:#000000;
}
.m_exa_back ul li a {
    display: block;
    color:#ffffff;
}
.m_exa_back ul li a:hover {
    background:#cc0000;
    color:#ffffff;
}
.p10 {padding:10px;}

.m_exa_new {
    width: 900px;
    margin: 40px auto 0 auto;
}
.m_exa_new ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    margin-top:0px;
}
.m_exa_new ul li {
    width: 48%;
    text-align:center;
    margin-top:20px;
}
.m_exa_back ul li a {
    display: block;
}
.new_exa {
    width:100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    border:1px solid #666666;
}
.new_exa li {
    width:48% !important;
    margin:0px !important;
    padding:0px !important;
}
.new_exa li img {
    width:100%;
}
/*ページネーション*/
.pagination {
    width:100%;
    margin:20px auto 20px auto;
    text-align:center;
}

.pagination a:hover {
    background:#999999;
    color:#ffffff;
}

.ditto_previous_link {
    font-size:1rem;
    border:1px solid #999999;
    padding:8px;
    border-radius:3px;
    margin:5px;
}

.ditto_page {
    font-size:1rem;
    border:1px solid #999999;
    padding:8px;
    border-radius:3px;
    margin:5px;
}

.ditto_currentpage {
    font-size:1rem;
    border:1px solid #999999;
    padding:8px;
    border-radius:3px;
    background:#999999;
    color:#ffffff;
    margin:5px;
}

.ditto_next_link {
    font-size:1rem;
    border:1px solid #999999;
    padding:8px;
    border-radius:3px;
    margin:5px;
}
@media only screen and (min-width:641px) and (max-width: 1199px) {
    .m_exa_imgbox {
        width: 70%;
        margin: 0 auto 0 auto;
    }
    .m_exa_imgbox ul li:nth-child(1){
        width: 45%;
        text-align:center;
    }
    .m_exa_imgbox ul li:nth-child(2){
        width: 5%;
        text-align:center;
    }
    .m_exa_imgbox ul li:nth-child(3){
        width: 45%;
        text-align:center;
    }
    .m_exa_waku {
        border:1px solid #aaaaaa;
    }
    .m_exa_imgbox ul li img{
        width: 85%;
        margin:20px auto 20px auto;
    }
    .sankaku {
        width:30px;
        margin:0 auto 0 auto;
    }
    .m_exa_txt {
        width: 80% !important;
        background: #ffffff !important;
        margin: 10px auto 10px auto;
        padding: 5px 20px 10px 20px;
        font-size:1.4rem !important;
        font-weight:normal !important;
    }
    .m_exa_back {
        width: 94%;
        margin: 40px auto 0 auto;
    }
    .m_exa_new {
        width: 94%;
        margin: 40px auto 0 auto;
    }
}

/*example 施工事例詳細 SP */
@media only screen and (max-width: 640px) {
    .m_exa_imgbox {
        width: 85% !important;
        margin: 0 auto 0 auto;
    }
    .m_exa_imgbox ul li{
        width: 100% !important;
        text-align:center;
    }
    .m_exa_waku {
        border:1px solid #aaaaaa;
    }
    .m_exa_imgbox ul li img{
        width: 85%;
        margin:20px auto 20px auto;
    }
    .sankaku {
        width:150px;
        margin:0 auto 0 auto;
    }
    .m_exa_txt {
        width: 100% !important;
        background: #ffffff !important;
        margin: 10px auto 10px auto;
        padding: 5px 20px 10px 20px;
        font-size:1.4rem !important;
        font-weight:normal !important;
    }
    .m_exa_back {
        width: 80%;
        margin: 20px auto 0 auto;
    }
    .m_exa_back ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
        margin-top:0px;
    }
    .m_exa_back ul li {
        width: 100%;
        text-align:left;
        background:#000000;
        margin-top:10px;
        padding:0 !important;
    }
    .m_exa_back ul li a {
        display: block;
        color:#ffffff;
        font-size:1.4rem;
    }
    .m_exa_new {
        width: 100%;
        margin: 40px auto 0 auto;
    }
    .m_exa_new ul {
        width: 90% !important;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
        margin:0px auto 0 auto;
    }
    .m_exa_new ul li {
        width:100%;
        text-align:left;
        padding:0 !important;
    }
    .new_exa {
        width:100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        border:1px solid #666666;
    }
    .new_exa li {
        width:46% !important;
        margin:5px !important;
        padding:0px !important;
    }
    .new_exa li img {
        width:100%;
    }
}

.m_exa_be {
    position: relative;
}
.m_exa_be::before {
    content: "";
    top: 0;
    left: 0;
    border-bottom: 6em solid transparent;
    border-left: 6em solid #3c2e2e;
    /* ラベルの色はここで変更 */
    position: absolute;
    z-index: 100;
    opacity: 0.8;
}
.m_exa_be::after {
    content: "BEFORE";
    display: block;
    top:20px;
    transform: rotate(-45deg);
    color: #fff;
    /* 文字色はここで変更 */
    left: 5px;
    position: absolute;
    z-index: 101;
}
.m_exa_af {
    position: relative;
}
.m_exa_af::before {
    content: "";
    top: 0;
    left: 0;
    border-bottom: 6em solid transparent;
    border-left: 6em solid #3D8445;
    /* ラベルの色はここで変更 */
    position: absolute;
    z-index: 100;
    opacity: 0.8;
}
.m_exa_af::after {
    content: "AFTER";
    display: block;
    top:23px;
    transform: rotate(-45deg);
    color: #fff;
    /* 文字色はここで変更 */
    left: 10px;
    position: absolute;
    z-index: 101;
}

/*ぱんくず*/
.b-crumb {
    width: 900px !important;
    padding-top: 0px;
    margin: 20px auto 20px auto;
}
@media only screen and (max-width: 1199px) {
    .b-crumb {
        width: 100% !important;
        padding-top: 0px;
        margin: 20px auto 20px auto;
    }
}
@media only screen and (max-width: 640px) {
    .b-crumb {
        width: 100% !important;
        padding-top: 0px;
        padding-bottom: 10px;
        margin: 10px auto 10px auto;
    }
}
ol.breadcrumb {
    width:98%;
    margin:0 auto 0 auto;
    list-style-type: none;
    font-size:0.9rem;
    text-align:left;
}

ol.breadcrumb li {
    display: inline;
    padding:5px;
}

ol.breadcrumb li a {
    margin-right: 6px;
}





/*210520 上部横幅縮小*/
.nor_conts_main {
    width: 1020px;
    padding-top: 0px;
    margin:-8rem auto 0 auto !important;
}
.nor_conts_main2 {
    width: 1020px;
    padding-top: 0px;
    margin:0 auto 0 auto !important;
}
.nor_conts_box {
    width: 75%;
    margin: 0 auto;
}
.nor_conts_box p {
    text-align: justify;
    font-size: 1.4rem;
    line-height: 3.0rem;
    padding: 5px 20px 5px 20px;
}
.nor_conts_1col {
    width:90%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin: 0 auto 0 auto;
}
.nor_conts_1col li {
    width:100%;
    margin:10px 0 0 0;
}
.nor_conts_2col {
    width:90%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-flow: row wrap;
    margin: 0 auto 0 auto;
}
.nor_conts_2col li {
    width:48%;
    margin:10px 0 0 0;
}
.nor_conts_3col {
    width:100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-flow: row wrap;
    margin: 0 auto 0 auto;
}
.nor_conts_3col li {
    width:32%;
    margin:10px 0 0 0;
}

.dolive_title01 {
    width:100%;
    margin:0 auto 0 auto;
    text-align:center;
    font-size:2.0rem;
    line-height:3.0rem;
    color:#ffffff;
}

.dolive_title-gray {
    color:#98b5c1 !important;
}
.lp-largetext {
    font-size:2.4rem !important;
    text-align:center !important;
    line-height:4.8rem !important;
}
.lp_if-text {
    font-size:1.2rem !important;
    line-height:2.1rem !important;
}

@media only screen and (max-width: 1199px) {
    .nor_conts_main {
        width: 100%;
        padding-top: 0px;
        margin-top:75px !important;
    }
    .nor_conts_main2 {
        width: 100%;
        padding-top: 0px;
        margin:0;
    }
    .nor_conts_box {
        width: 80%;
        margin: 0 auto;
    }
}

@media only screen and (max-width: 639px) {
    .nor_conts_main {
        width: 100%;
        padding-top: 0px;
        padding-bottom: 10px;
        margin-top:50px !important;
    }
    .nor_conts_main2 {
        width: 100%;
        padding-top: 0px;
        padding-bottom: 10px;
        margin:0 !important;
    }
    .nor_conts_box {
        width: 90%;
        margin: 0 auto;
    }
    .nor_conts_box p {
        text-align: justify;
        font-size: 1.2rem;
        line-height: 2.4rem;
    }
    .nor_conts_1col {
        width:100%;
    }
    .dolive_title01 {
        width:80%;
        font-size:1.4rem;
    }
}


.dolive_point01 {
    width:100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    align-items: flex-end;
    margin: 0 auto 0 auto;
}
.dolive_point01 li:nth-child(1) {
    width:30%;
    order: 1;
}
.dolive_point01 li:nth-child(2) {
    width:70%;
    order: 2;
}
.dolive_point02 {
    width:100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    align-items: flex-end;
    margin: 0 auto 0 auto;
}
.dolive_point02 li:nth-child(1) {
    width:70%;
    order: 1;
}
.dolive_point02 li:nth-child(2) {
    width:30%;
    order: 2;
}
.bg_white {
    background:#ffffff;
}
.bg_gray {
    background:#cccccc;
}
.bg_blue {
    background:#b4ccd6;
}
.bg_navy {
    background:#f1f5f6;
}
.pd {
    padding:15px;
}
@media only screen and (max-width: 639px) {
    .dolive_point01 {
        flex-flow: column wrap;
        margin: 0 auto 0 auto;
    }
    .dolive_point01 li:nth-child(1) {
        width:100%;
        order: 2;
    }
    .dolive_point01 li:nth-child(2) {
        width:100%;
        order: 1;
    }
    .dolive_point02 {
        flex-flow: column wrap;
        margin: 0 auto 0 auto;
    }
    .dolive_point02 li:nth-child(1) {
        width:100%;
        order: 1;
    }
    .dolive_point02 li:nth-child(2) {
        width:100%;
        order: 2;
    }
}

/*Dolive HOUSE紹介*/
.dolive-house {
    width:90%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin: 0 auto 0 auto;
}
.dolive-house li:nth-child(1) {
    width:33%;
    margin:5px 0 0 0;
}
.dolive-house li:nth-child(2) {
    width:66%;
    margin:5px 0 0 0;
}

.dolive-house_title {
    width:80%;
    margin:0 auto 0 auto;
    position: relative;
    text-align: center;
    font-size:2.2rem;
    color:#000000;
}
.dolive-house_title::before{
    position: absolute;
    top: 50%;
    z-index: 1;
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background: #000000;
    background: linear-gradient(-45deg, transparent, #000000 10%, #000000 90%, transparent);
}
.dolive-house_title span{
    position: relative;
    z-index: 2;
    display: inline-block;
    padding: 0 20px;
    background-color: #ffffff;
    text-align: left;
}

@media only screen and (max-width: 639px) {
    .dolive-house li:nth-child(1) {
        width:100%;
        margin:5px 0 0 0;
    }
    .dolive-house li:nth-child(2) {
        width:100%;
        margin:5px 0 0 0;
    }
    .dolive-house_title {
        width:100%;
        font-size:1.4rem;
    }
}

/*DOLIVE コンタクトエリア*/
.dolive_contact {
    background:#cccccc;
    margin:40px auto 40px auto;
    padding:20px 0 20px 0;
}
.dolive_contact_3col {
    width: 85%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-flow: row wrap;
    margin: 0 auto 0 auto;
}
.dolive_contact_3col li {
    width:30%;
    margin:10px 0 0 0;
}
.dolive_etc_2col {
    width: 85%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-flow: row wrap;
    margin: 0 auto 0 auto;
}
.dolive_etc_2col li {
    width:48%;
    margin:10px 0 0 0;
}

.button {
    width:100%;
    font-size:1.2rem;
    position: relative;
    display: inline-block;
    padding: .9em 4em;
    background-color: #333;
    border: 2px solid #333;
    color: #fff;
    text-align: center;
    text-decoration: none;
    transition: all .3s;
  }
  .button::after {
    position: absolute;
    top: 50%;
    right: .2em;
    content: '';
    margin-top: -5px;
    border: 7px solid transparent;
    border-top-width: 5px;
    border-bottom-width: 5px;
    border-left-color: #fff;
    transition: all .3s;
  }
  .button:hover {
    background-color: #fff;
    color: #333;
  }
  .button:hover::after {
    border-left-color: #333;
  }
  @media only screen and (max-width: 639px) {
    .dolive_contact_3col li {
        width:100%;
        margin:10px 0 0 0;
    }
    .dolive_etc_2col li {
        width:90%;
        margin:10px auto 0 auto;
    }
}


/*CHキャッチコピーエリア 220128*/
.c-copy-box {width:380px !important;margin:0 auto 0 auto;}
.c-copy {font-family: "Sawarabi Mincho";font-size:3.0rem;line-height:6.0rem;font-weight:normal;}
.f-ccopy_text {
    font-size:1.6rem;
    line-height:3rem;
    letter-spacing: normal;
    padding:5px;
}
@media only screen and (max-width: 639px) {
    .c-copy {
        font-family: "Sawarabi Mincho";
        font-size:2.6rem;
        line-height:6.0rem;
        font-weight:normal;
    }
    .f-ccopy_text {
        font-size:1.6rem;
        line-height:3.2rem;
        letter-spacing: normal;
        padding:5px;
    }
}


/*CHマガジン 210603*/
.magazin_contents {
    width: 100% !important;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-flow: row wrap;
    margin: 20px auto 20px auto;
}
.magazin_contents li:nth-child(1) {
    width:74%;
    margin:0;
    padding:0 !important;
}
.magazin_contents li:nth-child(2) {
    width: 24%;
    margin:0;
    padding:0;
}
.magazin_title {
    width:95%;
    background:#000000;
    color:#ffffff;
    margin:0 auto 10px auto;
    padding:5px;
    text-align:center;
}

.m-article {
    display: block;
    width:90% !important;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-flow: row wrap;
    margin: 0 auto 0 auto;
    padding:10px 0 10px 0;
    border-bottom: 1px dashed #cccccc;
}
.m-article li:nth-child(1) {
    width:20% !important;
    margin:0;
    padding:0;
}
.m-article li:nth-child(2) {
    width:80% !important;
    margin:0;
    padding:0;
}
.m-article li a{
    display: block;
    height:100%;
}
.m-article_title {
    padding:3px 5px 3px 10px;
    font-size:1.8rem;
    font-weight:bold;
}
.m-article_text {
    padding:3px 5px 3px 10px;
    font-size:1.4rem;
}

.m-category {
    width:95% !important;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-flow: column wrap;
    margin: 0 auto 0 auto;
}
.m-category li {
    width: 90% !important;
    margin:3px 5px 3px 10px !important;
    padding:0;
}
.m-category li a{
    display: block;
    height:100%;
}

@media only screen and (max-width: 639px) {
    .m-article li:nth-child(1) {
        width:30% !important;
        margin:0;
        padding:0;
    }
    .m-article li:nth-child(2) {
        width:70% !important;
        margin:0;
        padding:0;
    }
    .magazin_contents {
        width: 100% !important;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        flex-flow: column wrap;
        margin: 20px auto 20px auto;
    }
    .magazin_contents li:nth-child(1) {
        width:100% !important;
        margin:0 auto 0 auto;
        padding:0;
    }
    .magazin_contents li:nth-child(2) {
        width: 100% !important;
        margin:0;
        padding:0;
    }
    .m-article_title {
        padding:2px 5px 1px 10px;
        font-size:1.2rem;
        font-weight:bold;
    }
    .m-article_text {
        padding:1px 5px 2px 10px;
        font-size:1.0rem;
    }
}


/*Wordpress 変更部*/
.sentence p {
    font-size:1.4rem;
    line-height:3.2rem;
    margin:10px 5px 10px 5px;
}
.sentence img {
    width:100%;
}
.sentence h2 {
    width:95%;
    background:#000000;
    color:#ffffff;
    margin:0 auto 10px auto;
    padding:5px;
    text-align:center;
}

.wp-image-3949 {
    width:16px !important;
    height:16px !important;
    vertical-align:middle;
}


.display-posts-saisin ul {
    width:94%;
    margin:0 auto 0 auto;
}

.display-posts-saisin ul.display-posts-listing li
{
  width: 100%;
  display: inline-block;
  vertical-align: top;
  margin: 0;
  padding: 15px 6px 15px 6px;
  border-bottom: 1px dashed #cccccc;
}

.display-posts-saisin ul.display-posts-listing li a.image
{
  margin-left:0px;
  margin-right:10px;
  float: left;
  display: block;
  width:  200px;
  height: 200px;
  overflow: hidden;
  position: relative;
  z-index: 1;
}

.display-posts-saisin ul.display-posts-listing li img
{
  float: left;
  position: absolute;
}
.display-posts-saisin ul.display-posts-listing li a.title
{
  font-size:1.8rem;
  display:block;
  background:#005c17;
  color:#ffffff;
}
.display-posts-saisin ul.display-posts-listing li .excerpt
{
  font-size:1.4rem;
  color:#333333;
}
@media only screen and (max-width: 639px) {
    .display-posts-saisin ul.display-posts-listing li a.image
    {
      width:  150px;
      height: 150px;
    }
    .display-posts-saisin ul.display-posts-listing li a.title
    {
        font-size:1.4rem;
    }
    .display-posts-saisin ul.display-posts-listing li .excerpt
    {
        font-size:1.0rem;
    }
}

.widget a {
    padding:2px 5px 2px 5px;
    text-decoration: none;
}
.widget a:hover{
    text-decoration: underline;
    background:#ffaa00;
    color:#ffffff;
}

.widget-title {
    width:95%;
    background:#000000;
    color:#ffffff;
    margin:0 auto 10px auto;
    padding:5px;
    text-align:center;
}

.widget_categories {
    width:100%;
    margin-top:15px !important;
}
.widget_categories ul {
    width:94%;
    display: -webkit-flex;
    display: flex;
    flex-flow: column wrap;
    margin:0 auto 0 auto !important;
    padding:0 !important;
}
.widget_categories li {
    width:100% !important;
    font-size:1.4rem;
    margin:2px 5px 2px 10px !important;
    padding:0 !important;
}

.widget_archive {
    margin-top:15px !important;
}
.widget_archive ul {
    width:95%;
    display: -webkit-flex;
    display: flex;
    flex-flow: column wrap;
    margin:0 auto 0 auto !important;
    padding:0 !important;
}
.widget_archive li {
    width:100% !important;
    font-size:1.4rem;
    margin:2px 5px 2px 10px !important;
    padding:0 !important;
}



/*Wordpress 記事部分*/
.article {
    width:94%;
    margin:15px auto 15px auto !important;
    padding:10px;
    border:1px solid #cccccc;
}
.article h2 {
    width:100%;
    background:#000000;
    color:#ffffff;
    margin:0 auto 10px auto;
    padding:5px;
    text-align:center;
}
.date {
    text-align: right;
}

.tag {
    text-align: right;
}

/*ブログカード*/
.blog-card {
    background: rgba(251, 140, 0, 0.02);
    border: 1px solid #fb8c00;
    word-wrap: break-word;
    max-width: 100%;
    border-radius: 5px;
    margin: 0px 10px 15px 10px;
    box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, .2);
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
  
  .blog-card:hover {
    cursor: pointer;
    box-shadow: 0 10px 20px -5px rgba(0, 0, 0, .2);
    -moz-transform: translateY(-2px);
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px);
  }
  
  .blog-card:before {
    font-family: FontAwesome;
    position: absolute;
    padding: 2px 6px;
    content: "\f02e 詳細を見る";
    background-color: #fb8c00;
    color: #fff;
    font-size: .8em;
    z-index: 1;
  }
  
  .blog-card a {
    text-decoration: none;
  }
  
  .blog-card-thumbnail {
    width: 20% !important;
    display: table-cell;
    vertical-align: middle;
    padding: 10px 10px 10px 10px !important;
  }
  
  .blog-card-thumbnail img {
      width:100%;
    padding: 0;
  }
  
  .blog-card-content {
    display: table-cell;
    vertical-align: middle;
  }
  
  .blog-card-title {
    font-size: 1em;
    margin: 5px 10px 5px 0px;
    font-weight: bold;
    line-height: 1.4;
  }
  
  .blog-card-title:hover {
    text-decoration: underline;
  }
  
  .blog-card-excerpt {
    font-size: .74em;
    color: #4c4c4c;
    margin: 0 10px 5px 0;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  
  .blog-card .clear {
    clear: both;
  }
  
  @media screen and (max-width: 500px) {
    .blog-card:before {
      font-size: .56em;
    }
    .blog-card-title {
      font-size: .70em;
    }
    .blog-card-excerpt {
      font-size: .60em;
    }
  }








#footer {
    margin-top:20px !important;
}


.wp-main-conts {
    width:100%;
}
@media only screen and (max-width: 639px) {
    .wp-main-conts {
        width:90% !important;
        margin:0 auto 0 auto !important;
    }
}

/*記事一覧 WP Show Posts*/
.wp-show-posts-inner {
    border:1px solid #cccccc;
    padding:10px;
}
.wp-show-posts-entry-title{
    background:#005c17 !important;
    color:#ffffff !important;
    font-size:1.4rem !important;
    font-weight:bold !important;
    padding:3px 5px 3px 10px !important;
    margin:0 auto 10px auto !important;
}
.wp-show-posts-entry-summary {
    font-size:1.2rem;
    margin:5px 10px 5px 10px;
}
.wpsp-read-more {
    text-align: right;;
}
.wpsp-load-more {
    width: 70%;
    margin:20px auto 20px auto;
}
.page-numbers {
    font-size:1.4rem;
    line^height:1.4rem;
    margin:5px;
    padding:8px;
    border:1px solid #cccccc;
}
.current {
    border:none;
}
.dots {
    border:none;
}

@media only screen and (max-width: 639px) {
    .wp-show-posts-inner {
        width:90% !important;
        margin:0 auto 0 auto !important;
        border:1px solid #cccccc !important;
        padding:10px;
    }
    .wpsp-load-more {
        width:80%;
        margin:20px auto 20px auto;
    }
}

/*WP 記事 カテゴリ表示*/
.list {
    width: 100% !important;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-flow: row wrap;
    margin: 20px auto 20px auto;
}

.list li {
    width:100% !important;
    text-align:right;
    padding:0px !important;
}

/*WP 記事 ページャー*/
.pager {
    width:80%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-flow: row wrap;
    margin:20px auto 20px auto;
}
.pager div {
    width:30%;
    text-align:center;
    padding:5px;
    border:1px solid #cccccc;
}
.pager div a {
    display: block;
}
.pager div a:hover {
    background:#333333;
    color:#ffffff;
}
@media only screen and (max-width: 639px) {
    .pager {
        width:100%;
    }
    .pager div {
        width:45%;
    }
}


/*施工例内テキストリンク 追加*/
.example_table_text a {
    text-decoration: underline;
    color:#cc0000;
}
.example_table_text a:hover {
    text-decoration: underline;
    color:#cccccc;
    background:#cc0000;
}
.m_exa_txt a {
    text-decoration: underline;
    color:#cc0000;
}
.m_exa_txt a:hover {
    text-decoration: underline;
    color:#cccccc;
    background:#cc0000;
}






/*LP Before After*/
.lp_exa_imgbox {
    width: 100%;
    margin: 0 auto 0 auto;
}
.lp_exa_imgbox ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    margin-top:0px;
}
.lp_exa_imgbox ul li:nth-child(1){
    width: 48%;
    text-align:center;
}
.lp_exa_imgbox ul li:nth-child(2){
    width: 3%;
    text-align:center;
}
.lp_exa_imgbox ul li:nth-child(3){
    width: 48%;
    text-align:center;
}



.privacypolicy {
    font-size:1.4rem;
    line-height:3.6rem;
}
.privacypolicy li {
    list-style: decimal;
}
.text-privacypolicy {
    font-size:1.4rem;
    line-height:3.6rem;
    margin:30px 10px 10px 10px;
}


/*施工事例パノラマツアー関連*/
.pr_contents_box {
    width: 980px;
    padding: 0;
    margin: 60px auto 0px auto;
}
@media only screen and (max-width: 639px) {
    .pr_contents_box {
        width: 100%;
        padding: 0;
        margin: 40px auto 0px auto;
    }
}
.panorama_exa_box {
    width: 80%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin: 0 auto;
}
.panorama_exa_box li {
    width: 100%;
    margin:5px auto 5px auto;
    text-align: center;
    background:#333333;
}
.panorama_exa_box li img {
    width:100% !important;
}
.panorama_exa_box li a:hover {
    opacity: 0.5;
    color: #cc0000;
}
.index_exp_txt {
    margin: 0px 15px 10px 15px;
    font-size: 1.2rem;
    font-weight:normal;
}
@media only screen and (max-width: 1199px) {
    .panorama_exa_box {
        width: 90%;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: row wrap;
        margin: 0 auto 0 auto;
    }
    .panorama_exa_box li {
        width: 90%;
        margin: 10px auto 0 auto;
        border: 0 !important;
    }
}
@media only screen and (max-width: 639px) {
    .panorama_exa_box {
        width: 100%;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: row wrap;
        margin: 10px auto 0 auto;
    }
    .panorama_exa_box li {
        width: 100%;
        margin: 10px auto 10px auto;
        border: 0 !important;
    }
}

/*不動産 オンライン相談会バナー部*/
.l_info_box {
    width: 1000px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    align-items: center;
    flex-flow: row wrap;
    margin: 0 auto 0 auto;
}
.l_info_box img {
    width:100% !important;
}
.l_info_box li {
    width: 484px;
    margin: 8px;
}

@media only screen and (max-width: 639px) {
    .l_info_box {
        width: 100%;
    }

    .l_info_box li {
        width: 100%;
        margin: 0;
    }
}

.sdgs-img {text-align:center;}



/*ニュースティッカー*/
.l_ticker_box {
    width: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    align-items: center;
    flex-flow: row wrap;
    margin: 5px auto 0 auto !important;
    background:#231815;
    padding:10px;
}
.l_ticker_box li:nth-child(1) {
    width: 5%;
    text-align:center;
    color:#ffffff;
    font-weight:bold;
}
.l_ticker_box li:nth-child(2) {
    width: 95%;
}

@media only screen and (max-width: 639px) {
    .l_ticker_box li:nth-child(1) {
        width: 13%;
    }
    .l_ticker_box li:nth-child(2) {
        width: 87%;
    }
}

#ul_news {
    display: none;
}
div.tick {
    width: 100%;
    height: 30px;
    /*line-height: 30px;*/
    text-align: left;
    /*border: solid 1px silver;*/
    position: relative;
    overflow: hidden;
    border-radius: 10px;
}

div.tick a {
    position: absolute;
    margin-left: 2.0rem;
    font-size: 1.4rem;
    color:#ffffff;
    text-decoration: underline;
}


img {
    image-rendering: -webkit-optimize-contrast;
}


/*新築ページ関連*/
.c_shinchiku-link {
    font-size:1.2rem;
    font-weight:bold;
    text-align:center;
}
.c_shinchiku-intro {
    font-size:1.8rem;
    line-height:3.6rem;
}
.c-copy-box70 {width:70% !important;margin:0 auto 0 auto;}
@media only screen and (max-width: 639px) {
    .c_shinchiku-intro {font-size:1.4rem;line-height:2.8rem;padding:8px;}
    .c-copy-box70 {width:90% !important;margin:0 auto 0 auto;}
}

/*PC2col SP1col*/
.normal_contents_2-1col {
    width:100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-around;
    justify-content: space-around;
    flex-flow: row wrap;
    margin: 0 auto 0 auto;
}
.normal_contents_2-1col li {
    width:48%;
    margin-top:10px;
}
@media only screen and (max-width: 639px) {
    .normal_contents_2-1col li {
        width:100%;
        margin-top:10px;
    }
}
/*PC3col SP1col*/
.normal_contents_3-1col {
    width:100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content:space-between;
    justify-content:space-between;
    flex-flow: row wrap;
    margin: 0 auto 0 auto;
}
.normal_contents_3-1col li {
    width:32%;
}
@media only screen and (max-width: 639px) {
    .normal_contents_3-1col li {
        width:100%;
        margin-top:10px;
    }
}

/*新築 Dolive HOUSE紹介*/
.c_shinchiku-dolivehouse {
    width:70%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-flow: row wrap;
    margin: 0 auto 0 auto;
}
.c_shinchiku-dolivehouse li:nth-child(1) {
    width:33%;
    margin:5px 0 0 0;
}
.c_shinchiku-dolivehouse li:nth-child(2) {
    width:66%;
    margin:5px 0 0 0;
}
.c_shinchiku-dolivehouse_text {
    font-size:1.4rem;
    margin:10px;
}
@media only screen and (max-width: 639px) {
    .c_shinchiku-dolivehouse {
        width:90%;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-flow: row wrap;
        margin: 0 auto 0 auto;
    }
    .c_shinchiku-dolivehouse li:nth-child(1) {
        width:100%;
        margin:5px 0 0 0;
    }
    .c_shinchiku-dolivehouse li:nth-child(2) {
        width:100%;
        margin:5px 0 0 0;
    }
    .c_shinchiku-dolivehouse_text {
        font-size:1.4rem;
        margin:10px;
    }
}






.yellow {
    background:#ffff00;
}

/*基本部分修正用*/
.lay_center {text-align:center;}
.lay_left {text-align:left;}
.lay_right {text-align:right;}

.lay_ev-contents {
    width:80%;
    margin:0 auto 0 auto;
}

.adj_mt10 { margin-top:10px !important; }
.adj_mt20 { margin-top:20px !important; }
.adj_mt40 { margin-top:40px !important; }

.adj_m10 { margin:10px !important; }
.adj_m20 { margin:20px !important; }
.adj_m30 { margin:30px !important; }

.adj_mt-10 {margin-top:-10px;}
.text-style {
    font-size:1.6rem !important;
    line-height:3.0rem !important;
}
.text-style-middle {
    font-size:2.0rem !important;
    line-height:4.2rem !important;
}
.text-style-large {
    font-size:2.4rem !important;
    line-height:2.8rem !important;
}
.text-style-bold { font-weight:bold; }
.text-style-red { color:#cc0000; }
@media (max-width: 639px) {
    .text-style {
        font-size:1.6rem !important;
        line-height:3.0rem !important;
    }
    .text-style-middle {
        font-size:2.0rem !important;
        line-height:2.6rem !important;
    }
    .text-style-large {
        font-size:2.4rem !important;
        line-height:2.6rem !important;
    }
}

/*イベントコンテンツ*/
.lay_event-banner {
    display:flex;
    flex-flow: column;
    width:60%;
    margin:0 auto 0 auto;
}
.lay_event-banner li {
    margin-top:10px;
}
.lay_event-banner_3-1col {
    width:70%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content:start;
    justify-content:start;
    flex-flow: row wrap;
    margin: 0 auto 0 auto;
}
.lay_event-banner_3-1col li {
    width:30%;
    margin:20px 1.5% 0 1.5%;
}
.lay_event-banner_3-1col li p {
    display: block;
    padding:8px;
}
.lay_event-banner_3-1col a:hover {
    transition: 0.3s;
    color:#cc0000;
    text-decoration: underline;
    opacity: 0.5;
}
.text_style-event-day {
    font-size:1.8rem;
    font-weight:bold;
}
.text_style-event-catg {
    font-size:1.2rem;
    line-height:1.4;
    padding: 0.1rem 1em;
    margin: 0.5rem 0.5rem 1.0rem 0.5rem;
    border: solid 1px #999999;
    border-radius: 10px;/*角の丸み*/
}

.text_style-highlighterY {
    background:linear-gradient(transparent 60%, #ff6 60%);
}
.text_style-highlighterP {
    background:linear-gradient(transparent 60%, #ffdefd 60%);
}

.iframe_event {
    height: 1700px;
    width: 100%;
    border: 0;
}

@media only screen and (max-width: 639px) {
    .lay_event-banner {
        width:94%;
    }
    .lay_event-banner_3-1col {
        width:94%;
        -webkit-justify-content:space-between;
        justify-content:space-between;
    }
    .lay_event-banner_3-1col li {
        width:45%;
        margin:20px 2.5% 0 2.5%;
    }
    /*.lay_event-banner_3-1col li:nth-child(5){
        display: none;
    }
    .lay_event-banner_3-1col li:nth-child(6){
        display: none;
    }*/
    .text_style-event-catg {
        display: block;
        text-align:center;
    }
    .iframe_event {
        height: 2100px;
        width: 100%;
        border: 0;
    }
}

/*スライドイメージ下エリア*/
.info-contents {
    width: 1020px;
    height: auto;
    margin:5px auto 10px auto !important;
}
.info-contents_3col {
    width:100%;
    -webkit-justify-content:space-between;
    justify-content:space-between;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content:space-between;
    justify-content:space-between;
    flex-flow: row wrap;
}
.info-contents_3col li {
    width:49.5%;
    margin:0 0 0 0;
}
/*.info-contents_3col li:nth-child(2) {
    margin:0 0.5% 0 0.5%;
}*/
.info-contents img {
    width:100% !important;
}
@media only screen and (max-width: 1199px) {
    .info-contents {
        width:100%;
    }
}
@media only screen and (max-width: 639px) {
    .info-contents {
        width:100%;
    }
}

/*イベントエリア 案02*/
.eve-img { width:100% !important;}
.even-contents {
    width: 1020px;
    height: auto;
    margin:0px auto 10px auto !important;
}
.even-contents_3col {
    width:100%;
    -webkit-justify-content:space-between;
    justify-content:space-between;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content:space-between;
    justify-content:space-between;
    flex-flow: row wrap;
}
.even-contents_3col li {
    width:24%;
    margin:0 0 0 0;
    padding:0 !important;
}
.even-contents_3col li:nth-child(2) {
    margin:0 0.7% 0 1.0%;
    padding:0 !important;
}
.even-contents_3col li:nth-child(3) {
    margin:0 1.0% 0 0.7%;
    padding:0 !important;
}
.even-contents_3col li:nth-child(4) {
    margin:0 0 0 0;
    padding:0 !important;
}
.text_style-even {
    font-size:1.6rem;
}
@media only screen and (max-width: 1199px) {
    .even-contents {
        width:100%;
    }
}
@media only screen and (max-width: 639px) {
    .even-contents {
        width:100%;
    }
    .even-contents_3col li {
        width:49%;
        margin:0 0.5% 0 0.5%;
    }
    .even-contents_3col li:nth-child(2) {
        margin:0 0.5% 0 0.5%;
    }
    .even-contents_3col li:nth-child(3) {
        margin:10px 0.5% 0 0.5%;
    }
    .even-contents_3col li:nth-child(4) {
        margin:10px 0.5% 0 0.5%;
    }
    .text_style-even {
        font-size: 1.2rem;
    }
}

/*イベント一覧*/
.all-event_box {
    width: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    align-items: stretch;
    flex-flow: row wrap;
    margin: 0 auto 0 auto;
}

.all-event_box li {
    width: 100%;
    margin: 10px 1.5% 0 1.5%;
}

.all-event_box_in {
    width: 80%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    align-items: stretch;
    flex-flow: row wrap;
    margin: 0 auto 0 auto;
}

.all-event_box_in li:nth-child(1) {
    width: 25%;
    margin:0;
    padding:0;
}

.all-event_box_in li:nth-child(2) {
    vertical-align: top;
    width: 75%;
    margin:0;
    padding:0;
}

.all-event_text_box {
    color: #000000;
    font-size:1.8rem;
}
.all-event_box_title {
    font-size: 2.0rem;
    font-weight: bold;
    letter-spacing: 0.1em;
}

@media only screen and (max-width: 639px) {
    .all-event_box li {
        width: 100%;
        margin: 5px 0 5px 0;
        border-bottom: 1px solid #999999;
    }

    .all-event_box_in {
        width: 100%;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        align-items: stretch;
        flex-flow: row wrap;
        margin: 0 auto 0 auto;
    }

    .all-event_box_in li:nth-child(1) {
        width: 40%;
    }

    .all-event_box_in li:nth-child(2) {
        width: 60%;
    }
    .all-event_text_box {
        font-size:1.2rem;
    }
    .all-event_box_title {
        font-size: 1.7rem;
        font-weight: bold;
        letter-spacing: 0.1em;
    }
}


.modelhouse .title{
  font-size:clamp(2.0rem , 3.6101vw , 4.0rem);
  font-weight:700;
}
.modelhouse .title span{
  background:linear-gradient(transparent 70%, #FFF000 70%);
}
.modelhouse .info{
  font-size:clamp(1.6rem , 2.8881vw , 3.0rem);
  font-weight:700;  
}
.modelhouse .info span{
  display: block;
  max-width:10em;
  border:1px solid #000000;
  margin: 0 auto;
  padding:0 1em;
}
.modelhouse .notes{
  font-size:clamp(1.4rem , 2.5271vw ,1.6rem);
  font-weight:700;
}
.modelhouse .column2{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  max-width: 35em;
  margin: auto;
  gap:2.5%;
}
.modelhouse .column2 > *{
  flex:1;
}