@charset "UTF-8";
@media screen and (min-width: 1024px) {
  .btn_style01 {
    width: 100%;
  }
  .btn_style01 a, .btn_style01 a:link a:visited {
    display: block;
    text-align: center;
    color: #fff;
    font-size: 2rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.0;
    background: url(../img/list_mk002.svg) no-repeat right 15px center;
    background-size: 10px;
    background-color: #83B2A6;
    padding: 22px 0px;
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
  }
  .btn_style01 a:hover {
    color: #fff;
    background: url(../img/list_mk002.svg) no-repeat right 10px center;
    background-size: 10px;
    background-color: #629B8B;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .btn_style01 {
    width: 100%;
  }
  .btn_style01 a, .btn_style01 a:link a:visited {
    display: block;
    text-align: center;
    color: #fff;
    font-size: 1.8rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.0;
    background: url(../img/list_mk002.svg) no-repeat right 15px center;
    background-size: 10px;
    background-color: #83B2A6;
    padding: 22px 0px;
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
  }
  .btn_style01 a:hover {
    color: #fff;
    background: url(../img/list_mk002.svg) no-repeat right 10px center;
    background-size: 10px;
    background-color: #629B8B;
  }
}

@media screen and (max-width: 767px) {
  .btn_style01 {
    width: 100%;
  }
  .btn_style01 a {
    display: block;
    text-align: center;
    color: #fff;
    font-size: 1.8rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.0;
    background: url(../img/list_mk002.svg) no-repeat right 15px center;
    background-size: 10px;
    background-color: #83B2A6;
    padding: 18px 5px;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
  }
}

@media screen and (min-width: 1024px) {
  .btn_style02 {
    width: 100%;
  }
  .btn_style02 a, .btn_style02 a:link a:visited {
    display: block;
    text-align: center;
    color: #fff;
    font-size: 2rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.0;
    background: url(../img/list_mk002.svg) no-repeat right 15px center;
    background-size: 10px;
    background-color: #DB887F;
    padding: 22px 0px;
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
  }
  .btn_style02 a:hover {
    color: #fff;
    background: url(../img/list_mk002.svg) no-repeat right 10px center;
    background-size: 10px;
    background-color: #C66D66;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .btn_style02 {
    width: 100%;
  }
  .btn_style02 a, .btn_style02 a:link a:visited {
    display: block;
    text-align: center;
    color: #fff;
    font-size: 1.8rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.0;
    background: url(../img/list_mk002.svg) no-repeat right 15px center;
    background-size: 10px;
    background-color: #DB887F;
    padding: 22px 0px;
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
  }
  .btn_style02 a:hover {
    color: #fff;
    background: url(../img/list_mk002.svg) no-repeat right 10px center;
    background-size: 10px;
    background-color: #C66D66;
  }
}

@media screen and (max-width: 767px) {
  .btn_style02 {
    width: 100%;
  }
  .btn_style02 a {
    display: block;
    text-align: center;
    color: #fff;
    font-size: 1.8rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.0;
    background: url(../img/list_mk002.svg) no-repeat right 15px center;
    background-size: 10px;
    background-color: #DB887F;
    padding: 18px 5px;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
  }
}

@media screen and (min-width: 1024px) {
  .btn_style03 {
    width: 100%;
  }
  .btn_style03 a, .btn_style03 a:link a:visited {
    display: block;
    text-align: center;
    color: #fff;
    font-size: 1.5rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.0;
    background: url(../img/list_mk002.svg) no-repeat right 15px center;
    background-size: 10px;
    background-color: #DB887F;
    padding: 18px 0;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
  }
  .btn_style03 a:hover {
    color: #fff;
    background: url(../img/list_mk002.svg) no-repeat right 10px center;
    background-size: 10px;
    background-color: #C66D66;
  }
  .btn_style03 img {
    width: 20px;
    padding-left: 4px;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .btn_style03 {
    width: 100%;
  }
  .btn_style03 a, .btn_style03 a:link a:visited {
    display: block;
    text-align: center;
    color: #fff;
    font-size: 1.3rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.0;
    background: url(../img/list_mk002.svg) no-repeat right 15px center;
    background-size: 10px;
    background-color: #DB887F;
    padding: 18px 0;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
  }
  .btn_style03 a:hover {
    color: #fff;
    background: url(../img/list_mk002.svg) no-repeat right 10px center;
    background-size: 10px;
    background-color: #C66D66;
  }
  .btn_style03 img {
    width: 20px;
    padding-left: 4px;
  }
}

@media screen and (max-width: 767px) {
  .btn_style03 {
    width: 100%;
  }
  .btn_style03 a {
    display: block;
    text-align: center;
    color: #fff;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.0;
    background: url(../img/list_mk002.svg) no-repeat right 15px center;
    background-size: 10px;
    background-color: #DB887F;
    padding: 18px 0;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
  }
  .btn_style03 img {
    width: 18px;
    padding-left: 4px;
  }
}

/* ########## header ########## */
@media screen and (min-width: 1024px) {
  .header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    min-width: 1100px;
    height: 100px;
    background-color: #fff;
    z-index: 2000;
  }
  .header__contents {
    position: relative;
    width: 96%;
    margin-left: 4%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .header__logo {
    width: 270px;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .header__logo p {
    width: 100%;
    line-height: 1.0;
  }
  .header__logo p img {
    width: 100%;
  }
  .header__nav {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .header__nav_left {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    padding-right: 5px;
  }
  .header__sub_nav {
    width: 100%;
    font-size: 1.2rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    padding-top: 6px;
    padding-right: 35px;
  }
  .header__sub_nav li {
    margin-left: 20px;
    background: url(../img/list_mk001.svg) no-repeat 0 center;
    background-size: 10px;
    padding-left: 12px;
  }
  .header__sub_nav li a, .header__sub_nav li a:link a:visited {
    color: #333;
  }
  .header__sub_nav li a:hover {
    color: #DB887F;
  }
  .header__global_nav {
    width: 100%;
    height: 75px;
    font-size: 1.3rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .header__global_nav li {
    margin-right: 35px;
  }
  .header__global_nav li a, .header__global_nav li a:link a:visited {
    text-align: center;
    color: #333;
  }
  .header__global_nav li a:hover {
    color: #DB887F;
  }
  .header__global_nav li img {
    width: 30px;
    padding-bottom: 4px;
  }
  .header__nav_right {
    width: 140px;
  }
  .header__nav_right h6 a, .header__nav_right a:link a:visited {
    font-size: 1.3rem;
    letter-spacing: 0.1em;
    width: 100%;
    height: 100px;
    color: #fff;
    background-color: #DB887F;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 23px 0;
  }
  .header__nav_right a:hover {
    background-color: #C66D66;
  }
  .header__nav_right p {
    text-align: center;
    width: 100%;
    margin: 0 auto;
  }
  .header__nav_right p img {
    width: 32px;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 80px;
    background-color: #fff;
    z-index: 2000;
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
  }
  .header__contents {
    position: relative;
    width: 92%;
    z-index: 1;
    margin: 0 auto;
  }
  .header__logo {
    width: 240px;
    height: 80px;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .header__logo p {
    width: 100%;
  }
  .header__logo p img {
    width: 100%;
  }
  .header__nav {
    display: none;
  }
  .header__nav_left {
    display: none;
  }
  .header__sub_nav {
    display: none;
  }
  .header__global_nav {
    display: none;
  }
  .header__nav_right {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 60px;
    background-color: #fff;
    -webkit-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.06);
            box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.06);
    z-index: 1000;
  }
  .header__contents {
    position: relative;
    width: 100%;
    height: 60px;
  }
  .header__logo {
    width: 92%;
    height: 60px;
    padding-top: 10px;
    margin: 0 auto;
  }
  .header__logo p {
    height: 40px;
  }
  .header__logo p img {
    height: 40px;
  }
  .header__nav {
    display: none;
  }
  .header__nav_left {
    display: none;
  }
  .header__sub_nav {
    display: none;
  }
  .header__global_nav {
    display: none;
  }
  .header__nav_right {
    display: none;
  }
}

/* ########## header ########## */
/* ########## header_news ########## */
@media screen and (min-width: 1024px) {
  .header__news {
    position: relative;
    width: 100%;
    height: 56px;
    background-color: #F9F4EA;
    margin-top: 100px;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .header__news {
    position: relative;
    width: 100%;
    height: 56px;
    background-color: #F9F4EA;
    margin-top: 80px;
  }
}

@media screen and (max-width: 767px) {
  .header__news {
    position: relative;
    width: 100%;
    height: 52px;
    background-color: #F9F4EA;
    margin-top: 60px;
  }
}

@media screen and (min-width: 1024px) {
  .header__news02 {
    position: relative;
    width: 100%;
    height: 56px;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-right: 25px;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .header__news02 {
    position: relative;
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-right: 15px;
  }
}

@media screen and (max-width: 767px) {
  .header__news02 {
    position: relative;
    width: 100%;
  }
}

@media screen and (min-width: 1024px) {
  .header__news02_left {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .header__news02_left h3 {
    color: #fff;
    font-size: 1.2rem;
    letter-spacing: 0.1em;
    line-height: 1.0;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 200px;
    height: 56px;
    background-color: #83B2A6;
  }
  .header__news02_left h3 img {
    width: 18px;
    padding-right: 5px;
  }
  .header__news02_left dl {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-left: 40px;
  }
  .header__news02_left dl dt {
    font-size: 1rem;
    line-height: 1.0;
    padding-top: 1px;
  }
  .header__news02_left dl dd {
    font-size: 1.2rem;
    line-height: 1.0;
    padding-left: 10px;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .header__news02_left {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .header__news02_left h3 {
    color: #fff;
    font-size: 1.2rem;
    letter-spacing: 0.1em;
    line-height: 1.0;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 160px;
    height: 56px;
    background-color: #83B2A6;
  }
  .header__news02_left h3 img {
    width: 18px;
    padding-right: 5px;
  }
  .header__news02_left dl {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-left: 30px;
  }
  .header__news02_left dl dt {
    font-size: 1rem;
    line-height: 1.5;
    padding-top: 1px;
  }
  .header__news02_left dl dd {
    font-size: 1.2rem;
    line-height: 1.5;
    padding-left: 10px;
  }
}

@media screen and (max-width: 767px) {
  .header__news02_left {
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .header__news02_left h3 {
    color: #fff;
    font-size: 1.2rem;
    letter-spacing: 0.075em;
    line-height: 1.0;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100px;
    height: 52px;
    background-color: #83B2A6;
  }
  .header__news02_left h3 img {
    width: 14px;
    padding-right: 4px;
  }
  .header__news02_left dl {
    padding: 0 20px;
  }
  .header__news02_left dl dt {
    display: none;
  }
  .header__news02_left dl dd {
    font-size: 1.1rem;
    line-height: 1.5;
  }
}

@media screen and (min-width: 1024px) {
  .header__news02_right {
    width: 125px;
    height: 56px;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .header__news02_right p {
    font-size: 1.2rem;
    line-height: 1.0;
    background: url(../img/list_mk001.svg) no-repeat right center;
    background-size: 10px;
    padding-right: 16px;
  }
  .header__news02_right p a, .header__news02_right p a:link a:visited {
    color: #333;
  }
  .header__news02_right p a:hover {
    color: #C66D66;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .header__news02_right {
    width: 125px;
    height: 56px;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .header__news02_right p {
    font-size: 1.2rem;
    line-height: 1.0;
    background: url(../img/list_mk001.svg) no-repeat right center;
    background-size: 10px;
    padding-right: 16px;
  }
  .header__news02_right p a, .header__news02_right p a:link a:visited {
    color: #333;
  }
  .header__news02_right p a:hover {
    color: #C66D66;
  }
}

@media screen and (max-width: 767px) {
  .header__news02_right {
    display: none;
  }
}

/* ########## header_news ########## */
/* ########## nav_menu ########## */
@media screen and (min-width: 1024px) {
  a.nav_menu {
    display: none;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  a.nav_menu {
    cursor: pointer;
    position: fixed;
    top: 0;
    right: 0;
    display: block;
    width: 80px;
    height: 80px;
    text-align: center;
    text-decoration: none;
    z-index: 2100;
  }
  a.nav_menu .menu__line {
    display: block;
    height: 2px;
    position: absolute;
    -webkit-transition: -webkit-transform .3s;
    transition: -webkit-transform .3s;
    transition: transform .3s;
    transition: transform .3s, -webkit-transform .3s;
  }
  a.nav_menu .menu__line--top {
    width: 30px;
    top: 30px;
    left: 25px;
    background-color: #83B2A6;
    border-radius: 2px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
  }
  a.nav_menu .menu__line--center {
    width: 30px;
    top: 39px;
    left: 25px;
    background-color: #E4BE7B;
    border-radius: 2px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
  }
  a.nav_menu .menu__line--bottom {
    width: 30px;
    bottom: 30px;
    left: 25px;
    background-color: #DB887F;
    border-radius: 2px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
  }
  a.nav_menu .menu__line--top.active {
    width: 30px;
    top: 39px;
    background-color: #83B2A6;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    border-radius: 2px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
  }
  a.nav_menu .menu__line--center.active {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  a.nav_menu .menu__line--bottom.active {
    width: 30px;
    bottom: 39px;
    background-color: #DB887F;
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg);
    border-radius: 2px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
  }
}

@media screen and (max-width: 767px) {
  a.nav_menu {
    position: fixed;
    top: 0px;
    right: 0px;
    display: block;
    background-color: #fff;
    width: 60px;
    height: 60px;
    text-align: center;
    text-decoration: none;
    z-index: 2000;
  }
  a.nav_menu .menu__line {
    display: block;
    height: 2px;
    position: absolute;
    -webkit-transition: -webkit-transform .3s;
    transition: -webkit-transform .3s;
    transition: transform .3s;
    transition: transform .3s, -webkit-transform .3s;
  }
  a.nav_menu .menu__line--top {
    width: 24px;
    top: 21px;
    left: 18px;
    background-color: #83B2A6;
    border-radius: 2px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
  }
  a.nav_menu .menu__line--center {
    width: 24px;
    top: 29px;
    left: 18px;
    background-color: #E4BE7B;
    border-radius: 2px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
  }
  a.nav_menu .menu__line--bottom {
    width: 24px;
    bottom: 21px;
    left: 18px;
    background-color: #DB887F;
    border-radius: 2px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
  }
  a.nav_menu .menu__line--top.active {
    width: 24px;
    top: 29px;
    background-color: #83B2A6;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    border-radius: 2px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
  }
  a.nav_menu .menu__line--center.active {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  a.nav_menu .menu__line--bottom.active {
    width: 24px;
    bottom: 29px;
    background-color: #DB887F;
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg);
    border-radius: 2px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
  }
}

@media screen and (min-width: 1024px) {
  .gnav {
    display: none;
  }
  .gnav .gnav__wrap {
    display: none;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .gnav {
    background: #fff;
    display: none;
    height: 100%;
    position: fixed;
    width: 100%;
    z-index: 2090;
    top: 0;
    left: 0;
  }
  .gnav .gnav__wrap {
    position: absolute;
    width: 86%;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .gnav .gnav__wrap ul.gnav__menu02 {
    width: 48%;
    border-top: 1px dotted #ddd;
  }
  .gnav .gnav__wrap li.gnav__menu02__item {
    width: 100%;
    text-align: center;
    border-bottom: 1px dotted #ddd;
  }
  .gnav .gnav__wrap li.gnav__menu02__item a, .gnav .gnav__wrap li.gnav__menu02__item a:link a:visited {
    width: 100%;
    text-align: center;
    display: block;
    font-size: 1.3rem;
    font-weight: 500;
    color: #333;
    line-height: 1.0;
    letter-spacing: 0.1em;
    padding: 20px 0;
    text-decoration: none;
    background: url(../img/list_mk001.svg) no-repeat right 5px center;
    background-size: 12px;
    background-color: #fff;
  }
  .gnav .gnav__wrap li.gnav__menu02__item a:hover {
    background-color: #f3f3f3;
  }
  .gnav .gnav__wrap ul.gnav__menu {
    width: 48%;
    border-top: 1px dotted #ddd;
  }
  .gnav .gnav__wrap li.gnav__menu__item {
    width: 100%;
    text-align: center;
    border-bottom: 1px dotted #ddd;
  }
  .gnav .gnav__wrap li.gnav__menu__item a, .gnav .gnav__wrap li.gnav__menu__item a:link a:visited {
    width: 100%;
    text-align: center;
    display: block;
    font-size: 1.3rem;
    font-weight: 500;
    color: #333;
    line-height: 1.0;
    letter-spacing: 0.1em;
    padding: 20px 0;
    text-decoration: none;
    background: url(../img/list_mk001.svg) no-repeat right 5px center;
    background-size: 12px;
    background-color: #fff;
  }
  .gnav .gnav__wrap li.gnav__menu__item a:hover {
    background-color: #f3f3f3;
  }
  .gnav .gnav__wrap ul.gnav__menu03 {
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 40px;
  }
  .gnav .gnav__wrap li.gnav__menu03__item_apply {
    width: 48.5%;
  }
  .gnav .gnav__wrap li.gnav__menu03__item_apply a {
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #fff;
    background: url(../img/list_mk002.svg) no-repeat right 15px center;
    background-size: 10px;
    background-color: #83B2A6;
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.0;
    letter-spacing: 0.1em;
    text-decoration: none;
    padding: 22px 0px;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
  }
  .gnav .gnav__wrap li.gnav__menu03__item_apply a img {
    width: 22px;
    padding-right: 6px;
  }
  .gnav .gnav__wrap li.gnav__menu03__item_contact {
    width: 48.5%;
  }
  .gnav .gnav__wrap li.gnav__menu03__item_contact a {
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #fff;
    background: url(../img/list_mk002.svg) no-repeat right 15px center;
    background-size: 10px;
    background-color: #DB887F;
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.0;
    letter-spacing: 0.1em;
    text-decoration: none;
    padding: 22px 0;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
  }
  .gnav .gnav__wrap li.gnav__menu03__item_contact a img {
    width: 22px;
    padding-right: 6px;
  }
}

@media screen and (max-width: 767px) {
  .gnav {
    background: #fff;
    display: none;
    width: 100%;
    height: 100%;
    position: fixed;
    z-index: 1100;
    top: 0;
    left: 0;
  }
  .gnav .gnav__wrap {
    position: absolute;
    width: 92%;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
  }
  .gnav .gnav__wrap ul.gnav__menu {
    width: 100%;
    border-top: 1px dotted #ddd;
  }
  .gnav .gnav__wrap li.gnav__menu__item {
    width: 100%;
    text-align: center;
    border-bottom: 1px dotted #ddd;
  }
  .gnav .gnav__wrap li.gnav__menu__item a {
    width: 100%;
    text-align: center;
    display: block;
    font-size: 1.4rem;
    font-weight: 500;
    color: #333;
    line-height: 1.0;
    letter-spacing: 0.075em;
    padding: 16px 0;
    text-decoration: none;
    background: url(../img/list_mk001.svg) no-repeat right 4px center;
    background-size: 10px;
    background-color: #fff;
  }
  .gnav .gnav__wrap ul.gnav__menu02 {
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .gnav .gnav__wrap li.gnav__menu02__item {
    width: 50%;
    text-align: center;
    border-bottom: 1px dotted #ddd;
  }
  .gnav .gnav__wrap li.gnav__menu02__item a {
    width: 100%;
    text-align: center;
    display: block;
    font-size: 1.4rem;
    font-weight: 500;
    color: #333;
    line-height: 1.0;
    letter-spacing: 0.075em;
    padding: 16px 0;
    text-decoration: none;
    background: url(../img/list_mk001.svg) no-repeat right 4px center;
    background-size: 10px;
    background-color: #fff;
  }
  .gnav .gnav__wrap li.gnav__menu02__item:nth-child(odd) {
    border-right: 1px dotted #ddd;
  }
  .gnav .gnav__wrap ul.gnav__menu03 {
    width: 100%;
    margin-top: 25px;
  }
  .gnav .gnav__wrap li.gnav__menu03__item_apply {
    width: 100%;
  }
  .gnav .gnav__wrap li.gnav__menu03__item_apply a {
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #fff;
    background: url(../img/list_mk002.svg) no-repeat right 15px center;
    background-size: 10px;
    background-color: #83B2A6;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.0;
    letter-spacing: 0.1em;
    text-decoration: none;
    padding: 18px 0;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
  }
  .gnav .gnav__wrap li.gnav__menu03__item_apply a img {
    width: 22px;
    padding-right: 6px;
  }
  .gnav .gnav__wrap li.gnav__menu03__item_contact {
    width: 100%;
    margin-top: 10px;
  }
  .gnav .gnav__wrap li.gnav__menu03__item_contact a {
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #fff;
    background: url(../img/list_mk002.svg) no-repeat right 15px center;
    background-size: 10px;
    background-color: #DB887F;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.0;
    letter-spacing: 0.1em;
    text-decoration: none;
    padding: 18px 0;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
  }
  .gnav .gnav__wrap li.gnav__menu03__item_contact a img {
    width: 22px;
    padding-right: 6px;
  }
  .gnav .gnav__wrap div.gnav__menu02 {
    display: none;
  }
}

/* ########## nav_menu ########## */
@media screen and (min-width: 1024px) {
  .title_sp {
    text-align: center;
    position: relative;
    width: 100%;
    margin-bottom: 40px;
    background: url(../img/title_backimg01.svg) no-repeat center 100%;
    background-size: 42px;
    padding-bottom: 20px;
  }
  .title_sp h2 {
    font-size: 3.6rem;
    line-height: 1.4;
    color: #333;
    font-weight: 600;
    letter-spacing: 0.075em;
  }
  .title_sp h6 {
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.0;
    color: #83B2A6;
    letter-spacing: 0.1em;
    padding-bottom: 12px;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .title_sp {
    text-align: center;
    position: relative;
    margin-bottom: 40px;
    background: url(../img/title_backimg01.svg) no-repeat center 100%;
    background-size: 42px;
    padding-bottom: 20px;
  }
  .title_sp h2 {
    font-size: 3rem;
    line-height: 1.4;
    color: #333;
    font-weight: 600;
    letter-spacing: 0.075em;
  }
  .title_sp h6 {
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.0;
    color: #83B2A6;
    letter-spacing: 0.1em;
    padding-bottom: 10px;
  }
}

@media screen and (max-width: 767px) {
  .title_sp {
    text-align: center;
    position: relative;
    width: 100%;
    background: url(../img/title_backimg01.svg) no-repeat center 100%;
    background-size: 38px;
    padding-bottom: 20px;
    margin-bottom: 30px;
  }
  .title_sp h2 {
    font-size: 2.4rem;
    line-height: 1.4;
    color: #333;
    font-weight: 600;
    letter-spacing: 0.075em;
  }
  .title_sp h6 {
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.0;
    color: #83B2A6;
    letter-spacing: 0.1em;
    padding-bottom: 10px;
  }
}

@media screen and (min-width: 1024px) {
  .side_block__title {
    text-align: center;
    position: relative;
    width: 100%;
    margin-bottom: 20px;
    background: url(../img/title_backimg01.svg) no-repeat center 100%;
    padding-bottom: 14px;
    background-size: 32px;
  }
  .side_block__title h3 {
    font-size: 2rem;
    line-height: 1.4;
    color: #333;
    font-weight: 700;
    letter-spacing: 0.075em;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .side_block__title {
    text-align: center;
    position: relative;
    width: 100%;
    margin-bottom: 30px;
    background: url(../img/title_backimg01.svg) no-repeat center 100%;
    padding-bottom: 14px;
    background-size: 32px;
  }
  .side_block__title h3 {
    font-size: 2rem;
    line-height: 1.4;
    color: #333;
    font-weight: 700;
    letter-spacing: 0.075em;
  }
}

@media screen and (max-width: 767px) {
  .side_block__title {
    text-align: center;
    position: relative;
    width: 100%;
    margin-bottom: 25px;
    background: url(../img/title_backimg01.svg) no-repeat center 100%;
    padding-bottom: 14px;
    background-size: 32px;
  }
  .side_block__title h3 {
    font-size: 2rem;
    line-height: 1.4;
    color: #333;
    font-weight: 700;
    letter-spacing: 0.075em;
  }
}

/* ########## page_contents__title ########## */
@media screen and (min-width: 1024px) {
  .page_contents__title {
    position: relative;
    width: 100%;
    height: 300px;
    background-color: #E4BE7B;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .page_contents__title {
    position: relative;
    width: 100%;
    height: 260px;
    background-color: #E4BE7B;
  }
}

@media screen and (max-width: 767px) {
  .page_contents__title {
    position: relative;
    width: 100%;
    height: 200px;
    background-color: #E4BE7B;
  }
}

@media screen and (min-width: 1024px) {
  .page_contents__title:after {
    position: absolute;
    content: '';
    width: 100%;
    height: 40px;
    left: 0;
    bottom: 0;
    z-index: 10;
    background: url(../img/contents_backimg01.svg) repeat-x center bottom -10px;
    background-size: 30px;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .page_contents__title:after {
    position: absolute;
    content: '';
    width: 100%;
    height: 40px;
    left: 0;
    bottom: 0;
    z-index: 10;
    background: url(../img/contents_backimg01.svg) repeat-x center bottom -10px;
    background-size: 30px;
  }
}

@media screen and (max-width: 767px) {
  .page_contents__title:after {
    position: absolute;
    content: '';
    width: 100%;
    height: 40px;
    left: 0;
    bottom: 0;
    z-index: 10;
    background: url(../img/contents_backimg01.svg) repeat-x center bottom -10px;
    background-size: 30px;
  }
}

@media screen and (min-width: 1024px) {
  .page_contents__title02 {
    position: absolute;
    width: 60%;
    top: 47%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
  }
  .page_contents__title02 h2 {
    text-align: center;
    font-size: 3.6rem;
    line-height: 1.0;
    color: #fff;
    font-weight: 600;
    letter-spacing: 0.075em;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
  }
  .page_contents__title02 h6 {
    text-align: center;
    font-size: 1.6rem;
    font-weight: 600;
    line-height: 1.0;
    color: #fff;
    letter-spacing: 0.1em;
    padding-bottom: 14px;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .page_contents__title02 {
    position: absolute;
    width: 80%;
    top: 47%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
  }
  .page_contents__title02 h2 {
    text-align: center;
    font-size: 3rem;
    line-height: 1.0;
    color: #fff;
    font-weight: 600;
    letter-spacing: 0.075em;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
  }
  .page_contents__title02 h6 {
    text-align: center;
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1.0;
    color: #fff;
    letter-spacing: 0.1em;
    padding-bottom: 10px;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
  }
}

@media screen and (max-width: 767px) {
  .page_contents__title02 {
    position: absolute;
    width: 90%;
    top: 45%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
  }
  .page_contents__title02 h2 {
    text-align: center;
    font-size: 2.4rem;
    line-height: 1.0;
    color: #fff;
    font-weight: 600;
    letter-spacing: 0.075em;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
  }
  .page_contents__title02 h6 {
    text-align: center;
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 1.0;
    color: #fff;
    letter-spacing: 0.1em;
    padding-bottom: 8px;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
  }
}

/* ########## page_contents__title ########## */
/* ########## page_contents__title_02 ########## */
@media screen and (min-width: 1024px) {
  .page_contents__title_02 {
    position: relative;
    width: 100%;
    height: 450px;
    background-color: #E4BE7B;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .page_contents__title_02 {
    position: relative;
    width: 100%;
    height: 400px;
    background-color: #E4BE7B;
  }
}

@media screen and (max-width: 767px) {
  .page_contents__title_02 {
    position: relative;
    width: 100%;
    height: 300px;
    background-color: #E4BE7B;
  }
}

@media screen and (min-width: 1024px) {
  .page_contents__title_02:after {
    position: absolute;
    content: '';
    width: 100%;
    height: 40px;
    left: 0;
    bottom: 0;
    z-index: 10;
    background: url(../img/contents_backimg01.svg) repeat-x center bottom -10px;
    background-size: 30px;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .page_contents__title_02:after {
    position: absolute;
    content: '';
    width: 100%;
    height: 40px;
    left: 0;
    bottom: 0;
    z-index: 10;
    background: url(../img/contents_backimg01.svg) repeat-x center bottom -10px;
    background-size: 30px;
  }
}

@media screen and (max-width: 767px) {
  .page_contents__title_02:after {
    position: absolute;
    content: '';
    width: 100%;
    height: 40px;
    left: 0;
    bottom: 0;
    z-index: 10;
    background: url(../img/contents_backimg01.svg) repeat-x center bottom -10px;
    background-size: 30px;
  }
}

@media screen and (min-width: 1024px) {
  .page_contents__title_02_02 {
    position: absolute;
    width: 60%;
    top: 47%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
  }
  .page_contents__title_02_02 h2 {
    text-align: center;
    font-size: 3.6rem;
    line-height: 1.0;
    color: #fff;
    font-weight: 600;
    letter-spacing: 0.075em;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .page_contents__title_02_02 {
    position: absolute;
    width: 80%;
    top: 47%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
  }
  .page_contents__title_02_02 h2 {
    text-align: center;
    font-size: 3rem;
    line-height: 1.0;
    color: #fff;
    font-weight: 600;
    letter-spacing: 0.075em;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
  }
}

@media screen and (max-width: 767px) {
  .page_contents__title_02_02 {
    position: absolute;
    width: 90%;
    top: 45%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
  }
  .page_contents__title_02_02 h2 {
    text-align: center;
    font-size: 2.4rem;
    line-height: 1.0;
    color: #fff;
    font-weight: 600;
    letter-spacing: 0.075em;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
  }
}

/* ########## page_contents__title_02 ########## */
@media screen and (min-width: 1024px) {
  .philosophy_title {
    background: url(../../img/philosophy_img/philosophy_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .philosophy_title {
    background: url(../../img/philosophy_img/philosophy_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 767px) {
  .philosophy_title {
    background: url(../../img/philosophy_img/sp/sp_philosophy_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (min-width: 1024px) {
  .communication_title {
    background: url(../../img/philosophy_img/communication_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .communication_title {
    background: url(../../img/philosophy_img/communication_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 767px) {
  .communication_title {
    background: url(../../img/philosophy_img/sp/sp_communication_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (min-width: 1024px) {
  .food_title {
    background: url(../../img/philosophy_img/food_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .food_title {
    background: url(../../img/philosophy_img/food_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 767px) {
  .food_title {
    background: url(../../img/philosophy_img/sp/sp_food_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (min-width: 1024px) {
  .english_title {
    background: url(../../img/philosophy_img/english_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .english_title {
    background: url(../../img/philosophy_img/english_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 767px) {
  .english_title {
    background: url(../../img/philosophy_img/sp/sp_english_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (min-width: 1024px) {
  .oneday_title {
    background: url(../../img/oneday_img/oneday_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .oneday_title {
    background: url(../../img/oneday_img/oneday_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 767px) {
  .oneday_title {
    background: url(../../img/oneday_img/sp/sp_oneday_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (min-width: 1024px) {
  .event_title {
    background: url(../../img/event_img/event_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .event_title {
    background: url(../../img/event_img/event_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 767px) {
  .event_title {
    background: url(../../img/event_img/sp/sp_event_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (min-width: 1024px) {
  .news_title {
    background: url(../../img/news_img/news_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .news_title {
    background: url(../../img/news_img/news_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 767px) {
  .news_title {
    background: url(../../img/news_img/sp/sp_news_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (min-width: 1024px) {
  .blog_title {
    background: url(../../img/blog_img/blog_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .blog_title {
    background: url(../../img/blog_img/blog_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 767px) {
  .blog_title {
    background: url(../../img/blog_img/sp/sp_blog_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (min-width: 1024px) {
  .staff_title {
    background: url(../../img/staff_img/staff_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .staff_title {
    background: url(../../img/staff_img/staff_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 767px) {
  .staff_title {
    background: url(../../img/staff_img/sp/sp_staff_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (min-width: 1024px) {
  .about_title {
    background: url(../../img/about_img/about_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .about_title {
    background: url(../../img/about_img/about_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 767px) {
  .about_title {
    background: url(../../img/about_img/sp/sp_about_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (min-width: 1024px) {
  .charm_title {
    background: url(../../img/charm_img/charm_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .charm_title {
    background: url(../../img/charm_img/charm_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 767px) {
  .charm_title {
    background: url(../../img/charm_img/sp/sp_charm_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (min-width: 1024px) {
  .message_title {
    background: url(../../img/message_img/message_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .message_title {
    background: url(../../img/message_img/message_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 767px) {
  .message_title {
    background: url(../../img/message_img/sp/sp_message_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (min-width: 1024px) {
  .information_title {
    background: url(../../img/information_img/information_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .information_title {
    background: url(../../img/information_img/information_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 767px) {
  .information_title {
    background: url(../../img/information_img/sp/sp_information_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (min-width: 1024px) {
  .facility_title {
    background: url(../../img/facility_img/facility_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .facility_title {
    background: url(../../img/facility_img/facility_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 767px) {
  .facility_title {
    background: url(../../img/facility_img/sp/sp_facility_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (min-width: 1024px) {
  .contact_title {
    background: url(../../img/contact_img/contact_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .contact_title {
    background: url(../../img/contact_img/contact_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 767px) {
  .contact_title {
    background: url(../../img/contact_img/sp/sp_contact_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (min-width: 1024px) {
  .default_title {
    background: url(../img/default_title_backimg.svg) repeat center center;
    background-size: 400px;
    background-color: #E4BE7B;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .default_title {
    background: url(../img/default_title_backimg.svg) repeat center center;
    background-size: 360px;
    background-color: #E4BE7B;
  }
}

@media screen and (max-width: 767px) {
  .default_title {
    background: url(../img/default_title_backimg.svg) repeat center center;
    background-size: 250px;
    background-color: #E4BE7B;
  }
}

/* ########## page_contents ########## */
@media screen and (min-width: 1024px) {
  .page_contents {
    position: relative;
    width: 100%;
    min-width: 1070px;
    padding-bottom: 140px;
    /* ##### pc page_contents__staff_archive ##### */
    /* ##### pc page_contents__staff_archive ##### */
    /* ##### pc page_contents__faq_archive ##### */
    /* ##### pc page_contents__faq_archive ##### */
    /* ##### pc page_contents__archive ##### */
    /* ##### pc page_contents__archive ##### */
    /* ##### pc page_contents__block ##### */
    /* pc 2c */
    /* pc 2c */
    /* pc 3c */
    /* pc 3c */
    /* ##### pc page_contents__block ##### */
    /* ##### pc page_contents__desc ##### */
    /* ##### pc page_contents__desc ##### */
    /* ##### pc page_contents__desc02 ##### */
    /* ##### pc page_contents__desc02 ##### */
    /* ##### pc page_contents__desc03 ##### */
    /* ##### pc page_contents__desc03 ##### */
    /* ##### pc page_contents__contact ##### */
    /* ##### pc page_contents__contact ##### */
    /* ##### pc page_contents__nav ##### */
    /* ##### pc page_contents__nav ##### */
  }
  .page_contents__title_popup {
    position: absolute;
    width: 150px;
    bottom: 20px;
    right: 20px;
    z-index: 60;
  }
  .page_contents__title_popup img {
    width: 100%;
  }
  .page_contents__title_obj {
    position: absolute;
    width: 120px;
    bottom: -1px;
    right: 0;
    z-index: 50;
  }
  .page_contents__title_obj img {
    width: 100%;
  }
  .page_contents__staff_archive {
    position: relative;
    width: 92%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 auto;
    padding: 80px 0 0;
  }
  .page_contents__staff_archive_list {
    position: relative;
    width: 19%;
    margin: 0 1.25% 30px 0;
  }
  .page_contents__staff_archive_list:nth-of-type(5n) {
    margin-right: 0;
  }
  .page_contents__staff_archive_list_thumb {
    position: relative;
    width: 100%;
  }
  .page_contents__staff_archive_list_thumb a {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
  }
  .page_contents__staff_archive_list_thumb img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .page_contents__staff_archive_list_thumb .caption {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    font-size: 1.3rem;
    color: #fff;
    letter-spacing: 0.1em;
  }
  .page_contents__staff_archive_list_thumb .mask {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    background-color: rgba(255, 255, 255, 0.4);
    -webkit-transition: all 0.6s ease;
    transition: all 0.6s ease;
  }
  .page_contents__staff_archive_list_thumb:hover .mask {
    opacity: 1;
    /* マスクを表示する */
  }
  .page_contents__staff_archive_list_desc {
    width: 100%;
    padding: 20px 0 35px;
  }
  .page_contents__staff_archive_list_desc h3 {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #333;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    line-height: 1.0;
  }
  .page_contents__staff_archive_list_desc h3 img {
    width: 18px;
    padding-right: 5px;
  }
  .page_contents__staff_archive_list_desc p {
    text-align: center;
    font-size: 1.3rem;
    letter-spacing: 0.1em;
    margin-bottom: 6px;
  }
  .page_contents__faq_archive {
    position: relative;
    width: 80%;
    margin: 0 auto;
    padding: 80px 0 0;
  }
  .page_contents__faq_archive_list {
    position: relative;
    width: 100%;
    height: 66px;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    background: url(../img/list_mk001.svg) no-repeat right 17px center;
    background-size: 10px;
    background-color: #fff;
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
    border-radius: 36px;
    -webkit-border-radius: 36px;
    -moz-border-radius: 36px;
    margin-bottom: 30px;
  }
  .page_contents__faq_archive_list h4 {
    color: #fff;
    font-size: 2.4rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 1.0;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100px;
    height: 66px;
    background-color: #83B2A6;
    border-radius: 36px 0 0 36px;
    -webkit-border-radius: 36px 0 0 36px;
    -moz-border-radius: 36px 0 0 36px;
    padding-left: 15px;
  }
  .page_contents__faq_archive_list_desc {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 66px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0 40px 0 35px;
  }
  .page_contents__faq_archive_list_desc h3 {
    color: #333;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    line-height: 1.6;
  }
  .page_contents__archive {
    position: relative;
    width: 92%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 auto;
    padding: 80px 0 0;
  }
  .page_contents__archive_list {
    position: relative;
    width: 23.5%;
    background-color: #F9F4EA;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    margin: 0 2% 30px 0;
  }
  .page_contents__archive_list:nth-of-type(4n) {
    margin-right: 0;
  }
  .page_contents__archive_list_thumb {
    position: relative;
    width: 100%;
  }
  .page_contents__archive_list_thumb a {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
    border-radius: 20px 20px 0 0;
    -webkit-border-radius: 20px 20px 0 0;
    -moz-border-radius: 20px 20px 0 0;
  }
  .page_contents__archive_list_thumb img {
    width: 100%;
    height: 185px;
    -o-object-fit: cover;
       object-fit: cover;
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
  }
  .page_contents__archive_list_thumb:hover img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  .page_contents__archive_list_thumb .caption {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    font-size: 1.3rem;
    color: #fff;
    letter-spacing: 0.1em;
  }
  .page_contents__archive_list_thumb .mask {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    background-color: rgba(0, 0, 0, 0.4);
    -webkit-transition: all 0.6s ease;
    transition: all 0.6s ease;
  }
  .page_contents__archive_list_thumb:hover .mask {
    opacity: 1;
    /* マスクを表示する */
  }
  .page_contents__archive_list_desc {
    width: 100%;
    padding: 20px 30px 35px;
  }
  .page_contents__archive_list_desc h3 {
    height: 70px;
    color: #333;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    background: url(../img/title_icon01.svg) no-repeat 0 7px;
    background-size: 12px;
    padding-left: 16px;
    margin-bottom: 15px;
  }
  .page_contents__archive_list_desc h3 a, .page_contents__archive_list_desc h3 a:link a:visited {
    color: #333;
  }
  .page_contents__archive_list_desc h3 a:hover {
    color: #DB887F;
  }
  .page_contents__archive_list_desc p {
    font-size: 1.5rem;
    line-height: 1.8;
  }
  .page_contents__archive_list_desc ul {
    position: absolute;
    background-color: #83B2A6;
    width: 60%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    bottom: -14px;
    right: -15px;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    padding: 10px 20px;
  }
  .page_contents__archive_list_desc ul li {
    color: #fff;
    line-height: 1.0;
    font-size: 1.2rem;
  }
  .page_contents__archive_list_desc ul li img {
    width: 16px;
    padding-right: 5px;
  }
  .page_contents__archive_list_none {
    position: relative;
    width: 100%;
    background-color: #F9F4EA;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    padding: 40px 0;
    border: 1px dotted #f2ead9;
  }
  .page_contents__archive_list_none p {
    text-align: center;
    font-size: 1.5rem;
    line-height: 1.8;
  }
  .page_contents__block_01 {
    position: relative;
    width: 100%;
    padding-top: 80px;
  }
  .page_contents__block_02 {
    position: relative;
    width: 92%;
    margin: 0 auto;
    padding-top: 80px;
  }
  .page_contents__block_03 {
    position: relative;
    width: 80%;
    margin: 0 auto;
    padding-top: 80px;
  }
  .page_contents__2c_block01 {
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .page_contents__2c_block01_left {
    position: relative;
    width: 50%;
  }
  .page_contents__2c_block01_left p {
    width: 100%;
  }
  .page_contents__2c_block01_left p img {
    width: 100%;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
  }
  .page_contents__2c_block01_right {
    position: relative;
    width: 50%;
    padding-left: 40px;
  }
  .page_contents__2c_block01_right h3 {
    font-size: 2.4rem;
    line-height: 1.5;
    color: #333;
    font-weight: 500;
    letter-spacing: 0.075em;
  }
  .page_contents__2c_block01_right p {
    font-size: 1.5rem;
    line-height: 1.8;
    margin-top: 30px;
  }
  .page_contents__2c_block02 {
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .page_contents__2c_block02_left {
    position: relative;
    width: 50%;
  }
  .page_contents__2c_block02_left p {
    width: 100%;
  }
  .page_contents__2c_block02_left p img {
    width: 100%;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
  }
  .page_contents__2c_block02_right {
    position: relative;
    width: 50%;
    padding-left: 40px;
  }
  .page_contents__2c_block02_right h3 {
    font-size: 2.4rem;
    line-height: 1.5;
    color: #333;
    font-weight: 500;
    letter-spacing: 0.075em;
  }
  .page_contents__2c_block02_right p {
    font-size: 1.5rem;
    line-height: 1.8;
    margin-top: 30px;
  }
  .page_contents__2c_block03 {
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-flow: row-reverse;
            flex-flow: row-reverse;
  }
  .page_contents__2c_block03_left {
    position: relative;
    width: 50%;
  }
  .page_contents__2c_block03_left p {
    width: 100%;
  }
  .page_contents__2c_block03_left p img {
    width: 100%;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
  }
  .page_contents__2c_block03_right {
    position: relative;
    width: 50%;
    padding-right: 40px;
  }
  .page_contents__2c_block03_right h3 {
    font-size: 2.4rem;
    line-height: 1.5;
    color: #333;
    font-weight: 500;
    letter-spacing: 0.075em;
  }
  .page_contents__2c_block03_right p {
    font-size: 1.5rem;
    line-height: 1.8;
    margin-top: 30px;
  }
  .page_contents__2c_block04 {
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-flow: row-reverse;
            flex-flow: row-reverse;
  }
  .page_contents__2c_block04_left {
    position: relative;
    width: 50%;
  }
  .page_contents__2c_block04_left p {
    width: 100%;
  }
  .page_contents__2c_block04_left p img {
    width: 100%;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
  }
  .page_contents__2c_block04_right {
    position: relative;
    width: 50%;
    padding-right: 40px;
  }
  .page_contents__2c_block04_right h3 {
    font-size: 2.4rem;
    line-height: 1.5;
    color: #333;
    font-weight: 500;
    letter-spacing: 0.075em;
  }
  .page_contents__2c_block04_right p {
    font-size: 1.5rem;
    line-height: 1.8;
    margin-top: 30px;
  }
  .page_contents__3c_block01 {
    position: relative;
    width: 100%;
  }
  .page_contents__3c_block01_02 {
    position: relative;
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .page_contents__3c_block01_list {
    position: relative;
    width: 32%;
    background-color: #F9F4EA;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    padding: 40px;
  }
  .page_contents__3c_block01_list_thumb {
    position: relative;
    width: 100%;
  }
  .page_contents__3c_block01_list_thumb p {
    width: 60%;
    margin: 0 auto;
  }
  .page_contents__3c_block01_list_thumb p img {
    width: 100%;
  }
  .page_contents__3c_block01_list_desc {
    position: relative;
    width: 100%;
    padding-top: 20px;
  }
  .page_contents__3c_block01_list_desc h3 {
    color: #333;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    background: url(../img/title_icon01.svg) no-repeat 0 7px;
    background-size: 12px;
    padding-left: 16px;
  }
  .page_contents__3c_block01_list_desc p {
    font-size: 1.3rem;
    line-height: 1.8;
    margin-top: 20px;
  }
  .page_contents__desc {
    position: relative;
    width: 100%;
    background-color: #F9F4EA;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    padding: 35px 60px 60px;
  }
  .page_contents__desc h3 {
    text-align: center;
    color: #333;
    font-size: 2.4rem;
    line-height: 1.6;
    letter-spacing: 0.075em;
    font-weight: 500;
    margin-top: 25px;
  }
  .page_contents__desc p {
    font-size: 1.5rem;
    line-height: 1.8;
    margin-top: 25px;
  }
  .page_contents__desc02 {
    position: relative;
    width: 100%;
    background-color: #fff;
    border-radius: 16px;
    -webkit-border-radius: 16px;
    -moz-border-radius: 16px;
    padding: 35px 40px 35px;
    border: 1px dotted #f2ead9;
    margin-top: 25px;
  }
  .page_contents__desc02 h4 {
    text-align: center;
    color: #333;
    font-size: 2.4rem;
    line-height: 1.6;
    letter-spacing: 0.075em;
    font-weight: 500;
    margin-bottom: 10px !important;
  }
  .page_contents__desc02 h5 {
    text-align: center;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 4.6rem;
    letter-spacing: 0.075em;
    line-height: 1.0;
    font-weight: 700;
  }
  .page_contents__desc02 h5 img {
    width: 60px;
    padding-right: 14px;
  }
  .page_contents__desc03 {
    position: relative;
    width: 100%;
    background-color: #fff;
    border-radius: 16px;
    -webkit-border-radius: 16px;
    -moz-border-radius: 16px;
    padding: 35px 40px 35px;
    border: 1px dotted #f2ead9;
    margin-top: 25px;
    margin-bottom: 40px;
  }
  .page_contents__desc03 h4 {
    text-align: center;
    color: #333;
    font-size: 2.4rem;
    line-height: 1.6;
    letter-spacing: 0.075em;
    font-weight: 500;
    margin-bottom: 10px !important;
  }
  .page_contents__desc03 h5 {
    text-align: center;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 4.6rem;
    letter-spacing: 0.075em;
    line-height: 1.0;
    font-weight: 700;
  }
  .page_contents__desc03 h5 img {
    width: 60px;
    padding-right: 14px;
  }
  .page_contents__contact {
    position: relative;
    width: 100%;
    padding-top: 60px;
  }
  .page_contents__contact_form {
    position: relative;
    width: 80%;
    margin: 0 auto;
  }
  .page_contents__contact_form dl {
    font-size: 1.5rem;
    line-height: 1.1;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    border-top: 3px dotted #F4E098;
    padding: 25px 0 25px 5px;
  }
  .page_contents__contact_form dl dt {
    font-weight: 500;
    width: 260px;
  }
  .page_contents__contact_form dl dd {
    position: relative;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    line-height: 1.8;
  }
  .page_contents__contact_form dl dd span.mwform-checkbox-field {
    display: block;
  }
  .page_contents__contact_form dl dd span.mwform-radio-field {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .page_contents__contact_form dl dd .horizontal-item + .horizontal-item {
    margin-left: 0px !important;
  }
  .page_contents__contact_form dl dd select {
    position: relative;
    font-size: 1.6rem;
    color: #333;
    display: inline;
    border: none;
    background: transparent;
    cursor: pointer;
    margin-right: 5px;
    font-family: 'brandon-grotesque', 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  }
  .page_contents__contact_form dl dd .select {
    position: relative;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 100px;
    background: transparent;
    z-index: 1;
    padding: 10px 15px;
    border: 1px solid #ddd;
    border-radius: 28px;
    -webkit-border-radius: 28px;
    -moz-border-radius: 28px;
    background: url(../img/list_mk005.svg) no-repeat right 12px center;
    background-size: 10px;
    margin-left: 6px;
  }
  .page_contents__contact_form dl dd .select:first-of-type {
    margin-left: 0;
  }
  .page_contents__contact_form dl dd select::-ms-expand {
    display: none;
  }
  .page_contents__contact_form dl dd .error {
    font-size: 1.2rem !important;
    font-weight: 500 !important;
    color: #DB887F !important;
    display: block !important;
    padding-top: 5px !important;
  }
  .page_contents__contact_form dl input.contact_input01 {
    font-size: 1.6rem;
    color: #333;
    font-family: 'brandon-grotesque', 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    border: 1px solid #ddd;
    padding: 10px;
    width: 60%;
    border-radius: 28px;
    -webkit-border-radius: 28px;
    -moz-border-radius: 28px;
  }
  .page_contents__contact_form dl input.contact_input02 {
    font-size: 1.6rem;
    color: #333;
    font-family: 'brandon-grotesque', 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    border: 1px solid #ddd;
    padding: 10px;
    width: 100%;
    border-radius: 28px;
    -webkit-border-radius: 28px;
    -moz-border-radius: 28px;
  }
  .page_contents__contact_form dl input.contact_input03 {
    font-size: 1.6rem;
    color: #333;
    font-family: 'brandon-grotesque', 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    border: 1px solid #ddd;
    padding: 10px;
    width: 20% !important;
    border-radius: 28px;
    -webkit-border-radius: 28px;
    -moz-border-radius: 28px;
  }
  .page_contents__contact_form dl textarea {
    font-size: 1.6rem;
    color: #333;
    font-family: 'brandon-grotesque', 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    border: 1px solid #ddd;
    padding: 10px;
    width: 100%;
    height: 200px;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
  }
  .page_contents__contact_form01 {
    width: 100%;
    border-bottom: 3px dotted #F4E098;
    margin-bottom: 40px;
  }
  .page_contents__contact_form02 {
    width: 100%;
  }
  .page_contents__contact_form02 h4 {
    text-align: center;
    color: #333;
    font-size: 2.4rem;
    line-height: 1.6;
    letter-spacing: 0.075em;
    font-weight: 500;
    margin-bottom: 20px;
  }
  .page_contents__contact_form_btn {
    position: relative;
    width: 80%;
    margin: 0 auto;
    border-top: 3px dotted #F4E098;
    padding-top: 40px;
  }
  .page_contents__contact_form_btn h6 {
    margin-bottom: 20px;
  }
  .page_contents__contact_form_btn h6 button.form_btn_style {
    cursor: pointer;
    font-family: 'brandon-grotesque', 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    text-align: center;
    width: 40%;
    margin: 40px auto 0px;
    display: block !important;
    color: #fff;
    font-size: 2rem;
    font-weight: 500;
    line-height: 1.0;
    padding: 22px 0px;
    margin: 0 auto;
    background: url(../img/list_mk002.svg) no-repeat right 15px center;
    background-size: 10px 10px;
    background-color: #DB887F;
    letter-spacing: 0.1em;
    -webkit-transition: all .3s;
    transition: all .3s;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    border: none !important;
  }
  .page_contents__contact_form_btn h6 button.form_btn_style:hover {
    color: #fff;
    background: url(../img/list_mk002.svg) no-repeat right 10px center;
    background-size: 10px 10px;
    background-color: #C66D66;
    border: none !important;
  }
  .page_contents__contact_form_btn h6 button.form_btn_style02 {
    cursor: pointer;
    font-family: 'brandon-grotesque', 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    text-align: center;
    width: 40%;
    margin: 40px auto 0px;
    display: block !important;
    color: #fff;
    font-size: 2rem;
    font-weight: 500;
    line-height: 1.0;
    padding: 22px 0px;
    margin: 0 auto;
    background: url(../img/list_mk004.svg) no-repeat left 15px center;
    background-size: 10px 10px;
    background-color: #999;
    letter-spacing: 0.1em;
    -webkit-transition: all .3s;
    transition: all .3s;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    border: none !important;
  }
  .page_contents__contact_form_btn h6 button.form_btn_style02:hover {
    color: #fff;
    background: url(../img/list_mk004.svg) no-repeat left 10px center;
    background-size: 10px 10px;
    background-color: #666;
    border: none !important;
  }
  .page_contents__contact_form_complete {
    font-size: 1.5rem;
    line-height: 1.8;
    width: 80%;
    margin: 40px auto 0;
    background-color: #fff;
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
    padding: 60px;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
  }
  .page_contents__contact_form_complete h3 {
    width: 100%;
    color: #83B2A6;
    font-size: 2.4rem;
    letter-spacing: 0.075em;
    font-weight: 500;
    text-align: center;
    margin-bottom: 20px;
  }
  .page_contents__contact_form_complete h3 br {
    display: none;
  }
  .page_contents__contact_form_complete p {
    width: 100%;
    margin-bottom: 30px;
  }
  .page_contents__contact_form_complete p:last-child {
    width: 100%;
    margin-bottom: 0px !important;
  }
  .page_contents__nav {
    position: relative;
    width: 92%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 0 auto;
  }
  .page_contents__nav_list {
    width: 24%;
  }
  .page_contents__nav_list a, .page_contents__nav_list a:link a:visited {
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 20px;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    background: url(../img/list_mk001.svg) no-repeat right 7px center;
    background-size: 10px;
    background-color: #F9F4EA;
    border: 1px dotted #f2ead9;
  }
  .page_contents__nav_list a:hover {
    background-color: #f2ead9;
  }
  .page_contents__nav_list_thumb {
    position: relative;
    width: 45%;
    z-index: 10;
    background-color: #fff;
    overflow: hidden;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
  }
  .page_contents__nav_list_thumb img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
  }
  .page_contents__nav_list_thumb:hover img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  .page_contents__nav_list_thumb .caption {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    font-size: 1rem;
    color: #fff;
    letter-spacing: 0.05em;
  }
  .page_contents__nav_list_thumb .mask {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    background-color: rgba(0, 0, 0, 0.5);
    -webkit-transition: all 0.6s ease;
    transition: all 0.6s ease;
  }
  .page_contents__nav_list_thumb:hover .mask {
    opacity: 1;
    /* マスクを表示する */
  }
  .page_contents__nav_list_desc {
    width: 55%;
    padding-left: 15px;
  }
  .page_contents__nav_list_desc h3 {
    font-size: 1.3rem;
    font-weight: 500;
    letter-spacing: 0.075em;
    line-height: 1.5;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .page_contents {
    position: relative;
    width: 100%;
    padding-bottom: 120px;
    /* ##### tab page_contents__archive ##### */
    /* ##### tab page_contents__archive ##### */
    /* ##### tab page_contents__staff_archive ##### */
    /* ##### tab page_contents__staff_archive ##### */
    /* ##### tab page_contents__faq_archive ##### */
    /* ##### tab page_contents__faq_archive ##### */
    /* ##### tab page_contents__block ##### */
    /* tab 2c */
    /* tab 2c */
    /* tab 3c */
    /* tab 3c */
    /* ##### tab page_contents__block ##### */
    /* ##### tab page_contents__desc ##### */
    /* ##### tab page_contents__desc ##### */
    /* ##### tab page_contents__desc02 ##### */
    /* ##### tab page_contents__desc02 ##### */
    /* ##### tab page_contents__desc03 ##### */
    /* ##### tab page_contents__desc03 ##### */
    /* ##### tab page_contents__contact ##### */
    /* ##### tab page_contents__contact ##### */
    /* ##### tab page_contents__nav ##### */
    /* ##### tab page_contents__nav ##### */
  }
  .page_contents__title_popup {
    position: absolute;
    width: 140px;
    bottom: 20px;
    right: 20px;
    z-index: 60;
  }
  .page_contents__title_popup img {
    width: 100%;
  }
  .page_contents__title_obj {
    position: absolute;
    width: 100px;
    bottom: -1px;
    right: 0;
    z-index: 50;
  }
  .page_contents__title_obj img {
    width: 100%;
  }
  .page_contents__archive {
    position: relative;
    width: 92%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 0 auto;
    padding: 80px 0 0;
  }
  .page_contents__archive_list {
    position: relative;
    width: 48.5%;
    background-color: #F9F4EA;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    margin-bottom: 30px;
  }
  .page_contents__archive_list_thumb {
    position: relative;
    width: 100%;
  }
  .page_contents__archive_list_thumb a {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
    border-radius: 20px 20px 0 0;
    -webkit-border-radius: 20px 20px 0 0;
    -moz-border-radius: 20px 20px 0 0;
  }
  .page_contents__archive_list_thumb img {
    width: 100%;
    height: 228px;
    -o-object-fit: cover;
       object-fit: cover;
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
  }
  .page_contents__archive_list_thumb:hover img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  .page_contents__archive_list_thumb .caption {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    font-size: 1.2rem;
    color: #fff;
    letter-spacing: 0.1em;
  }
  .page_contents__archive_list_thumb .mask {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    background-color: rgba(0, 0, 0, 0.4);
    -webkit-transition: all 0.6s ease;
    transition: all 0.6s ease;
  }
  .page_contents__archive_list_thumb:hover .mask {
    opacity: 1;
    /* マスクを表示する */
  }
  .page_contents__archive_list_desc {
    width: 100%;
    padding: 20px 30px 35px;
  }
  .page_contents__archive_list_desc h3 {
    height: 45px;
    color: #333;
    font-size: 1.5rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    background: url(../img/title_icon01.svg) no-repeat 0 6px;
    background-size: 12px;
    padding-left: 16px;
    margin-bottom: 10px;
  }
  .page_contents__archive_list_desc h3 a, .page_contents__archive_list_desc h3 a:link a:visited {
    color: #333;
  }
  .page_contents__archive_list_desc h3 a:hover {
    color: #DB887F;
  }
  .page_contents__archive_list_desc p {
    font-size: 1.3rem;
    line-height: 1.8;
  }
  .page_contents__archive_list_desc ul {
    position: absolute;
    background-color: #83B2A6;
    width: 42%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    bottom: -14px;
    right: -15px;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    padding: 10px 0;
  }
  .page_contents__archive_list_desc ul li {
    color: #fff;
    line-height: 1.0;
    font-size: 1.2rem;
  }
  .page_contents__archive_list_desc ul li img {
    width: 16px;
    padding-right: 5px;
  }
  .page_contents__archive_list_none {
    position: relative;
    width: 100%;
    background-color: #F9F4EA;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    padding: 40px 0;
    border: 1px dotted #f2ead9;
  }
  .page_contents__archive_list_none p {
    text-align: center;
    font-size: 1.3rem;
    line-height: 1.8;
  }
  .page_contents__staff_archive {
    position: relative;
    width: 92%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 auto;
    padding: 80px 0 110px;
  }
  .page_contents__staff_archive_list {
    position: relative;
    width: 32%;
    margin: 0 2% 30px 0;
  }
  .page_contents__staff_archive_list:nth-of-type(3n) {
    margin-right: 0;
  }
  .page_contents__staff_archive_list_thumb {
    position: relative;
    width: 100%;
  }
  .page_contents__staff_archive_list_thumb a {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
    border-radius: 20px 20px 0 0;
    -webkit-border-radius: 20px 20px 0 0;
    -moz-border-radius: 20px 20px 0 0;
  }
  .page_contents__staff_archive_list_thumb img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .page_contents__staff_archive_list_thumb .caption {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    font-size: 1.3rem;
    color: #fff;
    letter-spacing: 0.1em;
  }
  .page_contents__staff_archive_list_thumb .mask {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    background-color: rgba(255, 255, 255, 0.4);
    -webkit-transition: all 0.6s ease;
    transition: all 0.6s ease;
  }
  .page_contents__staff_archive_list_thumb:hover .mask {
    opacity: 1;
    /* マスクを表示する */
  }
  .page_contents__staff_archive_list_desc {
    width: 100%;
    padding: 20px 0 35px;
  }
  .page_contents__staff_archive_list_desc h3 {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #333;
    font-size: 1.5rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    line-height: 1.0;
  }
  .page_contents__staff_archive_list_desc h3 img {
    width: 18px;
    padding-right: 5px;
  }
  .page_contents__staff_archive_list_desc p {
    text-align: center;
    font-size: 1.3rem;
    letter-spacing: 0.1em;
    margin-bottom: 6px;
  }
  .page_contents__faq_archive {
    position: relative;
    width: 92%;
    margin: 0 auto;
    padding: 80px 0 0;
  }
  .page_contents__faq_archive_list {
    position: relative;
    width: 100%;
    height: 66px;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    background: url(../img/list_mk001.svg) no-repeat right 17px center;
    background-size: 10px;
    background-color: #fff;
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
    border-radius: 36px;
    -webkit-border-radius: 36px;
    -moz-border-radius: 36px;
    margin-bottom: 25px;
  }
  .page_contents__faq_archive_list h4 {
    color: #fff;
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 1.0;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 76px;
    height: 66px;
    background-color: #83B2A6;
    border-radius: 36px 0 0 36px;
    -webkit-border-radius: 36px 0 0 36px;
    -moz-border-radius: 36px 0 0 36px;
    padding-left: 10px;
  }
  .page_contents__faq_archive_list_desc {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 66px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0 40px 0 30px;
  }
  .page_contents__faq_archive_list_desc h3 {
    color: #333;
    font-size: 1.5rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    line-height: 1.6;
  }
  .page_contents__block_01 {
    position: relative;
    width: 100%;
    padding-top: 80px;
  }
  .page_contents__block_02 {
    position: relative;
    width: 92%;
    margin: 0 auto;
    padding-top: 80px;
  }
  .page_contents__block_03 {
    position: relative;
    width: 88%;
    margin: 0 auto;
    padding-top: 80px;
  }
  .page_contents__2c_block01 {
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .page_contents__2c_block01_left {
    position: relative;
    width: 50%;
  }
  .page_contents__2c_block01_left p {
    width: 100%;
  }
  .page_contents__2c_block01_left p img {
    width: 100%;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
  }
  .page_contents__2c_block01_right {
    position: relative;
    width: 50%;
    padding-left: 40px;
  }
  .page_contents__2c_block01_right h3 {
    font-size: 2rem;
    line-height: 1.5;
    color: #333;
    font-weight: 500;
    letter-spacing: 0.075em;
  }
  .page_contents__2c_block01_right p {
    font-size: 1.3rem;
    line-height: 1.8;
    margin-top: 30px;
  }
  .page_contents__2c_block02 {
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .page_contents__2c_block02_left {
    position: relative;
    width: 50%;
  }
  .page_contents__2c_block02_left p {
    width: 100%;
  }
  .page_contents__2c_block02_left p img {
    width: 100%;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
  }
  .page_contents__2c_block02_right {
    position: relative;
    width: 50%;
    padding-left: 40px;
  }
  .page_contents__2c_block02_right h3 {
    font-size: 2rem;
    line-height: 1.5;
    color: #333;
    font-weight: 500;
    letter-spacing: 0.075em;
  }
  .page_contents__2c_block02_right p {
    font-size: 1.3rem;
    line-height: 1.8;
    margin-top: 30px;
  }
  .page_contents__2c_block03 {
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-flow: row-reverse;
            flex-flow: row-reverse;
  }
  .page_contents__2c_block03_left {
    position: relative;
    width: 50%;
  }
  .page_contents__2c_block03_left p {
    width: 100%;
  }
  .page_contents__2c_block03_left p img {
    width: 100%;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
  }
  .page_contents__2c_block03_right {
    position: relative;
    width: 50%;
    padding-right: 40px;
  }
  .page_contents__2c_block03_right h3 {
    font-size: 2rem;
    line-height: 1.5;
    color: #333;
    font-weight: 500;
    letter-spacing: 0.075em;
  }
  .page_contents__2c_block03_right p {
    font-size: 1.3rem;
    line-height: 1.8;
    margin-top: 30px;
  }
  .page_contents__2c_block04 {
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-flow: row-reverse;
            flex-flow: row-reverse;
  }
  .page_contents__2c_block04_left {
    position: relative;
    width: 50%;
  }
  .page_contents__2c_block04_left p {
    width: 100%;
  }
  .page_contents__2c_block04_left p img {
    width: 100%;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
  }
  .page_contents__2c_block04_right {
    position: relative;
    width: 50%;
    padding-right: 40px;
  }
  .page_contents__2c_block04_right h3 {
    font-size: 2rem;
    line-height: 1.5;
    color: #333;
    font-weight: 500;
    letter-spacing: 0.075em;
  }
  .page_contents__2c_block04_right p {
    font-size: 1.3rem;
    line-height: 1.8;
    margin-top: 30px;
  }
  .page_contents__3c_block01 {
    position: relative;
    width: 100%;
  }
  .page_contents__3c_block01_02 {
    position: relative;
    width: 100%;
  }
  .page_contents__3c_block01_list {
    position: relative;
    width: 100%;
    background-color: #F9F4EA;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 40px;
    margin-bottom: 20px;
  }
  .page_contents__3c_block01_list_thumb {
    position: relative;
    width: 160px;
  }
  .page_contents__3c_block01_list_thumb p {
    width: 100%;
  }
  .page_contents__3c_block01_list_thumb p img {
    width: 100%;
  }
  .page_contents__3c_block01_list_desc {
    position: relative;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    padding-left: 25px;
  }
  .page_contents__3c_block01_list_desc h3 {
    color: #333;
    font-size: 1.5rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    background: url(../img/title_icon01.svg) no-repeat 0 7px;
    background-size: 12px;
    padding-left: 16px;
  }
  .page_contents__3c_block01_list_desc p {
    font-size: 1.2rem;
    line-height: 1.8;
    margin-top: 20px;
  }
  .page_contents__desc {
    position: relative;
    width: 100%;
    background-color: #F9F4EA;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    padding: 15px 40px 40px;
  }
  .page_contents__desc h3 {
    text-align: center;
    color: #333;
    font-size: 2rem;
    line-height: 1.6;
    letter-spacing: 0.075em;
    font-weight: 500;
    margin-top: 25px;
  }
  .page_contents__desc p {
    font-size: 1.3rem;
    line-height: 1.8;
    margin-top: 25px;
  }
  .page_contents__desc02 {
    position: relative;
    width: 100%;
    background-color: #fff;
    border-radius: 16px;
    -webkit-border-radius: 16px;
    -moz-border-radius: 16px;
    padding: 30px 30px 30px;
    border: 1px dotted #f2ead9;
    margin-top: 25px;
  }
  .page_contents__desc02 h4 {
    text-align: center;
    color: #333;
    font-size: 2rem;
    line-height: 1.6;
    letter-spacing: 0.075em;
    font-weight: 500;
    margin-bottom: 10px !important;
  }
  .page_contents__desc02 h5 {
    text-align: center;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 4.0rem;
    letter-spacing: 0.075em;
    line-height: 1.0;
    font-weight: 700;
  }
  .page_contents__desc02 h5 img {
    width: 54px;
    padding-right: 12px;
  }
  .page_contents__desc03 {
    position: relative;
    width: 100%;
    background-color: #fff;
    border-radius: 16px;
    -webkit-border-radius: 16px;
    -moz-border-radius: 16px;
    padding: 30px 30px 30px;
    border: 1px dotted #f2ead9;
    margin-top: 25px;
    margin-bottom: 30px;
  }
  .page_contents__desc03 h4 {
    text-align: center;
    color: #333;
    font-size: 2rem;
    line-height: 1.6;
    letter-spacing: 0.075em;
    font-weight: 500;
    margin-bottom: 10px !important;
  }
  .page_contents__desc03 h5 {
    text-align: center;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 4.0rem;
    letter-spacing: 0.075em;
    line-height: 1.0;
    font-weight: 700;
  }
  .page_contents__desc03 h5 img {
    width: 54px;
    padding-right: 12px;
  }
  .page_contents__contact {
    position: relative;
    width: 100%;
    padding-top: 60px;
  }
  .page_contents__contact_form {
    position: relative;
    width: 88%;
    margin: 0 auto;
  }
  .page_contents__contact_form dl {
    font-size: 1.3rem;
    line-height: 1.1;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    border-top: 3px dotted #F4E098;
    padding: 25px 0 25px 5px;
  }
  .page_contents__contact_form dl dt {
    font-weight: 500;
    width: 220px;
  }
  .page_contents__contact_form dl dd {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    line-height: 1.8;
  }
  .page_contents__contact_form dl dd span.mwform-checkbox-field {
    display: block;
  }
  .page_contents__contact_form dl dd span.mwform-radio-field {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .page_contents__contact_form dl dd .horizontal-item + .horizontal-item {
    margin-left: 0px !important;
  }
  .page_contents__contact_form dl dd select {
    position: relative;
    font-size: 1.5rem;
    color: #333;
    display: inline;
    border: none;
    background: transparent;
    cursor: pointer;
    margin-right: 2px;
    font-family: 'brandon-grotesque', 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  }
  .page_contents__contact_form dl dd .select {
    position: relative;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 120px;
    background: transparent;
    z-index: 1;
    padding: 10px 15px;
    border: 1px solid #ddd;
    border-radius: 28px;
    -webkit-border-radius: 28px;
    -moz-border-radius: 28px;
    background: url(../img/list_mk005.svg) no-repeat right 12px center;
    background-size: 10px;
    margin-left: 6px;
  }
  .page_contents__contact_form dl dd .select:first-of-type {
    margin-left: 0;
  }
  .page_contents__contact_form dl dd select::-ms-expand {
    display: none;
  }
  .page_contents__contact_form dl dd .error {
    font-size: 1.2rem !important;
    font-weight: 500 !important;
    color: #DB887F !important;
    display: block !important;
    padding-top: 5px !important;
  }
  .page_contents__contact_form dl input.contact_input01 {
    font-size: 1.5rem;
    color: #333;
    font-family: 'brandon-grotesque', 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    border: 1px solid #ddd;
    padding: 10px;
    width: 60%;
    border-radius: 28px;
    -webkit-border-radius: 28px;
    -moz-border-radius: 28px;
  }
  .page_contents__contact_form dl input.contact_input02 {
    font-size: 1.5rem;
    color: #333;
    font-family: 'brandon-grotesque', 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    border: 1px solid #ddd;
    padding: 10px;
    width: 100%;
    border-radius: 28px;
    -webkit-border-radius: 28px;
    -moz-border-radius: 28px;
  }
  .page_contents__contact_form dl input.contact_input03 {
    font-size: 1.5rem;
    color: #333;
    font-family: 'brandon-grotesque', 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    border: 1px solid #ddd;
    padding: 10px;
    width: 20% !important;
    border-radius: 28px;
    -webkit-border-radius: 28px;
    -moz-border-radius: 28px;
  }
  .page_contents__contact_form dl textarea {
    font-size: 1.5rem;
    color: #333;
    font-family: 'brandon-grotesque', 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    border: 1px solid #ddd;
    padding: 10px;
    width: 100%;
    height: 200px;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
  }
  .page_contents__contact_form01 {
    width: 100%;
    border-bottom: 3px dotted #F4E098;
    margin-bottom: 40px;
  }
  .page_contents__contact_form02 {
    width: 100%;
  }
  .page_contents__contact_form02 h4 {
    text-align: center;
    color: #333;
    font-size: 2rem;
    line-height: 1.6;
    letter-spacing: 0.075em;
    font-weight: 500;
    margin-bottom: 20px;
  }
  .page_contents__contact_form_btn {
    position: relative;
    width: 88%;
    margin: 0 auto;
    border-top: 3px dotted #F4E098;
    padding-top: 40px;
  }
  .page_contents__contact_form_btn h6 {
    margin-bottom: 20px;
  }
  .page_contents__contact_form_btn h6 button.form_btn_style {
    cursor: pointer;
    font-family: 'brandon-grotesque', 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    text-align: center;
    width: 60%;
    margin: 40px auto 0px;
    display: block !important;
    color: #fff;
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.0;
    padding: 22px 0px;
    margin: 0 auto;
    background: url(../img/list_mk002.svg) no-repeat right 15px center;
    background-size: 10px 10px;
    background-color: #DB887F;
    letter-spacing: 0.1em;
    -webkit-transition: all .3s;
    transition: all .3s;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    border: none !important;
  }
  .page_contents__contact_form_btn h6 button.form_btn_style:hover {
    color: #fff;
    background: url(../img/list_mk002.svg) no-repeat right 10px center;
    background-size: 10px 10px;
    background-color: #C66D66;
    border: none !important;
  }
  .page_contents__contact_form_btn h6 button.form_btn_style02 {
    cursor: pointer;
    font-family: 'brandon-grotesque', 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    text-align: center;
    width: 60%;
    margin: 40px auto 0px;
    display: block !important;
    color: #fff;
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.0;
    padding: 22px 0px;
    margin: 0 auto;
    background: url(../img/list_mk004.svg) no-repeat left 15px center;
    background-size: 10px 10px;
    background-color: #999;
    letter-spacing: 0.1em;
    -webkit-transition: all .3s;
    transition: all .3s;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    border: none !important;
  }
  .page_contents__contact_form_btn h6 button.form_btn_style02:hover {
    color: #fff;
    background: url(../img/list_mk004.svg) no-repeat left 10px center;
    background-size: 10px 10px;
    background-color: #666;
    border: none !important;
  }
  .page_contents__contact_form_complete {
    font-size: 1.3rem;
    line-height: 1.8;
    width: 88%;
    margin: 40px auto 0;
    background-color: #fff;
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
    padding: 60px;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
  }
  .page_contents__contact_form_complete h3 {
    width: 100%;
    color: #83B2A6;
    font-size: 2rem;
    letter-spacing: 0.075em;
    font-weight: 500;
    text-align: center;
    margin-bottom: 20px;
  }
  .page_contents__contact_form_complete h3 br {
    display: none;
  }
  .page_contents__contact_form_complete p {
    width: 100%;
    margin-bottom: 30px;
  }
  .page_contents__contact_form_complete p:last-child {
    width: 100%;
    margin-bottom: 0px !important;
  }
  .page_contents__nav {
    position: relative;
    width: 92%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 0 auto;
  }
  .page_contents__nav_list {
    width: 49%;
    margin-bottom: 15px;
  }
  .page_contents__nav_list a {
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 20px;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    background: url(../img/list_mk001.svg) no-repeat right 7px center;
    background-size: 10px;
    background-color: #F9F4EA;
    border: 1px dotted #f2ead9;
  }
  .page_contents__nav_list_thumb {
    position: relative;
    width: 45%;
    z-index: 10;
    background-color: #fff;
    overflow: hidden;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
  }
  .page_contents__nav_list_thumb img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
  }
  .page_contents__nav_list_thumb:hover img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  .page_contents__nav_list_thumb .caption {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    font-size: 1rem;
    color: #fff;
    letter-spacing: 0.05em;
  }
  .page_contents__nav_list_thumb .mask {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    background-color: rgba(0, 0, 0, 0.5);
    -webkit-transition: all 0.6s ease;
    transition: all 0.6s ease;
  }
  .page_contents__nav_list_thumb:hover .mask {
    opacity: 1;
    /* マスクを表示する */
  }
  .page_contents__nav_list_desc {
    width: 55%;
    padding-left: 15px;
  }
  .page_contents__nav_list_desc h3 {
    font-size: 1.2rem;
    font-weight: 500;
    letter-spacing: 0.075em;
    line-height: 1.5;
  }
}

@media screen and (max-width: 767px) {
  .page_contents {
    position: relative;
    padding-bottom: 100px;
    /* ##### sp page_contents__archive ##### */
    /* ##### sp page_contents__archive ##### */
    /* ##### sp page_contents__staff_archive ##### */
    /* ##### sp page_contents__staff_archive ##### */
    /* ##### sp page_contents__faq_archive ##### */
    /* ##### sp page_contents__faq_archive ##### */
    /* ##### sp page_contents__block ##### */
    /* sp 2c */
    /* sp 2c */
    /* sp 3c */
    /* sp 3c */
    /* ##### sp page_contents__block ##### */
    /* ##### sp page_contents__desc ##### */
    /* ##### sp page_contents__desc ##### */
    /* ##### sp page_contents__desc02 ##### */
    /* ##### sp page_contents__desc02 ##### */
    /* ##### sp page_contents__desc03 ##### */
    /* ##### sp page_contents__desc03 ##### */
    /* ##### sp page_contents__contact ##### */
    /* ##### sp page_contents__contact ##### */
    /* ##### sp page_contents__nav ##### */
    /* ##### sp page_contents__nav ##### */
  }
  .page_contents__title_popup {
    position: absolute;
    width: 80px;
    bottom: 10px;
    right: 6px;
    z-index: 60;
  }
  .page_contents__title_popup img {
    width: 100%;
  }
  .page_contents__title_obj {
    position: absolute;
    width: 60px;
    bottom: -1px;
    right: 0;
    z-index: 50;
  }
  .page_contents__title_obj img {
    width: 100%;
  }
  .page_contents__archive {
    position: relative;
    width: 90%;
    margin: 0 auto;
    padding-top: 80px;
  }
  .page_contents__archive_list {
    position: relative;
    width: 100%;
    background-color: #F9F4EA;
    border-radius: 18px;
    -webkit-border-radius: 18px;
    -moz-border-radius: 18px;
    margin-bottom: 30px;
  }
  .page_contents__archive_list_thumb {
    position: relative;
    width: 100%;
  }
  .page_contents__archive_list_thumb a {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
    border-radius: 18px 18px 0 0;
    -webkit-border-radius: 18px 18px 0 0;
    -moz-border-radius: 18px 18px 0 0;
  }
  .page_contents__archive_list_thumb img {
    width: 100%;
    height: 225px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .page_contents__archive_list_thumb .caption {
    display: none;
  }
  .page_contents__archive_list_thumb .mask {
    display: none;
  }
  .page_contents__archive_list_desc {
    width: 100%;
    padding: 20px 25px 30px;
  }
  .page_contents__archive_list_desc h3 {
    color: #333;
    font-size: 1.8rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    background: url(../img/title_icon01.svg) no-repeat 0 8px;
    background-size: 12px;
    padding-left: 17px;
    margin-bottom: 15px;
  }
  .page_contents__archive_list_desc h3 a {
    color: #333;
  }
  .page_contents__archive_list_desc p {
    font-size: 1.4rem;
    line-height: 1.8;
  }
  .page_contents__archive_list_desc ul {
    position: absolute;
    background-color: #83B2A6;
    width: 120px;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    bottom: -16px;
    right: -6px;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    padding: 10px 0px;
  }
  .page_contents__archive_list_desc ul li {
    color: #fff;
    line-height: 1.0;
    font-size: 1.2rem;
  }
  .page_contents__archive_list_desc ul li img {
    width: 16px;
    padding-right: 5px;
  }
  .page_contents__archive_list_none {
    position: relative;
    width: 100%;
    background-color: #F9F4EA;
    border-radius: 18px;
    -webkit-border-radius: 18px;
    -moz-border-radius: 18px;
    padding: 30px 0;
    border: 1px dotted #f2ead9;
  }
  .page_contents__archive_list_none p {
    text-align: center;
    font-size: 1.4rem;
    line-height: 1.8;
  }
  .page_contents__staff_archive {
    position: relative;
    width: 92%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 0 auto;
    padding-top: 80px;
  }
  .page_contents__staff_archive_list {
    position: relative;
    width: 48%;
    margin-bottom: 20px;
  }
  .page_contents__staff_archive_list_thumb {
    position: relative;
    width: 100%;
  }
  .page_contents__staff_archive_list_thumb a {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
  }
  .page_contents__staff_archive_list_thumb img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .page_contents__staff_archive_list_thumb .caption {
    display: none;
  }
  .page_contents__staff_archive_list_thumb .mask {
    display: none;
  }
  .page_contents__staff_archive_list_desc {
    width: 100%;
    padding-top: 15px;
  }
  .page_contents__staff_archive_list_desc h3 {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #333;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    line-height: 1.0;
  }
  .page_contents__staff_archive_list_desc h3 img {
    width: 18px;
    padding-right: 5px;
  }
  .page_contents__staff_archive_list_desc p {
    text-align: center;
    font-size: 1.2rem;
    letter-spacing: 0.1em;
    margin-bottom: 6px;
  }
  .page_contents__faq_archive {
    position: relative;
    width: 92%;
    margin: 0 auto;
    padding-top: 80px;
  }
  .page_contents__faq_archive_list {
    position: relative;
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    background: url(../img/list_mk001.svg) no-repeat right 10px center;
    background-size: 10px;
    background-color: #fff;
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
    border-radius: 18px;
    -webkit-border-radius: 18px;
    -moz-border-radius: 18px;
    margin-bottom: 20px;
  }
  .page_contents__faq_archive_list h4 {
    color: #fff;
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 1.0;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 56px;
    background-color: #83B2A6;
    border-radius: 18px 0 0 18px;
    -webkit-border-radius: 18px 0 0 18px;
    -moz-border-radius: 18px 0 0 18px;
    padding-left: 8px;
  }
  .page_contents__faq_archive_list_desc {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 15px 30px 15px 20px;
  }
  .page_contents__faq_archive_list_desc h3 {
    color: #333;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    line-height: 1.5;
  }
  .page_contents__block_01 {
    position: relative;
    width: 92%;
    padding-top: 60px;
    margin: 0 auto;
  }
  .page_contents__block_02 {
    position: relative;
    width: 92%;
    margin: 0 auto;
    padding-top: 60px;
  }
  .page_contents__block_03 {
    position: relative;
    width: 90%;
    margin: 0 auto;
    padding-top: 60px;
  }
  .page_contents__2c_block01 {
    width: 100%;
  }
  .page_contents__2c_block01_left {
    position: relative;
    width: 100%;
  }
  .page_contents__2c_block01_left p {
    width: 100%;
  }
  .page_contents__2c_block01_left p img {
    width: 100%;
    border-radius: 18px;
    -webkit-border-radius: 18px;
    -moz-border-radius: 18px;
  }
  .page_contents__2c_block01_right {
    position: relative;
    width: 100%;
  }
  .page_contents__2c_block01_right h3 {
    font-size: 2rem;
    line-height: 1.5;
    color: #333;
    font-weight: 500;
    letter-spacing: 0.075em;
  }
  .page_contents__2c_block01_right p {
    font-size: 1.4rem;
    line-height: 1.8;
    margin-top: 20px;
  }
  .page_contents__2c_block02 {
    width: 100%;
  }
  .page_contents__2c_block02_left {
    position: relative;
    width: 100%;
  }
  .page_contents__2c_block02_left p {
    width: 100%;
  }
  .page_contents__2c_block02_left p img {
    width: 100%;
    border-radius: 18px;
    -webkit-border-radius: 18px;
    -moz-border-radius: 18px;
  }
  .page_contents__2c_block02_right {
    position: relative;
    width: 100%;
  }
  .page_contents__2c_block02_right h3 {
    font-size: 2rem;
    line-height: 1.5;
    color: #333;
    font-weight: 500;
    letter-spacing: 0.075em;
  }
  .page_contents__2c_block02_right p {
    font-size: 1.4rem;
    line-height: 1.8;
    margin-top: 20px;
  }
  .page_contents__2c_block03 {
    width: 100%;
  }
  .page_contents__2c_block03_left {
    position: relative;
    width: 100%;
  }
  .page_contents__2c_block03_left p {
    width: 100%;
  }
  .page_contents__2c_block03_left p img {
    width: 100%;
    border-radius: 18px;
    -webkit-border-radius: 18px;
    -moz-border-radius: 18px;
  }
  .page_contents__2c_block03_right {
    position: relative;
    width: 100%;
  }
  .page_contents__2c_block03_right h3 {
    font-size: 2rem;
    line-height: 1.5;
    color: #333;
    font-weight: 500;
    letter-spacing: 0.075em;
  }
  .page_contents__2c_block03_right p {
    font-size: 1.4rem;
    line-height: 1.8;
    margin-top: 20px;
  }
  .page_contents__2c_block04 {
    width: 100%;
  }
  .page_contents__2c_block04_left {
    position: relative;
    width: 100%;
  }
  .page_contents__2c_block04_left p {
    width: 100%;
  }
  .page_contents__2c_block04_left p img {
    width: 100%;
    border-radius: 18px;
    -webkit-border-radius: 18px;
    -moz-border-radius: 18px;
  }
  .page_contents__2c_block04_right {
    position: relative;
    width: 100%;
  }
  .page_contents__2c_block04_right h3 {
    font-size: 2rem;
    line-height: 1.5;
    color: #333;
    font-weight: 500;
    letter-spacing: 0.075em;
  }
  .page_contents__2c_block04_right p {
    font-size: 1.4rem;
    line-height: 1.8;
    margin-top: 20px;
  }
  .page_contents__3c_block01 {
    position: relative;
    width: 100%;
  }
  .page_contents__3c_block01_02 {
    position: relative;
    width: 100%;
  }
  .page_contents__3c_block01_list {
    position: relative;
    width: 100%;
    background-color: #F9F4EA;
    border-radius: 18px;
    -webkit-border-radius: 18px;
    -moz-border-radius: 18px;
    padding: 30px;
    margin-bottom: 20px;
  }
  .page_contents__3c_block01_list_thumb {
    position: relative;
    width: 100%;
  }
  .page_contents__3c_block01_list_thumb p {
    width: 60%;
    margin: 0 auto;
  }
  .page_contents__3c_block01_list_thumb p img {
    width: 100%;
  }
  .page_contents__3c_block01_list_desc {
    position: relative;
    width: 100%;
    padding-top: 20px;
  }
  .page_contents__3c_block01_list_desc h3 {
    color: #333;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    background: url(../img/title_icon01.svg) no-repeat 0 7px;
    background-size: 12px;
    padding-left: 16px;
  }
  .page_contents__3c_block01_list_desc p {
    font-size: 1.2rem;
    line-height: 1.8;
    margin-top: 20px;
  }
  .page_contents__desc {
    position: relative;
    width: 100%;
    background-color: #F9F4EA;
    border-radius: 18px;
    -webkit-border-radius: 18px;
    -moz-border-radius: 18px;
    padding: 5px 25px 25px;
  }
  .page_contents__desc h3 {
    text-align: center;
    color: #333;
    font-size: 1.8rem;
    line-height: 1.6;
    letter-spacing: 0.075em;
    font-weight: 500;
    margin-top: 20px;
  }
  .page_contents__desc p {
    font-size: 1.4rem;
    line-height: 1.8;
    margin-top: 20px;
  }
  .page_contents__desc02 {
    position: relative;
    width: 100%;
    background-color: #fff;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    padding: 20px 0px;
    border: 1px dotted #f2ead9;
    margin-top: 20px;
  }
  .page_contents__desc02 h4 {
    text-align: center;
    color: #333;
    font-size: 1.8rem;
    line-height: 1.6;
    letter-spacing: 0.075em;
    font-weight: 500;
    margin-bottom: 5px !important;
  }
  .page_contents__desc02 h5 {
    text-align: center;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 2.8rem;
    letter-spacing: 0.05em;
    line-height: 1.0;
    font-weight: 700;
  }
  .page_contents__desc02 h5 img {
    width: 34px;
    padding-right: 8px;
  }
  .page_contents__desc03 {
    position: relative;
    width: 100%;
    background-color: #fff;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    padding: 20px 0px;
    border: 1px dotted #f2ead9;
    margin-bottom: 20px;
  }
  .page_contents__desc03 h4 {
    text-align: center;
    color: #333;
    font-size: 1.8rem;
    line-height: 1.6;
    letter-spacing: 0.075em;
    font-weight: 500;
    margin-bottom: 5px !important;
  }
  .page_contents__desc03 h5 {
    text-align: center;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 2.8rem;
    letter-spacing: 0.05em;
    line-height: 1.0;
    font-weight: 700;
  }
  .page_contents__desc03 h5 img {
    width: 34px;
    padding-right: 8px;
  }
  .page_contents__contact {
    position: relative;
    width: 100%;
    padding-top: 60px;
  }
  .page_contents__contact_form {
    position: relative;
    width: 90%;
    margin: 0 auto;
  }
  .page_contents__contact_form dl {
    font-size: 1.3rem;
    line-height: 1.1;
    border-top: 3px dotted #F4E098;
    padding: 20px 0;
  }
  .page_contents__contact_form dl dt {
    font-weight: 500;
  }
  .page_contents__contact_form dl dd {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    line-height: 1.8;
    margin-top: 10px;
  }
  .page_contents__contact_form dl dd span.mwform-checkbox-field {
    display: block;
  }
  .page_contents__contact_form dl dd span.mwform-radio-field {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .page_contents__contact_form dl dd .horizontal-item + .horizontal-item {
    margin-left: 0px !important;
  }
  .page_contents__contact_form dl dd select {
    position: relative;
    font-size: 1.6rem;
    color: #333;
    display: inline;
    border: none;
    background: transparent;
    cursor: pointer;
    margin-right: 1px;
    font-family: 'brandon-grotesque', 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  }
  .page_contents__contact_form dl dd .select {
    position: relative;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 70px;
    background: transparent;
    z-index: 1;
    padding: 10px 15px;
    border: 1px solid #ddd;
    border-radius: 28px;
    -webkit-border-radius: 28px;
    -moz-border-radius: 28px;
    background: url(../img/list_mk005.svg) no-repeat right 10px center;
    background-size: 8px;
    margin-left: 5px;
  }
  .page_contents__contact_form dl dd .select:first-of-type {
    margin-left: 0;
  }
  .page_contents__contact_form dl dd select::-ms-expand {
    display: none;
  }
  .page_contents__contact_form dl dd .error {
    font-size: 1.2rem !important;
    font-weight: 500 !important;
    color: #DB887F !important;
    display: block !important;
    padding-top: 5px !important;
  }
  .page_contents__contact_form dl input.contact_input01 {
    font-size: 1.6rem;
    color: #333;
    font-family: 'brandon-grotesque', 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    border: 1px solid #ddd;
    padding: 10px;
    width: 100%;
    border-radius: 28px;
    -webkit-border-radius: 28px;
    -moz-border-radius: 28px;
  }
  .page_contents__contact_form dl input.contact_input02 {
    font-size: 1.6rem;
    color: #333;
    font-family: 'brandon-grotesque', 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    border: 1px solid #ddd;
    padding: 10px;
    width: 100%;
    border-radius: 28px;
    -webkit-border-radius: 28px;
    -moz-border-radius: 28px;
  }
  .page_contents__contact_form dl input.contact_input03 {
    font-size: 1.6rem;
    color: #333;
    font-family: 'brandon-grotesque', 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    border: 1px solid #ddd;
    padding: 10px;
    width: 29% !important;
    border-radius: 28px;
    -webkit-border-radius: 28px;
    -moz-border-radius: 28px;
  }
  .page_contents__contact_form dl textarea {
    font-size: 1.6rem;
    color: #333;
    font-family: 'brandon-grotesque', 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    border: 1px solid #ddd;
    padding: 10px;
    width: 100%;
    height: 200px;
    border-radius: 18px;
    -webkit-border-radius: 18px;
    -moz-border-radius: 18px;
  }
  .page_contents__contact_form01 {
    width: 100%;
    border-bottom: 3px dotted #F4E098;
    margin-bottom: 30px;
  }
  .page_contents__contact_form02 {
    width: 100%;
  }
  .page_contents__contact_form02 h4 {
    text-align: center;
    color: #333;
    font-size: 1.8rem;
    line-height: 1.6;
    letter-spacing: 0.075em;
    font-weight: 500;
    margin-bottom: 10px;
  }
  .page_contents__contact_form_btn {
    position: relative;
    width: 88%;
    margin: 0 auto;
    border-top: 3px dotted #F4E098;
    padding-top: 30px;
  }
  .page_contents__contact_form_btn h6 {
    margin-bottom: 20px;
  }
  .page_contents__contact_form_btn h6 button.form_btn_style {
    font-family: 'brandon-grotesque', 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    text-align: center;
    width: 100%;
    margin: 30px auto 0px;
    display: block !important;
    color: #fff;
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.0;
    padding: 20px 0px;
    margin: 0 auto;
    background: url(../img/list_mk002.svg) no-repeat right 15px center;
    background-size: 10px 10px;
    background-color: #DB887F;
    letter-spacing: 0.1em;
    -webkit-transition: all .3s;
    transition: all .3s;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    border: none !important;
  }
  .page_contents__contact_form_btn h6 button.form_btn_style02 {
    font-family: 'brandon-grotesque', 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    text-align: center;
    width: 100%;
    margin: 30px auto 0px;
    display: block !important;
    color: #fff;
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.0;
    padding: 20px 0px;
    margin: 0 auto;
    background: url(../img/list_mk004.svg) no-repeat left 15px center;
    background-size: 10px 10px;
    background-color: #999;
    letter-spacing: 0.1em;
    -webkit-transition: all .3s;
    transition: all .3s;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    border: none !important;
  }
  .page_contents__contact_form_complete {
    font-size: 1.4rem;
    line-height: 1.8;
    width: 88%;
    margin: 40px auto 0;
    background-color: #fff;
    padding: 20px;
    -webkit-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.08);
            box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.08);
    border-radius: 18px;
    -webkit-border-radius: 18px;
    -moz-border-radius: 18px;
  }
  .page_contents__contact_form_complete h3 {
    width: 100%;
    color: #83B2A6;
    font-size: 2rem;
    letter-spacing: 0.075em;
    font-weight: 500;
    text-align: center;
    margin-bottom: 20px;
  }
  .page_contents__contact_form_complete h3 br {
    display: none;
  }
  .page_contents__contact_form_complete p {
    width: 100%;
    margin-bottom: 30px;
  }
  .page_contents__contact_form_complete p:last-child {
    width: 100%;
    margin-bottom: 0px !important;
  }
  .page_contents__nav {
    position: relative;
    width: 92%;
    margin: 0 auto;
  }
  .page_contents__nav_list {
    width: 100%;
    margin-bottom: 10px;
  }
  .page_contents__nav_list a {
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 20px;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    background: url(../img/list_mk001.svg) no-repeat right 7px center;
    background-size: 10px;
    background-color: #F9F4EA;
    border: 1px dotted #f2ead9;
  }
  .page_contents__nav_list_thumb {
    position: relative;
    width: 45%;
    z-index: 10;
    background-color: #fff;
    overflow: hidden;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
  }
  .page_contents__nav_list_thumb img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
  }
  .page_contents__nav_list_thumb:hover img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  .page_contents__nav_list_thumb .caption {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    font-size: 1rem;
    color: #fff;
    letter-spacing: 0.05em;
  }
  .page_contents__nav_list_thumb .mask {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    background-color: rgba(0, 0, 0, 0.5);
    -webkit-transition: all 0.6s ease;
    transition: all 0.6s ease;
  }
  .page_contents__nav_list_thumb:hover .mask {
    opacity: 1;
    /* マスクを表示する */
  }
  .page_contents__nav_list_desc {
    width: 55%;
    padding-left: 14px;
  }
  .page_contents__nav_list_desc h3 {
    font-size: 1.2rem;
    font-weight: 500;
    letter-spacing: 0.075em;
    line-height: 1.5;
  }
}

/* ########## page_contents ########## */
@media screen and (min-width: 1024px) {
  dt span.required img {
    width: 18px;
    vertical-align: middle;
    padding: 0 0 4px 4px;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  dt span.required img {
    width: 18px;
    vertical-align: middle;
    padding: 0 0 4px 4px;
  }
}

@media screen and (max-width: 767px) {
  dt span.required img {
    width: 18px;
    vertical-align: middle;
    padding: 0 0 4px 4px;
  }
}

@media screen and (min-width: 1024px) {
  p span.required img {
    width: 18px;
    vertical-align: middle;
    padding: 0 4px 2px 0;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  p span.required img {
    width: 18px;
    vertical-align: middle;
    padding: 0 4px 2px 0;
  }
}

@media screen and (max-width: 767px) {
  p span.required img {
    width: 18px;
    vertical-align: middle;
    padding: 0 4px 2px 0;
  }
}

@media screen and (min-width: 1024px) {
  h6.num_icon {
    position: absolute;
    width: 70px;
    top: -20px;
    left: -20px;
    z-index: 10;
  }
  h6.num_icon img {
    width: 100%;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  h6.num_icon {
    position: absolute;
    width: 70px;
    top: -20px;
    left: -20px;
    z-index: 10;
  }
  h6.num_icon img {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  h6.num_icon {
    position: absolute;
    width: 60px;
    top: -10px;
    left: -10px;
    z-index: 10;
  }
  h6.num_icon img {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .pc {
    display: none;
  }
}

@media screen and (min-width: 1024px) {
  .sp {
    display: none;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .sp {
    display: none;
  }
}

@media screen and (min-width: 1024px) {
  .page_contents__bread {
    position: relative;
    width: 100%;
    z-index: 60;
  }
  .page_contents__bread ul {
    position: absolute;
    top: -25px;
    left: 0;
    font-size: 1rem;
    letter-spacing: 0.075em;
    padding: 20px 30px 20px 40px;
    line-height: 1.0;
    background-color: #F9F4EA;
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
    border-radius: 0 28px 28px 0;
    -webkit-border-radius: 0 28px 28px 0;
    -moz-border-radius: 0 28px 28px 0;
  }
  .page_contents__bread ul li {
    display: inline-block;
    margin-right: 15px;
    background: url(../img/list_mk001.svg) no-repeat 0 center;
    background-size: 10px;
    padding-left: 14px;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .page_contents__bread {
    position: relative;
    width: 100%;
    z-index: 60;
  }
  .page_contents__bread ul {
    position: absolute;
    top: -28px;
    left: 0;
    font-size: 1rem;
    letter-spacing: 0.075em;
    padding: 20px 25px 20px 30px;
    line-height: 1.0;
    background-color: #F9F4EA;
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
    border-radius: 0 28px 28px 0;
    -webkit-border-radius: 0 28px 28px 0;
    -moz-border-radius: 0 28px 28px 0;
  }
  .page_contents__bread ul li {
    display: inline-block;
    margin-right: 15px;
    background: url(../img/list_mk001.svg) no-repeat 0 center;
    background-size: 10px;
    padding-left: 14px;
  }
}

@media screen and (max-width: 767px) {
  .page_contents__bread {
    position: relative;
    width: 100%;
    z-index: 60;
  }
  .page_contents__bread ul {
    position: absolute;
    top: -28px;
    left: 0;
    font-size: 1rem;
    letter-spacing: 0.075em;
    padding: 18px 15px 18px 18px;
    line-height: 1.0;
    background-color: #F9F4EA;
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
    border-radius: 0 28px 28px 0;
    -webkit-border-radius: 0 28px 28px 0;
    -moz-border-radius: 0 28px 28px 0;
  }
  .page_contents__bread ul li {
    display: inline-block;
    margin-right: 8px;
    background: url(../img/list_mk001.svg) no-repeat 0 center;
    background-size: 8px 8px;
    padding-left: 10px;
  }
}

@media screen and (min-width: 1024px) {
  .biscuit_icon01 {
    position: absolute;
    width: 90px;
    top: 90px;
    right: 150px;
    z-index: 50;
  }
  .biscuit_icon01 img {
    width: 100%;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .biscuit_icon01 {
    position: absolute;
    width: 90px;
    top: 90px;
    right: 50px;
    z-index: 50;
  }
  .biscuit_icon01 img {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .biscuit_icon01 {
    position: absolute;
    width: 70px;
    top: 40px;
    right: 10px;
    z-index: 50;
  }
  .biscuit_icon01 img {
    width: 100%;
  }
}

@media screen and (min-width: 1024px) {
  .biscuit_icon02 {
    position: absolute;
    width: 80px;
    top: 410px;
    left: 130px;
    z-index: 50;
  }
  .biscuit_icon02 img {
    width: 100%;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .biscuit_icon02 {
    position: absolute;
    width: 80px;
    top: 430px;
    left: 50px;
    z-index: 50;
  }
  .biscuit_icon02 img {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .biscuit_icon02 {
    position: absolute;
    width: 55px;
    top: 410px;
    left: 25px;
    z-index: 50;
  }
  .biscuit_icon02 img {
    width: 100%;
  }
}

@media screen and (min-width: 1024px) {
  .biscuit_icon03 {
    position: absolute;
    width: 100px;
    top: -25px;
    right: 25%;
    z-index: 50;
  }
  .biscuit_icon03 img {
    width: 100%;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .biscuit_icon03 {
    position: absolute;
    width: 100px;
    top: -25px;
    right: 15%;
    z-index: 50;
  }
  .biscuit_icon03 img {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .biscuit_icon03 {
    position: absolute;
    width: 75px;
    top: -15px;
    right: 10%;
    z-index: 50;
  }
  .biscuit_icon03 img {
    width: 100%;
  }
}

@media screen and (min-width: 1024px) {
  .biscuit_icon04 {
    position: absolute;
    width: 100px;
    top: 380px;
    left: 20%;
    z-index: 50;
  }
  .biscuit_icon04 img {
    width: 100%;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .biscuit_icon04 {
    position: absolute;
    width: 80px;
    top: 300px;
    left: 12%;
    z-index: 50;
  }
  .biscuit_icon04 img {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .biscuit_icon04 {
    position: absolute;
    width: 70px;
    top: 300px;
    left: 5%;
    z-index: 50;
  }
  .biscuit_icon04 img {
    width: 100%;
  }
}

@media screen and (min-width: 1024px) {
  .biscuit_icon05 {
    position: absolute;
    width: 100px;
    bottom: -25px;
    right: 5%;
    z-index: 50;
  }
  .biscuit_icon05 img {
    width: 100%;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .biscuit_icon05 {
    position: absolute;
    width: 100px;
    bottom: -25px;
    right: 5%;
    z-index: 50;
  }
  .biscuit_icon05 img {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .biscuit_icon05 {
    position: absolute;
    width: 80px;
    bottom: -25px;
    right: 5%;
    z-index: 50;
  }
  .biscuit_icon05 img {
    width: 100%;
  }
}

@media screen and (min-width: 1024px) {
  .biscuit_icon06 {
    position: absolute;
    width: 90px;
    top: -40px;
    left: 5%;
    z-index: 50;
  }
  .biscuit_icon06 img {
    width: 100%;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .biscuit_icon06 {
    position: absolute;
    width: 60px;
    top: -45px;
    right: 16%;
    z-index: 50;
  }
  .biscuit_icon06 img {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .biscuit_icon06 {
    position: absolute;
    width: 50px;
    top: -40px;
    left: 5%;
    z-index: 50;
  }
  .biscuit_icon06 img {
    width: 100%;
  }
}

@media screen and (min-width: 1024px) {
  .biscuit_icon07 {
    position: absolute;
    width: 80px;
    top: 300px;
    right: 12%;
    z-index: 50;
  }
  .biscuit_icon07 img {
    width: 100%;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .biscuit_icon07 {
    position: absolute;
    width: 80px;
    top: 300px;
    right: 10%;
    z-index: 50;
  }
  .biscuit_icon07 img {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .biscuit_icon07 {
    position: absolute;
    width: 60px;
    top: 290px;
    right: 20%;
    z-index: 50;
  }
  .biscuit_icon07 img {
    width: 100%;
  }
}

@media screen and (min-width: 1024px) {
  .biscuit_icon08 {
    position: absolute;
    width: 100px;
    top: -60px;
    left: 10%;
    z-index: 50;
  }
  .biscuit_icon08 img {
    width: 100%;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .biscuit_icon08 {
    position: absolute;
    width: 100px;
    top: -50px;
    left: 10%;
    z-index: 50;
  }
  .biscuit_icon08 img {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .biscuit_icon08 {
    position: absolute;
    width: 70px;
    top: -40px;
    left: 10%;
    z-index: 50;
  }
  .biscuit_icon08 img {
    width: 100%;
  }
}

@media screen and (min-width: 1024px) {
  .biscuit_icon09 {
    position: absolute;
    width: 70px;
    top: 200px;
    right: 20px;
    z-index: 50;
  }
  .biscuit_icon09 img {
    width: 100%;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .biscuit_icon09 {
    position: absolute;
    width: 50px;
    top: 250px;
    right: 10px;
    z-index: 50;
  }
  .biscuit_icon09 img {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .biscuit_icon09 {
    position: absolute;
    width: 55px;
    top: 260px;
    right: 2px;
    z-index: 50;
  }
  .biscuit_icon09 img {
    width: 100%;
  }
}

@media screen and (min-width: 1024px) {
  .biscuit_icon10 {
    position: absolute;
    width: 100px;
    top: -120px;
    left: 64%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    z-index: 50;
  }
  .biscuit_icon10 img {
    width: 100%;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .biscuit_icon10 {
    position: absolute;
    width: 100px;
    top: -110px;
    left: 35%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    z-index: 50;
  }
  .biscuit_icon10 img {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .biscuit_icon10 {
    position: absolute;
    width: 70px;
    top: -80px;
    left: 64%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    z-index: 50;
  }
  .biscuit_icon10 img {
    width: 100%;
  }
}

@media screen and (min-width: 1024px) {
  .biscuit_icon11 {
    position: absolute;
    width: 50px;
    top: 55px;
    right: 270px;
    z-index: 50;
  }
  .biscuit_icon11 img {
    width: 100%;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .biscuit_icon11 {
    position: absolute;
    width: 50px;
    top: 55px;
    right: 150px;
    z-index: 50;
  }
  .biscuit_icon11 img {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .biscuit_icon11 {
    position: absolute;
    width: 30px;
    top: 20px;
    right: 80px;
    z-index: 50;
  }
  .biscuit_icon11 img {
    width: 100%;
  }
}

@media screen and (min-width: 1024px) {
  .biscuit_icon12 {
    position: absolute;
    width: 70px;
    top: -60px;
    left: 4%;
    z-index: 50;
  }
  .biscuit_icon12 img {
    width: 100%;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .biscuit_icon12 {
    position: absolute;
    width: 60px;
    top: -55px;
    left: 10%;
    z-index: 50;
  }
  .biscuit_icon12 img {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .biscuit_icon12 {
    position: absolute;
    width: 40px;
    top: -40px;
    left: 4%;
    z-index: 50;
  }
  .biscuit_icon12 img {
    width: 100%;
  }
}

@media screen and (min-width: 1024px) {
  .biscuit_icon13 {
    position: absolute;
    width: 90px;
    bottom: -25px;
    right: 5%;
    z-index: 50;
  }
  .biscuit_icon13 img {
    width: 100%;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .biscuit_icon13 {
    position: absolute;
    width: 70px;
    bottom: -25px;
    right: 5%;
    z-index: 50;
  }
  .biscuit_icon13 img {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .biscuit_icon13 {
    position: absolute;
    width: 50px;
    bottom: -25px;
    right: 5%;
    z-index: 50;
  }
  .biscuit_icon13 img {
    width: 100%;
  }
}

@media screen and (min-width: 1024px) {
  .biscuit_icon14 {
    position: absolute;
    width: 40px;
    top: 25px;
    left: -2%;
    z-index: 50;
  }
  .biscuit_icon14 img {
    width: 100%;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .biscuit_icon14 {
    position: absolute;
    width: 50px;
    top: 15px;
    left: -4%;
    z-index: 50;
  }
  .biscuit_icon14 img {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .biscuit_icon14 {
    position: absolute;
    width: 25px;
    top: 15px;
    left: -3%;
    z-index: 50;
  }
  .biscuit_icon14 img {
    width: 100%;
  }
}

/* ########## page_contents__2c_sp01 width100% ########## */
@media screen and (min-width: 1024px) {
  .page_contents__2c_sp01 {
    width: 100%;
    margin-top: 80px;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

@media screen and (min-width: 1024px) {
  .page_contents__2c_sp01_left {
    position: relative;
    width: 50%;
  }
  .page_contents__2c_sp01_left p img {
    width: 100%;
  }
}

@media screen and (min-width: 1024px) {
  .page_contents__2c_sp01_right {
    position: relative;
    width: 50%;
    padding: 0 60px;
  }
  .page_contents__2c_sp01_right h3 {
    font-size: 2.4rem;
    line-height: 1.5;
    color: #83B2A6;
    font-weight: 500;
    letter-spacing: 0.075em;
  }
  .page_contents__2c_sp01_right p {
    font-size: 1.5rem;
    letter-spacing: 0.075em;
    line-height: 1.8;
    margin-top: 30px;
  }
}

/* ########## page_contents__2c_sp01 width100% ########## */
/* ########## page_contents__2c_sp02 width100% ########## */
@media screen and (min-width: 1024px) {
  .page_contents__2c_sp02 {
    width: 100%;
    margin-top: 80px;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-flow: row-reverse;
            flex-flow: row-reverse;
  }
}

@media screen and (min-width: 1024px) {
  .page_contents__2c_sp02_left {
    position: relative;
    width: 50%;
  }
  .page_contents__2c_sp02_left p img {
    width: 100%;
  }
}

@media screen and (min-width: 1024px) {
  .page_contents__2c_sp02_right {
    position: relative;
    width: 50%;
    padding: 0 60px;
  }
  .page_contents__2c_sp02_right h3 {
    font-size: 2.4rem;
    line-height: 1.5;
    color: #83B2A6;
    font-weight: 500;
    letter-spacing: 0.075em;
  }
  .page_contents__2c_sp02_right p {
    font-size: 1.5rem;
    letter-spacing: 0.075em;
    line-height: 1.8;
    margin-top: 30px;
  }
}

/* ########## page_contents__2c_sp02 width100% ########## */
/* ########## page_contents__2c_sp02 width92% ########## */
@media screen and (min-width: 1024px) {
  .page_contents__2c_sp03 {
    width: 92%;
    margin: 80px auto 0;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

@media screen and (min-width: 1024px) {
  .page_contents__2c_sp03_left {
    position: relative;
    width: 50%;
  }
  .page_contents__2c_sp03_left p img {
    width: 100%;
  }
}

@media screen and (min-width: 1024px) {
  .page_contents__2c_sp03_right {
    position: relative;
    width: 50%;
    padding-left: 50px;
  }
  .page_contents__2c_sp03_right h3 {
    font-size: 2.4rem;
    line-height: 1.5;
    color: #83B2A6;
    font-weight: 500;
    letter-spacing: 0.075em;
  }
  .page_contents__2c_sp03_right p {
    font-size: 1.5rem;
    letter-spacing: 0.075em;
    line-height: 1.8;
    margin-top: 30px;
  }
}

/* ########## page_contents__2c_sp03 width92% ########## */
/* ########## page_contents__2c_sp04 width92% ########## */
@media screen and (min-width: 1024px) {
  .page_contents__2c_sp04 {
    width: 92%;
    margin: 80px auto 0;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-flow: row-reverse;
            flex-flow: row-reverse;
  }
}

@media screen and (min-width: 1024px) {
  .page_contents__2c_sp04_left {
    position: relative;
    width: 50%;
  }
  .page_contents__2c_sp04_left p img {
    width: 100%;
  }
}

@media screen and (min-width: 1024px) {
  .page_contents__2c_sp04_right {
    position: relative;
    width: 50%;
    padding-left: 50px;
  }
  .page_contents__2c_sp04_right h3 {
    font-size: 2.4rem;
    line-height: 1.5;
    color: #83B2A6;
    font-weight: 500;
    letter-spacing: 0.075em;
  }
  .page_contents__2c_sp04_right p {
    font-size: 1.5rem;
    letter-spacing: 0.075em;
    line-height: 1.8;
    margin-top: 30px;
  }
}

/* ########## page_contents__2c_sp04 width92% ########## */
/* ########## page_contents__3c_sp01 bg_white ########## */
@media screen and (min-width: 1024px) {
  .page_contents__3c_sp01 {
    width: 100%;
    background-color: #f3f3f3;
    margin-top: 80px;
    padding: 80px 0 100px;
  }
}

@media screen and (min-width: 1024px) {
  .page_contents__3c_sp01_list_sp {
    width: 92%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 30px auto 0;
  }
}

@media screen and (min-width: 1024px) {
  .page_contents__3c_sp01_list {
    width: 32%;
    background-color: #fff;
    -webkit-box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.08);
            box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.08);
  }
}

@media screen and (min-width: 1024px) {
  .page_contents__3c_sp01_list_thumb {
    position: relative;
    width: 100%;
  }
  .page_contents__3c_sp01_list_thumb p img {
    width: 100%;
  }
}

@media screen and (min-width: 1024px) {
  .page_contents__3c_sp01_list_desc {
    width: 100%;
  }
  .page_contents__3c_sp01_list_desc h3 {
    color: #83B2A6;
    font-size: 1.6rem;
    line-height: 1.6;
    font-weight: 500;
    letter-spacing: 0.075em;
  }
  .page_contents__3c_sp01_list_desc p {
    font-size: 1.5rem;
    letter-spacing: 0.075em;
    line-height: 1.8;
    margin-top: 20px;
  }
}

/* ########## page_contents__3c_sp01 bg_white ########## */
/* ########## page_contents__3c_sp02 bg_f3f3f3 ########## */
@media screen and (min-width: 1024px) {
  .page_contents__3c_sp02 {
    width: 100%;
    background-color: #f3f3f3;
    margin-top: 80px;
    padding: 80px 0 100px;
  }
}

@media screen and (min-width: 1024px) {
  .page_contents__3c_sp02_list {
    width: 32%;
    background-color: #fff;
    -webkit-box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.08);
            box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.08);
  }
}

@media screen and (min-width: 1024px) {
  .page_contents__3c_sp02_list_thumb {
    position: relative;
    width: 100%;
  }
  .page_contents__3c_sp02_list_thumb p img {
    width: 100%;
  }
}

@media screen and (min-width: 1024px) {
  .page_contents__3c_sp02_list_desc {
    width: 100%;
    padding: 40px;
  }
  .page_contents__3c_sp02_list_desc h3 {
    color: #83B2A6;
    font-size: 1.6rem;
    line-height: 1.6;
    font-weight: 500;
    letter-spacing: 0.075em;
  }
  .page_contents__3c_sp02_list_desc p {
    font-size: 1.5rem;
    letter-spacing: 0.075em;
    line-height: 1.8;
    margin-top: 20px;
  }
}

/* ########## page_contents__3c_sp02 bg_f3f3f3 ########## */
@media screen and (min-width: 1024px) {
  .footer {
    position: relative;
    width: 100%;
    background: url(../img/contents_backimg03.svg) repeat-x center 160px;
    background-size: 30px;
    background-color: #F9F4EA;
  }
  .footer__bottomimg {
    position: relative;
    width: 96%;
    height: 350px;
    background: url(../img/footer_backimg.png) no-repeat 50% 50%;
    background-size: cover;
    padding-left: 4%;
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
    border-radius: 0 20px 20px 0;
    -webkit-border-radius: 0 20px 20px 0;
    -moz-border-radius: 0 20px 20px 0;
  }
  .footer__bottomimg02 {
    position: absolute;
    width: 60%;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
  }
  .footer__bottomimg02 h3 {
    text-align: center;
    color: #fff;
    font-size: 3rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    margin-bottom: 30px;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
  }
  .footer__bottomimg02 ul {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .footer__bottomimg02 ul li {
    text-align: center;
    width: 48%;
  }
  .footer__contents {
    position: relative;
    width: 92%;
    margin: 0 auto;
    padding: 60px 0 40px;
  }
  .footer__contents_desc {
    width: 100%;
    margin-top: 20px;
  }
  .footer__contents_desc h2 {
    width: 160px;
    margin: 0 auto;
  }
  .footer__contents_desc h2 img {
    width: 100%;
  }
  .footer__contents_desc p {
    text-align: center;
    font-size: 1.2rem;
    line-height: 1.8;
    margin-top: 15px;
  }
  .footer__contents_nav {
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .footer__contents_nav_list {
    width: 23%;
  }
  .footer__contents_nav_list h4 {
    color: #333;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    background: url(../img/title_icon01.svg) no-repeat 0 7px;
    background-size: 12px;
    padding: 0 0 8px 16px;
    border-bottom: 3px dotted #F4E098;
  }
  .footer__contents_nav_list h4 a, .footer__contents_nav_list h4 a:link a:visited {
    color: #333;
  }
  .footer__contents_nav_list h4 a:hover {
    color: #DB887F;
  }
  .footer__contents_nav_list ul {
    font-size: 1.2rem;
    margin-top: 16px;
  }
  .footer__contents_nav_list ul li {
    background: url(../img/list_mk001.svg) no-repeat 2px center;
    background-size: 8px;
    padding-left: 14px;
    margin-top: 12px;
    line-height: 1.0;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .footer__contents_nav_list ul li a, .footer__contents_nav_list ul li a:link a:visited {
    color: #666666;
  }
  .footer__contents_nav_list ul li a:hover {
    color: #DB887F;
  }
  .footer__contents_nav_list ul li img {
    width: 18px;
    padding-left: 4px;
  }
  .footer__sp_contents_nav {
    display: none;
  }
  .footer__copy {
    text-align: center;
    width: 100%;
    font-size: 1rem;
    letter-spacing: 0.1em;
    color: #fff;
    background: url(../img/contents_backimg02.svg) repeat-x center 0;
    background-size: 30px;
    background-color: #E4BE7B;
    padding: 40px 0 20px;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .footer {
    position: relative;
    width: 100%;
    background: url(../img/contents_backimg03.svg) repeat-x center 160px;
    background-size: 30px;
    background-color: #F9F4EA;
  }
  .footer__bottomimg {
    position: relative;
    width: 96%;
    height: 350px;
    background: url(../img/footer_backimg.png) no-repeat 50% 50%;
    background-size: cover;
    padding-left: 4%;
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
    border-radius: 0 20px 20px 0;
    -webkit-border-radius: 0 20px 20px 0;
    -moz-border-radius: 0 20px 20px 0;
  }
  .footer__bottomimg02 {
    position: absolute;
    width: 80%;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
  }
  .footer__bottomimg02 h3 {
    text-align: center;
    color: #fff;
    font-size: 2.4rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    margin-bottom: 30px;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
  }
  .footer__bottomimg02 ul {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .footer__bottomimg02 ul li {
    text-align: center;
    width: 48%;
  }
  .footer__contents {
    position: relative;
    width: 92%;
    margin: 0 auto;
    padding: 60px 0 30px;
  }
  .footer__contents_desc {
    width: 100%;
  }
  .footer__contents_desc h2 {
    width: 140px;
    margin: 0 auto;
  }
  .footer__contents_desc h2 img {
    width: 100%;
  }
  .footer__contents_desc p {
    text-align: center;
    font-size: 1.2rem;
    line-height: 1.8;
    margin-top: 12px;
  }
  .footer__contents_nav {
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .footer__contents_nav_list {
    width: 48.5%;
    margin-bottom: 30px;
  }
  .footer__contents_nav_list h4 {
    color: #333;
    font-size: 1.5rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    background: url(../img/title_icon01.svg) no-repeat 0 7px;
    background-size: 12px;
    padding: 0 0 8px 16px;
    border-bottom: 3px dotted #F4E098;
  }
  .footer__contents_nav_list h4 a, .footer__contents_nav_list h4 a:link a:visited {
    color: #333;
  }
  .footer__contents_nav_list h4 a:hover {
    color: #DB887F;
  }
  .footer__contents_nav_list ul {
    font-size: 1.2rem;
    margin-top: 16px;
  }
  .footer__contents_nav_list ul li {
    background: url(../img/list_mk001.svg) no-repeat 2px center;
    background-size: 8px;
    padding-left: 14px;
    margin-top: 10px;
    line-height: 1.0;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .footer__contents_nav_list ul li a, .footer__contents_nav_list ul li a:link a:visited {
    color: #666666;
  }
  .footer__contents_nav_list ul li a:hover {
    color: #DB887F;
  }
  .footer__contents_nav_list ul li img {
    width: 18px;
    padding-left: 4px;
  }
  .footer__sp_contents_nav {
    display: none;
  }
  .footer__copy {
    text-align: center;
    width: 100%;
    font-size: 1rem;
    letter-spacing: 0.1em;
    color: #fff;
    background: url(../img/contents_backimg02.svg) repeat-x center 0;
    background-size: 30px;
    background-color: #E4BE7B;
    padding: 40px 0 20px;
  }
}

@media screen and (max-width: 767px) {
  .footer {
    position: relative;
    width: 100%;
    background: url(../img/contents_backimg03.svg) repeat-x center 140px;
    background-size: 30px;
    background-color: #F9F4EA;
  }
  .footer__bottomimg {
    position: relative;
    width: 96%;
    height: 320px;
    background: url(../img/sp/sp_footer_bottom_backimg.png) no-repeat center center;
    background-size: cover;
    background-color: #ccc;
    padding-left: 4%;
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
    border-radius: 0 18px 18px 0;
    -webkit-border-radius: 0 18px 18px 0;
    -moz-border-radius: 0 18px 18px 0;
  }
  .footer__bottomimg02 {
    position: absolute;
    width: 84%;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
  }
  .footer__bottomimg02 h3 {
    text-align: center;
    color: #fff;
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    margin-bottom: 15px;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
  }
  .footer__bottomimg02 ul {
    width: 100%;
  }
  .footer__bottomimg02 ul li {
    text-align: center;
    width: 100%;
    margin-top: 10px;
  }
  .footer__contents {
    width: 92%;
    padding: 40px 0;
    margin: 0 auto;
  }
  .footer__contents_desc {
    width: 100%;
  }
  .footer__contents_desc h2 {
    width: 130px;
    margin: 0 auto;
  }
  .footer__contents_desc h2 img {
    width: 100%;
  }
  .footer__contents_desc p {
    text-align: center;
    font-size: 1.2rem;
    letter-spacing: 0.1em;
    line-height: 1.8;
    margin: 15px 0 0;
  }
  .footer__contents_nav {
    display: none;
  }
  .footer__contents_nav ul {
    display: none;
  }
  .footer__sp_contents_nav {
    width: 100%;
    margin-top: 25px;
  }
  .footer__sp_contents_nav_list01 {
    width: 100%;
  }
  .footer__sp_contents_nav_list01 ul {
    font-size: 1.2rem;
    letter-spacing: 0.075em;
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .footer__sp_contents_nav_list01 ul li {
    width: 49%;
    line-height: 1.0;
    margin-top: 5px;
  }
  .footer__sp_contents_nav_list01 ul li a {
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    background-color: #fff;
    padding: 12px 0;
    border-radius: 6px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
  }
  .footer__sp_contents_nav_list01 ul li a img {
    width: 22px;
    padding-right: 5px;
  }
  .footer__sp_contents_nav_list02 {
    width: 100%;
  }
  .footer__sp_contents_nav_list02 ul {
    font-size: 1.2rem;
    letter-spacing: 0.075em;
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .footer__sp_contents_nav_list02 ul li {
    width: 49%;
    line-height: 1.0;
    margin-top: 5px;
  }
  .footer__sp_contents_nav_list02 ul li a {
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    background-color: #fff;
    padding: 9px 0;
    border-radius: 6px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
  }
  .footer__sp_contents_nav_list02 ul li a img {
    width: 23px;
    padding-right: 5px;
  }
  .footer__copy {
    text-align: center;
    width: 100%;
    font-size: 1rem;
    letter-spacing: 0.1em;
    color: #fff;
    background: url(../img/contents_backimg02.svg) repeat-x center 0;
    background-size: 30px;
    background-color: #E4BE7B;
    padding: 30px 0 15px;
  }
}

@media screen and (min-width: 1024px) {
  .footer:before {
    position: absolute;
    content: '';
    width: 100%;
    height: 170px;
    background-color: #fff;
    top: 0;
    left: 0;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .footer:before {
    position: absolute;
    content: '';
    width: 100%;
    height: 170px;
    background-color: #fff;
    top: 0;
    left: 0;
  }
}

@media screen and (max-width: 767px) {
  .footer:before {
    position: absolute;
    content: '';
    width: 100%;
    height: 150px;
    background-color: #fff;
    top: 0;
    left: 0;
  }
}

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

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

html, body {
  font-size: 62.5%;
  overflow: auto;
}

body {
  height: 100%;
  color: #666666;
  background-color: #fff;
  font-family: "brandon-grotesque", "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 10px;
  font-size: 1.0rem;
  animation: fadeIn 2s ease 0s 1 normal;
  -webkit-animation: fadeIn 2s ease 0s 1 normal;
  -moz-animation: fadeIn 2s ease 0s 1 normal;
  -o-animation: fadeIn 2s ease 0s 1 normal;
  overflow-x: hidden;
}

ol, ul {
  list-style: none;
  letter-spacing: 0.1em;
}

p {
  letter-spacing: 0.1em;
}

dl {
  letter-spacing: 0.1em;
}

caption, th, td {
  font-weight: normal;
  text-align: left;
  vertical-align: top;
}

img {
  max-width: 100%;
  height: auto;
  width: auto;
  border: 0;
  vertical-align: bottom;
}

a, a:link a:visited {
  color: #DB887F;
  -webkit-transition: all .3s;
  transition: all .3s;
  text-decoration: none;
}

a:hover {
  color: #C66D66;
  text-decoration: none;
}

a.imghover:link img {
  -webkit-transition: all .3s;
  transition: all .3s;
}

a.imghover:hover img {
  filter: alpha(opacity=70);
  opacity: 0.7;
}

.imghover {
  -webkit-transition: all .3s;
  transition: all .3s;
}

.imghover:hover {
  filter: alpha(opacity=70);
  opacity: 0.7;
}

.marker.active {
  background-position: -100% .5em;
}

.marker {
  background-image: -webkit-gradient(linear, left top, right top, color-stop(50%, transparent), color-stop(50%, #fffa99));
  background-image: linear-gradient(left, transparent 50%, #fffa99 50%);
  background-repeat: repeat-x;
  background-size: 200% .8em;
  background-position: 0 .5em;
  -webkit-transition: all 2s ease;
  transition: all 2s ease;
  font-weight: bold;
}

@media screen and (min-width: 1024px) {
  #biscuit_top {
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 1000;
  }
  #biscuit_top a {
    display: block;
    width: 70px;
  }
  #biscuit_top img {
    width: 100%;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  #biscuit_top {
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 1000;
  }
  #biscuit_top a {
    display: block;
    width: 70px;
  }
  #biscuit_top img {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  #biscuit_top {
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 1000;
  }
  #biscuit_top a {
    display: block;
    width: 50px;
  }
  #biscuit_top img {
    width: 100%;
  }
}

@media screen and (min-width: 1024px) {
  .floating {
    position: fixed;
    top: 20px;
    right: 10px;
    z-index: 1000;
  }
  .floating a {
    display: block;
    width: 110px;
  }
  .floating img {
    width: 100%;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .floating {
    position: fixed;
    top: 110px;
    right: 10px;
    z-index: 1000;
  }
  .floating a {
    display: block;
    width: 110px;
  }
  .floating img {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .floating {
    position: fixed;
    top: 80px;
    right: 5px;
    z-index: 1000;
  }
  .floating a {
    display: block;
    width: 70px;
  }
  .floating img {
    width: 100%;
  }
}

/* ########## index_contents ########## */
/* #### index_main #### */
@media screen and (min-width: 1024px) {
  .index_main {
    position: relative;
    width: 100vw;
    height: 100vh;
    background-color: #F9F4EA;
  }
  .index_main__news {
    position: absolute;
    width: 100%;
    height: 56px;
    left: 0;
    bottom: -28px;
    z-index: 100;
    background: url(../img/contents_backimg01.svg) repeat-x center 24px;
    background-size: 30px;
  }
  .index_main__news02 {
    position: relative;
    width: 92%;
    height: 56px;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    background-color: #fff;
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
    border-radius: 28px;
    -webkit-border-radius: 28px;
    -moz-border-radius: 28px;
    margin: 0 auto;
  }
  .index_main__news02_left {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .index_main__news02_left h3 {
    color: #fff;
    font-size: 1.2rem;
    letter-spacing: 0.1em;
    line-height: 1.0;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 200px;
    height: 56px;
    background-color: #83B2A6;
    border-radius: 28px 0 0 28px;
    -webkit-border-radius: 28px 0 0 28px;
    -moz-border-radius: 28px 0 0 28px;
    padding-left: 10px;
  }
  .index_main__news02_left h3 img {
    width: 18px;
    padding-right: 5px;
  }
  .index_main__news02_left dl {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-left: 40px;
  }
  .index_main__news02_left dl dt {
    font-size: 1rem;
    line-height: 1.0;
    padding-top: 1px;
  }
  .index_main__news02_left dl dd {
    font-size: 1.2rem;
    line-height: 1.0;
    padding-left: 10px;
  }
  .index_main__news02_right {
    width: 125px;
    height: 56px;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .index_main__news02_right p {
    font-size: 1.2rem;
    line-height: 1.0;
    background: url(../img/list_mk001.svg) no-repeat right center;
    background-size: 10px;
    padding-right: 16px;
  }
  .index_main__news02_right p a, .index_main__news02_right p a:link a:visited {
    color: #333;
  }
  .index_main__news02_right p a:hover {
    color: #C66D66;
  }
  .index_main__popup {
    position: absolute;
    width: 200px;
    bottom: 60px;
    right: 30px;
    z-index: 60;
  }
  .index_main__popup img {
    width: 100%;
  }
  .index_main__obj {
    position: absolute;
    width: 160px;
    bottom: 0;
    right: 0;
    z-index: 50;
  }
  .index_main__obj img {
    width: 100%;
  }
  .index_main__catch {
    position: absolute;
    width: 62%;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    z-index: 40;
    padding-top: 100px;
  }
  .index_main__catch h4 {
    width: 60%;
    margin: 30px auto 0;
  }
  .index_main__catch p {
    width: 100%;
    line-height: 1.0;
  }
  .index_main__catch p img {
    width: 100%;
  }
  .index_main__catch p:last-of-type {
    margin-top: 20px;
  }
  .index_main__full {
    position: relative;
    width: 100%;
    height: 100vh;
  }
  .index_main__full div {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    height: 100vh;
    margin: 0;
  }
  .index_main__full_contents01 {
    position: relative;
    height: 100vh;
    background: url(../../img/slide_img/pc_slide_img01.png) no-repeat center center;
    background-size: cover;
  }
  .index_main__full_contents02 {
    position: relative;
    height: 100vh;
    background: url(../../img/slide_img/pc_slide_img02.png) no-repeat center center;
    background-size: cover;
  }
  .index_main__full_contents03 {
    position: relative;
    height: 100vh;
    background: url(../../img/slide_img/pc_slide_img03.png) no-repeat center center;
    background-size: cover;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .index_main {
    position: relative;
    width: 100vw;
    height: 100vh;
    background-color: #F9F4EA;
  }
  .index_main__news {
    position: absolute;
    width: 100%;
    height: 56px;
    left: 0;
    bottom: -28px;
    z-index: 100;
    background: url(../img/contents_backimg01.svg) repeat-x center 24px;
    background-size: 30px;
  }
  .index_main__news02 {
    position: relative;
    width: 92%;
    height: 56px;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    background-color: #fff;
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.06);
    border-radius: 28px;
    -webkit-border-radius: 28px;
    -moz-border-radius: 28px;
    margin: 0 auto;
  }
  .index_main__news02_left {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .index_main__news02_left h3 {
    color: #fff;
    font-size: 1.2rem;
    letter-spacing: 0.1em;
    line-height: 1.0;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 200px;
    height: 56px;
    background-color: #83B2A6;
    border-radius: 28px 0 0 28px;
    -webkit-border-radius: 28px 0 0 28px;
    -moz-border-radius: 28px 0 0 28px;
    padding-left: 10px;
  }
  .index_main__news02_left h3 img {
    width: 18px;
    padding-right: 5px;
  }
  .index_main__news02_left dl {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 0 30px 0 35px;
  }
  .index_main__news02_left dl dt {
    font-size: 1rem;
    line-height: 1.5;
    padding-top: 1px;
  }
  .index_main__news02_left dl dd {
    font-size: 1.2rem;
    line-height: 1.5;
    padding-left: 10px;
  }
  .index_main__news02_right {
    width: 115px;
    height: 56px;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .index_main__news02_right p {
    font-size: 1.2rem;
    line-height: 1.0;
    background: url(../img/list_mk001.svg) no-repeat right center;
    background-size: 10px;
    padding-right: 16px;
  }
  .index_main__news02_right p a, .index_main__news02_right p a:link a:visited {
    color: #333;
  }
  .index_main__news02_right p a:hover {
    color: #C66D66;
  }
  .index_main__popup {
    position: absolute;
    width: 200px;
    bottom: 60px;
    right: 30px;
    z-index: 60;
  }
  .index_main__popup img {
    width: 100%;
  }
  .index_main__obj {
    position: absolute;
    width: 160px;
    bottom: 0;
    right: 0;
    z-index: 50;
  }
  .index_main__obj img {
    width: 100%;
  }
  .index_main__catch {
    position: absolute;
    width: 90%;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    z-index: 40;
    padding-top: 100px;
  }
  .index_main__catch h4 {
    width: 70%;
    margin: 30px auto 0;
  }
  .index_main__catch p {
    width: 100%;
    line-height: 1.0;
  }
  .index_main__catch p img {
    width: 100%;
  }
  .index_main__catch p:last-of-type {
    margin-top: 20px;
  }
  .index_main__full {
    position: relative;
    width: 100%;
    height: 100vh;
  }
  .index_main__full div {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    height: 100vh;
    margin: 0;
  }
  .index_main__full_contents01 {
    position: relative;
    height: 100vh;
    background: url(../../img/slide_img/pc_slide_img01.png) no-repeat center center;
    background-size: cover;
  }
  .index_main__full_contents02 {
    position: relative;
    height: 100vh;
    background: url(../../img/slide_img/pc_slide_img02.png) no-repeat center center;
    background-size: cover;
  }
  .index_main__full_contents03 {
    position: relative;
    height: 100vh;
    background: url(../../img/slide_img/pc_slide_img03.png) no-repeat center center;
    background-size: cover;
  }
}

@media screen and (max-width: 767px) {
  .index_main {
    position: relative;
    width: 100vw;
    height: 100vh;
    background-color: #F9F4EA;
  }
  .index_main__news {
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 0;
    z-index: 100;
    background: url(../img/contents_backimg01.svg) repeat-x center bottom -10px;
    background-size: 30px;
    padding-bottom: 6%;
  }
  .index_main__news02 {
    position: relative;
    width: 96%;
    background-color: #fff;
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
    border-radius: 0 40px 40px 0;
    -webkit-border-radius: 40px0 40px 40px 0;
    -moz-border-radius: 0 40px 40px 0;
    padding: 20px 18px 20px 4%;
  }
  .index_main__news02_left {
    position: relative;
    width: 100%;
  }
  .index_main__news02_left h3 {
    position: absolute;
    top: -38px;
    left: 0;
    color: #fff;
    display: inline-block;
    font-size: 1.2rem;
    letter-spacing: 0.1em;
    line-height: 1.0;
    background-color: #83B2A6;
    border-radius: 28px;
    -webkit-border-radius: 28px;
    -moz-border-radius: 28px;
    padding: 10px 20px;
  }
  .index_main__news02_left h3 img {
    width: 16px;
    padding-right: 5px;
  }
  .index_main__news02_left dl {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-left: 7px;
  }
  .index_main__news02_left dl dt {
    font-size: 1rem;
    line-height: 1.5;
    padding-top: 1px;
    letter-spacing: 0.1em;
  }
  .index_main__news02_left dl dd {
    font-size: 1.2rem;
    line-height: 1.5;
  }
  .index_main__news02_right {
    display: none;
  }
  .index_main__popup {
    position: absolute;
    width: 110px;
    bottom: 85px;
    right: 10px;
    z-index: 110;
  }
  .index_main__popup img {
    width: 100%;
  }
  .index_main__obj {
    position: absolute;
    width: 90px;
    bottom: 0;
    right: 0;
    z-index: 50;
  }
  .index_main__obj img {
    width: 100%;
  }
  .index_main__catch {
    position: absolute;
    width: 80%;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    z-index: 40;
  }
  .index_main__catch h4 {
    width: 100%;
    margin: 30px auto 0;
  }
  .index_main__catch p {
    width: 100%;
    line-height: 1.0;
  }
  .index_main__catch p img {
    width: 100%;
  }
  .index_main__catch p:last-of-type {
    margin-top: 15px;
  }
  .index_main__full {
    position: relative;
    width: 100%;
    height: 100vh;
  }
  .index_main__full div {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    height: 100vh;
    margin: 0;
  }
  .index_main__full_contents01 {
    position: relative;
    height: 100vh;
    background: url(../../img/slide_img/sp/sp_slide_img01.png) no-repeat center center;
    background-size: cover;
  }
  .index_main__full_contents02 {
    position: relative;
    height: 100vh;
    background: url(../../img/slide_img/sp/sp_slide_img02.png) no-repeat center center;
    background-size: cover;
  }
  .index_main__full_contents03 {
    position: relative;
    height: 100vh;
    background: url(../../img/slide_img/sp/sp_slide_img03.png) no-repeat center center;
    background-size: cover;
  }
}

/* #### index_main #### */
@media screen and (min-width: 1024px) {
  .index_contents {
    position: relative;
    width: 100%;
    min-width: 1070px;
    padding-bottom: 140px;
    /* #### philosophy #### */
    /* #### philosophy #### */
    /* #### info #### */
    /* #### info #### */
    /* #### access #### */
    /* #### access #### */
    /* #### bloglist #### */
    /* #### bloglist #### */
    /* #### stafflist #### */
    /* #### stafflist #### */
  }
  .index_contents__philosophy {
    position: relative;
    width: 100%;
    padding-top: 128px;
    padding-bottom: 100px;
    background: url(../../img/index_img/index_philosophy_backimg.svg) no-repeat 0 center;
    background-size: 90px;
  }
  .index_contents__philosophy_title {
    position: relative;
    width: 92%;
    height: 400px;
    background: url(../../img/index_img/index_philosophy_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
    margin: 0 auto;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
  }
  .index_contents__philosophy_title02 {
    position: absolute;
    width: 60%;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
  }
  .index_contents__philosophy_title02 h2 {
    text-align: center;
    font-size: 3.6rem;
    line-height: 1.0;
    color: #fff;
    font-weight: 600;
    letter-spacing: 0.075em;
    margin-bottom: 20px;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
  }
  .index_contents__philosophy_title02 p {
    text-align: center;
    font-size: 1.5rem;
    line-height: 1.8;
    color: #fff;
    font-weight: 500;
    margin-bottom: 25px;
    text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.2);
  }
  .index_contents__philosophy_title02 h4 {
    width: 50%;
    margin: 0 auto;
  }
  .index_contents__philosophy_contents {
    position: relative;
    width: 89%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    background-color: #fff;
    margin: -60px 0 0 7%;
    padding: 40px 0 0 40px;
    border-radius: 30px 0 0 0;
    -webkit-border-radius: 30px 0 0 0;
    -moz-border-radius: 30px 0 0 0;
  }
  .index_contents__philosophy_contents_list {
    position: relative;
    width: 23.5%;
  }
  .index_contents__philosophy_contents_list_thumb {
    position: relative;
    width: 100%;
  }
  .index_contents__philosophy_contents_list_thumb a {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
  }
  .index_contents__philosophy_contents_list_thumb img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .index_contents__philosophy_contents_list_thumb .caption {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    font-size: 1.3rem;
    color: #fff;
    letter-spacing: 0.1em;
  }
  .index_contents__philosophy_contents_list_thumb .mask {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    background-color: rgba(0, 0, 0, 0.4);
    -webkit-transition: all 0.6s ease;
    transition: all 0.6s ease;
  }
  .index_contents__philosophy_contents_list_thumb:hover .mask {
    opacity: 1;
    /* マスクを表示する */
  }
  .index_contents__philosophy_contents_list_desc {
    width: 100%;
    padding-top: 20px;
  }
  .index_contents__philosophy_contents_list_desc h3 {
    color: #333;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    background: url(../img/title_icon01.svg) no-repeat 0 7px;
    background-size: 12px;
    padding: 0 0 8px 16px;
    border-bottom: 3px dotted #F4E098;
    margin-bottom: 15px;
  }
  .index_contents__philosophy_contents_list_desc h3 a, .index_contents__philosophy_contents_list_desc h3 a:link a:visited {
    color: #333;
  }
  .index_contents__philosophy_contents_list_desc h3 a:hover {
    color: #DB887F;
  }
  .index_contents__philosophy_contents_list_desc p {
    font-size: 1.5rem;
    line-height: 1.8;
    margin-bottom: 25px;
  }
  .index_contents__philosophy_contents02 {
    position: relative;
    width: 89%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 40px 0 0 7%;
    padding: 0 0 0 40px;
  }
  .index_contents__philosophy_contents02_list {
    position: relative;
    width: 48.7%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background-color: #F9F4EA;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
  }
  .index_contents__philosophy_contents02_list_thumb {
    position: relative;
    width: 48%;
  }
  .index_contents__philosophy_contents02_list_thumb a {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
    border-radius: 20px 0 0 20px;
    -webkit-border-radius: 20px 0 0 20px;
    -moz-border-radius: 20px 0 0 20px;
  }
  .index_contents__philosophy_contents02_list_thumb img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .index_contents__philosophy_contents02_list_thumb .caption {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    font-size: 1.3rem;
    color: #fff;
    letter-spacing: 0.1em;
  }
  .index_contents__philosophy_contents02_list_thumb .mask {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    background-color: rgba(0, 0, 0, 0.4);
    -webkit-transition: all 0.6s ease;
    transition: all 0.6s ease;
  }
  .index_contents__philosophy_contents02_list_thumb:hover .mask {
    opacity: 1;
    /* マスクを表示する */
  }
  .index_contents__philosophy_contents02_list_desc {
    width: 52%;
    padding: 30px 30px 30px 25px;
  }
  .index_contents__philosophy_contents02_list_desc h3 {
    color: #333;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    background: url(../img/title_icon01.svg) no-repeat 0 7px;
    background-size: 12px;
    padding: 0 0 8px 16px;
    border-bottom: 3px dotted #F4E098;
    margin-bottom: 15px;
  }
  .index_contents__philosophy_contents02_list_desc h3 a, .index_contents__philosophy_contents02_list_desc h3 a:link a:visited {
    color: #333;
  }
  .index_contents__philosophy_contents02_list_desc h3 a:hover {
    color: #DB887F;
  }
  .index_contents__philosophy_contents02_list_desc p {
    font-size: 1.5rem;
    line-height: 1.8;
  }
  .index_contents__info {
    position: relative;
    width: 100%;
    background: url(../../img/index_img/index_info_backimg02.svg) repeat center 95%;
    background-size: 160px;
    background-color: #F9F4EA;
    padding: 0 0 140px;
    margin-bottom: 80px;
  }
  .index_contents__info:before {
    position: absolute;
    content: '';
    width: 100%;
    height: 40px;
    top: 0;
    left: 0;
    background: url(../img/contents_backimg05.svg) repeat-x center 0;
    background-size: 30px;
    z-index: 10;
  }
  .index_contents__info:after {
    position: absolute;
    content: '';
    width: 100%;
    height: 40px;
    left: 0;
    bottom: 0;
    background: url(../img/contents_backimg04.svg) repeat-x center 101%;
    background-size: 30px;
  }
  .index_contents__info_title {
    position: relative;
    width: 100%;
    height: 450px;
    background: url(../../img/index_img/index_info_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
    padding: 0 4%;
    margin-bottom: 40px;
  }
  .index_contents__info_title02 {
    position: absolute;
    width: 60%;
    top: 52%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
  }
  .index_contents__info_title02 h2 {
    text-align: center;
    font-size: 3.6rem;
    line-height: 1.0;
    color: #fff;
    font-weight: 600;
    letter-spacing: 0.075em;
    margin-bottom: 20px;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
  }
  .index_contents__info_title02 p {
    text-align: center;
    font-size: 1.5rem;
    line-height: 1.8;
    color: #fff;
    font-weight: 500;
    margin-bottom: 25px;
    text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.2);
  }
  .index_contents__info_title02 h4 {
    width: 50%;
    margin: 0 auto;
  }
  .index_contents__infolist_sp {
    position: relative;
    width: 86%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 0 auto;
  }
  .index_contents__infolist {
    position: relative;
    width: 31.5%;
  }
  .index_contents__infolist p {
    width: 100%;
    background-color: #fff;
    border-radius: 30px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
  }
  .index_contents__infolist p img {
    width: 100%;
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
    border-radius: 30px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border: 10px solid #fff;
  }
  .index_contents__infolist h3 {
    position: absolute;
    bottom: -20px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    width: 80%;
    text-align: center;
    color: #333;
    font-size: 1.6rem;
    line-height: 1.0;
    letter-spacing: 0.1em;
    font-weight: 500;
    background: url(../img/list_mk003.svg) no-repeat right 15px center;
    background-size: 10px;
    background-color: #fff;
    padding: 16px 0;
    border-radius: 30px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
  }
  .index_contents__infolist:nth-child(2) {
    padding-top: 60px;
  }
  .index_contents__access {
    position: relative;
    width: 100%;
    margin-bottom: 80px;
  }
  .index_contents__access02 {
    position: relative;
    width: 92%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 0 auto;
  }
  .index_contents__access02_left {
    width: 60%;
    height: 500px;
    background-color: #ccc;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    overflow: hidden;
  }
  .index_contents__access02_left iframe {
    width: 100%;
  }
  .index_contents__access02_right {
    width: 40%;
    padding-left: 40px;
  }
  .index_contents__access02_right_list {
    position: relative;
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    border-top: 3px dotted #F4E098;
    padding: 30px 0;
  }
  .index_contents__access02_right_list:nth-child(2) {
    border-bottom: 3px dotted #F4E098;
  }
  .index_contents__access02_right_list_thumb {
    width: 40%;
  }
  .index_contents__access02_right_list_thumb a {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
  }
  .index_contents__access02_right_list_thumb img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .index_contents__access02_right_list_thumb .caption {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    font-size: 1.3rem;
    color: #fff;
    letter-spacing: 0.1em;
  }
  .index_contents__access02_right_list_thumb .mask {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    background-color: rgba(0, 0, 0, 0.4);
    -webkit-transition: all 0.6s ease;
    transition: all 0.6s ease;
  }
  .index_contents__access02_right_list_thumb:hover .mask {
    opacity: 1;
    /* マスクを表示する */
  }
  .index_contents__access02_right_list_desc {
    width: 60%;
    padding-left: 25px;
  }
  .index_contents__access02_right_list_desc h3 {
    color: #333;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    background: url(../img/title_icon01.svg) no-repeat 0 7px;
    background-size: 12px;
    padding-left: 16px;
    margin-bottom: 15px;
  }
  .index_contents__access02_right_list_desc h3 a, .index_contents__access02_right_list_desc h3 a:link a:visited {
    color: #333;
  }
  .index_contents__access02_right_list_desc h3 a:hover {
    color: #DB887F;
  }
  .index_contents__access02_right_list_desc p {
    font-size: 1.5rem;
    line-height: 1.8;
  }
  .index_contents__bloglist_sp {
    position: relative;
    width: 100%;
    margin-bottom: 80px;
  }
  .index_contents__bloglist_sp02 {
    position: relative;
    width: 92%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 0 auto;
  }
  .index_contents__bloglist {
    position: relative;
    width: 23.5%;
    background-color: #F9F4EA;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
  }
  .index_contents__bloglist_thumb {
    position: relative;
    width: 100%;
  }
  .index_contents__bloglist_thumb a {
    position: relative;
    display: block;
    width: 100%;
    height: 186px;
    overflow: hidden;
    border-radius: 20px 20px 0 0;
    -webkit-border-radius: 20px 20px 0 0;
    -moz-border-radius: 20px 20px 0 0;
  }
  .index_contents__bloglist_thumb img {
    width: 100%;
    height: 186px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .index_contents__bloglist_thumb .caption {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    font-size: 1.3rem;
    color: #fff;
    letter-spacing: 0.1em;
  }
  .index_contents__bloglist_thumb .mask {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    background-color: rgba(0, 0, 0, 0.4);
    -webkit-transition: all 0.6s ease;
    transition: all 0.6s ease;
  }
  .index_contents__bloglist_thumb:hover .mask {
    opacity: 1;
    /* マスクを表示する */
  }
  .index_contents__bloglist_desc {
    width: 100%;
    padding: 20px 30px 35px;
  }
  .index_contents__bloglist_desc h3 {
    height: 70px;
    color: #333;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    background: url(../img/title_icon01.svg) no-repeat 0 7px;
    background-size: 12px;
    padding-left: 16px;
    margin-bottom: 15px;
  }
  .index_contents__bloglist_desc h3 a, .index_contents__bloglist_desc h3 a:link a:visited {
    color: #333;
  }
  .index_contents__bloglist_desc h3 a:hover {
    color: #DB887F;
  }
  .index_contents__bloglist_desc p {
    font-size: 1.5rem;
    line-height: 1.8;
  }
  .index_contents__bloglist_desc ul {
    position: absolute;
    background-color: #83B2A6;
    width: 60%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    bottom: -14px;
    right: -15px;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    padding: 10px 20px;
  }
  .index_contents__bloglist_desc ul li {
    color: #fff;
    line-height: 1.0;
    font-size: 1.2rem;
  }
  .index_contents__bloglist_desc ul li img {
    width: 16px;
    padding-right: 5px;
  }
  .index_contents__bloglist_none {
    position: relative;
    width: 100%;
    background-color: #F9F4EA;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    padding: 40px 0;
    border: 1px dotted #f2ead9;
  }
  .index_contents__bloglist_none p {
    text-align: center;
    font-size: 1.5rem;
    line-height: 1.8;
  }
  .index_contents__bloglist_btn_sp {
    position: relative;
    width: 60%;
    margin: 60px auto 0;
  }
  .index_contents__bloglist_btn_sp h4 {
    width: 50%;
    margin: 0 auto;
  }
  .index_contents__stafflist_sp {
    position: relative;
    width: 100%;
  }
  .index_contents__stafflist_slide_inner {
    position: relative;
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .index_contents__stafflist_slide_inner .slick-list {
    padding: 0 80px 15px 80px !important;
  }
  .index_contents__stafflist {
    position: relative;
    width: 20%;
    padding: 0 9px;
  }
  .index_contents__stafflist h3 {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #333;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    line-height: 1.0;
  }
  .index_contents__stafflist h3 img {
    width: 18px;
    padding-right: 5px;
  }
  .index_contents__stafflist h4 {
    text-align: center;
    font-size: 1.3rem;
    letter-spacing: 0.1em;
    margin-bottom: 6px;
  }
  .index_contents__stafflist p {
    width: 100%;
    margin-bottom: 15px;
  }
  .index_contents__stafflist p img {
    width: 100%;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .index_contents {
    position: relative;
    padding-bottom: 120px;
    /* #### philosophy #### */
    /* #### philosophy #### */
    /* #### info #### */
    /* #### info #### */
    /* #### access #### */
    /* #### access #### */
    /* #### bloglist #### */
    /* #### bloglist #### */
    /* #### stafflist #### */
    /* #### stafflist #### */
  }
  .index_contents__philosophy {
    position: relative;
    width: 100%;
    padding-top: 128px;
    padding-bottom: 100px;
    background: url(../../img/index_img/index_philosophy_backimg.svg) no-repeat 0 center;
    background-size: 90px;
  }
  .index_contents__philosophy_title {
    position: relative;
    width: 96%;
    height: 400px;
    background: url(../../img/index_img/index_philosophy_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
    margin-left: 4%;
    border-radius: 20px 0 0 20px;
    -webkit-border-radius: 20px 0 0 20px;
    -moz-border-radius: 20px 0 0 20px;
    padding-right: 4%;
  }
  .index_contents__philosophy_title02 {
    position: absolute;
    width: 70%;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
  }
  .index_contents__philosophy_title02 h2 {
    text-align: center;
    font-size: 3rem;
    line-height: 1.0;
    color: #fff;
    font-weight: 600;
    letter-spacing: 0.075em;
    margin-bottom: 20px;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
  }
  .index_contents__philosophy_title02 p {
    text-align: center;
    font-size: 1.3rem;
    line-height: 1.8;
    color: #fff;
    font-weight: 500;
    margin-bottom: 25px;
    text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.2);
  }
  .index_contents__philosophy_title02 h4 {
    width: 70%;
    margin: 0 auto;
  }
  .index_contents__philosophy_contents {
    position: relative;
    width: 89%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    background-color: #fff;
    margin: -60px 0 0 11%;
    padding: 40px 4% 0 40px;
    border-radius: 30px 0 0 0;
    -webkit-border-radius: 30px 0 0 0;
    -moz-border-radius: 30px 0 0 0;
  }
  .index_contents__philosophy_contents_list {
    position: relative;
    width: 48.5%;
    margin-bottom: 30px;
  }
  .index_contents__philosophy_contents_list_thumb {
    position: relative;
    width: 100%;
  }
  .index_contents__philosophy_contents_list_thumb a {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
  }
  .index_contents__philosophy_contents_list_thumb img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .index_contents__philosophy_contents_list_thumb .caption {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    font-size: 1.2rem;
    color: #fff;
    letter-spacing: 0.1em;
  }
  .index_contents__philosophy_contents_list_thumb .mask {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    background-color: rgba(0, 0, 0, 0.4);
    -webkit-transition: all 0.6s ease;
    transition: all 0.6s ease;
  }
  .index_contents__philosophy_contents_list_thumb:hover .mask {
    opacity: 1;
    /* マスクを表示する */
  }
  .index_contents__philosophy_contents_list_desc {
    width: 100%;
    padding-top: 20px;
  }
  .index_contents__philosophy_contents_list_desc h3 {
    color: #333;
    font-size: 1.5rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    background: url(../img/title_icon01.svg) no-repeat 0 7px;
    background-size: 12px;
    padding: 0 0 8px 16px;
    border-bottom: 3px dotted #F4E098;
    margin-bottom: 15px;
  }
  .index_contents__philosophy_contents_list_desc h3 a, .index_contents__philosophy_contents_list_desc h3 a:link a:visited {
    color: #333;
  }
  .index_contents__philosophy_contents_list_desc h3 a:hover {
    color: #DB887F;
  }
  .index_contents__philosophy_contents_list_desc p {
    font-size: 1.3rem;
    line-height: 1.8;
    margin-bottom: 20px;
  }
  .index_contents__philosophy_contents02 {
    position: relative;
    width: 89%;
    margin: 0 0 0 11%;
    padding: 0 4% 0 40px;
  }
  .index_contents__philosophy_contents02_list {
    position: relative;
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background-color: #F9F4EA;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    margin-bottom: 20px;
  }
  .index_contents__philosophy_contents02_list_thumb {
    position: relative;
    width: 40%;
  }
  .index_contents__philosophy_contents02_list_thumb a {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
    border-radius: 20px 0 0 20px;
    -webkit-border-radius: 20px 0 0 20px;
    -moz-border-radius: 20px 0 0 20px;
  }
  .index_contents__philosophy_contents02_list_thumb img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .index_contents__philosophy_contents02_list_thumb .caption {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    font-size: 1.2rem;
    color: #fff;
    letter-spacing: 0.1em;
  }
  .index_contents__philosophy_contents02_list_thumb .mask {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    background-color: rgba(0, 0, 0, 0.4);
    -webkit-transition: all 0.6s ease;
    transition: all 0.6s ease;
  }
  .index_contents__philosophy_contents02_list_thumb:hover .mask {
    opacity: 1;
    /* マスクを表示する */
  }
  .index_contents__philosophy_contents02_list_desc {
    width: 60%;
    padding: 0px 30px 0px 25px;
  }
  .index_contents__philosophy_contents02_list_desc h3 {
    color: #333;
    font-size: 1.5rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    background: url(../img/title_icon01.svg) no-repeat 0 7px;
    background-size: 12px;
    padding: 0 0 8px 16px;
    border-bottom: 3px dotted #F4E098;
    margin-bottom: 15px;
  }
  .index_contents__philosophy_contents02_list_desc h3 a, .index_contents__philosophy_contents02_list_desc h3 a:link a:visited {
    color: #333;
  }
  .index_contents__philosophy_contents02_list_desc h3 a:hover {
    color: #DB887F;
  }
  .index_contents__philosophy_contents02_list_desc p {
    font-size: 1.3rem;
    line-height: 1.8;
  }
  .index_contents__info {
    position: relative;
    width: 100%;
    background: url(../../img/index_img/index_info_backimg02.svg) repeat center 95%;
    background-size: 160px;
    background-color: #F9F4EA;
    padding: 0 0 140px;
    margin-bottom: 80px;
  }
  .index_contents__info:before {
    position: absolute;
    content: '';
    width: 100%;
    height: 40px;
    top: 0;
    left: 0;
    background: url(../img/contents_backimg05.svg) repeat-x center 0;
    background-size: 30px;
    z-index: 10;
  }
  .index_contents__info:after {
    position: absolute;
    content: '';
    width: 100%;
    height: 40px;
    left: 0;
    bottom: 0;
    background: url(../img/contents_backimg04.svg) repeat-x center 101%;
    background-size: 30px;
  }
  .index_contents__info_title {
    position: relative;
    width: 100%;
    height: 450px;
    background: url(../../img/index_img/index_info_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
    padding: 0 4%;
  }
  .index_contents__info_title02 {
    position: absolute;
    width: 70%;
    top: 52%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
  }
  .index_contents__info_title02 h2 {
    text-align: center;
    font-size: 3rem;
    line-height: 1.0;
    color: #fff;
    font-weight: 600;
    letter-spacing: 0.075em;
    margin-bottom: 20px;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
  }
  .index_contents__info_title02 p {
    text-align: center;
    font-size: 1.3rem;
    line-height: 1.8;
    color: #fff;
    font-weight: 500;
    margin-bottom: 25px;
    text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.2);
  }
  .index_contents__info_title02 h4 {
    width: 70%;
    margin: 0 auto;
  }
  .index_contents__infolist_sp {
    position: relative;
    width: 90%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 0 auto;
  }
  .index_contents__infolist {
    position: relative;
    width: 48%;
  }
  .index_contents__infolist p {
    width: 100%;
    background-color: #fff;
    border-radius: 30px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
  }
  .index_contents__infolist p img {
    width: 100%;
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
    border-radius: 30px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border: 10px solid #fff;
  }
  .index_contents__infolist h3 {
    position: absolute;
    bottom: -20px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    width: 80%;
    text-align: center;
    color: #333;
    font-size: 1.5rem;
    line-height: 1.0;
    letter-spacing: 0.1em;
    font-weight: 500;
    background: url(../img/list_mk003.svg) no-repeat right 10px center;
    background-size: 10px;
    background-color: #fff;
    padding: 16px 0;
    border-radius: 30px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
  }
  .index_contents__infolist:nth-child(2) {
    margin-top: 120px;
  }
  .index_contents__infolist:nth-child(3) {
    margin-top: -60px;
  }
  .index_contents__access {
    position: relative;
    width: 100%;
    margin-bottom: 80px;
  }
  .index_contents__access02 {
    position: relative;
    width: 100%;
  }
  .index_contents__access02_left {
    width: 96%;
    height: 400px;
    background-color: #ccc;
    border-radius: 0 20px 20px 0;
    -webkit-border-radius: 0 20px 20px 0;
    -moz-border-radius: 0 20px 20px 0;
    overflow: hidden;
  }
  .index_contents__access02_left iframe {
    width: 100%;
  }
  .index_contents__access02_right {
    width: 90%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 30px auto 0;
  }
  .index_contents__access02_right_list {
    position: relative;
    width: 48%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    border-top: 3px dotted #F4E098;
    border-bottom: 3px dotted #F4E098;
    padding: 25px 0;
  }
  .index_contents__access02_right_list_thumb {
    width: 40%;
  }
  .index_contents__access02_right_list_thumb a {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
  }
  .index_contents__access02_right_list_thumb img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .index_contents__access02_right_list_thumb .caption {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    font-size: 1.2rem;
    color: #fff;
    letter-spacing: 0.1em;
  }
  .index_contents__access02_right_list_thumb .mask {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    background-color: rgba(0, 0, 0, 0.4);
    -webkit-transition: all 0.6s ease;
    transition: all 0.6s ease;
  }
  .index_contents__access02_right_list_thumb:hover .mask {
    opacity: 1;
    /* マスクを表示する */
  }
  .index_contents__access02_right_list_desc {
    width: 60%;
    padding-left: 20px;
  }
  .index_contents__access02_right_list_desc h3 {
    color: #333;
    font-size: 1.5rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    background: url(../img/title_icon01.svg) no-repeat 0 7px;
    background-size: 12px;
    padding-left: 16px;
    margin-bottom: 12px;
  }
  .index_contents__access02_right_list_desc h3 a, .index_contents__access02_right_list_desc h3 a:link a:visited {
    color: #333;
  }
  .index_contents__access02_right_list_desc h3 a:hover {
    color: #DB887F;
  }
  .index_contents__access02_right_list_desc p {
    font-size: 1.3rem;
    line-height: 1.8;
  }
  .index_contents__bloglist_sp {
    position: relative;
    width: 100%;
    margin-bottom: 50px;
  }
  .index_contents__bloglist_sp02 {
    position: relative;
    width: 92%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 0 auto;
  }
  .index_contents__bloglist {
    position: relative;
    width: 48.5%;
    background-color: #F9F4EA;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    margin-bottom: 30px;
  }
  .index_contents__bloglist_thumb {
    position: relative;
    width: 100%;
  }
  .index_contents__bloglist_thumb a {
    position: relative;
    display: block;
    width: 100%;
    height: 228px;
    overflow: hidden;
    border-radius: 20px 20px 0 0;
    -webkit-border-radius: 20px 20px 0 0;
    -moz-border-radius: 20px 20px 0 0;
  }
  .index_contents__bloglist_thumb img {
    width: 100%;
    height: 228px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .index_contents__bloglist_thumb .caption {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    font-size: 1.2rem;
    color: #fff;
    letter-spacing: 0.1em;
  }
  .index_contents__bloglist_thumb .mask {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    background-color: rgba(0, 0, 0, 0.4);
    -webkit-transition: all 0.6s ease;
    transition: all 0.6s ease;
  }
  .index_contents__bloglist_thumb:hover .mask {
    opacity: 1;
    /* マスクを表示する */
  }
  .index_contents__bloglist_desc {
    width: 100%;
    padding: 20px 30px 35px;
  }
  .index_contents__bloglist_desc h3 {
    height: 45px;
    color: #333;
    font-size: 1.5rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    background: url(../img/title_icon01.svg) no-repeat 0 6px;
    background-size: 12px;
    padding-left: 16px;
    margin-bottom: 10px;
  }
  .index_contents__bloglist_desc h3 a, .index_contents__bloglist_desc h3 a:link a:visited {
    color: #333;
  }
  .index_contents__bloglist_desc h3 a:hover {
    color: #DB887F;
  }
  .index_contents__bloglist_desc p {
    font-size: 1.3rem;
    line-height: 1.8;
  }
  .index_contents__bloglist_desc ul {
    position: absolute;
    background-color: #83B2A6;
    width: 42%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    bottom: -14px;
    right: -15px;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    padding: 10px 0;
  }
  .index_contents__bloglist_desc ul li {
    color: #fff;
    line-height: 1.0;
    font-size: 1.2rem;
  }
  .index_contents__bloglist_desc ul li img {
    width: 16px;
    padding-right: 5px;
  }
  .index_contents__bloglist_none {
    position: relative;
    width: 100%;
    background-color: #F9F4EA;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    padding: 40px 0;
    border: 1px dotted #f2ead9;
  }
  .index_contents__bloglist_none p {
    text-align: center;
    font-size: 1.3rem;
    line-height: 1.8;
  }
  .index_contents__bloglist_btn_sp {
    position: relative;
    width: 70%;
    margin: 60px auto 0;
  }
  .index_contents__bloglist_btn_sp h4 {
    width: 70%;
    margin: 0 auto;
  }
  .index_contents__stafflist_sp {
    position: relative;
    width: 100%;
  }
  .index_contents__stafflist_slide_inner {
    position: relative;
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .index_contents__stafflist_slide_inner .slick-list {
    padding: 0 30px 15px 30px !important;
  }
  .index_contents__stafflist {
    position: relative;
    width: 20%;
    padding: 0 8px;
  }
  .index_contents__stafflist h3 {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #333;
    font-size: 1.5rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    line-height: 1.0;
  }
  .index_contents__stafflist h3 img {
    width: 18px;
    padding-right: 5px;
  }
  .index_contents__stafflist h4 {
    text-align: center;
    font-size: 1.3rem;
    letter-spacing: 0.1em;
    margin-bottom: 6px;
  }
  .index_contents__stafflist p {
    width: 100%;
    margin-bottom: 15px;
  }
  .index_contents__stafflist p img {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .index_contents {
    position: relative;
    padding-bottom: 120px;
    /* #### philosophy #### */
    /* #### philosophy #### */
    /* #### info #### */
    /* #### info #### */
    /* #### access #### */
    /* #### access #### */
    /* #### bloglist #### */
    /* #### bloglist #### */
    /* #### stafflist #### */
    /* #### stafflist #### */
  }
  .index_contents__philosophy {
    position: relative;
    width: 100%;
    padding-top: 80px;
    padding-bottom: 60px;
    background: url(../../img/index_img/index_philosophy_backimg.svg) no-repeat 0 700px;
    background-size: 17%;
  }
  .index_contents__philosophy_title {
    position: relative;
    width: 96%;
    height: 350px;
    background: url(../../img/index_img/index_philosophy_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
    margin-left: 4%;
    padding-right: 4%;
    border-radius: 18px 0 0 18px;
    -webkit-border-radius: 18px 0 0 18px;
    -moz-border-radius: 18px 0 0 18px;
  }
  .index_contents__philosophy_title02 {
    position: absolute;
    width: 80%;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
  }
  .index_contents__philosophy_title02 h2 {
    text-align: center;
    font-size: 2.4rem;
    line-height: 1.0;
    color: #fff;
    font-weight: 600;
    letter-spacing: 0.075em;
    margin-bottom: 15px;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
  }
  .index_contents__philosophy_title02 p {
    font-size: 1.4rem;
    line-height: 1.8;
    color: #fff;
    font-weight: 500;
    margin-bottom: 20px;
    text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.2);
  }
  .index_contents__philosophy_title02 p br {
    display: none;
  }
  .index_contents__philosophy_title02 h4 {
    width: 100%;
  }
  .index_contents__philosophy_contents {
    position: relative;
    width: 86%;
    margin: -40px 0 0 14%;
    padding: 30px 4% 0 30px;
  }
  .index_contents__philosophy_contents:before {
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    width: 100%;
    height: 60px;
    background-color: #fff;
    border-radius: 30px 0 0 0;
    -webkit-border-radius: 30px 0 0 0;
    -moz-border-radius: 30px 0 0 0;
  }
  .index_contents__philosophy_contents_list {
    position: relative;
    width: 100%;
    margin-bottom: 35px;
  }
  .index_contents__philosophy_contents_list_thumb {
    position: relative;
    width: 100%;
  }
  .index_contents__philosophy_contents_list_thumb a {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
    border-radius: 18px;
    -webkit-border-radius: 18px;
    -moz-border-radius: 18px;
  }
  .index_contents__philosophy_contents_list_thumb img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .index_contents__philosophy_contents_list_thumb .caption {
    display: none;
  }
  .index_contents__philosophy_contents_list_thumb .mask {
    display: none;
  }
  .index_contents__philosophy_contents_list_desc {
    width: 100%;
    padding-top: 20px;
  }
  .index_contents__philosophy_contents_list_desc h3 {
    color: #333;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    background: url(../img/title_icon01.svg) no-repeat 0 6px;
    background-size: 12px;
    padding: 0 0 8px 16px;
    border-bottom: 3px dotted #F4E098;
    margin-bottom: 15px;
  }
  .index_contents__philosophy_contents_list_desc h3 a, .index_contents__philosophy_contents_list_desc h3 a:link a:visited {
    color: #333;
  }
  .index_contents__philosophy_contents_list_desc h3 a:hover {
    color: #DB887F;
  }
  .index_contents__philosophy_contents_list_desc p {
    font-size: 1.4rem;
    line-height: 1.8;
    margin-bottom: 15px;
  }
  .index_contents__philosophy_contents02 {
    position: relative;
    width: 92%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 0 auto;
  }
  .index_contents__philosophy_contents02_list {
    position: relative;
    width: 48.7%;
    background-color: #F9F4EA;
    border-radius: 18px;
    -webkit-border-radius: 18px;
    -moz-border-radius: 18px;
  }
  .index_contents__philosophy_contents02_list_thumb {
    position: relative;
    width: 100%;
  }
  .index_contents__philosophy_contents02_list_thumb a {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
    border-radius: 18px 18px 0 0;
    -webkit-border-radius: 18px 18px 0 0;
    -moz-border-radius: 18px 18px 0 0;
  }
  .index_contents__philosophy_contents02_list_thumb img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .index_contents__philosophy_contents02_list_thumb .caption {
    display: none;
  }
  .index_contents__philosophy_contents02_list_thumb .mask {
    display: none;
  }
  .index_contents__philosophy_contents02_list_desc {
    width: 100%;
    padding: 20px 20px 25px 20px;
  }
  .index_contents__philosophy_contents02_list_desc h3 {
    color: #333;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    padding-bottom: 8px;
    border-bottom: 3px dotted #F4E098;
    margin-bottom: 10px;
  }
  .index_contents__philosophy_contents02_list_desc h3 a {
    color: #333;
  }
  .index_contents__philosophy_contents02_list_desc p {
    font-size: 1.4rem;
    line-height: 1.8;
  }
  .index_contents__info {
    position: relative;
    width: 100%;
    background: url(../../img/index_img/index_info_backimg02.svg) repeat center 95%;
    background-size: 120px;
    background-color: #F9F4EA;
    padding: 0 0 80px;
    margin-bottom: 60px;
  }
  .index_contents__info:before {
    position: absolute;
    content: '';
    width: 100%;
    height: 40px;
    top: 0;
    left: 0;
    background: url(../img/contents_backimg05.svg) repeat-x center 0;
    background-size: 30px;
    z-index: 10;
  }
  .index_contents__info:after {
    position: absolute;
    content: '';
    width: 100%;
    height: 40px;
    left: 0;
    bottom: 0;
    background: url(../img/contents_backimg04.svg) repeat-x center 101%;
    background-size: 30px;
  }
  .index_contents__info_title {
    position: relative;
    width: 100%;
    height: 400px;
    background: url(../../img/index_img/index_info_title_backimg.png) no-repeat 50% 50%;
    background-size: cover;
    padding: 0 4%;
  }
  .index_contents__info_title02 {
    position: absolute;
    width: 80%;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
  }
  .index_contents__info_title02 h2 {
    text-align: center;
    font-size: 2.4rem;
    line-height: 1.0;
    color: #fff;
    font-weight: 600;
    letter-spacing: 0.075em;
    margin-bottom: 15px;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
  }
  .index_contents__info_title02 p {
    font-size: 1.4rem;
    line-height: 1.8;
    color: #fff;
    font-weight: 500;
    margin-bottom: 20px;
    text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.2);
  }
  .index_contents__info_title02 p br {
    display: none;
  }
  .index_contents__info_title02 h4 {
    width: 100%;
  }
  .index_contents__infolist_sp {
    position: relative;
    width: 88%;
    margin: 0 auto;
  }
  .index_contents__infolist {
    position: relative;
    width: 94%;
    margin-bottom: 40px;
  }
  .index_contents__infolist p {
    width: 100%;
    background-color: #fff;
    border-radius: 26px;
    -webkit-border-radius: 26px;
    -moz-border-radius: 26px;
  }
  .index_contents__infolist p img {
    width: 100%;
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
    border-radius: 26px;
    -webkit-border-radius: 26px;
    -moz-border-radius: 26px;
    border: 10px solid #fff;
  }
  .index_contents__infolist h3 {
    position: absolute;
    bottom: -20px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    width: 85%;
    text-align: center;
    color: #333;
    font-size: 1.6rem;
    line-height: 1.0;
    letter-spacing: 0.1em;
    font-weight: 500;
    background: url(../img/list_mk003.svg) no-repeat right 13px center;
    background-size: 10px;
    background-color: #fff;
    padding: 16px 0;
    border-radius: 30px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
  }
  .index_contents__infolist:nth-child(2) {
    margin-left: 6%;
  }
  .index_contents__access {
    position: relative;
    width: 100%;
    margin-bottom: 60px;
  }
  .index_contents__access02 {
    position: relative;
    width: 100%;
  }
  .index_contents__access02_left {
    width: 100%;
    height: 300px;
    background-color: #ccc;
    overflow: hidden;
  }
  .index_contents__access02_left iframe {
    width: 100%;
  }
  .index_contents__access02_right {
    width: 90%;
    margin: 30px auto 0;
  }
  .index_contents__access02_right_list {
    position: relative;
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    border-top: 3px dotted #F4E098;
    padding: 20px 0;
  }
  .index_contents__access02_right_list:nth-child(2) {
    border-bottom: 3px dotted #F4E098;
  }
  .index_contents__access02_right_list_thumb {
    width: 50%;
  }
  .index_contents__access02_right_list_thumb a {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
    border-radius: 18px;
    -webkit-border-radius: 18px;
    -moz-border-radius: 18px;
  }
  .index_contents__access02_right_list_thumb img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .index_contents__access02_right_list_thumb .caption {
    display: none;
  }
  .index_contents__access02_right_list_thumb .mask {
    display: none;
  }
  .index_contents__access02_right_list_desc {
    width: 50%;
    padding-left: 20px;
  }
  .index_contents__access02_right_list_desc h3 {
    color: #333;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    line-height: 1.5;
    background: url(../img/title_icon01.svg) no-repeat 0 6px;
    background-size: 12px;
    padding-left: 16px;
    margin-bottom: 10px;
  }
  .index_contents__access02_right_list_desc h3 a {
    color: #333;
  }
  .index_contents__access02_right_list_desc p {
    font-size: 1.4rem;
    line-height: 1.8;
  }
  .index_contents__bloglist_sp {
    position: relative;
    width: 100%;
    margin-bottom: 60px;
  }
  .index_contents__bloglist_sp02 {
    position: relative;
    width: 90%;
    margin: 0 auto;
  }
  .index_contents__bloglist {
    position: relative;
    width: 100%;
    background-color: #F9F4EA;
    border-radius: 18px;
    -webkit-border-radius: 18px;
    -moz-border-radius: 18px;
    margin-bottom: 30px;
  }
  .index_contents__bloglist_thumb {
    position: relative;
    width: 100%;
  }
  .index_contents__bloglist_thumb a {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
    border-radius: 18px 18px 0 0;
    -webkit-border-radius: 18px 18px 0 0;
    -moz-border-radius: 18px 18px 0 0;
  }
  .index_contents__bloglist_thumb img {
    width: 100%;
    height: 225px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .index_contents__bloglist_thumb .caption {
    display: none;
  }
  .index_contents__bloglist_thumb .mask {
    display: none;
  }
  .index_contents__bloglist_desc {
    width: 100%;
    padding: 20px 25px 30px;
  }
  .index_contents__bloglist_desc h3 {
    color: #333;
    font-size: 1.8rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    background: url(../img/title_icon01.svg) no-repeat 0 8px;
    background-size: 12px;
    padding-left: 17px;
    margin-bottom: 15px;
  }
  .index_contents__bloglist_desc h3 a {
    color: #333;
  }
  .index_contents__bloglist_desc p {
    display: none;
  }
  .index_contents__bloglist_desc ul {
    position: absolute;
    background-color: #83B2A6;
    width: 120px;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    bottom: -16px;
    right: -6px;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    padding: 10px 0px;
  }
  .index_contents__bloglist_desc ul li {
    color: #fff;
    line-height: 1.0;
    font-size: 1.2rem;
  }
  .index_contents__bloglist_desc ul li img {
    width: 16px;
    padding-right: 5px;
  }
  .index_contents__bloglist_none {
    position: relative;
    width: 100%;
    background-color: #F9F4EA;
    border-radius: 18px;
    -webkit-border-radius: 18px;
    -moz-border-radius: 18px;
    padding: 30px 0;
    border: 1px dotted #f2ead9;
  }
  .index_contents__bloglist_none p {
    text-align: center;
    font-size: 1.4rem;
    line-height: 1.8;
  }
  .index_contents__bloglist_btn_sp {
    position: relative;
    width: 80%;
    margin: 40px auto 0;
  }
  .index_contents__bloglist_btn_sp h4 {
    width: 100%;
  }
  .index_contents__stafflist_sp {
    position: relative;
    width: 100%;
  }
  .index_contents__stafflist_slide_inner {
    position: relative;
    width: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .index_contents__stafflist_slide_inner .slick-list {
    padding: 0 80px 15px 80px !important;
  }
  .index_contents__stafflist {
    position: relative;
    width: 20%;
    padding: 0 9px;
  }
  .index_contents__stafflist h3 {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #333;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    line-height: 1.0;
  }
  .index_contents__stafflist h3 img {
    width: 18px;
    padding-right: 5px;
  }
  .index_contents__stafflist h4 {
    text-align: center;
    font-size: 1.2rem;
    letter-spacing: 0.1em;
    margin-bottom: 6px;
  }
  .index_contents__stafflist p {
    width: 100%;
    margin-bottom: 15px;
  }
  .index_contents__stafflist p img {
    width: 100%;
  }
}

/* ########## index_contents ########## */
/* ########## class_style ########## */
@media screen and (min-width: 1024px) {
  p.new_icon {
    position: absolute;
    width: 70px;
    top: -20px;
    left: -20px;
    z-index: 10;
  }
  p.new_icon img {
    width: 100%;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  p.new_icon {
    position: absolute;
    width: 80px;
    top: -20px;
    left: -20px;
    z-index: 10;
  }
  p.new_icon img {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  p.new_icon {
    position: absolute;
    width: 45px;
    top: -10px;
    left: -10px;
    z-index: 10;
  }
  p.new_icon img {
    width: 100%;
  }
}

.fadein {
  opacity: 0;
  -webkit-transform: translate(0, 20px);
          transform: translate(0, 20px);
  -webkit-transition: all 1000ms;
  transition: all 1000ms;
}

.fadein.scrollin {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.fadein01 {
  opacity: 0;
  -webkit-transform: translate(0, -50px);
          transform: translate(0, -50px);
  -webkit-transition: all 1000ms;
  transition: all 1000ms;
}

.fadein01.scrollin {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.fadein02 {
  opacity: 0;
  -webkit-transform: translate(-30px, 0);
          transform: translate(-30px, 0);
  -webkit-transition: all 1000ms;
  transition: all 1000ms;
}

.fadein02.scrollin {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.fadein03 {
  opacity: 0;
  -webkit-transform: translate(30px, 0);
          transform: translate(30px, 0);
  -webkit-transition: all 1000ms;
  transition: all 1000ms;
}

.fadein03.scrollin {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.popup_icon {
  -webkit-animation-name: popup;
          animation-name: popup;
  -webkit-animation-timing-function: ease-in-out;
          animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
  -webkit-animation-direction: alternate;
          animation-direction: alternate;
  -webkit-animation-duration: 1.5s;
          animation-duration: 1.5s;
}

@-webkit-keyframes popup {
  0% {
    -webkit-transform: translate(0, 0px);
            transform: translate(0, 0px);
  }
  100% {
    -webkit-transform: translate(0, -15px);
            transform: translate(0, -15px);
  }
}

@keyframes popup {
  0% {
    -webkit-transform: translate(0, 0px);
            transform: translate(0, 0px);
  }
  100% {
    -webkit-transform: translate(0, -15px);
            transform: translate(0, -15px);
  }
}

/* ########## class_style ########## */
/*# sourceMappingURL=index.css.map */