* {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
}

body {
    line-height: 1;
}

ol, ul {
    list-style: none;
}

blockquote, q {
    quotes: none;
}

blockquote:after, blockquote:before, q:after, q:before {
    content: '';
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

img {
    max-width: 100%;
    height: auto;
}

a:hover {
    opacity: 0.8;
}

body {

    font-family: Lato, "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;

}

.title_1 {
    font-family: "Roboto Slab", Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "Sawarabi Mincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    font-size: 40px;
    font-weight: 600;
    line-height: 1.55;
    letter-spacing: 4px;
    color: #1e1e1e;
    margin-bottom: 10px;
}
.title_1 span {
    font-size: 34px;
}


.title_2 {
    color: #288e45;
    font-family: "Roboto Slab", Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "Sawarabi Mincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    font-size: 25px;
    font-weight: 400;
    line-height: 50px;
    letter-spacing: 2.5px;
}

.title_2 span {
    font-size: 36px;
}

.title_3 {
    color: #1e1e1e;
    font-family: "Roboto Slab", Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "Sawarabi Mincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    font-size: 27px;
    font-weight: 600;
    line-height: 60.07px;
    letter-spacing: 2.7px;
}

.title_section {
    text-align: center;
    width: 100%;
    margin: auto;
}

.title_4 {
    color: #1e1e1e;
    font-family: "Roboto Slab", Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "Sawarabi Mincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    font-size: 18px;
    font-weight: 600;
    line-height: 20px;
    letter-spacing: 1.8px;
}

.title_section {
    text-align: center;
}

.title_section .title_4 {
    display: inline-block;
    position: relative;
}

.title_section .title_4:before {
    content: url("../images/icon_2.png");
    position: absolute;
    top: 25%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    left: -10px;
}

.title_section .title_4:after {
    content: url("../images/icon_2_2.png");
    position: absolute;
    top: 25%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    right: -5px;
}

.title_4 span {
    color: #288e45;
    font-family: "Roboto Slab", Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "Sawarabi Mincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    font-size: 23px;
    line-height: 60px;
    letter-spacing: 2.3px;
    font-weight: 600;
}

.title_5 {
    font-family: "Roboto Slab", Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "Sawarabi Mincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    font-size: 30px;
    font-weight: 600;
    line-height: 60px;
    letter-spacing: 3px;
    text-align: center;
    display: block;
    width: 100%;
}

.title_section .title_5 {
    margin-top: 30px;
}

.title_section {
    margin-bottom: 65px;
}

.container {
    max-width: 1024px;
    width: 100%;
    margin: 0 auto;
    position: relative;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    display: -webkit-flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

}

p {
    font-family: Lato, "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;

    font-size: 16px;
    font-weight: 500;
    line-height: 2.5;
    letter-spacing: 0.8px;
    text-align: left;
    color: #292929;
}

header {
    background-image: url(../images/bg_header.jpg);
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    background-size: cover;
}

header .title_1 {
    max-width: 1000px;
}

header .container {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    display: -webkit-flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-top: 25px;
    padding-bottom: 10px;
}

header .left_col {
    width: 100%;
    max-width: 605px;
}

header .right_col {
    width: 100%;
    max-width: 410px;
    position: relative;
}

.section_post {
    background-image: url(../images/bg_footer.jpg);
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    background-size: cover;
    padding-top: 50px;
    padding-bottom: 52px;
}

.section_1 {
    padding-top: 53px;
}

.section_1:first-of-type .container {
    border-bottom: 1px dashed #bfbfbf;
    padding-bottom: 15px;
}

.section_1 .wrap_title {
    text-align: center;
}

.section_1 .title_3 {
    position: relative;
    display: inline-block;
    margin-bottom: 20px;
    margin-top: 5px;
}

.section_1 .title_3:before {
    position: absolute;
    content: url(../images/icon_1.png);
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    left: -100px;
}

.section_1 .title_3:after {
    position: absolute;
    content: url(../images/icon_1_1.png);
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    right: -100px;
}

.section_1 .container {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.section_1 .left_col {
    width: 100%;
    max-width: 490px;
    padding-left: 20px;
}

.section_1 .left_col p {

    font-size: 17px;
    font-weight: 500;
    line-height: 44.05px;
    letter-spacing: 0.9px;
}

.section_1:first-of-type .left_col p:hover {
    color: #8cbc41;
}

.section_1 .right_col {
    max-width: 511px;
    width: 100%;
    padding-right: 60px;
    padding-left: 60px;
}

.thumbnail_alt {
    font-size: 14px;
    font-weight: 500;
    line-height: 1.9;
    letter-spacing: 0.7px;
    text-align: center;
    color: #292929;
}

.section_2 {
    padding-top: 55px;
    border-bottom: 0;
}

.section_2 .container {
    padding-bottom: 57px;
    border-bottom: 1px solid #505357;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.section_2 .left_col {
    padding-left: 0;
    margin-top: -10px;
    width: 100%;
    max-width: 610px;
}

.section_2 .right_col {
    width: 100%;
    max-width: 394px;
    padding: 0;
}

.section_2 .left_col p {
    color: #292929;

    font-size: 16px;
    font-weight: 500;
    line-height: 40.01px;
    letter-spacing: 0.8px;
}

.section_2 .second_wrap {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    display: -webkit-flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
    margin-top: 55px;
}

.right_col img {
}

.section_post .lstPosts {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    display: -webkit-flex;
    /*-webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;*/
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
    margin-top: 50px;
}

.section_post .lstPosts li {
    width: 100%;
    max-width: 330px;
}

.section_post .lstPosts .thumbnail_col {
    position: relative;
}

.section_post .lstPosts .badge {
    max-width: 77px;
    position: absolute;
    top: -12px;
    left: 0;
    border-radius: 50%;
    background-image: url(../images/bg_badge.png);
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    -ms-background-size: cover;
    background-size: cover;
    width: 77px;
    height: 77px;
    font-family: "Roboto Slab", Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "Sawarabi Mincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    color: #ffffff;
    font-size: 14px;
    font-weight: 600;
    line-height: 20px;
    letter-spacing: 0.48px;
    text-align: center;
    padding-top: 19px;
}

.section_post .lstPosts .title {
    color: #1e1e1e;
    font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 26px;
    margin-top: 10px;
    margin-bottom: 10px;
}

.section_post .lstPosts .wrap_link {
    text-align: right;
}

.section_post .lstPosts .wrap_link a:hover {
    background-color: #8cbc41;
}

.section_post .lstPosts .wrap_link a {
    color: #ffffff;
    font-family: Lato, "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 33px;
    background-color: #288e45;
    border-radius: 5px;
    padding: 7px 15px;
    text-decoration: none;
}

.section_4 .container {
    border: 0;
}

.section_post .title_5 {
    font-size: 28px;
    font-weight: 600;
    line-height: 2.14;
    letter-spacing: 2.8px;
    color: #1e1e1e;
}

.section_post img:hover {
    opacity: 0.8;
}

.introduction {
    background-image: url(../images/bg_intro.jpg);
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    background-size: cover;
}

.introduction .container {
    padding-top: 58px;
    padding-bottom: 62px;
    max-width: 910px;
}

.introduction .title_6 {
    font-size: 30px;
    font-weight: 600;
    line-height: 2.1;
    letter-spacing: 3px;
    text-align: center;
    color: #1e1e1e;
    margin: 0 auto;
    font-family: "Roboto Slab", Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "Sawarabi Mincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

.introduction .title_6 span {
    color: #288e45;
}

footer {
    padding-top: 18px;
    text-align: center;
}

footer .logo {
    width: 100%;
    text-align: center;
}

footer .lstNav {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    display: -webkit-flex;
    margin: auto;
    margin-top: 35px;
    margin-bottom: 10px;
}

footer .lstNav li:first-child a {
    border-left: none;
}

footer .lstNav a {
    font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
    font-size: 15px;
    text-align: left;
    color: #1e1e1e;
    text-decoration: none;
    padding: 0 7px;
    border-left: 1px solid #565656;
    height: 15px;
    line-height: 15px;
    display: block;
}

footer .lstNav a:hover {
    color: #8cbc41;
}

.copy_right p {
    font-family: HiraKakuStd-W5;
    font-size: 15px;
    line-height: 2.33;
    text-align: center;
    color: #1e1e1e;
}

header .sp_section {
    display: none;
}

.menu_sp {
    display: none;
}

.lstNavs li{
    list-style: decimal;
}

.section_1 .left_col a {
    text-decoration: none;
}

@media (max-width: 600px) {
    .pc-none {
    }
    .title_4 span, .title_5, p, .section_1 .left_col p, .section_1 .right_col p, .section_2 .left_col p, .section_post .lstPosts .badge, .section_post .title_5, .introduction .title_6, header h3, header .sp_section p, .title_1, .title_2, .title_3, .title_4, .title_4 span {
            letter-spacing: normal;
    }
    #link_01 .left_col p{
        position: relative;
        padding-left: 30px;
        padding-right:0px;
    }
    #link_01 .left_col p span{
        position: absolute;
        left:0;
        top:1;
    }
    .lstNavs {
        padding-left:30px;
        padding-right: 10px;
        margin-bottom: 15px;
    }
    header {
        background-image: none;
    }

    header .sp_section {
        display: inherit;
    }

    header .container {
        display: none;
    }

    header h3 {
        font-size: 24px;
        font-weight: 600;
        font-style: normal;
        font-stretch: normal;
        line-height: 1.4;
        letter-spacing: normal;
        text-align: center;
        color: #288e45;
        text-shadow: 1px 1.7px 2px #ffffff;
        margin-top: 20px;
        font-family: "Roboto Slab", Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "Sawarabi Mincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        margin-bottom: 15px;
    }

    header .description {
        padding: 0 10px;
    }

    header .sp_section p {
        font-size: 16px;
        font-weight: 500;
        font-style: normal;
        font-stretch: normal;
        line-height: 1.7;
        letter-spacing: normal;
        text-align: justify;
        color: #292929;
    }

    .title_section .title_4:after {
        right: -10px;
    }

    .title_section .title_4:before {
        left: -10px;
    }

    .section_1 .right_col {
        padding: 0;
    }

    .container {
        padding: 0 10px;
    }

    .section_1 .left_col {
        padding: 0;
        margin-bottom: 10px;
    }

    .title_section {
        margin-bottom: 30px;
    }

    .section_2 .second_wrap {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .introduction .title_6 {
        font-size: 21px;
        line-height: 35px;
    }

    .introduction .container {
        padding: 20px 0;
    }

    .section_post .title_5 {
        font-size: 21px;
        line-height: 30px;
    }

    .section_post .lstPosts li {
        margin-bottom: 40px;
        max-width: 100%;
    }

    .section_post {
        background-image: none;
        padding-top: 20px;
        padding-bottom: 20px;
    }

    .menu_sp {
        display: inherit;
        position: fixed;
        top: 0;
        right: 0;
        z-index: 999999;
        max-width: 54px;
    }

    body {
        background-color: #fff;
    }

    .menu_sp {
        opacity: 1 !important;
    }

    #menu-sp {
        position: fixed;
        padding-top: 56px;
        top: 0;
        right: -70%;
        display: block;
        width: 240px;
        height: 100%;
        z-index: 999996;
        background: #252525;
        overflow: scroll;
        visibility: hidden;
        -webkit-transition: all 0.2s ease-in-out 0s;
        -o-transition: all 0.2s ease-in-out 0s;
        transition: all 0.2s ease-in-out 0s;
    }

    #menu-sp.active {
        visibility: visible;
        right: 0;
    }

    #menu-sp ul li {
        border: 0;
        border-top: 1px solid #4D4D4D;
        border-bottom: 1px solid #000;
        float: left;
        width: 100%;
    }

    #menu-sp ul li a {
        color: #fff;
        padding: 10px 0 10px 20px;
        display: block;
        text-decoration: none;
    }

    .thumbnail_col img {
        width: 100%;
    }

    p {
        line-height: 25.2px;

    }

    .section_2 .left_col p {
        line-height: 25.2px;
    }

    .section_2 .right_col {
        margin-top: 10px;
    }

    .container {
        display: block;
    }

    .section_1 .left_col p {
        line-height: 1.6em;
        margin: 0 0 10px;
    }

    .title_4 {
        line-height: 30px;
    }

    .title_4 span {
        line-height: 30px;
    }
    .section_1{
        padding-top: 20px;
    }

    .title_section .title_5{
        font-size: 17px;
        line-height: 1.8em;
    }
    .copy_right p{
        font-size: 13px;
        line-height: 1.7;
        margin-bottom: 10px;
    }
    footer .lstNav{
        display: block;
        text-align: center;
        margin-top: 20px;
    }
    footer .lstNav li{
        display: inline-block;
    }
}

@media (min-width: 600px) {
    .pc-none {
        display: none;
    }
    header .container {
        width: 1200px;
        margin: 0 auto;
    }
    header .right_col {
        max-width: 482px;
        position: absolute;
        bottom: 0;
        right: 0;
        max-height: 436px;
    }

    #menu {
        display: none;
    }

    #menu-sp {
        display: none;
    }

    header .title_1 {
        max-width: 1000px;
    }

    .section_post .lstPosts li {
        max-width: 31%;
    }

    .container {
        padding: 0 10px;

    }
    .section_2 .right_col {
        max-width: 330px;
    }

    .section_1 .container {
        display: block;
        overflow: hidden;
    }

    .section_1 .left_col {
        float: left;
    }

    .section_1 .right_col {
        float: right;
    }

    .section_2 .container {
        display: block;
        overflow: hidden;
    }

    .section_2 .left_col {
        float: left;
    }

    .section_2 .right_col {
        float: right;
    }

    .section_2 .second_wrap {
        display: block;
        overflow: hidden;
        padding-top: 55px;
        margin-top: 0;
    }

    .section_2 .second_wrap .left_col {
        float: right;
    }

    .section_2 .second_wrap .right_col {
        float: left;
    }
    header .container {
        max-width: 100%;
    }

    .section_post .lstPosts {
        overflow: hidden;
    }

    .section_post .lstPosts li {
        float: left;
        width: 31%;
        margin: 0 1%;
        margin-bottom: 20px;
    }
    .icon-shop {
    margin: 15px 0 0;
    }
    .section_post .lstPosts .badge {
    top: 0;
    }

@media (min-width: 600px) and (max-width: 1210px) {
    .section_post .lstPosts li .thumbnail_col img {
        width: 100%;
    }
}