@charset "UTF-8";

/*---------------------------------------------common-----*/


.tag-bl{
    flex-wrap: wrap;
}

.white-bg-tag{
    margin-bottom: 2%;
    text-align: center;
    width: 30%;
}

.head24.borderB{
    font-weight: 100;
    border-bottom: 1px solid #e0d8d5;
    margin-bottom: 40px;
    line-height: 1.4;
    padding-bottom: 10px;
}

.base__flex{
    margin-bottom: 70px;
}

.base__flex img{
    margin-bottom: 10px;
}

.base__flex .text18,
.base__flex .text18{
    color: #826e60;
    text-align: center;
}

.flex-pt{
    justify-content: space-between;
    flex-wrap: wrap;
}

.flex-pt li{
    margin-bottom: 2%;
    width: 49%;
}

.flex-ptd{
    justify-content: space-between;
    align-items: center;
}

.ptd-img{
    width: 30%;
}

.ptd-detail{
    width: 66%;
}

.ptd-detail .head21{
    color: #826e60;
    line-height: 1.7;
    margin-bottom: 10px;
}

.ptd-detail .text16{
    display: block;
    line-height: 1.4;
}

/*---------------------------------------------common-----*/

#sec-01{
    padding: 120px 0 130px;
}

.flex-sec01{
    margin-bottom: 50px;
    justify-content: space-between;
    align-items: center;
}

.sec01-img{
    width: 50%;
}

.sec01-detail{
    width: 47%;
}

.sec01-detail .head42{
    line-height: 1;
    margin-bottom: 30px;
}

.sec01-detail .head26{
    line-height: 1.7;
    margin-bottom: 20px;
}

#sec-01 .flow-wrap{
    margin-bottom: 100px;
}

.flex-ttl{
    background: #c9b8af;
    color: #fff;
    margin-bottom: 20px;
    justify-content: flex-start;
    align-items: center;
    padding: 12px 20px;
}

.flex-ttl .head24{
    border-right: 1px solid #fff;
    line-height: 1;
    padding: 5px 25px 5px 0;
    margin-right: 25px;
}

/*---------------------------------------------sec-02-----*/

#sec-02{
    background: #f6f2f0;
    padding: 120px 0 120px;
}

.flex-sec02{
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #e0d8d5;
    padding-bottom: 40px;
    margin-bottom: 60px;
}

.sec02-ttl{
    width: 33%;
    position: relative;
    z-index: 1;
}

.sec02-ttl .text16{
    color: #826e60;
}

.sec02-detail{
    width: 65%;
    position: relative;
    z-index: 1;
}

.intro-wrap{
    position: relative;
}

.intro-wrap .bgText{
    color: #fff;
    font-size: 200px;
    font-size: 20rem;
    line-height: 1 !important;
    position: absolute;
    right: 0;
    top: 30%;
    transform: translateY(-50%);
    text-align: right;
    z-index: 0;
}

#sec-02 .flow-wrap{
    margin-bottom: 60px;
}

.flex-treat{
    justify-content: space-between;
    margin-bottom: 80px;
}

.flex-treat div{
    width: 48%;
}

.flex-treat div img{
    margin-bottom: 25px;
}

.treat-head{
    text-align: center;
    margin-bottom: 20px;
}

.treat-head .text14{
    display: block;
}

.flex-brown{
    margin-bottom: 20px;
    justify-content: center;
}

.flex-brown li{
    margin: 0 0.5%;
}

.flex-brown li span{
    font-size: 15px;
    font-size: 1.5rem;
    background: #826e60;
    border-radius: 3px;
    color: #fff;
    padding: 5px 10px;
}

.whiteBg{
    background: #fff;
    padding: 5% 6%;
}

.whiteBg .base__flex{
    margin-bottom: 0;
}

@media only screen and (max-width: 1280px) {
.sec01-detail .head26 {
    font-size: 2.2rem;
}
}

@media only screen and (max-width: 1080px) {

.flex-ptd {
    align-items: flex-start;
}

.ptd-detail .head21 {
    margin-bottom: 0;
}

.ptd-detail .text15{
    font-size: 1.3rem;
}

.head24.borderB {
    margin-bottom: 20px;
}
}

@media screen and (max-width: 834px){

.base__flex .text18{
    font-size: 1.6rem;
}

.base__flex {
    margin-bottom: 40px;
}

.flex-pt li {
    margin-bottom: 5%;
    width: 100%;
}

.ptd-detail .text16 {
    font-size: 1.2rem;
}

.ptd-detail .head21 {
    font-size: 1.8rem;
    margin-bottom: 10px;
}

.ptd-detail .text15 {
    font-size: 1.3rem;
}

#sec-01 {
    padding: 50px 0 50px;
}

.flex-sec01 {
    margin-bottom: 30px;
    display: block;
}

.sec01-img {
    width: 100%;
    margin-bottom: 25px;
}

.sec01-detail {
    width: 100%;
}

.sec01-detail .head42 {
    margin-bottom: 25px;
    font-size: 2.2rem;
}

.sec01-detail .head26 {
    font-size: 1.8rem;
}

#sec-01 .flow-wrap {
    margin-bottom: 0;
    overflow: scroll;
}

#sec-01 .flow-wrap .flow{
    margin-bottom: 15px;
    width: 1000px;
}

.note{
    color: #c9b8af;
    font-size: 12px;
    font-size: 1.2rem;
    margin-bottom: 50px;
    text-align: center;
    width: 100%;
}

.flex-ttl .head24 {
    border-right: 1px solid #fff;
    line-height: 1.4;
    padding: 2px 15px 2px 0;
    margin-right: 15px;
    font-size: 2rem;
}

.flex-ttl .text18{
    font-size: 1.4rem;
    line-height: 1.4;
}

#sec-02 {
    background: #f6f2f0;
    padding: 50px 0 70px;
}

.intro-wrap .bgText {
    font-size: 7rem;
    top: 0;
}

.flex-sec02 {
    padding-bottom: 20px;
    margin-bottom: 30px;
    display: block;
}

.sec02-ttl {
    width: 100%;
    margin-bottom: 20px;
    text-align: center;
}

.sec02-ttl .head42 {
    line-height: 1.4;
}

.sec02-detail {
    width: 100%;
}

#sec-02 .flow-wrap {
    margin-bottom: 0;
    overflow: scroll;
}

#sec-02 .flow-wrap .flow{
    margin-bottom: 15px;
    width: 1000px;
}

.flex-treat {
    margin-bottom: 40px;
    display: block;
}

.flex-treat div {
    width: 100%;
}

.flex-treat div .t01{
    margin-bottom: 30px;
}

.treat-head {
    font-size: 1.8rem;
    margin-bottom: 15px;
}

.flex-brown li span {
    font-size: 1.2rem;
    padding: 3px 5px;
}

.flex-brown li.is-sp{
    width: 100%;
}

.head24.borderB span{
    font-size: 1.8rem;
}

}

@media screen and (max-width: 687px){

}