@charset "UTF-8";
/*
 Theme Name:   UnderStrap Child
 Theme URI:    https://www.understrap.com
 Description:  UnderStrap Child Theme
 Author:       Holger Koenemann
 Author URI:   http://www.holgerkoenemann.de
 Template:     understrap
 Version:      0.5.3
 License: GNU General Public License v2 or later
 License URI: http://www.gnu.org/licenses/gpl-2.0.html
 Text Domain:  understrap-child
 Tags: one-column, custom-menu, featured-images, theme-options, translation-ready
 GitHub Theme URI: holger1411/understrap-child
*/
/*色定義*/
/*初期設定*/
html {
  font-size: 16px;
  color: #000000;
  line-height: 1.45rem;
  font-feature-settings: palt;
}

body {
  overflow-x: hidden;
}

body,
input,
textarea {
  font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
}

a {
  text-decoration: none;
  color: #000000;
}

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

/*トップスライダー*/
.slide_back {
  background-image: none;
  background-size: contain;
  background-position: top center;
  background-repeat: repeat-x;
  background-color: #fff;
  margin: 0;
  padding: 0;
  position: relative;
}

.slick-slide img {
  width: 100%;
}

.slick-current img {
  width: 100%;
}

/* エントリー基本 */
.entry-header h1.entry-title {
  font-size: 1.875rem;
  line-height: 2.5rem;
  color: #720E0E;
  position: relative;
  padding: 1rem 0 1rem 60px;
  margin: 0 0 20px 0;
}

.entry-header h1.entry-title::before {
  content: "　";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #F25757;
  background-image: url(/data/wp-content/uploads/2019/07/triangle1.png);
  background-repeat: no-repeat;
  background-position: bottom center;
  width: 50px;
  height: 100%;
}

.entry-header h1.entry-title span.sub_title:before {
  content: "\A";
  white-space: pre;
}

.entry-header .entry-meta .posted-on {
  display: none;
}

.entry-header .entry-meta .byline {
  display: none;
}

.entry-content {
  /*ブロック*/
  /*見出し*/
  /*インライン*/
  /*引用*/
  /*テーブル*/
  /*定義リスト*/
  /*非順序リスト*/
  /*順序リスト*/
  /*住所*/
  /*アンカー*/
  /*略語や頭字語*/
  /* タイトル引用 */
  /*コード*/
  /*ボタン*/
  /*フォーム*/
  /*無料相談会*/
  /*うえまちバックナンバー*/
}

.entry-content .wp-block-image.img_left_border img {
  border-left: #F25757 10px solid;
}

.entry-content h1 {
  font-size: 1.875rem;
  line-height: 2.5rem;
  color: #720E0E;
  position: relative;
  padding: 1rem 0 1rem 60px;
  margin: 0 0 20px 0;
}

.entry-content h1::before {
  content: "　";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #F25757;
  background-image: url(/data/wp-content/uploads/2019/07/triangle1.png);
  background-repeat: no-repeat;
  background-position: bottom center;
  width: 50px;
  height: 100%;
}

.entry-content h2 {
  font-size: 1.5rem;
  line-height: 1.875rem;
  color: #F25757;
  position: relative;
  padding: 1rem 0 1rem 30px;
  margin: 0 30px 20px 30px;
}

.entry-content h2::before {
  content: "　";
  display: block;
  position: absolute;
  background-color: #F25757;
  top: 0;
  left: 0;
  width: 20px;
  height: 100%;
}

.entry-content h3 {
  font-size: 1.24rem;
  line-height: 1.5rem;
  color: #F25757;
  position: relative;
  padding: 1rem 0 1rem 40px;
  margin: 0 30px 20px 30px;
}

.entry-content h3::before {
  content: "　";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background-image: url(/data/wp-content/uploads/2019/07/h3-back2.png), url(/data/wp-content/uploads/2019/07/h3-back1.png);
  background-repeat: no-repeat;
  background-position: center left, center right;
  background-size: 20px 100%, auto;
  width: 30px;
  height: 100%;
}

.entry-content h4 {
  font-size: 1rem;
  line-height: 1.24rem;
  color: #333;
  position: relative;
  padding: .5rem 0 .5rem 30px;
  margin: 0 40px 20px 40px;
}

.entry-content h4::before {
  content: "　";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #918B8A;
  width: 20px;
  height: 100%;
}

.entry-content h5 {
  font-size: 1rem;
  line-height: 1.24rem;
  color: #333;
  position: relative;
  padding: .5rem 0 .5rem 30px;
  margin: 0 40px 20px 40px;
}

.entry-content h5::before {
  content: "　";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  border: 2px #F25757 solid;
  width: 20px;
  height: 100%;
}

.entry-content h6 {
  font-size: 1rem;
  line-height: 1.24rem;
  color: #918B8A;
  position: relative;
  padding: .5rem 0 .5rem 30px;
  margin: 0 40px 20px 40px;
}

.entry-content h6::before {
  content: "　";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  border: 2px #918B8A solid;
  width: 20px;
  height: 100%;
}

.entry-content > p {
  font-size: 1rem;
  padding: 0 60px;
}

.entry-content em {
  font-size: 1rem;
}

.entry-content strong {
  font-size: 1em;
  color: #C81E15;
}

.entry-content blockquote {
  font-size: 1rem;
  margin: 0 60px 30px;
}

.entry-content > table {
  margin: 0 60px 30px;
}

.entry-content > table thead tr th {
  font-size: 1rem;
}

.entry-content > table tbody tr td {
  font-size: 1rem;
}

.entry-content > dl {
  margin: 0 60px 30px;
}

.entry-content > dl dt {
  font-size: 1rem;
}

.entry-content > dl dd {
  font-size: 1rem;
}

.entry-content > ul {
  margin: 0 60px 30px;
  list-style: none;
}

.entry-content > ul li {
  font-size: 1rem;
}

.entry-content > ol {
  margin: 0 60px 30px;
}

.entry-content > ol li {
  font-size: 1rem;
}

.entry-content address {
  font-size: 1rem;
}

.entry-content a:hover {
  font-size: 1rem;
}

.entry-content a:active {
  font-size: 1rem;
}

.entry-content abbr {
  font-size: 1rem;
}

.entry-content cite {
  font-size: 1rem;
}

.entry-content code {
  font-size: 1rem;
}

.entry-content .wp-bootstrap-blocks-row {
  margin: 0 45px 30px;
}

.entry-content .but_inline_link a {
  margin: 0;
  padding: 0;
  text-align: center;
  line-height: 1em;
  display: inline-block;
  position: relative;
  width: 160px;
  height: 50px;
  color: white;
  font-size: .75rem;
  letter-spacing: 0;
  text-decoration: none;
  background: #F25757;
  animation: grad 5s infinite;
  text-align: center;
  line-height: 3rem;
}

.entry-content .but_inline_link a:hover, .entry-content .but_inline_link a:active, .entry-content .but_inline_link a:visited {
  color: white;
  font-size: .75rem;
}

.entry-content .but_inline_link a::before {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  content: "▶";
  font-size: .9rem;
}

.entry-content .mw_wp_form form .form-group > label {
  color: #F25757;
  margin-bottom: .5em;
  margin-top: 1.5rem;
}

.entry-content .mw_wp_form form .form-group > label.first-label {
  margin-top: 0;
}

.entry-content .mw_wp_form form .form-group .mwform-radio-field {
  padding-left: 2rem;
}

.entry-content .mw_wp_form form p {
  text-align: center;
}

.entry-content .mw_wp_form form p .form-btn {
  background-color: #F25757;
  border: none;
  color: white;
  font-size: 1.25rem;
  line-height: 1em;
  padding: 1rem;
  text-align: center;
}

.entry-content .soudankai_title {
  font-size: 1.25rem;
  color: #C81E15;
}

.entry-content .uemachi_thumb {
  border: 1px solid #F25757;
}

.entry-content .uemachi-post-title {
  text-align: center;
}

.entry-content .uemachi-post-title a {
  font-size: 1.5rem;
  line-height: 1em;
  color: #C81E15;
}

.entry-content .uemachi-post-title a:hover, .entry-content .uemachi-post-title a:active, .entry-content .uemachi-post-title a:visited {
  font-size: 1.5rem;
  line-height: 1em;
  color: #F25757;
}

.entry-content .uemachi_guide p {
  margin-bottom: 0.5rem;
}

.entry-content .uemachi_guide p a {
  display: block;
  width: 100%;
  padding: 1rem;
  border: #F25757 1px solid;
  color: #F25757;
}

.entry-content .uemachi_guide p a:hover {
  background-color: #F25757;
  color: white;
}

.entry-content .uemachi_guide .row p.uemachi_thumb a {
  border: none;
}

.entry-content .uemachi_guide .row p.uemachi_thumb a:hover {
  background-color: transparent;
}

.entry-content .uemachi_guide .row p.uemachi-post-title a {
  width: 100%;
  padding: 0;
  border: none;
  font-size: 1rem;
}

.entry-content .uemachi_guide .row p.uemachi-post-title a:hover {
  background-color: transparent;
  color: #F25757;
}

.entry-content h5.uemachi_ad {
  font-size: 1rem;
  line-height: 1.24rem;
  color: #333;
  position: relative;
  padding: .5rem 0 .5rem 30px;
  margin: 0 60px 20px 60px;
  border: #F25757 1px solid;
  color: #F25757;
}

.entry-content h5.uemachi_ad::before {
  content: "　";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  border: none;
  width: 20px;
  height: 100%;
}

.entry-content table.uemachi_guide {
  margin: 0 auto 20px;
}

.entry-content table.uemachi_guide tbody tr td {
  padding: 0.5rem 2rem;
  text-align: center;
}

/*ページトップリンク*/
a.link-but-v {
  display: block;
  width: 40px;
  height: 100px;
  color: white;
  font-size: .75rem;
  letter-spacing: .2rem;
  text-decoration: none;
  background: #F25757;
  animation: grad 5s infinite;
  text-align: center;
  line-height: 2.5rem;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}

a.link-but-v:hover, a.link-but-v:active, a.link-but-v:visited {
  color: white;
}

a.link-but-v.page_top {
  position: fixed;
  bottom: 0;
  right: 4%;
}

a.link-but-v.page_top::before {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  content: "▲";
  font-size: .9rem;
}

a.link-but-v.start-scroll {
  position: absolute;
  bottom: -1.8rem;
  right: 4%;
}

a.link-but-v.start-scroll::before {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  content: "▼";
  font-size: .9rem;
}

a.link-but {
  display: block;
  width: 150px;
  height: 50px;
  color: white;
  font-size: .75rem;
  letter-spacing: .2rem;
  text-decoration: none;
  background: #F25757;
  animation: grad 5s infinite;
  text-align: center;
  line-height: 3rem;
}

a.link-but:hover, a.link-but:active, a.link-but:visited {
  color: white;
  font-size: .75rem;
}

a.link-but.content-link {
  position: absolute;
  bottom: 5%;
  right: 0;
}

a.link-but.content-link::before {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  content: "▶";
  font-size: .9rem;
}

@keyframes grad {
  0% {
    background-color: #F25757;
  }
  50% {
    background-color: #C81E15;
  }
  100% {
    background-color: #F25757;
  }
}

@keyframes attent {
  0% {
    background-color: white;
    color: #C81E15;
  }
  50% {
    background-color: #F25757;
    color: white;
  }
  100% {
    background-color: white;
    color: #C81E15;
  }
}

/*ヘッダー*/
#wrapper-navbar {
  height: 80px;
}

#wrapper-navbar nav.bg-primary {
  background-color: white !important;
}

#wrapper-navbar nav.navbar {
  padding: 0 1rem;
}

#wrapper-navbar nav.navbar > .container {
  height: 100%;
}

#wrapper-navbar nav a.navbar-brand {
  color: #C81E15;
}

#wrapper-navbar nav button.navbar-toggler {
  padding: .25rem .75rem;
  font-size: 1.25rem;
  line-height: 1;
  background-color: #F25757;
  /*border: 10px solid transparent;
                border-radius: .25rem;*/
}

#wrapper-navbar nav #navbarNavDropdown {
  z-index: 999;
}

#wrapper-navbar nav #navbarNavDropdown ul {
  padding: 1rem 0;
}

#wrapper-navbar nav #navbarNavDropdown ul#main-menu {
  flex-wrap: wrap;
}

#wrapper-navbar nav #navbarNavDropdown ul#main-menu li {
  text-align: center;
}

#wrapper-navbar nav #navbarNavDropdown ul#main-menu li a {
  font-size: 0.75rem;
  line-height: 1em;
  color: #000000;
}

#wrapper-navbar nav #navbarNavDropdown ul#main-menu li ul {
  background-color: rgba(255, 255, 255, 0.8);
}

#wrapper-navbar nav #navbarNavDropdown ul#main-menu li ul li a {
  padding: 0.5rem;
}

#wrapper-navbar nav #navbarNavDropdown ul#main-menu li ul li a:hover {
  background-color: #F25757;
}

/*フッター*/
#wrapper-footer {
  padding: 0;
}

#wrapper-footer .container-fluid {
  padding: 0;
}

#wrapper-footer .footer_logo {
  margin-top: 2rem;
  margin-bottom: 1.8rem;
  text-align: center;
}

#wrapper-footer .menu-foot_navi-container ul#menu-foot_navi.menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  padding-bottom: 1.8rem;
  padding-top: 1.8rem;
  list-style: none;
  border-top: #C81E15 solid 1px;
}

#wrapper-footer .menu-foot_navi-container ul#menu-foot_navi.menu li {
  display: list-item;
  text-align: -webkit-match-parent;
  padding: 0 .9rem;
}

#wrapper-footer .menu-foot_navi-container ul#menu-foot_navi.menu li a {
  font-size: .75rem;
}

.site-footer {
  padding: 1.8rem 0;
  background-image: url(/data/wp-content/uploads/2019/07/back_pattern.png);
}

.site-footer .site-info {
  font-size: .6rem;
  text-align: center;
  line-height: .75rem;
}

/*トップページ*/
.home .entry-header h1 {
  display: none;
}

.home .entry-content .wp-block-columns.has-2-columns {
  margin: 0 0 2rem;
}

.home .entry-content .wp-block-columns.has-2-columns .wp-block-column .wp-block-image {
  position: relative;
}

.home .entry-content .wp-block-columns.has-2-columns .wp-block-column .wp-block-image.sub_banner {
  margin-bottom: 2.1rem;
}

.home .entry-content .wp-block-columns.has-2-columns .wp-block-column .wp-block-image figcaption a {
  position: absolute;
  bottom: 0;
  right: 0;
  font-size: .9rem;
  color: #C81E15;
  line-height: .9rem;
  padding: .5rem 1rem .5rem .6rem;
  border: #F25757 1px solid;
  background-color: white;
  animation: attent 5s infinite;
}

.home .entry-content .wp-block-columns.has-2-columns .wp-block-column .wp-block-image figcaption a::before {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  content: "▶";
  font-size: .9rem;
}

.home .entry-content h2 {
  color: #720E0E;
  font-size: 1.5rem;
  position: relative;
  padding-left: 1rem;
  padding-top: 1rem;
  margin: 0 0 1rem 0;
}

.home .entry-content h2::before {
  content: "";
  display: block;
  background-image: url(/data/wp-content/uploads/2019/07/back_pattern.png);
  width: 3.5rem;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

.home .entry-content h2.home-h2-right {
  text-align: right;
  padding-left: 0;
  padding-right: 3.6rem;
}

.home .entry-content h2.home-h2-right::before {
  content: "";
  display: block;
  background-image: url(/data/wp-content/uploads/2019/07/back_pattern.png);
  width: 12.5rem;
  height: 12.5rem;
  position: absolute;
  top: 0;
  left: auto;
  right: 0;
  z-index: -1;
}

.home .entry-content ul {
  margin: 0 3.6rem 1.8rem;
  padding: 0;
}

.home .entry-content .home-content-lg {
  position: relative;
  margin-bottom: 1.8rem;
}

.home .entry-content .home-content-lg img {
  width: 93%;
}

.home .entry-content .home-content-md {
  position: relative;
  margin-bottom: 1.8rem;
  margin-left: auto;
  margin-right: auto;
  width: 55%;
}

.home .entry-content .home-content-md img {
  width: 90%;
}

.home .entry-content .home-content-sm {
  position: relative;
  margin-bottom: 1.8rem;
  margin-left: 0;
  margin-right: 0;
  width: 100%;
}

.home .entry-content .home-content-sm img {
  width: 80%;
}

/*最新記事*/
ul.latest-post {
  list-style: none;
}

ul.latest-post li {
  margin-bottom: 1rem;
}

ul.latest-post li p.latest-post-title {
  font-size: 16px;
  line-height: 1.1em;
  margin: 0 0 4px 0 !important;
}

ul.latest-post li p.latest-post-title a {
  text-decoration: none;
}

ul.latest-post li p.latest-post-info {
  font-size: 12px;
  line-height: 1em;
  margin: 0 0 10px 0;
}

ul.latest-post li p.latest-post-info.latest-post-cat::before {
  font-family: FontAwesome;
  content: "";
  padding-right: 4px;
  color: #C81E15;
}

ul.latest-post li p.latest-post-info.latest-post-date::before {
  font-family: FontAwesome;
  content: "";
  padding-right: 4px;
  color: #C81E15;
}

.iframe-wrap {
  text-align: center;
}

.iframe-wrap iframe {
  width: 100%;
}

/*メディアクエリ*/
/*xs(not-prefix)*/
@media (max-width: 575.98px) {
  .menu-foot_navi-container ul#menu-foot_navi.menu {
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .menu-foot_navi-container ul#menu-foot_navi.menu li {
    text-align: center;
  }
  #navbarNavDropdown ul {
    background: rgba(255, 255, 255, 0.8);
  }
  .entry-content {
    /*ブロック*/
    /*フォーム*/
    /*Facebookページ*/
  }
  .entry-content > .wp-block-columns {
    margin: 0 30px 30px;
  }
  .entry-content .mw_wp_form {
    margin: 0 30px 30px;
  }
  .entry-content .mw_wp_form p .form-btn {
    width: 100%;
  }
  .entry-content .iframe-wrap {
    text-align: center;
  }
  .entry-content .iframe-wrap iframe {
    width: 100%;
  }
}

/*sm*/
@media (min-width: 576px) and (max-width: 767.98px) {
  .menu-foot_navi-container ul#menu-foot_navi.menu {
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .menu-foot_navi-container ul#menu-foot_navi.menu li {
    text-align: center;
  }
  #navbarNavDropdown ul {
    background: rgba(255, 255, 255, 0.8);
  }
  .entry-content {
    /*ブロック*/
    /*フォーム*/
    /*Facebookページ*/
  }
  .entry-content > .wp-block-columns {
    margin: 0 60px 30px;
  }
  .entry-content .wp-block-column:nth-child(odd) {
    margin-right: 15px;
  }
  .entry-content .wp-block-column:nth-child(even) {
    margin-left: 15px;
  }
  .entry-content .wp-block-column:not(:first-child) {
    margin-left: 15px;
  }
  .entry-content .wp-block-column:not(:last-child) {
    margin-right: 15px;
  }
  .entry-content .mw_wp_form {
    margin: 0 60px 30px;
  }
  .entry-content .mw_wp_form p .form-btn {
    width: 100%;
  }
  .entry-content .iframe-wrap {
    text-align: center;
  }
  .entry-content .iframe-wrap iframe {
    width: 500px;
  }
}

/*md*/
@media (min-width: 768px) and (max-width: 991.98px) {
  .menu-foot_navi-container ul#menu-foot_navi.menu {
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .menu-foot_navi-container ul#menu-foot_navi.menu li {
    text-align: center;
  }
  .entry-content {
    /*ブロック*/
    /*フォーム*/
    /*Facebookページ*/
  }
  .entry-content > .wp-block-columns {
    margin: 0 60px 30px;
  }
  .entry-content .wp-block-column:nth-child(odd) {
    margin-right: 15px;
  }
  .entry-content .wp-block-column:nth-child(even) {
    margin-left: 15px;
  }
  .entry-content .wp-block-column:not(:first-child) {
    margin-left: 15px;
  }
  .entry-content .wp-block-column:not(:last-child) {
    margin-right: 15px;
  }
  .entry-content .mw_wp_form {
    margin: 0 60px 30px;
  }
  .entry-content .mw_wp_form p .form-btn {
    width: 100%;
  }
  .entry-content .iframe-wrap {
    text-align: center;
  }
  .entry-content .iframe-wrap iframe {
    width: 500px;
  }
}

/*lg*/
@media (min-width: 992px) and (max-width: 1199.98px) {
  .menu-foot_navi-container ul#menu-foot_navi.menu {
    background: rgba(255, 255, 255, 0.8);
  }
  .menu-foot_navi-container ul#menu-foot_navi.menu li {
    text-align: center;
  }
  #navbarNavDropdown ul {
    background: rgba(255, 255, 255, 0);
  }
  .entry-content {
    /*ブロック*/
    /*フォーム*/
    /*Facebookページ*/
  }
  .entry-content > .wp-block-columns {
    margin: 0 60px 30px;
  }
  .entry-content .mw_wp_form {
    margin: 0 60px 30px;
  }
  .entry-content .mw_wp_form p .form-btn {
    width: 80%;
  }
  .entry-content .iframe-wrap {
    text-align: center;
  }
  .entry-content .iframe-wrap iframe {
    width: 500px;
  }
}

/*xl*/
@media (min-width: 1200px) {
  #navbarNavDropdown ul {
    background: rgba(255, 255, 255, 0);
  }
  .entry-content {
    /*ブロック*/
    /*フォーム*/
    /*Facebookページ*/
  }
  .entry-content > .wp-block-columns {
    margin: 0 60px 30px;
  }
  .entry-content .wp-block-column:nth-child(odd) {
    margin-right: 15px;
  }
  .entry-content .wp-block-column:nth-child(even) {
    margin-left: 15px;
  }
  .entry-content .wp-block-column:not(:first-child) {
    margin-left: 15px;
  }
  .entry-content .wp-block-column:not(:last-child) {
    margin-right: 15px;
  }
  .entry-content .mw_wp_form {
    margin: 0 60px 30px;
  }
  .entry-content .mw_wp_form p .form-btn {
    width: 80%;
  }
  .entry-content .iframe-wrap {
    text-align: center;
  }
  .entry-content .iframe-wrap iframe {
    width: 500px;
  }
}
