@charset "UTF-8";
.is-bg-white {
  background-color: #fff; }

.is-bg-green {
  background-color: #009869; }

.is-bg-darkgreen {
  background-color: #006244; }

.is-between {
  justify-content: space-between; }

a {
  color: #222;
  text-decoration: none; }

a:visited {
  color: #888; }

a:hover {
  color: #009869; }

.visited-clear a:visited {
  color: #222; }
.visited-clear a:hover {
  color: #009869; }

a:active {
  color: #009869; }

a img {
  border: none;
  transition: .3s; }

a:hover img {
  opacity: .7; }

img {
  vertical-align: bottom; }

button:focus {
  outline: initial; }

button:active {
  outline: initial; }

body {
  background-color: #F5F5F5; }

.content-wrapper {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 1080px;
  margin: 0 auto;
  padding: 0 10px; }
  .content-wrapper.for_form {
    width: 100%;
    min-width: 100%;
    padding: 0;
    justify-content: center !important; }

.content-wrapper-mini {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
  max-width: 720px;
  margin: 0 auto;
  padding: 0 10px; }

.content-wrapper_main {
  width: 720px;
  margin: 0;
  padding: 0; }

.content-wrapper_aside {
  width: 320px;
  margin: 0;
  padding: 0 10px; }

.content-wrapper_onecol {
  width: 100%;
  margin: 0;
  padding: 0; }
  .content-wrapper_onecol .section_content {
    margin: 3rem 0 0;
    padding: 0 0 1.5rem;
    border-bottom: none; }
  .content-wrapper_onecol .section_title_txt {
    text-align: center;
    margin: 0 auto 30px; }
  .content-wrapper_onecol .btn-align-area {
    justify-content: center; }

.section_prologue {
  width: 720px;
  margin: 2rem auto;
  padding: 0;
  text-align: center; }
  .section_prologue .logo-title {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 24px;
    padding: 0 15px;
    text-align: center; }
  .section_prologue .section_prologue_lead_txt {
    font-size: .875rem;
    color: #888888; }

.section_content {
  margin: 2rem 0 0;
  padding: 0 0 1.25rem;
  border-bottom: 1px solid #009869; }
  .section_content.has-no-border {
    border-bottom: none; }

.section_content_only {
  margin: 2rem 0 -1rem;
  padding: 0; }

.section_form {
  width: 100%;
  max-width: 640px;
  margin: 2rem auto;
  padding: 0 15px;
  text-align: left; }
  .section_form h2 {
    color: #009869;
    font-size: 1.245rem;
    font-weight: bold;
    margin-top: 1rem;
    margin-bottom: 2rem;
    text-align: center; }

.section_title_sub {
  margin-bottom: 4px;
  color: #009869;
  font-size: 0.75rem;
  font-weight: bold; }

.section_title_txt {
  color: #009869;
  font-size: 1.24rem;
  font-weight: bold;
  line-height: 1.2; }

.section_title_txt.before_section_info {
  margin-bottom: 0.75rem; }

.section_title_secondlayer_txt {
  margin-bottom: 1rem;
  padding-bottom: 6px;
  color: #009869;
  font-size: 1rem;
  font-weight: bold;
  line-height: 1.2;
  border-bottom: solid 1px #009869;
  position: relative; }
  .section_title_secondlayer_txt:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 3px #009869;
    bottom: -1px;
    width: 30%; }

.section_info_txt {
  margin-bottom: 20px;
  color: #888888;
  font-size: 0.875rem; }

.btn-align-area {
  display: flex;
  justify-content: flex-end;
  width: 100%; }
  .btn-align-area button.btn-more-list {
    position: relative;
    z-index: 2;
    display: block;
    padding: 10px 26px;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    color: #009869;
    background-color: #fff;
    border: 1px solid #009869;
    border-radius: 64px; }
  .btn-align-area button.btn-more-list:before {
    content: "";
    position: absolute;
    top: -1px;
    left: -1px;
    width: calc(100% + 2px);
    height: calc(100% + 2px);
    background: linear-gradient(to right, #009869, #009869);
    background-repeat: no-repeat;
    background-size: 0 100%;
    transition: background-size .3s 0s;
    border-radius: 64px; }
  .btn-align-area button.btn-more-list .btn-more-list-txt {
    position: relative;
    z-index: 3; }
  .btn-align-area button.btn-more-list:hover {
    cursor: pointer;
    color: #fff; }
  .btn-align-area button.btn-more-list:hover:before {
    z-index: 1;
    background-size: 100% 100%; }

.btn-align-group {
  display: flex;
  justify-content: center;
  width: 100%;
  margin-top: 30px;
  margin-bottom: 10px; }
  .btn-align-group button.btn-more-list {
    position: relative;
    z-index: 2;
    display: block;
    margin-right: 10px;
    padding: 10px 26px;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    color: #009869;
    background-color: #fff;
    border: 1px solid #009869;
    border-radius: 64px; }
    .btn-align-group button.btn-more-list:last-of-type {
      margin-right: 0; }
  .btn-align-group button.btn-more-list:before {
    content: "";
    position: absolute;
    top: -1px;
    left: -1px;
    width: calc(100% + 2px);
    height: calc(100% + 2px);
    background: linear-gradient(to right, #009869, #009869);
    background-repeat: no-repeat;
    background-size: 0 100%;
    transition: background-size .3s 0s;
    border-radius: 64px; }
  .btn-align-group button.btn-more-list .btn-more-list-txt {
    position: relative;
    z-index: 3; }
  .btn-align-group button.btn-more-list:hover {
    cursor: pointer;
    color: #fff; }
  .btn-align-group button.btn-more-list:hover:before {
    z-index: 1;
    background-size: 100% 100%; }

button.btn-more {
  display: block;
  min-width: 240px;
  margin-right: 10px;
  padding: 16px 26px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  color: #009869;
  background-color: #fff;
  border: 1px solid #009869;
  border-radius: 6px;
  transition: ease .3s; }
  button.btn-more:last-of-type {
    margin-right: 0; }
  button.btn-more:hover {
    cursor: pointer;
    background-color: #009869;
    color: #fff; }

.more-wrap {
  position: relative; }

.more-wrap + .more-wrap {
  margin-top: 40px; }

.more-btn {
  z-index: 2;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  width: 160px;
  margin: auto;
  color: #009869;
  padding: 10px 26px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  border: 1px solid;
  border-radius: 6px;
  background: #fff;
  text-align: center;
  cursor: pointer;
  transition: .2s ease; }

.more-btn::after {
  content: "さらにみる"; }

.more-btn:hover {
  background: #fff;
  color: #009e8f; }

.more-item {
  position: relative;
  overflow: hidden;
  height: 30px; }

.more-item p + p {
  margin-top: 1em; }

.more-item::before {
  display: block;
  position: relative;
  bottom: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 60px;
  background: linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 50%, #fff 100%); }

.more-trigger {
  display: none; }

.more-trigger:checked ~ .more-btn {
  bottom: -2rem; }

.more-trigger:checked ~ .more-btn::after {
  content: "閉じる"; }

.more-trigger:checked ~ .more-item {
  height: auto; }

.more-trigger:checked ~ .more-item::before {
  display: none; }

@supports (-webkit-line-clamp: 1) {
  .ellipsis-one {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical; } }
@supports (-webkit-line-clamp: 2) {
  .ellipsis-two {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical; } }
@supports (-webkit-line-clamp: 3) {
  .ellipsis-three {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical; } }
@supports (-webkit-line-clamp: 4) {
  .ellipsis-four {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical; } }
.channel-group {
  margin: 0 0 30px;
  border-bottom: 1px solid #009869; }
  .row .channel-group.col.l6 {
    width: calc(50% - 10px); }
  .channel-group .channel-body {
    padding: 30px 30px 20px; }
  .channel-group .channel-author {
    display: flex;
    flex-direction: row;
    border-bottom: 1px solid #ccc;
    margin-bottom: 20px;
    padding-bottom: 20px; }
    .channel-group .channel-author-img {
      width: 80px;
      height: 80px;
      margin-right: 20px;
      padding: 0;
      border-radius: 6px;
      overflow: hidden;
      background-image: url(../img/icon_avatar.svg);
      background-color: #ddd;
      background-position: center center;
      background-repeat: no-repeat;
      background-size: cover; }
    .channel-group .channel-author-info {
      flex: 1; }
    .channel-group .channel-author-name {
      margin-bottom: 16px;
      font-weight: bold; }
    .channel-group .channel-author-txt {
      color: #888888;
      font-size: .875rem; }
  .channel-group .channel-list_item {
    margin-bottom: 20px; }
    .channel-group .channel-list_item:last-of-type {
      margin-bottom: 0; }
  .channel-group .channel-footer {
    padding: 0 30px 20px; }

.with-header {
  position: relative;
  display: flex;
  justify-content: center;
  overflow: hidden; }
  .with-header-bg {
    position: absolute;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    filter: blur(8px);
    -webkit-filter: blur(8px);
    opacity: .65; }
  .with-header img {
    z-index: 2; }

.with-group {
  margin: 0 0 30px;
  border-bottom: 1px solid #009869; }
  .row .with-group.col.l6 {
    width: calc(50% - 10px); }
  .with-group .with-body {
    padding: 30px 30px 20px; }
  .with-group .with-author {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    border-bottom: 1px solid #ccc;
    margin-bottom: 20px;
    padding-bottom: 20px; }
    .with-group .with-author-img {
      width: 80px;
      height: 80px;
      margin-bottom: 16px;
      padding: 0;
      border-radius: 6px;
      overflow: hidden; }
    .with-group .with-author-name {
      margin-bottom: 16px;
      font-weight: bold;
      text-align: center; }
    .with-group .with-author-txt {
      color: #888888;
      font-size: .875rem; }
  .with-group .with-list_item {
    margin-bottom: 20px; }
    .with-group .with-list_item:last-of-type {
      margin-bottom: 0; }
  .with-group .with-footer {
    padding: 0 30px 20px; }

.wp-content .row > .col {
  padding-right: 30px; }
  .wp-content .row > .col:nth-child(2n) {
    padding-right: 0px; }
.wp-content h2 {
  color: #009869;
  font-size: 1.245rem;
  font-weight: bold;
  margin-top: 1rem;
  margin-bottom: 2rem;
  text-align: center; }
.wp-content-text h3 {
  font-size: 1.25rem;
  font-weight: bold;
  margin-bottom: 1rem; }
.wp-content-text img + h3, .wp-content-text div + h3, .wp-content-text p + h3 {
  margin-top: 3rem; }
.wp-content-text p {
  font-size: 1rem;
  margin-bottom: 1rem;
  line-height: 1.6; }
.wp-content-text figure.entry-contents-insert {
  margin: 2rem 0;
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  justify-content: center; }
.wp-content-text figure.entry-contents-img {
  margin: 2rem 0;
  text-align: center; }
  .wp-content-text figure.entry-contents-img picture {
    display: flex;
    align-items: center;
    justify-content: center; }
  .wp-content-text figure.entry-contents-img figcaption {
    margin-top: 8px;
    color: #888888;
    font-size: 0.75rem; }
.wp-content-text blockquote {
  position: relative;
  margin: 1.25rem 0;
  padding: 30px;
  border-radius: 12px;
  background-color: #F2FAF7;
  font-size: .9375rem; }
  .wp-content-text blockquote::before {
    content: url(../img/bg-blockquote.svg);
    position: absolute;
    top: 10px;
    left: 10px;
    width: 20px;
    height: 16px; }

#page-top {
  width: 60px;
  height: 60px;
  position: fixed;
  left: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.25); }
  #page-top a {
    position: relative;
    display: block;
    width: 60px;
    height: 60px;
    text-decoration: none; }
    #page-top a::before {
      font-family: 'Material Icons';
      font-weight: normal;
      font-style: normal;
      display: flex;
      align-items: center;
      justify-content: center;
      line-height: 1;
      text-transform: none;
      text-indent: 0;
      letter-spacing: normal;
      word-wrap: normal;
      white-space: nowrap;
      direction: ltr;
      -webkit-font-smoothing: antialiased;
      text-rendering: optimizeLegibility;
      -moz-osx-font-smoothing: grayscale;
      font-feature-settings: 'liga';
      font-size: 34px;
      speak: never;
      content: "arrow_upward";
      color: #fff;
      width: 60px;
      height: 60px;
      top: 0;
      bottom: 0;
      right: 0;
      left: 0;
      margin: auto;
      text-align: center; }

.not-found-wrapper {
  width: 720px;
  margin: 2rem auto;
  padding: 0; }
  .not-found-wrapper .not-found-content {
    text-align: center; }
    .not-found-wrapper .not-found-content h1.not-found-title {
      font-size: 3rem;
      font-weight: bold;
      margin: 4rem auto 0; }
    .not-found-wrapper .not-found-content .not-found-sub {
      font-size: 1rem;
      font-weight: bold;
      margin-bottom: 2rem; }
    .not-found-wrapper .not-found-content .not-found-text {
      font-size: 0.875rem;
      margin-bottom: 2rem; }

a.banner-link-return {
  display: block;
  text-align: center;
  margin: 2rem auto 6rem;
  padding: 16px 26px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  background-color: #009869;
  border: none;
  border-radius: 6px;
  transition: ease .3s; }
  a.banner-link-return:hover {
    cursor: pointer;
    background-color: #006244; }

.top_info {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 30px 0 0;
  padding: 0;
  width: 100%; }
  .top_info_icon {
    font-size: 11px;
    background-color: orange;
    padding: 5px;
    margin-right: 10px;
    border-radius: 4px;
    line-height: 1;
    color: #fff; }
  .top_info_txt {
    margin: 0px;
    display: inline-block;
    font-size: 14px; }

.row {
  display: flex;
  flex-wrap: wrap; }

.row .col.l1 {
  width: 8.3333333333%;
  left: auto;
  right: auto; }

.row .col.l2 {
  width: 16.6666666667%;
  left: auto;
  right: auto; }

.row .col.l3 {
  width: 25%;
  left: auto;
  right: auto; }

.row .col.l4 {
  width: 33.3333333333%;
  left: auto;
  right: auto; }

.row .col.l5 {
  width: 41.6666666667%;
  left: auto;
  right: auto; }

.row .col.l6 {
  width: 50%;
  left: auto;
  right: auto; }

.row .col.l7 {
  width: 58.3333333333%;
  left: auto;
  right: auto; }

.row .col.l8 {
  width: 66.6666666667%;
  left: auto;
  right: auto; }

.row .col.l9 {
  width: 75%;
  left: auto;
  right: auto; }

.row .col.l10 {
  width: 83.3333333333%;
  left: auto;
  right: auto; }

.row .col.l11 {
  width: 91.6666666667%;
  left: auto;
  right: auto; }

.row .col.l12 {
  width: 100%;
  left: auto;
  right: auto; }

.header-wrapper {
  min-width: 1080px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  background-color: #fff;
  margin: 0;
  padding: 8px; }
  @media all and (-ms-high-contrast: none) {
    .header-wrapper {
      min-width: initial;
      width: 1080px;
      margin: 0 auto; } }
  .header-wrapper.for_form {
    width: 100%;
    min-width: 100%;
    justify-content: center !important; }
  .header-wrapper .header-left-wrapper {
    display: flex;
    flex-direction: row;
    align-items: center; }
  .header-wrapper .header-center-wrapper {
    position: relative;
    left: -117px; }
    @media all and (-ms-high-contrast: none) {
      .header-wrapper .header-center-wrapper {
        left: -153px; } }

.header-menu-btn {
  display: flex;
  flex-direction: row;
  align-items: center; }
  .header-menu-btn a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    border-radius: 6px;
    overflow: hidden;
    transition: .2s ease; }
    .header-menu-btn a:hover {
      background-color: #E4F4EF; }

.menu-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  transition: .1s;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain; }
  .menu-btn.select-menu {
    background-image: url(../img/icon_menu.svg); }

.header-menu-btn a:hover .menu-btn {
  transform: rotate(180deg); }

.jt-search {
  position: relative;
  width: 100%; }

.jt-search_input {
  background: none;
  outline: none;
  -webkit-appearance: none;
  box-sizing: border-box;
  border: 2px solid #009869;
  border-radius: 6px;
  margin-left: 8px;
  padding: 8px;
  color: #333;
  font-weight: 700;
  font-size: 14px;
  letter-spacing: 0.05em; }

.jt-search_input::-webkit-input-placeholder {
  color: #000;
  opacity: 0.3; }

.jt-search_input::-moz-placeholder {
  color: #000;
  opacity: 0.3; }

.jt-search_input:-ms-input-placeholder {
  color: #000;
  opacity: 0.3; }

.jt-search_input::-ms-input-placeholder {
  color: #000;
  opacity: 0.3; }

.jt-search_input::placeholder {
  color: #000;
  opacity: 0.3; }

.jt-search_btn {
  background: none;
  outline: none;
  border: none;
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  display: block;
  cursor: pointer;
  width: 24px;
  height: 24px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(../img/icon_search.svg); }

.hc-offcanvas-nav li.inner-search-box {
  display: none !important; }

.hc-offcanvas-nav .nav-wrapper > .nav-content > ul:first-of-type {
  border-top: 1px solid #005035; }

.inner-search .inner-search-box .nav-item-link {
  padding: 10px 17px 10px 17px; }

.jt-inner-search {
  position: relative;
  width: 100%;
  margin: 6px 0 4px; }
  .jt-inner-search input[type="text"],
  .jt-inner-search textarea {
    width: 100%; }
  .jt-inner-search_input {
    background: none;
    outline: none;
    -webkit-appearance: none;
    box-sizing: border-box;
    border: 2px solid #fff;
    border-radius: 32px;
    margin-top: 0px;
    padding: 8px 16px;
    color: #fff;
    font-weight: 700;
    font-size: 14px;
    letter-spacing: 0.05em; }
    .jt-inner-search_input::-webkit-input-placeholder {
      color: #fff;
      opacity: 0.3; }
    .jt-inner-search_input::-moz-placeholder {
      color: #fff;
      opacity: 0.3; }
    .jt-inner-search_input:-ms-input-placeholder {
      color: #fff;
      opacity: 0.3; }
    .jt-inner-search_input::-ms-input-placeholder {
      color: #fff;
      opacity: 0.3; }
    .jt-inner-search_input::placeholder {
      color: #fff;
      opacity: 0.3; }
  .jt-inner-search_btn {
    background: none;
    outline: none;
    border: none;
    position: absolute;
    right: 14px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    display: block;
    cursor: pointer;
    width: 18px;
    height: 18px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url(../img/icon_search_wh.svg); }

.logo-header-nolink,
.logo-header a {
  background-image: url(../img/jtownnet-logo.svg); }

.logo-header-nolink,
.logo-header a {
  display: inline-block;
  vertical-align: middle;
  transition: .3s ease;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 193px;
  height: 55px;
  overflow: hidden;
  text-indent: -9999px; }

.logo-header {
  position: relative; }
  .logo-header:after {
    content: "あなたの街の情報サイト";
    position: absolute;
    bottom: 1px;
    right: 1px;
    font-size: 12px;
    line-height: 1;
    white-space: nowrap; }

.header-select-btn {
  display: flex;
  flex-direction: row;
  align-items: center;
  position: relative; }
  .header-select-btn .notice {
    position: absolute;
    display: flex;
    align-items: center;
    text-align: left;
    width: 120px;
    height: 56px;
    left: -110px;
    top: 0;
    font-size: 13px;
    font-weight: bold;
    color: #009869; }
  .header-select-btn a {
    position: relative;
    background-color: #009869;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    width: 56px;
    height: 56px;
    color: #fff;
    border-radius: 6px;
    overflow: hidden;
    z-index: 1;
    transition: .2s ease; }
    .header-select-btn a:visited {
      color: #fff; }
    .header-select-btn a:before {
      content: url(../img/icon_area.svg);
      position: absolute;
      z-index: 2;
      top: -15px;
      left: 0;
      right: 0;
      bottom: 0;
      margin: auto;
      width: 23px;
      height: 26px; }
    .header-select-btn a:hover {
      background-color: #006244; }
      .header-select-btn a:hover:before {
        animation: floating 0.5s ease infinite alternate; }
    .header-select-btn a .select-area {
      width: 100%;
      background-color: #111;
      padding: 8px;
      position: relative;
      transition: .2s ease; }
      .header-select-btn a .select-area-name {
        font-size: 13px;
        font-weight: bold;
        text-align: center;
        line-height: 1; }

@keyframes floating {
  0% {
    bottom: -2px; }
  100% {
    bottom: 3px; } }
.scroll-nav {
  min-width: 1080px;
  margin: 0 auto;
  background: #009869;
  color: #FFF;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none; }
  @media all and (-ms-high-contrast: none) {
    .scroll-nav {
      min-width: initial;
      width: 1080px; } }
  .scroll-nav::-webkit-scrollbar {
    display: none; }
  .scroll-nav .scroll-nav-wrapper {
    display: flex;
    margin: 0 auto; }
  .scroll-nav ul.scroll-nav_list {
    display: flex;
    list-style-type: none;
    margin: 6px auto;
    padding: 0 2px;
    text-align: center; }
  .scroll-nav li.scroll-nav_item a.scroll-nav_item-txt {
    display: flex;
    word-break: keep-all;
    font-size: 0.875rem;
    font-weight: bold;
    color: #fff;
    margin-left: 3px;
    margin-right: 3px;
    padding: 10px 12px;
    line-height: 1;
    border-radius: 6px;
    transition: .3s; }
    .scroll-nav li.scroll-nav_item a.scroll-nav_item-txt:hover {
      color: #009869;
      background-color: #f5f5f5; }
  .scroll-nav li.scroll-nav_item.current a.scroll-nav_item-txt {
    color: #009869;
    background-color: #f5f5f5; }

.entry-contents {
  position: relative;
  margin: 2rem 0 0;
  padding: 0;
  color: #222; }
  .entry-contents.pr-item:before {
    position: absolute;
    content: "PR";
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 4px 8px;
    width: 30px;
    height: 30px;
    top: 0;
    left: 0;
    font-size: 12px;
    line-height: 1;
    color: #fff;
    background-color: #BE0000;
    border-radius: 0 0 12px 0;
    z-index: 2; }
  .entry-contents .entry-contents_share {
    position: sticky;
    top: 10px; }
    .entry-contents .entry-contents_share-list {
      position: absolute;
      top: 0;
      left: -58px;
      font-size: 1.5rem;
      display: flex;
      flex-wrap: nowrap;
      flex-direction: column;
      align-items: center; }
    .entry-contents .entry-contents_share-item {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      margin-bottom: 2px;
      width: 48px;
      height: 48px;
      background-color: #fff;
      transition: ease .3s; }
      .entry-contents .entry-contents_share-item.facebook {
        color: #355199; }
        .entry-contents .entry-contents_share-item.facebook:hover {
          color: #fff;
          background-color: #355199; }
      .entry-contents .entry-contents_share-item.twitter {
        color: #1DA1F2; }
        .entry-contents .entry-contents_share-item.twitter:hover {
          color: #fff;
          background-color: #1DA1F2; }
      .entry-contents .entry-contents_share-item.hateblog {
        color: #00A5DF; }
        .entry-contents .entry-contents_share-item.hateblog:hover {
          color: #fff;
          background-color: #00A5DF; }
      .entry-contents .entry-contents_share-item.line {
        color: #00C200; }
        .entry-contents .entry-contents_share-item.line:hover {
          color: #fff;
          background-color: #00C200; }
      .entry-contents .entry-contents_share-item.comment {
        font-size: 1.25rem;
        line-height: 1;
        color: #009869; }
        .entry-contents .entry-contents_share-item.comment .count {
          margin-top: 4px;
          font-size: .75rem;
          font-weight: bold; }
        .entry-contents .entry-contents_share-item.comment:hover {
          color: #fff;
          background-color: #009869; }
  .entry-contents .entry-contents_header {
    background-color: #fff;
    padding: 30px;
    line-height: 1.6; }
    .entry-contents .entry-contents_header_title {
      margin: 0; }
      .entry-contents .entry-contents_header_title + * {
        margin-top: 20px; }
      .entry-contents .entry-contents_header_title-txt {
        font-size: 1.5rem;
        font-weight: bold; }
    .entry-contents .entry-contents_header_info {
      display: flex;
      flex-wrap: nowrap;
      flex-direction: row;
      align-items: center;
      font-size: 0.75rem;
      line-height: 1; }
      .entry-contents .entry-contents_header_info-author a {
        display: flex;
        flex-wrap: wrap;
        flex-direction: row;
        align-items: center; }
        .entry-contents .entry-contents_header_info-author a .entry-contents_header_info-author-img {
          transition: .2s ease;
          background-color: rgba(0, 152, 105, 0); }
        .entry-contents .entry-contents_header_info-author a:hover .entry-contents_header_info-author-img {
          background-color: #009869; }
      .entry-contents .entry-contents_header_info-author + .entry-contents_header_info-time {
        margin-left: 10px;
        padding-left: 10px;
        border-left: 1px solid; }
      .entry-contents .entry-contents_header_info-author-img {
        position: relative;
        width: 32px;
        height: 32px;
        margin-right: 0.375rem;
        padding: 0;
        border-radius: 100%;
        overflow: hidden;
        background-color: #009869;
        background-position: center center;
        background-repeat: no-repeat; }
        .entry-contents .entry-contents_header_info-author-img img {
          position: absolute;
          top: 0;
          width: 100%;
          height: 100%;
          object-fit: cover; }
      .entry-contents .entry-contents_header_info-author-txt {
        position: relative; }
      .entry-contents .entry-contents_header_info-time {
        color: #888888; }
    .entry-contents .entry-contents_header_provider {
      display: flex;
      flex-wrap: nowrap;
      flex-direction: row;
      align-items: center;
      margin: 1rem 0 0;
      font-size: 0.75rem; }
      .entry-contents .entry-contents_header_provider span.pr-provider {
        display: block;
        padding: 2px 8px 3px;
        color: #009869;
        border: 1px solid #009869;
        border-radius: 3px;
        line-height: 1; }
    .entry-contents .entry-contents_header .related-keyword-container {
      margin: 1rem 0 0; }
    .entry-contents .entry-contents_header .related-keyword-list {
      display: flex;
      flex-wrap: wrap;
      flex-direction: row;
      align-items: center;
      justify-content: flex-start; }
      .entry-contents .entry-contents_header .related-keyword-list .related-keyword-item a {
        position: relative;
        display: inline-block;
        margin-top: 10px;
        margin-right: 10px;
        padding: 8px 10px;
        font-size: 12px;
        font-weight: bold;
        line-height: 1;
        color: #888888;
        border: 1px solid #ccc;
        background-color: transparent;
        border-radius: 4px;
        transition: .3s; }
        .entry-contents .entry-contents_header .related-keyword-list .related-keyword-item a:hover {
          color: #009869;
          border: 1px solid #009869;
          background-color: #fff;
          box-shadow: 0 0 12px rgba(0, 152, 105, 0.2); }
      .entry-contents .entry-contents_header .related-keyword-list .related-keyword-item:last-child a {
        margin-right: 0; }
  .entry-contents .entry-contents_container {
    background-color: #fff;
    padding: 30px;
    color: #222;
    line-height: 1.75;
    border-top: 1px solid #ddd; }
    .entry-contents .entry-contents_container .entry-contents_text h2 {
      font-size: 1.245rem;
      font-weight: bold;
      margin-bottom: 1rem; }
    .entry-contents .entry-contents_container .entry-contents_text * + h2 {
      margin-top: 4rem; }
    .entry-contents .entry-contents_container .entry-contents_text p {
      font-size: 1rem;
      margin-bottom: 1rem; }
    .entry-contents .entry-contents_container .entry-contents_text :not(.entry_lead_list) a {
      font-weight: bold;
      color: #009869;
      transition: .2s ease; }
      .entry-contents .entry-contents_container .entry-contents_text :not(.entry_lead_list) a:hover {
        color: rgba(0, 152, 105, 0.7); }
      .entry-contents .entry-contents_container .entry-contents_text :not(.entry_lead_list) a.jcastVote-vote-facebook {
        color: #fff; }
      .entry-contents .entry-contents_container .entry-contents_text :not(.entry_lead_list) a.jcastVote-vote-twitter {
        color: #fff; }
    .entry-contents .entry-contents_container .entry-contents_text figure.entry-contents-insert {
      margin: 2rem 0;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center; }
      .entry-contents .entry-contents_container .entry-contents_text figure.entry-contents-insert.youtube_box {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 56.25%; }
        .entry-contents .entry-contents_container .entry-contents_text figure.entry-contents-insert.youtube_box iframe {
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          width: 100%;
          height: 100%; }
    .entry-contents .entry-contents_container .entry-contents_text figure.entry-contents-img {
      margin: 2rem 0;
      text-align: center; }
      .entry-contents .entry-contents_container .entry-contents_text figure.entry-contents-img picture {
        display: flex;
        align-items: center;
        justify-content: center; }
      .entry-contents .entry-contents_container .entry-contents_text figure.entry-contents-img figcaption {
        margin-top: 8px;
        color: #888888;
        font-size: 0.75rem; }
    .entry-contents .entry-contents_container .entry-contents_text blockquote {
      position: relative;
      width: 100%;
      margin: 1.25rem 0;
      padding: 30px;
      border-radius: 12px;
      background-color: #F2FAF7;
      font-size: .9375rem; }
      .entry-contents .entry-contents_container .entry-contents_text blockquote::before {
        content: url(../img/bg-blockquote.svg);
        position: absolute;
        top: 10px;
        left: 10px;
        width: 20px;
        height: 16px; }
      .entry-contents .entry-contents_container .entry-contents_text blockquote p:last-of-type {
        margin-bottom: 0; }

.entry-contents_pager {
  margin-top: 2rem; }
  .entry-contents_pager .entry-contents-pagenation {
    text-align: center;
    margin: 0;
    padding: 0; }
    .entry-contents_pager .entry-contents-pagenation .next-entry-title {
      width: 100%;
      text-align: left;
      margin: 0 auto 20px;
      font-size: 1.125rem;
      line-height: 1.5; }
      .entry-contents_pager .entry-contents-pagenation .next-entry-title a {
        color: #009869;
        position: relative;
        display: flex;
        align-items: stretch;
        padding: 12px;
        border: 1px solid;
        border-radius: 4px;
        font-weight: bold;
        text-decoration: none;
        background-color: #F2FAF7;
        transition: .3s ease; }
        .entry-contents_pager .entry-contents-pagenation .next-entry-title a:hover {
          color: #fff !important;
          background-color: #009869; }
        .entry-contents_pager .entry-contents-pagenation .next-entry-title a .title-text {
          flex: 1;
          padding-left: 4px; }
        .entry-contents_pager .entry-contents-pagenation .next-entry-title a .next-arrow {
          display: flex;
          align-items: center;
          color: #fff;
          font-size: 13px;
          margin-left: 1rem;
          margin-right: 0.5rem;
          padding: 4px 12px;
          background-color: #009869;
          position: relative;
          line-height: 27px; }
          .entry-contents_pager .entry-contents-pagenation .next-entry-title a .next-arrow:after {
            position: absolute;
            content: " ";
            display: inline-block;
            top: 0;
            right: -8px;
            width: 8px;
            height: 100%;
            background: linear-gradient(to bottom left, rgba(255, 255, 255, 0) 50%, #009869 50.5%) no-repeat top left/100% 51.5%, linear-gradient(to top left, rgba(255, 255, 255, 0) 50%, #009869 50.5%) no-repeat bottom right/100% 51%; }

.entrypage_pagenation {
  font-size: 0;
  width: 100%;
  margin: 0;
  padding: 0 5px;
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: center; }
  .entrypage_pagenation ul, .entrypage_pagenation li {
    list-style-type: none;
    margin: 0;
    padding: 0; }
  .entrypage_pagenation .page-numbers {
    line-height: 1;
    text-align: center; }
    .entrypage_pagenation .page-numbers .page-number-item {
      display: inline-block;
      vertical-align: middle;
      margin: 0 3px; }
      .entrypage_pagenation .page-numbers .page-number-item.is-active a {
        background-color: #009869;
        border: 1px solid #009869;
        color: #fff; }
      .entrypage_pagenation .page-numbers .page-number-item a, .entrypage_pagenation .page-numbers .page-number-item span {
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 0.875rem;
        font-weight: bold;
        text-align: center;
        color: #009869;
        transition: .3s ease;
        border-radius: 4px;
        padding: 10px 0;
        width: 38px;
        height: 38px; }
      .entrypage_pagenation .page-numbers .page-number-item a {
        cursor: pointer;
        border: 1px solid #009869;
        background-color: #fff; }
        .entrypage_pagenation .page-numbers .page-number-item a:hover {
          background-color: #009869;
          border: 1px solid #009869;
          color: #fff !important; }

.item-type-related {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  margin-bottom: 30px; }
  .item-type-related .list_item-title {
    margin-top: 10px;
    transition: color .2s; }
    .item-type-related .list_item-title .list_item-title-txt {
      font-size: 0.9375rem;
      font-weight: bold; }
  .item-type-related .list_item-img {
    border-radius: 6px; }
  .item-type-related.col.l3 {
    width: 165px;
    margin-right: 20px; }
    .item-type-related.col.l3:nth-child(4n) {
      margin-right: 0; }
    .item-type-related.col.l3 .list_item-img {
      height: 103px; }

.entry-contents_text .entry_lead_list {
  margin: 2rem auto 0; }
  .entry-contents_text .entry_lead_list + * {
    margin-top: 2rem; }

.entry_lead_list {
  position: relative;
  width: 100%;
  margin: 2rem auto 0;
  padding: 15px;
  background-color: #F5F5F5;
  border: 1px solid #ccc; }
  .entry_lead_list + * {
    margin-top: 2rem; }
  .entry_lead_list.pr-item:before {
    position: absolute;
    content: "PR";
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 4px 8px;
    width: 30px;
    height: 30px;
    top: -1px;
    left: -1px;
    font-size: 12px;
    line-height: 1;
    color: #fff;
    background-color: #BE0000;
    border-radius: 0 0 12px 0;
    z-index: 2; }

.entry_comment {
  margin: 0;
  background-color: #fff; }

#ulCommentWidget {
  padding: 30px; }
  #ulCommentWidget:empty {
    display: none; }

/* MCEntryProfile プロフィール */
#MCEntryProfile {
  display: flex;
  position: relative;
  width: 100%;
  margin: 1rem auto 0;
  padding: 15px;
  background-color: #fff;
  border: 1px solid #ccc; }
  #MCEntryProfile .profile-left {
    width: 80px;
    height: 80px;
    margin-right: 15px; }
  #MCEntryProfile .profile-left img {
    width: 100%;
    height: 100%;
    object-fit: cover; }
  #MCEntryProfile .profile-right {
    font-size: 0.875rem;
    flex: 1;
    line-height: 1.5;
    word-break: break-all; }
    #MCEntryProfile .profile-right h2 {
      font-size: 1.4rem;
      margin-bottom: 8px; }
    #MCEntryProfile .profile-right h3 {
      font-size: 1.125rem;
      font-weight: bold;
      margin-bottom: 8px; }
    #MCEntryProfile .profile-right a {
      font-weight: bold;
      color: #009869;
      transition: .2s ease; }
      #MCEntryProfile .profile-right a:hover {
        opacity: .7; }

.entry-contents #MCEntryProfile {
  background-color: #F5F5F5;
  margin: 2rem auto 0; }

/* チャンネルについて バナー */
a.banner-link-ch-about {
  display: block;
  text-align: center;
  margin: 1rem auto 0;
  padding: 16px 26px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  background-color: #009869;
  border: none;
  border-radius: 6px;
  transition: ease .3s; }
  a.banner-link-ch-about:hover {
    cursor: pointer;
    background-color: #006244; }

.slick-wrapper * {
  box-sizing: border-box; }

.slick-wrapper {
  background: #f5f5f5;
  width: 100%;
  margin: 0 auto; }

.slick-wrapper a {
  color: #222;
  text-decoration: none; }

.slick-wrapper img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  vertical-align: bottom; }

.slick-wrapper a img {
  border: none;
  transition: .3s; }

.carousel-inner {
  max-width: 100%;
  margin: 0 auto;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  outline: none;
  cursor: pointer; }

.carousel-inner .slick-caption {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  margin-top: 15px;
  text-align: left;
  opacity: 0;
  transition: 0.3s ease; }

.carousel-inner .slick-title {
  color: #333;
  font-size: 18px;
  font-weight: normal;
  margin: 0 0 15px;
  text-align: center; }

.carousel-inner .slick-caption p {
  color: #666;
  font-size: 14px !important;
  margin: 0 0 10px !important; }

.carousel-inner .slick-caption p.slick-caption-recommended {
  width: 100%; }

.carousel-inner .slick-caption p:last-of-type {
  margin: 0 !important; }

.carousel-inner .provider-caption {
  margin-top: 2px;
  font-size: 10px;
  text-align: center;
  color: #222; }

.slick-current .slick-caption {
  opacity: 1;
  transition-delay: 0.5s; }

.footer-wrapper {
  min-width: 1080px;
  margin-top: 60px; }
  .footer-wrapper.for_form {
    width: 100%;
    min-width: 100%;
    justify-content: center !important;
    margin-top: 30px; }
  .footer-wrapper a {
    color: rgba(255, 255, 255, 0.7);
    transition: .2s; }
    .footer-wrapper a:hover {
      color: white; }
    .footer-wrapper a:visited {
      color: rgba(255, 255, 255, 0.7); }
  .footer-wrapper .footer-container {
    width: 1080px;
    margin: 0 auto;
    padding: 0 10px; }
    .footer-wrapper .footer-container .row {
      flex-wrap: nowrap; }
    .footer-wrapper .footer-container.for_form {
      width: 100%;
      min-width: 100%;
      justify-content: center !important; }
  .footer-wrapper .footer-content {
    padding: 40px 10px; }
    .footer-wrapper .footer-content-list-title {
      margin-bottom: 20px;
      font-size: 1rem;
      font-weight: bold;
      color: white; }
    .footer-wrapper .footer-content-list {
      list-style-type: none;
      margin-bottom: 20px;
      padding: 0; }
      .footer-wrapper .footer-content-list:last-of-type {
        margin-bottom: 0; }
      .footer-wrapper .footer-content-list-item {
        margin-bottom: 8px;
        font-size: 0.875rem; }
        .footer-wrapper .footer-content-list-item:last-of-type {
          margin-bottom: 0; }
        .footer-wrapper .footer-content-list-item .area-group {
          display: flex;
          flex-wrap: nowrap;
          flex-direction: row; }
          .footer-wrapper .footer-content-list-item .area-group ul, .footer-wrapper .footer-content-list-item .area-group li {
            list-style-type: none;
            padding: 0; }
          .footer-wrapper .footer-content-list-item .area-group-name {
            color: #fff;
            min-width: 80px; }
          .footer-wrapper .footer-content-list-item .area-group-item {
            display: inline-block;
            margin-right: 6px; }
  .footer-wrapper .footer-copyright {
    padding: 10px 0;
    display: flex;
    align-items: center;
    justify-content: space-between; }
    .footer-wrapper .footer-copyright .footer-copyright-txt {
      font-size: 11px;
      color: rgba(255, 255, 255, 0.7); }
    .footer-wrapper .footer-copyright.for_form {
      justify-content: center !important; }

.logo-footer a {
  background-image: url(../img/jtownnet-logo-wh.svg);
  opacity: .7;
  transition: .3s; }
  .logo-footer a:hover {
    opacity: 1; }

.logo-footer a {
  display: inline-block;
  vertical-align: middle;
  transition: .3s ease;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 142px;
  height: 40px;
  overflow: hidden;
  text-indent: -9999px; }

.content-wrapper .content-list_item.item-type-card, .content-wrapper .content-list_item.item-type-labo,
.content-wrapper_main .content-list_item.item-type-card,
.content-wrapper_main .content-list_item.item-type-labo,
.content-wrapper_onecol .content-list_item.item-type-card,
.content-wrapper_onecol .content-list_item.item-type-labo {
  margin-bottom: 30px; }
.content-wrapper .content-list_item.item-type-hybrid,
.content-wrapper_main .content-list_item.item-type-hybrid,
.content-wrapper_onecol .content-list_item.item-type-hybrid {
  margin-bottom: 20px; }
.content-wrapper .content-list_item[class*="item-type-thm"],
.content-wrapper_main .content-list_item[class*="item-type-thm"],
.content-wrapper_onecol .content-list_item[class*="item-type-thm"] {
  margin-bottom: 10px; }

.content-wrapper_aside .content-list_item {
  margin-bottom: 10px; }

.item-img {
  position: relative;
  padding: 0; }
  .item-img img {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; }
  .item-img .list_item-label {
    position: absolute;
    left: 0;
    bottom: 0;
    padding: 2px 4px;
    font-size: .75rem;
    color: white;
    background-color: #009869;
    z-index: 2; }
    .item-img .list_item-label:empty {
      display: none; }

.list_item-img {
  position: relative;
  overflow: hidden;
  width: 100%;
  background-color: #009869;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 1; }

.item-type-issue {
  position: relative;
  padding: 0; }
  .item-type-issue .list_item-img {
    width: 100%;
    height: 400px;
    z-index: 1; }
  .item-type-issue .issue-badge {
    position: absolute;
    top: 10px;
    left: 10px;
    width: 53px;
    height: 53px;
    background-image: url(../img/issue-badge.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: 2;
    overflow: hidden;
    text-indent: -9999px; }
  .item-type-issue .type-issue-title {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 2;
    width: 100%; }
    .item-type-issue .type-issue-title-txt {
      display: flex;
      padding: 40px 20px 20px;
      background: linear-gradient(to top, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0) 100%);
      color: white;
      font-size: 1.75rem;
      font-weight: bold; }

.tab-content-list-item {
  display: none; }
  .tab-content-list-item.selected {
    display: flex;
    flex-direction: row; }

.hot-keyword-container {
  margin: 20px 0; }
  .hot-keyword-container-ui {
    width: 1080px;
    margin: 0 auto;
    padding: 0 10px; }

.hot-keyword-list {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  align-items: center;
  justify-content: center; }
  .hot-keyword-list .hot-keyword-item {
    position: relative;
    display: inline-block;
    margin: 0 5px 10px;
    padding: 10px 12px;
    font-size: 14px;
    font-weight: bold;
    line-height: 1;
    color: #888888;
    border: 1px solid #ccc;
    background-color: transparent;
    border-radius: 4px;
    transition: .3s; }
    .hot-keyword-list .hot-keyword-item:hover {
      cursor: pointer;
      color: #009869;
      border: 1px solid #009869;
      background-color: #fff; }
    .hot-keyword-list .hot-keyword-item.selected {
      color: #009869;
      border: 1px solid #009869;
      background-color: #fff; }
      .hot-keyword-list .hot-keyword-item.selected:after {
        content: url(../img/keyword_fukidashi.svg);
        width: 16px;
        height: 10px;
        position: absolute;
        left: calc(50% - 8px);
        bottom: -6px; }

.hot-keyword-recent-container {
  background-color: #fff;
  margin: 10px 0;
  padding: 15px;
  border: 1px solid #009869; }

.item-type-card {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column; }
  .item-type-card .list_item-title {
    margin-top: 10px;
    transition: color .2s; }
    .item-type-card .list_item-title .list_item-title-txt {
      font-size: 0.9375rem;
      font-weight: bold; }
  .item-type-card .list_item-img {
    border-radius: 6px;
    height: 140px; }
  .item-type-card.col.l4 {
    width: 32%;
    margin-right: 2%; }
    .item-type-card.col.l4:nth-child(3n) {
      margin-right: 0; }

.item-type-labo {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column; }
  .item-type-labo .list_item-title {
    margin-top: 10px;
    transition: color .2s; }
    .item-type-labo .list_item-title .list_item-title-txt {
      font-size: 0.9375rem;
      font-weight: bold; }
  .item-type-labo .list_item-img {
    border-radius: 6px;
    height: 180px; }
  .item-type-labo.col.l3 {
    width: 250px;
    margin-right: 20px; }
    .item-type-labo.col.l3:nth-child(4n) {
      margin-right: 0; }

[class*="item-type-thm"] a,
.item-type-lead a {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  align-items: center; }
[class*="item-type-thm"] .list_item-title,
.item-type-lead .list_item-title {
  transition: color .2s; }
  [class*="item-type-thm"] .list_item-title .list_item-title-txt,
  .item-type-lead .list_item-title .list_item-title-txt {
    font-size: 0.875rem;
    font-weight: bold; }
  [class*="item-type-thm"] .list_item-title .list_item-title-txt-sub,
  .item-type-lead .list_item-title .list_item-title-txt-sub {
    font-size: 0.8125rem;
    line-height: 1.4; }
[class*="item-type-thm"] .list_item-info,
.item-type-lead .list_item-info {
  font-size: 0.8125rem;
  line-height: 1.4; }

.item-type-thm-l {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center; }
  .item-type-thm-l .list_item-img {
    width: 224px;
    height: 140px;
    border-radius: 6px;
    margin-right: 20px; }
  .item-type-thm-l .list_item-title {
    transition: color .2s; }
    .item-type-thm-l .list_item-title .list_item-title-txt {
      font-size: 1rem;
      font-weight: bold; }

.item-type-thm-m .list_item-img {
  width: 80px;
  height: 80px;
  border-radius: 6px;
  margin-right: 10px; }
@media all and (-ms-high-contrast: none) {
  .item-type-thm-m .list_item-txt-group {
    max-height: 60px;
    overflow: hidden; } }

.item-type-thm-ml .list_item-img {
  width: 128px;
  height: 80px;
  border-radius: 6px;
  margin-right: 10px; }

.item-type-thm-s .list_item-img {
  width: 60px;
  height: 60px;
  border-radius: 6px;
  margin-right: 10px; }

@media all and (-ms-high-contrast: none) {
  .item-type-lead .list_item-txt-group {
    line-height: 1.5;
    max-height: 60px;
    overflow: hidden; } }
.item-type-lead .list_item-img {
  width: 80px;
  height: 80px;
  margin-right: 10px; }

.list_item-txt-group {
  flex: 1; }
  .list_item-txt-group .info_time {
    margin-bottom: 6px;
    color: #888888;
    font-size: .75rem; }

@media all and (-ms-high-contrast: none) {
  .related-site-list .list_item-txt-group {
    max-height: 72px;
    overflow: hidden; } }

.item-type-hybrid .list_item-title {
  margin-top: 10px;
  transition: color .2s; }
  .item-type-hybrid .list_item-title .list_item-title-txt {
    font-size: 0.875rem;
    font-weight: bold; }
.item-type-hybrid .list_item-img {
  border-radius: 6px;
  height: 140px; }

.item-type-hybrid {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column; }

.item-type-hybrid.col.l4 {
  width: 32%;
  margin-right: 2%; }
  .item-type-hybrid.col.l4:nth-child(3n) {
    margin-right: 0; }

.item-type-hybrid.col.l3 {
  width: 24%;
  margin-right: 1.333%; }
  .item-type-hybrid.col.l3:nth-child(4n) {
    margin-right: 0; }

.content-list {
  margin: 1rem auto 0; }

.item-type-areatop {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-start;
  margin-bottom: 30px; }
  .item-type-areatop .issue-badge {
    position: absolute;
    top: -10px;
    left: -10px;
    width: 40px;
    height: 40px;
    background-image: url(../img/issue-badge.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: 2;
    overflow: hidden;
    text-indent: -9999px; }
  .item-type-areatop a {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row;
    align-items: center; }
  .item-type-areatop .list_item-title {
    transition: color .2s; }
    .item-type-areatop .list_item-title .list_item-title-txt {
      font-size: 1.5rem;
      font-weight: bold; }
  .item-type-areatop .list_item-img {
    width: 360px;
    height: 210px;
    border-radius: 12px;
    margin-right: 20px; }

.jtownrepo-list .col.l6 {
  width: 49%;
  margin-right: 2%; }
  .jtownrepo-list .col.l6:nth-child(2n) {
    margin-right: 0; }

.jtownwith-list-item {
  margin-bottom: 10px; }
  .jtownwith-list-item:last-child {
    margin-bottom: 20px; }

.ranking-list {
  counter-reset: ranking 0;
  overflow: hidden;
  line-height: 1;
  transition: height 200ms;
  position: relative;
  z-index: 1; }
  .ranking-list .content-list_item {
    line-height: 1.5; }
    @media all and (-ms-high-contrast: none) {
      .ranking-list .content-list_item .list_item-txt-group {
        max-height: 60px;
        overflow: hidden; } }
    .ranking-list .content-list_item .item-img:before {
      content: counter(ranking);
      counter-increment: ranking 1;
      position: absolute;
      left: 0;
      top: 0;
      width: 20px;
      height: 20px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 0.75rem;
      font-weight: bold;
      color: white;
      background-color: #009869;
      z-index: 2; }

.btn-wrap {
  display: flex;
  justify-content: center;
  margin: 0 auto; }

a.btn-viewmore {
  position: relative;
  z-index: 2;
  min-width: 140px;
  color: #009869;
  margin-top: 10px;
  padding: 10px 26px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  border: 1px solid #009869;
  border-radius: 4px;
  background: #fff;
  text-align: center;
  cursor: pointer;
  transition: .2s ease; }
  a.btn-viewmore:hover {
    background: #009869;
    color: #fff; }

.info_author {
  margin-top: 10px; }
  .info_author a {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-items: flex-start; }
    .info_author a .info_author-img {
      transition: .2s ease;
      background-color: rgba(0, 152, 105, 0); }
    .info_author a:hover .info_author-img {
      background-color: #009869; }
  .info_author-img {
    width: 22px;
    height: 22px;
    margin-right: 0.375rem;
    padding: 0;
    border-radius: 100%;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat; }
  .info_author-txt {
    position: relative;
    top: 0.15rem;
    font-size: 0.75rem;
    flex: 1; }

.section_author {
  padding: 30px;
  background-color: #fff; }
  .section_author_about {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-items: center;
    justify-content: space-between; }
    .section_author_about .author_info {
      display: flex;
      flex-wrap: wrap;
      flex-direction: row;
      align-items: center;
      flex: 1; }
    .section_author_about .author_img {
      width: 60px;
      height: 60px;
      margin-right: 10px;
      padding: 0;
      border-radius: 100%;
      overflow: hidden;
      background-image: url(../img/icon_avatar.svg);
      background-color: #ddd;
      background-position: center center;
      background-repeat: no-repeat;
      background-size: cover; }
    .section_author_about .author_name {
      flex: 1; }
      .section_author_about .author_name_txt {
        font-size: 1.25rem;
        font-weight: bold; }
    .section_author_about .author_sns-list {
      display: flex;
      flex-direction: row;
      font-size: 1rem; }
      .section_author_about .author_sns-list a.author_sns-item {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        margin-left: 8px;
        width: 36px;
        height: 36px;
        border-radius: 64px;
        transition: ease .3s; }
        .section_author_about .author_sns-list a.author_sns-item:first-of-type {
          margin-left: 0; }
        .section_author_about .author_sns-list a.author_sns-item.facebook {
          color: #fff;
          background-color: #355199; }
        .section_author_about .author_sns-list a.author_sns-item.twitter {
          color: #fff;
          background-color: #1DA1F2; }
        .section_author_about .author_sns-list a.author_sns-item:hover {
          opacity: .7; }
  .section_author_txt {
    margin-top: 20px; }
    .section_author_txt:empty {
      display: none; }
    .section_author_txt p {
      margin-bottom: 10px;
      color: #888888;
      font-size: 0.875rem; }
      .section_author_txt p:empty {
        display: none; }
      .section_author_txt p:last-of-type {
        margin-bottom: 0; }
      .section_author_txt p a {
        font-weight: bold;
        color: #009869;
        transition: ease .3s; }
        .section_author_txt p a:hover {
          color: #006244; }

.section_cover {
  position: relative;
  overflow: hidden;
  width: 100%;
  background-color: #009869;
  background-position: center center;
  background-repeat: no-repeat;
  height: 240px; }
  .section_cover img {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; }
  .section_cover:empty {
    height: 0;
    display: none; }

.section_listpage {
  margin: 2rem 0;
  padding: 0;
  border-bottom: 1px solid #009869; }
  .section_listpage_header {
    background-color: #fff;
    padding: 15px; }
    .section_listpage_header_top {
      display: flex;
      align-items: center;
      flex-direction: row;
      justify-content: space-between; }
    .section_listpage_header_about {
      font-size: .875rem; }
      .section_listpage_header_about p {
        color: #888888;
        margin-top: 1rem; }
        .section_listpage_header_about p:empty {
          display: none; }
    .section_listpage_header .section_listpage_title .section_listpage_title_txt {
      color: #009869;
      font-size: 1.24rem;
      font-weight: bold; }
  .section_listpage .section_listpage_list {
    margin: 1rem auto 0; }
    .section_listpage .section_listpage_list .section_listpage_list_item[class*="item-type-thm"] {
      margin-bottom: 1rem;
      padding-bottom: 1rem;
      border-bottom: 1px solid #ccc; }
      .section_listpage .section_listpage_list .section_listpage_list_item[class*="item-type-thm"]:last-of-type {
        padding-bottom: 0;
        border-bottom: none; }
    .section_listpage .section_listpage_list .section_listpage_list_item .list_item-txt-group {
      margin-right: 15px; }

.listpage_pagenation {
  font-size: 0;
  width: 100%;
  margin: 0;
  padding: 20px 5px;
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: center; }
  .listpage_pagenation ul, .listpage_pagenation li {
    list-style-type: none;
    margin: 0;
    padding: 0; }
  .listpage_pagenation .page-numbers {
    line-height: 1;
    text-align: center; }
    .listpage_pagenation .page-numbers .page-number-item {
      display: inline-block;
      vertical-align: middle;
      margin: 0 3px; }
      .listpage_pagenation .page-numbers .page-number-item.is-active a {
        background-color: #009869;
        border: 1px solid #009869;
        color: #fff; }
      .listpage_pagenation .page-numbers .page-number-item a, .listpage_pagenation .page-numbers .page-number-item span {
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 0.875rem;
        font-weight: bold;
        text-align: center;
        color: #009869;
        transition: .3s ease;
        border-radius: 4px;
        padding: 10px 0;
        width: 38px;
        height: 38px; }
      .listpage_pagenation .page-numbers .page-number-item a {
        cursor: pointer;
        border: 1px solid #009869;
        background-color: #fff; }
        .listpage_pagenation .page-numbers .page-number-item a:hover {
          background-color: #009869;
          border: 1px solid #009869;
          color: #fff; }

/* A Modern CSS Reset */
*, *::before, *::after {
  box-sizing: border-box;
  word-break: break-all; }

body, h1, h2, h3, h4, p, figure, blockquote, dl, dd {
  margin: 0;
  font-size: 100%;
  font-weight: normal;
  font-family: -apple-system, BlinkMacSystemFont, Segoe UI, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif; }
  @media all and (-ms-high-contrast: none) {
    body, h1, h2, h3, h4, p, figure, blockquote, dl, dd {
      font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", "ＭＳ Ｐゴシック"; } }

ul[role="list"], ol[role="list"] {
  list-style: none; }

body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
  word-wrap: break-word;
  overflow-wrap: break-word; }

a:not([class]) {
  text-decoration-skip-ink: auto; }

img, picture {
  flex-shrink: 0;
  max-width: 100%;
  display: block; }

input, button, textarea, select {
  font: inherit; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important; } }
.hot-keyword-drawer-out {
  height: 0px;
  width: 100%;
  background: #fff;
  overflow: hidden;
  position: relative;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out; }
  .hot-keyword-drawer-out .drawer {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: 50px 0 0;
    width: 100%;
    height: 460px;
    opacity: 0;
    transition: all 0.3s ease-in-out; }
  .hot-keyword-drawer-out ul, .hot-keyword-drawer-out li {
    margin: 0;
    padding: 0; }
  .hot-keyword-drawer-out > ul {
    height: 460px; }
  .hot-keyword-drawer-out.opencan {
    height: 460px; }
    .hot-keyword-drawer-out.opencan .drawer {
      opacity: 1; }

.drawer-out {
  height: 0px;
  width: 100%;
  background: #111;
  overflow: hidden;
  position: relative;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out; }
  .drawer-out .drawer {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 500px;
    opacity: 0;
    transition: all 0.3s ease-in-out; }
  .drawer-out ul, .drawer-out li {
    margin: 0;
    padding: 0; }
  .drawer-out > ul {
    height: 500px; }
  .drawer-out.opencan {
    height: 500px; }
    .drawer-out.opencan .drawer {
      opacity: 1;
      animation: out 0.75s ease forwards; }

@-webkit-keyframes out {
  0% {
    -webkit-transform: scale(0.9);
    transform: scale(0.9); }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1); } }
@-moz-keyframes out {
  0% {
    -moz-transform: scale(0.9); }
  100% {
    -moz-transform: scale(1); } }
@keyframes out {
  0% {
    -webkit-transform: scale(0.9);
    transform: scale(0.9); }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1); } }
.area-select-content-list-title {
  display: none; }

.area-select-wrapper {
  min-width: 1080px; }
  .area-select-wrapper .area-select-title {
    margin-bottom: 20px;
    font-size: 1.25rem;
    font-weight: bold;
    color: white;
    text-align: center; }
  .area-select-wrapper a {
    color: rgba(255, 255, 255, 0.7);
    transition: .2s; }
    .area-select-wrapper a:hover {
      color: white; }
    .area-select-wrapper a:visited {
      color: rgba(255, 255, 255, 0.7); }
  .area-select-wrapper .area-select-container {
    width: 1080px;
    margin: 0 auto;
    padding: 20px 10px; }
    .area-select-wrapper .area-select-container .row {
      flex-wrap: nowrap;
      align-items: center; }
  .area-select-wrapper .area-select-content .area-map-image {
    padding: 20px; }
    @media all and (-ms-high-contrast: none) {
      .area-select-wrapper .area-select-content .area-map-image {
        height: 400px; } }
  .area-select-wrapper .area-select-content-list {
    list-style-type: none;
    margin-bottom: 20px;
    line-height: 1;
    padding: 0; }
    .area-select-wrapper .area-select-content-list:last-of-type {
      margin-bottom: 0; }
    .area-select-wrapper .area-select-content-list-item:last-of-type {
      margin-bottom: 0; }
    .area-select-wrapper .area-select-content-list-item .area-group {
      display: flex;
      flex-wrap: nowrap;
      flex-direction: row;
      align-items: center;
      font-size: 0; }
      .area-select-wrapper .area-select-content-list-item .area-group ul, .area-select-wrapper .area-select-content-list-item .area-group li {
        list-style-type: none;
        display: flex;
        flex-direction: row;
        align-items: center; }
      .area-select-wrapper .area-select-content-list-item .area-group-name {
        color: #fff;
        font-size: 0.875rem;
        min-width: 72px; }
      .area-select-wrapper .area-select-content-list-item .area-group-item {
        display: inline-block;
        margin: 0 2px 2px 0; }
        .area-select-wrapper .area-select-content-list-item .area-group-item a {
          min-width: 60px;
          font-size: 0.875rem;
          line-height: 1;
          text-align: center;
          color: #ccc;
          background-color: #222;
          border: 1px solid #555;
          border-radius: 2px;
          padding: 8px;
          transition: .3s ease; }
          .area-select-wrapper .area-select-content-list-item .area-group-item a:hover {
            color: #fff;
            background-color: #009869;
            border: 1px solid #fff; }
        .area-select-wrapper .area-select-content-list-item .area-group-item.judge-myarea a {
          min-width: 184px; }
        .area-select-wrapper .area-select-content-list-item .area-group-item.selected a {
          color: #fff;
          background-color: #009869;
          border: 1px solid #fff; }

.selectbox-area-select {
  display: none; }

.btn-align-select {
  display: flex;
  justify-content: center;
  width: 100%;
  margin-top: 20px; }

button.btn-select {
  position: relative;
  z-index: 2;
  display: block;
  min-width: 240px;
  padding: 10px 26px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  color: #009869;
  background-color: #fff;
  border: 1px solid #009869;
  border-radius: 4px;
  transition: .3s ease; }

button.btn-select:hover {
  cursor: pointer;
  color: #fff;
  background-color: #009869; }

/*
body {
	color: #333;
	padding: 0 30px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 76%;
}
*/
.panel {
  clear: both;
  display: none;
  border: 3px solid #CCC;
  padding: 1em; }

.panel.active-tab-body {
  display: block; }

#tabs {
  list-style: none; }

#tabs li {
  float: left; }

#tabs a {
  float: left;
  padding: 5px 8px;
  margin-left: 6px;
  background-color: #F2F2F2;
  text-decoration: none;
  color: #999999; }

#tabs a.active-tab {
  background-color: #CCC;
  border-top: 3px solid #999;
  padding-top: 3px;
  color: #000; }

.validation-advice {
  display: flex;
  align-items: center;
  margin: 0;
  padding: 8px 12px !important;
  background-color: #ffeded;
  color: #ff1300;
  font-weight: bold; }

label[id*="error"] img,
label[class*="error"] img {
  display: none; }

p[id*="error"],
p[class*="error"] {
  margin: 0 !important; }

.custom-advice {
  margin: 5px 0;
  padding: 5px;
  background-color: #C8AA00;
  color: #FFF;
  font-weight: bold; }

fieldset {
  padding: 1em;
  margin-bottom: 0.5em; }

label {
  font-weight: bold; }

dd label {
  font-size: 0.875rem; }

.form-row {
  clear: both;
  padding: 0.5em; }

.aform-header {
  font-size: 1.125rem;
  font-weight: bold;
  margin: 2em 0;
  padding: 0 0 4px;
  border-bottom: 1px solid #111; }

.aform-hdln {
  font-size: 1.1rem;
  font-weight: bold;
  margin: 2em 0 1em;
  padding: 0 0 4px;
  border-bottom: 1px dotted #666; }

.aform-content ul,
.aform-content li,
.aform-content div,
.aform-content dl p {
  list-style: none;
  margin: 0;
  padding: 0; }

div.aform-content a {
  color: #009869;
  font-weight: bold;
  transition: ease .2s; }
  div.aform-content a:hover {
    opacity: .7; }

div.aform-content dl {
  margin-bottom: 1em;
  padding-bottom: 1em; }

div.aform-content dl dt {
  font-weight: bold;
  margin-bottom: 0.5em; }

div.aform-content input {
  width: 100%;
  font-size: 14px;
  padding: 8px;
  border: 1px solid #ccc; }
  div.aform-content input.error {
    border: 1px solid #ff1300 !important; }

div.aform-content input.aform-radio, div.aform-content input.aform-checkbox {
  width: initial; }
  @media all and (-ms-high-contrast: none) {
    div.aform-content input.aform-radio, div.aform-content input.aform-checkbox {
      width: auto; } }

div.aform-content input.disabled {
  border: 1px solid #F2F2F2;
  background-color: #F2F2F2; }

textarea {
  width: 100%;
  border: 1px solid #ccc; }
  textarea.error {
    border: 1px solid #ff1300 !important; }

div.aform-content input.validation-failed,
div.aform-content textarea.validation-failed {
  border: 1px solid #D92B00;
  color: #D92B00; }

div.aform-content input.validation-passed,
div.aform-content textarea.validation-passed {
  border: 1px solid #00CC00;
  color: #000; }

div.aform-content input.aform-checkbox,
div.aform-content input.aform-radio {
  margin-right: 5px;
  vertical-align: middle; }

div.aform-content input.aform-field-option-text {
  margin-left: 5px;
  vertical-align: middle; }

div.aform-content .aform-name-ul li,
div.aform-content .aform-kana-ul li {
  display: flex;
  flex-direction: column; }

div.aform-content input.aform-name,
div.aform-content input.aform-kana {
  margin-right: 5px; }

div.aform-content ul.aform-payment li {
  margin-bottom: 0.8em; }

div.aform-content ul.aform-payment .aform-payment-description {
  margin-left: 22px;
  margin-top: 3px; }

div.aform-content ul.aform-payment .aform-payment-description table th {
  font-weight: normal;
  padding: 2px 5px 2px 0;
  vertical-align: top;
  text-align: left; }

div.aform-content ul.aform-payment .aform-payment-description table td {
  padding: 2px 5px 2px 0; }

div.aform-content span.required {
  display: inline-block;
  color: #fff;
  margin-left: 8px;
  padding: 4px 4px;
  font-size: 11px;
  font-weight: bold;
  line-height: 1;
  background: #E34E42; }

div.aform-content .aform-input-example {
  color: #666 !important;
  font-size: 13px !important;
  margin-bottom: 0.5em !important; }

div.aform-content .aform-note {
  margin-bottom: 1em;
  padding: 5px 8px;
  background: #f3f3f3; }

div.aform-content .aform-twice-note {
  margin-top: 10px;
  display: block; }

div.aform-content input.require-twice {
  margin-top: 3px; }

dl.aform-error-list dt {
  font-size: 120%;
  padding-left: 16px;
  background: url(images/icons/warning_y.gif) 0 50% no-repeat; }

dl.aform-error-list dd {
  margin-left: 16px;
  display: list-item; }

p.aform-error {
  margin: 0 !important; }

div.aform-content .submit {
  margin-top: 20px;
  padding: 0;
  text-align: center; }

div.aform-content .submit input,
div.aform-content .aform-button-area input {
  display: block;
  max-width: 240px;
  margin: 0 15px;
  padding: 16px 26px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1; }
  @media screen and (max-width: 600px) {
    div.aform-content .submit input,
    div.aform-content .aform-button-area input {
      max-width: 80%; } }
  div.aform-content .submit input#aform_btn_back,
  div.aform-content .aform-button-area input#aform_btn_back {
    max-width: 180px;
    color: #009869;
    background-color: #fff;
    border: 1px solid #009869;
    border-radius: 6px;
    transition: ease .3s; }
    div.aform-content .submit input#aform_btn_back:hover,
    div.aform-content .aform-button-area input#aform_btn_back:hover {
      cursor: pointer;
      color: #fff;
      background-color: #009869; }
    @media screen and (max-width: 600px) {
      div.aform-content .submit input#aform_btn_back,
      div.aform-content .aform-button-area input#aform_btn_back {
        margin-bottom: 1rem;
        max-width: 80%; } }
  div.aform-content .submit input[id*="confirm"], div.aform-content .submit input#aform_btn_submit,
  div.aform-content .aform-button-area input[id*="confirm"],
  div.aform-content .aform-button-area input#aform_btn_submit {
    color: #fff;
    background-color: #009869;
    border: none;
    border-radius: 6px;
    transition: ease .3s; }
    div.aform-content .submit input[id*="confirm"]:hover, div.aform-content .submit input#aform_btn_submit:hover,
    div.aform-content .aform-button-area input[id*="confirm"]:hover,
    div.aform-content .aform-button-area input#aform_btn_submit:hover {
      cursor: pointer;
      background-color: #006244; }

.aform-button-area {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  margin-top: 2rem !important; }
  @media screen and (max-width: 600px) {
    .aform-button-area {
      flex-direction: column; } }

div.aform-content p.powerdby {
  text-align: right;
  font-size: 70%;
  margin: 1em 0; }

div.aform-content p.powerdby a {
  color: #fff;
  padding: 0 5px;
  background: #BAD7E4;
  text-decoration: none; }

div.aform-content p.powerdby a:hover {
  background: #75AECA; }

div.aform-content .aform-demo {
  text-align: center;
  margin: 2em 0;
  padding: 5px 10px;
  border: 1px solid #EE7BA0;
  background: #FDECF1; }

div.aform-content .aform-demo a {
  color: #903;
  font-weight: bold;
  margin: 0 5px; }

/* j-town 読者投稿フォーム */
ul.aform-name-ul {
  display: flex;
  flex-direction: column;
  padding: 0 !important; }

ul.aform-vertical-ul {
  display: flex;
  flex-direction: column; }
  ul.aform-vertical-ul li {
    display: flex;
    align-items: center; }

/*----------------------------------*/
#aform_result {
  color: #c00;
  font-weight: bold;
  font-size: 110%;
  margin: 15px auto;
  padding: 10px 15px; }

#aform_result a {
  margin: 0 1em; }

/*----------------------------------*/
select.aform-select, select.aform-prefecture, select.aform-calendar {
  padding: 8px;
  font-size: 14px;
  border: 1px solid #ccc; }
select.aform-calendar {
  margin-left: 12px; }
  select.aform-calendar:first-child {
    margin-left: 0; }
select.error {
  border: 1px solid #ff1300 !important; }

.aform-label.privacy {
  display: flex;
  flex-direction: row;
  align-items: center; }
  .aform-label.privacy img {
    display: inline-block; }

span.max-length {
  font-size: 13px;
  font-weight: normal;
  color: #666; }

.p-info-box {
  background-color: #e5e5e5;
  max-height: 300px;
  overflow-y: scroll;
  font-size: 14px; }
  .p-info-box ol {
    padding: 0 0 0 2rem; }
    .p-info-box ol li {
      margin-bottom: 10px;
      list-style: decimal; }

.aform-checkbox-ul {
  padding: 0; }

.aform {
  margin: 0 auto; }

#aform_result:empty {
  display: none; }

img.ui-datepicker-trigger {
  display: inline-block;
  padding: 12px;
  cursor: pointer; }

.ui-datepicker {
  background: white;
  padding: 12px;
  box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.25); }
  .ui-datepicker:empty {
    display: none; }
  .ui-datepicker td {
    text-align: right; }
    .ui-datepicker td a {
      padding: 4px; }
  .ui-datepicker .ui-icon {
    cursor: pointer; }

html.hc-nav-yscroll {
  overflow-y: scroll; }

body.hc-nav-open {
  overflow: visible;
  position: fixed;
  width: 100%;
  min-height: 100%; }

.hc-offcanvas-nav {
  visibility: hidden;
  display: none;
  position: fixed;
  top: 0;
  height: 100%;
  z-index: 9999;
  text-align: left; }
  .hc-offcanvas-nav.is-ios * {
    cursor: pointer !important; }
  .hc-offcanvas-nav .nav-container {
    position: fixed;
    z-index: 9998;
    top: 0;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    box-sizing: border-box;
    transition: transform 0.4s ease; }
  .hc-offcanvas-nav .nav-wrapper {
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    -ms-scroll-chaining: none;
    overscroll-behavior: none; }
  .hc-offcanvas-nav .nav-content {
    height: 100%; }
  .hc-offcanvas-nav .nav-wrapper-0 > .nav-content {
    overflow: scroll;
    overflow-x: visible;
    overflow-y: auto;
    box-sizing: border-box; }
  .hc-offcanvas-nav ul {
    list-style: none;
    margin: 0;
    padding: 0; }
  .hc-offcanvas-nav li {
    position: relative;
    display: block; }
    .hc-offcanvas-nav li.level-open > .nav-wrapper {
      visibility: visible; }
    .hc-offcanvas-nav li:not(.custom-content) a {
      position: relative;
      display: flex;
      align-content: center;
      box-sizing: border-box;
      cursor: pointer;
      text-decoration: none; }
      .hc-offcanvas-nav li:not(.custom-content) a[disabled] {
        cursor: not-allowed; }
      .hc-offcanvas-nav li:not(.custom-content) a:hover {
        text-decoration: none; }
  .hc-offcanvas-nav input[type="checkbox"] {
    display: none; }
  .hc-offcanvas-nav label {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 10;
    cursor: pointer; }
  .hc-offcanvas-nav .nav-item-wrapper {
    position: relative; }
  .hc-offcanvas-nav .nav-item-link {
    position: relative;
    display: block;
    box-sizing: border-box; }
  .hc-offcanvas-nav:not(.user-is-tabbing) .nav-close-button:focus, .hc-offcanvas-nav:not(.user-is-tabbing) .nav-item-wrapper a:focus {
    outline: none; }
  .hc-offcanvas-nav .nav-close:focus, .hc-offcanvas-nav .nav-next:focus, .hc-offcanvas-nav .nav-back:focus {
    z-index: 10; }
  .hc-offcanvas-nav.disable-body::after, .hc-offcanvas-nav .nav-wrapper::after {
    content: '';
    z-index: 9990;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    -ms-scroll-chaining: none;
    overscroll-behavior: none;
    visibility: hidden;
    opacity: 0;
    transition: visibility 0s ease 0.4s, opacity 0.4s ease; }
  .hc-offcanvas-nav.disable-body::after {
    position: fixed; }
  .hc-offcanvas-nav .nav-wrapper::after {
    position: absolute; }
  .hc-offcanvas-nav.disable-body.nav-open::after, .hc-offcanvas-nav .sub-level-open::after {
    visibility: visible;
    opacity: 1;
    transition-delay: 0.05s; }
  .hc-offcanvas-nav:not(.nav-open)::after {
    pointer-events: none; }
  .hc-offcanvas-nav.nav-levels-expand .nav-wrapper::after {
    display: none; }
  .hc-offcanvas-nav.nav-levels-expand .nav-wrapper.nav-wrapper-0 {
    max-height: 100vh; }
    .hc-offcanvas-nav.nav-levels-expand .nav-wrapper.nav-wrapper-0 > .nav-content {
      overflow: scroll;
      overflow-x: visible;
      overflow-y: auto;
      box-sizing: border-box;
      max-height: 100vh; }
  .hc-offcanvas-nav.nav-levels-expand ul .nav-wrapper {
    min-width: 0;
    max-height: 0;
    visibility: hidden;
    overflow: hidden;
    transition: height 0s ease 0.4s; }
  .hc-offcanvas-nav.nav-levels-expand .level-open > .nav-wrapper {
    max-height: none;
    overflow: visible;
    visibility: visible; }
  .hc-offcanvas-nav.nav-levels-overlap .nav-content {
    overflow: scroll;
    overflow-x: visible;
    overflow-y: auto;
    box-sizing: border-box;
    max-height: 100vh; }
  .hc-offcanvas-nav.nav-levels-overlap .nav-wrapper {
    max-height: 100vh; }
  .hc-offcanvas-nav.nav-levels-overlap ul .nav-wrapper {
    position: absolute;
    z-index: 9999;
    top: 0;
    height: 100%;
    visibility: hidden;
    transition: visibility 0s ease 0.4s, transform 0.4s ease; }
  .hc-offcanvas-nav.nav-levels-overlap ul li.nav-parent {
    position: static; }
  .hc-offcanvas-nav.nav-levels-overlap ul li.level-open > .nav-wrapper {
    visibility: visible;
    transform: translate3d(0, 0, 0);
    transition: transform 0.4s ease; }
  .hc-offcanvas-nav.nav-position-left {
    left: 0; }
    .hc-offcanvas-nav.nav-position-left .nav-container {
      left: 0; }
    .hc-offcanvas-nav.nav-position-left.nav-levels-overlap li .nav-wrapper {
      left: 0;
      transform: translate3d(-100%, 0, 0); }
  .hc-offcanvas-nav.nav-position-right {
    right: 0; }
    .hc-offcanvas-nav.nav-position-right .nav-container {
      right: 0; }
    .hc-offcanvas-nav.nav-position-right.nav-levels-overlap li .nav-wrapper {
      right: 0;
      transform: translate3d(100%, 0, 0); }
  .hc-offcanvas-nav.nav-position-top {
    top: 0; }
    .hc-offcanvas-nav.nav-position-top .nav-container {
      top: 0;
      width: 100%; }
    .hc-offcanvas-nav.nav-position-top.nav-levels-overlap li .nav-wrapper {
      left: 0;
      transform: translate3d(0, -100%, 0); }
  .hc-offcanvas-nav.nav-position-bottom {
    top: auto;
    bottom: 0; }
    .hc-offcanvas-nav.nav-position-bottom .nav-container {
      top: auto;
      bottom: 0;
      width: 100%; }
    .hc-offcanvas-nav.nav-position-bottom.nav-levels-overlap li .nav-wrapper {
      left: 0;
      transform: translate3d(0, 100%, 0); }
  .hc-offcanvas-nav.nav-open[class*='hc-nav-'] div.nav-container {
    transform: translate3d(0, 0, 0); }
  .hc-offcanvas-nav.rtl {
    text-align: right;
    direction: rtl; }

.cf::before {
  content: '';
  display: block;
  height: 0;
  overflow: hidden; }
.cf::after {
  content: '';
  display: block;
  height: 0;
  overflow: hidden;
  clear: both; }

#container {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  height: 100%;
  background: linear-gradient(-134deg, #517FA4 0%, #243949 100%);
  font-family: 'Raleway', sans-serif;
  text-align: center;
  color: #fffce1; }

.wrapper {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 20px; }

#main-nav {
  display: none; }

header {
  position: relative; }
  header .toggle {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    display: none;
    z-index: 9980;
    position: relative;
    cursor: pointer;
    color: #fff; }
    header .toggle span {
      width: 35px;
      top: 50%;
      transform: translateY(-50%);
      transform-origin: 50% 50%;
      display: block;
      position: absolute;
      left: 0;
      height: 4px;
      background: #182631;
      transition: all 0.25s ease; }
      header .toggle span::before, header .toggle span::after {
        display: block;
        position: absolute;
        left: 0;
        height: 4px;
        background: #182631;
        transition: all 0.25s ease; }
      header .toggle span::before, header .toggle span::after {
        content: '';
        width: 100%; }
      header .toggle span::before {
        top: -11px; }
      header .toggle span::after {
        bottom: -11px; }
    header .toggle.toggle-open span {
      background: rgba(0, 0, 0, 0);
      transform: rotate(45deg); }
      header .toggle.toggle-open span::before {
        transform: translate3d(0, 11px, 0); }
      header .toggle.toggle-open span::after {
        transform: rotate(-90deg) translate3d(11px, 0, 0); }
    header .toggle:hover span {
      background: #dab977; }
      header .toggle:hover span::before, header .toggle:hover span::after {
        background: #dab977; }
    header .toggle i {
      font-size: 10px;
      display: block;
      line-height: 10px;
      opacity: 0.7; }

.hc-offcanvas-nav .nav-wrapper-0 > .nav-content {
  padding-bottom: 41px; }
.hc-offcanvas-nav h2 ~ ul > li.search .nav-custom-content {
  padding-top: 0; }
.hc-offcanvas-nav.rtl .nav-item-link::before {
  margin-left: 15px;
  margin-right: 0 !important; }
.hc-offcanvas-nav.rtl .nav-item.collections > .nav-item-wrapper .nav-item-link span {
  float: left; }
.hc-offcanvas-nav li .custom-message {
  font-size: 12px; }
  .hc-offcanvas-nav li .custom-message a {
    color: #fff;
    font-size: 13px; }
    .hc-offcanvas-nav li .custom-message a:hover {
      text-decoration: none; }
.hc-offcanvas-nav li.add > .nav-item-wrapper a::before {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  line-height: 1;
  text-transform: none;
  text-indent: 0;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  display: inline-block;
  width: 19px;
  height: 19px;
  margin-right: 15px;
  font-size: 23px;
  vertical-align: top;
  speak: never;
  content: "add"; }
.hc-offcanvas-nav li .nav-item-wrapper .nav-item-link::before {
  opacity: .35; }
.hc-offcanvas-nav li.new > .nav-item-wrapper .nav-item-link::before {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  line-height: 1;
  text-transform: none;
  text-indent: 0;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  display: inline-block;
  width: 19px;
  height: 19px;
  margin-right: 15px;
  font-size: 23px;
  vertical-align: top;
  speak: never;
  content: "fiber_new"; }
.hc-offcanvas-nav li.nav-labo > .nav-item-wrapper .nav-item-link::before {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  line-height: 1;
  text-transform: none;
  text-indent: 0;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  display: inline-block;
  width: 19px;
  height: 19px;
  margin-right: 15px;
  font-size: 23px;
  vertical-align: top;
  speak: never;
  content: "poll"; }
.hc-offcanvas-nav li.nav-localy-issue > .nav-item-wrapper .nav-item-link::before {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  line-height: 1;
  text-transform: none;
  text-indent: 0;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  display: inline-block;
  width: 19px;
  height: 19px;
  margin-right: 15px;
  font-size: 23px;
  vertical-align: top;
  speak: never;
  content: "map"; }
.hc-offcanvas-nav li.nav-funny > .nav-item-wrapper .nav-item-link::before {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  line-height: 1;
  text-transform: none;
  text-indent: 0;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  display: inline-block;
  width: 19px;
  height: 19px;
  margin-right: 15px;
  font-size: 23px;
  vertical-align: top;
  speak: never;
  content: "emoji_emotions"; }
.hc-offcanvas-nav li.nav-try > .nav-item-wrapper .nav-item-link::before {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  line-height: 1;
  text-transform: none;
  text-indent: 0;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  display: inline-block;
  width: 19px;
  height: 19px;
  margin-right: 15px;
  font-size: 23px;
  vertical-align: top;
  speak: never;
  content: "topic"; }
.hc-offcanvas-nav li.nav-edit > .nav-item-wrapper .nav-item-link::before {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  line-height: 1;
  text-transform: none;
  text-indent: 0;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  display: inline-block;
  width: 19px;
  height: 19px;
  margin-right: 15px;
  font-size: 23px;
  vertical-align: top;
  speak: never;
  content: "edit"; }
.hc-offcanvas-nav li.train > .nav-item-wrapper .nav-item-link::before {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  line-height: 1;
  text-transform: none;
  text-indent: 0;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  display: inline-block;
  width: 19px;
  height: 19px;
  margin-right: 15px;
  font-size: 23px;
  vertical-align: top;
  speak: never;
  content: "train"; }
.hc-offcanvas-nav li.magazines > .nav-item-wrapper .nav-item-link::before {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  line-height: 1;
  text-transform: none;
  text-indent: 0;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  display: inline-block;
  width: 19px;
  height: 19px;
  margin-right: 15px;
  font-size: 23px;
  vertical-align: top;
  speak: never;
  content: "import_contacts"; }
.hc-offcanvas-nav li.nav-animals > .nav-item-wrapper .nav-item-link::before {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  line-height: 1;
  text-transform: none;
  text-indent: 0;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  display: inline-block;
  width: 19px;
  height: 19px;
  margin-right: 15px;
  font-size: 23px;
  vertical-align: top;
  speak: never;
  content: "pets"; }
.hc-offcanvas-nav li > .nav-item-wrapper .nav-item-link span {
  font-size: 70%;
  line-height: 15px;
  height: 15px;
  padding: 0 4px;
  margin-left: auto;
  background: #BE0000;
  border-radius: 24px;
  margin-top: 2px; }
.hc-offcanvas-nav li.collections > .nav-item-wrapper .nav-item-link::before {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  line-height: 1;
  text-transform: none;
  text-indent: 0;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  display: inline-block;
  width: 19px;
  height: 19px;
  margin-right: 15px;
  font-size: 23px;
  vertical-align: top;
  speak: never;
  content: "collections"; }
.hc-offcanvas-nav li.nolink > .nav-item-wrapper .nav-item-link::before {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  line-height: 1;
  text-transform: none;
  text-indent: 0;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  display: inline-block;
  width: 19px;
  height: 19px;
  margin-right: 15px;
  font-size: 23px;
  vertical-align: top;
  speak: never;
  content: "format_clear"; }
.hc-offcanvas-nav li.disabled > .nav-item-wrapper .nav-item-link::before {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  line-height: 1;
  text-transform: none;
  text-indent: 0;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  display: inline-block;
  width: 19px;
  height: 19px;
  margin-right: 15px;
  font-size: 23px;
  vertical-align: top;
  speak: never;
  content: "block"; }
.hc-offcanvas-nav.nav-position-top ul.bottom-nav, .hc-offcanvas-nav.nav-position-bottom ul.bottom-nav {
  position: relative;
  border-top: none; }
.hc-offcanvas-nav.nav-position-top .nav-wrapper-0 > .nav-content, .hc-offcanvas-nav.nav-position-bottom .nav-wrapper-0 > .nav-content {
  padding-bottom: 0; }
.hc-offcanvas-nav ul.bottom-nav {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10;
  width: 100%;
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  border-top: 1px solid rgba(0, 0, 0, 0.15); }
  .hc-offcanvas-nav ul.bottom-nav li {
    flex: auto; }
    .hc-offcanvas-nav ul.bottom-nav li a {
      padding: 10px;
      text-align: center;
      height: 100%;
      border-bottom: none; }
    .hc-offcanvas-nav ul.bottom-nav li svg {
      fill: #fff;
      display: inline-block;
      vertical-align: middle; }
    .hc-offcanvas-nav ul.bottom-nav li.github svg {
      width: 17px;
      height: 17px; }
    .hc-offcanvas-nav ul.bottom-nav li.ko-fi svg {
      width: 21px;
      height: 21px; }
    .hc-offcanvas-nav ul.bottom-nav li.email svg {
      width: 19px;
      height: 19px; }

body.theme-default .hc-offcanvas-nav .second-nav {
  border-bottom: none !important; }

html.hc-nav-yscroll {
  overflow-y: scroll; }

.hc-offcanvas-nav::after, .hc-offcanvas-nav .nav-wrapper::after {
  background: rgba(0, 0, 0, 0.5); }
.hc-offcanvas-nav .nav-container, .hc-offcanvas-nav .nav-wrapper, .hc-offcanvas-nav ul {
  background: #006244; }
.hc-offcanvas-nav .nav-content > h2, .hc-offcanvas-nav .nav-content > h3, .hc-offcanvas-nav .nav-content > h4, .hc-offcanvas-nav .nav-content > h5, .hc-offcanvas-nav .nav-content > h6 {
  font-size: 19px;
  font-weight: normal;
  padding: 22px 16px;
  color: rgba(255, 255, 255, 0.5); }
.hc-offcanvas-nav .nav-content > h2:not(.nav-title):not(.level-title), .hc-offcanvas-nav .nav-content > h3:not(.nav-title):not(.level-title), .hc-offcanvas-nav .nav-content > h4:not(.nav-title):not(.level-title), .hc-offcanvas-nav .nav-content > h5:not(.nav-title):not(.level-title), .hc-offcanvas-nav .nav-content > h6:not(.nav-title):not(.level-title) {
  font-size: 12px;
  padding: 24px 17px 10px 17px;
  background: #006244; }
.hc-offcanvas-nav .nav-item-link, .hc-offcanvas-nav li.nav-close a, .hc-offcanvas-nav .nav-back a {
  padding: 12px 16px 12px 20px;
  font-size: 14px;
  color: #fff;
  z-index: 1;
  background: rgba(0, 0, 0, 0);
  border-bottom: 1px solid #005035;
  transition: background 0.1s ease; }

.first-nav .nav-item-link {
  font-weight: bold; }

.hc-offcanvas-nav .nav-item-link:focus, .hc-offcanvas-nav .nav-item-link:focus-within {
  z-index: 10; }
.hc-offcanvas-nav li.nav-close a:focus, .hc-offcanvas-nav li.nav-close a:focus-within {
  z-index: 10; }
.hc-offcanvas-nav .nav-back a:focus, .hc-offcanvas-nav .nav-back a:focus-within {
  z-index: 10; }
.hc-offcanvas-nav .nav-item-link[disabled], .hc-offcanvas-nav li.nav-close a[disabled], .hc-offcanvas-nav .nav-back a[disabled] {
  color: rgba(255, 255, 255, 0.5); }
.hc-offcanvas-nav div.nav-back + ul > li:first-child > .nav-item-wrapper > .nav-item-link {
  border-top: none !important; }
.hc-offcanvas-nav:not(.touch-device) li:not(.nav-item-custom) a:not([disabled]):hover {
  background: #005035; }
.hc-offcanvas-nav .nav-custom-content {
  padding: 14px 17px;
  font-size: 14px;
  border-bottom: 1px solid #005035; }
.hc-offcanvas-nav .nav-highlight {
  background: #005035; }
.hc-offcanvas-nav .nav-wrapper > .nav-content > ul:first-of-type > li:first-child:not(.nav-back):not(.nav-close) > .nav-item-wrapper > .nav-item-link {
  border-top: 1px solid #005035; }
  .hc-offcanvas-nav .nav-wrapper > .nav-content > ul:first-of-type > li:first-child:not(.nav-back):not(.nav-close) > .nav-item-wrapper > .nav-item-link + a {
    border-top: 1px solid #005035; }
.hc-offcanvas-nav .nav-wrapper > .nav-content > ul + h2, .hc-offcanvas-nav .nav-wrapper > .nav-content > ul + h3, .hc-offcanvas-nav .nav-wrapper > .nav-content > ul + h4, .hc-offcanvas-nav .nav-wrapper > .nav-content > ul + h5, .hc-offcanvas-nav .nav-wrapper > .nav-content > ul + h6 {
  margin-top: -2px; }
.hc-offcanvas-nav .nav-wrapper > .nav-content > h2 + ul > li:first-child:not(.nav-back):not(.nav-close) > .nav-item-wrapper > .nav-item-link, .hc-offcanvas-nav .nav-wrapper > .nav-content > h3 + ul > li:first-child:not(.nav-back):not(.nav-close) > .nav-item-wrapper > .nav-item-link, .hc-offcanvas-nav .nav-wrapper > .nav-content > h4 + ul > li:first-child:not(.nav-back):not(.nav-close) > .nav-item-wrapper > .nav-item-link, .hc-offcanvas-nav .nav-wrapper > .nav-content > h5 + ul > li:first-child:not(.nav-back):not(.nav-close) > .nav-item-wrapper > .nav-item-link, .hc-offcanvas-nav .nav-wrapper > .nav-content > h6 + ul > li:first-child:not(.nav-back):not(.nav-close) > .nav-item-wrapper > .nav-item-link {
  border-top: 1px solid #005035; }
.hc-offcanvas-nav .nav-wrapper > .nav-content > .nav-title + h2, .hc-offcanvas-nav .nav-wrapper > .nav-content > .nav-title + h3, .hc-offcanvas-nav .nav-wrapper > .nav-content > .nav-title + h4, .hc-offcanvas-nav .nav-wrapper > .nav-content > .nav-title + h5, .hc-offcanvas-nav .nav-wrapper > .nav-content > .nav-title + h6 {
  border-top: 1px solid #005035; }
.hc-offcanvas-nav .nav-wrapper > .nav-content > .level-title + h2, .hc-offcanvas-nav .nav-wrapper > .nav-content > .level-title + h3, .hc-offcanvas-nav .nav-wrapper > .nav-content > .level-title + h4, .hc-offcanvas-nav .nav-wrapper > .nav-content > .level-title + h5, .hc-offcanvas-nav .nav-wrapper > .nav-content > .level-title + h6 {
  border-top: 1px solid #005035; }
.hc-offcanvas-nav .nav-wrapper > .nav-content > .nav-close + h2, .hc-offcanvas-nav .nav-wrapper > .nav-content > .nav-close + h3, .hc-offcanvas-nav .nav-wrapper > .nav-content > .nav-close + h4, .hc-offcanvas-nav .nav-wrapper > .nav-content > .nav-close + h5, .hc-offcanvas-nav .nav-wrapper > .nav-content > .nav-close + h6 {
  border-top: 1px solid #005035; }
.hc-offcanvas-nav li {
  color: #fff; }
  .hc-offcanvas-nav li.nav-parent .nav-item-link:last-child {
    padding-right: 58px; }
  .hc-offcanvas-nav li.nav-parent .nav-item-link:not(:last-child) {
    margin-right: 45px; }
.hc-offcanvas-nav .nav-close-button span, .hc-offcanvas-nav .nav-parent .nav-next, .hc-offcanvas-nav .nav-back span {
  width: 72px;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  text-align: center;
  cursor: pointer;
  transition: background .1s ease; }
.hc-offcanvas-nav .nav-close-button {
  position: relative;
  display: block; }
  .hc-offcanvas-nav .nav-close-button span::before, .hc-offcanvas-nav .nav-close-button span::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 12px;
    height: 12px;
    margin-top: -4px;
    border-top: 2px solid #009869;
    border-left: 2px solid #009869; }
  .hc-offcanvas-nav .nav-close-button span::before {
    margin-left: -14px;
    transform: rotate(135deg); }
  .hc-offcanvas-nav .nav-close-button span::after {
    transform: rotate(-45deg); }
.hc-offcanvas-nav .nav-content > .nav-close {
  position: relative;
  z-index: 2; }
  .hc-offcanvas-nav .nav-content > .nav-close a {
    font-size: 14px;
    color: #fff;
    background: rgba(0, 0, 0, 0);
    z-index: 1;
    text-decoration: none;
    box-sizing: border-box; }
    .hc-offcanvas-nav .nav-content > .nav-close a:not(.has-label) {
      height: 50px; }
    .hc-offcanvas-nav .nav-content > .nav-close a.has-label {
      padding: 14px 17px;
      border-top: 1px solid #005035; }
    .hc-offcanvas-nav .nav-content > .nav-close a:hover {
      border: none;
      background: radial-gradient(farthest-corner at top right, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0)); }
  .hc-offcanvas-nav .nav-content > .nav-close.has-label + ul {
    margin-top: -1px; }
.hc-offcanvas-nav:not(.nav-close-button-empty) .nav-content > .nav-close {
  margin-bottom: -1px; }
.hc-offcanvas-nav .nav-title + .nav-close a:not(.has-label) {
  position: absolute;
  width: 72px;
  height: 72px;
  /* line-height: 56px; */
  top: -72px; }
.hc-offcanvas-nav li.nav-close a:not(.has-label) {
  height: 49px; }
.hc-offcanvas-nav .nav-content > .nav-close:first-child a, .hc-offcanvas-nav .nav-title + .nav-close a.has-label, .hc-offcanvas-nav li.nav-close a, .hc-offcanvas-nav .nav-back a {
  /* background: #006244; */
  border-top: 1px solid #005035;
  /* border-bottom: 1px solid #005035 */ }
.hc-offcanvas-nav .nav-content > .nav-close:first-child a:hover, .hc-offcanvas-nav .nav-title + .nav-close a.has-label:hover, .hc-offcanvas-nav li.nav-close a:hover, .hc-offcanvas-nav .nav-back a:hover {
  background: #006244; }
.hc-offcanvas-nav li.nav-close:not(:first-child) a, .hc-offcanvas-nav li.nav-back:not(:first-child) a {
  margin-top: -1px; }
.hc-offcanvas-nav a.nav-next {
  border-left: 1px solid #005035;
  border-bottom: 1px solid #005035; }
.hc-offcanvas-nav .nav-next span::before, .hc-offcanvas-nav .nav-back span::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 8px;
  height: 8px;
  margin-left: -2px;
  box-sizing: border-box;
  border-top: 2px solid #fff;
  border-left: 2px solid #fff;
  transform-origin: center; }
.hc-offcanvas-nav .nav-next span {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0; }
  .hc-offcanvas-nav .nav-next span::before {
    transform: translate(-50%, -50%) rotate(135deg); }
.hc-offcanvas-nav .nav-back span::before {
  margin-left: 2px;
  transform: translate(-50%, -50%) rotate(-45deg); }
.hc-offcanvas-nav.nav-position-left.nav-open.nav-levels-overlap .nav-wrapper {
  box-shadow: 1px 0 2px rgba(0, 0, 0, 0.2); }
.hc-offcanvas-nav.nav-position-right.nav-open.nav-levels-overlap .nav-wrapper {
  box-shadow: -1px 0 2px rgba(0, 0, 0, 0.2); }
.hc-offcanvas-nav.nav-position-right .nav-next span::before {
  margin-left: 2px;
  transform: translate(-50%, -50%) rotate(-45deg); }
.hc-offcanvas-nav.nav-position-right .nav-back span::before {
  margin-left: -2px;
  transform: translate(-50%, -50%) rotate(135deg); }
.hc-offcanvas-nav.nav-position-top.nav-open .nav-wrapper {
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2); }
.hc-offcanvas-nav.nav-position-top .nav-next span::before {
  margin-left: 0;
  margin-right: -2px;
  transform: translate(-50%, -50%) rotate(-135deg); }
.hc-offcanvas-nav.nav-position-top .nav-back span::before {
  margin-left: 0;
  margin-right: -2px;
  transform: translate(-50%, -50%) rotate(45deg); }
.hc-offcanvas-nav.nav-position-bottom.nav-open .nav-wrapper {
  box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2); }
.hc-offcanvas-nav.nav-position-bottom .nav-next span::before {
  margin-left: 0;
  margin-right: -2px;
  transform: translate(-50%, -50%) rotate(45deg); }
.hc-offcanvas-nav.nav-position-bottom .nav-back span::before {
  margin-left: 0;
  margin-right: -2px;
  transform: translate(-50%, -50%) rotate(-135deg); }
.hc-offcanvas-nav.nav-levels-expand ul .nav-wrapper, .hc-offcanvas-nav.nav-levels-none ul .nav-wrapper {
  box-shadow: none;
  background: transparent; }
.hc-offcanvas-nav.nav-levels-expand li.level-open, .hc-offcanvas-nav.nav-levels-none li.level-open {
  background: #2e6296; }
.hc-offcanvas-nav.nav-levels-expand li.level-open > .nav-item-wrapper > a, .hc-offcanvas-nav.nav-levels-none li.level-open > .nav-item-wrapper > a {
  border-bottom: 1px solid #295887; }
.hc-offcanvas-nav.nav-levels-expand li.level-open > .nav-item-wrapper > a:hover, .hc-offcanvas-nav.nav-levels-none li.level-open > .nav-item-wrapper > a:hover {
  background: #2f649a; }
.hc-offcanvas-nav.nav-levels-expand li.level-open > .nav-item-wrapper > .nav-next span::before, .hc-offcanvas-nav.nav-levels-expand li.level-open > .nav-item-wrapper > a > .nav-next span::before {
  margin-top: -2px;
  transform: translate(-50%, -50%) rotate(-135deg); }
.hc-offcanvas-nav.nav-levels-none li.level-open > .nav-item-wrapper > .nav-next span::before, .hc-offcanvas-nav.nav-levels-none li.level-open > .nav-item-wrapper > a > .nav-next span::before {
  margin-top: -2px;
  transform: translate(-50%, -50%) rotate(-135deg); }
.hc-offcanvas-nav.nav-levels-expand .nav-wrapper-1 .nav-item-link, .hc-offcanvas-nav.nav-levels-none .nav-wrapper-1 .nav-item-link {
  padding-left: calc(17px + 20px * 1); }
.hc-offcanvas-nav.nav-levels-expand .nav-wrapper-2 .nav-item-link, .hc-offcanvas-nav.nav-levels-none .nav-wrapper-2 .nav-item-link {
  padding-left: calc(17px + 20px * 2); }
.hc-offcanvas-nav.nav-levels-expand .nav-wrapper-3 .nav-item-link, .hc-offcanvas-nav.nav-levels-none .nav-wrapper-3 .nav-item-link {
  padding-left: calc(17px + 20px * 3); }
.hc-offcanvas-nav.nav-levels-expand .nav-wrapper-4 .nav-item-link, .hc-offcanvas-nav.nav-levels-none .nav-wrapper-4 .nav-item-link {
  padding-left: calc(17px + 20px * 4); }
.hc-offcanvas-nav.nav-levels-expand .nav-wrapper-5 .nav-item-link, .hc-offcanvas-nav.nav-levels-none .nav-wrapper-5 .nav-item-link {
  padding-left: calc(17px + 20px * 5); }
.hc-offcanvas-nav.rtl a.nav-next {
  border-left: none;
  border-right: 1px solid #005035; }
.hc-offcanvas-nav.rtl .nav-title + .nav-close a:not(.has-label), .hc-offcanvas-nav.rtl .nav-close-button span, .hc-offcanvas-nav.rtl .nav-next, .hc-offcanvas-nav.rtl .nav-back span {
  left: 0;
  right: auto; }
.hc-offcanvas-nav.rtl li.nav-parent .nav-item-link:last-child {
  padding-left: 58px;
  padding-right: 17px; }
.hc-offcanvas-nav.rtl li.nav-parent .nav-item-link:not(:last-child) {
  margin-left: 45px;
  margin-right: 0; }
.hc-offcanvas-nav.rtl .nav-wrapper-1 li.nav-item .nav-item-link {
  padding-right: calc(17px + 20px * 1); }
.hc-offcanvas-nav.rtl .nav-wrapper-2 li.nav-item .nav-item-link {
  padding-right: calc(17px + 20px * 2); }
.hc-offcanvas-nav.rtl .nav-wrapper-3 li.nav-item .nav-item-link {
  padding-right: calc(17px + 20px * 3); }
.hc-offcanvas-nav.rtl .nav-wrapper-4 li.nav-item .nav-item-link {
  padding-right: calc(17px + 20px * 4); }
.hc-offcanvas-nav.rtl .nav-wrapper-5 li.nav-item .nav-item-link {
  padding-right: calc(17px + 20px * 5); }

i[class^="icon-"] {
  opacity: .5;
  font-size: 21px;
  margin-right: 15px; }

/* .hc-offcanvas-nav .nav-wrapper>.nav-content>ul:not(:last-child) {
    border-bottom: 2px solid #005035
} */
/* .hc-offcanvas-nav.nav-close-button-empty .nav-title {
    padding-right: 55px
} */
/* 2020.9.7 fukui collabo */
.gogo-fukui {
  position: fixed;
  bottom: 10px;
  right: 10px;
  z-index: 9; }

.gogo-fukui a {
  display: block;
  width: 120px;
  height: 120px;
  background: url("../img/feature/icon-page-top-fukui.png") 0 0 no-repeat;
  background-size: cover; }

.gogo-fukui span {
  display: none; }

/* Jタウンん研究所 */
.full-wrapper.is-bg-labo:nth-child(even) {
  background-color: #fff; }

/* 共通 */
.is-sm {
  font-size: 76%; }

.is-bold {
  font-weight: 700 !important; }

.is-orange {
  color: #F0841A; }

/* PC */
.is-pc-disp {
  display: block; }

.is-sp-disp {
  display: none; }

/** メイン画像 **/
.main-image {
  display: flex;
  width: 100%;
  position: relative;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  z-index: 1; }
  .main-image:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.25), rgba(0, 0, 0, 0.25));
    z-index: 2; }
  .main-image:after {
    position: absolute;
    display: block;
    content: "";
    font-size: 10px;
    right: 0;
    bottom: 0;
    color: white;
    padding: 4px 10px;
    background-color: black;
    z-index: 2; }
  .main-image .ft-container {
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 900px;
    margin: auto;
    z-index: 3; }
    .main-image .ft-container .main-copy {
      font-family: serif;
      font-size: 32px;
      color: #fff; }
      .main-image .ft-container .main-copy img {
        width: calc(100% - 30px);
        max-width: 340px;
        margin: 0 auto; }

.ft-content-wrapper ul, li {
  margin: 0;
  padding: 0; }

.ft-header {
  width: 100%;
  z-index: 2;
  position: absolute;
  top: 0; }
  .ft-header .ft-container {
    width: calc(100% - 32px);
    margin: auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1em 0; }
  .ft-header .logo a {
    display: inline-flex;
    align-items: center; }
    .ft-header .logo a img {
      width: 171px;
      height: 48px; }
  .ft-header_nav_dropdown {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.2);
    cursor: pointer; }

/** 自治体ロゴ帯 **/
.site-logo {
  background-color: #fff;
  padding: 20px 20px 12px; }

.site-logo .ft-container {
  display: flex;
  align-items: center;
  justify-content: center; }

/** レイアウト **/
.ft-section {
  margin: 0 auto 4rem;
  padding: 0;
  width: inherit;
  display: flex;
  flex-direction: column;
  justify-content: center; }
  .ft-section a, .ft-section a:visited {
    color: initial !important;
    text-decoration: none;
    outline: none; }
  .ft-section.is-mb-1 {
    margin-bottom: 1rem; }
  .ft-section.is-mt-2 {
    margin-top: 2rem; }

/** お知らせ **/
.ft-news-box {
  background: #fff;
  padding: 20px 15px; }
  .ft-news-box .ft-news-list {
    width: 100%;
    max-width: 1080px;
    margin: 0 auto;
    padding: 0 10px;
    list-style: none; }
    .ft-news-box .ft-news-list .ft-news-item {
      font-size: 14px;
      line-height: 1; }
      .ft-news-box .ft-news-list .ft-news-item a {
        display: flex;
        flex-wrap: nowrap;
        flex-direction: row;
        background-color: #F5F5F5;
        width: 100%;
        margin: 0 auto 2px;
        padding: 8px 12px;
        border-radius: 8px;
        transition: ease .3s; }
        .ft-news-box .ft-news-list .ft-news-item a:hover {
          color: black;
          background-color: #ddd; }
      .ft-news-box .ft-news-list .ft-news-item-date {
        min-width: 120px;
        margin-right: 16px; }
      .ft-news-box .ft-news-list .ft-news-item-title {
        line-height: 1.4; }

/** 見出し **/
.ft-title {
  font-size: 24px;
  text-align: center;
  margin: 32px auto;
  padding: 0; }

.ft-title-sub {
  font-size: 13px; }

/** アイテムリスト 特大タイプ **/
ul.ft-l-list {
  list-style: none; }
  ul.ft-l-list .ft-item {
    margin-bottom: 40px; }
    ul.ft-l-list .ft-item a {
      font-size: 16px;
      display: flex;
      flex-wrap: wrap;
      flex-direction: row;
      transition: .3s; }
      ul.ft-l-list .ft-item a:hover {
        opacity: 0.7; }
    ul.ft-l-list .ft-item-img {
      background-color: #ddd;
      background-size: cover;
      background-position: 50% 50%;
      width: 370px;
      height: 270px;
      border-radius: 8px;
      box-shadow: 4px 8px 12px rgba(0, 0, 0, 0.3); }
    ul.ft-l-list .ft-item-info {
      flex: 1;
      margin-left: 30px; }
      ul.ft-l-list .ft-item-info-time {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-bottom: 10px; }
        ul.ft-l-list .ft-item-info-time-number {
          color: #fff;
          background: #F0841A; }
        ul.ft-l-list .ft-item-info-time-date {
          font-size: 13px;
          color: #777; }
      ul.ft-l-list .ft-item-info-txt-title {
        font-size: 24px;
        font-weight: bold;
        margin-bottom: 20px;
        padding-bottom: 10px;
        border-bottom: 1px solid; }
      ul.ft-l-list .ft-item-info-txt-about {
        font-size: 14px;
        color: #444;
        margin-bottom: 20px; }
      ul.ft-l-list .ft-item-info-txt-more {
        font-weight: 700;
        text-align: right; }

/** アイテムリスト カバータイプ **/
ul.ft-cover-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 10px; }

.ft-cover-item {
  display: flex;
  background: transparent;
  background-position: 50% 50%;
  background-size: 100%;
  background-repeat: no-repeat;
  color: white;
  width: 32.5%;
  height: 180px;
  margin: 0 0 12px;
  border-radius: 8px;
  overflow: hidden;
  transition: all .3s;
  z-index: 1; }
  .ft-cover-item a {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end; }
    .ft-cover-item a .ft-cover-item_title {
      position: relative;
      font-size: 18px;
      color: #fff;
      line-height: 1.4em;
      text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.5);
      padding: 12px;
      z-index: 2; }
    .ft-cover-item a:before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: -webkit-linear-gradient(rgba(0, 0, 0, 0.1) 30%, rgba(0, 0, 0, 0.9) 100%);
      background: -o-linear-gradient(rgba(0, 0, 0, 0.1) 30%, rgba(0, 0, 0, 0.9) 100%);
      background: linear-gradient(rgba(0, 0, 0, 0.1) 30%, rgba(0, 0, 0, 0.9) 100%);
      z-index: 2;
      opacity: .7;
      transition: all .3s; }
  .ft-cover-item:hover {
    background-size: 105%; }
    .ft-cover-item:hover a:before {
      opacity: 1; }

.ft-cover-item:only-child {
  width: 100%;
  height: 240px; }

.ft-cover-item:first-child:nth-last-child(3n+1) {
  width: 100%; }

.ft-cover-item:first-child:nth-last-child(3n+1) ~ .ft-cover-item {
  width: 32.5%; }

.ft-cover-item:first-child:nth-last-child(3n+2) {
  width: 66.2%; }

.ft-cover-item:first-child:nth-last-child(3n+2) ~ .ft-cover-item {
  width: 32.5%; }

.ft-cover-item:first-child:nth-last-child(2), .ft-cover-item:first-child:nth-last-child(2) ~ .ft-cover-item {
  width: 49%; }

/** アイテムリスト ノーマルタイプ **/
ul.ft-m-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  width: 100%;
  list-style: none; }
  ul.ft-m-list li:nth-child(4n) {
    margin-right: 0; }
  ul.ft-m-list .ft-item {
    flex-direction: column;
    padding: 0;
    width: 24.25%;
    margin-right: 1%;
    margin-bottom: 24px; }
  ul.ft-m-list .ft-item-img {
    position: relative;
    background-color: #ddd;
    background-position: 50% 50%;
    background-size: cover;
    width: 100%;
    height: 140px;
    border-radius: 4px;
    margin-bottom: 8px;
    transition: .3s; }
  ul.ft-m-list .ft-item-title {
    flex: 1;
    font-size: 15px;
    color: #666;
    margin-bottom: 8px;
    transition: .3s; }
  ul.ft-m-list a:hover .ft-item-img,
  ul.ft-m-list a:hover .ft-item-title {
    opacity: .7; }

/** バナー（クリッカブル） **/
.banner-area {
  margin: 0 auto 1rem;
  width: 100%;
  height: 100%;
  text-align: center; }
  .banner-area img {
    margin: 0 auto;
    max-width: 100%; }
  .banner-area.is-clickable {
    transition: .3s; }
    .banner-area.is-clickable img {
      border-radius: 8px;
      overflow: hidden; }

/** SHARE SNS **/
.ft-share-button {
  position: relative;
  width: 50px;
  margin: 0; }

.ft-toggle {
  position: relative;
  width: 50px;
  height: 50px;
  z-index: 10;
  display: block;
  border-radius: 25px;
  cursor: pointer;
  color: #C8C7C0;
  box-shadow: inset 0 0 0 1px #C8C7C0; }
  .ft-toggle:hover {
    box-shadow: inset 0 0 0 2px #C8C7C0; }
  .ft-toggle:after {
    position: relative;
    display: block;
    width: 50px;
    height: 50px;
    content: "";
    background-image: url(../img/feature/common/icon-share.svg);
    background-size: 24px 24px;
    background-position: center;
    background-repeat: no-repeat; }

.ft-toggle-input {
  display: none; }
  .ft-toggle-input:checked + .ft-toggle:after, .ft-toggle-input:checked + .ft-toggle:before {
    background-color: #C8C7C0;
    content: "";
    height: 3px;
    width: 30px;
    position: absolute;
    left: 10px;
    top: 23px;
    background-image: none; }
  .ft-toggle-input:checked + .ft-toggle:after {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-animation: bar1 0.3s forwards;
    animation: bar1 0.3s forwards; }
  .ft-toggle-input:checked + .ft-toggle:before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-animation: bar2 0.3s forwards;
    animation: bar2 0.3s forwards; }

.network-list li {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 50px;
  height: 50px;
  margin: 0;
  padding: 0;
  list-style-type: none;
  opacity: 0;
  -webkit-transition: all 0.25s cubic-bezier(0.43, 1.17, 0.69, 1.24);
  transition: all 0.25s cubic-bezier(0.43, 1.17, 0.69, 1.24); }
.network-list a {
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  overflow: hidden;
  line-height: 50px;
  text-indent: 120%;
  text-decoration: none; }
  .network-list a::before {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    position: absolute;
    width: 50px;
    height: 50px;
    border-radius: 25px;
    font-family: 'FontAwesome';
    font-size: 18px;
    -webkit-font-smoothing: antialiased;
    text-align: center;
    line-height: 50px;
    text-indent: 0;
    box-shadow: inset 0 0 0 1px #C8C7C0; }
.network-list .twitter a:before {
  content: "";
  background: url(../img/feature/common/icon-tw.svg);
  background-size: contain;
  background-size: 24px 24px;
  background-position: center;
  background-repeat: no-repeat;
  color: #00C3F3; }
.network-list .twitter a:hover:before {
  box-shadow: inset 0 0 0 2px #00C3F3; }
.network-list .facebook a:before {
  content: "";
  background: url(../img/feature/common/icon-fb.svg);
  background-size: contain;
  background-size: 24px 24px;
  background-position: center;
  background-repeat: no-repeat;
  color: #2C609B; }
.network-list .facebook a:hover:before {
  box-shadow: inset 0 0 0 2px #2C609B; }
.network-list .hatenablog a:before {
  content: "";
  background: url(../img/feature/common/icon-hb.svg);
  background-size: contain;
  background-size: 24px 24px;
  background-position: center;
  background-repeat: no-repeat;
  color: #00A4DE; }
.network-list .hatenablog a:hover:before {
  box-shadow: inset 0 0 0 2px #00A4DE; }
.network-list .line a:before {
  content: "";
  background: url(../img/feature/common/icon-li.svg);
  background-size: contain;
  background-size: 24px 24px;
  background-position: center;
  background-repeat: no-repeat;
  color: #00B900; }
.network-list .line a:hover:before {
  box-shadow: inset 0 0 0 2px #00B900; }

input:checked ~ .network-list li {
  opacity: 1; }
  input:checked ~ .network-list li:nth-child(1) {
    top: 60px; }
  input:checked ~ .network-list li:nth-child(2) {
    top: 120px; }
  input:checked ~ .network-list li:nth-child(3) {
    top: 180px; }
  input:checked ~ .network-list li:nth-child(4) {
    top: 240px; }

@-webkit-keyframes bar1 {
  0% {
    content: "";
    width: 46px;
    height: 50px;
    background-color: transparent;
    -webkit-transform: rotate(0deg) scale(1);
    transform: rotate(0deg) scale(1);
    top: 0;
    left: 0;
    opacity: 1; }
  50% {
    background-color: transparent;
    content: "";
    width: 46px;
    height: 50px;
    top: 0;
    left: 0;
    -webkit-transform: rotate(0deg) scale(0.2);
    transform: rotate(0deg) scale(0.2);
    opacity: 0; }
  50.001% {
    background-color: #fff;
    left: 10px;
    top: 22px;
    content: "";
    height: 3px;
    width: 30px; }
  60% {
    -webkit-transform: rotate(0deg) scale(1);
    transform: rotate(0deg) scale(1);
    opacity: 1; }
  100% {
    -webkit-transform: rotate(45deg) scale(1);
    transform: rotate(45deg) scale(1); } }
@keyframes bar1 {
  0% {
    content: "";
    width: 46px;
    height: 50px;
    background-color: transparent;
    -webkit-transform: rotate(0deg) scale(1);
    transform: rotate(0deg) scale(1);
    top: 0;
    left: 0;
    opacity: 1; }
  50% {
    background-color: transparent;
    content: "";
    width: 46px;
    height: 50px;
    top: 0;
    left: 0;
    -webkit-transform: rotate(0deg) scale(0.2);
    transform: rotate(0deg) scale(0.2);
    opacity: 0; }
  50.001% {
    background-color: #fff;
    left: 10px;
    top: 22px;
    content: "";
    height: 3px;
    width: 30px; }
  60% {
    -webkit-transform: rotate(0deg) scale(1);
    transform: rotate(0deg) scale(1);
    opacity: 1; }
  100% {
    -webkit-transform: rotate(45deg) scale(1);
    transform: rotate(45deg) scale(1); } }
@-webkit-keyframes bar2 {
  0% {
    background-color: transparent;
    -webkit-transform: rotate(0deg) scale(0.2);
    transform: rotate(0deg) scale(0.2);
    opacity: 0; }
  50% {
    background-color: transparent;
    -webkit-transform: rotate(0deg) scale(0.2);
    transform: rotate(0deg) scale(0.2);
    opacity: 0; }
  60% {
    -webkit-transform: rotate(0deg) scale(1);
    transform: rotate(0deg) scale(1);
    opacity: 1; }
  100% {
    -webkit-transform: rotate(-45deg) scale(1);
    transform: rotate(-45deg) scale(1); } }
@keyframes bar2 {
  0% {
    background-color: transparent;
    -webkit-transform: rotate(0deg) scale(0.2);
    transform: rotate(0deg) scale(0.2);
    opacity: 0; }
  50% {
    background-color: transparent;
    -webkit-transform: rotate(0deg) scale(0.2);
    transform: rotate(0deg) scale(0.2);
    opacity: 0; }
  60% {
    -webkit-transform: rotate(0deg) scale(1);
    transform: rotate(0deg) scale(1);
    opacity: 1; }
  100% {
    -webkit-transform: rotate(-45deg) scale(1);
    transform: rotate(-45deg) scale(1); } }
.ad-unit {
  display: flex;
  align-items: center;
  justify-content: space-around;
  margin: 2rem 0; }
  .ad-unit-item {
    display: flex; }

.pr-list {
  display: flex;
  align-items: center; }

.pr-list:after {
  content: "PR";
  display: block;
  margin-left: 5px;
  padding: 3px 8px 4px;
  color: white;
  border-radius: 3px;
  font-size: 13px;
  background-color: #009869; }

.pr-inline {
  display: inline-block; }

.pr-inline:after {
  content: "PR";
  display: block;
  margin-left: 5px;
  padding: 2px 8px 3px;
  color: #009869;
  border: 1px solid;
  border-radius: 3px;
  font-size: 13px;
  line-height: 1; }

.row > #piano_recommend,
.row > #piano_related {
  display: flex;
  flex-wrap: wrap; }

.prwire-title {
  display: flex;
  align-items: center; }
  .prwire-title .prwire-title_txt {
    color: #003366;
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.2; }

.prwire-icon {
  margin-right: 8px;
  width: 115px;
  height: 35px;
  background-image: url(../img/prwire-logo.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 0 0; }

ul.prwire-list {
  list-style: none;
  padding: 0; }
  ul.prwire-list .prwire-item {
    position: relative;
    margin-left: 38px;
    margin-bottom: 8px;
    font-size: 0.9375rem; }
    ul.prwire-list .prwire-item:before {
      content: "PR";
      display: inline-block;
      margin-left: -38px;
      margin-right: 4px;
      padding: 3px 8px 4px;
      color: white;
      border-radius: 3px;
      font-size: 13px;
      line-height: 1;
      background-color: #009869; }

#pc_j-town_skyscraperleft {
  display: block !important;
  position: sticky;
  top: 0; }
  @media all and (-ms-high-contrast: none) {
    #pc_j-town_skyscraperleft {
      position: fixed;
      right: 50%;
      margin-right: 748px;
      margin-top: 10px; } }

#pc_j-town_skyscraperright {
  position: sticky;
  top: 0;
  margin-left: 540px; }
  @media all and (-ms-high-contrast: none) {
    #pc_j-town_skyscraperright {
      position: fixed;
      left: 50%;
      margin-left: 748px;
      margin-top: 10px; } }

#pc_j-town_skyscraperleft > [id*="google_ads_iframe"] {
  position: absolute;
  top: 10px;
  left: -228px; }
  @media all and (-ms-high-contrast: none) {
    #pc_j-town_skyscraperleft > [id*="google_ads_iframe"] {
      top: 0;
      left: 0; } }

.type_archieve #pc_j-town_skyscraperleft > [id*="google_ads_iframe"] {
  left: -180px; }
  @media all and (-ms-high-contrast: none) {
    .type_archieve #pc_j-town_skyscraperleft > [id*="google_ads_iframe"] {
      top: 0;
      left: 0; } }

#pc_j-town_skyscraperright > [id*="google_ads_iframe"] {
  position: absolute;
  top: 10px;
  right: -170px; }
  @media all and (-ms-high-contrast: none) {
    #pc_j-town_skyscraperright > [id*="google_ads_iframe"] {
      top: 0;
      right: 0; } }

@font-face {
  font-family: 'icomoon';
  src: url("fonts/icomoon.eot?vzqcw0");
  src: url("fonts/icomoon.eot?vzqcw0#iefix") format("embedded-opentype"), url("fonts/icomoon.ttf?vzqcw0") format("truetype"), url("fonts/icomoon.woff?vzqcw0") format("woff"), url("fonts/icomoon.svg?vzqcw0#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block; }
[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.icon-jt-blockquote_h:before {
  content: "\e900"; }

.icon-jt-blockquote_t:before {
  content: "\e901"; }

.icon-jt-car:before {
  content: "\e902"; }

.icon-jt-channel:before {
  content: "\e903"; }

.icon-jt-check:before {
  content: "\e904"; }

.icon-jt-comment:before {
  content: "\e905"; }

.icon-jt-down:before {
  content: "\e906"; }

.icon-jt-down-sm:before {
  content: "\e907"; }

.icon-jt-down-thin:before {
  content: "\e908"; }

.icon-jt-facebook:before {
  content: "\e909"; }

.icon-jt-food:before {
  content: "\e90a"; }

.icon-jt-fun:before {
  content: "\e90b"; }

.icon-jt-hateblog:before {
  content: "\e90c"; }

.icon-jt-house:before {
  content: "\e90d"; }

.icon-jt-labo:before {
  content: "\e90e"; }

.icon-jt-left:before {
  content: "\e90f"; }

.icon-jt-left-sm:before {
  content: "\e910"; }

.icon-jt-left--thin:before {
  content: "\e911"; }

.icon-jt-line:before {
  content: "\e912"; }

.icon-jt-report:before {
  content: "\e913"; }

.icon-jt-right:before {
  content: "\e914"; }

.icon-jt-right-sm:before {
  content: "\e915"; }

.icon-jt-right-thin:before {
  content: "\e916"; }

.icon-jt-send:before {
  content: "\e917"; }

.icon-jt-sharp:before {
  content: "\e918"; }

.icon-jt-twitter:before {
  content: "\e919"; }

.icon-jt-up:before {
  content: "\e91a"; }

.icon-jt-up-sm:before {
  content: "\e91b"; }

.icon-jt-up-thin:before {
  content: "\e91c"; }

.icon-jt-with:before {
  content: "\e91d"; }

/*# sourceMappingURL=style.css.map */
