@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&family=Zen+Maru+Gothic:wght@500&display=swap");
/* A Modern CSS Reset */
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

ul[role=list],
ol[role=list] {
  list-style: none;
}

html {
  scroll-behavior: auto;
}

body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

img,
picture {
  max-width: 100%;
  display: block;
}

input,
button,
textarea,
select {
  font: inherit;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    -webkit-animation-duration: 0.01ms !important;
            animation-duration: 0.01ms !important;
    -webkit-animation-iteration-count: 1 !important;
            animation-iteration-count: 1 !important;
    -webkit-transition-duration: 0.01ms !important;
            transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
html {
  font-size: 62.5%;
  height: -webkit-fill-available;
}

body {
  font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 1.4rem;
  line-height: 1;
  letter-spacing: 0.05em;
  min-height: 100vh;
  min-height: -webkit-fill-available;
}

a {
  text-decoration: none;
  outline: none;
}

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

.no-style {
  list-style: none;
  padding-left: 0;
}

.indent-2 {
  text-indent: -2em;
  padding-left: 2em;
}

.inline li {
  display: inline-block;
}

/* layouts */
.layouter {
  max-width: 980px;
  margin: 0 auto;
}

/* page layouts */
body {
  color: #262626;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}

a {
  color: inherit;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
a:hover {
  color: #00986B;
}

/*　Module
------------------------------ */
.icon-home {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 22'%3E%3Cdefs%3E%3CclipPath id='a' transform='translate(-1 -1)'%3E%3Cpath d='M0 0h24v24H0z' style='fill:none'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg data-name='layer2' style='clip-path:url(%23a)'%3E%3Cpath d='M1.75 22.25V9.38L12 1.93l10.25 7.45v12.87h-7V15A1.25 1.25 0 0 0 14 13.75h-4A1.25 1.25 0 0 0 8.75 15v7.25Z' style='stroke:%23008d54;stroke-width:1.5px;fill:none' transform='translate(-1 -1)'/%3E%3C/g%3E%3C/svg%3E");
  background-size: 23px auto;
}

.icon-loupe {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cdefs%3E%3CclipPath id='a' transform='translate(-2 -2)'%3E%3Cpath d='M0 0h24v24H0z' style='fill:none'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg data-name='layer2' style='clip-path:url(%23a)'%3E%3Cpath d='M16 17a8.52 8.52 0 1 1 1-1l4.75 4.75a.73.73 0 0 1 .22.53.75.75 0 0 1-.75.75.74.74 0 0 1-.53-.22ZM10.51 3.5a7 7 0 1 0 7 7 7 7 0 0 0-7-7Z' style='fill:%23008d54' transform='translate(-2 -2)'/%3E%3C/g%3E%3C/svg%3E");
  background-size: 20px auto;
}

.icon-catalog {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 22'%3E%3Cdefs%3E%3CclipPath id='a' transform='translate(-3 -1)'%3E%3Cpath d='M0 0h24v24H0z' style='fill:none'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg data-name='layer2' style='clip-path:url(%23a)'%3E%3Cpath d='M3.75 3A1.25 1.25 0 0 1 5 1.75h8.17a1.26 1.26 0 0 1 .89.37l5.82 5.82.53-.53-.53.53a1.26 1.26 0 0 1 .37.89V21A1.25 1.25 0 0 1 19 22.25H5A1.25 1.25 0 0 1 3.75 21Z' style='stroke:%23008d54;stroke-width:1.5px;fill:none' transform='translate(-3 -1)'/%3E%3C/g%3E%3C/svg%3E");
  background-size: 18px auto;
}

.korekara-header {
  background: #ffffff;
  z-index: 1000;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.korekara-header ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.korekara-header_inner {
  max-width: 980px;
  margin: 0 auto;
  padding: 15px 0 20px;
  position: relative;
}
.korekara-header_main {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 19px;
}
.korekara-header_logo {
  width: 539px;
  height: 36px;
}
.korekara-header_link {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.2rem;
}
.korekara-header_link .icon {
  display: block;
  width: 24px;
  height: 24px;
  margin: 0 auto 9px;
}
.korekara-header_link a {
  color: #262626;
  display: block;
}
.korekara-header_link a:hover {
  opacity: 0.7;
}
.korekara-header_link li {
  text-align: center;
  white-space: nowrap;
}
.korekara-header.fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
}
.korekara-header.hide {
  top: -100%;
}

@media print, screen and (min-width: 768px) {
  .korekara-header_link li:nth-child(2) {
    margin-right: 2em;
    margin-left: 3.5em;
  }
}
@media only screen and (max-width: 767px) {
  .korekara-header {
    position: relative;
    width: 100vw;
  }
  .korekara-header_inner {
    background: #ffffff;
    border-radius: 0 0 10px 10px;
    -webkit-box-shadow: 2px 0 10px rgba(0, 0, 0, 0.1);
            box-shadow: 2px 0 10px rgba(0, 0, 0, 0.1);
    display: block;
    padding: 0;
    z-index: 1000;
  }
  .korekara-header_main {
    margin-top: -10px;
    padding-top: 10px;
  }
  .korekara-header_sumirin {
    background: #F3F7E6;
    width: 100%;
    height: 24px;
    padding: 5px 14px;
    position: relative;
    top: 0;
  }
  .korekara-header_sumirin img {
    display: block;
    width: 126px;
  }
  .korekara-header_logo {
    width: auto;
    height: auto;
    padding: 25px 15px;
  }
  .korekara-header_logo img {
    width: 278px;
    height: 25px;
  }
  .korekara-header_link {
    font-size: 1.4rem;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .korekara-header_link a {
    padding: 16px;
  }
  .korekara-header_link li {
    border-bottom: 1px solid #CCCCB8;
    width: 33.33%;
  }
  .korekara-header_link li + li {
    border-left: 1px solid #CCCCB8;
  }
  .korekara-header_group {
    margin-top: 20px;
    text-align: center;
  }
  .korekara-header_group img {
    margin: 0 auto;
  }
  .korekara-header_menu {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    background: transparent;
    border: none;
    cursor: pointer;
    display: inline-block;
    font-size: 11px;
    line-height: 1;
    outline: none;
    padding: 0;
    position: absolute;
    top: 43px;
    right: 16px;
    text-decoration: none;
    text-align: center;
    width: 30px;
    z-index: 1005;
    -webkit-transition: all 0.4s;
    transition: all 0.4s;
    -webkit-tap-highlight-color: transparent;
  }
  .korekara-header_menu::after {
    content: "MENU";
    color: #262626;
    display: block;
    position: absolute;
    bottom: -11px;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  .korekara-header_menu span {
    display: block;
    padding-top: 30px;
    position: relative;
  }
  .korekara-header_menu::before,
  .korekara-header_menu span::before,
  .korekara-header_menu span::after {
    background: #008D54;
    content: "";
    display: block;
    width: 30px;
    height: 2px;
    position: absolute;
    left: 0;
    -webkit-transform-origin: 50% 50%;
        -ms-transform-origin: 50% 50%;
            transform-origin: 50% 50%;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .korekara-header_menu span::before {
    top: 0;
  }
  .korekara-header_menu span::after {
    top: 20px;
  }
  .korekara-header_menu::before {
    top: 10px;
  }
  body.has-menu {
    width: 100%;
    height: 100vh;
    overflow-y: hidden;
    padding-right: 15px;
    position: fixed;
    top: 0;
    left: 0;
  }
  body.has-menu .korekara-header_menu::before {
    opacity: 0;
  }
  body.has-menu .korekara-header_menu::after {
    content: "CLOSE";
  }
  body.has-menu .korekara-header_menu span::before, body.has-menu .korekara-header_menu span::after {
    width: 28px;
    top: 40%;
  }
  body.has-menu .korekara-header_menu span::before {
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  body.has-menu .korekara-header_menu span::after {
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
}
@media print, screen and (min-width: 768px) {
  .global-nav {
    background: #008D54;
  }
  .global-nav_wrap {
    max-width: 980px;
    margin: 0 auto;
  }
  .global-nav .nav-korekara {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .global-nav .nav-korekara a {
    color: #ffffff;
    display: block;
  }
  .global-nav .nav-korekara > li {
    font-size: 1.6rem;
    font-weight: 700;
    position: relative;
    text-align: center;
    width: 25%;
  }
  .global-nav .nav-korekara > li:first-child::before, .global-nav .nav-korekara > li::after {
    background: #CCCCB8;
    content: "";
    display: block;
    width: 1px;
    height: 32px;
    position: absolute;
    top: 50%;
    margin-top: -16px;
  }
  .global-nav .nav-korekara > li::after {
    right: 0;
  }
  .global-nav .nav-korekara > li:first-child::before {
    left: 0;
  }
  .global-nav .nav-korekara > li:hover .child {
    display: block;
  }
  .global-nav .nav-korekara > li a {
    padding: 19px 10px 21px;
  }
  .global-nav .nav-korekara > li a:hover {
    background-color: rgba(255, 255, 255, 0.2);
  }
  .global-nav .nav-korekara .child {
    background: #ffffff;
    border-radius: 10px;
    -webkit-box-shadow: 5px 0 20px rgba(0, 0, 0, 0.15);
            box-shadow: 5px 0 20px rgba(0, 0, 0, 0.15);
    display: none;
    font-size: 1.4rem;
    font-weight: normal;
    overflow: hidden;
    padding: 5px 0;
    position: absolute;
    text-align: left;
    width: 100%;
    z-index: 10000;
  }
  .global-nav .nav-korekara .child a {
    color: #262626;
    padding: 15px 20px;
  }
  .global-nav .nav-korekara .child a:hover {
    background: #F3F7E6;
  }
}
@media only screen and (max-width: 767px) {
  .global-nav {
    display: none;
    background: #FFF;
    height: 100%;
    width: 100%;
    overflow: auto;
    padding-bottom: 185px;
    position: fixed;
    z-index: 900;
  }
  .global-nav_wrap {
    pointer-events: all;
    visibility: visible;
  }
  .global-nav .nav-korekara a {
    color: #262626;
    display: block;
    font-size: 1.6rem;
    padding: 22px 20px;
  }
  .global-nav .nav-korekara > li {
    border-bottom: 1px solid #CCCCB8;
  }
  .global-nav .nav-korekara > li .opener {
    position: relative;
  }
  .global-nav .nav-korekara > li .opener::after {
    content: "";
    display: block;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='enable-background:new 0 0 24 24' viewBox='0 0 24 24'%3E%3Cpath d='M20.7 15.7c.4-.4.4-.9 0-1.3L13.3 7c-.2-.2-.4-.3-.6-.3s-.5.1-.7.3l-7.5 7.5c-.4.4-.4.9 0 1.3s.9.4 1.3 0L12.6 9l6.8 6.8c.4.3 1 .3 1.3-.1z' style='fill-rule:evenodd;clip-rule:evenodd;fill:%23008D54'/%3E%3C/svg%3E") no-repeat 50% 50%/cover;
    background-size: cover;
    width: 18px;
    height: 13px;
    position: absolute;
    top: 50%;
    right: 20px;
    -webkit-transform: translateY(-50%) rotate(180deg);
        -ms-transform: translateY(-50%) rotate(180deg);
            transform: translateY(-50%) rotate(180deg);
  }
  .global-nav .nav-korekara > li.is-active .opener::after {
    -webkit-transform: translateY(-50%) rotate(0);
        -ms-transform: translateY(-50%) rotate(0);
            transform: translateY(-50%) rotate(0);
  }
  .global-nav .nav-korekara .child {
    display: none;
  }
  .global-nav .nav-korekara .child li {
    border-top: 1px solid #CCCCB8;
  }
  .global-nav .nav-korekara .child a {
    background: #F3F7E6;
    padding-left: 40px;
  }
  body.has-menu .global-nav {
    display: block;
  }
}
#footer {
  background: #00664B;
}

.footer {
  position: relative;
}
.footer .layouter {
  max-width: 980px;
}
.footer-logo_korekara {
  position: relative;
}
.footer-logo_korekara img {
  width: 284px;
}
.footer-map {
  color: #ffffff;
  padding-bottom: 55px;
  text-align: left;
}
.footer-map ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.footer-map a {
  color: #ffffff;
}
.footer-map a:hover {
  text-decoration: underline;
}
.footer-map li a {
  display: block;
  position: relative;
}
.footer-map .label {
  font-size: 1.6rem;
  font-weight: 700;
}
.footer-link_menu a:hover {
  color: #008D54;
  text-decoration: none;
}

@media print, screen and (min-width: 768px) {
  .footer {
    padding-top: 60px;
  }
  .footer .layouter {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    max-width: 980px;
  }
  .footer-logo_korekara {
    position: relative;
  }
  .footer-map {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding-bottom: 55px;
  }
  .footer-map .box + .box {
    margin-left: 60px;
  }
  .footer-map li a {
    position: relative;
  }
  .footer-map .child {
    margin-top: 20px;
  }
  .footer-map .child li + li {
    margin-top: 1.75em;
  }
}
@media only screen and (max-width: 767px) {
  .footer {
    padding-top: 40px;
  }
  .footer-logo_korekara {
    text-align: center;
  }
  .footer-logo_korekara img {
    margin: 0 auto;
    width: 229px;
  }
  .footer-map {
    border-top: 1px solid #338066;
    margin-top: 36px;
    padding-bottom: 40px;
  }
  .footer-map .label {
    border-bottom: 1px solid #338066;
    font-size: 1.4rem;
    padding: 18px 20px;
  }
  .footer-map .label::after {
    content: "";
    display: block;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='enable-background:new 0 0 24 24' viewBox='0 0 24 24'%3E%3Cpath d='M20.7 15.7c.4-.4.4-.9 0-1.3L13.3 7c-.2-.2-.4-.3-.6-.3s-.5.1-.7.3l-7.5 7.5c-.4.4-.4.9 0 1.3s.9.4 1.3 0L12.6 9l6.8 6.8c.4.3 1 .3 1.3-.1z' style='fill-rule:evenodd;clip-rule:evenodd;fill:%23ffffff'/%3E%3C/svg%3E") no-repeat 50% 50%/cover;
    background-size: cover;
    width: 18px;
    height: 13px;
    position: absolute;
    top: 50%;
    right: 20px;
    -webkit-transform: translateY(-50%) rotate(180deg);
        -ms-transform: translateY(-50%) rotate(180deg);
            transform: translateY(-50%) rotate(180deg);
  }
  .footer-map .child {
    border-bottom: 1px solid #338066;
    display: none;
    font-size: 1.4rem;
  }
  .footer-map .child a {
    background: #005740;
    padding: 18px 40px;
  }
  .footer-map .child li + li {
    border-top: 1px solid #338066;
  }
  .footer-map .is-active .label::after {
    -webkit-transform: translateY(-50%) rotate(0);
        -ms-transform: translateY(-50%) rotate(0);
            transform: translateY(-50%) rotate(0);
  }
}
#nav-pagetop {
  max-width: 1040px;
}
#nav-pagetop .link-pagetop {
  margin-top: -190;
  right: -30px;
}
#nav-pagetop .link-pagetop a {
  background: #ffffff;
  border: 1px solid #008D54;
  border-radius: 60px;
  color: #008D54;
  display: block;
  width: 60px;
  height: 60px;
}
#nav-pagetop .link-pagetop a:hover {
  opacity: 0.7;
}
#nav-pagetop .link-pagetop a::before {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='enable-background:new 0 0 24 24' viewBox='0 0 24 24'%3E%3Cpath d='M20.7 15.7c.4-.4.4-.9 0-1.3L13.3 7c-.2-.2-.4-.3-.6-.3s-.5.1-.7.3l-7.5 7.5c-.4.4-.4.9 0 1.3s.9.4 1.3 0L12.6 9l6.8 6.8c.4.3 1 .3 1.3-.1z' style='fill-rule:evenodd;clip-rule:evenodd;fill:%23008D54'/%3E%3C/svg%3E") no-repeat 50% 50%/cover;
  background-size: cover;
  border: none;
  width: 24px;
  height: 16px;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  margin: 0;
}

@media only screen and (max-width: 1100px) {
  #nav-pagetop .link-pagetop,
  #nav-pagetop.fixed .link-pagetop {
    right: 0;
  }
}
.footer-sns .layout-inner,
.footer-sign_inner.layout-inner {
  max-width: 980px;
  width: 100%;
}

.footer-sns_icon {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}

#yrHere {
  background: #F3F7E6;
}

.yrHere-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 auto;
  max-width: 980px;
}
.yrHere-list a {
  color: #262626;
}
.yrHere-list li:before {
  content: "";
  display: inline-block;
  width: 12px;
  height: 14px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='enable-background:new 0 0 24 24' viewBox='0 0 24 24'%3E%3Cpath d='M20.7 15.7c.4-.4.4-.9 0-1.3L13.3 7c-.2-.2-.4-.3-.6-.3s-.5.1-.7.3l-7.5 7.5c-.4.4-.4.9 0 1.3s.9.4 1.3 0L12.6 9l6.8 6.8c.4.3 1 .3 1.3-.1z' style='fill-rule:evenodd;clip-rule:evenodd;fill:%23CCCCB8'/%3E%3C/svg%3E") no-repeat 50% 50%/cover;
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg);
  vertical-align: middle;
}

@media only screen and (max-width: 767px) {
  .yrHere-list li,
  .yrHere-list li:last-child {
    background: none;
  }
  .yrHere-list li > a,
  .yrHere-list li > span {
    display: inline-block;
  }
  .yrHere-list li:first-child::before {
    display: none;
  }
  .yrHere-list li:not(:first-child) {
    background: none;
    padding-left: 0;
    margin-left: 0;
  }
}
h1, h2, h3, h4, h5, h6, .title, .label {
  font-family: "Zen Maru Gothic", sans-serif;
}

/* flex */
.flex,
.row {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

/* grid */
.row {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
@media print, screen and (min-width: 768px) {
  .row.gutter {
    margin-left: -30px;
  }
  .row.gutter > div {
    padding-left: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .row.gutter .span-s-12 + .span-s-12 {
    margin-top: 15px;
  }
}

/*.row .span-1*/
.span-1 {
  width: 8.3333333333%;
}

/*.row .span-2*/
.span-2 {
  width: 16.6666666667%;
}

/*.row .span-3*/
.span-3 {
  width: 25%;
}

/*.row .span-4*/
.span-4 {
  width: 33.3333333333%;
}

/*.row .span-5*/
.span-5 {
  width: 41.6666666667%;
}

/*.row .span-6*/
.span-6 {
  width: 50%;
}

/*.row .span-7*/
.span-7 {
  width: 58.3333333333%;
}

/*.row .span-8*/
.span-8 {
  width: 66.6666666667%;
}

/*.row .span-9*/
.span-9 {
  width: 75%;
}

/*.row .span-10*/
.span-10 {
  width: 83.3333333333%;
}

/*.row .span-11*/
.span-11 {
  width: 91.6666666667%;
}

/*.row .span-12*/
.span-12 {
  width: 100%;
}

@media only screen and (max-width: 767px) {
  /*.row {*/
  .span-s-3 {
    width: 25% !important;
  }
  .span-s-4 {
    width: 33.33% !important;
  }
  .span-s-6 {
    width: 50% !important;
  }
  .span-s-12 {
    width: 100% !important;
  }
  /*}*/
}
/* text */
.ta-c {
  text-align: center !important;
}

.ta-l {
  text-align: left !important;
}

.ta-r {
  text-align: right !important;
}

.fw-n {
  font-weight: normal;
}

.fw-b {
  font-weight: 700;
}

.fs-l {
  font-size: 1.125em;
}

.fs-s {
  font-size: 0.875em;
}

.fs-ss {
  font-size: 0.75em;
}

.fs-10 {
  font-size: 1rem;
}

.fc-green {
  color: #008D54;
}

/* clearfix */
.clear {
  clear: both;
  content: "";
  display: table;
}

/* width */
.w-100 {
  width: 100%;
}

.w-90 {
  width: 90%;
}

.w-80 {
  width: 80%;
}

.w-70 {
  width: 70%;
}

.w-60 {
  width: 60%;
}

.w-50 {
  width: 50%;
}

.w-40 {
  width: 40%;
}

.w-30 {
  width: 30%;
}

.w-20 {
  width: 20%;
}

.w-10 {
  width: 10%;
}

.w-0 {
  width: 0%;
}

/* margin */
.mt-0 {
  margin-top: 0 !important;
}

.mb-0 {
  margin-bottom: 0 !important;
}

.mt-1em {
  margin-top: 1em !important;
}

.mt-2em {
  margin-top: 2em !important;
}

/* responsive */
@media print, screen and (min-width: 768px) {
  .sponly {
    display: none !important;
  }
}
@media only screen and (max-width: 767px) {
  .pconly {
    display: none !important;
  }
}
/* icon */
.icon {
  background-position: 50% 50%;
  background-repeat: no-repeat;
}

svg, object {
  fill: currentColor;
}

.theme-basic {
  background-color: #FCF1CC;
}
.theme-housework {
  background-color: #FDE8CC;
}
.theme-health {
  background-color: #E5F5F5;
}
.theme-money {
  background-color: #DFE7F5;
}
.theme-family {
  background-color: #FCE4E3;
}
.theme-hobby {
  background-color: #ECE5DE;
}
.theme-trivia {
  background-color: #EAF0D4;
}

a.btn {
  font-family: "Zen Maru Gothic", sans-serif;
}
a.btn-all {
  background: #ffffff;
  border: 1px solid #008D54;
  border-radius: 30px;
  color: #008D54;
  display: inline-block;
  font-size: 1.8rem;
  margin-top: 47px;
  min-width: 300px;
  padding: 20px 0;
  position: relative;
  text-align: center;
}
a.btn-all::after {
  content: "";
  display: block;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='enable-background:new 0 0 24 24' viewBox='0 0 24 24'%3E%3Cpath d='M20.7 15.7c.4-.4.4-.9 0-1.3L13.3 7c-.2-.2-.4-.3-.6-.3s-.5.1-.7.3l-7.5 7.5c-.4.4-.4.9 0 1.3s.9.4 1.3 0L12.6 9l6.8 6.8c.4.3 1 .3 1.3-.1z' style='fill-rule:evenodd;clip-rule:evenodd;fill:%23008D54'/%3E%3C/svg%3E") no-repeat 50% 50%/cover;
  width: 20px;
  height: 14px;
  position: absolute;
  top: 50%;
  right: 16px;
  -webkit-transform: translateY(-50%) rotate(90deg);
      -ms-transform: translateY(-50%) rotate(90deg);
          transform: translateY(-50%) rotate(90deg);
}
a.btn-all:hover {
  background-color: #008D54;
  color: #ffffff;
}
a.btn-all:hover::after {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='enable-background:new 0 0 24 24' viewBox='0 0 24 24'%3E%3Cpath d='M20.7 15.7c.4-.4.4-.9 0-1.3L13.3 7c-.2-.2-.4-.3-.6-.3s-.5.1-.7.3l-7.5 7.5c-.4.4-.4.9 0 1.3s.9.4 1.3 0L12.6 9l6.8 6.8c.4.3 1 .3 1.3-.1z' style='fill-rule:evenodd;clip-rule:evenodd;fill:%23ffffff'/%3E%3C/svg%3E") no-repeat 50% 50%/cover;
}

a.icon-arrow {
  color: #008D54;
  padding-right: 1em;
  position: relative;
}
a.icon-arrow::before {
  content: "";
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='enable-background:new 0 0 24 24' viewBox='0 0 24 24'%3E%3Cpath d='M20.7 15.7c.4-.4.4-.9 0-1.3L13.3 7c-.2-.2-.4-.3-.6-.3s-.5.1-.7.3l-7.5 7.5c-.4.4-.4.9 0 1.3s.9.4 1.3 0L12.6 9l6.8 6.8c.4.3 1 .3 1.3-.1z' style='fill-rule:evenodd;clip-rule:evenodd;fill:%23008D54'/%3E%3C/svg%3E") no-repeat 50% 50%/cover;
  display: inline-block;
  width: 11px;
  height: 16px;
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%) rotate(90deg);
      -ms-transform: translateY(-50%) rotate(90deg);
          transform: translateY(-50%) rotate(90deg);
}
a.icon-arrow:hover {
  text-decoration: underline;
}

i.icon::after {
  content: "";
  display: block;
}
i.icon-theme::after {
  background-image: url(/lib_image/korekara/icon_theme.svg);
}
i.icon-key::after {
  background-image: url(/lib_image/korekara/icon_keyword.svg);
}
i.icon-writer::after {
  background-image: url(/lib_image/korekara/icon_writer.svg);
}
i.icon-case::after {
  background-image: url(/lib_image/korekara/icon_case.svg);
}
i.icon-entry::after {
  background-image: url(/lib_image/korekara/icon_article.svg);
}
i.icon-crown::after {
  background-image: url(/lib_image/korekara/icon_rank.svg);
}

@media only screen and (max-width: 767px) {
  a.btn-all {
    border-radius: 25px;
    font-size: 1.6rem;
    margin-top: 30px;
    min-width: 285px;
    padding: 16px 0;
  }
  a.btn-all::after {
    width: 13px;
    height: 18px;
  }
}
.section .layouter {
  padding: 83px 0 116px;
}
.section-title {
  font-size: 3.6rem;
  margin-bottom: 60px;
  text-align: center;
  position: relative;
}
.section-title i.icon,
.section-title i.icon::after {
  display: block;
  position: absolute;
  bottom: 100%;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}
.section-title i.icon {
  background: url(/lib_image/korekara/parts_title_icon.png) no-repeat 50% 50%/contain;
  width: 70px;
  height: 80px;
  margin-bottom: 20px;
}
.section-title i.icon::after {
  background-size: contain;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  width: 30px;
  height: 30px;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -65%);
      -ms-transform: translate(-50%, -65%);
          transform: translate(-50%, -65%);
}
.section-lead {
  color: #6C6C6C;
  line-height: 1.6;
  margin: 0 auto;
  max-width: 680px;
  position: relative;
  text-align: center;
  z-index: 5;
}

@media only screen and (max-width: 767px) {
  .section .layouter {
    padding: 62px 0 75px;
  }
  .section-title {
    font-size: 2.4rem;
    margin-bottom: 30px;
  }
  .section-title i.icon {
    width: 54px;
    height: 60px;
    margin-bottom: 16px;
  }
  .section-title i.icon::after {
    width: 24px;
    height: 24px;
  }
  .section-lead {
    line-height: 1.6;
    max-width: 80%;
  }
}
.aside .section {
  padding: 0 15px;
}
.aside-contents .section {
  background: #ffffff;
  padding: 0 15px 100px;
}
.aside-contents .section:nth-child(2) {
  background: #F5F0E6;
}
.aside-contents .section:nth-child(2) .article-headline .headline-list .headline-item_desc {
  background: #ffffff;
}
.aside-contents .section:nth-child(n+2) {
  margin-top: -100px;
}
.aside-contents .section:nth-child(odd) {
  border-radius: 0 100px 0 0;
}
.aside-contents .section:nth-child(even) {
  border-radius: 100px 0 0 0;
}

@media only screen and (max-width: 767px) {
  .aside-contents .section {
    padding-bottom: 100px;
  }
  .aside-contents .section:nth-child(n+2) {
    margin-top: -100px;
  }
  .aside-contents .section:nth-child(odd) {
    border-radius: 0 50px 0 0;
  }
  .aside-contents .section:nth-child(even) {
    border-radius: 50px 0 0 0;
  }
}
/* search ketword */
.section-search_keyword {
  background: #008D54;
  border-radius: 0 !important;
  color: #ffffff;
  margin-top: 0;
  position: relative;
}
.section-search_keyword::before {
  background: url(/lib_image/korekara/bg_search_keyword.png) no-repeat 50% -24px/1078px auto;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0.4;
}
.section-search_keyword ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.section-search_keyword a, .section-search_keyword span {
  display: block;
}
.section-search_keyword .list-keyword {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 0 0 20px;
}
.section-search_keyword .list-keyword > li {
  position: relative;
  width: 230px;
}
.section-search_keyword .list-keyword > li + li {
  margin-left: 20px;
}
.section-search_keyword .list-keyword .label {
  background: #ffffff;
  border-radius: 5px;
  color: #008D54;
  font-size: 1.8rem;
  padding: 21px 20px;
  white-space: nowrap;
}
.section-search_keyword .list-keyword .opener {
  position: relative;
}
.section-search_keyword .list-keyword .opener::after {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='enable-background:new 0 0 24 24' viewBox='0 0 24 24'%3E%3Cpath d='M20.7 15.7c.4-.4.4-.9 0-1.3L13.3 7c-.2-.2-.4-.3-.6-.3s-.5.1-.7.3l-7.5 7.5c-.4.4-.4.9 0 1.3s.9.4 1.3 0L12.6 9l6.8 6.8c.4.3 1 .3 1.3-.1z' style='fill-rule:evenodd;clip-rule:evenodd;fill:%23008D54'/%3E%3C/svg%3E") no-repeat 50% 50%/cover;
  content: "";
  display: block;
  width: 21px;
  height: 15px;
  position: absolute;
  top: 50%;
  right: 15px;
  -webkit-transform: translateY(-50%) rotate(180deg);
      -ms-transform: translateY(-50%) rotate(180deg);
          transform: translateY(-50%) rotate(180deg);
}
.section-search_keyword .child {
  background: #ffffff;
  border-radius: 10px;
  -webkit-box-shadow: 5px 0 20px rgba(0, 0, 0, 0.15);
          box-shadow: 5px 0 20px rgba(0, 0, 0, 0.15);
  color: #262626;
  display: none;
  padding: 7px 0;
  position: absolute;
  top: 100%;
  width: 100%;
  margin-top: 10px;
  z-index: 100;
}
.section-search_keyword .child a, .section-search_keyword .child span {
  color: #262626;
  padding: 15px 20px;
}
.section-search_keyword .child .opener::after {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='enable-background:new 0 0 24 24' viewBox='0 0 24 24'%3E%3Cpath d='M20.7 15.7c.4-.4.4-.9 0-1.3L13.3 7c-.2-.2-.4-.3-.6-.3s-.5.1-.7.3l-7.5 7.5c-.4.4-.4.9 0 1.3s.9.4 1.3 0L12.6 9l6.8 6.8c.4.3 1 .3 1.3-.1z' style='fill-rule:evenodd;clip-rule:evenodd;fill:%236C6C6C'/%3E%3C/svg%3E") no-repeat 50% 50%/cover;
  width: 19px;
  height: 16px;
}
.section-search_keyword .grandchild {
  display: none;
}
.section-search_keyword .is-active > .opener::after {
  -webkit-transform: translateY(-50%) rotate(0);
      -ms-transform: translateY(-50%) rotate(0);
          transform: translateY(-50%) rotate(0);
}

@media print, screen and (min-width: 768px) {
  .section-search_keyword .list-keyword .opener:hover {
    background-color: #F3F7E6;
  }
  .section-search_keyword .child a:hover {
    background-color: #F3F7E6;
  }
}
@media only screen and (max-width: 767px) {
  .section-search_keyword::before {
    background: url(/lib_image/korekara/bg_search_keyword_sp.png) no-repeat 50% 100%/337px auto;
    top: auto;
    bottom: 14px;
    opacity: 1;
  }
  .section-search_keyword .list-keyword {
    border-radius: 10px;
    display: block;
    margin: 0;
    overflow: hidden;
  }
  .section-search_keyword .list-keyword li + li {
    border-top: 1px solid #CCCCB8;
  }
  .section-search_keyword .list-keyword > li {
    width: 100%;
  }
  .section-search_keyword .list-keyword > li + li {
    margin-left: 0;
  }
  .section-search_keyword .list-keyword .label {
    border-radius: 0;
    font-size: 1.6rem;
  }
  .section-search_keyword .list-keyword .opener::after {
    width: 18px;
    height: 13px;
  }
  .section-search_keyword .child,
  .section-search_keyword .grandchild {
    border-top: 1px solid #CCCCB8;
  }
  .section-search_keyword .child a, .section-search_keyword .child span,
  .section-search_keyword .grandchild a,
  .section-search_keyword .grandchild span {
    padding: 20px 20px 20px 40px;
  }
  .section-search_keyword .child {
    background: #F3F7E6;
    border-radius: 0;
    -webkit-box-shadow: none;
            box-shadow: none;
    padding: 0;
    position: relative;
    top: auto;
    width: 100%;
    margin-top: 0;
  }
  .section-search_keyword .child .opener::after {
    width: 18px;
    height: 13px;
  }
  .section-search_keyword .child .is-active {
    background: #F3F7E6;
  }
  .section-search_keyword .grandchild a, .section-search_keyword .grandchild span {
    padding-left: 60px;
  }
}
/* search case */
.section-search_case .layouter {
  padding-bottom: 0;
}
.section-search_case .api_example-list {
  margin: 0 -15px 0 -16px;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
}
.section-search_case .api_example_box {
  padding: 0 15px 0 16px;
  width: 33.3333333333%;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}
.section-search_case .api_example_link {
  border-radius: 10px;
  overflow: hidden;
  padding-top: calc(85% + 48px);
}
.section-search_case .api_example_image {
  border-radius: 10px 10px 0 0;
  padding-bottom: 85%;
}
.section-search_case .api_example-label {
  background: #008D54;
  border-radius: 0 0 10px 10px;
  font-size: 2.2rem;
  font-family: "Zen Maru Gothic", sans-serif;
  display: block;
  top: 100%;
  padding: 6px 15px 9px;
  width: 100%;
}
.section-search_case .api_example-label.mansion {
  background: #94B428;
}
.section-search_case .api_example-label.kominka {
  background: #00664B;
}
.section-search_case .api_example_info_area {
  display: none;
}
.section-search_case a.btn-all {
  margin-top: 60px;
}

@media only screen and (max-width: 767px) {
  .section-search_case {
    padding-bottom: 0 !important;
  }
  .section-search_case .layouter {
    padding-bottom: 60px;
  }
  .section-search_case .slider-case {
    margin: 0 -15px;
    overflow: hidden;
  }
  .section-search_case .api_example-list {
    margin: 0 -15px;
  }
  .section-search_case .api_example_box {
    padding: 0 7px;
    width: 33.3333333333%;
    width: 261px;
  }
  .section-search_case .api_example-label {
    border-radius: 0 0 10px 10px;
    font-size: 1.8rem;
    padding: 5px 15px 9px;
  }
  .section-search_case a.btn-all {
    margin-top: 0;
  }
}
/* search theme */
.theme-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.theme-card {
  margin: 0 15px;
}
.theme-card a {
  color: #262626;
  border-radius: 10px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 30px 10px 23px;
  width: 260px;
  height: 361px;
  text-align: center;
}
.theme-card a:hover {
  opacity: 0.7;
}
.theme-card_title {
  font-size: 2.2rem;
}
.theme-card_thumb {
  width: 225px;
  height: 200px;
  margin: 0 auto;
  position: relative;
}
.theme-card_thumb img {
  width: auto;
  height: 200px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.theme-card_caption {
  line-height: 1.57;
}

.section-search_theme {
  background: #ffffff;
  border-radius: 0 100px 0 0;
  margin-top: -100px;
}
.section-search_theme .layouter {
  max-width: 840px;
}
@media only screen and (max-width: 767px) {
  .theme-list {
    margin: 0 -15px;
    overflow: hidden;
  }
  .theme-card {
    margin: 0 7px;
  }
  .theme-card a {
    padding: 32px 10px 28px;
    width: 100%;
    height: 264px;
  }
  .theme-card_title {
    font-size: 2rem;
  }
  .theme-card_thumb {
    width: 165px;
    height: 140px;
  }
  .theme-card_thumb img {
    height: 140px;
  }
  .section-search_theme {
    border-radius: 0 50px 0 0;
    margin-top: -50px;
  }
}
.writer-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  list-style: none;
  margin: 0;
  padding: 0;
  position: relative;
}
.writer-list_headline {
  margin: 120px 0 13px;
}
.writer-list_headline .writer-item {
  width: 25%;
  width: calc(25% - 40px);
  padding: 0;
}
.writer-list_headline .writer-item a {
  background: #ffffff;
  border-radius: 20px 0 20px 0;
}
.writer-list_headline .writer-item_thumb {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, -60px);
      -ms-transform: translate(-50%, -60px);
          transform: translate(-50%, -60px);
}
.writer-list_index .writer-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 30px;
  width: 33.33%;
}
.writer-list_index .writer-item a {
  background: #fbfcf7;
  border-radius: 10px;
}
.writer-list_index .writer-item_thumb {
  margin: 0 auto 20px;
}
.writer-list_index .writer-item_desc {
  color: #6c6c6c;
}

.writer-item {
  padding: 0 20px;
}
.writer-item a {
  color: #262626;
  display: block;
  padding: 60px 0 20px;
  position: relative;
  text-align: center;
}
.writer-item span {
  display: block;
}
.writer-item_thumb {
  background-color: #CCC;
  border-radius: 100px;
  width: 100px;
  height: 100px;
  overflow: hidden;
}
.writer-item_name {
  font-size: 2rem;
}
.writer-item_position {
  color: #6C6C6C;
  margin-top: 1em;
}
.writer-item_desc {
  line-height: 1.6;
  margin: 1em 20px 0;
  text-align: left;
}

@media only screen and (max-width: 767px) {
  .writer-list_headline {
    margin: 65px -7px 0;
  }
  .writer-list_headline .writer-item {
    width: 50%;
  }
  .writer-list_headline .writer-item a {
    border-radius: 10px 0 10px 0;
  }
  .writer-list_headline .writer-item_thumb {
    -webkit-transform: translate(-50%, -35px);
        -ms-transform: translate(-50%, -35px);
            transform: translate(-50%, -35px);
  }
  .writer-list_headline .writer-item:nth-child(n+3) {
    margin-top: 50px;
  }
  .writer-list_index .writer-item {
    margin-bottom: 15px;
    padding: 0;
    width: 100%;
  }
  .writer-list_index .writer-item a {
    padding-top: 20px;
  }
  .writer-list_index .writer-item_thumb {
    margin: 0 auto 24px;
  }
  .writer-item {
    padding: 0 7px;
  }
  .writer-item a {
    padding: 80px 0 20px;
  }
  .writer-item_name {
    font-size: 1.4rem;
  }
  .writer-item_position {
    font-size: 1.2rem;
    line-height: 1.83;
    margin-top: 0.25em;
  }
  .writer-item_desc {
    margin: 1em 15px 0;
  }
}
/* headline */
.article-headline.layouter {
  max-width: 840px;
  padding-bottom: 105px;
}
.article-headline .headline-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
}
.article-headline .headline-list a {
  background: #ffffff;
  border-radius: 10px;
  color: #262626;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
.article-headline .headline-list .headline-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 25%;
  width: 218px;
  padding: 0 31px 0 0;
}
.article-headline .headline-list .headline-item_thumb {
  border-radius: 10px 10px 0 0;
  display: block;
  padding-top: 69.5%;
  position: relative;
  overflow: hidden;
  width: 100%;
}
.article-headline .headline-list .headline-item_thumb img {
  position: absolute;
  height: 100%;
  width: 100%;
  max-width: none;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -o-object-fit: cover;
     object-fit: cover;
}
.article-headline .headline-list .headline-item_desc {
  background: #F2F2ED;
  border-radius: 0 0 10px 10px;
  display: block;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  line-height: 1.43;
  padding: 16px 15px 14px;
}

@media only screen and (max-width: 767px) {
  .article-headline .headline-list {
    display: block;
  }
  .article-headline .headline-list a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    width: 100%;
  }
  .article-headline .headline-list .headline-item {
    width: 100%;
    padding: 0;
  }
  .article-headline .headline-list .headline-item_thumb {
    border-radius: 10px 0 0 10px;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    width: 100px;
    padding-top: 0;
    position: relative;
  }
  .article-headline .headline-list .headline-item_thumb img {
    height: 100%;
    width: 100px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .article-headline .headline-list .headline-item_desc {
    border-radius: 0 10px 10px 0;
    line-height: 1.4;
    padding: 24px 15px;
  }
  .article-headline .headline-list .headline-item + .headline-item {
    margin-top: 15px;
  }
  .article-headline .headline-list .headline-item:nth-child(n+6) {
    display: none;
  }
}
/* bottom banner */
.banner-block {
  margin-bottom: 70px;
}
.banner-block .layouter {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 940px;
}
.banner-block .banner-item {
  width: 450px;
  width: 47.8723404255%;
}

@media only screen and (max-width: 767px) {
  .banner-block {
    margin: 0 15px;
  }
  .banner-block .layouter {
    display: block;
  }
  .banner-block .banner-item {
    width: 100%;
  }
  .banner-block .banner-item + .banner-item {
    margin-top: 15px;
  }
}
.slick-slider.slick-initialized {
  display: block !important;
}
.slick-slider .slick-track {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.slick-slider .slick-slide {
  height: auto !important;
}
.slick-slider .slick-prev,
.slick-slider .slick-next {
  background: #ffffff;
  border: 1px solid #008D54;
  border-radius: 40px;
  width: 40px;
  height: 40px;
  z-index: 100;
}
.slick-slider .slick-prev:hover, .slick-slider .slick-prev:focus,
.slick-slider .slick-next:hover,
.slick-slider .slick-next:focus {
  background: #ffffff;
}
.slick-slider .slick-prev:hover,
.slick-slider .slick-next:hover {
  opacity: 0.7;
}
.slick-slider .slick-prev.slick-disabled,
.slick-slider .slick-next.slick-disabled {
  opacity: 0.25;
}
.slick-slider .slick-prev:before,
.slick-slider .slick-next:before {
  content: "";
  display: block;
  width: 14px;
  height: 20px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='enable-background:new 0 0 24 24' viewBox='0 0 24 24'%3E%3Cpath d='M20.7 15.7c.4-.4.4-.9 0-1.3L13.3 7c-.2-.2-.4-.3-.6-.3s-.5.1-.7.3l-7.5 7.5c-.4.4-.4.9 0 1.3s.9.4 1.3 0L12.6 9l6.8 6.8c.4.3 1 .3 1.3-.1z' style='fill-rule:evenodd;clip-rule:evenodd;fill:%23008D54'/%3E%3C/svg%3E") no-repeat 50% 50%/cover;
  opacity: 1;
  position: absolute;
  top: 50%;
  left: 50%;
}
.slick-slider .slick-prev {
  left: -70px;
}
.slick-slider .slick-prev:before {
  -webkit-transform: translate(-50%, -50%) rotate(270deg);
      -ms-transform: translate(-50%, -50%) rotate(270deg);
          transform: translate(-50%, -50%) rotate(270deg);
}
.slick-slider .slick-next {
  right: -70px;
}
.slick-slider .slick-next:before {
  -webkit-transform: translate(-50%, -50%) rotate(90deg);
      -ms-transform: translate(-50%, -50%) rotate(90deg);
          transform: translate(-50%, -50%) rotate(90deg);
}
.slick-slider .slick-dots {
  position: relative;
  bottom: -26px;
}
.slick-slider .slick-dots li {
  width: 18px;
  height: 18px;
  margin: 0;
}
.slick-slider .slick-dots li button {
  width: 18px;
  height: 18px;
  padding: 0;
}
.slick-slider .slick-dots li button::before {
  background-color: #CCCCB8;
  border-radius: 8px;
  content: "";
  display: block;
  font-size: 6px;
  line-height: 8px;
  width: 8px;
  height: 8px;
  opacity: 1;
}
.slick-slider .slick-dots li.slick-active button:before {
  background-color: #008D54;
  opacity: 1;
}

@media only screen and (max-width: 979px) {
  .slick-slider .slick-prev {
    left: 0;
  }
  .slick-slider .slick-next {
    right: 0;
  }
}
@media only screen and (max-width: 767px) {
  .slick-slider .slick-dots {
    bottom: -17px;
  }
  .slick-dotted.slick-slider {
    margin-bottom: 0 !important;
    padding-bottom: 28px;
  }
}
/* entries */
.entry-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: 0 -15px;
  position: relative;
}
.entry-list .item-entry {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 306px;
  width: calc(33.3333333333% - 30px);
  margin: 0 15px 30px;
  position: relative;
}
.entry-list .item-entry .icon-new {
  border-radius: 10px 0 0 0;
  width: 75px;
  height: 75px;
  overflow: hidden;
  position: absolute;
  z-index: 100;
}
.entry-list .item-entry .icon-new::before, .entry-list .item-entry .icon-new::after {
  position: absolute;
}
.entry-list .item-entry .icon-new::before {
  content: "";
  top: 0;
  left: 0;
  border-bottom: 75px solid transparent;
  border-left: 75px solid #eeba00;
}
.entry-list .item-entry .icon-new::after {
  content: "NEW";
  color: #6c4432;
  display: block;
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: 1.6rem;
  top: 15px;
  left: 8px;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.entry-list .item-entry a {
  background: #ffffff;
  border-radius: 10px;
  color: #262626;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  overflow: hidden;
  width: 100%;
}
.entry-list .item-entry a:hover img {
  opacity: 1;
}
.entry-list .item-entry_thumb {
  height: 200px;
  overflow: hidden;
  position: relative;
}
.entry-list .item-entry_thumb img {
  border-radius: 10px 10px 0 0;
  height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  max-width: none;
}
.entry-list .item-entry_text {
  background: #ffffff;
  border-radius: 0 0 10px 10px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  padding: 21px 20px;
}
.entry-list .item-entry_title {
  font-size: 1.8rem;
  line-height: 1.39;
}
.entry-list .item-entry_category {
  color: #008D54;
  margin-top: 6px;
  margin-bottom: 20px;
}
.entry-list .item-entry_category ul {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-left: -0.25em;
}
.entry-list .item-entry_category ul li {
  border: 1px solid #008D54;
  border-radius: 12px;
  font-size: 1.4rem;
  display: inline-block;
  margin-top: 8px;
  margin-right: 0.3em;
  padding: 0.17em 0.5em 0.35em;
}
.entry-list .item-entry_date {
  font-size: 1.2rem;
  margin-top: auto;
}

@media only screen and (max-width: 767px) {
  .entry-list .item-entry {
    width: 100%;
    margin: 0 15px;
    position: relative;
  }
  .entry-list .item-entry_thumb {
    padding-top: 65%;
  }
  .entry-list .item-entry_thumb img {
    width: 100%;
    height: 100%;
    max-width: none;
  }
  .entry-list .item-entry_text {
    padding: 18px 15px;
  }
  .entry-list .item-entry_title {
    line-height: 1.4;
  }
  .entry-list .item-entry_category {
    margin-top: 13px;
    margin-bottom: 16px;
  }
  .entry-list .item-entry + .item-entry {
    margin-top: 15px;
  }
}
/* pager */
.pager .pagination {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  list-style: none;
  margin: 0;
  padding: 0;
  margin-top: 60px;
  padding-bottom: 30px;
  position: relative;
  width: 100%;
  text-align: center;
}
.pager .pagination a {
  color: #008D54;
}
.pager .pagination a.disable {
  opacity: 0.6;
  pointer-events: none;
}
.pager .pagination li {
  margin: 0 5px;
}
.pager .pagination .prev a,
.pager .pagination .next a,
.pager .pagination .num a {
  background: #ffffff;
  border: 1px solid #ffffff;
  border-radius: 40px;
  display: block;
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
}
.pager .pagination .prev a.active,
.pager .pagination .next a.active,
.pager .pagination .num a.active {
  background-color: #008D54;
  border-color: #008D54;
  color: #ffffff;
}
.pager .pagination .prev a:hover,
.pager .pagination .next a:hover,
.pager .pagination .num a:hover {
  border-color: #008D54;
}
.pager .pagination .arrow a {
  position: relative;
}
.pager .pagination .arrow a::before {
  content: "";
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='enable-background:new 0 0 24 24' viewBox='0 0 24 24'%3E%3Cpath d='M20.7 15.7c.4-.4.4-.9 0-1.3L13.3 7c-.2-.2-.4-.3-.6-.3s-.5.1-.7.3l-7.5 7.5c-.4.4-.4.9 0 1.3s.9.4 1.3 0L12.6 9l6.8 6.8c.4.3 1 .3 1.3-.1z' style='fill-rule:evenodd;clip-rule:evenodd;fill:%23008D54'/%3E%3C/svg%3E") no-repeat 50% 50%/cover;
  display: inline-block;
  width: 11px;
  height: 16px;
  position: absolute;
  top: 50%;
}
.pager .pagination .prev a,
.pager .pagination .next a {
  overflow: hidden;
  text-indent: -9999px;
}
.pager .pagination .prev a:before,
.pager .pagination .next a:before {
  left: 50%;
}
.pager .pagination .prev a::before {
  -webkit-transform: translate(-50%, -50%) rotate(270deg);
      -ms-transform: translate(-50%, -50%) rotate(270deg);
          transform: translate(-50%, -50%) rotate(270deg);
}
.pager .pagination .next a::before {
  -webkit-transform: translate(-50%, -50%) rotate(90deg);
      -ms-transform: translate(-50%, -50%) rotate(90deg);
          transform: translate(-50%, -50%) rotate(90deg);
}
.pager .pagination .first,
.pager .pagination .last {
  line-height: 1;
  position: absolute;
  bottom: 0;
}
.pager .pagination .first span,
.pager .pagination .last span {
  display: block;
}
.pager .pagination .first a,
.pager .pagination .last a {
  border: 1px solid transparent;
  display: block;
  padding-bottom: 2px;
}
.pager .pagination .first a:hover,
.pager .pagination .last a:hover {
  border-bottom-color: #008D54;
}
.pager .pagination .first {
  left: 50%;
  margin-left: -100px;
}
.pager .pagination .first a {
  padding-left: 20px;
}
.pager .pagination .first a::before {
  left: 0;
  -webkit-transform: translateY(-50%) rotate(270deg);
      -ms-transform: translateY(-50%) rotate(270deg);
          transform: translateY(-50%) rotate(270deg);
}
.pager .pagination .last {
  right: 50%;
  margin-right: -100px;
}
.pager .pagination .last a {
  padding-right: 20px;
}
.pager .pagination .last a::before {
  right: 0;
  -webkit-transform: translateY(-50%) rotate(90deg);
      -ms-transform: translateY(-50%) rotate(90deg);
          transform: translateY(-50%) rotate(90deg);
}

@media only screen and (max-width: 767px) {
  .pager .pagination {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .pager .pagination li {
    margin: 5px;
  }
}
/* archives */
.section-index {
  background: #F3F7E6;
  padding-bottom: 100px;
}
.section-index .section-title {
  margin-bottom: 20px;
}
.section-index .section-title_sub {
  margin: 10px 0 35px;
  text-align: center;
}
.section-index .section-title_sub span {
  background: #F5F0E6;
  border-radius: 24px;
  display: inline-block;
  font-size: 2.4rem;
  padding: 12px 32px;
}
.section-index .section-header {
  background: #ffffff;
  padding: 80px 0 160px;
  position: relative;
}
.section-index .section-header:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  opacity: 0.3;
}
.section-index .section-main .layouter {
  margin-top: -80px;
  padding-top: 0;
}
.section-index.theme-basic {
  background-color: #FCF1CC;
}

.page-all .section-index .section-header::before {
  background: url(/lib_image/korekara/bg_list.svg) no-repeat 50% 50%/auto;
  width: 100%;
  height: 240px;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.page-renovation .section-header::before,
.page-reform .section-header::before,
.page-lifestage .section-header::before,
.page-survey .section-header::before {
  background: url(/lib_image/korekara/img_head_keyword.png) no-repeat 50% 50%/contain;
  width: 235px;
  height: 235px;
  left: 50%;
  -webkit-transform: translate(310px, -50%);
      -ms-transform: translate(310px, -50%);
          transform: translate(310px, -50%);
}

@media only screen and (max-width: 767px) {
  .section-index {
    background: #F3F7E6;
    padding-bottom: 100px;
  }
  .section-index .section-title {
    margin-bottom: 16px;
  }
  .section-index .section-title_sub {
    margin: 16px 0 25px;
  }
  .section-index .section-title_sub span {
    border-radius: 18px;
    font-size: 1.6rem;
    padding: 9px 22px 10px;
  }
  .section-index .section-header {
    padding: 40px 0 110px;
  }
  .section-index .section-header:before {
    display: none;
    /*
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    opacity: .3;
    */
  }
  .section-index .section-main .layouter {
    margin-top: -80px;
    padding-top: 0;
    padding: 0 15px;
  }
  .section-index_list .section-header::before {
    display: none;
  }
  .section-index_keyword .section-header::before {
    background: url(/lib_image/korekara/img_head_keyword.png) no-repeat 50% 50%/contain;
    width: 235px;
    height: 235px;
    left: 50%;
    -webkit-transform: translate(310px, -50%);
        -ms-transform: translate(310px, -50%);
            transform: translate(310px, -50%);
  }
  .section-index.theme-basic {
    background-color: #FCF1CC;
  }
  .section-index.theme-basic .section-header::before {
    background: url(/lib_image/korekara/img_head_keyword.png) no-repeat 50% 50%/contain;
    width: 235px;
    height: 235px;
    left: 50%;
    -webkit-transform: translate(310px, -50%);
        -ms-transform: translate(310px, -50%);
            transform: translate(310px, -50%);
  }
}
/* theme */
.page-theme .section-main .theme-list {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 60px -15px 0;
  position: relative;
}
.page-theme .section-main .theme-list .theme-card {
  margin-bottom: 30px;
  width: 222px;
}
.page-theme .section-main .theme-list .theme-card a {
  height: 292px;
  width: 100%;
}
.page-theme .section-main .theme-list .theme-card_title {
  font-size: 1.8rem;
}
.page-theme .section-main .theme-list .theme-card_thumb {
  width: 165px;
  height: 155px;
}
.page-theme .section-main .theme-list .theme-card_thumb img {
  height: 155px;
}
.page-theme .section-index_parent {
  background-color: transparent;
  padding-bottom: 0;
}
.page-theme .section-index_parent .section-header {
  padding-bottom: 80px;
}
.page-theme .section-index .section-header::before {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: contain;
  width: 290px;
  height: 290px;
  left: 50%;
  -webkit-transform: translate(290px, -50%);
      -ms-transform: translate(290px, -50%);
          transform: translate(290px, -50%);
  opacity: 1;
}
.page-theme.reform_basics .section-index {
  background-color: #FCF1CC;
}
.page-theme.reform_basics .section-index .section-header::before {
  background-image: url(/lib_image/korekara/img_theme_basic_c.png);
}
.page-theme.housework .section-index {
  background-color: #FDE8CC;
}
.page-theme.housework .section-index .section-header::before {
  background-image: url(/lib_image/korekara/img_theme_housework_c.png);
}
.page-theme.health_house .section-index {
  background-color: #E5F5F5;
}
.page-theme.health_house .section-index .section-header::before {
  background-image: url(/lib_image/korekara/img_theme_health_c.png);
}
.page-theme.money_house .section-index {
  background-color: #DFE7F5;
}
.page-theme.money_house .section-index .section-header::before {
  background-image: url(/lib_image/korekara/img_theme_money_c.png);
}
.page-theme.family_house .section-index {
  background-color: #FCE4E3;
}
.page-theme.family_house .section-index .section-header::before {
  background-image: url(/lib_image/korekara/img_theme_family_c.png);
  background-position: 50% 100%;
}
.page-theme.hobby_house .section-index {
  background-color: #ECE5DE;
}
.page-theme.hobby_house .section-index .section-header::before {
  background-image: url(/lib_image/korekara/img_theme_hobby_c.png);
  background-position: 50% 100%;
}
.page-theme.trivia_house .section-index {
  background-color: #EAF0D4;
}
.page-theme.trivia_house .section-index .section-header::before {
  background-image: url(/lib_image/korekara/img_theme_trivia_c.png);
  background-position: 50% 100%;
}

@media only screen and (max-width: 767px) {
  .page-theme .section-index {
    background-color: #ffffff;
  }
  .page-theme .section-index .section-header::before {
    display: none;
  }
  .page-theme .section-index_parent .layouter {
    padding-bottom: 75px;
  }
  .page-theme .section-main .theme-list {
    display: block;
    margin: 60px 15px 0;
  }
  .page-theme .section-main .theme-list .theme-card {
    margin: 0 0 15px;
    width: 100%;
  }
  .page-theme .section-main .theme-list .theme-card a {
    height: 264px;
    padding: 23px 10px 20px;
  }
}
/* writer */
.page-writer .section-index .section-header::before {
  background: url(/lib_image/korekara/img_writer.png) no-repeat 50% 50%/contain;
  width: 350px;
  height: 280px;
  left: 50%;
  -webkit-transform: translate(310px, -50%);
      -ms-transform: translate(310px, -50%);
          transform: translate(310px, -50%);
}
.page-writer .box-writer {
  background: #F2F2ED;
  border-radius: 10px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 30px auto 60px;
  max-width: 730px;
  padding: 30px;
  position: relative;
  z-index: 1;
}
.page-writer .box-writer_thumb {
  background: #fff;
  border-radius: 100px;
  height: 100px;
  width: 100px;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  overflow: hidden;
}
.page-writer .box-writer_text {
  padding-left: 30px;
}
.page-writer .box-writer_name {
  font-size: 2rem;
}
.page-writer .box-writer_position {
  margin-left: 2em;
}
.page-writer .box-writer_desc {
  line-height: 1.6;
  margin-top: 1em;
}
.page-writer .box-writer_desc a {
  color: #008D54;
}

@media only screen and (max-width: 767px) {
  .page-writer .box-writer {
    display: block;
    margin: 24px 15px 10px;
    padding: 20px 15px;
  }
  .page-writer .box-writer_thumb {
    margin: 0 auto;
  }
  .page-writer .box-writer_text {
    margin-top: 24px;
    padding-left: 0;
    text-align: center;
  }
  .page-writer .box-writer_name, .page-writer .box-writer_position {
    display: block;
  }
  .page-writer .box-writer_name {
    font-size: 1.8rem;
  }
  .page-writer .box-writer_position {
    margin-top: 1em;
    margin-left: 0;
  }
  .page-writer .box-writer_desc {
    text-align: left;
  }
}
.entry {
  font-size: 1.4rem;
}
.entry .layouter {
  max-width: 730px;
}
.entry h1 {
  font-size: 3.2rem;
  line-height: 1.4;
}
.entry-header {
  background: #F3F7E6;
  padding: 60px 0 139px;
}
.entry-header_date {
  font-size: 1.2rem;
  margin-top: 1.75em;
}
.entry-content {
  font-size: 1.6rem;
  line-height: 1.8;
  margin-top: -80px;
  position: relative;
}
.entry-content h2 {
  border-left: 8px solid #008D54;
  font-size: 2.8rem;
  line-height: 1.4;
  margin: 1em 0 1.5em;
  padding: 5px 0 5px 18px;
}
.entry-content h2 ~ h2 {
  margin-top: 2em;
}
.entry-content h3 {
  border-bottom: 2px solid #008D54;
  font-size: 2.2rem;
  line-height: 1.4;
  margin: 1.75em 0 1em;
  padding-bottom: 9px;
}
.entry-content h4 {
  font-size: 1.8rem;
  line-height: 1.71;
  margin: 1em 0;
}
.entry-content p {
  margin-top: 1.5em;
}
.entry-content table {
  border-collapse: collapse;
  margin-top: 1.5em;
  width: 100%;
}
.entry-content table th, .entry-content table td {
  padding: 0.5em 0.75em;
  vertical-align: middle;
}
.entry-content table th p, .entry-content table td p {
  margin-top: 0;
}
.entry-content table th p + p, .entry-content table td p + p {
  margin-top: 0.5em;
}
.entry-content table th + *,
.entry-content table td + * {
  border-left: 1px solid #ccccb8;
}
.entry-content table tr + tr th, .entry-content table tr + tr td {
  border-top: 1px solid #ccccb8;
}
.entry-content table th {
  background: #f0f0eb;
}
.entry-content table td {
  background: #ffffff;
}
.entry-content strong, .entry-content b {
  background: #FFFFBC;
}
.entry-content a {
  color: #008D54;
}
.entry-footer .box-writer {
  margin: 60px 0 0;
}
.entry-footer .box-writer a {
  color: #008D54;
}
.entry-footer .box-writer_title {
  background: #008D54;
  border-radius: 10px 10px 0 0;
  color: #ffffff;
  font-size: 1.6rem;
  padding: 0.65em 0;
  text-align: center;
}
.entry-footer .box-writer_main {
  background: #F2F2ED;
  border-radius: 0 0 10px 10px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding: 30px;
  width: 100%;
}
.entry-footer .box-writer_photo {
  border-radius: 100px;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  width: 100px;
  height: 100px;
  overflow: hidden;
  position: relative;
}
.entry-footer .box-writer_photo img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.entry-footer .box-writer_text {
  margin-left: 30px;
}
.entry-footer .box-writer_text .writer-name {
  font-size: 2rem;
}
.entry-footer .box-writer_text .writer-position {
  color: #6c6c6c;
  margin-left: 1.5em;
}
.entry-footer .box-writer_text .writer-desc {
  line-height: 1.6;
  margin-top: 1.25em;
  margin-bottom: 1.25em;
}
.entry-image {
  margin-bottom: 45px;
}
.entry-image img {
  width: 100%;
  height: auto;
}
.entry-categories {
  margin-top: 40px;
}
.entry-categories ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.entry-categories li {
  display: inline-block;
  margin: 0 0.5em 0.5em 0;
}
.entry-categories a {
  border: 1px solid #008D54;
  border-radius: 15px;
  color: #008D54;
  display: block;
  padding: 0.5em 1em;
}
.entry-categories a:hover {
  background: #008D54;
  color: #ffffff;
}
.entry .image-line {
  margin-top: 40px;
  margin-bottom: 40px;
  position: relative;
}
.entry .image-line p:first-child {
  background: #F2F2ED;
}
.entry .image-line p:first-child img {
  max-width: 602px;
}
.entry .image-line > p:first-child {
  margin-top: 0;
}
.entry .image-line .image-caption {
  margin-top: 1em;
  position: relative;
  text-align: center;
}
.entry .topicBox p:first-child,
.entry .blockquote p:first-child,
.entry .sourceBox p:first-child {
  margin-top: 0 !important;
}
.entry .topicBox {
  background: #F3F7E6;
  border-radius: 8px;
  padding: 24px 28px;
  margin: 30px 0;
}
.entry .topicBox a {
  text-decoration: none;
}
.entry .topicBox p + p {
  margin-top: 1em;
}
.entry .blockquote {
  background: #EEEEEE;
  padding: 16px 20px;
  margin: 30px 0;
}
.entry .blockquote + .blockquote-caption {
  margin-top: -20px !important;
  margin-bottom: 30px;
}
.entry .blockquote-caption {
  font-size: 1.4rem;
  color: #666666;
  line-height: 1.3em;
  padding: 0 10px;
}
.entry .blockquote-caption a {
  color: #666666;
  text-decoration: none;
}
.entry .sourceBox {
  border: 3px solid #EBEBE3;
  border-radius: 10px;
  margin: 60px 0;
  padding: 36px 32px 32px;
  position: relative;
  word-break: break-all;
}
.entry .sourceBox::before {
  background: #FFF;
  content: "関連リンク";
  display: inline-block;
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: 2rem;
  font-weight: bold;
  padding: 0 0.75em;
  position: absolute;
  top: -1em;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}
.entry .sourceBox p {
  line-height: 1.8;
  margin-top: 0;
}
.entry .sourceBox a:hover {
  text-decoration: underline;
}
.entry .sourceBox a[target=_blank]::after {
  content: "";
  background: url(/lib_image/korekara/icon_blank.png) no-repeat 0 0/contain;
  display: inline-block;
  width: 12px;
  height: 12px;
  margin-left: 6px;
}
.entry .sourceBox:last-of-type {
  margin: 60px 0 0;
}
.entry .sourceBox ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.entry .sourceBox li, .entry .sourceBox p {
  padding-left: 1em;
  position: relative;
}
.entry .sourceBox li::before, .entry .sourceBox p::before {
  color: #666;
  content: "・";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
}
.entry .sourceBox li + li,
.entry .sourceBox p + p {
  margin-top: 1em;
}

/* cta */
.entry-cta {
  margin: 60px 0;
}
.entry-cta .cta-item {
  background: #fcfaf5;
  border: 2px solid #6c4432;
  border-radius: 10px;
  padding: 35px 40px 30px;
}
.entry-cta .cta-item_title {
  font-size: 2.2rem;
  color: #6c4432;
  line-height: 1.4;
  margin: 0 0 30px;
  text-align: center;
}
.entry-cta .cta-item_title > span {
  display: inline-block;
  position: relative;
}
.entry-cta .cta-item_title > span::before, .entry-cta .cta-item_title > span::after {
  background: #6c4432;
  content: "";
  display: block;
  width: 2px;
  height: 64px;
  position: absolute;
  top: 50%;
}
.entry-cta .cta-item_title > span::before {
  left: -30px;
  -webkit-transform: translateY(-50%) rotate(148deg);
      -ms-transform: translateY(-50%) rotate(148deg);
          transform: translateY(-50%) rotate(148deg);
}
.entry-cta .cta-item_title > span::after {
  right: -30px;
  -webkit-transform: translateY(-50%) rotate(-148deg);
      -ms-transform: translateY(-50%) rotate(-148deg);
          transform: translateY(-50%) rotate(-148deg);
}
.entry-cta .cta-item_article .row {
  -webkit-box-align: initial;
  -webkit-align-items: initial;
      -ms-flex-align: initial;
          align-items: initial;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  max-width: 560px;
  margin: 0 auto;
}
.entry-cta .cta-item_article .article {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 0 30px;
}
.entry-cta .cta-item_article .article-thumb {
  border-radius: 10px;
  overflow: hidden;
}
.entry-cta .cta-item_article .article-text {
  line-height: 1.6;
  margin: 1em 0;
}
.entry-cta .cta-item_article .article .ta-c {
  margin-top: auto;
  margin-bottom: 0;
}
.entry-cta .cta-item_article .article .btn {
  margin-top: 0;
  padding: 12px 30px;
  width: 100%;
}
.entry-cta_main .row {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.entry-cta_main .thumb {
  padding-left: 30px;
}
.entry-cta_main .text {
  background: #f5f0e6;
  border-radius: 10px;
  padding: 16px 20px;
  position: relative;
}
.entry-cta_main .text ul {
  list-style: none;
  margin: 0;
  padding: 0;
  padding: 0.5em 0;
}
.entry-cta_main .text ul + .caption {
  position: absolute;
  right: 20px;
  bottom: 20px;
}
.entry-cta_main .text li {
  margin: 0.5em 0;
  padding-left: 1.25em;
  position: relative;
}
.entry-cta_main .text li::before {
  color: #6c4432;
  content: "●";
  display: block;
  position: absolute;
  left: 0;
}
.entry-cta_main .btn {
  background: #6c4432;
  border: 1px solid #6c4432;
  border-radius: 25px;
  color: #ffffff;
  display: inline-block;
  font-size: 1.6rem;
  margin: 28px 0 0;
  padding: 12px 55px;
  position: relative;
  text-align: center;
}
.entry-cta_main .btn::after {
  content: "";
  display: block;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='enable-background:new 0 0 24 24' viewBox='0 0 24 24'%3E%3Cpath d='M20.7 15.7c.4-.4.4-.9 0-1.3L13.3 7c-.2-.2-.4-.3-.6-.3s-.5.1-.7.3l-7.5 7.5c-.4.4-.4.9 0 1.3s.9.4 1.3 0L12.6 9l6.8 6.8c.4.3 1 .3 1.3-.1z' style='fill-rule:evenodd;clip-rule:evenodd;fill:%23ffffff'/%3E%3C/svg%3E") no-repeat 50% 50%/cover;
  width: 20px;
  height: 14px;
  position: absolute;
  top: 50%;
  right: 25px;
  -webkit-transform: translateY(-50%) rotate(90deg);
      -ms-transform: translateY(-50%) rotate(90deg);
          transform: translateY(-50%) rotate(90deg);
}
.entry-cta_main .btn:hover {
  background-color: #ffffff;
  color: #6c4432;
}
.entry-cta_main .btn:hover::after {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='enable-background:new 0 0 24 24' viewBox='0 0 24 24'%3E%3Cpath d='M20.7 15.7c.4-.4.4-.9 0-1.3L13.3 7c-.2-.2-.4-.3-.6-.3s-.5.1-.7.3l-7.5 7.5c-.4.4-.4.9 0 1.3s.9.4 1.3 0L12.6 9l6.8 6.8c.4.3 1 .3 1.3-.1z' style='fill-rule:evenodd;clip-rule:evenodd;fill:%236c4432'/%3E%3C/svg%3E") no-repeat 50% 50%/cover;
}

/* index */
.page-index {
  background: #F3F7E6;
  border-radius: 10px;
  margin: 40px 0 60px;
  padding: 1px 30px 30px;
}
.page-index a {
  color: #262626;
}
.page-index a:hover {
  color: #008D54;
}
.page-index ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.page-index li {
  position: relative;
}
.page-index li + li {
  border-top: 1px solid #CCCCB8;
  margin-top: 0.75em;
  padding-top: 0.75em;
}
.page-index-title {
  font-size: 1.6rem;
  font-weight: bold;
}
.page-index-list {
  margin-top: 0.5em !important;
}
.page-index-list > li {
  font-weight: bold;
  padding-left: 16px;
  text-indent: -16px;
}
.page-index-list > li::before {
  background: #008D54;
  border-radius: 8px;
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-right: 8px;
  vertical-align: 0.1em;
}
.page-index-list ul {
  border-top: 1px solid #CCCCB8;
  margin-top: 0.75em;
  margin-left: -18px;
  padding-top: 0.75em;
  padding-left: 1em;
  position: relative;
}
.page-index-list ul li {
  color: #6c6c6c;
  font-weight: normal;
  text-indent: 0;
}

/* plus contents */
.aside-extend {
  background: #F3F7E6;
  border-radius: 100px 0 0 0;
  margin-top: 80px;
  padding: 100px 100px 200px;
}
.aside-extend .entry-extend_title {
  border-bottom: 2px solid #008D54;
  font-size: 2.4rem;
  margin-bottom: 40px;
  padding-bottom: 15px;
  padding-left: 30px;
  position: relative;
}
.aside-extend .entry-extend_title .icon {
  display: inline-block;
  width: 24px;
  height: 24px;
  stroke-width: 0;
  stroke: currentColor;
  fill: #008D54;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -19px;
}
.aside-extend .entry-extend + div {
  margin-top: 80px;
}
.aside-extend .entry-extend .article-headline {
  margin: 0 auto;
  max-width: 840px;
}
.aside-extend .entry-extend .article-headline .headline-item_desc {
  background: #ffffff;
}
.aside-extend.empty {
  border-radius: 0;
  margin-top: 150px;
  padding-top: 0;
}

@media only screen and (max-width: 767px) {
  .entry .layouter {
    padding: 0 15px;
  }
  .entry h1 {
    font-size: 2rem;
    line-height: 1.4;
  }
  .entry-header {
    padding: 56px 0 100px;
  }
  .entry-header_date {
    margin-top: 1.5em;
  }
  .entry-content {
    margin-top: -60px;
  }
  .entry-content h2 {
    border-left-width: 6px;
    font-size: 2rem;
    line-height: 1.4;
    padding-left: 13px;
  }
  .entry-content h3 {
    font-size: 1.8rem;
    line-height: 1.4;
    padding-bottom: 13px;
  }
  .entry-content h4 {
    font-size: 1.8rem;
    line-height: 1.4;
  }
  .entry-footer .box-writer {
    margin-top: 40px;
  }
  .entry-footer .box-writer_title {
    padding: 0.75em 0;
  }
  .entry-footer .box-writer_main {
    display: block;
    padding: 20px 15px;
  }
  .entry-footer .box-writer_photo {
    margin: 0 auto;
  }
  .entry-footer .box-writer_text {
    margin-top: 14px;
    margin-left: 0;
    text-align: center;
  }
  .entry-footer .box-writer_text .writer-name,
  .entry-footer .box-writer_text .writer-position {
    display: block;
  }
  .entry-footer .box-writer_text .writer-name {
    font-size: 1.8rem;
  }
  .entry-footer .box-writer_text .writer-position {
    margin-top: 1em;
    margin-left: 0;
  }
  .entry-footer .box-writer_text .writer-desc {
    text-align: left;
    margin-top: 1.25em;
    margin-bottom: 1em;
  }
  .entry-image {
    margin-bottom: 36px;
  }
  .entry .image-line {
    margin-top: 33px;
    margin-bottom: 33px;
  }
  .entry .image-line p:first-child img {
    max-width: 100%;
  }
  .entry .image-line .image-caption {
    margin-top: 1em;
  }
  .entry .sourceBox {
    margin: 48px 0;
    padding: 40px 24px;
  }
  .entry .sourceBox::before {
    font-size: 1.8rem;
  }
  .entry .sourceBox:last-of-type {
    margin: 50px 0 30px;
  }
  /* cta */
  .entry-cta {
    margin: 40px 0;
  }
  .entry-cta .cta-item {
    padding: 33px 20px 25px;
  }
  .entry-cta .cta-item_title {
    font-size: 1.8rem;
    line-height: 1.4;
    margin: 0 60px 25px;
    text-align: center;
  }
  .entry-cta .cta-item_title > span {
    text-align: left;
  }
  .entry-cta .cta-item_title > span::before, .entry-cta .cta-item_title > span::after {
    height: 70px;
  }
  .entry-cta .cta-item_title > span::before {
    left: -28px;
  }
  .entry-cta .cta-item_title > span::after {
    right: -28px;
  }
  .entry-cta .cta-item_request .cta-item_title {
    margin: 0 auto 25px;
  }
  .entry-cta .cta-item_request .cta-item_title span {
    letter-spacing: -0.05em;
  }
  .entry-cta .cta-item_request .thumb img {
    max-width: 70%;
  }
  .entry-cta .cta-item_article .cta-item_title {
    margin-right: auto;
    margin-left: auto;
    text-align: center;
  }
  .entry-cta .cta-item_article .article {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    padding: 0;
    width: 100%;
  }
  .entry-cta .cta-item_article .article-thumb {
    border-radius: 10px;
    overflow: hidden;
    width: 43.3333333333%;
  }
  .entry-cta .cta-item_article .article-text {
    line-height: 1.6;
    margin: 0;
    padding-left: 16px;
    width: 53.3333333333%;
  }
  .entry-cta .cta-item_article .article .ta-c {
    width: 100%;
  }
  .entry-cta .cta-item_article .article .btn {
    margin-top: 1em;
    padding: 12px 30px;
    width: 90%;
  }
  .entry-cta .cta-item_article .article + .article {
    margin-top: 25px;
  }
  .entry-cta_main .row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .entry-cta_main .thumb {
    padding-left: 0;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
    width: 100%;
  }
  .entry-cta_main .text {
    margin-top: 1em;
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
    padding: 16px;
    width: 100%;
  }
  .entry-cta_main .btn {
    margin: 15px 0 0;
    padding: 12px 30px;
    width: 100%;
  }
  .page-index {
    margin: 33px 0 40px;
    padding: 6px 20px 20px;
  }
  .page-index-title {
    margin-top: 1em !important;
  }
  .page-index-list {
    margin-top: 1em !important;
  }
  .page-index-list > li {
    font-weight: bold;
    padding-left: 16px;
    text-indent: -16px;
  }
  .page-index-list > li::before {
    background: #008D54;
    border-radius: 8px;
    content: "";
    display: inline-block;
    width: 8px;
    height: 8px;
    margin-right: 8px;
    vertical-align: 0.1em;
  }
  .page-index-list ul {
    border-top: 1px solid #CCCCB8;
    margin-top: 0.75em;
    margin-left: -16px;
    padding-top: 0.75em;
    padding-left: 1em;
    position: relative;
  }
  .page-index-list ul li {
    color: #6c6c6c;
    font-weight: normal;
    text-indent: 0;
  }
  .aside-extend {
    border-radius: 50px 0 0 0;
    margin-top: 80px;
    padding: 50px 15px 120px;
  }
  .aside-extend .entry-extend_title {
    font-size: 1.8rem;
    margin-bottom: 15px;
    padding-bottom: 10px;
  }
  .aside-extend .entry-extend + div {
    margin-top: 40px;
  }
  .aside-extend .entry-extend .article-headline {
    margin: 0 auto;
  }
  .aside-extend.empty {
    margin-top: 100px;
    padding-top: 0;
  }
}
/* home */
.main-entry {
  margin: 60px 0 113px;
  overflow: hidden;
}
.main-entry .entry-list_slider .slick-prev {
  margin-left: -430px;
  left: 50%;
}
.main-entry .entry-list_slider .slick-next {
  margin-right: -430px;
  right: 50%;
}
.main-entry .entry-list_slider.slick-slider .slick-dots {
  bottom: -26px;
}
.main-entry .item-entry {
  margin-bottom: 0;
  width: 760px;
}
.main-entry .item-entry a {
  border-radius: 20px;
  height: 480px;
}
.main-entry .item-entry_thumb {
  height: 480px;
}
.main-entry .item-entry_thumb img {
  height: 100%;
}
.main-entry .item-entry_text {
  background: transparent;
  display: block;
  position: absolute;
  bottom: 30px;
  left: 30px;
  width: 80%;
  padding: 0;
}
.main-entry .item-entry_title span, .main-entry .item-entry_date time {
  background: rgba(255, 255, 255, 0.7);
  border-radius: 3px;
}
.main-entry .item-entry_title {
  font-size: 2.2rem;
  padding: 0;
}
.main-entry .item-entry_title span {
  display: inline-block;
  line-height: 1.4;
  margin: 0.25em 0;
  padding: 0 0.5em;
}
.main-entry .item-entry_date {
  margin-bottom: 0.25em;
}
.main-entry .item-entry_date time {
  display: inline-block;
  font-size: 1.2rem;
  padding: 0.25em 1em;
}

.section-newentry {
  background: #F3F7E6;
}

@media print, screen and (min-width: 768px) {
  .section-newentry {
    border-radius: 100px 0 0 0;
    padding-bottom: 100px !important;
  }
  .section-newentry .entry-list .item-entry:nth-child(-n+2) {
    width: 475px;
    width: calc(50% - 30px);
  }
  .section-newentry .entry-list .item-entry:nth-child(-n+2) .item-entry_thumb {
    height: 300px;
  }
  .section-newentry .entry-list .item-entry:nth-child(-n+2) .item-entry_title {
    font-size: 2rem;
    line-height: 1.4;
  }
  .section-newentry a.btn-all {
    margin-top: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .main-entry {
    margin: -10px 0 30px;
    position: relative;
  }
  .main-entry .entry-list {
    margin: 0;
  }
  .main-entry .item-entry {
    margin: 0;
    width: 100%;
  }
  .main-entry .item-entry + .item-entry {
    margin-top: 0;
  }
  .main-entry .item-entry a {
    border-radius: 0;
    height: 395px;
  }
  .main-entry .item-entry_thumb {
    height: 395px;
    padding-top: 0;
  }
  .main-entry .item-entry_thumb img {
    width: 100%;
    position: relative;
  }
  .main-entry .item-entry_text {
    bottom: 16px;
    left: 15px;
    width: 90%;
  }
  .main-entry .item-entry_title {
    font-size: 1.8rem;
    line-height: 1.75;
  }
  .main-entry .entry-list_slider.slick-slider .slick-dots {
    bottom: -12px;
  }
  .section-newentry {
    border-radius: 50px 0 0 0;
  }
  .section-newentry .layouter {
    padding-bottom: 110px;
  }
}