@charset "utf-8";

body,h1,h2,h3,h4,h5,h6,div,span {
font-style: normal !important;
}

/* ------------------------------
▼ a
------------------------------ */

a {
text-decoration: none;
-webkit-transition: opacity 0.3s ease-out;
-moz-transition: opacity 0.3s ease-out;
-ms-transition: opacity 0.3s ease-out;
transition: opacity 0.3s ease-out;
}
a:hover,
a:focus {
text-decoration: none;
opacity: .3;
-webkit-opacity: .3;
-moz-opacity: .3;
filter: alpha(opacity=30);	/* IE lt 8 */
-ms-filter: "alpha(opacity=30)"; /* IE 8 */
}
a:visited {
outline: none;
}
a:focus, *:focus { outline:none; }

/* selector_hover */
.selector_hover {
text-decoration: none;
-webkit-transition: opacity 0.3s ease-out;
-moz-transition: opacity 0.3s ease-out;
-ms-transition: opacity 0.3s ease-out;
transition: opacity 0.3s ease-out;
}
.selector_hover:hover {
opacity: .3;
-webkit-opacity: .3;
-moz-opacity: .3;
filter: alpha(opacity=30);	/* IE lt 8 */
-ms-filter: "alpha(opacity=30)"; /* IE 8 */
}

/* ------------------------------
▲ a
▼ margin
------------------------------ */

.mt_no { margin-top: 0; }
.mb_no { margin-bottom: 0; }
.pt_no { padding-top: 0; }
.pb_no { padding-bottom: 0; }

.ma_8px { margin: 8px; }
.ma_16px { margin: 16px; }
.pa_8px { padding: 8px; }
.pa_16px { padding: 16px; }
.ma_1rm { margin: 1rem; }
.ma_2rm { margin: 2rem; }
.pa_1rm { padding: 1rem; }
.pa_2rm { padding: 2rem; }

.mt_1rm { margin-top: 1rem; }
.mt_2rm { margin-top: 2rem; }
.mt_3rm { margin-top: 3rem; }

.mb_1rm { margin-bottom: 1rem; }
.mb_2rm { margin-bottom: 2rem; }
.mb_3rm { margin-bottom: 3rem; }

.ml_1rm { margin-left: 1rem; }
.mr_1rm { margin-right: 1rem; }

.mt_1px { margin-top: 1px; }
.mt_2px { margin-top: 2px; }
.mt_3px { margin-top: 3px; }

.mb_1px { margin-bottom: 1px; }
.mb_2px { margin-bottom: 2px; }
.mb_3px { margin-bottom: 3px; }

.pt_1rm { padding-top: 1rem; }
.pt_2rm { padding-top: 2rem; }
.pt_3rm { padding-top: 3rem; }

@media only screen and (max-width: 1023px) {
	.mmb_1rm { margin-bottom: 1rem; }
}

@media only screen and (max-width: 639px) {
	.smb_1rm { margin-bottom: 1rem; }
}

/* ------------------------------
▲ margin
▼ arrow
------------------------------ */

.lgarw_5wd,
.lgarw_6wd,
.lgarw_7wd,
.lgarw_8wd,
.lgarw_9wd,
.lgarw_10wd {
position: relative;
display: inline-block;
text-decoration: none;
}

.lgarw_5wd:before {
content: '';
position: absolute;
top: 50%;
right: 90px;
margin-top: -4px;
width: -moz-calc(100% - 90px);
width: -webkit-calc(100% - 90px);
width: calc(100% - 90px);
height: 10px;
border-bottom: 1px solid #666;
border-right: 1px solid #666;
transform: skew(45deg);
}

.lgarw_6wd:before {
content: '';
position: absolute;
top: 50%;
right: 106px;
margin-top: -4px;
width: -moz-calc(100% - 106px);
width: -webkit-calc(100% - 106px);
width: calc(100% - 106px);
height: 10px;
border-bottom: 1px solid #666;
border-right: 1px solid #666;
transform: skew(45deg);
}

.lgarw_7wd:before {
content: '';
position: absolute;
top: 50%;
right: 120px;
margin-top: -4px;
width: -moz-calc(100% - 120px);
width: -webkit-calc(100% - 120px);
width: calc(100% - 120px);
height: 10px;
border-bottom: 1px solid #666;
border-right: 1px solid #666;
transform: skew(45deg);
}

.lgarw_8wd:before {
content: '';
position: absolute;
top: 50%;
right: 134px;
margin-top: -4px;
width: -moz-calc(100% - 134px);
width: -webkit-calc(100% - 134px);
width: calc(100% - 134px);
height: 10px;
border-bottom: 1px solid #666;
border-right: 1px solid #666;
transform: skew(45deg);
}

.lgarw_9wd:before {
content: '';
position: absolute;
top: 50%;
right: 150px;
margin-top: -4px;
width: -moz-calc(100% - 150px);
width: -webkit-calc(100% - 150px);
width: calc(100% - 150px);
height: 10px;
border-bottom: 1px solid #666;
border-right: 1px solid #666;
transform: skew(45deg);
}

.lgarw_10wd::before {
content: '';
position: absolute;
top: 50%;
right: 165px;
margin-top: -4px;
width: -moz-calc(100% - 165px);
width: -webkit-calc(100% - 165px);
width: calc(100% - 165px);
height: 10px;
border-bottom: 1px solid #666;
border-right: 1px solid #666;
transform: skew(45deg);
}

/* ------------------------------
▲ arrow
▼ table
------------------------------ */

table {
width:100%;
border: solid 0px #fff;
}
table th,
table td {
border: solid 0px #fff;
}

/* table1 */
.table1 {
text-align: left;
border-collapse: collapse;
border-spacing: 0;
}
.table1 td {
width: 75%;
vertical-align: top;
}
.table1 td:nth-child(odd) {
width: 25%;
vertical-align: top;
}
@media only screen and (max-width: 639px) {
	.table1 td {
	width: 100%;
	display: block;
	padding: 4px 8px 8px 8px;
	}
	.table1 td:nth-child(odd) {
	width: 100%;
	padding: 8px 8px 0 8px;
	}
}

/* Smartphone Scroll */
@media only screen and (max-width: 639px) {
	.scroll {
	overflow: auto;
	white-space:nowrap;
	}
	.scroll::-webkit-scrollbar {
	height: 15px;
	}
	.scroll::-webkit-scrollbar-track {
	background: #f1f1f1;
	}
	.scroll::-webkit-scrollbar-thumb {
	background: #bbb;
	}
}

/* table2 */
.table2 {
text-align: left;
border-collapse: collapse;
border-spacing: 0;
}
.table2 th {
padding: 8px;
border: solid 1px #ddd;
}
.table2 td {
padding: 8px;
border: solid 1px #ddd;
width: 75%;
vertical-align: top;
}
.table2 td:nth-child(odd) {
width: 25%;
vertical-align: top;
}

/* table3 */
.table3 {
text-align: left;
border-collapse: collapse;
border-spacing: 0;
border-top: solid 1px #ddd;
}
.table3 th {
padding: 8px;
border-bottom: solid 1px #ddd;
}
.table3 td {
padding: 8px;
border-bottom: solid 1px #ddd;
width: 75%;
vertical-align: top;
}
.table3 td:nth-child(odd) {
width: 25%;
}

/* table4 */
.table4 {
text-align: left;
border-collapse: collapse;
border-spacing: 0;
border-top: solid 0px #fff;
}
.table4 th {
padding: 8px;
border-bottom: solid 0px #fff;
}
.table4 td {
padding: 8px;
border-bottom: solid 0px #fff;
width: 75%;
vertical-align: top;
}
.table4 td:nth-child(odd) {
width: 25%;
}

/* stripe */
.stripe tr:nth-child(odd) {
background: #eee;
}

/* ------------------------------
▲ table
▼ img
------------------------------ */

@media only screen and (min-width: 767px) {
	.slash1 {
		transform: skewX(-15deg);
		-webkit-transform-origin: 0% 100%;
		transform-origin: 0% 100%;
		width:-webkit-calc(50% + 70px);
		width:calc(50% + 75px);
	}
	.dcut1 {
	clip-path: polygon(15% 0%, 100% 0, 100% 100%, 0% 100%);
	}
	.dcut2 {
	clip-path: polygon(0 0, 85% 0, 100% 100%, 0% 100%);
	}
}

/* ------------------------------
▲ img
▼ header
------------------------------ */

.header {
margin-top: 1rem !important;
position: relative;
/* position: fixed; */
width: 100%;
}

.hfe-site-logo-img {
-webkit-transition: opacity 0.3s ease-out !important;
-moz-transition: opacity 0.3s ease-out !important;
-ms-transition: opacity 0.3s ease-out !important;
transition: opacity 0.3s ease-out !important;
}
.hfe-site-logo-img:hover {
opacity: .3 !important;
-webkit-opacity: .3 !important;
-moz-opacity: .3 !important;
filter: alpha(opacity=30);	/* IE lt 8 */
-ms-filter: "alpha(opacity=30)" !important;
}

/* ------------------------------
▲ header
▼ main
------------------------------ */

.elementor-repeater-item-b3d83bf > a {
content:"";
position: absolute;
width:100vw;
height:100vh;
-moz-transform: translateX(-50%) translateY(-50%);
-webkit-transform: translateX(-50%) translateY(-50%);
transform: translateX(-50%) translateY(-50%);
left:50%;
top:50%;
}

.blk_news {
margin-top: 5rem;
margin-bottom: 4rem;
text-align: center;
}

.blk_news_hdr .tit {
margin: 0 0 1rem;
font-size: 1.8rem;
font-weight: bold;
}

@media only screen and (min-width: 1024px) {
	.blk_news_hdr {
	margin: 0;
	text-align: left;
	}
}

.blk_entry {
text-align: left;
}
@media only screen and (min-width: 1024px) {
	.blk_entry {
	margin-top: 1rem;
	}
}
.blk_entry article {
padding: 0;
border-top: 1px solid #e8e8e8;
}
.blk_entry article:last-child {
border-bottom: 1px solid #e8e8e8;
}
.blk_entry .tit {
margin: 0;
padding: 0;
font-size: 1.3rem;
}
.blk_entry .date {
margin-top: 0.6rem;
font-size: 1rem;
}
.blk_entry .entry_link {
padding: 1.2rem 1rem 0.6rem;
display: block;
}

/* title */
.ast-single-post .entry-title,
.page-title {
font-size: 2.4rem;
text-align: center;
font-weight: bold;
}
.archive .page-title {
font-size: 2.4rem !important;
font-weight: bold !important;
color: #3a3a3a !important;
}
.archive .entry-header .entry-title {
font-size: 1.6rem;
}

/* breadcrumbs */
.elementor-widget-breadcrumbs {
font-size: 1rem !important;
}

/* thumbnail */
a.elementor-post__thumbnail__link {
-webkit-transition: opacity 0.3s ease-out;
-moz-transition: opacity 0.3s ease-out;
-ms-transition: opacity 0.3s ease-out;
transition: opacity 0.3s ease-out;
}

/* aligncenter */
img.aligncenter {
display: block;
margin: 0 auto !important;
}

/* pagination */
nav.elementor-pagination {
margin-top: 3rem;
}

.page-numbers {
background-color: #000;
padding: 10px 20px;
border: 1px solid #000;
color: #fff;
}

.page-numbers:hover {
background-color: #000;
color: #666;
border: 1px solid #000;
}

.current {
background-color: #fff;
color: #333;
border: 1px solid #000;
}

.current:hover {
background-color: #fff;
color: #666;
border: 1px solid #000;
}

/* archive */
@media only screen and (max-width: 767px) {
	.elementor-630 .elementor-element.elementor-element-d77647d .elementor-post__thumbnail__link {
	display: block !important;
	width: 100% !important;
	}
}

/* ------------------------------
▲ main
▼ plugin
------------------------------ */

.search-filter-reset:before {
content: '';
height: 16px;
width: 16px;
display:  inline-block;
background-image: url(/images/icon/refresh.png);
background-size: contain;
background-repeat: no-repeat;
background-position: 0 -2px;
vertical-align: middle;
margin-right: 10px;
}

.sf-field-post-meta-hdkubun .sf-item-0 {
display: none;
}
.sf-field-post-meta-keitai .sf-item-0 {
display: none;
}

@media only screen and (min-width: 767px) {
	.searchandfilter {
	text-align: center;
	}

	.searchandfilter > ul {
	margin-left: 0;
	}

	.searchandfilter > ul > li {
	display: inline-block;
	vertical-align: top;
	padding: 0 20px;
	}

	.searchandfilter > ul > li > ul > li {
	display: inline-block;
	padding: 0 20px;
	}

	.searchandfilter > ul > li:nth-last-child(2) {
	display: block;
	padding: 16px 0;
	text-align: center;
	}

	.searchandfilter > ul > li:last-child {
	display: block;
	padding: 16px 0;
	text-align: center;
	}
}

.sf-field-submit input[type="submit"] {
font-weight: bold;
height: 60px;
text-align: center;
color: #fff;
background-color: #327cb5;
font-size: 1rem;
width: 80%;
border-radius: 4px;
-web-border-radius: 4px;
-moz-border-radius: 4px;
border-width: 0px;
}

@media only screen and (min-width: 767px) {
	.sf-field-submit input[type="submit"] {
	font-size: 1.3rem;
	width: 30%;
	}
}

/* elemnt-pack-pro table */

.eppt_1_20ratio td:nth-child(odd) {
width: 20%;
}
.eppt_1_25ratio td:nth-child(odd) {
width: 25%;
}
.eppt_1_30ratio td:nth-child(odd) {
width: 30%;
}
.eppt_1_40ratio td:nth-child(odd) {
width: 40%;
}
.eppt_1_50ratio td:nth-child(odd) {
width: 50%;
}

@media (max-width: 767px) {
	.bdt-table-default-responsive tr {
	display: block !important;
	}
	.bdt-table-default-responsive table {
	border-width: 0px !important;
	}
	.bdt-table-default-responsive td {
	width: auto !important;
	white-space: normal !important;
	}
	.bdt-table-default-responsive td:first-child {
	border-bottom: 0px !important;
	}
	.bdt-table-default-responsive tr {
	margin-bottom: 1rem;
	}
}

/* max-mega-menu */
a.mega-menu-link {
display: block;
-webkit-transition: opacity 0.3s ease-out !important;
-moz-transition: opacity 0.3s ease-out !important;
-ms-transition: opacity 0.3s ease-out !important;
transition: opacity 0.3s ease-out !important;
}
a.mega-menu-link:hover {
opacity: .3 !important;
-webkit-opacity: .3 !important;
-moz-opacity: .3 !important;
filter: alpha(opacity=30);	/* IE lt 8 */
-ms-filter: "alpha(opacity=30)" !important;
}
ul.mega-sub-menu {
top: 48px !important;
}

/* astra */
.ast-scroll-to-top-right {
right: 8px !important;
bottom: 92px !important;
}
@media only screen and (min-width: 768px) {
	.ast-scroll-to-top-right {
		right: 8px !important;
		bottom: 8px !important;
	}
}

.gallery-item a img {
-webkit-transition: opacity 0.3s ease-out;
-moz-transition: opacity 0.3s ease-out;
-ms-transition: opacity 0.3s ease-out;
transition: opacity 0.3s ease-out;
}
.gallery-item a:hover img,
.gallery-item a:focus img {
text-decoration: none;
opacity: .3;
-webkit-opacity: .3;
-moz-opacity: .3;
filter: alpha(opacity=30);	/* IE lt 8 */
-ms-filter: "alpha(opacity=30)"; /* IE 8 */
}
.gallery-icon {
border-radius: 0 !important;
border: 0px solid #fff !important;
}
.gallery-caption {
border: 0px solid #fff;
color: #666 !important;
}

.ast-separate-container {
background-color: #fff !important;
}
.ast-separate-container.ast-left-sidebar #primary,
.ast-separate-container.ast-right-sidebar #primary {
margin-top: 0 !important;
}
.ast-container #primary,
.ast-separate-container #primary {
margin-top: 0 !important;
padding-top: 0 !important;
}
.ast-container .ast-article-post,
.ast-container .ast-article-single {
margin-top: 0 !important;
padding-top: 0 !important;
}
.ast-separate-container .ast-article-post,
.ast-separate-container .ast-article-single {
margin-top: 0 !important;
padding-top: 0 !important;
border-bottom: 0px solid #fff !important;
}
.ast-separate-container .ast-archive-description {
padding-top: 0 !important;
}
.ast-separate-container.ast-blog-grid-3 .ast-archive-description {
margin-bottom: 0 !important;
}

#content {
padding-top: 1rem !important;
}
@media only screen and (min-width: 768px) {
	#content {
	padding-top: 2rem !important;
	}
}
.home #content {
padding-top: 0 !important;
}

.ast-separate-container .ast-archive-description,
.ast-separate-container .ast-author-box {
background-color: #fff !important;
}

@media only screen and (max-width: 768px) {
	.ast-icon {
	bottom: 8px;
	}
}

/* wp-responsive-menu */
#wprmenu_bar {
padding: 2px 2px !important;
}
#wprmenu_bar div.hamburger {
margin-top: -3px;
}
.hamburger {
transform: scale(0.6);
}
.hamburger-box {
margin-left: 2px !important;
}
.hamburger-inner,
.hamburger-inner::before,
.hamburger-inner::after {
width: 38px !important;
}
.hamburger:after {
content:"menu";
color: #fff;
display: block;
margin-top: -10px;
margin-left: -2px;
transform: scale(0.8);
font-size: 1.3rem;
}
@media only screen and (max-width: 768px) {
  .wprm-overlay {
  background: rgb(0,0,0,0.8) !important;
  }
}

/* MW WP Form */
.contact {
width: 100%;
table-layout: fixed;
box-sizing: border-box;
}
.contact,
.contact td,
.contact th {
border-collapse: collapse;
border:1px solid #ddd;
}
.contact .td1 {
padding: 8px;
text-align: left;
width: 30%;
}
.contact .td2 {
padding: 8px;
text-align: left;
width: 70%;
}
.contact .td3 {
padding: 0 8px 20px 8px;
text-align: center;
width: 100%;
}
.must {
color: #ff0000;
border-radius: 3px;
font-size: 12px;
margin-right: 10px;
padding: 5px 10px;
border: 1px #ff0000 solid;
}

.mw_wp_form_input .contact .td2 input[type=email],
.mw_wp_form_input .contact .td2 input[type=number],
.mw_wp_form_input .contact .td2 input[type=password],
.mw_wp_form_input .contact .td2 input[type=reset],
.mw_wp_form_input .contact .td2 input[type=search],
.mw_wp_form_input .contact .td2 input[type=tel],
.mw_wp_form_input .contact .td2 input[type=text],
.mw_wp_form_input .contact .td2 input[type=url],
.mw_wp_form_input .contact .td2 select,
.mw_wp_form_input .contact .td2 textarea {
color: #3a3a3a;
padding: 0.75em;
height: auto;
border-width: 1px;
border-style: solid;
border-color: #eaeaea;
border-radius: 2px;
background: #fafafa;
box-shadow: none;
width: 100%;
}
.mw_wp_form_input .contact .td3 input[type="submit"] {
margin-top: 24px;
color: #ffffff;
font-size: 18px;
font-weight: 700;
background: #336699;
padding: 15px 25px 15px 25px;
border: none;
border-radius: 5px;
width: 100%;
text-transform: uppercase;
letter-spacing: 5px;
}

.mw_wp_form_confirm .contact .td3 input[type="submit"] {
margin-top: 24px;
color: #ffffff;
font-size: 18px;
font-weight: 700;
background: #336699;
padding: 15px 25px 15px 25px;
border: none;
border-radius: 5px;
width: 45%;
text-transform: uppercase;
letter-spacing: 5px;
display: inline-block;
}
.btn_back {
background: #ff9900 !important;
}
.mw_wp_form_input .input_hidden {
display: none;
}
.mw_wp_form_confirm .confirm_hidden {
display: none;
}
.grecaptcha-badge {
display: none;
}
@media only screen and (max-width: 768px) {
	.contact,
	.contact td,
	.contact th {
	border:0px solid #fff;
	}
	.contact .td1 {
	width: 100%;
	display: block;
	}
	.contact .td2 {
	padding-bottom: 16px;
	width: 100%;
	display: block;
	}
	.contact .td3 {
	width: 100%;
	display: block;
	}
}

/* ------------------------------
▲ plugin
▼ vegas
------------------------------ */

.vegas-animation-kenburns {
-webkit-animation: kenburns ease-out forwards;
animation: kenburns ease-out forwards;
}

@-webkit-keyframes kenburns {
	0% {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	100% {
		-webkit-transform: scale(1.5);
		transform: scale(1.5);
	}
}

@keyframes kenburns {
	0% {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	100% {
		-webkit-transform: scale(1.5);
		transform: scale(1.5);
	}
}

/* ------------------------------
▲ vegas
▼ footer
------------------------------ */

footer .bb_sl {
border-bottom: solid 1px #fff !important;
padding-bottom: 6px !important;
}

/* ------------------------------
▲ footer
------------------------------ */
