/*
Theme Name: advancehome
Description: アドバンスホーム株式会社
Author: utato create
Version: 5.0.0
 */

 /********************************************************************************
General Setting
********************************************************************************/
html { font-size: 62.5%; }

body {
    color: #555555;
    font-family: 'Source Han Sans JP', 'Noto Sans JP', sans-serif;
  	padding-bottom: 0px;
  	font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5;
}

.frame0 { border: 0px; }

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

a:hover, a:focus {
    color: #333;
    text-decoration: none;
}

hr {
    margin-top: 30px;
    margin-bottom: 30px;
    border: 0;
    border-top: 2px solid #cccccc;
    overflow: hidden;
    clear: both;
}

/**********************************
bootstrap4 hack
**********************************/
div[class*='col-'][class^='col-'] {
  float: left;
}

/**********************************
IE hack svg
**********************************/
.card-ie-fix {
  overflow: hidden;
}

/* --------------------------------
hover zoom
-------------------------------- */
.zoom {
  overflow: hidden;
}
.zoom a img {
  height: auto;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -o-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -ms-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.zoom a:hover img {
  -webkit-transform: scale(1.2);
  -moz-transform: scale(1.2);
  -o-transform: scale(1.2);
  -ms-transform: scale(1.2);
  transform: scale(1.2);
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -ms-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

/* --------------------------------
hover saturate
-------------------------------- */
.saturate a img {
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -ms-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.saturate a img:hover {
    -webkit-filter: saturate(150%);
    -moz-filter: saturate(150%);
    -o-filter: saturate(150%);
    -ms-filter: saturate(150%);
    filter: saturate(150%);
}

/* --------------------------------
hover transition all
-------------------------------- */
.transition {
  transition: all 0.5s ease-out;
	-o-transition: all 0.5s ease-out; /* opera */
	-moz-transition: all 0.5s ease-out; /* firefox */
	-webkit-transition: all 0.5s ease-out; /* chrome, safari */
	-ms-transition: all 0.5s ease-out; /* ie */
}

/* --------------------------------
block justify-center-middle
-------------------------------- */
.justify-center-middle-wrap {
  position: relative;
  padding: 0;
  background: rgba(255,255,255,1);
  transition: all 0.5s ease-out;
	-o-transition: all 0.5s ease-out; /* opera */
	-moz-transition: all 0.5s ease-out; /* firefox */
	-webkit-transition: all 0.5s ease-out; /* chrome, safari */
	-ms-transition: all 0.5s ease-out; /* ie */
}
.justify-center-middle-wrap:hover {
  background: rgba(235,230,225,1);
}
.justify-center-middle-txtbox {
  position: relative;
  padding: 0;
  margin: 1.25rem;
  border: 1px solid #5d5349;
}
.justify-center-middle-txt {
  color: #5d5349;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%); /* Safari用 */
  transform: translate(-50%, -50%);
}

.justify-center-middle-wrap:hover .justify-center-middle-txt {
  color: #3c3333;
}

.justify-center-middle-link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-indent: -9999px;
}


/********************************************************************************
typo Setting
********************************************************************************/
/* --------------------------------
headline
-------------------------------- */
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
  margin: 15px 0;
  font-size: 18px;
  font-size: 1.8rem;
  position: relative;
}

.page-content-header .content-header {
    border-bottom: 1px solid #009A8E;
    text-align: center;
    max-width: 1000px;
    margin: 0 auto;
}

.page-content-header .content-title {
    padding: 5px;
    font-size: 24px;
    font-size: 2.4rem;
    border: 1px solid #009A8E;
    display: inline-block;
    margin-bottom: -1px;
    min-width: 80%;
}

#page-content h2,
#page-content .h2,
.page-sub-content h2 {
  font-weight: normal;
  position: relative;
  color: #ffffff;
  background: #3aa176;
  padding: 1em 1em 1em 2em;
}
#page-content h2::before,
#page-content .h2::before,
.page-sub-content h2::before {
  font-family: FontAwesome;
  content: "\f068";
  position: absolute;
  left : 0.5em;
}

h2.entry-title,
.h2.entry-title {
  color: #5d5349;
  padding-bottom: 5px;
  margin: 15px auto;
  border-bottom: 2px solid #5d5349;
}

#page-content h3,
#page-content .h3,
#content-manager h3,
.page-lineup-content h3 {
    font-size: 16px;
    font-size: 1.6rem;
    position: relative;
    color: #ffffff;
    background: #009A8E;
    padding: 1em 1em 1em 1.8em;
    border-bottom: 1px solid #3aa176;
}

.page-sub-content h3 {
    font-size: 16px;
    font-size: 1.6rem;
    position: relative;
    color: #3aa176;
    background: #f5f0ea;
    padding: 1em 1em 1em 1.8em;
    border-bottom: 1px solid #3aa176;
}

.page-sub-content h3::before {
    font-family: FontAwesome;
    content: "\f068";
    position: absolute;
    left: 0.5em;
}


#page-content h5,
#page-content .h5,
.page-sub-content h5 {
  color: #5d5349;
  font-size: 16px;
  font-size: 1.6rem;
  border-left: 3px solid #faa427;
  padding-left: 15px;
}

#page-content h6,
#page-content h6,
#page-content .h6,
.page-sub-content h6 {
  color: #3aa176;
  font-size: 16px;
  font-size: 1.6rem;
  position: relative;
  padding: 0.5em 0.5em 0.5em 0em;
  background: #f5f0ea;
  padding-left:2.5em;
  text-indent:-2.5em;
}

#page-content h6:first-letter,
#page-content .h6:first-letter,
.page-sub-content h6:first-letter {
	margin-right:10px;
  color: #fff;
  background: #3aa176;
  font-size: 16px;
  font-size: 1.6rem;
  position: relative;
  padding: 0.25em 0.5em;
}
#page-content h6 + p,
#page-content .h6 + p,
.page-sub-content h6 + p {
	margin-bottom:30px;
}

em {
    font-size: 0.8em;
    line-height: 0.8em;
}

#page-content .tab-title {
  color: #ffffff;
  font-size: 16px;
  font-size: 1.6rem;
  padding: 5px 15px;
  background: #a70913;
  display: inline-block;
  margin-bottom: 0;
  border-left: none;
}

.c-block-title-serif {
    font-size: 20px;
    font-family: 'Source Han Serif JP', 'Noto Serif JP', serif;
}

.c-block-titlexl-serif {
    font-size: 24px;
    font-family: 'Source Han Serif JP', 'Noto Serif JP', serif;
}

.vertical-text {
  writing-mode: vertical-rl;
  text-orientation: upright;
}

/* --------------------------------
font-color
-------------------------------- */

.fc-black {
  color: #000000;
}
.fc-red {
  color: #CB4B4B;
}


/* --------------------------------
font-serif
-------------------------------- */
.font-serif {
  font-family: 'Source Han Serif JP', 'Noto Serif JP', serif; /* 源ノ明朝 */
}

/* --------------------------------
font-size fix
-------------------------------- */
.text-xl {
	font-size: 32px;
  font-size: 3.2rem;
	line-height: 1.5;
}

.text-l {
	font-size: 24px;
  font-size: 2.4rem;
	line-height: 1.5;
}

.text-m {
	font-size: 16px;
  font-size: 1.6rem;
	line-height: 1.5;
}

.text-s {
	font-size: 14px;
  font-size: 1.4rem;
}

.text-xs {
	font-size: 12px;
  font-size: 1.2rem;
}

/* --------------------------------
txt-hidden
-------------------------------- */
.txt-hidden {
  background-image: none;
  background-color: transparent;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
}

/* --------------------------------
** text-deco
-------------------------------- */

strong, b,
.strong {
  font-weight: bold;
}

.entry-title {
  color: #3c3333;
}

.post-meta .post-date {
  color: #333;
  border-left: 3px solid #a70913;
  font-size: 12px;
  font-size: 1.2rem;
  display: inline-block;
  padding-left: 10px;
  margin-right: 5px;
}

.post-meta .post-cat {
  display: inline-block;
}

.post-meta .post-cat a {
  color: #a70913;
  display: inline-block;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.42857143;
  text-align: center;
  font-weight: bold;
  transition: all 0.5s ease-out;
	-o-transition: all 0.5s ease-out; /* opera */
	-moz-transition: all 0.5s ease-out; /* firefox */
	-webkit-transition: all 0.5s ease-out; /* chrome, safari */
	-ms-transition: all 0.5s ease-out; /* ie */
}

.post-cat a+a::before {
  display: inline-block;
  padding-right: .8rem;
  padding-left: .5rem;
  color: #636c72;
  content: "/";
}

.xs-block {
  display: block;
}

.xs-inline {
  display: inline-block;
}


/* --------------------------------
text-rbn
-------------------------------- */
.text-rbn {
  color: #fff;
	background-color: #1d2a5a;
  display: inline-block;
  padding: 5px 15px;
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center;
  vertical-align: middle;
  background-image: none;
  border-radius: 20px;
}

.text-rbn-s {
  color: #fff;
	background-color: #3aa176;
  display: inline-block;
  padding: 5px 15px;
  font-size: 12px;
  font-size: 1.2rem;
  text-align: center;
  vertical-align: middle;
  background-image: none;
  border-radius: 3px;
}

.text-rbn-wht {
  color: #1d2a5a;
  background-color: #ffffff;
  display: inline-block;
  padding: 5px 30px;
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center;
  vertical-align: middle;
  background-image: none;
  border-radius: 20px;
}

/********************************************************************************
btn Layout
********************************************************************************/
.btn-default {
  color: #333333;
  background-color: #eee;
  border-color: transparent;
  border-radius: 0;
}
.btn-default.active, .btn-default.focus, .btn-default:active, .btn-default:focus, .btn-default:hover, .open>.dropdown-toggle.btn-default {
  color: #fff;
  background-color: #333333;
  border-color: transparent;
}
.btn-primary {
  color: #fff;
  border-color: #3aa176;
  background-color: #3aa176;
  border-radius: 0;
  border: 2px solid #3aa176;
  border-bottom: 2px solid #3a715a;
}
.btn-primary:hover {
  color: #fff;
  border-color: #FAA427;
  background-color: #FAA427;
}
/* --------------------------------
text btn
-------------------------------- */
.text-btn-s {
  color: #fff;
	background-color: #333333;
  display: inline-block;
  margin-bottom: 4px;
  padding: 1px 5px;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: normal;
  line-height: 1.42857143;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  background-image: none;
  border: 2px solid #333333;
}

.text-btn {
  color: #fff;
	background-color: #333333;
  display: inline-block;
  margin-bottom: 4px;
  padding: 15px;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
  line-height: 1.42857143;
  text-align: center;
  vertical-align: middle;
  background-image: none;
  border-radius: 5px;
}


.text-btn:hover,
.text-btn-block:hover {
  color: #fff;
  background-color: #5e5555;
}

.text-btn-red {
  color: #fff;
	background-color: #d9534f;
  display: inline-block;
  margin-bottom: 4px;
  padding: 8px 12px;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  background-image: none;
}

.text-btn-red:hover {
  color: #fff;
  background-color: #7d1e24;
}

.text-btn-yellow {
  color: #fff;
  background-color: #eaa645;
  display: inline-block;
  margin-bottom: 4px;
  padding: 15px;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  background-image: none;
  border-radius: 5px;
}

.text-btn-yellow:hover {
  color: #fff;
  background-color: #bf7b1a;
}

.text-btn-green {
  color: #ffffff;
  background-color: #4ec1a0;
  margin-bottom: 4px;
  padding: 15px;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
  white-space: nowrap;
  vertical-align: middle;
  background-image: none;
  border-radius: 5px;
}

.bdr-btn.active, .bdr-btn.focus, .bdr-btn:active, .bdr-btn:focus, .bdr-btn:hover {
  background-color: #3aa176;
  border-color: transparent;
}


/* --------------------------------
bdr button
-------------------------------- */
.bdr-btn::before {
  content:"\f138";
  text-align:center;
  margin-right:5px;
  font-family:FontAwesome;
  font-weight:lighter;
  position: relative;
  display:inline-block;
}

.bdr-btn {
  color: #020202;
	background-color: #ffffff;
  margin-bottom: 10px;
  padding: 6px 15px;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
  white-space: nowrap;
  vertical-align: middle;
  background-image: none;
  border: 2px solid #3aa176;
  min-width: 100px;
  text-align: left;
}

.bdr-btn-s {
  color: #020202;
	background-color: #ffffff;
  display: inline-block;
  margin-bottom: 5px;
  padding: 1px 5px;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  background-image: none;
  border: 2px solid #3aa176;
  text-align: left;
}

.bdr-btn.active, .bdr-btn.focus, .bdr-btn:active, .bdr-btn:focus, .bdr-btn:hover {
  color: #ffffff;
  background-color: #3aa176;
  border-color: transparent;
}

.wht-btn {
  color: #1d2a5a;
	background-color: #fff;
  border-color: #1d2a5a;
}

.wht-btn.active, .wht-btn.focus, .wht-btn:active, .wht-btn:focus, .wht-btn:hover {
  color: #1d2a5a;
	background-color: #fff;
  border-color: transparent;
}

.oval-btn {
  color: #fff;
	background-color: #1d2a5a;
  display: inline-block;
  padding: 3px 20px;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  background-image: none;
  border-radius: 20px;
}
.oval-btn:hover {
  color: #fff;
}

/* --------------------------------
submit button
-------------------------------- */
.btn-submit-on {
    color: #fff;
    padding: 5px 20px;
    text-align: center;
    font-size: 16px;
    font-size: 1.6rem;
    border-radius: 0;
    position: relative;
    min-width: 180px;
    background-color: #707070;
    -webkit-transition: none;
    -moz-transition: none;
    -o-transition: none;
    -ms-transition: none;
    transition: none;
}

.btn-submit-on.btn-estimate {
  color: #fff;
  background-color: #cc1963;
  box-shadow: 0 3px 0 #981055;
}

.btn-submit-on.btn-contact {
  color: #fff;
  background-color: #e8841b;
  box-shadow: 0 3px 0 #905416;
}

.btn-submit-on:hover {
  color: #ffffff;
  background-color: #da0000;
}

.btn-submit-off {
  color: #fff;
  background-color: #bbb;
	box-shadow: none;
}
.btn-submit-off:hover {
  color: #fff;
  cursor: default;
}

/* ---- submit btn wrap ---- */
.rowBtnWrap {
  margin-bottom: 15px;
  padding: 12px 15px 18px;
  background: url(assets/images/share/mesh-bg.gif) repeat #f0f0f0;
  border: 1px solid #cccccc;
}
.btn-submit-on .glyphicon {
  top: 3px;
}


/* --------------------------------
unordered list
-------------------------------- */
ul.checklist {
  list-style: none;
  padding-left: 0;
}
ul.checklist li {
  position: relative;
  padding: 15px 10px 15px 30px;
  border-bottom: 1px solid #1d2a5a;
}
ul.checklist li:before {
  color: #1d2a5a;
  content: "\f046";
  font-family: FontAwesome;
  position: absolute;
  top: 15px;
  left: 0;
}

/********************************************************************************
bdr layout
********************************************************************************/
.bdr-before,
.bdr-after,
.bdr-before-blue,
.bdr-after-blue,
.bdr-before-green,
.bdr-after-green,
.bdr-before-white,
.bdr-after-white {
  position: relative;
  z-index: 2;
}

.bdr-before::before,
.bdr-after::after,
.bdr-before-blue::before,
.bdr-after-blue::after,
.bdr-before-green::before,
.bdr-after-green::after,
.bdr-before-white::before,
.bdr-after-white::after {
  content: "";
  width: 100px;
  border-bottom: 3px solid #5d5349;
  display: block;
  position: relative;
  top: 50%;
  left: 50%;
  margin: 10px 0 10px -50px;
  z-index: -1;
}

.bdr-before-blue::before,
.bdr-after-blue::after {
  border-bottom: 3px solid #1d2a5a;
}

.bdr-before-green::before,
.bdr-after-green::after {
  border-bottom: 3px solid #3c763d;
}

.bdr-before-white::before,
.bdr-after-white::after {
  border-bottom: 3px solid #ffffff;
}

.bdrtop {
  border-top: 1px solid #cccccc;
}

.col-bdr-left {
  border-left: 1px solid #b2a79c;
}

.bdrbox {
  clear: both;
	width: 100%;
	display: inline-block;
  margin: 30px 0;
	padding: 15px 20px;
	margin-bottom: 15px;
	border: 10px solid #3aa176;
}

.bdrbox-gold {
  clear: both;
	width: 100%;
	display: inline-block;
	padding: 5%;
	margin-bottom: 15px;
	border: 1px solid #D9B773;
}

.bdr1box {
  clear: both;
	width: 100%;
	display: inline-block;
	border: 1px solid #3aa176;
}

.whitebox {
	width: 100%;
	display: inline-block;
	padding: 6px 12px;
	font-size: 14px;
	font-weight: normal;
	line-height: 1.42857;
	vertical-align: middle;
	background: #fff;
	border-left: 2px solid #333;
}

.flowbox {
  padding: 15px;
  border: 3px solid #e5e5e5;
  overflow: hidden;
	width: 100%;
	display: inline-block;
	margin-bottom: 0px;
	font-weight: normal;
	vertical-align: middle;
	-moz-user-select: none;
	background-image: none;
}

.flowbox-bottom {
  background: url(images/share/bdrbox-bottom.png) no-repeat center bottom #fff;
  padding: 10px 0 50px 0;
}


.arrow_bottom {
  position: relative;
  display: inline-block;
  color: #333;
  text-decoration: none;
  padding: 20px;
}
.arrow_bottom:before {
  content: '';
  width: 30px;
  height: 30px;
  border: 0;
  border-bottom: solid 3px #333;
  border-right: solid 3px #333;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
  -ms-transform: translate(-50%, -50%) rotate(45deg);
}


/********************************************************************************
table layout
********************************************************************************/

table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 30px;
  border-bottom: 1px solid #eee;
}
table > thead > tr > th,
table > tbody > tr > th,
table > tfoot > tr > th,
table > thead > tr > td,
table > tbody > tr > td,
table > tfoot > tr > td {
  padding: 15px 10px;
  line-height: 1.5;
  vertical-align: middle;
  border-top: 1px solid #eee;
}

table.ptb15 th, table.ptb15 td {
  padding-top: 15px !important;
  padding-bottom: 15px !important;
}

table.th30 th, table.th28 th {
  background-color: #F2F2F2;
  text-align: center;
}

table.th30 th {
  width: 30%;
  background-image :url(assets/images/share/list-bgw.png) ;
  background-repeat: repeat;
}

table.th28 th:first-child {
  width: 28%;
}

table.th28 th:nth-child(2), table.th28 th:nth-child(3), table.th28 th:nth-child(4), table.td24 td {
  width: 24%;
}

table.td50 td {
  width: 50%;
}


table.td-center td {
  text-align: center;
}

table.va-middle th {
  vertical-align: middle !important;
}

table th span {
  font-size: 0.8em;
}

.table th, .table td {
  vertical-align: middle;
  /* border-top: none; */
}

.table-bordered {
  border: 5px solid #eeeeee;
}

/* --------------------------------
spec-table
-------------------------------- */

.spec-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}

.spec-table th,
.spec-table td {
  border: 1px solid #ccc;
  padding: 10px 12px;
  vertical-align: top;
}

.spec-table thead th {
  text-align: center;
  font-weight: bold;
}

.spec-table .spec-c1 {
  background: #FFEAE3;
}

.spec-table .spec-c2 {
  background: #FFFBEC;
}

.spec-table tbody th {
    background: #EFF6E0;
    width: 9em;
}

.spec-table tbody td {
  background: #fff;
}

/* --------------------------------
guide table
-------------------------------- */
.basic-table {
    background: #ffffff;
}

.basic-table tr th, .basic-table tr td {
    color: #000000;
    padding: 10px 15px;
    border: 1px solid #000000;
}

.basic-table tr th {
    background: #EFF6E0;
    width: 12em;
}

/* --------------------------------
guide table wthite
-------------------------------- */
.guide-table-white table tr th, .guide-table-white table tr td {
    text-align: center;
    border: 1px solid #ffffff;
}

/********************************************************************************
header Layout
********************************************************************************/
.head-wrap {
  padding: 15px 0;
}

.sns-btn {
  color: #cccccc;
  font-size: 28px;
  font-size: 2.8rem;
  vertical-align: middle;
  display: inline-block;
}
.sns-btn:hover {
  color: #333333;
}
.logo-wrap {
  padding-top: 5px;
}
.estimate-box a {
  color: #ffffff;
  padding: 10px 15px 10px;
}

/* 初期状態：固定しない */
header.head-wrap {
  position: relative;
  width: 100%;
  transition: all 0.3s ease;
  z-index: 100;
}

/* 100pxスクロールしたら付くクラス */
header.is-fixed {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  background: #fff;
  box-shadow: 0 2px 5px rgba(0,0,0,0.1);
  transform: translateY(-100%);
  animation: dropDown 0.3s forwards;
}

/* ドロップダウンアニメーション */
@keyframes dropDown {
  from {
    transform: translateY(-100%);
  }
  to {
    transform: translateY(0);
  }
}

.front-page-header {
  display: none;
}
.front-page-header.is-fixed {
  display: block;
}


/* ログイン時（管理バーありの場合） */
.admin-bar header.is-fixed {
  top: 32px; /* PCの管理バー高さ */
}

@media (max-width: 782px) {
  .admin-bar header.is-fixed {
    top: 46px; /* モバイルの管理バー高さ */
  }
}

/********************************************************************************
card Setting
********************************************************************************/

.card {
  border-radius: 0;
  border: none;
  background-color: rgba(255,255,255,1);
  }
.card-header {
  margin-bottom: 0;
  border-bottom: none;
  background-color: #f7f7f9;
  position: relative;
  }
.card-footer {
  border-top: none;
  background-color: transparent;
}

.card-bdr {
 border: 3px solid #efefef;
}

.card .img-top,
.card .card-block {
  position: relative;
}
/********************************************************************************
navi Setting
********************************************************************************/
.navbar-default {

}
.navbar-light .navbar-nav .nav-link {
    color: rgba(0, 0, 0, 1);
}

.navbar {
  width: 100%;
  padding: 0 5px 0 0;
}
.navbar-nav {
  width: 100%;
  padding: 0;
}
.navbar-nav {
  flex-direction: row;
  display: inline;
  overflow: hidden;
}
.navbar .nav li {
  padding-top: 5px;
  padding-left: 5px;
  float: left;
  width: 50%;
}

.navbar-nav .menu-item a {
  color: #ffffff;
  text-align: center;
  display: block;
  padding: 5px;
  background: #39b581;
}

.navbar-brand {
  width: 50%;
  height: inherit;
}

.navbar-brand img {
  max-width: 260px;
}

.navbar-toggler {
  border: none;
}

.navbar-default .navbar-toggler .icon-bar {
  background-color: #333;
}

.navbar-toggler {
  padding: 9px 5px;
}

.navbar-toggler .icon-bar {
  display: block;
  width: 22px;
  height: 2px;
  border-radius: 1px;
}

.navbar-toggler .icon-bar+.icon-bar {
  margin-top: 5px;
}

button:focus {
  outline: none;
}

#menu-mainmenu li a span {
  display: none;
}

/*---------------------------------------------------------------------------
sp_menu
---------------------------------------------------------------------------*/
.sp_menu_btn {
    cursor: pointer;
    padding: 0;
    display: flex;
}

.sp_menu_inner_nav {
    padding: 25px 0;
    max-width: 900px;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0;
}

.sp_menu_inner_nav li {
    font-size: 16px;
    position: relative;
    line-height: 1.6;
    text-align: left;
}

.sp_menu_inner_nav li strong{
    margin-right: 10px;
}

.sp_menu_inner_nav li a {
    color: #555555;
    display: block;
    padding: 5px;
    position: relative;
    text-align: center;
    background: #ffffff;
    border: 1px solid #A8CF5E;
    border-radius: 15px;
    transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -webkit-transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
}

.sp_menu .contact-title {
    font-weight: bold;
    position: relative;
    font-size: 1.375rem;
    text-align: center;
    margin-bottom: 15px;
}

.sp_menu .contact-title::before {
    content: '';
    width: 350px;
    height: 1px;
    display: inline-block;
    background-color: #cccccc;
    position: absolute;
    bottom: -15px;
    left: calc(50% - 175px);
}

/****************************************
** toggle
*****************************************/
.navbar-toggle {
    border: none;
    position: relative;
    margin: 0;
    padding: 10px 15px;
    line-height: 1.2;
    z-index: 9999;
    background: #ffffff;
}

.navbar-toggle .icon-bar {
    width: 32px;
    transition: all 0.2s;
    height: 2px;
    display: block;
    background: #000000;
}

.navbar-toggle,
.navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus {
    color: #000000;
}

.navbar-toggle .icon-bar+.icon-bar {
    margin-top: 8px;
}

.navbar-toggle .top-bar {
	-webkit-transform: translateY(9px) rotate(-45deg);
	-ms-transform: translateY(9px) rotate(-45deg);
	transform: translateY(9px) rotate(-45deg);
}

.navbar-toggle .middle-bar {
	opacity: 0;
}

.navbar-toggle .bottom-bar {
	-webkit-transform: translateY(-11px) rotate(45deg);
	-ms-transform: translateY(-11px) rotate(45deg);
	transform: translateY(-11px) rotate(45deg);
}

.navbar-toggle.collapsed .top-bar {
	-webkit-transform: rotate(0);
	-ms-transform: rotate(0);
	transform: rotate(0);
  width: 70px;
}

.navbar-toggle.collapsed .middle-bar {
	opacity: 1;
  width: 50px;
}

.navbar-toggle.collapsed .bottom-bar {
	-webkit-transform: rotate(0);
	-ms-transform: rotate(0);
	transform: rotate(0);
}

span.menu-text {
    margin-top: 15px;
    display: block;
}

.sp_menu {
    position: fixed;
    top: 100px !important;
    right: 15px;
    bottom: 30px;
    width: 300px;
    height: calc(90% - 100px);
    font-size: 16px;
    background: #FAFFF0;
    border: 1px solid #A8CF5E;
    overflow-y: auto;
    padding: 20px;
    display: none;
    z-index: 9999;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.15);
}

/* フェードダウンアニメ */
.sp_menu.fadeDown {
  animation: fadeDown 0.3s ease forwards;
}

@keyframes fadeDown {
  0% { opacity: 0; transform: translateY(-10px); }
  100% { opacity: 1; transform: translateY(0); }
}

/* メニュー内の項目 */
.sp_menu_inner_nav li {
  margin-bottom: 20px;
}


/********************************************************************************
COMMON SETTING
********************************************************************************/

/**********************************
BLOCK BASE
**********************************/

.main-container {
}

.side-container {
    display: flex;
    justify-content: space-between;
    padding: 15px;
}

.side-container-right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.container-wrap {
  padding-top: 30px;
  padding-bottom: 30px;
}
.container-top {
  padding-top: 30px;
}
.container-bottom {
  padding-bottom: 30px;
}

h2.bdr-title-btm {
  color: #1d2a5a;
  text-align: center;
  padding-bottom: 5px;
  margin: 5px auto;
  border-bottom: 2px solid #1d2a5a;
}

h2.bdr-title-left {
  color: #333333;
  margin: 10px auto;
  padding: 10px 0;
  border-bottom: 2px solid #333333;
}

h2.bdr-title-h {
  color: #5d5349;
  padding: 10px;
  text-align: center;
  border-top: 1px solid #5d5349;
  border-bottom: 1px solid #5d5349;
}
h2.bdr-title-h {
  color: #5d5349;
  padding: 10px;
  text-align: center;
  border-top: 1px solid #5d5349;
  border-bottom: 1px solid #5d5349;
}

h2.bdr-title-wht {
  color: #fff;
  padding: 10px;
  text-align: center;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
}
.content-block {
  padding-top: 15px;
  padding-bottom: 15px;
}

.wide-boxes {
  position: relative;
  overflow: hidden;
  background: #333;
  color: #fff;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.33;
}

.wide-boxes .entry {
  text-align: center;
  position: relative;
  z-index: 10;
  margin: 100px 100px;
}

.block-title h2 {
  color: #3d884e;
  padding: 10px;
  text-align: center;
  border-top: 1px solid #3d884e;
  border-bottom: 1px solid #3d884e;
}

.block-title-wht h2 {
  color: #fff;
  padding: 10px;
  text-align: center;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
}

#contents {
  overflow: hidden;
  clear: both;
}

.btn-contact {
    border: 1px solid #707070;
    border-radius: 19px;
    padding: 15px 30px;
    min-width: 300px;
    display: inline-block;
}

.linkbtn {
  position: absolute;
  top: 20px;
  right: 20px;
}

.btn-link {
    color: #707070;
    background: #FFDF88;
    padding: 6px 35px;
    border-radius: 18px;
    text-decoration: none;
    display: inline-block;
}

.btn-link:hover {
    color: #000000;
    background: #ffd000;
}

.rightposition {
    position: absolute;
    right: 5px;
}

.list-bg-img {
  background-image :url(assets/images/share/list-bg.png);
  background-repeat: repeat;
}

.list-bgw-img {
  background-image :url(assets/images/share/list-bgw.png) ;
  background-repeat: repeat;
}

/********************************************************************************
INDEX PAGE
*********************************************************************************/
.front-page-tmp .main-container {
    margin-top: -100px;
}
/**********************************
mainv_block
**********************************/

.mainv_block {
  position: relative;
  display: flex;
  width: 100%;
  flex-direction: column-reverse;
}

.image-fit-container .metaslider .flexslider .slides li {
  position: relative;
  overflow: hidden;
  min-height: 400px; /* スマホ初期値 */
}

.image-fit-container .metaslider .flexslider .slides li img {
  width: 100%;
  height: 100%;
  min-height: 400px; /* スマホ初期値 */
  object-fit: cover;       /* はみ出してOK */
  object-position: center; /* 中央基準 */
}


.mainv-catch {
  z-index: 1;
}


.mainv-illustration {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  pointer-events: none;
  z-index: 10;
  text-align: center;
}

.mainv-illustration img {
  width: 300px;        /* 適宜調整 */
  height: auto;
}
#sliderMain .flex-direction-nav .flex-prev {
  left: 36px;
}
#sliderMain .flex-direction-nav .flex-next {
  background-position: 100% 0;
  right: 36px;
}

.mainv-info {
    position: absolute;
    left: 0;
    bottom: 50px;
    display: flex;
    z-index: 1;
    flex-direction: column;
    gap: 20px;
    padding: 15px;
}

.mainv-link {
    display: flex;
    gap: 15px;
    justify-content: center;
}

.mainv-link .icon-box img {
    width: 33px;
    height: 33px;
    object-fit: contain;
}

.mainv-info-link {
    display: flex;
    background: #ffffff;
    writing-mode: vertical-rl;
    text-orientation: upright;
    border: 1px solid #707070;
    padding: 15px 0;
    align-items: center;
}

.mainv-soudan-link {
    color: #ffffff;
    display: flex;
    background: #00A79E;
    writing-mode: vertical-rl;
    text-orientation: upright;
    border: 1px solid #707070;
    padding: 15px 0;
    align-items: center;
}




/********************************************************************************
INDEX
*********************************************************************************/

/* --------------------------------
MAIN-BLOCK
-------------------------------- */
#front-page-block {
position: relative;
}

.front-page__title {
  border-left: none;
  padding-left: 0;
  font-size: 24px;
  font-size: 2.4rem;
  text-align: center;
}

.content-editlink a {
  display: block;
}

.color-type0 {
  background:url(assets/images/share/shikkui02.jpg);
  background-repeat:no-repeat;
  background-position:center center;
  background-size:cover;
  width:100%;
  height:100%;
  z-index:0;
  backface-visibility:hidden
}

.color-type1 {
  color: #ffffff;
  background: #1d2a5a;
}

.color-type1 h2.bdr-title-btm {
  color: #ffffff;
  text-align: center;
  padding-bottom: 5px;
  margin: 5px auto;
  border-bottom: 2px solid #ffffff;
}

.color-type2 {
  color: #776542;
  background: #dddddd;
}

.color-type3 {
  background:url(assets/images/share/blue-img1.jpg);
  background-repeat:no-repeat;
  background-position:center center;
  background-size:cover;
  width:100%;
  height:100%;
  z-index:0;
  backface-visibility:hidden
}

.color-type4 {
  color: #ffffff;
  background: #5cb85c;
}

/* --------------------------------
index-content
-------------------------------- */
.index-content-text {
    font-size: 20px;
    line-height: 1.8;
    margin-bottom: 30px;;
}
.index-content-link {
    border: 1px solid #555555;
    padding: 10px 15px;
    border-radius: 23px;
    display: inline-block;
}

/* --------------------------------
POINT-BLOCK
-------------------------------- */
.point-block {
  background: #00b181;
  padding-top: 15px;
  padding-bottom: 60px;
}


.point-block--title {
  text-align: center;
  font-size: 30px;
  font-weight: 500;
  color: #ffffff;
  margin-bottom: 45px;
}

.point-block--title .point-block--title--point {
  display: inline-block;
  color: #ffffff;
  font-size: 38px;
  background: #faa639;
  border-radius: 28px;
  padding: 5px 24px;
  margin: 10px;
}


.point-block--img  {
  border-radius: 20px;
}


.point-block--header .nav-tabs {
  border-bottom: none;
}

.point-block--header .nav-item {
  margin-bottom: 0;
  padding: 0;
}

.point-block--header .nav-link {
  color: #00b181;
  background-color: #94e5c4;
  font-size: 16px;
  font-size: 2rem;
  text-align: center;
  display: flex;
  position: relative;
  width: 100%;
  height: 100%;
  -webkit-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out;
  align-items: center;
  justify-content: center;
}

.point-block--contents {
  background: #ffffff;
}

.point-block__contents--title {
  font-family: "游ゴシック体", YuGothic, "YuGothic M", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  color: #00b181;
  font-size: 30px;
  font-weight: bold;
}

.point-block__lead {
  font-family: "游ゴシック体", YuGothic, "YuGothic M", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  color: #00b181;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.4;
}

/* --------------------------------
PICKUP-BLOCK
-------------------------------- */
 #news-tab {
  display: flex;
}

.no-bdr-tab.nav-tabs .nav-item {
  padding: 0;
  display: flex;
  border-right: 1px solid #ffffff;
}
.no-bdr-tab.nav-tabs .nav-link {
  color: #666666;
  border: none;
  background: #eeeeee;
  border-radius: 0;
  flex: 1 1 100%;
}

.no-bdr-tab.nav-tabs .nav-link:hover {
    color: #333333;
    background: #d8d2c8;
}
.no-bdr-tab.nav-tabs .nav-link.active {
  color: #ffffff;
  background: #302c26;
  border-radius: 3px;
}

/* --------------------------------
INFO-BLOCK
-------------------------------- */
.list-bg-even li:nth-child(even) {
  background: #f1f1f1;
}
.list-bg-even li a {
  padding: 20px 35px 10px 20px;
  display: block;
  border-bottom: 1px solid #f1f1f1;
  position: relative;
}

.list-bg-even li a::before {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
    right: 15px;
    width: 16px;
    height: 16px;
    border-top: 2px solid #3aa176;
    border-right: 2px solid #3aa176;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.list-bg-even li a:hover {
  box-shadow: 4px -2px 0 -2px #3aa176 inset;
}
.post-meta,
.newsDay,
.newsCate,
.newsTxt,
.newsThumb {
  display: inline-block;
  vertical-align: middle;
}
.list-bg-even .post-meta {
  width: 90px;
}

.post-data {
    display: flex;
    gap: 30px;
    align-items: center;
    margin-bottom: 30px;
}

.post-date {
  letter-spacing: 1px;
}

.post-data .post-cat {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
}

.post-data .post-cat a {
    border: 1px solid #555555;
    border-radius: 16px;
    padding: 3px 15px;
}


.loop-list li {
  padding: 15px 0;
  border-bottom: 1px solid #b2a79c;
}

/* --------------------------------
EXAMPLE-BLOCK
-------------------------------- */

#example-block .justify-center-middle-wrap {
  border: 10px solid transparent;
  background-color: transparent;
}

#example-block .card:hover .card-block,
#example-block .card:hover .card-footer {
  background: #ffffff;
}

/* --------------------------------
ESTATE-BLOCK
-------------------------------- */
table.table-estate th {
  font-weight: normal;
  background-color: #F2F2F2;
  width: 30%;
  background-image :url(assets/images/share/list-bgw.png) ;
  background-repeat: repeat;
}

ul.estate-catlist {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 15px;
}

.estate-catbtn {
    font-size: 18px;
    border: 1px solid;
    border-radius: 20px;
    min-width: 120px;
    display: inline-block;
    padding: 8px;
    text-align: center;
}
/* --------------------------------
** NEWS BLOCK
-------------------------------- */
#info-block {
}
.bg-left-cover,.bg-right-cover {
  width: 100%;
  min-height: 200px;
  padding: 60px 15px;
}
.bg-left-cover-s,.bg-right-cover-s {
  width: 100%;
  min-height: 200px;
  padding: 10px 15px;
}
#link-block .bg-right-cover-s {
  padding: 60px 15px;
  background-color: #eceeef;
}
.color-type1 .bg-left-cover {
  background-color: #1d2a5a;
}

.color-type1 .bg-right-cover {
  background-color: #3c4a7f;
}

.color-type1  .container-wrap {
  color: #ffffff;
}

ul.infolist li {
  border-bottom: 1px solid #ccc;
  padding: 15px 10px;
  list-style: none;
  margin-bottom: 0px;
  position: relative;
}
ul.infolist li:first-child {
  border-top: 1px solid #ccc;
}

ul.infolist li a {
  color: #ffffff;
}

ul.infolist li .infoDate,
ul.infolist li .infoCate {
  font-size: 13px;
  font-size: 1.3rem;
  margin-right: 10px;
}

ul.infolist li .infoCate  {
  color: #fff;
  background: #f00;
  display: inline-block;
}

ul.infolist li .infoCate a {
  color: #fff;
  padding: 1px 5px;
  background: #0a2f8f;
  display: block;
  font-size: 10px;
  font-size: 1.0rem;
  border-left: 2px solid #b30101;
}

ul.infolist li .infoCate a:hover {
  background: #b30101;
}

/* --------------------------------
PLAN-BLOCK
-------------------------------- */
.plan-title {
  position: absolute;
  top: -20px;
  left: 0;
  font-weight: bold;
}
#plan-block .card-title {
  color: #a70913;
  background: none;
  padding: 5px 0;
}
.childPage-title.is-pickup {
    position: relative;
    padding-right: 60px;
}

.childPage-title.is-pickup::after {
    content: "";
    position: absolute;
    right: 10px;
    top: 50%;
    width: 41px;
    height: 28px;
    transform: translateY(-50%);
    background: url(assets/images/share/plan-pickup.svg) no-repeat center / contain;
}
/* --------------------------------
POST-CONTENT
-------------------------------- */
.company-table td {
  padding: 5px 5%;     /* 少し強調 */
}
.company-table th {
  background-color: #F5F5F5;
  width: 8em;
  vertical-align: middle; /* 縦中央揃え */
  font-weight: 500;       /* 少し強調 */
  padding: 5px 15px;     /* 少し強調 */
}

/* --------------------------------
ABOUT-BLOCK
-------------------------------- */

.color-type2 .bg-right-cover {
  background: #eceeef;
}
/* --------------------------------
CONTACT-BLOCK
-------------------------------- */
#contact-block .bg-left-cover {
  background: #a70913;
}
#contact-block .bg-right-cover {
  background: #660000;
}

/* --------------------------------
POST-ESTATE-BLOCK
-------------------------------- */

#post-estate-block .justify-center-middle-wrap {
    border: 15px solid transparent;
    background-color: #ffffff;
}


/* --------------------------------
ONE-COL-BLOCK
-------------------------------- */
#one-col-block {
  background: url(assets/images/sample/samplefooter.jpg) no-repeat center center #eee;
  width: 100%;
  min-height: 200px;
  padding: 100px 0;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}
#one-col-block .card {
  background-color: rgba(255,255,255,0.8);
  border: none;
}
#one-col-block:hover .card {
  background-color: rgba(255,255,255,1);
  border: none;
}

/* --------------------------------
PAGE-CHILD-BLOCK
-------------------------------- */

#page-child-block .justify-center-middle-wrap {
    border: 15px solid transparent;
    background-color: #ffffff;
}

#page-child-list-block ul.pageList a,
#page-blog-list-block ul.pageList a {
    display: block;
    padding: 8px 5px;
    border-bottom: solid 1px #ddd;
    color: #333;
    font-size: 14px;
}

/* --------------------------------
PAGE-CHILD-ALBUM
-------------------------------- */

.page-child-album h2 {
    font-size: 140%;
    position: relative;
    padding: 0.2em 0.5em;
    background-color: #d2e7e4;
    box-shadow: 0px 0px 0px 5px #d2e7e4;
    border-top: 1px dashed #fff;
    border-bottom: 1px dashed #fff;
}

.page-child-album h3 {
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
    position: relative;
    color: #776542;
    background: #ffffff;
    padding: 0.5em 0.5em 0.5em 1.8em;
    border-bottom: 2px solid #81cdc9;
}
.page-child-album h3::before {
  font-family: FontAwesome;
  content: "\f068";
  position: absolute;
  left : 0.5em;
}
.page-child-album .card-bdr {
    border: 5px solid #81cdc9;
}
/********************************************************************************
CONTENTS
*********************************************************************************/
/* --------------------------------
セミオーダー住宅
-------------------------------- */
.semi-order-lp {
    background: #D7EF8F;
}

/* From cssbuttons.io */
.morelink-btn {
    /* width: 150px; */
    height: 40px;
    cursor: pointer;
    display: flex;
    align-items: center;
    background: red;
    border: none;
    border-radius: 0 0 5px 5px;
    box-shadow: 1px 1px 3px rgb(0 0 0 / 15%);
    background: #196042;
}

.semi-order-title {
    color: #000000;
    font-size: 35px;
    padding: 10px 30px;
    background: #ffffff;
    border-radius: 40px;
    border: 1px solid #000000;
}

.semi-order-title span {
    color: #FF0000;
}

.morelink-btn, .morelink-btn span {
 transition: 200ms;
}

.morelink-btn .text {
 transform: translateX(35px);
 color: white;
 font-weight: bold;
}

.morelink-btn .icon {
    position: absolute;
    border-left: 1px solid #ffffff;
    /* transform: translateX(482px); */
    height: 40px;
    width: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    right: 30px;
    color: #fff;
    font-size: 26px;
}

.morelink-btn i {
 width: 15px;
 fill: #eee;
}

.morelink-btn:hover {
 background: #ffbc00;
}

.morelink-btn:hover .text {
 color: transparent;
}

.morelink-btn:hover .icon {
    border-left: none;
    transform: translateX(50%);
    right: 50%;
  }

.morelink-btn:focus {
 outline: none;
}

.morelink-btn:active .icon i {
 transform: scale(0.8);
}


/* --------------------------------
minimini-parent-pageid-18737
-------------------------------- */

.parent-pageid-18737 #page-content {
    font-size: 1.6rem;
    line-height: 1.6;
}
.parent-pageid-18737 #page-content p {
    margin-bottom: 3rem;
}

.parent-pageid-18737 #page-content h2 {
    font-size: 30px;
    font-size: 2.6rem;
    font-weight: bold;
    position: relative;
    color: #232323;
    background: #ffffff;
    padding: 0.5em 0.5em 0.5em 1.8em;
    border-bottom: 2px solid #232323;
}

.parent-pageid-18737 #page-content h3 {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  position: relative;
  color: #333;
  background: #ffffff;
  padding: 10px 10px 10px 24px;
  border-bottom: 2px solid #5cb85c;
}
.parent-pageid-18737 #page-content h3::before {
  font-family: FontAwesome;
  content: "\f0da";
  position: absolute;
  left: 0.5em;
  color: #43df43;
}

.parent-pageid-18737 #page-content h4 {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
  position: relative;
  color: #fff;
  padding: 0.5em 0.5em 0.5em 1.2em;
  border-top: 1px solid;
  background: #5cb85c;
  border-radius: 10px;
  border: none;
}
.parent-pageid-18737 #page-content h4::before {
    font-family: FontAwesome;
    content: none;
    position: absolute;
    left: 0em;
}
.parent-pageid-18737 #page-content h5 {
  position: relative;
  padding: 1.5rem 2rem;
  border: 3px solid #d8d8d8;
  border-radius: 10px;
  background: #f9f9f9;
  text-indent: 0;
  display: block;
  max-width: 500px;
}

.parent-pageid-18737 #page-content h5:before {
  position: absolute;
  bottom: -14px;
  left: 1em;
  width: 0;
  height: 0;
  content: '';
  border-width: 14px 12px 0 12px;
  border-style: solid;
  border-color: #d8d8d8 transparent transparent transparent;
}

.parent-pageid-18737 #page-content h5:after {
  position: absolute;
  bottom: -10px;
  left: 1em;
  width: 0;
  height: 0;
  content: '';
  border-width: 14px 12px 0 12px;
  border-style: solid;
  border-color: #f9f9f9 transparent transparent transparent;
}

.parent-pageid-18737 #page-content ul {
    position: relative;
    padding: 30px 20px 20px 30px;
    border: 3px solid #5cb85c;
    border-radius: 0 10px 10px 10px;
}
.parent-pageid-18737 #page-content ul li {
    font-size: 16px;
    margin-bottom: 10px;
    font-weight: bold;
    color: #333;
    border-bottom: 2px dashed #5cb85c;
    padding-bottom: 10px;
}

.parent-pageid-18737 #page-content ul:before {
    font-size: 15px;
    font-size: 1.5rem;
    position: absolute;
    top: -26px;
    left: -3px;
    height: 26px;
    padding: 4px 15px;
    content: 'ココがポイント！';
    color: #fff;
    border-radius: 10px 10px 0 0;
    background: #5cb85c;
}
/* --------------------------------
POST-CONTENT
-------------------------------- */
#page-child-block .post-content-wrap:nth-child(even) {
  background: #f6f4f3;
}

/********************************************************************************
CONTENTS
*********************************************************************************/
.page-catch-img {
  margin-bottom: 30px;
}
.page-catch-img img {
    width: 100%;
}

/* --------------------------------
page-seminar
-------------------------------- */
.seminar-rsv {
  font-size: 36px;
}

/* --------------------------------
page-spec
-------------------------------- */
.spec-group {
  margin-bottom: 30px;
}

.spec-group-title {
    padding: 5px;
    border: 1px solid #555555;
    margin-top: 0;
}

.spec-group-subtitle {
    color: #009A8E;
    font-size: 20px;
    font-weight: 500;
    margin-bottom: 15px;
}

/* --------------------------------
single-tmp
-------------------------------- */
.single-tmp .post-title {
    font-family: 'Source Han Serif JP', 'Noto Serif JP', serif;
    font-size: 32px;
    font-weight: normal;
    text-align: center;
    margin-bottom: 30px;
}

.archive-tmp .archive-post-title {
    font-family: 'Source Han Serif JP', 'Noto Serif JP', serif;
    font-size: 32px;
    font-weight: normal;
}

.archive-tmp .post-content-wrap {
    border-bottom: 1px solid #555555;
    padding: 36px 5% 20px;
}

/********************************************************************************
SIDEBAR
*********************************************************************************/
#sidebar .widget h3 {
  padding: 5px 5px 5px 10px;
}

#sidebar .widget ul {
  list-style: none;
  padding: 0px;
}

#sidebar .widget ul li {
  position: relative;
}

#sidebar .widget ul li a {
  border-bottom: 1px solid #ccc;
  padding: 15px 10px;
  vertical-align: middle;
  display: block;
  margin-bottom: 0px;
  position: relative;
}

#sidebar .widget ul li a::after {
  content:"\f0da";
  font-family: FontAwesome;
  float: right;
}

#sidebar .widget ul li.current-menu-item a::after {
  content:"\f00c";
  font-family: FontAwesome;
  float: right;
}

#sidebar .widget_archive .screen-reader-text {
  display: none;
}

#sidebar select {
  color: #3e4148;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5;
  position: relative;
  z-index: 2;
  margin-bottom: 0;
  display: table-cell;
  width: 100%;
  height: 39px;
  padding: 8px 16px;
  background-color: #fff;
  border: 1px solid #dcdcdc;
  border-radius: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
  box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
  -webkit-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
  -o-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
}

/********************************************************************************
widget Setting
*********************************************************************************/

#bana-1-block .wp-caption-text {
    background: #ffffff;
    padding: 5px;
    margin-top: 0;
    text-align: center;
    color: #302c26;
}

/********************************************************************************
footer Setting
*********************************************************************************/

/****************************************
** footer
*****************************************/
footer {
  background: #ffffff;
  letter-spacing:1.5px;
}

.footer__catch {
  font-size: 24px;
  margin-bottom: 60px;
}


.phone-link {
  display: inline-flex;
  align-items: center;
  gap: 0.5em;
  text-decoration: none;
}

.phone-number {
  font-size: 32px;
  color: #009A8E;
  font-weight: 700;
}

.icon-box {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 70px;
  height: 70px;
  border: 1px solid #C2C2C2;
  border-radius: 5px;
  background-color: #fff;
  box-sizing: border-box;
}

.icon-box img {
  width: 24px;
  height: 24px;
  object-fit: contain;
}

.footer__contact .icon-box {
    width: 46px;
    height: 46px;
}

.copywrap {
  color: #333333;
  margin-bottom: 5px;
}

/********************************************************************************
etc setting
********************************************************************************/
/****************************************
searchbox
*****************************************/
.search-form .form-control {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.25;
  display: block;
  width: 100%;
  padding: .5rem .75rem;
  border: 1px solid #ffffff;
  border-radius: 0;
}
.search-form {
  padding-top: 10px;
  padding-bottom: 10px;
}

.search-form .form-group {
  margin: 0px;
  border: 1px solid #ffffff;
  border-radius: 0;
}

.list-group-item {
  position: relative;
  display: block;
  padding: 10px 15px;
  margin-bottom: -1px;
  background-color: #fff;
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
}



/* --------------------------------
** form
-------------------------------- */
.form-group .time-block span {
   display: inline-block;
   margin-right: 10px;
 }
/****************************************
          contact form 7
*****************************************/
.form-horizontal {
    background: #F5F5F5;
    padding: 5%;
}

.form-horizontal .form-group {
  padding-bottom: 20px;
  padding-top: 20px;
  margin-bottom: 0px;
}

.form-horizontal .control-label {
  margin-bottom: 0px;
  padding-top: 7px;
  padding-bottom: 7px;
  text-align: left;
}

#form-user .form-group {
  border-left: 5px solid #f06;
}
select.form-control:not([size]):not([multiple]) {
  height: 39px;
}

.form-group.row > div,
.form-group.row > label {
  margin-bottom: 10px;
}

.form-control {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.25;
  display: block;
  width: 100%;
  padding: .5rem .75rem;
  -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
  color: #464a4c;
  border: 1px solid rgba(0, 0, 0, .15);
  border-radius: .25rem;
  background-color: #fff;
  background-image: none;
  background-clip: padding-box;
}

.form-control.inline-max5em {
  display: inline-block;
  max-width: 5em;
  margin-right: 5px;
}

.form-control.inline-max10em {
  display: inline-block;
  max-width: 10em;
  margin-right: 5px;
}

.form-control.inline-max20em {
  display: inline-block;
  max-width: 20em;
  margin-right: 5px;
}

.form-control.readonly {
  border: none;
  background-color: #f5f5f5;
}

.wpcf7-checkbox span.wpcf7-list-item {
  display: block;
}

div.wpcf7 .ajax-loader {
    display: none;
}

#form-user .form-group.nobdr-left {
  border-left: none;
}

#form-user .nobdr-left .control-label {
  border-left: none;
}
.mfield {
  color: #ff0000;
}

.wpcf7-free-text {
  display: block;
  margin-top: 10px;
}

/**********************************
** iframe responsive
**********************************/
/* ---- youtube etc ---- */
.embed-container iframe {
  border: 0;/*w3cfix*/
}

.embed-container iframe,
.embed-container object,
.embed-container embed,
.video-container iframe,
.video-container object,
.video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/**********************************
FB幅マニュアル対応
**********************************/
.fbcomments, .fb_iframe_widget, .fb_iframe_widget[style], .fb_iframe_widget iframe[style], .fbcomments iframe[style], .fb_iframe_widget span {
    width: 100%! important;
}
.fb-container iframe, .fb-container object, .fb-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0px;
}

/**********************************
** WP MAINTENANCE MODE
**********************************/
.wrap {
  width: 100%;
  margin: 0;
  text-align: left;
}
.wrap h1 {
  margin: 0;
}
.wrap h2 {
  display: none;
}
#coming-head1 {
  background: #fbafb8;
}
.countdown.is-countdown {
  text-align: center;
}


/********************************************************************************
** pager SETTING
********************************************************************************/
#pager-block {
    margin-bottom: 30px;
}
/************************************
** シングルページネーション
************************************/

ul.pager {
  padding: 30px 0;
  margin: 0;
  list-style: none;
  overflow: hidden;
  clear: both;
}

.pager li, .pagination>li {
    display: inline;
}

.pager li>a, .pager li>span {
    border: 1px solid #555555;
    border-radius: 16px;
    padding: 3px 20px;
}

.pager .previous>a, .pager .previous>span {
    float: left;
}

.pager .next>a, .pager .next>span {
    float: right;
}

.pager li > a:focus, .pager li>a:hover {
    color: #ffffff;
    background-color: #009a8e;
    border-radius: 16px;
}

/************************************
** アーカイブページネーション
************************************/
.pagination{
  list-style-type: none;
  padding-left: 0;
  margin: 30px 0;
}

.pagination,
.pagination li a {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

.pagination a {
  font-weight: 300;
  padding-top: 1px;
  text-decoration:none;
  border: 1px solid #ddd;
  border-left-width: 0;
  min-width:36px;
  min-height:36px;
  color: #333;
}

.pagination > li > a, .pagination > li > span {
  position: relative;
  float: left;
  padding: 6px 14px;
  line-height: 1.5;
  text-decoration: none;
  color: #202935;
  background-color: #ffffff;
  border: 1px solid #555555;
  margin-left: -1px;
}

.pagination li:not([class*="current"]) a:hover {
  background-color: #eee;
}

.pagination li:first-of-type a {
  border-left-width: 1px;
}

.pagination li.first span,
.pagination li.last span,
.pagination li.previous span,
.pagination li.next span {
  /* screen readers only */
  position: absolute;
  top: -9999px;
  left: -9999px;
}

.pagination li.first a::before,
.pagination li.last a::after,
.pagination li.previous a::before,
.pagination li.next a::after {
  display: inline-block;
  font-family: 'FontAwesome';
  font-size: inherit;
  text-rendering: auto;/*nonstandard*/
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  transform: translate(0, 0);
}

.pagination li.first a::before { content: "\f100"; }
.pagination li.last a::after { content: "\f101"; }

.pagination li.previous a::before { content: "\f104"; }
.pagination li.next a::after { content: "\f105"; }

.pagination li.current a {
 background-color: #e6e1dc;
 cursor: default;
 pointer-events: none;/*nonstandard*/
}


@media only screen and ( max-width: 680px ) {
  .pagination li.first,
  .pagination li.last {
    /* screen readers only */
    position: absolute;
    top: -9999px;
    left: -9999px;
  }

  .pagination li.previous a { border-left-width: 1px; }
}

@media only screen and ( max-width: 500px ) {
  .pagination li {
    /* screen readers only */
    position: absolute;
    top: -9999px;
    left: -9999px;
  }

  .pagination li.current,
  .pagination li.first,
  .pagination li.last,
  .pagination li.previous,
  .pagination li.next{
    position: initial;
    top: initial;
    left: initial;
  }

  .pagination li.previous a { border-left-width: 0; }
}

@media only screen and ( max-width: 400px ) {
  .pagination li.first,
  .pagination li.last {
    /* screen readers only */
    position: absolute;
    top: -9999px;
    left: -9999px;
  }

  .pagination li.previous a { border-left-width: 1px; }
}

@media only screen and ( max-width: 240px ) { /* For watches? */
  .pagination li { width: 50%;}

  .pagination li.current {
    order: 2;
    width: 100%;
    border-left-width: 1px;
  }
}

/* --------------------------------
Layout fix
-------------------------------- */
/* --------------------------------
margin fix 5 10 15 20 30 45 60
-------------------------------- */
.mt0 { margin-top: 0px; }
.mt5 { margin-top: 5px; }
.mt10 {	margin-top: 10px; }
.mt15 {	margin-top: 15px; }
.mt20 {	margin-top: 20px; }
.mt30 {	margin-top: 30px; }
.mt45 {	margin-top: 45px; }
.mt60 {	margin-top: 60px; }
.mb0 { margin-bottom: 0px; }
.mb5 { margin-bottom: 5px; }
.mb10 {	margin-bottom: 10px; }
.mb15 {	margin-bottom: 15px; }
.mb20 {	margin-bottom: 20px; }
.mb30 {	margin-bottom: 30px; }
.mb45 {	margin-bottom: 45px; }
.mb60 {	margin-bottom: 60px; }
.mr0 { margin-right: 0px; }
.mr5 { margin-right: 5px; }
.mr10 {	margin-right: 10px; }
.mr15 {	margin-right: 15px; }
.mr20 {	margin-right: 20px; }
.mr30 {	margin-right: 30px; }
.mr45 {	margin-right: 45px; }
.mr60 {	margin-right: 60px; }
.ml0 { margin-left: 0px; }
.ml5 { margin-left: 5px; }
.ml10 {	margin-left: 10px; }
.ml15 {	margin-left: 15px; }
.ml20 {	margin-left: 20px; }
.ml30 {	margin-left: 30px; }
.ml45 {	margin-left: 45px; }
.ml60 {	margin-left: 60px; }

.mh0 { margin-top: 0px; margin-bottom: 0px; }
.mh5 { margin-top: 5px; margin-bottom: 5px; }
.mh10 { margin-top: 10px; margin-bottom: 10px; }
.mh15 { margin-top: 15px; margin-bottom: 15px; }
.mh30 { margin-top: 30px; margin-bottom: 30px; }
.mh45 { margin-top: 45px; margin-bottom: 45px; }
.mh60 { margin-top: 60px; margin-bottom: 60px; }

.mw0 { margin-right: 0px; margin-left: 0px; }
.mw10 { margin-right: 10px; margin-left: 10px; }
.mw15 { margin-right: 15px; margin-left: 15px; }
.mw30 { margin-right: 30px; margin-left: 30px; }
.mw45 { margin-right: 45px; margin-left: 45px; }
.mw60 { margin-right: 60px; margin-left: 60px; }

.mt-15 { margin-top: -15px; }
.mt-30 { margin-top: -30px; position:relative; z-index: 99;}

.row.nm0 {
  margin-right: 0px;
  margin-left: 0px;
}

/* --------------------------------
padding fix 5 10 15 20 30 45 60
-------------------------------- */
.pt0 { padding-top: 0px; }
.pt5 { padding-top: 5px; }
.pt10 {	padding-top: 10px; }
.pt15 {	padding-top: 15px; }
.pt20 {	padding-top: 20px; }
.pt30 {	padding-top: 30px; }
.pt45 {	padding-top: 45px; }
.pt60 {	padding-top: 60px; }
.pb0 { padding-bottom: 0px; }
.pb5 { padding-bottom: 5px; }
.pb10 {	padding-bottom: 10px; }
.pb15 {	padding-bottom: 15px; }
.pb20 {	padding-bottom: 20px; }
.pb30 {	padding-bottom: 30px; }
.pb45 {	padding-bottom: 45px; }
.pb60 {	padding-bottom: 60px; }
.pr0 { padding-right: 0px; }
.pr5 { padding-right: 5px; }
.pr10 {	padding-right: 10px; }
.pr15 {	padding-right: 15px; }
.pr20 {	padding-right: 20px; }
.pr30 {	padding-right: 30px; }
.pr45 {	padding-right: 45px; }
.pr60 {	padding-right: 60px; }
.pl0 { padding-left: 0px; }
.pl5 { padding-left: 5px; }
.pl10 {	padding-left: 10px; }
.pl15 {	padding-left: 15px; }
.pl20 {	padding-left: 20px; }
.pl30 {	padding-left: 30px; }
.pl45 {	padding-left: 45px; }
.pl60 {	padding-left: 60px; }

.ph0 { padding-top: 0px; padding-bottom: 0px; }
.ph5 { padding-top: 5px; padding-bottom: 5px; }
.ph10 { padding-top: 10px; padding-bottom: 10px; }
.ph15 { padding-top: 15px; padding-bottom: 15px; }
.ph30 { padding-top: 30px; padding-bottom: 30px; }
.ph45 { padding-top: 45px; padding-bottom: 45px; }
.ph60 { padding-top: 60px; padding-bottom: 60px; }

.pw0 { padding-right: 0px; padding-left: 0px; }
.pw10 { padding-right: 10px; padding-left: 10px; }
.pw15 { padding-right: 15px; padding-left: 15px; }
.pw20 { padding-right: 20px; padding-left: 20px; }
.pw30 { padding-right: 30px; padding-left: 30px; }
.pw45 { padding-right: 45px; padding-left: 45px; }
.pw60 { padding-right: 60px; padding-left: 60px; }

.row .np0 {
    padding-right: 0px;
    padding-left: 0px;
}

.mauto {
    margin-left: auto;
    margin-right: auto;
}

.row.bdr {
  border: 1px solid #fff;
}

/* --------------------------------
BG COLOR
-------------------------------- */
.bg-main      { background-color: #3aa176; }
.bg-white     { background-color: #ffffff !important; }
.bg-white80   { background-color: rgba(255,255,255,0.8); }
.bg-gray      { background-color: #F5F5F5; }
.bg-Khaki     { background: #f6f7ec; }
.bg-lightgray { background-color: #f1f1f1; }
.bg-dark      { background-color: #333333; }
.bg-red       { background-color: #d9534f; }
.bg-yellow    { background-color: #eaa645; }
.bg-green     { background-color: #3aa176; }
.bg-lightblue { background-color: #81cdc9; }
.bg-darkred   { background-color: #660000; }
.bg-line      { background-color: #00a65a; }
.bg-2col      { background: linear-gradient(180deg, #ffffff 0%, #ffffff 50%, #f1f1f1 50%, #f1f1f1 100%); }

/* --------------------------------
bdr-SETTING
-------------------------------- */
.bdr-white     { border-color: #ffffff !important; }
.bdr-white80   { border-color: rgba(255,255,255,0.8); }
.bdr-gray      { border-color: #F0EBDC; }
.bdr-Khaki     { border-color: #f6f7ec; }
.bdr-lightgray { border-color: #f1f1f1; }
.bdr-dark      { border-color: #333333; }
.bdr-red       { border-color: #d9534f; }
.bdr-yellow    { border-color: #eaa645; }
.bdr-green     { border-color: #3aa176; }
.bdr-lightblue { border-color: #81cdc9; }
.bdr-darkred  { border-color: #660000; }


.bdr-none {
  border: none;
}


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

.img-center {
  margin: 0 auto;
}


/****************************************
WordPress Misc
*****************************************/
.wp-caption { border: none; text-align: left; background-color: transparent; padding: 0; margin: 0 0 11.5px; border-radius: 0; max-width: 100%; }
.wp-caption-text { margin-top: 5px; font-size: 12px; line-height: 1.4; }
.wp-caption-text,
.gallery-caption,
.gallery .gallery-caption { font-size: 100%; }
.wp-caption img {	margin: 0; padding: 0; border: 0 none; }
.wp-caption-dd { margin: 0;	padding: 0 4px 5px;	font-size: 11px; line-height: 17px; }
.alignleft { display: inline; float: left; margin-right: 1.5em; }
.alignright { display: inline; float: right; margin-left: 1.5em; }
.aligncenter { clear: both; display: block; margin-left: auto; margin-right: auto; }
.sticky {}
.bypostauthor {}

/****************************************
画像float解除
*****************************************/
img.alignright { display: inline-block; margin: 0 0 1em 1.5em; }
img.alignleft { display: inline-block; margin: 0 1.5em 1em 0; }
img.alignright.size-medium,
img.alignleft.size-medium,
img.alignleft.size-full,
.wp-caption.alignright,
.wp-caption.alignleft {
  float: none;
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/************************************
Galleries
************************************/
.gallery-item { display: inline-block; padding: 1.79104477%; text-align: center; vertical-align: top; width: 100%; }
.gallery-columns-2 .gallery-item { max-width: 50%; }
.gallery-columns-3 .gallery-item { max-width: 33.33333%; }
.gallery-columns-4 .gallery-item { max-width: 25%; }
.gallery-columns-5 .gallery-item { max-width: 20%; }
.gallery-columns-6 .gallery-item { max-width: 16.66667%; }
.gallery-columns-7 .gallery-item { max-width: 14.28571%; }
.gallery-columns-8 .gallery-item { max-width: 12.5%; }
.gallery-columns-9 .gallery-item { max-width: 11.11111%; }
.gallery-icon img { margin: 0 auto; }
.gallery-caption { display: block; }
.gallery-columns-6 .gallery-caption,
.gallery-columns-7 .gallery-caption,
.gallery-columns-8 .gallery-caption,
.gallery-columns-9 .gallery-caption { display: none; }

/************************************
comments
************************************/

#comments.comments_area {
  margin: 15px 0;
  padding: 15px 0;
}

#contentwrap #comments-title, #contentwrap .comment-reply-title {
  padding: 5px 10px;
  margin-bottom: 15px;
  color: #ffffff;
  background-color: #cc0000;
}

.comment-body {
	padding: 10px;
	margin-bottom: 20px;
	font-size: 16px;
  font-size: 1.6rem;
	font-weight: normal;
	vertical-align: middle;
	-moz-user-select: none;
	background-image: none;
	border: 1px solid #eee;
}
ul.comment-list ul.children {
  border-left: 3px solid #daccb1;
  list-style: outside none none;
}
.comment-author {
  font-weight: bold;
  background-color: #ebebeb;
  padding: 6px;
  margin-bottom: 10px;
}

.comment-author .fn {
  color: #000;
  font-style: normal;
}

.reply a.comment-reply-link {
  color: #FFF;
	background-color: #cc0000;
  display: inline-block;
  margin-bottom: 4px;
  padding: 3px 12px;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  background-image: none;
}
@media (min-width: 375px) {
  /*#menu-mainmenu .menu-item {
      padding: 10px 0px 10px;
      float: left;
      width: 50%;
  }*/
}

@media (min-width: 576px) {
/**********************************
bootstrap4 hack
**********************************/
  .card-group .card,
  .card-deck .card {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 0%;
    flex: 1 0 0;
  }

  .form-horizontal .form-group {
    padding-bottom: 20px;
    padding-top: 20px;
    padding-left: 15px;
    border-left: none;
    margin-bottom: 0px;
  }
}


/* Small devices (mobile, 768px) */
@media screen and (min-width: 768px) {

    /* ---- typo ---- */
    .bdr-tb {
        font-size: 2.8rem;
        font-size: 28px;
        padding: 20px 10px;
        margin: 20px 0;
        letter-spacing: 0.1em;
    }
    #index #pagelink1 .bdr-tb {
        margin-top: 20px;
        color: #000;
        background-color: transparent;
    }
    h2 .engtxt-s {
        font-size: 1.5rem;
        border-top: none;
    }
    h3.common-h {
        font-size: 1.3em;
    }
    .under-link-design {
        font-size: 2.5em;
        line-height: 2.5em;
    }

    .xs-block {
      display: inline-block;
    }

    .xs-inline {
      display: block;
      margin-bottom: 0;
    }

  /**********************************
  mainv_block
  **********************************/
    /* ---- navbar ---- */
    .front-page-tmp .main-container {
        margin-top: 0;
    }
    .mainv_block {
    position: relative;
    display: flex;
    width: 100%;
    flex-direction: column-reverse;
    height: 100dvh;
  }

    /*ヘッダーメニューPC*/
    .navbar-nav .menu-item a {
      color: #5d5349;
      text-align: center;
      display: block;
      padding: 5px;
    }
    #menu-mainmenu li a span {
      color: #3aa176;
      display: block;
      font-family: 'Pathway Gothic One', sans-serif;
      font-size: 24px;
      font-size: 2.4rem;
    }

    .navbar-collapse>div:last-child p {
        width: 100%;
        text-align: right;
        padding-top: 10px;
    }

    .navbar-wrap {
      color: #333333;
      background: transparent;
    }
    .navbar-toggleable-md .navbar-collapse {
        display: table;
        width: 100%;
    }
    .navbar-toggleable-md .navbar-toggler {
        display: none;
    }
    .navbar {
        padding: 0;
    }
    .navbar, .navbar-nav {
        display: table;
        height: inherit;
        table-layout: fixed;
    }

    .navbar .nav li {
      display: table-cell;
      float: none;
      padding: 10px 0;
      width: auto;
      position: relative;
    }
    .navbar .nav li:first-child {
      border-left: 1px solid #ffffff;
    }
    .navbar .nav li:after {
        content: "";
        width: 100%;
        position: absolute;
        left: 0;
        bottom: -3px;
        border-bottom-width: 3px;
        border-bottom-style: solid;
        border-color: #eee;
        text-align: center;
        transition: border-color .5s ease-out,left .5s ease-out;
        -o-transition: border-color .5s ease-out,left .5s ease-out;
        -moz-transition: border-color .5s ease-out,left .5s ease-out;
        -webkit-transition: border-color .5s ease-out,left .5s ease-out;
        -ms-transition: border-color .5s ease-out,left .5s ease-out;
    }

    .navbar .nav li:hover:after,
    .navbar .navbar-nav li.active:after {
        content: "";
        border-color: #660000;
    }

    .navbar .nav li a {
      color: #333333;
      font-size: 16px;
      font-size: 1.6rem;
      font-weight: normal;
      text-align: center;
      background: none no-repeat transparent;
      border-top: none;
      border-left: 1px solid #3aa176;
      padding: 5px;
      transition: padding 0.2s ease;
    	-o-transition: padding 0.2s ease; /* opera */
    	-moz-transition: padding 0.2s ease; /* firefox */
    	-webkit-transition: padding 0.2s ease; /* chrome, safari */
    	-ms-transition: padding 0.2s ease; /* ie */
    }
    .navbar .nav li:last-child a {
      border-right: 1px solid #3aa176;
    }

    .stickynav .navbar .nav li a {
      padding: 5px 15px;
      transition: padding 0.2s ease;
    	-o-transition: padding 0.2s ease; /* opera */
    	-moz-transition: padding 0.2s ease; /* firefox */
    	-webkit-transition: padding 0.2s ease; /* chrome, safari */
    	-ms-transition: padding 0.2s ease; /* ie */
    }

    #mainmenu-wrap .navbar-nav li>a::after {
        display: block;
        content: "";
        width: 74%;
        height: 0;
        border-bottom: 1px solid #008F68;
        position: absolute;
        bottom: -5px;
        left: 13%;
        opacity: 0;
        -webkit-transition: all .25s ease-out;
        transition: all .25s ease-out;
    }
    #mainmenu-wrap .navbar-nav li>a:hover::after,
		#mainmenu-wrap .navbar-nav li.active>a::after,
		#mainmenu-wrap .navbar-nav li.active>a:hover::after {
        opacity: 1;
        bottom: 5px;
    }
    #submenu-wrap .navbar-nav {
        display: table;
    }
    #submenu-wrap .navbar-nav .menu-item {
        display: inline-block;
        width: 25%;
        float: none;
        border: none;
    }
    .secBox {
        padding-bottom: 40px;
    }

    .movie-wrap {}
    .movie-wrap iframe {}
    .post-meta .post-date {
        display: inline-block;
    }

    footer .menu-submenu-container ul li {
        display: inline-block;
    }

/****************************************
** mainv_block
*****************************************/
  .mainv_block {
      display: flex;
      width: 100%;
      flex-direction: row;
  }

  .main-container {
      background: #ffffff;
      width: calc( 100% - 300px );
  }

  .side-container {
      width: 300px;
      display: flex;
      justify-content: flex-start;
      padding-top: 15px;
      position: relative;
      flex-direction: column;
      align-items: center;
  }

  .side-container-right {
      display: flex;
      flex-direction: column;
      align-items: center;
  }

  .image-fit-container .flexslider .slides li {
    min-height: 900px;  /* 最小600px */
    height: 100vh !important;      /* 画面の高さにフィット */
  }

  .page-header-icatch {
      padding: 80px 0 15px;
  }

  .page-catch-img img {
      width: 360px;
  }
  .page-content-header .content-title {
      padding: 5px;
      font-size: 24px;
      font-size: 2.4rem;
      border: 1px solid #009A8E;
      display: inline-block;
      margin-bottom: -1px;
      min-width: 400px;
  }

  .company-table th {
    background-color: #F5F5F5;
    width: 180px;
    vertical-align: middle;
    font-weight: 500;
    padding: 5px 15px;
  }

    /**********************************
    bootstrap4 hack
    **********************************/

    .collapse {
        display: block;
    }

}


/* Medium devices (desktops, 992px and up) */

@media screen and (min-width: 992px) {
  .sp_menu {
    right:3%;
  }

    footer .menu-mainmenu-container ul li {
      display: inline-block;
      width: auto;
      float: none;
      text-align: center;
    }
    footer .widget_nav_menu ul li a {
      padding: 5px 10px 5px 15px;
    }
    /****************************************
    WordPress Misc 画像float再設定
    *****************************************/
    img.alignright { display: inline-block; margin: 0 0 1em 1.5em; }
    img.alignleft { display: inline-block; margin: 0 1.5em 1em 0; }

    .wp-caption.alignleft,
    img.alignleft.size-medium,
	  img.alignleft.size-full {
      display: inline-block;
      margin: 0 1.5em 1em 0;
      float: left;
    }
    .wp-caption.alignright,
    img.alignright.size-medium {
      display: inline-block;
      margin: 0 0 1em  1.5em;
      float: right;
    }

}


/* Large devices (large desktops, 1200px and up) */

@media screen and (min-width: 1200px) {

  .sp_menu {
    right:3%;
  }
}


/* ---- link none ---- */

@media print {
    .container {
        max-width: none !important;
        width: 970px;
    }
    .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
        float: left;
    }
    .col-md-12 { width: 100%; }
    .col-md-11 { width: 91.66666667%; }
    .col-md-10 { width: 83.33333333%; }
    .col-md-9 { width: 75%; }
    .col-md-8 { width: 66.66666667%; }
    .col-md-7 { width: 58.33333333%; }
    .col-md-6 { width: 50%; }
    .col-md-5 { width: 41.66666667%; }
    .col-md-4 { width: 33.33333333%; }
    .col-md-3 { width: 25%; }
    .col-md-2 { width: 16.66666667%; }
    .col-md-1 { width: 8.33333333%; }
    .hidden-sm-down { display: none!important; }
    a[href]:after { content: ""!important; }
    abbr[title]:after { content: ""!important; }
    a, a:visited { text-decoration: none; }
    .navbar { display: inherit !important; }
    .navbar-header { display: none !important; }
    .bx-wrapper { max-width: 970px !important; margin: 0 auto; border-bottom: 2px solid #19a3ff; }
    .bx-wrapper .bx-viewport { height: 404px !important; }
    ul.bxslider li {
        width: 100% !important;
        height: inherit !important;
        position: relative;
    }
    .under-link-design, .under-link-design a {
        display: block !important;
        width: 100%;
        color: #FA9300;
    }
    .p-break-b { page-break-before: always; }
    .p-break-a { page-break-after: avoid; }
}
