/*
Theme Name: Ciacius
Theme URI: 
Author: 
Author URI: Asteria
Description: 
Version: 1.0

/* =Reset
-------------------------------------------------------------- */
html{padding: 0;margin: 0;scroll-behavior: smooth;}
body{
    font-family: "Noto Sans JP", serif;
    font-size: 16px;
    line-height: 33px;
    color: #0D0D0D;
    font-weight: 400;
    background: #fff;
    padding: 0;
    margin: 0;
    letter-spacing:0.5px;
    overflow-x: hidden;
}
.en{font-family: 'Shippori Mincho', serif;}
a{text-decoration:none;}
a:hover{opacity:0.7;}
img{
    max-width: 100%;
    height: auto;
}
img.aligncenter{
    margin: 0 auto;
    display: block;
}
p{margin-bottom:15px;margin-top: 0;}
.center{text-align:center;}
.alignright {
    float: right;
    margin: 0.5em 0 0.5em 1em;
}
.alignleft {
    float: left;
    margin: 0.5em 0 0.5em 1em;
}
.marg20{margin-top: 20px;margin-bottom: 20px;}
.marg30{margin-top: 30px;margin-bottom: 30px;}
.marg40{margin-top: 40px;margin-bottom: 40px;}
.marg50{margin-top: 50px;margin-bottom: 50px;}
.marg100{margin-top: 100px;margin-bottom: 100px;}
.margin-bottom20{margin-bottom:20px;}
.margin-bottom30{margin-bottom:30px;}
.margin-bottom40{margin-bottom:40px;}
.margin-bottom50{margin-bottom:50px;}
.margin-bottom60{margin-bottom:60px;}
.margin-bottom80{margin-bottom:60px;}
.margin-bottom100{margin-bottom:100px;}
.margin-top40{margin-top:40px;}
.margin-top100{margin-top:100px;}
@media (min-width:768px){
    .paddleft40{padding-left: 40px;}
    .paddleft50{padding-left: 50px;}
}
/*******Main menu*******/
header{padding: 0 100px;}
.admin-bar header{top:32px;}
.header__container{
    width:100%;margin:0 auto;padding: 50px 0 38px;
}
#ct_right_fixed {
    position: fixed;
    right: 20px;
    top: 36px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    z-index: 999999;
}
#ct_right_fixed .ct {
    width: 56px;
    height: 300px;
    border-left: 2px solid #0D0D0D;
    border-right: 2px solid #0D0D0D;
    font-weight: bold;
    font-size: 20px;
    color: #0D0D0D;
    writing-mode: tb;
    display: flex;
    align-items: center;
    justify-content: space-between;
    letter-spacing: 3px;
    position:relative;
}

#ct_right_fixed .ct span:first-child:before{
    content:'';position:absolute;top:0;right:0;width:100%;height:2px;background:#0D0D0D;transition: all 0.5s ease;
}
#ct_right_fixed .ct:hover span:first-child:before{
    width:0;
}
#ct_right_fixed .ct span:first-child:after{
    content:'';position:absolute;top:8px;left:0;width:100%;height:2px;background:#0D0D0D;transition: all 0.5s ease;
}
#ct_right_fixed .ct:hover span:first-child:after{
    width:0;
}
#ct_right_fixed .ct span:last-child:before{
    content:'';position:absolute;bottom:0;right:0;width:100%;height:2px;background:#0D0D0D;transition: all 0.5s ease;
}
#ct_right_fixed .ct:hover span:last-child:before{
    width:0;
}
#ct_right_fixed .ct span:last-child:after{
    content:'';position:absolute;bottom:8px;left:0;width:100%;height:2px;background:#0D0D0D;transition: all 0.5s ease;
}
#ct_right_fixed .ct:hover span:last-child:after{
    width:0;
}


#ct_right_fixed .ct:after {
    content:'';
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:0;
    background:#734E30;
    transition: all 0.5s ease;
    z-index:-1;
}
#ct_right_fixed .ct:hover{color:#fff;border-color: #734E30;opacity:1;}
#ct_right_fixed .ct:hover:after{height:100%;}
#ct_right_fixed .ct::before {
    content: '';
    position: absolute;
    left: -37px;
    top: calc(50% - 4px);
    width: 34px;
    height: 9px;
    background: url(images/btn_arrow.png) no-repeat;
    background-size: cover;
    background-position: top right;
    transition: all 0.5s ease;
}
#ct_right_fixed .ct:hover:before {left:-24px;}
.admin-bar #ct_right_fixed{top:68px;}
#ct_right_fixed a.instagram{margin-bottom:3vw;margin-top: 10px;}
#ct_right_fixed .toggle_btn {position: relative !important;}

.header__top {
    display: flex;
    justify-content: space-between;
    width: 100%;
}
.header__top .logo {
    padding: 10px 0;
    height: auto;
}

.header__top nav ul {
    display: flex;
    align-items: center;
    margin: 0;
    padding:0;
}

.header__top nav ul li:first-child {
    margin-left: 0;
}
.header__top nav ul li:last-child {
    margin-right: 0;
}

.header__top nav ul li {
    margin: 0 2vw 0 0;
    list-style:none;
    text-align:center;
    position:relative;
}
.header__top nav ul li a {
    color: #0D0D0D;
    font-size: 16px;
    white-space: nowrap;
    display:inline-block;
}
.header__top nav ul li.current_page_item a, .header__top nav ul li:hover a {color:#734E30;}

.toggle_btn {
    display: block;
    position: relative;
    width: 33px;
    height: 24px;
    transition: all .5s;
    cursor: pointer;
    z-index: 999;
    margin-bottom:15px;
}
.open .toggle_btn {
    position: fixed;
    right: 10px;top: 10px;
    margin-right: 0;
}
.toggle_btn span {
    display: block;
    position: absolute;
    left: 0;
    width: 100%;
    height: 4px;
    background-color: #000;
    border-radius: 4px;
    transition: all .5s;
}
.toggle_btn span:nth-child(1) {
    top: 0;
}
.toggle_btn span:nth-child(2) {
    top: 10px;
}
.toggle_btn span:nth-child(3) {
    bottom: 0;
}
.open .toggle_btn span {
    background-color: #000;
}
.open .toggle_btn span:nth-child(1) {
    -webkit-transform: translateY(10px) rotate(-45deg);
    transform: translateY(10px) rotate(-45deg);display:block;
}
.open .toggle_btn span:nth-child(2) {
    opacity: 0;
}
.open .toggle_btn span:nth-child(3) {
    -webkit-transform: translateY(-10px) rotate(45deg);
    transform: translateY(-10px) rotate(45deg);
}
.hide{display:none;transition: all 0.5s ease;}
.open .hide{display:block;}
.open #navbar{max-width: 100%;background: #fff;position: fixed;top: 0;left: 0;z-index: 99999;width: 100vw;height: 100vh;padding: 0;overflow-y: scroll;}
.open #navbar .header__container{position: relative;width: 100%;height: 100%;display: flex;align-items: center;padding: 0;}
.open .header__top{display:none;}
.open .header__top .slogo img{width: 144px;margin: 5px 0;}
.open .header__top nav{display:block;margin: 65px 50px 0;}
.open .header_btns {padding: 0 50px 70px;}	

.open .header_btns a.instagram{color:#0D0D0D;font-size:20px;display: flex;align-items: center;}
.open .header_btns a.instagram img{margin-right:5px;}
.open .header__top nav ul {align-items: baseline;flex-direction: column;padding: 0;}
.open .header__top nav ul li {margin: 0 0 25px;}
.open .header__top nav ul li:last-child {margin-bottom: 0;}
.open .header__top nav ul li a {font-size: 18px;}
.open .header_btns a.btn {
    width: 340px;
    margin: 60px 0;
}
.open .header_btns a.btn:hover::before {left: -18px;}
.header__top_left{opacity:0;display:none;transition: all .5s;flex-direction:colunm;align-items: center;background:#000;width:0;height:100%;position: absolute;left: 0;top: 0;}
.open .header__top_left{width:50%;opacity:1;display: flex;}
.header__top_left_content {
    background: #fff;
    width: 100%;
    height: 300px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.header__top_left_content  a {
    text-align: center;
}
.header__top_left_content  a p{font-size:24px;margin:0;color:#0D0D0D;}
.header__top_left_content  a p.small{font-size:19px;margin:0;}
.header__top_left_content  a img{margin:0;}
.header__top.header__top_right{opacity:0;display:none;transition: all .5s;flex-direction:colunm;background:#fff;width:0;height:100%;position: absolute;right: 0;top: 0;}
.open .header__top.header__top_right{width:50%;opacity:1;display: block;}
.header__top_right_content   {
    width: 400px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
}
.open .header__top.header__top_right nav {margin: 65px 15% 0;}
.open .header__top_right .header_btns {padding: 0 15% 70px;}


@media (max-width:767px){
    .header__top_left, .header__top_right{display:none !important;}
    .header__top .logo {
        width: 140px;
        height: 23px;
        padding: 0;
        margin: 0 auto;
    }
    .header__top .logo img{width:100%;}
    #navbar {
        padding: 0px;
    }
    .header__top nav{
        display:none;
    }
    .toggle_btn span:nth-child(1) {top: 0;display:none;}
    .open #navbar .header__container{display:block;height: auto;padding: 30px 0;}
    .open .header__top{display: flex;flex-direction: column;width: 100%;margin: 0 auto;background: #fff;height: 100%;justify-content: center;}
    .open .header__top .logo{display:none;}
    .open .header__top .slogo {width: 100%;text-align:center;line-height: 1;padding-bottom: 30px;height: auto;}
    .open a.slogo p{font-size:14px;color:#0D0D0D;margin: 0;}
    .open a.slogo p.small{font-size:10px;letter-spacing: 0;}
    .open .header_btns a.btn {background: #0D0D0D;color: #fff;width: 100%;max-width: 300px;font-size: 18px;height: 60px;margin: 50px auto;}
    .open .header_btns a.btn:before {background:url(images/btn_white_arrow.png) no-repeat;background-size: cover;}
    .open .header__top .slogo {border-bottom: 15px solid #0D0D0D;}
    .open .header_btns {border-bottom: 15px solid #0D0D0D;}
}
/*******End Main menu*******/

ul.pagination{
    display: flex;
    justify-content: center;
    list-style: none;
    padding: 0 0 50px;
    margin: 30px 0;
    align-items: center;
}
ul.pagination>li>a, .pagination>li>span{
    border: 1px solid #734E30;
    margin-right: 10px;
    border-radius: 4px;
    color: #0D0D0D;
    padding: 5px 10px;
    font-size:20px;
}
ul.pagination>li>a:focus, ul.pagination>li>a:hover, ul.pagination>li>span:focus, ul.pagination>li>span, ul.pagination>li>span:hover, ul.pagination>li>span.current{
    background-color: #734E30;
    border-color: #734E30;
    color: #fff;
}
/*------------------------*/
/* Breadcrumbs */
/*------------------------*/
ul.breadcrumbs {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 30px 0;
}
ul.breadcrumbs li {
    margin-right: 10px;
    padding-right: 12px;
    position: relative;
}
ul.breadcrumbs li:not(:last-child)::after {
    border-right: 1px solid;
    border-top: 1px solid;
    color: inherit;
    content: "";
    display: block;
    height: 6px;
    opacity: var(--ark-opacity--thin);
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    width: 6px;
}
.wbreadcrumbs ul li a{
    color: #646464;
}
.wbreadcrumbs ul{
    overflow: hidden;
    padding: 20px 0 0;
}
.wbreadcrumbs ul li{
    color: #646464;
    list-style: none;
    float: left
}

.wbreadcrumbs ul li+li:before{
    display: inline-block;
    padding-right: 10px;
    padding-left: 10px;
    color: #000;
    font-weight: bold;
    content: ">";
}


a.gotop{
    position: fixed;
    right: 30px;
    bottom: 40px;
    z-index: 98;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    transition: all 0.5s ease;
    display: none;
}
a.gotop.active{
    display: flex;
}

a.btn {
    width: 300px;
    height: 60px;
    margin: 60px auto;
    display: flex;
    border: 2px solid #0D0D0D;
    align-items: center;
    justify-content: center;
    font-size: 23px;
    font-weight: bold;
    color: #0D0D0D;
    letter-spacing: 1px;
    position: relative;
    padding: 0 5px;
    transition: all 0.5s ease;
}
a.btn:before {
    content:'';
    position:absolute;
    left:-27px;
    top:calc(50% - 4px);
    width:54px;
    height:10px;
    background:url(images/btn_arrow.png) no-repeat;
    background-size: cover;
    transition: all 0.5s ease;
}
a.btn:after {
    content:'';
    position:absolute;
    left:0;
    top:0;
    width:0;
    height:100%;
    background:#734E30;
    transition: all 0.5s ease;
    z-index:-1;
}
a.btn:hover{color:#fff;border-color: transparent;}
a.btn:hover:after{width:100%;}
a.btn:hover:before {left:0;background:url(images/btn_white_arrow.png) no-repeat;background-size: cover;}
a.btn span {
    width: 100%;
    text-align: center;
    border-left: 2px solid #0D0D0D;
    border-right: 2px solid #0D0D0D;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}
a.btn:hover span{border-color: transparent;}
/*-----------------------*/

.sp{display:none !important;}
.page-id-2 #high_performance_housing  a.btn{display:none !important;}
@media (max-width: 992px){
    a.btn {width: 233px;height: 44px;margin: 20px auto;font-size: 16px;}
}
@media (max-width: 767px){
    .pc{display:none !important;}
    .sp{display:block !important;}
}

.other-performance{
}
.other-performance .title{
    text-align: center;
    font-size: 24px;
    line-height: 32px;
    color: #0D0D0D;
    position: relative;
    padding-bottom: 55px;
    margin-bottom: 20px;
}
.other-performance .title:after{
    content:"";
    position: absolute;
    left: 50%;
    bottom: 0;
    height: 35px;
    width: 1px;
    background: #0D0D0D;
    transform: translateX(-50%);
}
.other-performance .list--other-performance{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
    width: calc(100% - 30px);
    max-width: 790px;
    margin: 0 auto;
}
.other-performance .list--other-performance a{
    position:relative;
    display:block;
    border: 1px solid #707070;
    color: #0D0D0D;
    font-size: 18px;
    line-height: 27px;
    padding: 12px 0;
    width: calc(33.333333% - 13.3333333px);
    text-align: center;
    box-sizing: border-box;
}
@media (max-width: 767px){
    .other-performance .list--other-performance a{
        width: calc(50% - 10px)
    }
}
@media (max-width: 480px){
    .other-performance .list--other-performance a{
        width: 100%
    }
}

.other-performance .list--other-performance a:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 0;
    height: 100%;
    background: #734E30;
    transition: all 0.5s ease;
    z-index: -1;
}
.other-performance .list--other-performance a:hover{
    color: #fff;
    opacity: 1;
}
.other-performance .list--other-performance a:hover:after {
    width: 100%;
}

.section_banner .high_performance_img{
    display: block;
    max-width: 940px;
    margin: 0 auto 30px;
}
@media (max-width: 767px){
    .section_banner .high_performance_img{
        max-width: 320px;
    }
}

/*.slider-for .slick-slide{
    position: relative;
    padding-bottom: 900px;
}
.slider-for .slick-slide img{
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    top: 0;
    left: 0;
}
.slider-nav .slick-slide{
    position: relative;
    padding-bottom: 120px;
}
.slider-nav .slick-slide img{
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    top: 0;
    left: 0;
}*/

.slick-slide img{
    display: block !important;
}
.slider-nav{
    margin: 15px 0 60px;
}
.slider-nav .slick-slide{
    padding: 2px;
    cursor: pointer;
}
.slider-nav .slick-slide.slick-current{
    padding: 2px;
    background: #0d6efd;
}
@media (max-width: 767px){
    .slider-nav{
        margin: 15px 0 30px;
    }
}
.slider-for .slick-prev,.slider-for .slick-next{
    z-index: 9;
    width: auto;
    height: auto;
    font: normal normal normal 14px/1 FontAwesome;
}
.slider-for .slick-prev{
    right: 100%;
    transform: translate(100%, -50%);
}
.slider-for .slick-prev:before{
    font: normal normal normal 64px/1 FontAwesome;
    content: "\f104";
    color: #000;
}
.slider-for .slick-next{
    left: 100%;
    transform: translate(-100%, -50%);
}
.slider-for .slick-next:before{
    font: normal normal normal 64px/1 FontAwesome;
    content: "\f105";
    color: #000;
}

.high_performance_housing_02 ul.housing_list{
    flex-direction: row;
    flex-wrap: wrap;
}
.high_performance_housing_02 ul.housing_list > li{
    width: 50%;
    box-sizing: border-box;
}
@media only screen and (max-width: 575px){
    .high_performance_housing_02 ul.housing_list > li{
        width: 100%;
    }
}

/*============================================*/
#main{
    position: relative;
}
.sticky-right{
    position: absolute;
    left: 0;
    top: 0;
}
.txt-red{
    color: #E50020;
}
.txt-blue{
    color: #1A356F;
}
.inner-section-whole{
    width: calc(100% - 30px);
    max-width: 900px;
    margin: 0 auto;
}
.inner-section05{
    width: calc(100% - 30px);
    max-width: 600px;
    margin: 0 auto;
}

.section01.section_banner{
    text-align: center;    
}
.section01.section_banner .banner{
    margin-top: 150px;
}
.section02{
    padding-block: 50px 85px;
}
.section02 h2{
    position: relative;
    font-size: 38px;
    letter-spacing: 3px;
    line-height: 50px;
    background: #734E30;
    padding-block: 27px 23px;
    text-align: center;
    color: #fff;
    margin: 0 0 75px;
}
.section02 h2:after{
    border-left: 58px solid transparent;
    border-right: 58px solid transparent;
    border-top: 54px solid #734E30;
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translate(-50%,50%);
}
@media (max-width: 767px){
    .section02 h2:after{
        border-left: 36px solid transparent;
        border-right: 36px solid transparent;
        border-top: 26px solid #734E30;
    }
}
.section02 .icons{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    column-gap: 26px;
    max-width: 850px;
    margin: 0 auto;
}
.section02 .icons .item-icon{
    width: calc(33.333333% - 52px/3);
}

.section03{
    background: #F7F7F7;
    padding-block: 100px 30px; 
}
.section03 .title-sec03{
    text-align: center;

    font-size: 32px;
    line-height: 42px;
    padding-bottom: 10px;
    border-bottom: 2px solid #0D0D0D;
    margin:0 0 46.4px;
}
.head--section03{
    text-align: center;
    margin: 0 0 110px;
}
.head--section03 h3{
    font-size: 30px;
    line-height: 52px;
    margin: 0;
}
.head--section03 h2{
    font-size: 40px;
    line-height: 52px;
    margin: 0 0 16px;
}
.head--section03 p{
    font-size: 18px;
    line-height: 27px;
    margin: 0 0 16px;
}
.body--section03{
    display: flex;
    justify-content: center;
    align-items: flex-start;
    column-gap: 80px;
}
.item-sec{
    font-size: 18px;
    line-height: 27px;
    text-align: center;
}
.item-sec p{
    margin: 0;
}

.section04{
    padding-block: 70px 120px;
}
.section04 h3{
    font-size: 30px;
    line-height: 36px;
    margin: 0 0 17px;
}
.head--section04{
    text-align: center;
    margin: 0 0 60px;
}
.head--section04 p{
    font-size: 18px;
    line-height: 27px;
}
.head--section04 p span{
    font-size: 20px;
}
.head--section04 p:last-child{
    font-size: 16px;
    line-height: 27px;
}

.section04 ul{
    list-style: none;
    padding: 0;
    margin: 0 0 57px;
    counter-reset: section;
}
.section04 ul li{
    font-size: 23px;
    line-height: 36px;
    font-weight: 700;
    position: relative;
    padding-left: 70px;
}
.section04 ul li:before{
    counter-increment: section;
    content: counter(section);
    width: 43px;
    height: 43px;
    text-align: center;
    color: #fff;
    background: #0D0D0D;
    font-weight: 700;
    font-size: 23px;
    line-height: 43px;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.section04 ul li+li{
    margin-top: 30px;
}

.title-section04{
    background: #734E30;
    text-align: center;
    color: #fff;
    padding: 20px;
}
.title-section04 p{
    font-size: 23px;
    line-height: 36px;
    letter-spacing: 3px;
    margin: 0;
    font-weight: 700;
}
.title-section04 h2{
    font-size: 39px;
    letter-spacing: 3px;
    line-height: 50px;
    margin: 0;
}

.section05{
    background: #F7F7F7;
    padding-block: 65px 75px;
}
.head--section05{
    position: relative;
    padding: 26px 0 27px;
    border-top: 2px solid #0D0D0D;
    border-bottom: 2px solid #0D0D0D;
    text-align: center;
    margin: 0 0 50px
}
.head--section05:after{
    border-bottom: 2px solid #0D0D0D;
    border-right: 2px solid #0D0D0D;
    transform: rotate(45deg) translate(4%, 75%);
    content: "";
    position: absolute;
    left: 50%;
    width: 20px;
    bottom: 0;
    height: 20px;
    background: #fff;
}
.head--section05 p{
    font-size: 18px;
    line-height: 32px;
    margin: 0;
    font-weight: 700;
}
.head--section05 h3{
    font-size: 20px;
    line-height: 32px;
    color: #E50020;
    margin: 0;
}

.section05 h2{
    text-align: center;
    letter-spacing: 3px;
    font-size: 30px;
    line-height: 44px;
    margin: 0 0 24px;
}
.media{
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
}
.media .media-body{
    flex: 1;
}

.section05 .media{
    column-gap: 50px;
    align-items: flex-end;
}
.section05 .media figure{
    margin: 0;
}
.section05 .media .media-body p{
    font-size: 18px;
    line-height: 28px;
}

.section06{
    padding-block: 110px 140px;
}
.section06 h2{
    font-size: 30px;
    line-height: 36px;
    text-align: center;
    margin: 0 0 100px;
}
.section06 h3{
    font-size: 28px;
    line-height: 36px;
    text-align: center;
    font-weight: 500;
}

.section06 .media{
    column-gap: 60px;
    align-items: center;
    margin-bottom: 100px;
}
.section06 .media .tt--media-body{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    column-gap: 13px;
    margin: 0 0 20px;
}
.section06 .media .tt--media-body h3{
    font-size: 30px;
    line-height: 36px;
    margin: 0;
    text-align: left;
}
.section06 .media+h2{
    margin: 0 0 40px;
}
.section06 .media .media-body p{
    font-size: 18px;
    line-height: 28px;
}


.section07{
    padding-block: 100px 185px;
    background: #F7F7F7;
}
.head-section07{
    margin: 0 0 60px;
}
.head-section07 h2{
    font-size: 30px;
    line-height: 32px;
    text-align: center;
    margin: 0 0 30px;
}
.head-section07 h2 span{
    padding: 0 30px;
    border-bottom: 2px solid #0D0D0D;
}
.head-section07 h3{
    font-size: 23px;
    line-height: 32px;
    text-align: center;
    margin: 0 0 20px;
}
.head-section07 p{
    font-size: 18px;
    line-height: 28px;
}
.section07 .media{
    align-items: flex-end;
    column-gap: 30px;
}
.section07 .media .media-body h3{
    font-size: 20px;
    line-height: 27px;
    margin: 0 0 20px;
}
.section07 .media .media-body p{
    font-size: 18px;
    line-height: 28px;
}
.section07 .media .media-body p+h3{
    margin: 56px 0 20px;
}

.title-section07{
    background: #734E30;
    letter-spacing: 3px;
    text-align: center;
    color: #fff;
    padding: 20px;
    font-size: 30px;
    line-height: 38px;
    font-weight: 700;
    margin-block: 60px 50px;
}
.txt-section07{
    font-size: 23px;
    line-height: 35px;
    margin: 0 0 70px;
}
.list-section07{
    counter-reset: section;
}
.item-sec07{
    font-size: 20px;
    line-height: 27px;
    padding: 24px 0;
    border: 2px solid #0D0D0D;
    position: relative;
    text-align: center;
    background: #fff;
    font-weight: 500;
}
.item-sec07+.item-sec07{
    margin-top: 26px;
}
.item-sec07:before{
    counter-increment: section;
    content: counter(section);
    width: 43px;
    height: 43px;
    text-align: center;
    color: #fff;
    background: #0D0D0D;
    font-weight: 700;
    font-size: 23px;
    line-height: 43px;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translate(-50%,-50%);
}


.section08{
    padding-block: 100px 100px;
}
.head--section08 h2{
    font-size: 23px;
    line-height: 32px;
    font-weight: 700;
    text-align: center;
    margin: 0 0 25px;
}
.head--section08 h2 span{
    padding: 0 57px;
    position: relative;
}
.head--section08 h2 span:before,
.head--section08 h2 span:after{
    width: 26px;
    height: 26px;
    border-left: 2px solid #0D0D0D;
    transform: rotate(30deg);
    content: "";
    position: absolute;
    right: 0;
    top: 10px;
}
.head--section08 h2 span:after{
    transform: rotate(-30deg);
    left: 10px;
    top: -3px;
    right: auto;
}
.head--section08 h3{
    font-size: 30px;
    line-height: 32px;
    text-align: center;
    margin: 0 0 34px;
}
.head--section08 p{
    font-size: 18px;
    line-height: 27px;
    margin: 0 0 38px;
    text-align: center;
}

.list-section08{
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    flex-wrap: wrap;
    column-gap: 40px;
    row-gap: 70px;
}
.list-section08 .item-sec08{
    width: calc(50% - 20px);
}
.list-section08 .item-sec08 p{
    font-size: 18px;
    line-height: 28px;
}
.list-section08 .item-sec08 figure figcaption{
    text-align: center;
    font-size: 16px;
    line-height: 28px;
}

.section09{
    padding-block: 60px 210px; 
}
.section09 h3{
    font-size: 23px;
    line-height: 36px;
    text-align: center;
}
.section09 p{
    font-size: 18px;
    line-height: 27px;
    text-align: center;
    margin: 0 0 40px;
}

.section10{
    background: #F7F7F7;
    padding-block: 94px 200px;
}
.section10 h3{
    font-size: 24px;
    line-height: 36px;
    text-align: center;
    margin: 0 0 73px;
}
@media only screen and (min-width: 768px){
    .section10 h3{
        font-size: 30px;
    }
}
.section10 .box--section10{
    position: relative;
    border: 2px solid #0D0D0D;
    background: #fff;
    padding: 85px 190px 40px;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
}
.head--box{
    position: absolute;
    left: 50%;
    top: 0;
    border: 2px solid #0D0D0D;
    font-weight: 500;
    text-align: center;
    font-size: 23px;
    line-height: 32px;
    transform: translate(-50%,-50%);
    background: #fff;
    padding: 20px;
    width: calc(100% - 80px);
    max-width: 500px;
    display: flex;
    justify-content: center;
    align-items: center;
    column-gap: 30px;
}
.section10 .box--section10 ul{
    list-style: disc;
    list-style-position: inside;
    padding: 0;
    margin: 0;
    width: 50%;
    display: inline-block;
}
.section10 .box--section10 ul:last-child{
    width: 100%;
}
.section10 .box--section10 ul li{
}
.title-section10{
    background: #734E30;
    text-align: center;
    letter-spacing: 3px;
    color: #fff;
    padding: 40px 20px;
    font-size: 30px;
    line-height: 38px;
    font-weight: 700;
    margin-bottom: 110px;
}
.title-section10+a.btn{
    width: 340px;
    max-width: 100%;
}
.box--section10.first+img{
    display: block;
    margin: 0 auto 75px;
}
.box--section10.last{
    padding: 85px 30px 40px; 
}
.box--section10.last+img{
    margin: 60px auto 40px;
}

@media only screen and (min-width: 768px){
    .sp-br{
        display: none;
    }
}
@media only screen and (max-width: 767px){
    .pc-br{
        display: none;
    }
    .sticky-right{
        display: none;
    }
    .section01.section_banner .banner{
        margin-top: 35px;
    }
    .section02{
        padding-block: 30px 60px;
    }
    .section02 h2{
        font-size: 22px;
        line-height: 26px;
        padding-block: 20px;
    }

    .section02 .icons{
        column-gap: 14px;
    }
    .section02 .icons .item-icon{
        width: calc(33.333333% - 28px/3);
    }

    .section03{
        padding-block: 60px 65px;
    }
    .section03 .title-sec03{
        font-size: 21px;
        line-height: 28px;
    }
    .section03 .title-sec03 span{
        font-size: 25px;
        line-height: 34px;
        display: block;
    }
    .section03 .head--section03 h3{
        font-size: 18px;
        line-height: 24px;
    }
    .head--section03 h2{
        font-size: 25px;
        line-height: 36px;
        margin: 0;
    }
    .head--section03{
        margin: 0 0 90px;
    }
    .body--section03{
        display: block;
    }
    .body--section03 .item-sec+.item-sec{
        margin-top: 50px;
    }
    .section04{
        padding-block: 45px 80px;
    }
    .section04 h3{
        font-size: 22px;
        line-height: 27px;
    }
    .head--section04 p{
        font-size: 16px;
        line-height: 27px;
    }
    .head--section04 p:last-child{
        font-size: 12px;
        line-height: 18px;
    }
    .head--section04{
        margin: 0 0 40px;
    }
    .section04 ul li{
        font-size: 16px;
        line-height: 25px;
    }
    .title-section04 p{
        font-size: 18px;
    }
    .title-section04 h2{
        font-size: 22px;
        line-height: 26px;
    }
    .section05 h2{
        font-size: 22px;
        line-height: 35px;
    }
    .section05 .media{
        flex-wrap: wrap;
    }
    .section05 .media figure{
        width: 100%;
        text-align: center;
        margin: 70px 0 0;
    }
    .section06{
        padding-block: 65px 75px;
    }
    .section06 h2{
        font-size: 22px;
        line-height: 32px;
        margin: 0 0 70px;
    }
    .section06 .media .tt--media-body h3{
        font-size: 22px;
        line-height: 32px;
    }
    .section06 .media .tt--media-body img{
        width: 60px;
        height: auto;
    }
    .section06 .media .media-body p{
        font-size: 16px;
        line-height: 28px;
    }
    .section06 .media{
        margin-bottom: 80px;
    }
    .section06 .media+h2{
        margin: 0 0 26px;
    }
    .section06 h3{
        font-size: 20px;
        line-height: 32px;
    }
    .section07{
        padding-block: 70px 110px;
    }
    .head-section07{
        margin-bottom: 50px;
    }
    .head-section07 h2{
        font-size: 22px;
        line-height: 32px;
    }
    .head-section07 h2 span{
        display: block;
        padding-bottom: 10px;
    }
    .head-section07 h3{
        font-size: 18px;
        line-height: 28px;
    }
    .head-section07 p{
        font-size: 16px;
        line-height: 28px;
    }
    .section07 .media .media-body h3{
        font-size: 18px;
        line-height: 27px;
        margin: 0 0 14px;
    }
    .section07 .media .media-body p{
        font-size: 16px;
        line-height: 28px;
    }
    .section07 .media .media-body p+h3{
        margin: 40px 0 14px;
    }
    .title-section07{
        font-size: 22px;
        line-height: 26px;
        margin-block: 50px 30px;
    }
    .txt-section07{
        font-size: 18px;
        line-height: 35px;
    }
    .item-sec07{
        font-size: 18px;
        line-height: 27px;
    }
    .item-sec07:before{
        top: 0;
        left: 50%;
        transform: translate(-50%,-50%);
    }
    .section08{
        padding: 60px 0 60px;
    }
    .head--section08 h2{
        font-size: 18px;
        line-height: 24px;
        margin: 0 0 15px;
    }
    .head--section08 h3{
        font-size: 22px;
        line-height: 32px;
    }
    .head--section08 p{
        font-size: 16px;
        line-height: 24px;
    }
    .list-section08{
        row-gap: 30px;
    }
    .list-section08 .item-sec08{
        width: 100%;
    }
    .list-section08 .item-sec08 p{
        font-size: 16px;
        line-height: 28px;
    }
    .list-section08 .item-sec08:nth-child(3) figure{
        margin: 60px 0 0;
    }
    .section09{        
        padding-block: 0 100px;
    }
    .section09 h3{
        margin: 0 0 20px;
        font-size: 18px;
        line-height: 24px;
    }
    .section09 p{
        font-size: 16px;
        line-height: 27px;
    }
    .section10{
        padding: 40px 0 100px;
    }
    .section10 h2{
        font-size: 22px;
        line-height: 32px;
    }
    .head--box{
        font-size: 18px;
        line-height: 24px;
        text-align: left;
        padding: 16px 13px;
    }
    .section10 .box--section10{
        padding: 80px 30px 30px;
    }
    .section10 .box--section10 ul{
        width: 100%;
    }
    .title-section10{
        font-size: 22px;
        line-height: 26px;
    }
}

#content_pran_price{
    padding-bottom: 40px;
}
#content_pran_price .container{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;    
    flex-wrap: wrap;
    flex-direction: column-reverse;
}
#content_pran_price .content-left{
    padding-top: 0;
    max-width: 760px;
}
#content_pran_price .heading-pran_price{margin-bottom: 64px;}
#content_pran_price .heading-pran_price h2{
    font-weight: 400;
    font-size: 12vw;
    line-height: 1.1;
    letter-spacing: 10%;
    margin: 0 0 10px;
}
#content_pran_price .heading-pran_price h3{
    font-weight: 400;
    font-size: 6vw;
    line-height: 1.6;
    letter-spacing: 10%;
    margin: 0;
}
#content_pran_price .content-list-pran_price dl{
    margin: 0;
}
#content_pran_price .content-list-pran_price dl+dl{
    margin-top: 50px;
}
#content_pran_price .content-list-pran_price dl dt{
    font-weight: 600;
    font-size: 18px;
    line-height: 28px;
    letter-spacing: 5%;
    padding-left: 30px;
    background: url(images/pran_price/icon_title.png) left top 7px no-repeat;
}
#content_pran_price .content-list-pran_price dl dd{
    font-weight: 400;
    font-size: 16px;
    line-height: 28px;
    letter-spacing: 5%;
    margin: 10px 0 0;
}
#content_pran_price .content-right{
    margin-inline: auto;
}
@media only screen and (min-width: 768px){
    #content_pran_price{
        padding-bottom: 80px;
    }
    #content_pran_price .heading-pran_price h2{
        font-size: 60px;
        line-height: 86px;
    }
    #content_pran_price .heading-pran_price h3{
        font-size: 30px;
        line-height: 42px;
    }
}
@media only screen and (min-width: 992px){
    #content_pran_price .container{
        flex-direction: row;
        /*padding-right: 90px;*/
        /*max-width: 1080px;*/
    }
    #content_pran_price .content-left{
        padding-top: 70px;
    }
    #content_pran_price .content-right{
        margin: -80px 0 0;
    }
}

.section-products-pran_price{
    padding-block: 100px;
}

.grid-items-products{
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 80px 27px;
    /*max-width: 1080px;*/
    margin-inline: auto;
}
.grid-items-products .item-product{
    width: 100%;
    max-width: 420px;
    margin-inline: auto;
}
.grid-items-products .item-product figure{
    margin: 0;
}
.grid-items-products .item-product figure img{
    display: block;
}
.grid-items-products .heading-item-intro{
    padding: 16px;
    border: 1px solid #0d0d0d;
    margin-top: -1px;
}
.grid-items-products .heading-item-intro h3{
    font-weight: 600;
    font-size: 16px;
    line-height: 22px;
    letter-spacing: 0%;
    margin: 0 0 10px;
    position: relative;
    padding-left: 15px;
}
.grid-items-products .heading-item-intro h3:before{
    content: "";
    width: 5px;
    height: 5px;
    background: #0D0D0D;
    position: absolute;
    left: 0;
    top: 9px;
}
.grid-items-products .heading-item-intro h3:after{
    content: "";
    width: 5px;
    height: 5px;
    background: #0D0D0D;
    position: absolute;
    right: 0;
    top: 9px;
}
.grid-items-products .heading-item-intro p{
    font-weight: 400;
    font-size: 16px;
    line-height: 22px;
    letter-spacing: 0%;
    position: relative;
    padding-bottom: 15px;
}
.grid-items-products .heading-item-intro p:before{
    content: "";
    width: 5px;
    height: 5px;
    background: #0D0D0D;
    position: absolute;
    left: 0;
    bottom: 0;
}
.grid-items-products .heading-item-intro p:after{
    content: "";
    width: 5px;
    height: 5px;
    background: #0D0D0D;
    position: absolute;
    right: 0;
    bottom: 0;
}
.grid-items-products .inf-item-intro{
    border: 1px solid #0d0d0d;
    margin: -1px 0 0;
    padding: 8px 0;
}
.grid-items-products .inf-item-intro p{
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 16px;line-height: 22px;
    position: relative;
    padding-inline: 30px 16px
}
.grid-items-products .inf-item-intro p:before{
    content: "";
    width: 5px;
    height: 5px;
    background: #0D0D0D;
    position: absolute;
    left: 16px;
    top: 9px;
}

.grid-items-products .item-product a.btn{
    margin: 16px 0 0 auto;
}

@media only screen and (min-width: 603px){
    .grid-items-products .item-product{
        width: calc(50% - 27px/2);margin-inline: 0;
    }
}
@media only screen and (min-width: 768px){
    .grid-items-products .item-product{
        width: calc(33.333333% - 54px/3);
    }
}

.section-top-price-pran{
    padding-bottom: 40px;
}
.section-top-price-pran h3{
    font-weight: 400;
    font-size: 6vw;
    line-height: 100%;
    letter-spacing: 10%;
    text-align: center;
}
.section-top-price-pran h4{
    font-weight: 600;
    font-size: 3.5vw;
    line-height: 1.6;
    letter-spacing: 5%;
    text-align: center;
}
.section-top-price-pran p{
    font-weight: 400;
    font-size: 16px;
    line-height: 28px;
    letter-spacing: 5%;
    text-align: center;
    margin-bottom: 24px;
}

.section-gallery-price-pran{
    margin-bottom: 40px;
}
.price-info{
    margin-top: 40px;
}
.price-info .item--price-info{
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    line-height: 22px;
    border: 1px solid #0d0d0d;
    margin-top: -1px;
    min-width: 300px;
    gap: 24px;
    padding: 16px;
}
.price-info span:first-child{
    position: relative;
    padding-left: 15px;
}
.price-info span:first-child:before{
    content: "";
    width: 5px;
    height: 5px;
    background: #0D0D0D;
    position: absolute;
    left: 0;
    top: 8px;
}

.infomation table{
    width: 100%;
    border-collapse: collapse;
}
.infomation table tr th,
.infomation table tr td{
    border: 1px solid #0D0D0D;
    padding: 12px 16px;
    font-weight: 400;
    font-size: 16px;
    line-height: 100%;
    text-align: left;
}
.infomation table tr th{
    position: relative;
    padding-left: 32px;
    width: 140px;
}
.infomation table tr th:before{
    content: "";
    width: 5px;
    height: 5px;
    background: #0D0D0D;
    position: absolute;
    left: 16px;
    top: 18px;
}

.blueprint{
    padding-block: 40px;
    background: #f7f7f7;
}
.blueprint a.btn{
    width: 430px;
    max-width: calc(100% - 60px);
}
.blueprint h2{
    font-weight: 600;
    font-size: 4.5vw;
    line-height: 100%;
    position: relative;
    margin: 0 0 40px;
}
.blueprint h2 span{
    background: #f7f7f7;
    position: relative;
    z-index: 9;
    padding-right: 15px;
}
.blueprint h2:before{
    border: 1px solid #D9D9D9;
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 100%;
    z-index: 8;
}

.inner-table-blueprint{
    max-width: 720px;
    margin-inline: auto;
    padding-top: 40px;
}
.inner-table-blueprint .item--table-blueprint{
    margin-bottom: 40px;
}
.inner-table-blueprint table{
    width: 100%;
}
.inner-table-blueprint table tr th{
    color: #fff;
    background: #0d0d0d;
    font-weight: 600;
    font-size: 16px;
    line-height: 100%;
    padding-block: 10px;
}
.inner-table-blueprint table tr td{
    padding-block: 8px;
    text-align: center;
    background: #fff;
}
.inner-table-blueprint table tr td .main-price{
    font-weight: 500;
    font-size: 32px;
    line-height: 100%;
}
.text-center{
    text-align: center;
}

@media only screen and (min-width: 768px){
    .section-top-price-pran{
        padding-bottom: 80px;
    }
    .section-top-price-pran h3 {
        font-size: 35px;
    }
    .section-top-price-pran h4 {
        font-size: 20px;
        line-height: 28px;
    }
    .price-info{
        display: flex;
        justify-content: center;
        align-items: center;
        margin-top: 40px;
    }
    .price-info .item--price-info{
        margin-top: 0;
        margin-left: -1px;
    }
    .section-gallery-price-pran{
        margin-bottom: 80px;
    }
    .blueprint{
        padding-block: 80px;
    }
    .blueprint h2{
        font-size: 32px;
    }
    .inner-table-blueprint{
        padding-top: 80px;
    }
}