@charset "UTF-8";
body {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500;
  font-weight: 700; }

h1, .h1 {
  font-size: 2.441em;
  line-height: 1.5; }

h2, .h2 {
  font-size: 32px;
  line-height: 1.5; }
  @media (max-width: 767px) {
    h2, .h2 {
      font-size: 24px; } }

h3, .h3 {
  font-size: 24px;
  line-height: 1.5; }
  @media (max-width: 767px) {
    h3, .h3 {
      font-size: 18px; } }

h4, .h4 {
  font-size: 21px;
  line-height: 1.5; }
  @media (max-width: 767px) {
    h4, .h4 {
      font-size: 16px; } }

h2.yl-underline {
  color: #054083;
  text-align: center;
  position: relative;
  margin-bottom: 2.6rem; }
  h2.yl-underline::after {
    content: '';
    position: absolute;
    bottom: -15px;
    display: inline-block;
    width: 60px;
    height: 6px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #FFD418;
    border-radius: 2px; }

h3 {
  color: #333333;
  letter-spacing: 1.92px; }

a {
  color: #0071BF;
  transition: all ease-in .3s; }
  a:hover {
    color: #4094CF; }
  a:visited {
    color: #808080; }

.bl-yl {
  color: #054083;
  border-left: 3px #FFD418 solid;
  padding-left: 1rem; }

hr {
  width: 30px;
  height: 8px;
  background-color: #FFD418;
  border: 0; }

.bg-l-yl {
  background-color: #FFFBE8; }

.bb-white {
  border-bottom: 1px #fff solid; }

.bb-yellow {
  position: relative; }
  .bb-yellow:before {
    content: '';
    position: absolute;
    bottom: -15px;
    display: inline-block;
    width: 180px;
    height: 3px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #FFD418;
    border-radius: 2px; }

.lead {
  text-align: center;
  font-size: 16px;
  line-height: 2.5em;
  font-weight: 500 !important; }

.entry-list .label {
  background-color: #D9E2EC;
  color: #333333; }

.bg-primary {
  background-color: #0071BF !important; }

main {
  padding-top: 7rem;
  padding-bottom: 7rem; }
  main p {
    line-height: 2.0em; }

.justify-content-center {
  justify-content: center !important; }

time {
  letter-spacing: 0.1em; }

.module-card-list .badge {
  border-radius: 3px;
  padding: 0.3rem; }

.module-card-list h3 {
  line-height: 1.5em;
  font-weight: bold;
  text-align: justify; }
  .module-card-list h3 a {
    color: inherit; }

.module-card-list p {
  line-height: 2.0em;
  text-align: justify; }

.module_index_summary > div {
  border-bottom: 1px #ccc solid;
  padding: 1.5em 0; }
  @media (max-width: 767px) {
    .module_index_summary > div:nth-child(odd) {
      border-bottom: none; } }

.module_index_summary h3 a:link, .module_index_summary h3 a:visited {
  color: #054083; }

.module_index_summary h3 a:active, .module_index_summary h3 a:hover {
  color: #4094CF; }

.bg-yellow {
  background-color: #FEFDDC;
  padding: 1rem 3rem; }

.entry-danger-text {
  color: #fd7505; }

.column-table- table td {
  border-bottom: 1px #ccc solid;
  padding: 1rem; }

.overlap {
  position: relative; }
  .overlap .bg-white {
    width: calc( 100% + 100px);
    transform: translateY(25%); }
    @media (max-width: 767px) {
      .overlap .bg-white {
        width: 100%;
        transform: translateY(0) translateX(0); } }
    .overlap .bg-white p {
      line-height: 2.0em; }

.overlap:first-child .bg-white {
  transform: translateX(-100px) translateY(25%); }
  @media (max-width: 767px) {
    .overlap:first-child .bg-white {
      width: 100%;
      transform: translateY(0) translateX(0); } }

@media (min-width: 768px) and (max-width: 1199px) {
  .overlap:first-child .bg-white {
    transform: translateX(-100px); }
  .overlap .bg-white {
    transform: translateX(0px); } }

/* 写真つき文章 */
.unit_textimage .subtitle {
  color: #fd7505;
  font-weight: bold; }

.swiper-container {
  width: 100%;
  height: 100%; }

.swiper-slide {
  text-align: center;
  font-size: 18px;
  background: #fff;
  /* Center slide text vertically */
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center; }

.unit-custom_orange_wrap_image .inner {
  border: 2px #FD7505 solid;
  text-align: center;
  padding: 2rem; }

.unit-custom_orange_wrap_image .subtitle {
  color: #054083;
  font-size: 13px;
  font-family: "Arial";
  font-weight: bold;
  display: block; }

.unit-custom_orange_wrap_image h4 a {
  font-size: 21px;
  color: #FD7505; }

.unit-custom_orange_wrap_image p {
  font-size: 13px;
  color: #054083;
  font-weight: bold;
  text-align: left; }

/* グレー罫線 */
.unit_hr_gray {
  height: 1px;
  width: 100%;
  background-color: #ccc; }

.arw-link {
  position: relative;
  padding-right: 35px; }
  .arw-link:link, .arw-link:visited {
    color: #054083; }
    .arw-link:link::after, .arw-link:visited::after {
      content: "";
      position: absolute;
      right: 10px;
      display: inline-block;
      background-image: url("https://morimori.net//themes/morimoto/img/arw-right-bl.svg");
      background-repeat: no-repeat;
      background-position: center center;
      width: 16px;
      height: 16px;
      margin-left: 0.5rem;
      margin-right: 0.5rem;
      top: 50%;
      transform: translateY(-50%);
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%); }
  .arw-link:active, .arw-link:hover {
    color: #0071BF; }
    .arw-link:active::after, .arw-link:hover::after {
      background-image: url("https://morimori.net//themes/morimoto/img/arw-right-bl-hover.svg"); }

.badge {
  padding: 0.5rem !important; }

a.badge:link, a.badge:visited,
a.nav-link:link,
a.nav-link:visited {
  color: #333; }

a.badge:active, a.badge:hover,
a.nav-link:active,
a.nav-link:hover {
  color: #404040; }

a.badge[href*=our-hometown],
a.nav-link[href*=our-hometown] {
  background-color: #FFF4C5 !important; }

a.badge[href*=peace],
a.nav-link[href*=peace] {
  background-color: #FEDCC0 !important; }

a.badge[href*=life],
a.nav-link[href*=life] {
  background-color: #BFDBEF !important; }

a.badge[href*=dairy],
a.nav-link[href*=dairy] {
  background-color: #D9E2EC !important; }

a.badge[href*=others],
a.nav-link[href*=others] {
  background-color: #F2F2F2 !important; }

.module_index_summary a.badge[href*=news],
.module_index_summary a.nav-link[href*=news] {
  background-color: #D9E2EC !important; }

.module-card-list .badge {
  color: #333333;
  padding: 7px 10px;
  border-radius: 3px; }
  .module-card-list .badge:hover {
    color: #666666; }

.navbar {
  border-top: 4px #0071BF solid;
  z-index: 100; }
  .navbar li > a {
    color: inherit;
    font-weight: bold; }
    .navbar li > a:hover {
      color: #0071BF; }
  .navbar .fab {
    font-weight: normal !important; }
  .navbar .contact .tel {
    color: #0071BF;
    font-size: 25px;
    font-weight: bold;
    letter-spacing: 0.75px; }
  .navbar .navbar-nav {
    position: relative; }
  .navbar .navbar-nav ul {
    　opacity: 0;
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 100%;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
    visibility: hidden;
    transform: translateY(-10px);
    display: inline-block;
    background-color: white; }
  .navbar .navbar-nav:hover ul:only-child {
    opacity: 1;
    visibility: visible;
    transform: translateY(0px);
    transition: opacity 0.2s, visibility 0.2s, transform 0.2s;
    position: absolute;
    z-index: 10000; }

@media (max-width: 767px) {
  .navbar-collapse {
    text-align: center; }
    .navbar-collapse .contact {
      padding: 1rem 0; } }

@media (max-width: 767px) {
  .navbar-brand {
    width: 165px; } }

.breadcrumb {
  background-color: #FFF4C5 !important;
  margin-bottom: 0; }
  @media (max-width: 767px) {
    .breadcrumb {
      font-size: 70%; } }
  .breadcrumb a:link, .breadcrumb a:visited {
    color: #333; }
  .breadcrumb a:active, .breadcrumb a:hover {
    color: #404040; }
  .breadcrumb .breadcrumb-item {
    position: relative; }
  .breadcrumb .breadcrumb-item + .breadcrumb-item::before {
    content: url("/themes/morimoto//img/arw-right-breadcrumb.svg");
    display: inline-block;
    width: 16px;
    height: 16px; }

#sidebar {
  padding-top: 2rem;
  padding-bottom: 2rem; }
  #sidebar h3 {
    font-size: 24px;
    color: #333333;
    margin: 1rem 0; }
  #sidebar .badge {
    margin-bottom: .5rem; }
  #sidebar .entry_summary .row {
    border-bottom: 1px #BFBFBF solid; }
  #sidebar .entry_summary h4 {
    font-size: 15px;
    line-height: 1.5; }

ol, ul {
  font-size: 15px;
  padding: 0;
  list-style-position: inside; }
  ol li, ul li {
    line-height: 2.0em; }

.entry-body ol {
  counter-reset: number;
  /*数字をリセット*/
  list-style-type: none !important;
  padding: 0; }
  .entry-body ol li {
    position: relative;
    padding-left: 1.4em; }
    .entry-body ol li::before {
      counter-increment: number;
      content: counter(number) ".";
      position: absolute;
      color: #fd7505;
      font-weight: bold;
      left: 0;
      font-size: 1.0em;
      /*フォントサイズ*/ }

.entry-body ul {
  list-style-type: none !important; }
  .entry-body ul li {
    position: relative;
    padding-left: 1.4em; }
    .entry-body ul li::before {
      content: "●";
      position: absolute;
      color: #fd7505;
      font-weight: bold;
      left: 0;
      font-size: 1.3em;
      /*フォントサイズ*/ }

.cat_list ul {
  list-style: none; }
  .cat_list ul li {
    list-style: none; }
    .cat_list ul li:before {
      content: none; }
    @media (max-width: 767px) {
      .cat_list ul li {
        padding-bottom: .5rem; } }
    .cat_list ul li a {
      -webkit-border-radius: 3px;
      -moz-border-radius: 3px;
      -ms-border-radius: 3px;
      border-radius: 3px; }
      @media (max-width: 767px) {
        .cat_list ul li a {
          padding: 0.1rem 0.5rem; } }
      .cat_list ul li a:link, .cat_list ul li a:visited {
        background-color: #D9E2EC;
        color: #333333; }
      .cat_list ul li a:active, .cat_list ul li a:hover {
        background-color: #eaeff5;
        color: #404040; }

.pager {
  text-align: center;
  margin: 1rem 0; }
  .pager .btn-outline-primary {
    padding: .5rem 1rem; }
  .pager li::before {
    content: none !important; }
  .pager span {
    color: #054083;
    letter-spacing: 0.3rem; }
  .pager a, .pager span {
    margin-right: 1rem; }
  .pager a:last-child {
    margin: 0; }

main.entry-body {
  white-space: normal;
  word-break: break-all; }
  main.entry-body h2 {
    color: #054083;
    text-align: center;
    position: relative;
    margin-bottom: 2.6rem; }
    main.entry-body h2::after {
      content: '';
      position: absolute;
      bottom: -15px;
      display: inline-block;
      width: 60px;
      height: 6px;
      left: 50%;
      -webkit-transform: translateX(-50%);
      transform: translateX(-50%);
      background-color: #FFD418;
      border-radius: 2px; }
  main.entry-body h3 {
    line-height: 2.0; }

.entry-header {
  margin-bottom: 2rem;
  border-bottom: 1px #BFBFBF solid; }
  .entry-header h1 {
    border-bottom: 6px #FFD418 solid;
    font-size: 32px;
    color: #054083;
    line-height: 1.6;
    margin-top: .5rem; }
    @media (max-width: 767px) {
      .entry-header h1 {
        font-size: 24px; } }
  .entry-header .entry-meta {
    padding: 1rem 0; }

.author img {
  width: 50px;
  height: 50px; }

.btn-outline-primary {
  color: #054083;
  border-color: #054083;
  position: relative;
  padding: 18px 20px; }
  .btn-outline-primary:link, .btn-outline-primary:visited {
    color: #054083; }
  .btn-outline-primary:active, .btn-outline-primary:hover {
    color: #4094CF;
    border-color: #4094CF;
    background-color: white; }
  .btn-outline-primary.arw-r:link, .btn-outline-primary.arw-r:visited {
    padding-right: 3rem; }
    .btn-outline-primary.arw-r:link::after, .btn-outline-primary.arw-r:visited::after {
      content: "";
      position: absolute;
      right: 10px;
      display: inline-block;
      background-image: url("https://morimori.net//themes/morimoto/img/arw-right-bl.svg");
      background-repeat: no-repeat;
      background-position: center center;
      width: 16px;
      height: 16px;
      margin-left: 0.5rem;
      margin-right: 0.5rem;
      top: 50%;
      transform: translateY(-50%);
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%); }
  .btn-outline-primary.arw-r:active, .btn-outline-primary.arw-r:hover {
    background-color: transparent; }
    .btn-outline-primary.arw-r:active::after, .btn-outline-primary.arw-r:hover::after {
      background-image: url("https://morimori.net//themes/morimoto/img/arw-right-bl-hover.svg"); }
  .btn-outline-primary.arw-l:link, .btn-outline-primary.arw-l:visited {
    padding-left: 3rem; }
    .btn-outline-primary.arw-l:link::before, .btn-outline-primary.arw-l:visited::before {
      content: "";
      position: absolute;
      left: 10px;
      display: inline-block;
      background-image: url("https://morimori.net//themes/morimoto/img/arw-left-bl.svg");
      background-repeat: no-repeat;
      background-position: center center;
      width: 16px;
      height: 16px;
      margin-left: 0.5rem;
      margin-right: 0.5rem;
      top: 50%;
      transform: translateY(-50%);
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%); }
  .btn-outline-primary.arw-l:active, .btn-outline-primary.arw-l:hover {
    background-color: transparent; }
    .btn-outline-primary.arw-l:active::before, .btn-outline-primary.arw-l:hover::before {
      background-image: url("https://morimori.net/themes/morimoto/img/arw-left-bl-hover.svg"); }

.btn-primary {
  color: #fff;
  background-color: #0071BF;
  border-color: #0071BF; }
  .btn-primary:hover {
    background-color: #4094CF;
    border-color: #4094CF; }

.btn-warning {
  color: #fff;
  background-color: #fd7505;
  border-color: #fd7505; }
  .btn-warning:hover {
    background-color: #fd9743;
    border-color: #fd9743; }

.link {
  position: relative;
  padding-right: 14px;
  color: #054083; }
  .link:after {
    position: absolute;
    content: "";
    background-image: url("../img/arw-right-default.svg");
    top: 50%;
    right: 0px;
    width: 10px;
    height: 10px;
    margin-top: -5px; }
  .link:hover {
    color: #4094CF; }
    .link:hover:after {
      background-image: url("../img/arw-right-hover.svg"); }

#mainNav .navbar-brand {
  width: 295px;
  @media (width <= 1199px) {
    width: 140px; } }

#mainNav .navbar-collapse {
  @media (width <= 1199px) {
    text-align: center; } }

header.masthead {
  position: relative;
  background-color: #343a40;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  height: 580px;
  border-bottom: 8px #FFD418 solid; }
  @media (max-width: 767px) {
    header.masthead {
      height: 180px !important; }
      header.masthead .swiper-slide {
        height: 180px !important;
        background-position: center -5px !important;
        background-size: 150% !important; } }
  header.masthead.swiper-container {
    padding: 0 !important; }
    header.masthead.swiper-container .swiper-slide {
      padding-top: 12rem;
      padding-bottom: 12rem;
      background-repeat: no-repeat;
      background-size: cover;
      background-position: center center; }
  header.masthead .swiper-button-prev:after,
  header.masthead .swiper-button-next:after {
    color: rgba(255, 255, 255, 0.4); }
  header.masthead .swiper-pagination-bullet-active {
    background-color: #FFD418; }
  header.masthead .overlay {
    position: absolute;
    background-color: #212529;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    opacity: 0.3; }
  header.masthead h1 {
    font-size: 2rem; }
  @media (min-width: 768px) {
    header.masthead {
      padding-top: 12rem;
      padding-bottom: 12rem; }
      header.masthead h1 {
        font-size: 3rem; } }

.masthead-tab {
  background-color: #FFF4C5 !important; }
  .masthead-tab h1 {
    margin-bottom: 0; }
    .masthead-tab h1 span {
      display: inline-block;
      color: #054083;
      font-size: 24px;
      background-color: white;
      padding: 1rem 2rem;
      margin-bottom: 0; }
      @media (max-width: 767px) {
        .masthead-tab h1 span {
          font-size: 0.8rem; } }
    .masthead-tab h1:after {
      transform: translateY(20px);
      content: "";
      display: inline-block;
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 60px 0 0 60px;
      border-color: transparent transparent transparent #FFD418; }
      @media (max-width: 767px) {
        .masthead-tab h1:after {
          border-width: 50px 0 0 50px; } }

.showcase .showcase-text {
  padding: 3rem; }

.showcase .showcase-img {
  min-height: 30rem;
  background-size: cover; }

@media (min-width: 768px) {
  .showcase .showcase-text {
    padding: 7rem; } }

.features-icons {
  padding-top: 7rem;
  padding-bottom: 7rem; }
  .features-icons .features-icons-item {
    max-width: 20rem; }
    .features-icons .features-icons-item .features-icons-icon {
      height: 7rem; }
      .features-icons .features-icons-item .features-icons-icon i {
        font-size: 4.5rem; }
    .features-icons .features-icons-item:hover .features-icons-icon i {
      font-size: 5rem; }

.column-video-auto.mx-auto {
  width: 60%; }
  @media (max-width: 767px) {
    .column-video-auto.mx-auto {
      width: 100%; } }

.sns-share {
  padding: 10px; }
  .sns-share li {
    position: relative;
    padding-left: 0 !important;
    margin-right: 1rem; }
    @media (max-width: 767px) {
      .sns-share li {
        margin-right: .5rem; } }
    .sns-share li:before {
      content: none !important; }
    .sns-share li a {
      padding: 0.5rem 1rem 0.5rem 2rem;
      position: relative;
      display: inline-block; }
      @media (max-width: 767px) {
        .sns-share li a {
          padding: 0.1rem 0.5rem 0.1rem 2rem;
          font-size: 11px; } }
      .sns-share li a.twitter {
        background-color: #00ACED;
        color: white;
        -webkit-border-radius: 3px;
        -moz-border-radius: 3px;
        -ms-border-radius: 3px;
        border-radius: 3px; }
        .sns-share li a.twitter::before {
          content: "";
          position: absolute;
          top: 50%;
          left: 10px;
          width: 16px;
          height: 16px;
          margin-top: -8px;
          background: url("https://morimori.net/themes/morimoto/img/ico-mini-twitter.svg") no-repeat center center; }
      .sns-share li a.facebook {
        background-color: #305097;
        color: white;
        -webkit-border-radius: 3px;
        -moz-border-radius: 3px;
        -ms-border-radius: 3px;
        border-radius: 3px; }
        .sns-share li a.facebook::before {
          content: "";
          position: absolute;
          top: 50%;
          left: 10px;
          width: 16px;
          height: 16px;
          margin-top: -8px;
          background: url("https://morimori.net/themes/morimoto/img/ico-mini-facebook.svg") no-repeat center center; }
        .sns-share li a.facebook.like::before {
          background: url("https://morimori.net/themes/morimoto/img/ico-mini-facebooklike.svg") no-repeat center center; }

.testimonials {
  padding-top: 7rem;
  padding-bottom: 7rem; }
  .testimonials .testimonial-item {
    max-width: 18rem; }
    .testimonials .testimonial-item img {
      max-width: 12rem;
      box-shadow: 0px 5px 5px 0px #adb5bd; }

.call-to-action {
  position: relative;
  background-color: #343a40;
  background: url("../img/bg-wide-bnr.png") no-repeat center center;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  padding-top: 7rem;
  padding-bottom: 7rem; }
  .call-to-action .overlay {
    position: absolute;
    background-color: #212529;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    opacity: 0.3; }

input.form-control, textarea.form-control {
  background-color: #FFFBE8 !important; }

.validator-result-0 {
  background-color: #FEDCC0;
  color: #333;
  padding: .7rem;
  margin-top: .5rem;
  margin-bottom: .5rem;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  border-radius: 4px; }
  .validator-result-0 p {
    margin: 0; }

.notice {
  color: #FD7505; }

footer.footer {
  background-color: #054083;
  padding-top: 4rem;
  padding-bottom: 4rem; }
  footer.footer h2 {
    font-weight: bold; }
  footer.footer a {
    color: white; }
  footer.footer .contact .tel {
    font-size: 25px;
    font-weight: bold;
    letter-spacing: 0.75px; }
  footer.footer .footer-links li {
    position: relative;
    list-style: none;
    padding-left: 16px; }
    footer.footer .footer-links li::before {
      content: "";
      width: 16px;
      height: 16px;
      position: absolute;
      left: 0;
      top: 25%;
      background-image: url("https://morimori.net/themes/morimoto/img/arw-right-wh.svg");
      background-repeat: no-repeat;
      background-position: left center; }
    @media (max-width: 767px) {
      footer.footer .footer-links li::before {
        left: auto;
        transform: translateX(-16px); } }

.copyright li {
  position: relative;
  list-style: none;
  padding-left: 16px; }
  .copyright li::before {
    content: "";
    width: 16px;
    height: 16px;
    position: absolute;
    left: 0;
    top: 25%;
    background-image: url("https://morimori.net/themes/morimoto/img/arw-right-wh.svg");
    background-repeat: no-repeat;
    background-position: left center; }

/* z-index */
.z-1 {
  z-index: 1;
}