@charset "UTF-8";
/* ==================================================
	市町村トップ
================================================== */
/* 市町村トップヘッダー
================================================== */
.ly_townHeader {
  margin-bottom: 65px;
}

.ly_townHeader_navWrap {
  width: 100%;
  border-bottom: 1px #869b27 solid;
}

.ly_townHeader_navInnerWrap {
  position: relative;
  width: 1400px;
  height: 70px;
  max-width: 100%;
  margin: 0 auto;
}

.ly_townHeader_nav {
  position: absolute;
  top: 0;
  right: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  height: 100%;
}

.ly_townHeader_navItem {
  text-align: center;
  vertical-align: middle;
  position: relative;
  height: 100%;
}

.ly_townHeader_navItem a {
  display: block;
  padding: 0 17px 0 16px;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.ly_townHeader_navItem a::after {
  content: '|';
  position: absolute;
  right: -1px;
  top: 50%;
  -webkit-transform: -webkit-translateY(-50%);
          transform: -webkit-translateY(-50%);
  transform: translateY(-50%);
}

.ly_townHeader_navItem a span {
  position: relative;
}

.ly_townHeader_navItem a span::after {
  position: absolute;
  bottom: -2px;
  left: 0;
  content: '';
  width: 100%;
  height: 2px;
  background: #333;
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transform-origin: center top;
          transform-origin: center top;
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s;
}

.ly_townHeader_navItem a:hover span::after {
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
}

.ly_townHeader_navItem.__last a::after {
  display: none;
}

.ly_townHeader_contactBtn {
  width: 220px;
  text-align: center;
  height: 100%;
  background-color: #869b27;
  -webkit-transition: .3s;
  transition: .3s;
  position: relative;
}

.ly_townHeader_contactBtn::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: -1px;
  left: 0;
  content: '';
  background-color: #de8046;
  border-bottom: #de8046 1px solid;
  -webkit-transform-origin: center center;
          transform-origin: center center;
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s;
}

.ly_townHeader_contactBtn:hover::before {
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
}

.ly_townHeader_contactBtn a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  color: #fff;
  height: 100%;
}

.ly_townHeader_logo {
  position: absolute;
  bottom: -4.5rem;
  left: 30px;
  width: 288px;
  max-width: 20%;
}

.ly_townHeader_logo span {
  display: block;
  text-align: center;
  font-size: 2.1rem;
  padding-top: 15px;
  color: #333;
}

.ly_townHeader_logo img {
  width: 100%;
  z-index: 10;
  display: inline;
  position: relative;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}

@media screen and (max-width: 1160px) {
  .ly_townHeader_contactBtn {
    max-width: 220px;
    width: auto;
  }
  .ly_townHeader_contactBtn a {
    padding: 0 20px;
  }
  .ly_townHeader_navItem a {
    padding: 0 12px 0 11px;
  }
  .ly_townHeader_nav {
    width: calc(100% - 20% - 30px);
  }
}

@media screen and (max-width: 768px) {
  .ly_townHeader {
    padding-top: 60px;
    margin-bottom: 30px;
  }
  .ly_townHeader_navWrap {
    display: none;
  }
}

/* 市町村トップ town name (h1 titleロゴ)
================================================== */
.bl_townName_wrap {
  display: none;
}

@media screen and (max-width: 768px) {
  .bl_townName {
    font-size: 3rem;
    color: #333;
    text-align: center;
  }
  .bl_townName_wrap {
    display: block;
    margin-bottom: 30px;
  }
}

@media screen and (max-width: 375px) {
  .bl_townName {
    font-size: 2.6rem;
  }
}

/*市町村トップ スライダー
================================================== */
.slideobject_inner a:hover {
  opacity: 1 !important;
}

/* 効果をかけるためのスタイル設定 */
#slick-main .slick-slide {
  /* slickによってelement.styleで付けられるopacityを無効化 */
  background-color: #fff;
}

#slick-main .slideobject {
  /* フェード要素の初期設定 */
  opacity: 0;
  -webkit-transition: 0s;
  transition: 0s;
}

#slick-main .slick-active .slideobject {
  /* slick-active(効果開始)の際のフェード設定 */
  /* [重要]slick側の設定と同じdurationを取る */
  opacity: 1;
  -webkit-transition: ease-in-out 2.0s;
  transition: ease-in-out 2.0s;
}

#slick-main .slick-continue .slideobject {
  /* エフェクトの継続用に付与したslick-continueのフェード設定 */
  /* [重要]slick側の設定と同じdurationを取る */
  opacity: 0;
  -webkit-transition: ease-in-out 2.0s;
  transition: ease-in-out 2.0s;
}

#slick-main figure.image {
  /* 画像 ズーム要素の初期設定 */
  -webkit-transform: scale(1.2, 1.2);
          transform: scale(1.2, 1.2);
  -webkit-transition: 0s;
  transition: 0s;
}

#slick-main .slick-active figure.image {
  /* 画像　slick-active(効果開始) */
  /* ズームをかける要素には必ずフェードに対して大きめのtransition-durationを取る */
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
  -webkit-transition: ease-in-out 7.0s;
  transition: ease-in-out 7.0s;
}

#slick-main .slick-continue figure.image {
  /* 画像　slick-continue */
  /* ズームをかける要素には必ずフェードに対して大きめのtransition-durationを取る */
  -webkit-transform: scale(1.2, 1.2);
          transform: scale(1.2, 1.2);
  -webkit-transition: ease-in-out 7.0s;
  transition: ease-in-out 7.0s;
}

/* スライド周りの基本スタイル */
.slideobject {
  position: relative;
  z-index: 10;
  overflow: hidden;
  vertical-align: bottom;
  width: 100%;
  height: 680px !important;
}

.slideobject figure.image {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50% 50%;
}

.slideobject figure.image {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.slideobject figure.image {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

@media screen and (max-width: 1099px) {
  .slideobject {
    height: auto !important;
  }
  .slideobject_inner {
    padding-top: 61.8%;
    width: 100%;
    min-width: auto;
    position: relative;
    top: 0;
    left: 0;
  }
}

/* 市町村トップabout town
================================================== */
.un_aboutTown {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  margin: 0 auto 100px auto;
}

.un_aboutTown_map {
  max-width: 423px;
  width: calc(423 / 1300 *100%);
  min-width: 365px;
}

.un_aboutTown_txt {
  width: calc(1300px - 423 / 1300 *100%);
  padding-left: 20px;
  padding-top: 30px;
}

.un_aboutTown_ttl {
  font-size: 2.8rem;
  margin-bottom: 20px;
  color: #333;
}

.un_aboutTown_detail {
  font-size: 1.6rem;
  margin-bottom: 30px;
}

.un_aboutTown_link {
  display: block;
}

.un_aboutTown_viewMore {
  position: relative;
}

.un_aboutTown_viewMore::after {
  content: '';
  background-color: #859a27;
  position: absolute;
  bottom: 9px;
  left: 120px;
  height: 1px;
  width: 130px;
  -webkit-transition: .3s;
  transition: .3s;
}

.un_aboutTown_link:hover .un_aboutTown_viewMore::after {
  left: 130px;
  background-color: #de8046;
}

.un_aboutTown_viewMore_txt {
  display: inline-block;
  width: 110px;
  font-weight: bold;
  font-size: 1.8rem;
  margin-left: 10px;
  line-height: 1;
  color: #333;
}

@media screen and (max-width: 1100px) {
  .un_aboutTown_txt {
    padding-top: 0;
  }
}

@media screen and (max-width: 768px) {
  .un_aboutTown {
    display: block;
    margin: 0 auto 70px auto;
  }
  .un_aboutTown_map {
    width: 365px;
    max-width: 90%;
    min-width: 250px;
    margin: 0 auto 30px;
  }
  .un_aboutTown_txt {
    width: 100%;
    padding-left: 0;
  }
  .un_aboutTown_ttl {
    font-size: 2.1rem;
    text-align: center;
  }
  .un_aboutTown_detail {
    font-size: 1.4rem;
  }
  .un_aboutTown_viewMore_txt {
    font-size: 1.6rem;
    display: block;
    text-align: right;
    width: auto;
    padding-right: 120px;
    color: #333;
  }
  .un_aboutTown_viewMore {
    width: 100%;
    position: relative;
  }
  .un_aboutTown_viewMore::after {
    content: '';
    background-color: #859a27;
    position: absolute;
    bottom: 7px;
    right: 20px;
    left: auto;
    height: 1px;
    width: 90px;
    -webkit-transition: .3s;
    transition: .3s;
  }
  .un_aboutTown_link:hover .un_aboutTown_viewMore::after {
    left: auto;
    right: 10px;
  }
}

/* 市町村トップ プロジェクト project
================================================== */
.un_townProject_list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.un_townProject_item {
  width: 48%;
  margin-bottom: 60px;
}

.un_townProject_item:nth-of-type(odd) {
  margin-right: 4%;
}

.un_townProject_item a:hover .un_townProject_viewMore::after {
  background-color: #de8046;
  left: 120px;
}

.un_townProject_img {
  margin-bottom: 20px;
}

.un_townProject_ttl {
  font-size: 2.8rem;
  font-weight: bold;
  margin-bottom: 25px;
  color: #333;
}

.un_townProject_detail {
  font-size: 1.5rem;
  margin-bottom: 25px;
}

.un_townProject_viewMore {
  position: relative;
}

.un_townProject_viewMore::after {
  content: '';
  background-color: #859a27;
  position: absolute;
  bottom: 10px;
  left: 110px;
  height: 1px;
  width: 130px;
  max-width: calc(100% - 120px);
  -webkit-transition: .3s;
  transition: .3s;
}

.un_townProject_viewMore_txt {
  font-weight: bold;
  font-size: 1.8rem;
  color: #333;
}

@media screen and (max-width: 768px) {
  .un_townProject_ttl {
    font-size: 1.8rem;
    margin-bottom: 15px;
  }
  .un_townProject_detail {
    font-size: 1.4rem;
    margin-bottom: 15px;
  }
  .un_townProject_item {
    margin-bottom: 40px;
  }
  .un_townProject_item a:hover .un_townProject_viewMore::after {
    left: 110px;
  }
  .un_townProject_viewMore::after {
    bottom: 10px;
    left: 100px;
  }
  .un_townProject_viewMore_txt {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 376px) {
  .un_townProject_viewMore_txt {
    font-size: 1.6rem;
  }
  .un_townProject_viewMore::after {
    max-width: calc(100% - 110px);
    left: 100px;
  }
  .un_townProject_ttl {
    font-size: 1.7rem;
  }
  .un_townProject_detail {
    font-size: 1.3rem;
  }
}

/* 市町村トップ 事業者の想い thought
================================================== */
.un_townThought_list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.un_townThought_item {
  width: 49%;
  margin-bottom: 55px;
}

.un_townThought_item:nth-of-type(odd) {
  margin-right: 2%;
}

.un_townThought_inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  color: #1a1a1a;
  position: relative;
}

.un_townThought_img {
  width: 260px;
  max-width: calc(260 / 512 *100%);
}

.un_townThought_txt {
  max-width: calc(100% - 260 / 512 *100%);
  padding-left: 3%;
  padding-bottom: 3rem;
}

.un_townThought_ttl {
  font-size: 2.1rem;
  font-weight: bold;
  margin-bottom: 20px;
  color: #333;
}

.un_townThought_viewMore {
  position: absolute;
  width: calc(250 / 512 *100%);
  right: 0;
  bottom: 0;
}

.un_townThought_viewMore::after {
  content: '';
  background-color: #859a27;
  position: absolute;
  bottom: 8px;
  right: 20px;
  height: 1px;
  width: calc(100% - 140px);
  -webkit-transition: .3s;
  transition: .3s;
}

.un_townThought_viewMore_txt {
  display: inline-block;
  width: 110px;
  position: absolute;
  font-weight: bold;
  font-size: 1.8rem;
  margin-left: 10px;
  line-height: 1;
  bottom: 0;
  left: 0;
  color: #333;
}

.un_townThought_inner:hover .un_townThought_viewMore::after {
  right: 10px;
  background-color: #de8046;
}

@media screen and (max-width: 768px) {
  .un_townThought_list {
    display: block;
  }
  .un_townThought_item {
    width: 100%;
  }
  .un_townThought_ttl {
    font-size: 1.8rem;
    margin-bottom: 15px;
  }
  .un_townThought_detail {
    font-size: 1.4rem;
    margin-bottom: 15px;
  }
  .un_townThought_txt {
    max-width: calc(100% - 260px);
  }
}

@media screen and (max-width: 512px) {
  .un_townThought_img {
    width: 40%;
    max-width: auto;
  }
  .un_townThought_txt {
    width: 60%;
    max-width: 60%;
  }
  .un_townThought_viewMore {
    width: 60%;
  }
  .un_townThought_viewMore::after {
    bottom: 7px;
    left: 110px;
    height: 1px;
  }
  .un_townThought_viewMore_txt {
    font-size: 1.6rem;
    display: block;
    width: auto;
    left: 0;
    color: #333;
  }
  .un_townThought_inner:hover .un_townThought_viewMore::after {
    left: 120px;
  }
}

@media screen and (max-width: 376px) {
  .un_townThought_ttl {
    font-size: 1.7rem;
  }
  .un_townThought_detail {
    font-size: 1.3rem;
  }
}

/* 市町村トップ お知らせ
================================================== */
.un_townNews_list {
  margin-bottom: 50px;
}

.un_townNews_item {
  border-bottom: 1px solid #859a27;
  width: 100%;
}

.un_townNews_item a {
  display: block;
  padding: 40px 0 25px 0;
}

.un_townNews_date {
  font-weight: bold;
  color: #665e55;
  font-size: 1.5rem;
  width: 13%;
  min-width: 145px;
  vertical-align: top;
}

.un_townNews_ttl {
  font-size: 1.5rem;
  text-decoration: underline;
}

@media screen and (max-width: 768px) {
  .un_townNews_item a {
    padding: 25px 0;
  }
}

@media screen and (max-width: 436px) {
  .un_townNews_date, .un_townNews_ttl {
    display: block;
  }
  .un_townNews_ttl {
    padding-top: 10px;
  }
}

/* ==================================================
	市町村下層ページ
================================================== */
/* 下層ヘッダー sub-header.html town-sub-header.html town-detail-header.html
================================================== */
.ly_subHeader {
  margin-bottom: 120px;
}

.ly_subHeader_navWrap {
  display: block;
  height: 70px;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99;
  background: rgba(255, 255, 255, 0.9);
}

.ly_subHeader_navInnerWrap {
  height: 100%;
  max-width: 1400px;
  width: 100%;
  margin: 0 auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: relative;
}

.ly_subHeader_nav {
  position: absolute;
  top: 0;
  right: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  height: 100%;
}

.ly_subHeader_navItem {
  text-align: center;
  vertical-align: middle;
  position: relative;
  height: 100%;
}

.ly_subHeader_navItem a {
  display: block;
  padding: 0 17px 0 16px;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.ly_subHeader_navItem a::after {
  content: '|';
  position: absolute;
  right: -1px;
  top: 50%;
  -webkit-transform: -webkit-translateY(-50%);
          transform: -webkit-translateY(-50%);
  transform: translateY(-50%);
}

.ly_subHeader_navItem a span {
  word-break: normal;
  position: relative;
}

.ly_subHeader_navItem a span::after {
  position: absolute;
  bottom: -2px;
  left: 0;
  content: '';
  width: 100%;
  height: 2px;
  background: #333;
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transform-origin: center top;
          transform-origin: center top;
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s;
}

.ly_subHeader_navItem a:hover span::after {
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
}

.ly_subHeader_navItem.__last a::after {
  display: none;
}

.ly_subHeader_contactBtn {
  width: 220px;
  text-align: center;
  height: 100%;
  background-color: #869b27;
  -webkit-transition: .3s;
  transition: .3s;
  position: relative;
}

.ly_subHeader_contactBtn::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: -1px;
  left: 0;
  content: '';
  background-color: #de8046;
  border-bottom: #de8046 1px solid;
  -webkit-transform-origin: center center;
          transform-origin: center center;
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s;
}

.ly_subHeader_contactBtn:hover::before {
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
}

.ly_subHeader_contactBtn a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  color: #fff;
  height: 100%;
}

.ly_subHeader_navLogo {
  height: 70px;
  text-align: left;
  max-width: 400px;
}

.ly_subHeader_navLogo a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  height: 100%;
  text-align: left;
}

.ly_subHeader_navLogo a img {
  width: auto;
  height: 100%;
  padding: 10px 10px 0 10px;
}

.ly_subHeader_navLogo span {
  font-size: 1.6rem;
  padding-bottom: 18px;
  white-space: nowrap;
}

.ly_subHeader_nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.ly_subHeader_ttlWrap {
  background: url(/front/image/sub/bg-sub-header.jpg) no-repeat center center/cover;
  width: 100%;
  height: 400px;
  padding-top: 70px;
}

.ly_subHeader_ttlWrap.__town {
  background: url(/front/image/sub/bg-town-sub-header.jpg) no-repeat center center/cover;
}

.ly_subHeader_ttlWrapInner {
  height: 330px;
  position: relative;
  max-width: 1400px;
  width: 100%;
  margin: 0 auto;
}

.ly_subHeader_ttl {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: -webkit-translate(-50%, -50%);
          transform: -webkit-translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 2.8rem;
  font-weight: bold;
  text-align: center;
  letter-spacing: 3px;
  color: #fff;
  text-shadow: 1px 1px 10px rgba(12, 20, 41, 0.5), -1px -1px 10px rgba(12, 20, 41, 0.5);
  padding: 12px 5px;
}

.ly_subHeader_logo {
  position: absolute;
  bottom: -13px;
  left: 30px;
  width: 288px;
  max-width: 20%;
  text-align: center;
}

.ly_subHeader_logo.__town {
  bottom: -55px;
}

.ly_subHeader_logo span {
  color: #333;
  font-size: 2.1rem;
  padding-top: 15px;
  display: inline-block;
}

@media screen and (max-width: 1200px) {
  .ly_subHeader_contactBtn {
    max-width: 220px;
    width: auto;
  }
  .ly_subHeader_contactBtn a {
    padding: 0 20px;
  }
  .ly_subHeader_navItem a {
    padding: 0 12px 0 11px;
  }
  .ly_subHeader_nav {
    width: calc(100% - 260px);
  }
  .ly_subHeader_nav.__town {
    width: calc(100% - 330px);
  }
  .ly_subHeader_navLogo span {
    font-size: 1.4rem;
    vertical-align: 85%;
  }
}

@media screen and (max-width: 768px) {
  .ly_subHeader {
    margin-bottom: 70px;
  }
  .ly_subHeader_navWrap {
    display: none;
  }
  .ly_subHeader_logo {
    display: none;
  }
  .ly_subHeader_ttlWrap {
    height: 200px;
    padding-top: 60px;
  }
  .ly_subHeader_ttlWrapInner {
    height: 140px;
  }
  .ly_subHeader_ttl {
    font-size: 2.1rem;
    width: 100%;
    word-break: break-all;
  }
}

/*下層ヘッダー 詳細ページ用  town-detail-header.html
================================================== */
.ly_detailHeader_ttlWrap {
  background: url(/front/image/sub/img-detail.jpg) no-repeat center center/cover;
  width: 100%;
  height: 400px;
  padding-top: 70px;
}

.ly_detailHeader_ttlWrapInner {
  height: 330px;
  position: relative;
  max-width: 1400px;
  width: 100%;
  margin: 0 auto;
}

.ly_detailHeader_ttl {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: -webkit-translate(-50%, -50%);
          transform: -webkit-translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 2.8rem;
  font-weight: bold;
  color: #333;
  background-color: rgba(255, 255, 255, 0.8);
  padding: 12px 30px;
}

.ly_detailHeader_logo {
  position: absolute;
  bottom: -55px;
  left: 30px;
  width: 288px;
  max-width: 20%;
  text-align: center;
}

.ly_detailHeader_logo span {
  color: #333;
  font-size: 2.1rem;
  padding-top: 15px;
  display: inline-block;
}

@media screen and (max-width: 1100px) {
  .ly_detailHeader_ttlWrap {
    min-height: 400px;
  }
  .ly_detailHeader_ttlWrapInner {
    min-height: 330px;
  }
}

@media screen and (max-width: 768px) {
  .ly_detailHeader_ttlWrap {
    height: 200px;
    min-height: 200px;
    padding-top: 60px;
  }
  .ly_detailHeader_ttlWrapInner {
    height: 140px;
    min-height: 140px;
  }
  .ly_detailHeader_logo {
    display: none;
  }
}

/* 下層 一覧ページ（プロジェクト、事業者の想い）
================================================== */
.un_project_list {
  margin-bottom: 100px;
}

.un_project_item {
  margin-bottom: 55px;
}

.un_project_inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  color: #1a1a1a;
  position: relative;
}

.un_project_img {
  max-width: 420px;
  width: calc(420/ 1100 *100%);
}

.un_project_txt {
  width: calc(100% - 420/ 1100 *100%);
  padding-left: 3%;
  padding-bottom: 3rem;
}

.un_project_ttl {
  font-size: 2.1rem;
  font-weight: bold;
  margin-bottom: 20px;
  color: #333;
}

.un_project_viewMore {
  position: absolute;
  width: calc(100% - 420/ 1100 *100%);
  right: 0;
  bottom: 0;
}

.un_project_viewMore::after {
  content: '';
  background-color: #859a27;
  position: absolute;
  bottom: 8px;
  left: 140px;
  height: 1px;
  width: 128px;
  -webkit-transition: .3s;
  transition: .3s;
}

.un_project_viewMore_txt {
  display: inline-block;
  width: 110px;
  position: absolute;
  font-weight: bold;
  font-size: 1.8rem;
  margin-left: 3.1rem;
  line-height: 1;
  bottom: 0;
  left: 0;
  color: #333;
}

.un_project_inner:hover .un_project_viewMore::after {
  left: 150px;
  background-color: #de8046;
}

@media screen and (max-width: 768px) {
  .un_project_list {
    display: block;
  }
  .un_project_item {
    width: 100%;
  }
  .un_project_ttl {
    font-size: 1.8rem;
    margin-bottom: 15px;
  }
  .un_project_detail {
    font-size: 1.4rem;
    margin-bottom: 15px;
  }
  .un_project_img {
    width: 40%;
    min-width: 120px;
  }
  .un_project_txt {
    width: 60%;
    max-width: calc(100% - 120px);
  }
  .un_project_viewMore {
    width: 60%;
  }
  .un_project_viewMore::after {
    width: 80px;
    left: 130px;
  }
  .un_project_viewMore_txt {
    margin-left: 2rem;
  }
  .un_project_inner:hover .un_project_viewMore::after {
    left: 140px;
  }
}

@media screen and (max-width: 411px) {
  .un_project_inner {
    display: block;
  }
  .un_project_img {
    width: 100%;
    max-width: 100%;
  }
  .un_project_txt {
    width: 100%;
    max-width: 100%;
  }
  .un_project_viewMore {
    width: 100%;
  }
  .un_project_viewMore::after {
    bottom: 7px;
    left: 110px;
    height: 1px;
  }
  .un_project_viewMore_txt {
    font-size: 1.6rem;
    display: block;
    width: auto;
    left: 0;
    margin-left: 10px;
    color: #333;
  }
  .un_project_inner:hover .un_project_viewMore::after {
    left: 120px;
  }
}

@media screen and (max-width: 376px) {
  .un_project_ttl {
    font-size: 1.7rem;
  }
  .un_project_detail {
    font-size: 1.3rem;
  }
}

/* 下層 一覧ページ（参加地域紹介・市町村リスト）
================================================== */
.un_townAll_leadTxt {
  text-align: center;
  font-size: 1.6rem;
  line-height: 2.1;
  margin-bottom: 50px;
}

.un_townAll_townList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 100px;
}

.un_townAll_townItem {
  width: 49%;
  margin-bottom: 55px;
}

.un_townAll_townItem:nth-of-type(odd) {
  margin-right: 2%;
}

.un_townAll_townInner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  color: #1a1a1a;
  position: relative;
}

.un_townAll_viewMore {
  position: absolute;
  width: calc(250 / 512 *100%);
  right: 0;
  bottom: 0;
}

.un_townAll_viewMore::after {
  content: '';
  background-color: #859a27;
  position: absolute;
  bottom: 8px;
  right: 20px;
  height: 1px;
  width: calc(100% - 140px);
  -webkit-transition: .3s;
  transition: .3s;
}

.un_townAll_viewMore_txt {
  display: inline-block;
  width: 110px;
  position: absolute;
  font-weight: bold;
  font-size: 1.8rem;
  margin-left: 10px;
  line-height: 1;
  bottom: 0;
  left: 0;
  color: #333;
}

.un_townAll_townInner:hover .un_townAll_viewMore::after {
  right: 5px;
  background-color: #de8046;
}

.un_townAll_townImg {
  width: 260px;
  max-width: 50.7%;
  max-width: calc(260 / 512 *100%);
}

.un_townAll_townTxt {
  max-width: 49.2%;
  max-width: calc(100% - 260 / 512 *100%);
  padding-left: 3%;
  padding-bottom: 3rem;
}

.un_townAll_townTxt dt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  margin-bottom: 17px;
}

.un_townAll_townIcon {
  width: 60px;
  margin-right: 5px;
}

.un_townAll_townName {
  font-size: 2.8rem;
  color: #333;
}

.un_townAll_townName span {
  display: inline-block;
}

.un_townAll_townName small {
  font-size: 1.6rem;
  padding-right: 5px;
}

.un_townAll_townCopy {
  font-size: 2.1rem;
  color: #333;
}

@media screen and (max-width: 940px) {
  .un_townAll_townName {
    font-size: 2.2rem;
  }
  .un_townAll_townCopy {
    font-size: 1.8rem;
  }
}

@media screen and (max-width: 768px) {
  .un_townAll_leadTxt {
    line-height: 1.8;
  }
  .un_townAll_townList {
    display: block;
    margin-bottom: 70px;
  }
  .un_townAll_townItem {
    width: 100%;
  }
  .un_townAll_townTxt {
    max-width: calc(100% - 260px);
  }
}

@media screen and (max-width: 512px) {
  .un_townAll_townImg {
    max-width: 260px;
    width: 40%;
  }
  .un_townAll_townTxt {
    width: 60%;
    max-width: 60%;
  }
  .un_townAll_viewMore {
    width: 60%;
  }
  .un_townAll_viewMore::after {
    width: calc(100% - 130px);
    bottom: 7px;
  }
  .un_townAll_viewMore_txt {
    font-size: 1.6rem;
    width: 100px;
  }
}

@media screen and (max-width: 376px) {
  .un_townAll_townTxt dt {
    margin-bottom: 12px;
  }
  .un_townAll_townIcon {
    width: 40px;
  }
  .un_townAll_townName {
    font-size: 1.8rem;
  }
  .un_townAll_townName small {
    font-size: 1.4rem;
  }
  .un_townAll_townCopy {
    font-size: 1.4rem;
  }
  .un_townAll_townDetail {
    font-size: 1.3rem;
  }
}


/* ==================================================
	コンタクト
================================================== */
/* =============================================
    フォーム画面
================================================== */
.un_contact_leadTxt {
    text-align: center;
    font-size: 1.6rem;
    line-height: 2.1;
    padding-bottom: 10px;
    border-bottom: 1px solid #d1d9ae;
}

@media screen and (max-width: 767px) {
    .un_contact_leadTxt {
        text-align: left;
    }
}

.un_contact_form {
    text-align: center;
}

.un_form {
    width: 100%;
    margin: 0px auto;
    border-bottom: 1px solid #d1d9ae;
}

.un_form_column {
    border-bottom: 1px solid #d1d9ae;
}

.un_form_inputItem {
    font-size: 1.5rem;
    width: 16%;
    text-align: left;
    vertical-align: text-top;
    padding: 0;
    padding-top: 30px;
}

@media screen and (max-width: 768px) {
    .un_form_inputItem {
        display: block;
        width: 100%;
    }
}

.un_form_inputArea {
    font-family: '游ゴシック', 'Yu Gothic', '游ゴシック体', YuGothic, 'ヒラギノ角ゴ ProN W3', 'メイリオ', 'MSゴシック', 'meiryo', sans-serif;
    max-width: 620px;
    width: 100%;
    height: 40px;
    padding: 10px;
    border: 2px solid #dbdce0;
}

.un_form_inputArea:focus {
    outline: none;
}

.un_form_inputArea_wrap {
    text-align: left;
    width: 84%;
    padding: 20px 0;
}

@media screen and (max-width: 768px) {
    .un_form_inputArea_wrap {
        display: block;
        width: 100%;
    }
}

.un_form_txtArea {
    font-family: '游ゴシック', 'Yu Gothic', '游ゴシック体', YuGothic, 'ヒラギノ角ゴ ProN W3', 'メイリオ', 'MSゴシック', 'meiryo', sans-serif;
    max-width: 740px;
    width: 100%;
    height: 270px;
    padding: 10px;
    border: 2px solid #dbdce0;
}

.un_form_txtArea:focus {
    outline: none;
}

.un_form_send {
    margin: 40px auto 0;
    max-width: 700px;
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.un_form_sendBtn {
    font-family: '游ゴシック', 'Yu Gothic', '游ゴシック体', YuGothic, 'ヒラギノ角ゴ ProN W3', 'メイリオ', 'MSゴシック', 'meiryo', sans-serif;
    font-size: 1.5rem;
    max-width: 320px;
    width: 100%;
    height: 50px;
    margin-bottom: 30px;
    background: #859a27;
    color: white;
    border: none;
    cursor: pointer;
    -webkit-transition: .8s;
    transition: .8s;
    text-align: center;
    position: relative;
    display: inline-block;
    background: #859a27;
}

@media screen and (max-width: 768px) {
    .un_form_sendBtn {
        max-width: 300px;
        width: 100%;
        margin: 10px 10px 30px;
    }
}

.un_form_sendBtn::before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: -1px;
    left: 0;
    content: '';
    background-color: #de8046;
    border-bottom: #de8046 1px solid;
    -webkit-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: scale(0, 1);
    transform: scale(0, 1);
    -webkit-transition: -webkit-transform .3s;
    transition: -webkit-transform .3s;
    transition: transform .3s;
    transition: transform .3s, -webkit-transform .3s;
}

.un_form_sendBtn:hover::before {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
}

.un_form_sendBtn a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #fff;
    height: 100%;
}

.un_errorTxt {
    display: none;
}

.un_error {
    background: #ffe7ec;
    border: 1px solid #fc6060;
}

.un_error+.un_errorTxt {
    display: block;
    margin-top: 4px;
    color: #fc6060;
}

.un_checkTxt {
    color: #fc6060;
    font-size: 1.5rem;
    padding: 5px 0;
}

.un_btnTxt {
    position: relative;
    z-index: 1;
    font-size: 1.4rem;
}

.un_colorGray {
    background: #cacaca;
    color: #666;
}

.un_formPolicy {
    padding: 50px 0;
}

.un_formPolicy_checkboxInput {
    font-family: '游ゴシック', 'Yu Gothic', '游ゴシック体', YuGothic, 'ヒラギノ角ゴ ProN W3', 'メイリオ', 'MSゴシック', 'meiryo', sans-serif;
}

.un_formPolicy_link {
    -webkit-text-decoration-line: underline;
    text-decoration-line: underline;
    margin-top: 8px;
}

@media screen and (max-width: 768px) {
    .un_formPolicy_link {
        margin-top: 10px;
    }
}

button:focus {
    outline: 0;
}

.radio-input {
    display: none;
}

.radio-input+label {
    padding-left: 20px;
    position: relative;
    margin-right: 20px;
}

.radio-input+label::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 15px;
    height: 15px;
    border: 1px solid #999;
    border-radius: 50%;
}

.radio-input:checked+label {
    font-weight: bold;
}

.radio-input:checked+label::after {
    content: "";
    display: block;
    position: absolute;
    top: 3px;
    left: 3px;
    width: 11px;
    height: 11px;
    background: #859a27;
    border-radius: 50%;
}

/* =============================================
    確認画面
================================================== */
.un_noneBb {
    border-bottom: none;
}

.un_bold {
    font-weight: bold;
}

.un_form_inputItem._comfirm {
    padding-top: 20px;
}

.un_form_goPress {
    margin-top: 50px;
}

/* =============================================
   エラー画面
================================================== */
.un_contact._error {
    padding: 40px 0 60px;
}

.un_inputError {
    text-align: left;
    color: #000;
}


/*# sourceMappingURL=style.css.map */
