﻿body, .txt_color_nomal {
    color: #383838;
}

.main_img_txt p, .main_img_txt2 p {
    text-align: right;
    font-size: 36px;
}

.main_img_txt h2, .main_img_txt2 h2 {
        font-size: 90px;
    text-align: right;
        font-size: max(4.5vw, 40px);
}

.main_img_txt{
        color: #0c0c0c;
}

.txt_color3 {
    color: #4c2e03;
}

.index .main_header h1 {
    max-width: 230px;
    margin: 0 auto;
}

.top_cms_item:nth-of-type(1):before{
        content: "";
    display: block;
    width: 40%;
    height: 40%;
    position: absolute;
    top: 30%;
    left: 22%;
    background-image: url(./Dup/img/ha.png);
    background-position: left center;
    background-repeat: no-repeat;
    -webkit-transform: translate(-50% , -50%);
    transform: translate(-50% , -50%);
    background-size: contain;
    pointer-events: none;
    opacity: 0.7;
    mix-blend-mode: multiply;
}

#video{
        background-image: url(./Dup/img/fa.jpg);
    background-position: 40% 50%;
    background-size: cover;
}

.main_img_txt{
    opacity: 0;
}

.main_img_txt2 {
    bottom: 2%;
}

#contents1{
    position: relative;
}

.cus:before{
        content: "";
    display: block;
    width: 80px;
    height: 80px;
    position: absolute;
    top: -20px;
    left: 50%;
    background-image: url(./Dup/img/ku.png);
    background-position: center;
    background-repeat: no-repeat;
    -webkit-transform: translate(-50% , -50%) rotate(15deg);
    transform: translate(-50% , -50%) rotate(15deg);
    background-size: contain;
    pointer-events: none;
}

h2.contents1_title{
       font-size: min(2.4vw, 42px);
    margin-bottom: 100px;
    line-height: 1.45em;
}

#cms_5-b .cate_box .open_bt .box_title1::before, .cms_5-b .cate_box .open_bt .box_title1::before {
    content: none;
}

#progressbar_text {
    max-width: 170px;
}

#progressbar_text svg{
    stroke-width: 5px !important;
}

#cms_5-b .cate_box .open_bt .box_title1, .cms_5-b .cate_box .open_bt .box_title1 {
    margin-left: 70px;
}

#page_title:before {
    background: rgba(230,230,230,0.2)　!important;
}

#form{
    display: none;
}

#contents1 .contents1_txt{
    margin: 100px auto;
}

.linkStyle{color: #4b916f;}

.modal_btn{
    display: none;
}

.cus{
        background-color: white;
    padding: 15px 30px;
    box-sizing: border-box;
    position: relative;
}

.cus li{
        border-bottom: 1px solid #e7e7e7;
    padding: 15px;
    box-sizing: border-box;
    position: relative;
    color: #573b13;
    font-weight: bold;
    padding-left: 35px;
    font-size: 17px;
}

.cus li:before{
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    position: absolute;
    top: 50%;
    left: 0%;
    background-image: url(./Dup/img/cup.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    pointer-events: none;
    transform: translateY(-50%);
    /* color: aliceblue;*/
}

.contents1_txt{
    line-height: 2em;
}

.index .intro{
            margin: 30px auto 50px;
}

.sapu{
    max-width: 150px;
    margin: -70px auto 0;
    z-index: 1;
    position: relative;
}

#cms_2-h .cate > .d_flex{
       background-color: transparent;
    border: 1px solid #077e59;
    padding: 9px;
    border-left: none;
    border-right: none;
}

#cms_2-h .cate > .d_flex h3{
        font-weight: bold;
            color: #004c34;
                text-align: center;
}

#cms_2-h .cate_box{
        margin-top: 90px;
    margin-bottom: 90px;
    padding-bottom: 20px;
}

#cms_2-h .cate_box .box_item{
    padding-bottom: 0;
}

#cms_2-h .box_title1:before {
    bottom: -10px;
}

#cms_2-h .cate_title_wrap span.cate_txt1{
        text-align: center;
    margin: 10px auto;
    display: block;
}

/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
.main_img {
    height: 60vh;
    min-height: 60vh;
}



.main_img_txt, .main_img_txt2 {
    left: auto;
    right: 5%;
}

.top_cms_item:nth-of-type(1):before {
    width: 190px;
    top: 28%;
    left: 15%;
    background-position: left top;
}

}

/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
.main_img_txt2 {
    bottom: 0%;
    right: 2%;
}

h2.contents1_title {
    font-size: max(2.4vw, 28px);
    line-height: 1.4em;
}

.top_cms_item:nth-of-type(1):before {
    width: 150px;
    height: 150px;
    top: 28%;
    left: 15%;
    background-position: left top;
}

#page_title .title_box {
    width: 85%!important;
}

#page_title h2{
    font-size: 21px;
}

.cus li{
    font-size: 15px;
}

.cus {
    padding: 5px 10px;
}

.index .intro {
    padding: 0 20px;
}

.sapu {
    margin: -30px auto 0;
    width: 16%;
}

.intro h2.contents1_title {
    margin-bottom: 50px;
}

}