@charset "UTF-8";

/*  reset
-----------------------------------------------------------------------------*/
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, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  background: transparent;
}
body {
  line-height: 1;
  color: #000;
}
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}
ul, li {
  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;
}
ins {
  background-color: #ff9;
  color: #474747;
  text-decoration: none;
}
mark {
  background-color: #ff9;
  color: #474747;
  font-style: italic;
  font-weight: bold;
}
del {
  text-decoration: line-through;
}
abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}
input, select {
  vertical-align: middle;
}
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
::-ms-expand {
  display: none;
}
img {
  vertical-align: top;
  width:100%;
  height:auto;
}

/*  basic
-----------------------------------------------------------------------------*/
*,*::before,*::after {
    box-sizing: border-box;
}
body {
/*    letter-spacing: .04em;*/
}
a ,a:visited ,a:hover {
  color: #000;
  text-decoration: none;
}
.clearfix:after {
  height: 0;
  display: block;
  clear: both;
  content: " ";
}
/* style */
html,
body {
width: 100%;
}
/* support iOS */
html{
  height: -webkit-fill-available;
}
body{
  min-height: 100vh;
  min-height: -webkit-fill-available;
}
html {
	font-size: 62.5%;
	-webkit-text-size-adjust: 100%;
}
body{
	font-feature-settings: "palt";
	-webkit-font-smoothing: antialiased;
}
.myfont{
    font-family: 'Noto Sans JP', sans-serif;
    font-family: 'Roboto', sans-serif;
}
@media only screen and (min-width:769px) {
.brpc{display:inline;}
.brsp{display:none;}
}
@media only screen and (max-width:768px) {
.brpc{display:none;}
.brsp{display:inline;}
}
.br4k{display:none;}
h1,h2,h3,h4{
  letter-spacing: 0.08em;
}

/* common
-------------------------------------------------------------*/
body {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.5;
    color: #000;
    font-family: 'Noto Sans JP', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'Roboto', sans-serif;
    /*  letter-spacing: .06em;*/
}
.wrapper {
    width: 100%;
    position: relative;
    z-index:1;
    overflow:hidden;
}

@media only screen and (max-width:768px) {
.contents::before {
    position: fixed;
    top:0;
    left:0;
    width:100%;
    height:96px;
    opacity:0;
    background-color:rgba(255,255,255,0.6);
    content: '';
    display: block;
    z-index:3;
    transition: opacity 0.4s cubic-bezier(.55, .085, .68, .53);
}
.is-scrolled .contents::before {
  opacity:1;
}
}

/* mainVisual , firstVisual
-------------------------------------------------------------*/
.wrap-mainVisual,.wrap-firstVisual{
    width:100%;
    position:relative;
}
.mainVisual,.firstVisual{
    width:100vw;
    position:fixed;
    position:relative;
    z-index:1;
}
.mainVisual img,.firstVisual img {
    width: 100%;
    height: auto;
    object-fit: cover;
}
.pageVisual{
    width:100vw;
    height:520px;
    position:fixed;
    z-index:-1;
}
.pageVisual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.message-mainVisual,.message-firstVisual{
    position:absolute;
    top:0%;
    left:0%;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items:center;
    z-index:1;
}
.wrap-firstVisual .slick-slide{
    background-color: #006D36;
    height:100vh;
}
.wrap-firstVisual .firstVisual .slick-slide img {
    height: 100%;
}

.message-mainVisual p,.message-firstVisual p{
    line-height: 1.8;
    font-size: 3.2rem;
    font-weight: 500;
    letter-spacing: 0.04em;
    color:#fff;
    text-align:left;
    padding:0.5em 0;
}
@media only screen and (max-width:768px) {
    .message-mainVisual p,.message-firstVisual p {
        font-size: 2.3rem;
    }
}
@media only screen and (min-width:769px) {
    .link-related {
        width: 555px;
        min-height: 160px;
        display: flex;
        align-items: center;
        justify-content: center;
        position: absolute;
        bottom: 0;
        left: 0;
        border-top: 1px solid #006D36;
        border-right: 1px solid #006D36;
        border-bottom: 1px solid #006D36;
        border-top-right-radius: 20px;
        background-color: #006D36;
        transition: border-color cubic-bezier(0.42, 0, 0.58, 1) 0.3s, background-color cubic-bezier(0.42, 0, 0.58, 1) 0.3s;
    }

    .link-related dl {
        width: 72%;
    }

    .link-related dt span {
        display: inline-block;
        font-size: 1.4rem;
        font-weight: Bold;
        padding-right: 1em;
        color: #fff;
        transition: color cubic-bezier(0.42, 0, 0.58, 1) 0.3s;
    }

    .link-related dd {
        padding: 0.5em 0 0;
        font-size: 2.3rem;
        font-weight: Bold;
        color: #fff;
        transition: color cubic-bezier(0.42, 0, 0.58, 1) 0.3s;
    }
}
@media (hover: hover) and (pointer: fine) {
    .link-related:hover {
        background-color: #fff;
    }

    .link-related:hover dt span, .link-related:hover dd {
        color: #006D36;
    }
}
@media only screen and (max-width:768px) {
    .link-related {
        width: 100%;
        min-height: 125px;
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: #006D36;
        position:absolute;
        bottom:0;
        left:0;
    }

    .link-related dl {
        width: 80%;
    }

    .link-related dt span {
        display: inline-block;
        font-size: 1.2rem;
        font-weight: Bold;
        padding-right: 1em;
        color: #fff;
    }

    .link-related dd {
        padding: 0.5em 0 0;
        font-size: 1.7rem;
        font-weight: Bold;
        color: #fff;
    }
}

/* section container
-------------------------------------------------------------*/
.container-front{
    width:100%;
    margin:0 auto;
    position: relative;
    z-index:1;
    background: linear-gradient( #ffffff 0%, #9acd32 52.5%, #006D36 100%);
}

/* news front
-------------------------------------------------------------*/
.section-news{
    width:100%;
    max-width:1000px;
    margin:0 auto;
    position:relative;
}
.wrap-news{
    width:100%;
    max-width:1000px;
    margin:0 auto;
    padding-top:150px;
    padding-bottom:220px;
}
.button2list{
    width:20%;
    max-width:200px;
    margin:0;
}
.button2list{
    display: flex;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: flex-end;
    align-items:center;
}
.button2list a{
    padding:0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items:center;
}
.button2list a img{
    display: block;
    width:98px;
}
.button2list a span{
    font-size:2.0rem;
    font-weight:Bold;
    padding-top:0.4em;
    display: block;
    color:#4EB133;
}
.title-news,.title-efforts,.title-fc,.title-project,.title-outline,.title-presskit,.title-articles{
    width:100%;
    max-width:1000px;
    margin:0 auto;
    font-size:3rem;
    line-height:1.2;
    font-weight:bold;
    padding:0.4em 0em;
    color:#006D36;
}
.title-articles{
    font-size:2.8rem;
    max-width:1000px;
}
.list-news{
    border-top:1px solid #006D36;
    width:100%;
}
.list-news li{
    border-bottom:1px solid #006D36;
}
.list-news li a{
    display:block;
    position:relative;
}
@media (hover: hover) and (pointer: fine) {
    .list-news li a::before {
        content: '';
        display: inline-block;
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background:linear-gradient(0deg,rgba(34,172,56,0.2) 72%,rgba(34,172,56,0) 100%);
        background:-moz-linear-gradient(0deg,rgba(34,172,56,0.2) 72%,rgba(34,172,56,0) 100%);
        background:-webkit-linear-gradient(0deg,rgba(34,172,56,0.2) 72%,rgba(34,172,56,0) 100%);
        transition: opacity 0.4s cubic-bezier(0.42, 0, 0.58, 1) ;
        opacity: 0;
    }

    .list-news li a:hover::before {
        opacity: 1;
    }
    .list-news li a::after {
        content: '';
        display: inline-block;
        background-image: url(../img/arrow_list.svg);
        background-position: 50% 100%;
        background-size: contain;
        background-size: cover;
        background-repeat: no-repeat;
        vertical-align: middle;
        position: absolute;
        width: 12px;
        height: 20px;
        top: 50%;
        right: 20px;
        transform: translate(0, -50%);
        transition: opacity 0.4s cubic-bezier(0.42, 0, 0.58, 1) ;
        opacity: 0;
    }

    .list-news li a:hover::after {
        opacity: 1;
    }
}
.list-news li dl{
    min-height:45px;
    display: flex;
    flex-wrap: nowrap;
    align-content: center;
    align-items: center;
}
.list-news li dt{
    font-size:1.5rem;
    font-weight:bold;
    line-height:1.3;
    letter-spacing: .0em;
    min-width:120px;
    padding:0 0 0 20px;
    font-family: 'Roboto', sans-serif;
}
.list-news li dd.category-news{
    font-size:1.5rem;
    font-weight:bold;
    line-height:1.3;
    letter-spacing: .1em;
    min-width:200px;
    position:relative;
    text-align:center;
    color:#006D36;
}
.list-news li dd.subject-news{
    font-size:1.5rem;
    line-height:1.3;
    letter-spacing: .1em;
    padding:0 80px 0 20px ;
    position:relative;
}
.list-news li dd:before{
    display: inline-block;
    border-radius:6px;
    /*    width:100vw;
        height:219px;*/
    vertical-align: middle;
    position:absolute;
    padding:0 0.6rem;
    font-size:1.2rem;
    top:50%;
    left:calc(0% + 0px);
    left:0.1em;
    line-height:2.6rem;
    transform: translate(0%, -50%);
}
/*
.list-news .category01 dd:before{
    content: '';
    background-color:#4EB133;
    color:#fff;
}
.list-news .category02 dd:before{
    content: '';
    background-color:#34B1C7;
    color:#fff;
}
.list-news .category03 dd:before{
    content: '';
    background-color:#EBE000;
    color:#5a5a5a;
}
*/

.button-more {
    padding: 28px 0 0;
    text-align: right;
}
.button-more a {
    display: inline-block;
    border-radius: 10px;
/*    filter: drop-shadow(0 5px 6px rgba(0, 0, 0, 0.2));*/
    line-height: 1.1;
    padding: 0.8em 2.2em;
    font-size: 1.5rem;
    font-weight: 500;
    letter-spacing: 0.04em;
    background-color: #006D36;
    border: 1px solid #006D36;
    color: #fff;
    transition: background-color 0.3s cubic-bezier(0.42, 0, 0.58, 1), color 0.3s cubic-bezier(0.42, 0, 0.58, 1);
}
.button-more a:hover {
    background-color: #fff;
    color: #006D36;
}
.wrap-efforts .button-more {
    max-width:1000px;
    margin:0 auto;
}

@media only screen and (max-width:768px) {
    .title-news, .title-efforts, .title-fc, .title-project, .title-outline, .title-presskit {
        font-size: 2.5rem;
    }
    .title-articles {
        font-size: 2.2rem;
        margin-bottom:0.2em;
    }
    .title-news{
        margin-bottom:1em;
    }
    .wrap-news{
        width:92%;
        padding-top:150px;
        padding-bottom:180px;
    }
    .list-news li dl{
        flex-wrap:wrap;
        padding:18px 0;
    }
    .list-news li dt{
        font-size:1.3rem;
        padding:0 0.2em;
        width:80px;
        min-width:0px;
    }
    .list-news li dd.category-news{
        font-size:1.4rem;
        width:calc(100% - 80px);
        text-align:left;
        color:#006D36;
    }
    .list-news li dd.subject-news{
        font-size:1.6rem;
        padding:0.5em 0 0 80px ;
        width:100%;
    }
    .button-more {
        padding: 32px 0 0;
        text-align: center;
    }
    .button-more a {
        padding: 1em 2.4em;
    }
}

/*  contents-efforts
-------------------------------------------------------------*/
.section-efforts{
    width:100%;
    margin:0 auto;
    position:relative;
}
.wrap-efforts{
    width:100%;
    padding-bottom:200px;
    position:relative;
}
.header-efforts{
    width:100%;
    max-width:1000px;
    margin:0 auto;
    position:relative;
}
.title-efforts{
    position:absolute;
    display:inline-block;
    width:auto;
}
.tab-list{
    width:480px;
    margin-left:auto;
    display:flex;
    border-radius: 10px 10px 0 0;
    border: 1px solid #006D36;
    border-bottom:none;
    overflow:hidden;
}
.tab-list li{
    width:25%;
    min-height:68px;
    display:flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: #fff;
 /*   background-color:#7DBD35;*/
    border-right: 1px solid #006D36;
    cursor: pointer;
}
.tab-list li:last-of-type {
    border-right:none;
}

.tab-list li{
    background-color: #fff;
    background-color: transparent;
    color: #006D36;
    transition: background-color 0.3s cubic-bezier(0.42, 0, 0.58, 1), color 0.3s cubic-bezier(0.42, 0, 0.58, 1);
}
.tab-list li:hover{
    color: #4EB133;
}
.tab-list li.is-active{
    background-color: #006D36;
    color: #fff;
}
.tab-list li span{
    line-height: 1.2;
    font-size: 1.1rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    font-family: 'Roboto', sans-serif;
}
.tab-list li strong{
    line-height: 1.2;
    font-size: 1.7rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    font-family: 'Roboto', sans-serif;
}
.wrap-contents-efforts{
    width:100%;
    margin:0 auto;
    position:relative;
    border-top: 1px solid #006D36;
    border-bottom: 1px solid #006D36;
}
.inner-contents-efforts{
    width:100%;
    max-width:1280px;
    max-width:none;
    margin:0 auto;
    position:relative;
}
.contents-efforts{
    width:100%;
    max-width:1280px;
    max-width:none;
    margin:0 auto;
    position:relative;
    overflow-x: scroll;
    overflow-y: hidden;
}
.inner-contents-efforts::after {
    content: "";
    position: absolute;
    top:0;
    right:0;
    width: 200px;
    height: 100%;
    background: linear-gradient(to left, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0.50) 40%, rgba(255, 255, 255, 0) 80%, rgba(255, 255, 255, 0) 100%);
    pointer-events: none;
}
.contents-efforts {
    display:none;
}
.contents-efforts.is-contents-active {
    display:block;
}
.contents-efforts{
    -ms-overflow-style: none;
    scrollbar-width: none;
}
.contents-efforts::-webkit-scrollbar {
    display:none;
}
.list-posts{
    display: flex;
    flex-wrap:wrap;
    padding:40px 40px 0;
    width:2000px;
    width:auto;
    height:771px;
    display: flex;
    flex-direction: column;
    align-content: flex-start;
}
.list-posts li{
    margin:0 40px 40px 0;
}
.list-posts li a{
    display:block;
}
.list-posts li dl{
    position:relative;
}
.list-posts li dt{
    line-height: 1.2;
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    font-family: 'Roboto', sans-serif;
    color:#006D36;
}
.list-posts li dd img{
    width:450px;
    height:300px;
    object-fit:cover;
}
@media only screen and (min-width:769px) {
    .list-posts li dd{
        padding-bottom:24px;
    }
    .list-posts li:nth-of-type(4n-1) dd {
        padding-bottom: 24px;
        padding-bottom: 0;
        padding-top: 24px;
    }
    .list-posts li:nth-of-type(4n) dd {
        padding-bottom: 0;
        padding-top: 24px;
    }
    .list-posts li dt {
        bottom: 0;
    }
    .list-posts li:nth-of-type(4n-1) dt {
        bottom: 0;
        bottom: auto;
        top: 0;
    }
    .list-posts li:nth-of-type(4n) dt {
        top: 0;
        bottom: auto;
    }
}
.list-posts li dt{
    position:absolute;
    padding:0 0 0 40px;
}
.list-posts li dt:before{
    position:absolute;
    content: '';
    display: inline-block;
    background-color: #006D36;
    width: 9px;
    height: 42px;
    left: 16px;
}
@media only screen and (min-width:769px) {
    .list-posts li dt:before {
        bottom: 0;
    }
    .list-posts li:nth-of-type(4n-1) dt:before {
        bottom: auto;
        top: 0;
    }
    .list-posts li:nth-of-type(4n) dt:before {
        top: 0;
    }
}
@media only screen and (max-width:768px) {
    .title-efforts {
        position: relative;
        display: block;
        width: 92%;
        margin-bottom:1em;
    }
    .tab-list{
        width:94%;
        margin:0 auto;
    }
    .tab-list li{
        text-align: center;
        min-height:64px;
    }
    .tab-list li span{
        font-size: 1rem;
        padding:0 0 0.4em;
    }
    .tab-list li strong{
        font-size: 1.3rem;
    }
    .list-posts{
        display: flex;
        flex-wrap:wrap;
        padding:24px 18px 0;
        height:780px;
    }
    .list-posts li{
        margin:0 18px 24px 0;
    }
    .list-posts li dt{
        font-size: 1.4rem;
        font-size: 1.2rem;
        letter-spacing: 0.03em;
        width:110%;
        padding:0 0 0 22px;
    }
    .list-posts li dt:before{
        width: 8px;
        height: 36px;
        left: 6px;
    }
    .list-posts li dd img{
        width:300px;
        height:200px;
        object-fit:cover;
    }
    .list-posts li dd{
        padding-bottom:24px;
    }
    .list-posts li:nth-of-type(6n) dd ,
    .list-posts li:nth-of-type(6n-1) dd ,
    .list-posts li:nth-of-type(6n-2) dd {
        padding-bottom:0;
        padding-top: 24px;
    }
    .list-posts li dt {
        bottom: 0;
    }
    .list-posts li:nth-of-type(6n) dt ,
    .list-posts li:nth-of-type(6n-1) dt ,
    .list-posts li:nth-of-type(6n-2) dt {
        bottom: auto;
        top: 0;
    }
    .list-posts li dt:before {
        bottom: 0;
    }
    .list-posts li:nth-of-type(6n) dt:before ,
    .list-posts li:nth-of-type(6n-1) dt:before ,
    .list-posts li:nth-of-type(6n-2) dt:before {
        bottom: auto;
        top: 0;
    }
    .inner-contents-efforts::after {
        width: 80px;
    }
}
/*  fc franchise
-------------------------------------------------------------*/
.section-fc{
    width:100%;
    margin:0 auto;
    position:relative;
}
.wrap-fc{
    width:100%;
    max-width:1000px;
    margin:0 auto;
    padding-bottom:200px;
    position:relative;
}
.title-fc{
    color:#fff;
    margin-bottom:0.4em;
}
.contents-fc{
    display:flex;
    justify-content: space-between;
}
.text-fc{
    width:48%;
    max-width:450px;
}
.text-fc p{
    line-height: 2;
    font-size: 1.9rem;
    font-weight: 500;
    letter-spacing: 0.04em;
    font-family: 'Roboto', sans-serif;
    color:#fff;
}
.link-fc{
    width:50%;
    display:flex;
    justify-content: space-between;
}
.item-link-fc{
    width:48%;
    max-width:220px;
    height:133px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
}
.item-link-fc .button-more{
    width:100%;
    padding:0;
    text-align:center;
}
.item-link-fc .button-more a{
    display:block;
    padding:1.3em 1em;
}
.logo-link-fc{
    width:50%;
    max-width:250px;
    height:133px;
    border-radius:8px;
    background-color:#fff;
}
.logo-link-fc a{
    display:block;
    width:100%;
    height:100%;
}
.logo-link-fc dl{
    width:100%;
    height:100%;
    padding:0 16px;
    display:flex;
    justify-content: space-around;
    flex-direction: row-reverse;
    align-items: center;
}
.logo-link-fc dt{
    line-height: 1.2;
    font-size: 1.5rem;
    font-weight: 500;
    letter-spacing: 0.04em;
    color:#006D36;
    text-align:left;
}
.logo-link-fc dd{
    width:76px;
}
.banner-link-fc{
    width:50%;
    max-width:250px;
    height:132px;
    border-radius:10px;
    background-color:#fff;
    overflow:hidden;
}
@media (hover: hover) and (pointer: fine) {
    .banner-link-fc img{
        transition: transform 0.5s;
    }
    .banner-link-fc a:hover img{
        transform: scale(1.03);
    }
}

@media only screen and (max-width:768px) {
    .wrap-fc{
        width:92%;
    }
    .title-fc{
        color:#006D36;
        margin-bottom:1em;
    }
    .contents-fc{
        flex-direction: column;
    }
    .text-fc{
        width:100%;
        max-width:none;
        padding-bottom:2em;
    }
    .text-fc p{
        line-height: 1.8;
        font-size: 1.4rem;
        color:#006D36;
    }
    .link-fc{
        width:100%;
        max-width:480px;
        margin:0 auto;
    }
    .item-link-fc{
        width:38%;
        width:35.3%;
        max-width:none;
        height:120px;
        height:auto;
    }
    .logo-link-fc{
        width:58%;
        max-width:none;
        height:120px;
    }
    .item-link-fc .button-more{
        height:42%;
    }
    .item-link-fc .button-more a{
        padding:1em 0.4em;
        min-height:50px;
        height:100%;
        display:flex;
        justify-content: center;
        align-items: center;
    }
    .banner-link-fc{
        width:58.82%;
        max-width:none;
        height:auto;
    }
}

/*  our project
-------------------------------------------------------------*/
.section-project{
    width:100%;
    margin:0 auto;
    position:relative;
}
.wrap-project{
    width:100%;
    max-width:1000px;
    margin:0 auto;
    padding-bottom:100px;
    position:relative;
}
.title-project{
    color:#fff;
    margin-bottom:0.6em;
}
.container-project {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto 100px;
}
.contents-project{
    width:100%;
    max-width:1000px;
    margin:0 auto 40px;
/*
    min-height:300px;
    margin-bottom:100px;
*/
    position:relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: linear-gradient(to right, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 40%, rgba(255, 255, 255, 0.50) 50%, rgba(255, 255, 255, 0) 60%, rgba(255, 255, 255, 0) 100%);
}
.info-project{
    width:48%;
    text-align:center;
}
.name-project{
    font-size:2.5rem;
    font-weight:700;
    line-height:2.4;
    letter-spacing: 0.08em;
    color:#fff;
}
.name-project strong{
    padding-left:1em;
}
.keyword-project{
    padding:8px 0 16px;
}
.keyword-project ul{
    display: flex;
    justify-content: center;
    align-items: center;
}
.keyword-project li{
    margin:0 0.5em;
    padding:0.4em 0.8em;
    background-color:#006D36;
    color:#fff;
    font-size:1.5rem;
    font-weight:700;
    line-height:1.2;
}
.explain-project{
    width:84%;
    margin:0 auto;
    padding:0;
    color:#fff;
    font-size:1.5rem;
    font-weight:500;
    line-height:1.8;
    font-family: 'Roboto', sans-serif;
    letter-spacing: 0.08em;
}
.link-project{
    padding:16px 0 10px;
    padding:24px 0 0px;
}
.link-project ul{
    display: flex;
    justify-content: center;
    justify-content: flex-end;
    align-items: center;
}
.link-project li{
    margin:0;
    padding:0;
}
.link-project li:nth-of-type(2){
    padding:0 0 0 10px;
}
.link-project li a{
    color:#006D36;
    font-size:1rem;
    font-weight:normal;
    line-height:1;
    text-decoration:underline;
    text-decoration:none;
    display: block;
    border:2px solid #006D36;
    border-radius:10px;
    padding:8px 26px;
}
.logo-project{
    width:44%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.logo-project img {
    width: 240px;
    height:auto;
}

@media only screen and (max-width:768px) {
.wrap-project{
    width:92%;
}
.title-project{
    color:#006D36;
    margin-bottom:1em;
}
.contents-project{
    margin-bottom:80px;
    justify-content: space-between;
    flex-direction: column;
    background:transparent;
}
.info-project{
    width:100%;
    padding-top:0.4em;
}
.name-project{
    font-size:2rem;
    color:#006D36;
}
.name-project strong{
    padding-left:1em;
}
.keyword-project{
    padding:8px 0 16px;
}
    .keyword-project li{
        font-size:1.3rem;
        line-height:1.2;
    }
    .explain-project{
        width:100%;
        font-size:1.4rem;
        text-align:left;
    }
    .logo-project{
        width:100%;
    }
    .logo-project img {
        width: 230px;
        background:#fff;
    }
}
@media (hover: hover) and (pointer: fine) {
    .overlayTrigger span::before,
    .overlayTrigger span::after {
        transition: transform 0.3s;
    }
    .buttonSns li:hover img{
        transform: scale(1.05);
    }
    .overlayTrigger:hover span::before {
        transform: translateY(-7px);
    }
    .overlayTrigger:hover span::after {
        transform: translateY(7px);
    }
    .link-project li a{
        transition: color 0.4s,background-color 0.4s;
    }
    .link-project li a:hover{
        background-color:#006D36;
        color:#fff;
    }

}

/*  slick-slider project
-------------------------------------------------------------*/
.slick-project{

}
.slick-project .slick-slide{
    padding:0 10px;
}
@media only screen and (max-width:768px) {
    .wrap-project {
        width: 92%;
        width: 100%;
    }
    .container-project {
        margin: 0 auto 100px;
        padding-bottom:60px;
        position:relative;
    }
    .title-project {
        width: 92%;
    }

    .contents-project {
        width: 92%;
        margin-bottom: 20px;
        position:static;
    }
    .link-project{
        position:absolute;
        bottom:0;
        left:0;
        width:100%;
        padding:0;
    }
    .link-project ul{
        justify-content: center;
    }
}

/*  outline
-------------------------------------------------------------*/
.section-outline{
    width:100%;
    margin:0 auto;
    position:relative;
}
.wrap-outline{
    width:100%;
    max-width:1000px;
    margin:0 auto;
    padding-bottom:200px;
    position:relative;
}
.title-outline{
    color:#fff;
    padding-top:0.2em;
    margin-bottom:0.6em;
    position:absolute;
}
.contents-outline{
    width:100%;
    max-width:1000px;
    padding-left:240px;
    margin:0 auto;
    position:relative;
}
.message-outline{
    font-size:1.9rem;
    font-weight:normal;
    line-height:2;
    letter-spacing: .04em;
    padding:0;
    font-family: 'Roboto', sans-serif;
    color:#fff;
}
.info-outline{
    font-size:1.5rem;
    font-weight:normal;
    line-height:2;
    letter-spacing: .04em;
    margin-top:60px;
    padding:0;
    font-family: 'Roboto', sans-serif;
    color:#fff;
    position:relative;
}
.info-outline dt{
    position:absolute;
}
.info-outline dd{
    padding-left:8em;
    margin-bottom:0.8em;
}
.info-outline dd a{
    color:#fff;
}
.info-outline dd a:hover{
    text-decoration: underline;
}
@media only screen and (max-width:960px) {
    .title-outline {
        position: relative;
    }
    .contents-outline {
        padding: 0px;
    }
}
@media only screen and (max-width:768px) {
    .wrap-outline{
        width:92%;
    }
    .title-outline{
        padding-top:0em;
        margin-bottom:1em;
    }
    .contents-outline{
    }
    .message-outline{
        font-size:1.7rem;
        font-weight:bold;
        line-height:1.8;
    }
    .info-outline{
        font-size:1.3rem;
        line-height:1.66;
    }
}

/*  presskit
-------------------------------------------------------------*/
.section-presskit{
    width:100%;
    margin:0 auto;
    position:relative;
}
.wrap-presskit{
    width:100%;
    max-width:1000px;
    margin:0 auto;
    padding-bottom:200px;
    position:relative;
}
.title-presskit{
    color:#fff;
    padding-top:0.2em;
    margin-bottom:0.6em;
}
.contents-presskit{
    width:100%;
    position:relative;
}
.list-presskit{
    width:100%;
    position:relative;
}
.list-presskit{
    padding:0 0 0 20px;
}
.list-presskit li{
    list-style-type: disc;
    color:#fff;
    margin-bottom:1em;
    padding-left: 0.4em;
}
.list-presskit li a{
    font-size:1.5rem;
    font-weight:normal;
    line-height:1.6;
    letter-spacing: .04em;
    color:#fff;
    font-family: 'Roboto', sans-serif;
    text-decoration:none;
}
.wrap-presskit .button-more{
    text-align:center;
}
.wrap-presskit .button-more a{
    padding:1.3em 2em;
}
@media only screen and (max-width:768px) {
    .wrap-presskit{
        width:92%;
    }
    .title-presskit{
        margin-bottom:1em;
    }
    .wrap-presskit .button-more a{
    }
}
@media (hover: hover) and (pointer: fine) {
    .list-presskit li a{
        transition: color 0.3s cubic-bezier(0.42, 0, 0.58, 1), text-decoration 0.3s cubic-bezier(0.42, 0, 0.58, 1);
    }
    .list-presskit li a:hover{
        color:#006D36;
    }
}

/* article
-------------------------------------------------------------*/
.container-page,.container-single,.container-archive{
    width:100%;
    margin:0 auto;
    position: relative;
    z-index:1;
}
.article-single,.wrap-article{
    width:100%;
    max-width:1280px;
    margin:0 auto;
    padding:150px 0;
    position:relative;
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row-reverse;
    justify-content: space-between;
}
.main-article{
    width:100%;
    max-width:1060px;
}
.entry-article,.list-article{
    width:100%;
    max-width:840px;
    margin:0 auto;
}
.entry-category{
    padding-bottom:1.6em;
    font-size:2rem;
    font-weight:700;
    line-height:1.8;
    letter-spacing: 0.08em;
    background-color:#006D36;
    color:#fff;
    padding:0.2em 0.8em;
    display:inline-block;
}
.entry-tag{
    max-width:1280px;
    margin:0 auto;
    padding:0.5em 0;
    position:relative;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    border-bottom:1px solid #006D36;
}
.entry-tag-list {
    position: relative;
    display: flex;
    flex-wrap: nowrap;
}
.entry-tag-list li{
    font-size:1.5rem;
    font-weight:500;
    line-height:1.6;
    letter-spacing: .04em;
    color:#006D36;
    margin-right:1.5em;
}
.entry-tag-extra {
    font-size:1.5rem;
    font-weight:500;
    line-height:1.6;
    letter-spacing: .04em;
    color:#006D36;
}
.entry-title{
    font-size:3rem;
    font-weight:700;
    line-height:1.6;
    letter-spacing: .04em;
    color:#006D36;
    padding:1em 0;
}
.entry-body{
    padding:2em 0 1em;
    font-size:1.5rem;
    font-weight:500;
    line-height:1.8;
    letter-spacing: 0.08em;
    text-align: justify;
    text-align: left;
    color:#006D36;
}
.entry-body h3{
    padding-bottom:1.6em;
    padding:0 0 0.5em;
    font-size:2rem;
    font-weight:700;
    line-height:1.8;
    letter-spacing: 0.08em;
}
.entry-body p{
    padding-bottom:1.6em;
}
.img_column{
    position:relative;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
}
.img_column>p,.img_column>img{
    width:48%;
}
.list-article{
    border-bottom:1px solid #006D36;
}
.list-article li{
    border-top:1px solid #006D36;
}
.list-article li a{
    width:100%;
    display: block;
    padding:24px 0;
    position:relative;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
}
.list-article li a dl{
    width:100%;
    width:calc(100% - 240px);
    max-width:512px;
    padding-top:8px;
    padding-left:10px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    font-weight:700;
    line-height:1.2;
    letter-spacing: 0.04em;
    color:#006D36;
    position:absolute;
}
.list-article-date{
    width:30%;
    width:110px;
    font-size:1.3rem;
}
.list-article-category{
    width:40%;
    width:calc(100% - 220px);
    font-size:1.5rem;
}
.list-article-extra{
    width:110px;
    font-size:1.5rem;
    text-align:right;
}
.list-article-title{
    width:100%;
    width:calc(100% - 240px);
    max-width:512px;
    padding-top:48px;
    padding-left:10px;
    font-size:1.8rem;
    font-weight:700;
    line-height:1.6;
    letter-spacing: 0.08em;
    color:#006D36;
}
.list-article-thumbnail{
    width:225px;
}
@media (hover: hover) and (pointer: fine) {
    .list-article li a {
        transition: background-color 0.3s cubic-bezier(0.42, 0, 0.58, 1);
    }
    .list-article li a:hover {
        background-color: #4EB133;
        background-color: rgba(34, 172, 56, 0.2);
    }
}
@media only screen and (max-width:768px) {
    .list-article li a{
        padding:24px 0 30px;
        flex-wrap: wrap;
    }
    .list-article li a dl{
        width:100%;
        padding:0 0 24px;
        font-weight:500;
        position:relative;
    }
    .list-article-date{
        width:88px;
        font-size:1.2rem;
    }
    .list-article-category{
        width:calc(100% - 168px);
        font-size:1.3rem;
    }
    .list-article-extra{
        width:80px;
        font-size:1.2rem;
    }
    .list-article-title{
        width:calc(100% - 172px);
        padding-top:0;
        padding-left:0px;
        font-size:1.4rem;
        line-height:1.3;
        letter-spacing: 0.04em;
    }
    .list-article-thumbnail{
        width:150px;
    }
}
.wrap-button_cell{
    width:100%;
    max-width:840px;
    margin:0 auto;
    border-top:1px solid #006D36;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.button_cell{
    padding:30px 0px;
    display: flex;
    flex-wrap:nowrap;
    align-content: center;
    justify-content: space-between;
}
.button_cell.button_cell-middle a{
    display:block;
    background-color:#006D36;
    color:#fff;
    font-size:1.5rem;
    font-weight:500;
    line-height:1;
    text-align:center;
    vertical-align:middle;
    padding:0.8em 2.2em 0.8em;
    border:1px solid #006D36;
    border-radius:10px;
    position:relative;
}
.button_cell a{
    display:block;
    color:#006D36;
    font-size:1.5rem;
    line-height:1;
    text-align:center;
    vertical-align:middle;
    padding:0.8em 0em 0.8em;
    position:relative;
}
.button_cell-right a {
    padding-right:45px;
}
.button_cell-left a {
    padding-left:45px;
}
.button_cell-right a:after{
    content: "";
    position: absolute;
    top: 50%;
    right: 0%;
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent;
    border-left: 25px solid #006D36;
    border-right: 0;
    transform: translate(0, -50%);
}
.button_cell-left a:after{
    content: "";
    position: absolute;
    top: 50%;
    left: 0%;
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent;
    border-right: 25px solid #006D36;
    border-left: 0;
    transform: translate(0, -50%);
}
.aside-article{
    width:100%;
    max-width:160px;
    max-width:200px;
    margin:0;
}
.list-hierarchy{
    padding:10px 20px;
}
.list-hierarchy dt{
    margin-bottom:0.8em;
}
.list-hierarchy dd{
    margin-bottom:40px;
}
.list-hierarchy dt{
    font-size:1.2rem;
    font-weight:500;
    line-height:1.3;
    letter-spacing: 0.04em;
    background-color:#006D36;
    color:#fff;
    padding:0.4em 0.8em;
    display:inline-block;
}
.list-hierarchy dd{
    padding:0.4em 0;
}
.list-hierarchy dd a{
    font-size:1.5rem;
    font-weight:700;
    line-height:1.3;
    letter-spacing: 0.04em;
    color:#006D36;
    font-family: 'Roboto', sans-serif;
}
.list-hierarchy dd li{
    padding:0 0 0.8em 0;
}
.title-archive{
    line-height: 1.2;
    font-size: 3.6rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    color:#006D36;
}
@media (hover: hover) and (pointer: fine) {
    .list-hierarchy dd a{
        transition: color cubic-bezier(0.42, 0, 0.58, 1) 0.3s;
    }
    .list-hierarchy dd a:hover{
        color:#4EB133;
    }
}
@media only screen and (min-width:769px) {
    .wrap-title-archive{
        display:none;
    }
    .title-archive{
        padding-bottom:1.5em;
        width: 100%;
        max-width: 840px;
        margin: 0 auto;
    }
}
@media only screen and (max-width:768px) {
    .container-archive .wrap-article {
        flex-direction: column-reverse;
        padding-top:0;
    }
    .container-single .wrap-article {
        flex-direction: column;
    }
    .wrap-title-archive{
        width:100%;
        height:270px;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .title-archive{
        text-align:center;
        padding-top:1em;
        font-size: 3.4rem;
    }
    .main-article .title-archive{
        display:none;
    }
    .main-article {
        width: 88%;
        margin:0 auto 160px;
    }
    .aside-article {
        width: 98%;
        max-width: none;
        margin:0 auto;
    }
    .container-archive .aside-article {
        padding-bottom:100px;
    }
    .entry-category{
        font-size:1.5rem;
    }
    .entry-tag-list li{
        font-size:1.2rem;
        margin-right:1.2em;
    }
    .entry-tag-extra {
        font-size:1.2rem;
    }
    .entry-title{
        font-size:1.8rem;
    }
    .entry-body{
        font-size:1.3rem;
    }
    .entry-body h3{
        font-size:1.6rem;
    }
    .entry-body p{
        padding-bottom:1.6em;
    }
    .img_column{
        display: block;
    }
    .img_column>p,.img_column>img{
        width:100%;
        margin-bottom:1em;
    }
    .button_cell.button_cell-middle a{
        padding:0.8em 1.6em 0.8em;
    }
    .button_cell a{
        font-size:1.3rem;
        line-height:1.2;
        padding-top:0.1em;
        padding-bottom:0.1em;
    }
    .button_cell-right a {
        padding-right:40px;
    }
    .button_cell-left a {
        padding-left:40px;
    }
    .list-hierarchy{
        padding:0 0 0 20px;
    }
    .list-hierarchy dd a{
        font-size:1.6rem;
    }
    .list-hierarchy dd ul{
        display: flex;
        flex-wrap:wrap;
    }
    .list-hierarchy dd li{
        padding:0 1.6em 1em 0;
    }
}
.wrap-articles{
    width:100%;
    margin:0 auto;
}
.item-articles-extra{
    display:none;
}
@media only screen and (max-width:768px) {
    .wrap-articles{
        padding-bottom:120px;
        width:88%;
        margin:0 auto;
    }
}
@media only screen and (min-width:801px) {
    .wrap-articles{
        padding-bottom:140px;
        max-width:1000px;
        padding-left:80px;
        max-width:1080px;
    }
    .wrap-articles .list-article{
        display: flex;
        flex-direction: row;
        flex-wrap:nowrap;
        justify-content: space-between;
        border-top: 1px solid #006D36;
        border-bottom: none;
        max-width:1000px;
    }
    .wrap-articles .list-article li{
        width:22%;
        margin:0;
        border-top:none;
    }
    .wrap-articles .list-article li a{
        padding:24px 0;
        flex-direction:column-reverse;
        flex-direction:column;
    }
    .wrap-articles .list-article li a dl{
        width:100%;
        max-width:none;
        padding-top:0px;
        padding-left:0px;
        padding-bottom:0.8em;
        position:relative;
        order: 1;
    }
    .wrap-articles .list-article-date{
        width:40%;
        width:110px;
        font-weight:500;
        font-size:1.2rem;
    }
    .wrap-articles .list-article-category{
        width:60%;
        font-size:1.3rem;
        text-align:right;
        font-weight:500;
    }
    .wrap-articles .list-article-extra{
        display:none;
    }
    .wrap-articles .list-article-title{
        width:100%;
        max-width:none;
        padding-top:0.4em;
        padding-left:0px;
        font-size:1.4rem;
        order: 4;
    }
    .wrap-articles .list-article-thumbnail{
        width:100%;
        max-width:218px;
        order: 2;
    }
    .item-articles-extra{
        width:100%;
        font-size:1.3rem;
        padding-top:0.8em;
        font-weight:500;
        line-height:1.4;
        letter-spacing: 0.08em;
        color:#006D36;
        display:block;
        order: 3;
    }
}
@media (hover: hover) and (pointer: fine) {
    .wrap-articles .list-article-thumbnail{
        overflow:hidden;
    }
    .wrap-articles .list-article li a .list-article-thumbnail img{
        transition: transform 0.3s;
    }
    .wrap-articles .list-article li a:hover{
        background-color: #fff;
    }
    .wrap-articles .list-article li a:hover .list-article-thumbnail img{
        transform: scale(1.05);
    }
    .wrap-articles .list-article-title{
        transition: color 0.3s;
    }
    .wrap-articles .list-article li a:hover .list-article-title{
        color:#4EB133;
    }
}

/*  pagination (page-numbers)
-------------------------------------------------------------*/
.wrap-numbers{
    width:100%;
    max-width:850px;
    margin:0 auto;
    padding-top:150px;
    padding-bottom:100px;
    position:relative;
}
.page-numbers{
    width: 100%;
    max-width: 840px;
    margin: 0 auto;
    padding-top:48px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
    flex-wrap:nowrap;
}
.page-numbers li{
}
.page-numbers li {
    display: block;
    padding:0.1em 0.2em;
}
.page-numbers li a,.page-numbers li span{
    font-size: 2.5rem;
    line-height:1.2;
    font-weight:700;
    padding:0.1em 0.4em;
    color:#006D36;
    text-align:center;
    position:relative;
}
.page-numbers li .current{
}
.page-numbers li .current::after {
    content: "";
    position: absolute;
    bottom:-0.2em;
    left:50%;
    width: 0.8em;
    height: 3px;
    background-color: #006D36;
    transition: .4s;
    transform: translate(-50%, 0);
}
.page-numbers li .dots{
    padding:0.1em 0.1em;
    font-weight:400;
    font-size: 2rem;
}
@media only screen and (max-width:768px) {
    .page-numbers li a,.page-numbers li span{
        font-size: 2rem;
        padding:0.1em 0.6em;
    }
    .page-numbers li .dots{
        padding:0.1em 0.2em;
        font-weight:400;
        font-size: 1.6rem;
    }
}

@media (hover: hover) and (pointer: fine) {
    .page-numbers li a{
        transition: color cubic-bezier(0.42, 0, 0.58, 1) 0.3s;
    }
    .page-numbers li a:hover{
        color:#4EB133;
    }
}

/*  contact form
-------------------------------------------------------------*/
.wrap-contact{
    width:100%;
    max-width:850px;
    margin:0 auto;
    padding-top:150px;
    padding-bottom:100px;
    position:relative;
}
.title-contact,
.title-recruit,
.title-inquiry{
    width:100%;
    max-width:850px;
    margin:0 auto;
    font-size:3.5rem;
    line-height:1.2;
    font-weight:bold;
    padding:0.2em 0em 1em;
    color:#006D36;
    text-align:center;
}
.title-inquiry{
    font-size:2.5rem;
}
.title-recruit{
    font-size:3rem;
}
.recruit .wrap-contact{
    max-width:100%;
}

@media only screen and (max-width:768px) {
    .container-page{
    }
    .wrap-contact{
        width:92%;
    }
    .title-contact {
        font-size: 2.5rem;
    }
    .title-recruit{
        font-size:2.5rem;
        text-align:left;
        line-height:1.8;
    }
}

/*  bottom navigation
-------------------------------------------------------------*/
.section-bottom{
    width:100%;
    margin:0 auto;
    position:relative;
}
.wrap-bottom{
    width:100%;
    max-width:1000px;
    margin:0 auto;
    padding-bottom:200px;
    position:relative;
}
.contents-bottom{
    width:100%;
    position:relative;
}
.nav-bottom{
    padding:100px 0;
}
.nav-list-bottom{
    display: flex;
    justify-content: center;
    flex-direction: row;
    flex-wrap:wrap;
    width:70%;
    max-width:680px;
    margin:0 auto 100px;
}
.nav-list-bottom li{
    padding:0 20px 24px;
}
.nav-list-bottom li a{
    display:block;
    text-align:center;
    font-size:1.7rem;
    font-weight:bold;
    line-height:1.2;
    letter-spacing: .04em;
    font-family: 'Roboto', sans-serif;
    color:#fff;
}
.container-archive .nav-list-bottom li a,
.container-single .nav-list-bottom li a{
    color:#006D36;
}
.nav-list-logo{
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap:wrap;
    width:60%;
    max-width:480px;
    margin:0 auto;
}
.nav-list-logo li{
    width:33%;
}
.nav-list-logo li:nth-of-type(1){
    max-width:90px;
}
.nav-list-logo li:nth-of-type(2){
    max-width:62px;
}
.nav-list-logo li:nth-of-type(3){
    max-width:130px;
}
.container-archive .nav-list-logo li a img,
.container-single .nav-list-logo li a img{
    opacity:0;
}
.container-archive .nav-list-logo li:nth-of-type(1),
.container-single .nav-list-logo li:nth-of-type(1){
    background-image: url(../img/logo_bottom_qenaru_black.svg);
    background-position: 50% 100%;
    background-size: contain;
    background-size: cover;
    background-repeat: no-repeat;
}
.container-archive .nav-list-logo li:nth-of-type(2),
.container-single .nav-list-logo li:nth-of-type(2){
    background-image: url(../img/logo_bottom_ohana_black.svg);
    background-position: 50% 100%;
    background-size: contain;
    background-size: cover;
    background-repeat: no-repeat;
}
.container-archive .nav-list-logo li:nth-of-type(3),
.container-single .nav-list-logo li:nth-of-type(3){
    background-image: url(../img/logo_bottom_dinema_black.svg);
    background-position: 50% 100%;
    background-size: contain;
    background-size: cover;
    background-repeat: no-repeat;
}

@media (hover: hover) and (pointer: fine) {
    .nav-list-logo li{
        transition: transform 0.3s;
    }
    .nav-list-logo li:hover{
        transform: scale(1.05);
    }
    .nav-list-bottom li a{
        transition: color cubic-bezier(0.42, 0, 0.58, 1) 0.3s;
    }
    .nav-list-bottom li a:hover{
        color:#4EB133;
    }
}

@media only screen and (max-width:768px) {
    .wrap-bottom{
        padding-bottom:50px;
    }
    .nav-list-bottom{
        flex-direction:column;
        width:100%;
        max-width:none;
    }
    .nav-list-bottom li{
        padding:0 0 24px;
        text-align:center;
    }
    .nav-list-bottom li a{
        display:inline-block;
    }
    .nav-list-logo{
        flex-direction:column;
        width:100%;
        max-width:none;
    }
    .nav-list-logo li{
        width:60%;
        margin-bottom:65px;
    }
    .nav-list-logo li:nth-of-type(1){
        max-width:108px;
    }
    .nav-list-logo li:nth-of-type(2){
        max-width:82px;
    }
    .nav-list-logo li:nth-of-type(3){
        max-width:121px;
        margin-bottom:0;
    }
}

/*  drawer contents
-------------------------------------------------------------*/
@media only screen and (max-width:900px) {
    .wrap-drawer {
        position: fixed;
        top:0;
        right: -100%;
        right:0;
        top: -100%;
        top: 0;
        width: 100%;
        height: 100vh;
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
        color: #fff;
        background-color:#7DBD35;
        transition: top 0s cubic-bezier(0.42, 0, 0.58, 1) 0.4s, opacity 0.4s cubic-bezier(0.42, 0, 0.58, 1);
        z-index: 90;
        opacity: 0;
        pointer-events: none;
    }
    .message-drawer{
        width:76%;
        padding:0 0 64px 72px;
    }
    .message-drawer p{
        line-height: 1.8;
        font-size: 2.8rem;
        font-weight: 500;
        letter-spacing: 0.04em;
        color:#006D36;
        text-align:left;
        padding-top:1em;
    }
    .nav-drawer{
        width:24%;
    }
    .nav-list-drawer{
        display: flex;
        justify-content: center;
        flex-direction: column;
        padding:0 0 7.5vh;
    }
    .nav-list-drawer li{
        padding:0 0 60px;
        padding:0 0 7.5vh;
    }
    .nav-list-drawer li a{
        display:block;
        text-align:left;
        font-size:2rem;
        font-weight:bold;
        line-height:1.2;
        letter-spacing: .04em;
        font-family: 'Roboto', sans-serif;
        color:#fff;
    }
    .nav-sub-drawer{
        padding:0 0 24px;
        padding:0 0 3.5vh;
    }
    .nav-sub-drawer a{
        display:block;
        text-align:left;
        font-size:1.2rem;
        font-weight:bold;
        line-height:1.2;
        letter-spacing: .04em;
        font-family: 'Roboto', sans-serif;
        color:#fff;
    }
    .overlaid .wrap-drawer{
        opacity: 1;
        pointer-events: auto;
    }
}
@media only screen and (min-width:901px) {
    .wrap-drawer {
        position: fixed;
        top: 0;
        width: 100%;
        height: 80px;
        color: #fff;
        background-color:#7DBD35;
        background-color:transparent;
        z-index: 90;
    }
    .nav-list-drawer{
        display: flex;
        justify-content: flex-end;
        align-items: center;
        padding:0;
    }
    .nav-list-drawer li{
        height:100%;
        height: 80px;
        padding:0 35px 0 0;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .nav-list-drawer li:nth-of-type(1){
        display:none;
    }
    .nav-list-drawer li a{
        display:block;
        text-align:left;
        font-size:1.5rem;
        font-weight:bold;
        line-height:1.1;
        letter-spacing: .04em;
        font-family: 'Roboto', sans-serif;
        color:#fff;
        color:#006D36;
        transition:color 0.8s cubic-bezier(0.42, 0, 0.58, 1);
    }
    .message-drawer,
    .nav-sub-drawer{
        display:none;
    }
    .is-scroller .nav-list-drawer li a{
        color:#fff;
    }
    .nav-drawer{
        background-color:rgba(255,255,255,0.3);
        transition:background-color 0.4s cubic-bezier(0.42, 0, 0.58, 1);
    }
    .is-scrolling .nav-drawer{
        background-color:rgba(255,255,255,0.99);
    }
    .page .nav-drawer,.single .nav-drawer{
        background-color:rgba(255,255,255,1);
    }
}
@media only screen and (min-width:901px) {
    .nav-list-drawer li{
        padding:0 24px 0 0;
    }
    .nav-list-drawer li a{
        font-size:1.3rem;
    }
}
@media only screen and (min-width:1152px) {
    .nav-list-drawer li{
        padding:0 35px 0 0;
    }
    .nav-list-drawer li a{
        font-size:1.5rem;
    }
}
@media (hover: hover) and (pointer: fine) {
    .nav-list-drawer li a{
        transition: color cubic-bezier(0.42, 0, 0.58, 1) 0.3s;
    }
    .nav-list-drawer li a:hover{
        color:#4EB133;
    }
}
@media only screen and (max-width:890px) {
    .wrap-drawer {
        align-items: center;
    }
    .message-drawer{
        display:none;
    }
    .nav-drawer{
        width:90%;
        height:100%;
        margin:0 auto;
        padding:4vh 0;
        display: flex;
        justify-content: space-between;
        flex-direction: column;
    }
    .nav-list-drawer{
        padding:0;
        height:100%;
    }
    .nav-list-drawer li{
        padding:0 0 6vh;
        text-align:center;
    }
    .nav-list-drawer li a{
        display:inline-block;
    }
    .nav-sub-drawer{
        padding:0 0 0.5vh;
    }
    .wrapper:after {
        position: fixed;
        content: '';
        top: 0;
        left: 0;
        width: 100vw;
        height: 80px;
        background-color: rgba(255, 255, 255, 0.1);
        z-index: 9;
        opacity: 0;
        opacity: 1;
        pointer-events: none;
        /*  transform: translate(0, -101%);*/
        transition: opacity 0.4s ease 0s,background-color 0.4s ease 0s;
    }
    .is-scrolling.wrapper:after {
        background-color: rgba(255, 255, 255, 0.99);
    }
    .page .wrapper:after,.single .wrapper:after {
        background-color: rgba(255, 255, 255, 0.99);
    }
}
/* footer
-------------------------------------------------------------*/
.wrap-footer{
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: flex-end;
    width:100%;
    padding:0 30px 24px;
}
.footer-company{
    width:296px;
}
.footer-company a{
    display:block;
}
.container-archive .footer-company img,
.container-single .footer-company img{
    opacity:0;
}
.container-archive .footer-company,
.container-single .footer-company{
    background-image: url(../img/logo_bottom_company_black.svg);
    background-position: 50% 100%;
    background-size: contain;
    background-size: cover;
    background-repeat: no-repeat;
}
.footer-aside{
    width:380px;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: flex-end;
}
.footer-link a,.footer-aside p{
    font-size:1.2rem;
    font-weight:bold;
    line-height:1.3;
    letter-spacing: .04em;
    font-family: 'Roboto', sans-serif;
    color:#fff;
}
.container-archive .footer-link a,.container-archive .footer-aside p,
.container-single .footer-link a,.container-single .footer-aside p{
    color:#006D36;
}
@media only screen and (max-width:760px) {
    .wrap-footer{
        padding:0 20px 12px;
    }
    .footer-company{
        width:86px;
    }
    .footer-aside{
        width:calc(100% - 86px);
        flex-direction: column;
    }
    .footer-aside p{
        padding-top:0.4em;
    }
    .container-archive .footer-company,
    .container-single .footer-company{
        background-image: url(../img/logo_bottom_company_sp_black.svg);
    }
 }
@media (hover: hover) and (pointer: fine) {
    .footer-company{
        opacity:1;
        transition: opacity 0.4s;
    }
    .footer-company:hover{
        opacity:0.5;
    }
    .footer-link a{
        opacity:1;
        transition: opacity 0.4s;
    }
    .footer-link a:hover{
        opacity:0.5;
    }
}

/*  logo fixed
-------------------------------------------------------------*/
.logo-fixed {
    width:84px;
    position:fixed;
    top:20px;
    left:20px;
    z-index:100;
}
.logo-fixed a{
    display:block;
    position:relative;
}
.logo-fixed img{
    width:100%;
    height:auto;
    transition: transform 0.3s,opacity 0.6s;
    display:block;
}
.logo-fixed img:nth-of-type(1){
    opacity:1;
}
.logo-fixed img:nth-of-type(2){
    opacity:0;
    position:absolute;
    top:0;
    left:0;
}
@media (hover: hover) and (pointer: fine) {
    .logo-fixed img{
    }
    .logo-fixed:hover img{
        transform: scale(1.05);
    }
}
.is-scroller .logo-fixed img:nth-of-type(1){
    opacity:0;
}
.is-scroller .logo-fixed img:nth-of-type(2){
    opacity:1;
}

/*
------------------------------------------------------------------*/
.overlayTrigger {
    position: fixed;
    top: 34px;
    right: 30px;
    width: 50px;
    height: 18px;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 100;
}
.overlayTrigger span {
    width: 100%;
    height: 2px;
    background-color: #111;
    background-color: transparent;
    position: relative;
    transition: .4s;
}
.overlayTrigger span::before,
.overlayTrigger span::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #32654B;
    transition: .4s;
}
.overlayTrigger span::before {
    transform: translateY(-9px);
}
.overlayTrigger span::after {
    transform: translateY(9px);
}
.overlayTrigger.is-pulled span {
    background-color: transparent;
}
.overlayTrigger.is-pulled span::before,
.overlayTrigger.is-pulled span::after {
    background-color: #006D36;
}
.overlayTrigger.is-pulled span::before,
.overlayTrigger.is-pulled:hover span::before {
    transform: rotate(45deg);
}
.overlayTrigger.is-pulled span::after ,
.overlayTrigger.is-pulled:hover span::after {
    transform: rotate(-45deg);
}
.overlayTrigger{
    opacity:0;
    opacity:1;
    transition: opacity cubic-bezier(0.42, 0, 0.58, 1) 0.3s;
    cursor: pointer;
    pointer-events: none;
    pointer-events: auto;
}
.is-active .overlayTrigger{
    opacity:1;
    pointer-events: auto;
    cursor: pointer;
}

@media (hover: hover) and (pointer: fine) {
    .overlayTrigger span::before,
    .overlayTrigger span::after {
        transition: transform 0.3s;
    }
    .buttonSns li:hover img{
        transform: scale(1.05);
    }
    .overlayTrigger:hover span::before {
        transform: translateY(-7px);
    }
    .overlayTrigger:hover span::after {
        transform: translateY(7px);
    }
}

@media only screen and (min-width:901px) {
    .overlayTrigger {
        display:none;
        pointer-events: none;
    }
}
@media only screen and (max-width:900px) {
    .overlayTrigger {
        top: 24px;
        right: 24px;
        width: 48px;
        height: 32px;
        pointer-events: auto;
    }
    .overlayTrigger span {
        height: 2px;
    }
    .overlayTrigger span::before {
        transform: translateY(-8px);
    }
    .overlayTrigger span::after {
        transform: translateY(8px);
    }
}

/* button fixed
-------------------------------------------------------------*/
.button-modal {
    position: fixed;
    bottom: 76px;
    right: 30px;
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background-color: #006D36;
    border:1px solid  #006D36;
    z-index:100;
    opacity:1;
    transition: border-color cubic-bezier(0.42, 0, 0.58, 1) 0.3s,background-color cubic-bezier(0.42, 0, 0.58, 1) 0.3s,opacity cubic-bezier(0.42, 0, 0.58, 1) 0.3s;
}
.button-modal p {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items:center;
    width:100%;
    height:100%;
    cursor: pointer;
}
.button-modal span {
    display:block;
    font-size:1.8rem;
    font-weight:bold;
    line-height:1.3;
    color:#fff;
    transition: color cubic-bezier(0.42, 0, 0.58, 1) 0.3s;
}

@media only screen and (max-width:768px) {
    .button-modal {
        bottom: 30px;
        right: 20px;
        width: 100px;
        height: 100px;
    }
    .button-modal span {
        font-size:1.5rem;
    }
}
    .is-scrolled .button-modal {
        background-color: #fff;
        border-color: #fff;
    }
    .is-scrolled .button-modal span {
        color:#006D36;
    }
@media only screen and (min-width:769px) {
    .button-modal {
    }
}
@media (hover: hover) and (pointer: fine) {
    .button-modal:hover {
        background-color: #fff;
    }
    .button-modal:hover span {
        color:#006D36;
    }
    .is-scrolled .button-modal:hover {
        background-color: #006D36;
    }
    .is-scrolled .button-modal:hover span {
        color:#fff;
    }
}
@media only screen and (max-width:768px) {
    .button-modal {
        opacity:0;
    }
    .is-scrolling .button-modal {
        opacity:1;
    }
}

.button-modal.is-hidden {
    opacity:0;
}
.contact .button-modal {
    display:none;
}

/* modal window (online shop)
-------------------------------------------------------------*/
.wrap-modal{
    display: block;
    display: none;
    position: fixed;
    top: 0;
    width: 100%;
    height: 100vh;
    z-index:101;
}
.layer-modal{
    position: absolute;
    width: 100%;
    height: 100vh;
    background: rgba(0,0,0,0.5);
}
.contents-modal{
    background-color:#006D36;
    width: 80%;
    max-width:400px;
    height:400px;
    position: absolute;
    /*
    right: 40px;
    bottom:40px;
    */
    top:50%;
    left:50%;
    transform: translate(-50%, -50%);
}
.closer-modal {
    position:absolute;
    display:block;
    top:18px;
    right:20px;
    width:20px;
    height:20px;
    overflow:hidden;
}
.closer-modal::before, .closer-modal::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 2px;
    height: 24px;
    background: #fff;
}
.closer-modal::before {
    transform: translate(-50%,-50%) rotate(45deg);
}
.closer-modal::after {
    transform: translate(-50%,-50%) rotate(-45deg);
}
.title-modal{
    font-size:1.8rem;
    font-weight:bold;
    line-height:1.3;
    letter-spacing: .08em;
    position:relative;
    text-align:left;
    color:#fff;
    padding:16px 24px;
}
.list-modal{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items:center;
    width:100%;
    height:auto;
}
.list-modal li:nth-of-type(1){
    width:200px;
    margin-top:70px;
}
.list-modal li:nth-of-type(2){
    width:140px;
    margin-top:70px;
}
@media (hover: hover) and (pointer: fine) {
    .list-modal li img,.closer-modal{
        transition: transform 0.3s;
    }
    .list-modal li:hover img{
        transform: scale(1.05);
    }
    .closer-modal:hover{
        transform: scale(1.05);
    }
}

/*  body fixed
-------------------------------------------------------------*/
body.myBodyFixed {
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
}

/*  hover effect
-------------------------------------------------------------*/
@media (hover: hover) and (pointer: fine) {
}

/*  responsive style
-------------------------------------------------------------*/
@media only screen and (max-width:768px) {
}
@media only screen and (min-width:769px) {
}
@media only screen and (min-width:1280px) {
}
@media only screen and (min-width:769px) {
}