/*
Theme Name:KEIZ
Theme URI: https://themefreesia.com/themes/edge
Author: Theme Freesia
Author URI: https://themefreesia.com
Description: Edge is a Responsive Blogger WordPress Theme, Designed and Developed by Theme Freesia. Edge is Simple, clean, blog-focused, and designed for clarity. It is also translation ready and easily customizable with lots of options using Customizer. It consists contact us template, gallery template, widgets and sidebar. Get free support at https://tickets.themefreesia.com/ and View demo site at https://demo.themefreesia.com/edge.
Version: 2.0.3
Requires at least: 5.0
Requires PHP: 5.6
Text Domain: edge
License: GNU General Public License version 3.0
License URI: http://www.gnu.org/licenses/gpl-3.0.html

Tags: threaded-comments, right-sidebar, custom-colors, four-columns, custom-background, custom-header, custom-menu, editor-style, sticky-post, theme-options, translation-ready, flexible-header, post-formats, custom-logo, footer-widgets, blog, news, photography

All files, unless otherwise stated, are released under the GNU General Public License
version 3.0 (http://www.gnu.org/licenses/gpl-3.0.html)
==================================================
*/

/* 1.0 Browser Reset
================================================== */
html {
	overflow-y: scroll;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
  	-moz-osx-font-smoothing: grayscale;
  	text-rendering: optimizelegibility;
}
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	border: 0;
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
}
*,
*:before,
*:after { /* box layout to all elements */
	-webkit-box-sizing: border-box;
	-moz-box-sizing:    border-box;
	box-sizing:         border-box;
}
body {
	background: #fff;
}
.fixed {
  position:fixed;
  top:0;
  left:0;
  width: 100%;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
nav,
section {
	display: block;
}
ol, ul {
	list-style: none;
	margin: 0px;
}
ul li a,
ol li a {

}
ul li a:hover,
ol li a:hover {
	
}
ul ul,
ol ol,
ul ol,
ol ul {
	margin-bottom: 0;
}
table, th, td {
	border: 1px solid rgba(0, 0, 0, 0.1);
}
table {
	border-collapse: separate;
	border-spacing: 0px;
	border-width: 1px 0 0 1px;
	margin-bottom: 20px;
	width: 100%;
}
caption, th {
	font-weight: normal;
	text-align: left;
}
th {
	text-transform: uppercase;
	color: #000;
}
td, th {
	padding: 8px;
	border-width: 0 1px 1px 0;
}
a img {
	border: 0 none;
}
embed,
iframe,
object {
	max-width: 100%;
}
/* Other fixes*/
*,*:before,*:after {
	-webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}
/* Webkit */
::selection {
	background: #ccc;
	color: #4d4d4d;
}
/* Gecko/Mozilla */
::-moz-selection {
	background: #ccc;
	color: #4d4d4d;
}

/* 2.0 Typography
================================================== */
body,
button,
input,
select,
textarea {
	color: #000;
	font: 400 18px/1.8 ヒラギノ角ゴ Pro,Hiragino Kaku Gothic Pro,メイリオ,Meiryo,Osaka,ＭＳ Ｐゴシック,MS PGothic,sans-serif;
	word-wrap: break-word;
	overflow-x: hidden;
}

/* ----- #Headings  ----- */
h1, h2, h3, h4, h5, h6 {
	color: #000;
	font-weight: 400;
	margin-top:0;
	padding-bottom: 30px;
}
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { 
	font-weight: inherit;
}
h1 {
	font-size: 30px;
	line-height: 37px;
}
h2 {
	font-size: 26px;
	line-height: 33px;
}
h3 {
	font-size: 24px;
	line-height: 31px;
}
h4 {
	font-size: 22px;
	line-height: 29px;
}
h5 {
	font-size: 20px;
	line-height: 27px;
}
h6 {
	font-size: 18px;
	line-height: 25px;
}

.highlight { 
	font-weight: 500;
}

/* ----- #Text Elements  ----- */
p {
	padding: 0;
	margin: 0 0 20px 0;
}

b, strong { font-weight: bold; }

dfn, cite, em, i {
	font-style: italic;
}

/* -----  #Blockquote shortcode start styles  ----- */
blockquote:before {
	color: rgba(0, 0, 0, 0.2);
	content: '\f10d';
	float: left;
	font-family: "FontAwesome";
	font-size: 30px;
	font-style: normal;
	line-height: 24px;
	padding-right: 10px;
}
blockquote {
	color: #717171;
	font-family: 'Lato', sans-serif;
	font-size: 16px;
	font-style: italic;
		-webkit-hyphens: none;
		-moz-hyphens: none;
		-ms-hyphens: none;
	hyphens: none;
	letter-spacing: 0.5px;
	margin-bottom: 40px;
	padding: 20px 20px 0;
	position: relative;
	quotes: none;
	line-height: 28px;
}
blockquote cite {
	display: block;
	font-size: 15px;
	font-style: normal;
	text-align: right;
}
blockquote em,
blockquote i,
blockquote cite {
	font-style: normal;
}
address {
	display: block;
	margin: 0 0 1.6em;
}
pre:before {
	border: 1px solid rgba(255, 255, 255, 0.4);
	bottom: 3px;
	content: "";
	display: block;
	left: 3px;
	position: absolute;
	right: 3px;
	top: 3px;
}
pre {
	background-color: #333;
	clear: both;
	color: #ddd;
	font-family: "Courier 10 Pitch", Courier, monospace;
	font-size: 14px;
	line-height: 21px;
	margin-bottom: 20px;
	overflow: auto;
	padding: 30px;
	position: relative;
	white-space: pre;
}
code, kbd, tt, var {
	font: 14px Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
	line-height: 21px;
}
abbr,
acronym,
dfn {
	border-bottom: 1px dotted #666;
	cursor: help;
}
mark, ins {
	background: #fff9c0;
	text-decoration: none;
	margin-bottom: 20px;
}
sup,
sub {
	font-size: 75%;
	height: 0;
	line-height: 1;
	position: relative;
	vertical-align: baseline;
}
sup {
	bottom: 1ex;
}
sub {
	top: .5ex;
}

.hidden {  display: none !important }

/* 3.0 Links
================================================== */
a {
	color: #0071BC;
	text-decoration: none;
	cursor:pointer;
}
a:focus,
a:active,
a:hover {
	text-decoration: none;
}

a:focus {
	outline: thin dotted;
	outline-offset: -3px;
}

/* 4.0 Body Structure
================================================== */
#page {
	width: 100%;
	background-color: #fff;
}
header .container {
	margin: 0 auto;
	max-width: 100%;
	padding: 0;
	position: relative;
}

footer .container {
	margin: 0 auto;
	max-width: 100%;
	padding: 0;
	position: relative;
	padding: 0 20px;
}
.container {
	margin: 0 auto;
	max-width: 1200px;
	padding: 0;
	position: relative;
}

#primary .container {
	max-width: 100%;
}
.elementor-template-full-width #content > .container,
.elementor-page #content > .container,
.elementor-template-full-width #content_top > .container,
.elementor-page #content_top > .container {
	width: 100%;
	max-width: 100%;
}

/* --------------------------------------------
	Column
-------------------------------------------- */

.column {
	margin: 0 -20px;
}
.one-column,
.two-column,
.three-column,
.four-column {
	float: left;
	padding: 0 20px 40px;
}
.one-column,
#primary .two-column {
	width:100%;
}
.two-column,
.two-column-full-width,
#primary .three-column,
#primary .four-column-full-width,
#primary .four-column {
	width: 50%;
}
.three-column,
.boxed-layout-small .four-column-full-width,
.three-column-full-width {
	width: 33.33%;
}
.four-column,
.four-column-full-width {
	width: 25%;
}
#primary .three-column:nth-child(3n+4),
#primary .four-column:nth-child(4n+5) {
 	clear: none;
}
.two-column:nth-child(2n+3),
.three-column:nth-child(3n+4),
.four-column:nth-child(4n+5),
#primary .three-column:nth-child(2n+3),
#primary .four-column:nth-child(2n+3) {
 	clear: both;
}

/* 5.0 Buttons
================================================== */

/* ----- Default Button ----- */
.btn-default {
	border: 1px solid #666;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
	border-radius: 3px;
	color: #484848;
	display: inline-block;
	font-family: "Lato",sans-serif;
	font-weight: normal;
	line-height: 23px;
	margin: 10px 10px 0;
	padding: 7px 22px;
	text-align: center;
	text-transform: uppercase;
		-ms-transition: all 0.3s ease 0s;
		-moz-transition: all 0.3s ease 0s;
		-webkit-transition: all 0.3s ease 0s;
		-o-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
}
.btn-default:hover {
	background-color: #fc7a27;
	border: 1px solid #fc7a27; 
	color: #fff;
}
.light {
	background-color: transparent;
	border-color: #fff;
    color: #fff;
}
.light-color {
	background-color: transparent;
	border-color: #fff;
    color: #fff;
}
.vivid {
	background-color: #fc7a27;
	border: 1px solid #fc7a27;
	color: #fff;
}
.light-color:hover,
.vivid:hover {
	background-color: #f4f4f4;
	border: 1px solid #f4f4f4;
	color: #484848;
}

/* ----- Go To Top Button ----- */
.go-to-top {
	background-color: transparent;
	border: none;
	margin: 0;
	overflow: hidden;
	padding: 0;
	position: fixed;
	bottom: 20px;
	right: 30px;
	z-index: 999;
}
.go-to-top a {
	border: 2px solid #74afd0;
	border-radius: 50%;
	color: #74afd0;
	display: block;
	font-size: 20px;
	height: 32px;
	line-height: 27px;
	text-align: center;
		-ms-transition: all 0.3s ease-out;
		-moz-transition: all 0.3s ease-out;
		-webkit-transition: all 0.3s ease-out;
		-o-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
	width: 32px;
}
.go-to-top a:hover {
	color: #fff;
	background-color: #74afd0;
}

/* ----- More Link Button ----- */
a.more-link {
	letter-spacing: 1px;
		-webkit-transition: all 300ms ease-in-out;
		-moz-transition: all 300ms ease-in-out;
		-o-transition: all 300ms ease-in-out;
		-ms-transition: all 300ms ease-in-out;	
	transition: all 300ms ease-in-out;
}
a.more-link:hover {
	letter-spacing: 2px;
}

/* 6.0 Accessibility
================================================== */
/* Text meant only for screen readers */
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	overflow: hidden;
	width: 1px;
}
.screen-reader-text:hover,
.screen-reader-text:active,
.screen-reader-text:focus {
	background-color: #f1f1f1;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
	border-radius: 3px;
		-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);  /* Safari 3-4, iOS 4.0.2 - 4.2, Android 2.3+ */
		-moz-box-shadow:    0 1px 2px rgba(0, 0, 0, 0.15);  /* Firefox 3.5 - 3.6 */
	box-shadow:         	0 1px 2px rgba(0, 0, 0, 0.15);  /* Opera 10.5, IE 9, Firefox 4+, Chrome 6+, iOS 5 */
	clip: auto !important;
	display: block;
	font-size: 14px;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000; /* Above WP toolbar */
}

/* 7.0 Alignments
================================================== */
.alignleft {
	display: inline;
	float: left;
	margin-right: 20px;
}
.alignright {
	display: inline;
	float: right;
	margin-left: 20px;
}
.aligncenter {
	clear: both;
	display: block;
	margin: 0 auto;
}

/* 8.0 Breadcrumb
================================================== */
.breadcrumb {
	float: right;
	font-size: 13px;
	margin-top: 6px;
}
.breadcrumb,
.breadcrumb a:hover {
	color: #999;
}
.breadcrumb a {
	color: #717171;
}
.breadcrumb .home:before {
	content: '\f015';
	display: inline-block;
	font-family: "FontAwesome";
	font-size: 16px;
	font-style: normal;
	line-height: 21px;
	margin-right: 4px;
	vertical-align: top;
}

/* 9.0 Universal Clearfix
================================================== */
/* slightly enhanced, universal clearfix hack */
.clearfix:after {
     visibility: hidden;
     display: block;
     font-size: 0;
     content: " ";
     clear: both;
     height: 0;
     }
.clearfix { display: inline-block; }

/* start commented backslash hack \*/

* html .clearfix { height: 1%; }
.clearfix { display: block; }
/* close commented backslash hack */


/* 10.0 Forms
================================================== */
button,
input,
select,
textarea {
	font-size: 100%; /* Corrects font size in all browsers */
	margin: 0; /* Addresses margins set differently in IE6/7, F3/4, S5, Chrome */
	vertical-align: baseline; /* Appearance and consistency in all browsers */
	*vertical-align: middle; /* Appearance and consistency in IE6/IE7 */
}
input[type="text"],
input[type="email"],
input[type="url"],
input[type="tel"],
input[type="number"],
input[type="date"],
input[type="search"],
input[type="password"],
textarea {
	padding: 10px;
	border: 1px solid rgba(0, 0, 0, 0.1);
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
	border-radius: 5px;
	width: 100%;
	margin-bottom: 30px;
	background-color: #fafafa;
}
input[type="reset"],
input[type="button"],
input[type="submit"] {
	background-color: #333;
		-webkit-border-radius: 8px;
		-moz-border-radius: 8px;
	border-radius: 8px;
	border: 0 none;
	color: #fff;
	cursor: pointer;
	display: block;
	margin: 0 auto 30px auto;
	padding: 6px 30px;
	text-align: center;
	text-transform: uppercase;
		-ms-transition: all 0.3s ease-out;
		-moz-transition: all 0.3s ease-out;
		-webkit-transition: all 0.3s ease-out;
		-o-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
	font-size: 0.88em;
}
input[type="reset"]:hover,
input[type="button"]:hover,
input[type="submit"]:hover {
	background-color: #747474;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="search"]:focus,
input[type="password"]:focus,
textarea:focus {
	border-color: rgba(0, 0, 0, 0.20);
	background-color: #fff;
}
button:focus {
	outline: 2px dotted;
	outline-offset: 2px;
}
input[type="checkbox"],
input[type="radio"] {
	padding: 0; /* Addresses excess padding in IE8/9 */
}

input[type=search] {
  -webkit-appearance: none;
}

/* #Search Form 
================================================== */
.header-search, .header-search-x {
	display: none;
	/*display: block;*/
	/*
	background-color: transparent;
	border: none;
	color: #000;
	cursor: pointer;
	font-family: "FontAwesome";
	font-size: 14px;
	font-style: normal;
	margin: 15px 10px 0;
	position: absolute;
	right: 0;
	top: 0;*/
}
.header-search:before {
	content: '\f002';
}
.header-search-x:before {
	content: '\f010';
}
.header-search:hover, .header-search-x:hover {
	color: #fc7a27;
}

/** hidden search field **/
#search-box {
	background-color: rgba(255, 255, 255, 0.8);
		-webkit-box-shadow: 0 6px 8px -6px rgba(0, 0, 0, 0.15);
		-moz-box-shadow: 0 6px 8px -6px rgba(0, 0, 0, 0.15);
	box-shadow: 0 6px 8px -6px rgba(0, 0, 0, 0.15);
	display: none;
	padding: 15px;
	position: absolute;
	top: 60px;
	width: 100%;
	z-index: 9999;
}
#search-box input.search-field {
	width: calc(100% - 100px);
}
#search-box .search-submit {
	width: 100px;
}
#search-box input[type="search"] {
	background-color: transparent;
}

/* 11.0 Logo-Name-Slogan
================================================== */




#sticky_header div.header_inner_wrap {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
	display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
	justify-content: space-between;
		-webkit-box-align: center;
		-ms-flex-align: center;
	align-items: center;
}
#site-branding {
	float: left;
	padding: 15px 20px 15px 20px;
  width: 140px;
}


/*=======オリジナルナビ======= */
.main_nav_pc {
	display: block;
	clear: both;
	width: 100%;
	font-size: 1em;
}
.main_nav_sp {
	display: none;
}
/*==ナビゲーション全体の設定*/
nav.main_nav_pc {
  color: #000;
  text-align: center;
}
/*ナビゲーションを横並びに*/
nav.main_nav_pc ul {
  list-style: none;
  display: flex;
  justify-content: right;
  padding-right: 20px;
}
/*2階層目以降は横並びにしない*/
nav.main_nav_pc ul ul {
  display: block;
}

/*下の階層のulや矢印の基点にするためliにrelativeを指定*/
nav.main_nav_pc ul li {
  position: relative;
}

/*ナビゲーションのリンク設定*/
nav.main_nav_pc ul li a {
  display: block;
  text-decoration: none;
  color: #000;
  text-shadow: 0px 0px 7px rgba(255, 255, 255, 1);
  font-weight: bold;
  padding: 5px 30px 5px 0;
  transition: all .3s;
}
nav.main_nav_pc ul li:last-child a {
  padding-right: 0;
}




nav.main_nav_pc ul li a:hover {
  color: #808080; 
}
nav.main_nav_pc ul li.current > a {
	color: #808080;
}
nav.main_nav_pc ul li.has-child {

}


/*== 2・3階層目の共通設定 */

/*下の階層を持っているulの指定*/
nav.main_nav_pc li.has-child ul {
	/*絶対配置で位置を指定*/
	position: absolute;
	left: 0;
	top: 45px;
	z-index: 4;
	/*形状を指定*/
	background: #fff;
	box-shadow: 0px 0px 4px 2px rgba(0, 0, 0, 0.09);
	border-radius: 10px;
	width: auto;
	white-space: nowrap;
	padding: 10px 15px;
	/*はじめは非表示*/
	visibility: hidden;
	opacity: 0;
	/*アニメーション設定*/
	transition: all .3s;
}

/*hoverしたら表示*/
nav.main_nav_pc li.has-child:hover > ul,
nav.main_nav_pc li.has-child ul li:hover > ul,
nav.main_nav_pc li.has-child:active > ul,
nav.main_nav_pc li.has-child ul li:active > ul {
  visibility: visible;
  opacity: 1;
  transition : 1s;
}



nav.main_nav_pc li.has-child ul {
	list-style: none;
	margin: 0px 0 10px 0;
}

nav.main_nav_pc li.has-child ul li {
	text-align: left;
	text-indent: -0.8em;
	padding: 0 0 0 1em;
}

nav.main_nav_pc li.has-child ul li:before {
	content: '';
	display: inline-block;
	position: relative;
	bottom: 3px;
	width: 6px;
	height: 6px;
	margin-right: 8px;
	border-radius: 100%;
	background-color: #74afd0;
}


/*ナビゲーションaタグの形状*/
nav.main_nav_pc li.has-child ul li a {
	display: inline;
  padding: 0px;
  color: #000;
  text-align: left;
  font-size: 15px;
}

nav.main_nav_pc li.has-child ul li:last-child a {
  border-bottom: none;
}

nav.main_nav_pc li.has-child ul li a:hover,
nav.main_nav_pc li.has-child ul li a:active {
  color: #999999;
}






.nav-site-title {
	float: left;
	padding: 20px 0 0px 20px;
	width: 300px;
}
.is-sticky .nav-site-title {
	height: auto;
	opacity: 1;
		-moz-opacity: 1;
		filter:alpha(opacity=100);
	padding: 10px 0;
		-moz-transition: all 500ms ease-in-out 0s;
		-o-transition: all 500ms ease-in-out 0s;
		-webkit-transition: all 500ms ease-in-out 0s;
	transition: all 500ms ease-in-out 0s;

}

/* Header Media */
.has-header-video .custom-header {
	position: relative;
}

.has-header-video .custom-header {
	display: table;
	height: 300px;
	height: 75vh;
	width: 100%;
}

.has-header-video .custom-header-media {
	bottom: 0;
	left: 0;
	overflow: hidden;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
}

.has-header-video .custom-header-media video,
.has-header-video .custom-header-media iframe {
	position: fixed;
	height: auto;
	left: 50%;
	max-width: 1000%;
	min-height: 100%;
	min-width: 100%;
	min-width: 100vw; /* vw prevents 1px gap on left that 100% has */
	width: auto;
	top: 50%;
	padding-bottom: 1px; /* Prevent header from extending beyond the footer */
	-ms-transform: translateX(-50%) translateY(-50%);
	-moz-transform: translateX(-50%) translateY(-50%);
	-webkit-transform: translateX(-50%) translateY(-50%);
	transform: translateX(-50%) translateY(-50%);
}

.wp-custom-header .wp-custom-header-video-button { /* Specificity prevents .color-dark button overrides */
	background-color: rgba(34, 34, 34, 0.5);
	border: 1px solid rgba(255, 255, 255, 0.6);
	color: rgba(255, 255, 255, 0.6);
	cursor: pointer;
	font-size: 0;
	height: 45px;
	overflow: hidden;
	padding: 0;
	position: fixed;
	right: 30px;
	top: 30px;
	-webkit-transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out, color 0.3s ease-in-out;
	transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out, color 0.3s ease-in-out;
	width: 45px;
}

.wp-custom-header .wp-custom-header-video-button:hover,
.wp-custom-header .wp-custom-header-video-button:focus { /* Specificity prevents .color-dark button overrides */
	border-color: rgba(255, 255, 255, 0.8);
	background-color: rgba(34, 34, 34, 0.8);
	color: #fff;
}

.wp-custom-header .wp-custom-header-video-button.wp-custom-header-video-play:after,
.wp-custom-header .wp-custom-header-video-button.wp-custom-header-video-pause:after {
	color: #fff;
	font-family: "FontAwesome";
	font-size: 18px;
	font-style: normal;
	font-weight: normal;
	opacity: 0.7;
		-moz-opacity: 0.7;
		filter:alpha(opacity=70);
}

.wp-custom-header .wp-custom-header-video-button.wp-custom-header-video-play:after {
	content: "\f04c";
}
.wp-custom-header .wp-custom-header-video-button.wp-custom-header-video-pause:after{
	content: "\f04b";
}

.admin-bar .wp-custom-header-video-button {
	top: 62px;
}

/* For browsers that support 'object-fit' */
@supports ( object-fit: cover ) {
	.has-header-image .custom-header-media img,
	.has-header-video .custom-header-media video,
	.has-header-video .custom-header-media iframe,
	.has-header-image:not(.twentyseventeen-front-page):not(.home) .custom-header-media img {
		height: 100%;
		left: 0;
		-o-object-fit: cover;
		object-fit: cover;
		top: 0;
		-ms-transform: none;
		-moz-transform: none;
		-webkit-transform: none;
		transform: none;
		width: 100%;
	}
}
.has-header-video #sticky_header {
    background-color: #fff;
    position: relative;
}
.has-header-video .top-header .widget_contact ul li a {
	color: #fff;
}
.has-header-video .social-links a {
	color: #fff;
}
.has-header-video .main-slider {
	background-color: #fff;
    position: relative;
}
.has-header-video #content,
.has-header-video #content_top {
    background-color: #fff;
    position: relative;
}
.has-header-video #colophon {
    background-color: #fff;
    position: relative;
}
.has-header-video #site-title a,
.has-header-video #site-description {
    color: #fff;
}
.has-header-video .top-header:before {
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,000000+100&0+0,0.3+75 */
    background: -moz-linear-gradient(to top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 75%, rgba(0, 0, 0, 0.5) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(to top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 75%, rgba(0, 0, 0, 0.5) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 75%, rgba(0, 0, 0, 0.5) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#00000000", endColorstr="#4d000000", GradientType=0); /* IE6-9 */
    bottom: 0;
    content: "";
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    z-index: 0;
}
.has-header-video .top-header {
    position: relative;
    z-index: 1;
}

/* Hides div in Customizer preview when header images or videos change. */
body:not(.has-header-image):not(.has-header-video) .custom-header-media {
	display: none;
}

/* #Horizontal Line
================================================== */
hr {
	background-color: rgba(0, 0, 0, 0.1);
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

/* 12.0 Images
================================================== */
img {
	height: auto;/* Make sure images are scaled correctly. */
	max-width: 100%;/* Adhere to container width. */
	vertical-align: top;
}
img.alignleft,
img.alignright,
img.aligncenter {
	margin-top: 20px;
	margin-bottom: 20px;
}
figure {
	margin: 0;
}
img#wpstats {
	display: none;
}
.entry-content img,
.comment-content img,
.widget img {
	max-width: 100%;
}
.img-border {
	background-color: #fff;
	padding: 5px;
	border: 1px solid #ccc;
}

/* ----- Media ----- */
.page-content img.wp-smiley,
.entry-content img.wp-smiley,
.comment-content img.wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}
.wp-caption {
	margin-bottom: 20px;
	max-width: 100%;
}
.wp-caption a {
	display: block;
	position: relative;
}
.wp-caption .wp-caption-text {
	margin-bottom: 0;
	padding: 10px 0;
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
.wp-caption .wp-caption-text,
.gallery-caption {
	font-style: italic;
}

/* 13.0 Margin-Padding-Border Override Classes
================================================== */
.margin-top-none {
	/* Clear Margin Top */
	margin-top: 0px !important;
}
.margin-bottom-none {
	/* Clear Margin Bottom */
	margin-bottom: 0px !important;
}
.margin-right-none {
	/* Clear Margin Right */
	margin-right: 0px !important;
}
.margin-left-none {
	/* Clear Margin Left */
	margin-left: 0px !important;
}
.padding-top-none {
	/* Clear Padding Top */
	padding-top: 0px !important;
}
.padding-bottom-none {
	/* Clear Padding Bottom */
	padding-bottom: 0px !important;
}
.padding-right-none {
	/* Clear Padding Right */
	padding-right: 0px !important;
}
.padding-left-none {
	/* Clear Padding Left */
	padding-left: 0px !important;
}
.border-top-none {
	/* Clear Border Top */
	border-top: 0 none !important;
}
.border-bottom-none {
	/* Clear Border Bottom */
	border-bottom: 0 none !important;
}
.border-right-none {
	/* Clear Border Right */
	border-right: 0 none !important;
}
.border-left-none {
	/* Clear Border Left */
	border-left: 0 none !important;
}
.shadow-none {
	/* Remove Shadow */
	    -webkit-box-shadow: none !important;
	    -moz-box-shadow: none !important;
    box-shadow: none !important;
}
.margin-bottom-none p {
    /* Clear Inner p Tags Margin Bottom */
    margin-bottom: 0 !important;
}

/* 14.0 Layouts
================================================== */
/* ----- Photography Layout ----- */
.photography #content,
.photography #content_top {
	padding: 0;
}

/*------ Boxed Layout ------*/
.boxed-layout #page {
	max-width: 1230px;
	margin: 0px auto;
		-webkit-box-shadow: 0 1px 6px rgba(0, 0, 0, 0.15);  /* Safari 3-4, iOS 4.0.2 - 4.2, Android 2.3+ */
		-moz-box-shadow:    0 1px 6px rgba(0, 0, 0, 0.15);  /* Firefox 3.5 - 3.6 */
	box-shadow:         	0 1px 6px rgba(0, 0, 0, 0.15);  /* Opera 10.5, IE 9, Firefox 4+, Chrome 6+, iOS 5 */
}
.boxed-layout #colophon,
.boxed-layout-small #colophon {
	margin-bottom: 30px;
}
.boxed-layout-small #page {
	max-width: 1038px;
	margin: 0px auto;
		-webkit-box-shadow: 0 1px 6px rgba(0, 0, 0, 0.15);  /* Safari 3-4, iOS 4.0.2 - 4.2, Android 2.3+ */
		-moz-box-shadow:    0 1px 6px rgba(0, 0, 0, 0.15);  /* Firefox 3.5 - 3.6 */
	box-shadow:         	0 1px 6px rgba(0, 0, 0, 0.15);  /* Opera 10.5, IE 9, Firefox 4+, Chrome 6+, iOS 5 */
	}
.boxed-layout-small .container {
	margin: 0px auto;
	max-width: 978px;
	padding: 0;
	position: relative;
}
.boxed-layout #page,
.boxed-layout-small #page {
	overflow: hidden;
}

/* ----- small_image_blog and single_column_blog ----- */
.small_image_blog #primary .post:not(:nth-child(1)),
.single_column_blog #primary .post:not(:nth-child(1)) {
	padding: 0;
	width: 100%;
}
.small_image_blog #primary .post.sticky:not(:nth-child(1)),
.single_column_blog #primary .post.sticky:not(:nth-child(1)) {
	padding: 30px 30px 40px;
	width: 100%;
}
.small_image_blog .entry-title {
	text-align: left;
}
.small_image_blog .entry-header .entry-meta {
	text-align: left;
}
.small_image_blog .post-featured-image {
	width: 40%;
	float: left;
	display: inline-block;
	margin-right: 20px;
	margin-bottom: 20px;
	overflow: hidden;
}

.search-results.small_image_blog #primary .page {
	display: block;
	float: left;
	margin-bottom: 60px;
}


/* 15.0 Header Section
================================================== */
/* ----- Top Header Bar ----- */
.top-header {
	color: #717171;
	/*border-bottom: 1px solid rgba(0, 0, 0, 0.1);*/
	background-color: rgba(255, 255, 255, 0.2);
	text-align: center;
	z-index: 999;
	position: fixed;
	width: 100%;
}
.site-header {
	
}
.top-header .widget_contact {
	font-size: 13px;
	float: left;
	margin-bottom: 0;
	padding: 6px 0 7px;
	width: 30%;
}
.top-header .widget_contact ul li {
	float: left;
	margin-right: 15px;
	padding: 2px 0;
}
.top-header .widget_contact ul li a {
	color: #000;
}
.top-header .widget_contact ul li a:hover {

}
#sticky_header {
	background-color: rgba(255, 255, 255, 0);
	width: 100%;
	z-index: 999;
	/*backdrop-filter: blur(8px);
		-webkit-backdrop-filter: blur(8px);*/

}
.is-sticky #sticky_header {
	/*background-color: rgba(255, 255, 255, 0.7);
		-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
		-moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
  	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
	border-bottom: none;
	  	-moz-transition: all 500ms ease-out 0s;
		-o-transition: all 500ms ease-out 0s;
		-webkit-transition: all 500ms ease-out 0s;*/
	transition: all 500ms ease-out 0s;
}

@media only screen and (max-width: 767px) {
	.is-sticky #sticky_header {
		/*background-color: #fff;*/
	}
}

/* ----- Header Widget Title ----- */
.top-header .widget-title {
	display: none;
}

/* ----- Header Image ----- */
.header-image {
	width: 100%;
	height: auto;
}


/* 16.0 Social Links
================================================== */
.header-social-block {
	float: right;
	width: 30%;
}
.social-links {
	margin-top: 0px;
	float: right;
}
.social-links a {
	color: #000;
	display: block;
	float: left;
	font-size: 14px;
	margin: 10px 0 0 5px;
	text-align: center;
	height: 30px;
	line-height: 27px;
	border-radius: 3px;
	width: 30px;
}
.social-links a[href*="facebook.com"]:hover {
	background-color: #3B5998;
	color: #FFF;
}
.social-links a[href*="twitter.com"]:hover {
	background-color: #33CCFF;
	color: #FFF;
}
.social-links a[href*="plus.google.com"]:hover {
	background-color: #DF4B38;
	color: #FFF;
}
.social-links a[href*="linkedin.com"]:hover {
	background-color: #007BB6;
	color: #FFF;
}
.social-links a[href*="instagram.com"]:hover {
	background-color: #8E6051;
	color: #FFF;
}
.social-links a[href*="flickr.com"]:hover {
	background-color: #0063DB;
	color: #FFF;
}
.social-links a[href*="pinterest.com"]:hover {
	background-color: #CB2027;
	color: #FFF;
}
.social-links a[href*="dribbble.com"]:hover {
	background-color: #F26798;
	color: #FFF;
}

/* 17.0 Navigation
================================================== */
.main-navigation {
	margin: 0;
	padding: 56px 0px 0px 0;
	text-align: right;
}
.is-sticky .main-navigation .menu {
	float: right;
}
@media only screen and (max-width: 767px) {
	.is-sticky .main-navigation .menu {
		float: inherit;
	}
}
.main-navigation > ul > li {
	position: relative;
	display: inline-block;
	margin: 0 10px;
}
.main-navigation a {
	color: #717171;
	display: block;
	font-size: 16px;
	padding: 2px 4px;
	text-align: left;
	text-transform: uppercase;
}
/*.main-navigation a::after {
	position: absolute;
	bottom: -4px;
	left: 0;
	content: '';
	width: 100%;
	height: 3px;
	background: #004097;
	transform: scale(0, 1);
	transform-origin: center top;
	transition: transform .3s;
}
.main-navigation a:hover::after {
  transform: scale(1, 1);
}*/
.main-navigation a:hover,
.main-navigation ul li.current-menu-item a,
.main-navigation ul li.current_page_ancestor a,
.main-navigation ul li.current-menu-ancestor a,
.main-navigation ul li.current_page_item a,
.main-navigation ul li:hover > a,
.main-navigation li.current-menu-ancestor.menu-item-has-children > a:after,
.main-navigation li.current-menu-item.menu-item-has-children > a:after,
.main-navigation ul li:hover > a:after,
.main-navigation li.menu-item-has-children > a:hover:after,
.main-navigation li.page_item_has_children > a:hover:after {
	color: #b49531;
}

/* ----- Dropdown ----- */
.main-navigation ul li ul,
.main-navigation ul li:hover ul ul,
.main-navigation ul ul li:hover ul ul,
.main-navigation ul ul ul li:hover ul ul,
.main-navigation ul ul ul ul li:hover ul ul {
	visibility:hidden;
}
.main-navigation ul li ul {
	list-style-type: none;
	position: absolute;
	top: 100px;
	padding: 0;
	margin: 0;
	opacity: 0;
		-moz-opacity: 0;
		filter:alpha(opacity=0);
	visibility:hidden;
	line-height: 32px;
	background-color: #fff;
		-webkit-box-shadow: 0 1px 6px rgba(0, 0, 0, 0.15);
		-moz-box-shadow:    0 1px 6px rgba(0, 0, 0, 0.15);
	box-shadow:         	0 1px 6px rgba(0, 0, 0, 0.15);
	width: 200px;
	z-index: 9999;
		-webkit-transition: 	all .50s ease;
		-moz-transition: 		all .50s ease;
		-ms-transition:		all .50s ease;
		-o-transition: 		all .50s ease;
	transition: 				all .50s ease;
}
.main-navigation > ul > li:hover > ul,
.main-navigation > ul > li.focus > ul {
	display: block;
	opacity: 1;
		-moz-opacity: 1;
		filter:alpha(opacity=100);	
  	visibility:visible;
  	top: 52px;
}
.main-navigation ul li ul li {
	float: none;
	margin: 0;
	position: relative;
	text-align: left;
	width: 200px;
	z-index: 1;
}
.main-navigation ul li ul li:before {
    border-top: 1px solid #eee;
    content: "";
    height: 1px;
    left: 10px;
    position: absolute;
    top: 0;
    width: 90%;
}
.main-navigation ul li ul li:first-child:before {
    border-top: none;
}
.main-navigation ul li ul li a,
.main-navigation ul li.current-menu-item ul li a,
.main-navigation ul li ul li.current-menu-item a,
.main-navigation ul li.current_page_ancestor ul li a,
.main-navigation ul li.current-menu-ancestor ul li a,
.main-navigation ul li.current_page_item ul li a {
	float: none;
	line-height: 20px;
	font-size: 14px;
	height: inherit;
	letter-spacing: 0.1em;
	padding: 12px 15px;
	color: #717171;
	text-transform: capitalize;
}
.main-navigation ul li ul li a:hover,
.main-navigation ul li ul li:hover > a,
.main-navigation ul li.current-menu-item ul li a:hover {
	color: #b49531;
}
.main-navigation ul li ul li ul {
	left: 190px;
	top: 50px;
}
.main-navigation ul li:last-child ul li ul {
	left: -200px;
}
.main-navigation ul ul li:hover ul,
.main-navigation ul ul li.focus ul,
.main-navigation ul ul ul li:hover ul,
.main-navigation ul ul ul li.focus ul {
	top: 0;
	display: block;
	opacity: 1;
		-moz-opacity: 1;
		filter:alpha(opacity=100);	
  	visibility:visible;
}
.main-navigation li.menu-item-has-children > a:after,
.main-navigation li li.menu-item-has-children > a:after,
.main-navigation li.page_item_has_children > a:after,
.main-navigation li li.page_item_has_children > a:after {
   font-family: 'FontAwesome';
   font-style: normal;
   font-weight: normal;
   text-decoration: inherit;
   color: #000;
   font-size: 14px;
   padding-left: 6px;
}
.main-navigation li.menu-item-has-children > a:after,
.main-navigation li.page_item_has_children > a:after {
   content: "\f107";
}
.main-navigation li li.menu-item-has-children > a:after,
.main-navigation li li.page_item_has_children > a:after {
   content: "\f105";
   position: absolute;
   right: 15px;
}

/* ----- Responsive Navigation ----- */
.menu-toggle {
	display: none;
}
.line-one,
.line-two,
.line-three {
	background-color: #b49531;
}

/* 18.0 Content
================================================== */
#content_top {
	padding: 0px 0 0px;
}
#content {
	padding: 100px 0 0px;
}
.elementor-template-full-width #content,
.elementor-page #content,
.siteorigin-panels.full-width-layout #content,
.elementor-template-full-width #content_top,
.elementor-page #content_top,
.siteorigin-panels.full-width-layout #content_top {
	padding: 0;
}
#main ul {
	list-style-type: disc;
}
#main ol {
	list-style-type: decimal;
}
#main ol ol {
	list-style: upper-alpha;
}
#main ol ol ol {
	list-style: lower-roman;
}
#main ol ol ol ol {
	list-style: lower-alpha;
}
#primary {
	float: left;
	width: 70%;
}

/* 19.0 Sidebars
================================================== */
#secondary {
	float: left;
	padding-left: 40px;
	width: 30%;
	font-size: 0.83em;
}
#secondary h2 {
	font-size: 1em;
  line-height: 33px;
  font-weight: bold;
}
/* 20.0 Post
================================================== */
.entry-header {
	padding-bottom: 40px;
}
.post {
	margin-bottom: 50px;
}
/*.post:first-child .entry-content p:first-child:first-letter {
	border-right: 1px solid #222;
	display: block;
	float: left;
	font-family: 'Playfair Display', sans-serif;
	font-size: 80px;
	line-height: 80px;
	margin-bottom: 10px;
	margin-right: 22px;
	margin-top: 10px;
	padding: 10px 14px;
	text-align: center;
}
*/
.post:first-child .entry-content blockquote p:first-child:first-letter {
	border-right: none;
	float: inherit;
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
	margin: inherit;
	padding: inherit;
}
#primary .post:not(:nth-child(1)) {
	width: 100%;
	float: left;
	padding: 0 0 0 0px;
}
#primary .post:nth-child(2n) {
	/*padding-right: 15px;
	padding-left: 0px;*/
}
#primary .post:nth-child(2n+2) {
	clear: both;
}
/* ----- Sticky Post ----- */
#main .sticky {
	background-color: #f4f4f4;
	padding: 30px 30px 40px;
	margin-bottom: 50px;
}
#primary .post.sticky:not(:nth-child(1)) {
	margin-left: 15px;
	padding: 20px 20px 30px;
	width: calc(50% - 15px);
}
#primary .post.sticky:nth-child(2n) {
	margin-right: 15px;
	margin-left: 0px;
}
.post-content {
 	background-color: #fff;
	position: relative;
}
/* ----- Entry Titles ----- */
.entry-title {
	font-size: 24px;
	line-height: 1.2;
	text-align: left;
	text-transform: none;
	font-weight: bold;
	padding-bottom: 10px;

}
.entry-title,
.entry-title a {
	color: #000;
}
.entry-title a:hover,
.entry-title a:focus,
.entry-title a:active {
	color: #808080;
	text-decoration: underline;
}

/* ----- Entry Meta ----- */
.entry-meta {
	overflow: hidden;
	text-align: left;
}
.entry-meta,
.entry-meta a {
	color: #2b2b2b;
	font-size: 13px;
	line-height: 21px;
}
.entry-meta span:hover,
.entry-meta a:hover {

}
.single-post .entry-header .entry-meta,
.single-post .entry-footer {
	text-align: left;
}
.single-post .entry-header .entry-meta {
	padding-bottom: 10px;
}
.cat-links,
.cat-links a,
.tag-links,
.tag-links a {
	color: #00994c;
	font-size: 11px;
	letter-spacing: 2px;
	text-transform: uppercase;
}
.cat-links a,
.tag-links a {
	padding-bottom: 15px;
	display: inline-block;
}
.cat-links a:hover,
.tag-links a:hover {
	color: #00994c;
	text-decoration: underline;
}
.cat-links,
.tag-links {
	margin-right: 15px;
}
.post_cat {
	padding-bottom: 15px;
}
.post_cat span a {
	font-size: 11px;
	letter-spacing: 2px;
	text-transform: uppercase;
}
.entry-meta span.cat_information a,
.post_cat span.cat_information a {
	color: #838383;
}
.entry-meta span.cat_keiz a,
.post_cat span.cat_keiz a {
	color: #f08a0a;
}
.entry-meta span.cat_keizpower a
.post_cat span.cat_keizpower a {
	color: #c32a0e;
}
.entry-meta span.cat_keizluminous a
.post_cat span.cat_keizluminous a {
	color: #008ccf;
}
.entry-meta .entry-format,
.entry-meta .author,
.entry-meta .posted-on,
.entry-meta .comments,
.entry-meta .gallery {
	margin-right: 15px;
	margin-bottom: 5px;
}
.home .entry-meta .posted-on {
	margin-right: 0px;
}
.entry-meta .posted-on {
}
.entry-meta .entry-format a {
	color: #000;
}
.entry-format:before,
.entry-meta .entry-format:before,
.entry-header .entry-meta .entry-format:before {
	color: #000;
	font-family: 'FontAwesome';
	font-size: 14px;
	line-height: 22px;
	display: inline-block;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	speak: none;
	text-align: center;
	text-decoration: inherit;
	text-transform: none;
	vertical-align: top;
	margin-right: 5px;
	position: relative;
}

/* Entry-format */

.format-aside .entry-format:before {
	content: "\f06e";
}
.format-image .entry-format:before {
	content: "\f03e";
}
.format-gallery .entry-format:before {
	content: "\f1ad";
}
.format-video .entry-format:before {
	content: "\f03d";
}
.format-status .entry-format:before {
	content: "\f130";
}
.format-quote .entry-format:before {
	content: "\f10d";
}
.format-link .entry-format:before {
	content: "\f0c1";
}
.format-chat .entry-format:before {
	content: "\f086";
}
.format-audio .entry-format:before {
	content: "\f028";
}
.entry-footer {
	border-bottom: 1px solid #c5c5c5;
	clear: both;
	text-align: center;
}
.entry-footer .entry-meta .entry-format,
.entry-footer .entry-meta .author {
	float: left;
}
.entry-footer .entry-meta .comments {
	float: right;
	margin-right: 0px;
}
/* ----- Entry Meta Link Button ----- */
.entry-footer a.more-link {
	border-bottom: 1px solid #717171;
	border-top: 1px solid #717171;
	display: inline-block;
	font-size: 11px;
	margin-bottom: 20px;
	padding: 3px 12px;
	text-transform: uppercase;
}

/* #Post Image
================================================== */
.post-image-content {
	position: relative;
}
.post-featured-image {
	margin-bottom: 30px;
	text-align: left;
}
.post-featured-image a {
	display: block;
} 
.home .post-featured-image {
	text-align: center;
}
.small_image_blog .post-featured-image {
	text-align: left;
}

/* #Entry Content
================================================== */
.entry-content {
	display: block;
	margin: 0px 0px 100px;
}
#fp_primary .entry-content {
	display: block;
	margin: 0px 0px 0px;
}
#onecolumn_primary .entry-content {
	display: block;
	margin: 0px 0px 0px;
}
.entry-content dt,
.comment-content dt {
	font-weight: bold;
}
.entry-content dd,
.comment-content dd {
	margin-bottom: 20px;
}
.entry-content td,
.comment-content td {
	padding: 8px;
}
.entry-content ul,
.entry-content ol {
	margin: 0px 0px 30px 30px;
}
.entry-content li > ul, 
.entry-content li > ol {
	margin-bottom: 0px;
}

.entry-content a {
	text-decoration: underline;
}

.entry-content a:hover {
	/*text-decoration: none;*/
}

/* 21.0 Gallery
================================================== */
.gallery {
	display: inline-block;
	margin-bottom: 20px;
}
.gallery-item {
	float: left;
	margin: 0 4px 4px 0;
	overflow: hidden;
	position: relative;
}
.gallery-columns-1 .gallery-item {
	max-width: 100%;
}
.gallery-columns-2 .gallery-item {
	max-width: 48%;
	max-width: -webkit-calc(50% - 4px);
	max-width:         calc(50% - 4px);
}
.gallery-columns-3 .gallery-item {
	max-width: 32%;
	max-width: -webkit-calc(33.3% - 4px);
	max-width:         calc(33.3% - 4px);
}
.gallery-columns-4 .gallery-item {
	max-width: 23%;
	max-width: -webkit-calc(25% - 4px);
	max-width:         calc(25% - 4px);
}
.gallery-columns-5 .gallery-item {
	max-width: 19%;
	max-width: -webkit-calc(20% - 4px);
	max-width:         calc(20% - 4px);
}
.gallery-columns-6 .gallery-item {
	max-width: 15%;
	max-width: -webkit-calc(16.7% - 4px);
	max-width:         calc(16.7% - 4px);
}
.gallery-columns-7 .gallery-item {
	max-width: 13%;
	max-width: -webkit-calc(14.28% - 4px);
	max-width:         calc(14.28% - 4px);
}
.gallery-columns-8 .gallery-item {
	max-width: 11%;
	max-width: -webkit-calc(12.5% - 4px);
	max-width:         calc(12.5% - 4px);
}
.gallery-columns-9 .gallery-item {
	max-width: 9%;
	max-width: -webkit-calc(11.1% - 4px);
	max-width:         calc(11.1% - 4px);
}
.gallery-columns-1 .gallery-item:nth-of-type(1n),
.gallery-columns-2 .gallery-item:nth-of-type(2n),
.gallery-columns-3 .gallery-item:nth-of-type(3n),
.gallery-columns-4 .gallery-item:nth-of-type(4n),
.gallery-columns-5 .gallery-item:nth-of-type(5n),
.gallery-columns-6 .gallery-item:nth-of-type(6n),
.gallery-columns-7 .gallery-item:nth-of-type(7n),
.gallery-columns-8 .gallery-item:nth-of-type(8n),
.gallery-columns-9 .gallery-item:nth-of-type(9n) {
	margin-right: 0;
}
.gallery-columns-1.gallery-size-medium figure.gallery-item:nth-of-type(1n+1),
.gallery-columns-1.gallery-size-thumbnail figure.gallery-item:nth-of-type(1n+1),
.gallery-columns-2.gallery-size-thumbnail figure.gallery-item:nth-of-type(2n+1),
.gallery-columns-3.gallery-size-thumbnail figure.gallery-item:nth-of-type(3n+1) {
	clear: left;
}

/* #Post-Image-Paging Navigation
================================================== */
.wp-pagenavi,
#main ul.default-wp-page {
	margin: 50px 0;
}
.wp-pagenavi .pages {
	padding: 6px 12px;
	color: #747474;
}
.wp-pagenavi .current,
.wp-pagenavi a {
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
	border-radius: 3px;
	color: #747474;
	display: block;
	float: left;
	border: 1px solid rgba(0, 0, 0, 0.15);
	padding: 4px 11px;
}
.wp-pagenavi .current,
.wp-pagenavi a:hover,
.wp-pagenavi span.current {
	color: #747474;
	border: 1px solid rgba(0, 0, 0, 0.15);
	background-color: #f4f4f4;
}
.wp-pagenavi span.current {
	font-weight: 200;
}
/* ----- wp-pagenavi ----- */
.wp-pagenavi {
	text-align: center;
}
.wp-pagenavi .current,
.wp-pagenavi a {
	display: inline-block;
	float: none;
	margin-left: 4px;
}

/* ----- Default wp-page ----- */
#main ul.default-wp-page {
	margin-left: 0;
	list-style: none;
	padding-bottom: 0;
}
ul.default-wp-page li a {
	color: #b3b3b3;
	font-size: 14px;
}
ul.default-wp-page li a:hover {
	text-decoration: underline;
}
ul.default-wp-page li {
	padding: 0px 0px 20px;
}
ul.default-wp-page li.previous {
	float:left;	
}
ul.default-wp-page li.next {
	float:right;
}
ul.default-wp-page li a {
	display: inline-block;
}

/* 22.0 Attachments
================================================== */
.image-attachment div.attachment {
	background-color: #f9f9f9;
	border: 1px solid #ddd;
	border-width: 1px 0;
	margin: 0 -8.9% 1.625em;
	overflow: hidden;
	padding: 1.625em 1.625em 0;
	text-align: center;
}
.image-attachment div.attachment img {
	display: block;
	height: auto;
	margin: 0 auto 1.625em;
	max-width: 100%;
}
.image-attachment div.attachment a img {
	border-color: #f9f9f9;
}
.image-attachment div.attachment a:focus img,
.image-attachment div.attachment a:hover img,
.image-attachment div.attachment a:active img {
	border-color: #ddd;
	background-color: #fff;
}
.image-attachment .entry-caption p {
	font-size: 10px;
	letter-spacing: 0.1em;
	line-height: 2.6em;
	margin: 0 0 2.6em;
	text-transform: uppercase;
}

/* 23.0 Comments
================================================== */
.comments-title {
	font-size: 30px;
	font-weight: normal;
	line-height: 38px;
	padding-bottom: 15px;
}
#main .comments-area ul,
#main .comments-area ol {
	margin: 0 0 30px 30px;
}
#main .comments-area ul ul,
#main .comments-area ol ol {
	margin-bottom: 0;
}
.comments-area article {
	margin: 24px 0;
	margin: 1.714285714rem 0;
}
.comments-area article header {
	margin: 0 0 48px;
	margin: 0 0 3.428571429rem;
	overflow: hidden;
	position: relative;
}
.comments-area article header img {
	float: left;
	padding: 0;
	line-height: 0;
}
.comments-area article header cite,
.comments-area article header time {
	display: block;
	margin-left: 85px;
	margin-left: 6.071428571rem;
}
.comments-area article header cite {
	font-style: normal;
	font-size: 15px;
	font-size: 1.071428571rem;
	line-height: 1.42857143;
}
.comments-area article header time {
	line-height: 1.714285714;
	text-decoration: none;
	font-size: 12px;
	font-size: 0.857142857rem;
	color: #484848;
}
.comments-area article header a {
	text-decoration: none;
	color: #484848;
}
.comments-area article header a:hover {
	color: #21759b;
}
.comments-area article header cite a {
	color: #444;
}
.comments-area article header cite a:hover {
	text-decoration: underline;
}
.comments-area article header h4 {
	position: absolute;
	top: 0;
	right: 0;
	padding: 6px 12px;
	padding: 0.428571429rem 0.857142857rem;
	font-size: 12px;
	font-size: 0.857142857rem;
	font-weight: normal;
	color: #fff;
	background-repeat: repeat-x;
	background: #0088d0;
	background: -webkit-linear-gradient(#009cee, #0088d0);
	background: -moz-linear-gradient(#009cee, #0088d0);
	background: -ms-linear-gradient(#009cee, #0088d0);
	background: -o-linear-gradient(#009cee, #0088d0);
	background: -webkit-gradient(#009cee, #0088d0);
	background: linear-gradient(#009cee, #0088d0);
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
	border-radius: 3px;
	border: 1px solid #007cbd;
}
.comments-area li.bypostauthor cite span {
	position: absolute;
	margin-left: 5px;
	margin-left: 0.357142857rem;
	padding: 2px 5px;
	padding: 0.142857143rem 0.357142857rem;
	font-size: 10px;
	font-size: 0.714285714rem;
}
a.comment-reply-link {
	font-size: 13px;
	font-size: 0.928571429rem;
	line-height: 1.846153846;
	color: #747474;
}
a.comment-reply-link:hover {
	color: #21759b;
}
.commentlist .pingback {
	line-height: 1.714285714;
	margin-bottom: 24px;
	margin-bottom: 1.714285714rem;
}
.commentlist .children {
	margin-left: 48px;
	margin-left: 3.428571429rem;
}

/* ----- Comment form ----- */
#respond {
	margin-top: 48px;
	margin-top: 3.428571429rem;
}
#respond h3#reply-title {
	font-size: 30px;
	font-weight: normal;
	line-height: 38px;
	padding-bottom: 15px;
}
#respond h3#reply-title #cancel-comment-reply-link {
	margin-left: 10px;
	margin-left: 0.714285714rem;
	font-weight: normal;
	font-size: 12px;
	font-size: 0.857142857rem;
}
#respond form {
	margin: 24px 0;
	margin: 1.714285714rem 0;
}
#respond form p {
	margin: 11px 0;
	margin: 0.785714286rem 0;
}
#respond form p.logged-in-as {
	margin-bottom: 24px;
	margin-bottom: 1.714285714rem;
}
#respond form label {
	display: block;
	line-height: 1.714285714;
}
#respond form input[type="text"],
#respond form textarea {
		-webkit-box-sizing: border-box;
  		-moz-box-sizing: border-box;
  	box-sizing: border-box;
	font-size: 12px;
	font-size: 0.857142857rem;
	line-height: 1.714285714;
	padding: 10px;
	padding: 0.714285714rem;
	width: 100%;
}
#respond form p.form-allowed-tags {
	margin: 0;
	font-size: 12px;
	font-size: 0.857142857rem;
	line-height: 2;
	color: #484848;
}
.required {
	color: red;
}
label ~ span.required {
	display: block;
	float: left;
	margin: -18px 0 0 -16px;
	margin: -1.285714286rem 0 0 -1.142857143rem;
}

/* 24.0 Pages
================================================== */
/* ----- Page Title ----- */
.page-header {
	padding: 0 0 30px;
	position: relative;
	overflow: hidden;
}
.elementor-template-full-width .page-header,
.elementor-page .page-header,
.siteorigin-panels.full-width-layout .page-header {
	display: none;
}
.error-404 .page-header {
	padding: 15px 20px 50px;
	margin-top: 0px;
	background-color: #fddbdd;
}
.error-404 .page-title {
	padding: 0px;
}
.error-404 .page-content {
	padding: 20px 0px;
}
.page-title {
	color: #717171;
	float: left;
	font-size: 24px;
	line-height: 32px;
	padding: 0;
}

/* ----- Contact Page ----- */
.wpcf7-select {
	background-color: #fafafa;
	border: 1px solid rgba(0, 0, 0, 0.1);
	margin: 0 0 30px;
	padding: 10px;
	width: 40%;
	display: block;
}
.wpcf7 p {
	margin-bottom: 0;
}
.wpcf7 input {
	margin-bottom: 0;
}
input[type="file"]  {
	margin: 0 0 30px;
	display: block;
}
input[type="checkbox"] {
	margin: 0px 0px 30px;
}

/* 25.0 Widgets
================================================== */
.widget {
	margin-bottom: 30px;
}
.widget ul li a {
	color: #000;
}
.widget ul li a:hover {
	text-decoration: underline;
}
.widget-title {
	font-size: 16px;
	line-height: 24px;
	font-weight: 400;
	padding-bottom: 20px;
}
.widget-title,
.widget-title a {
	color:#000;
}
.widget-title a:hover {
	color:#808080;
}
/*#secondary .widget-title:after {
	-moz-border-bottom-colors: none;
	-moz-border-left-colors: none;
	-moz-border-right-colors: none;
	-moz-border-top-colors: none;
	border-color: #161616 transparent transparent;
	border-image: none;
	border-style: solid;
	border-width: 7px;
	content: "";
	height: 0;
	left: 50%;
	margin-left: -7px;
	position: absolute;
	top: 100%;
	width: 0;
}*/
#secondary .widget-title {
	color: #008ccf;
	font-size: 1.22em;
	line-height: 24px;
	margin-bottom: 20px;
	padding: 0;
	position: relative;
	text-align: left;
	text-transform: uppercase;
	font-weight: bold;
}

/* Search Widget
================================================== */
input.search-field {
		-webkit-border-radius: 0;
		-moz-border-radius: 0;
	border-radius: 0;
	color: #747474;
	float: left;
	font-size: 14px;
	height: 46px;
	line-height: 22px;
	margin: 0;
	outline: medium none;
	padding: 6px 8px;
	width: 80%; /* fallback if needed */
	width: calc(100% - 60px);
}
.search-submit {
	background-color: #5278ac;
	border: 1px solid #5278ac;
		-webkit-border-radius: 0;
		-moz-border-radius: 0;
	border-radius: 0;
	color: #fff;
	cursor: pointer;
	font-size: 16px;
	height: 46px;
	margin-left: -1px;
	outline: medium none;
	right: 0;
	width: 60px;
		-moz-transition: all 300ms ease-out 0s;
		-o-transition: all 300ms ease-out 0s;
		-webkit-transition: all 300ms ease-out 0s;
	transition: all 300ms ease-out 0s;
}
.search-submit:hover {
	font-size: 22px;
}

/* Promonational Area
================================================== */
.promonational-area {
	margin-bottom: 20px;
}
.promonational-img {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	height: 220px;
	padding: 15px;
	position: relative;
	width: 100%;
}
.promonational-area .promonational-link {
	bottom: 0;
	display: block;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 99;
}
.promonational-overlay {
	border: 1px solid #fff;
	height: 100%;
	position: relative;
	text-align: center;
}
.promonational-overlay h4 {
	background-color: rgba(255, 255, 255, 0.9);
	color: #000;
	display: inline-block;
	font-size: 11px;
	left: 50%;
	letter-spacing: 2px;
	line-height: 18px;
	max-width: 80%;
	padding: 8px 12px 7px 14px;
	position: absolute;
	text-transform: uppercase;
	top: 50%;
		-webkit-transform: translateY(-50%) translateX(-50%);
		-moz-transform: translateY(-50%) translateX(-50%);
		-o-transform: translateY(-50%) translateX(-50%);
		-ms-transform: translateY(-50%) translateX(-50%);
	transform: translateY(-50%) translateX(-50%);
}

/* Contact Widget
================================================== */
.widget_contact ul li i {
	font-size: 14px;
	line-height: 24px;
	padding-right: 5px;
	vertical-align: top;
}
.widget_contact ul li {
	padding: 6px 0 7px 0;
}
.widget_contact ul li a:hover {

}

/* Calendar Widget
================================================== */
.widget_calendar #wp-calendar {
	width: 90%;
	margin: 0 auto;
}
.widget_calendar #wp-calendar caption,
.widget_calendar #wp-calendar th,
.widget_calendar #wp-calendar td {
	text-align: center;
}
.widget_calendar #wp-calendar caption {
	font-size: 18px;
	padding: 0 0 30px;
	text-transform: uppercase;
}
.widget_calendar #wp-calendar th,
.widget_calendar #wp-calendar tfoot td {
	background-color: #f4f4f4;
}


/* Posts Widget
================================================== */
.widget_posts {
	margin-bottom: 30px;
}
.widget_posts .post-title a:hover {
	text-decoration: underline;
}
.widget_posts .article-calendar {
	font-size: 14px;
}

/* Tag Cloud Widget
================================================== */
.widget_tag_cloud a {
	border: 1px solid #ddd;
	color: #747474;
	display: inline-block;
	font-size: 13px !important;
	margin-bottom: 10px;
	margin-right: 5px;
	padding: 2px 12px;
}
.widget_tag_cloud a:hover {
	background-color: #eee;
}


.footer_bnr_wrap {
	background-color: #d9e5e6;
	text-align: center;
	padding: 80px 20px;
	margin: 0 calc(50% - 50vw);
	width: 100vw;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
	display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
	justify-content: center;
	column-gap: 50px;
}
.footer_bnr_wrap a {
	width: 50%;
	max-width: 680px;
	padding: 40px 30px 0 30px;
	background-color: #fff;
	border-radius: 20px;
	text-align: left;
	text-decoration: none;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
	display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
	justify-content: space-between;
}
.footer_bnr_wrap a:hover {
  filter: brightness(0.93);
  transition: 0.3s;
}
.footer_bnr_wrap a div.illust {
	width: 30%;
	max-width: 200px;
	min-width: 160px;
	background-repeat: no-repeat;
	background-position: bottom;
	background-size: 100%;
}
.footer_bnr_wrap a.joblist div.illust {
	background-image: url(img/illust_job.png);
}
.footer_bnr_wrap a.contact div.illust {
	background-image: url(img/illust_contact.png);
}
.footer_bnr_wrap a div.text {
	width: 62%;
	padding: 15px 0 11% 30px;
}
.footer_bnr_wrap a div.text div.title {
	font-size: clamp(22px, 2.5vw, 30px);
	color: #000;
	font-weight: bold;
	line-height: 1.3;
	margin-bottom: 15px;
}
.footer_bnr_wrap a div.text div.title span {
	display: block;
	font-size: 14px;
	color: #74afd0;
}
.footer_bnr_wrap a div.text p {
	line-height: 1.5;
	margin: 0;
	font-size: clamp(14px, 2.5vw, 16px);
	color: #000;
}

/* ----- Site Info ----- */
.site-info {
	background-color: #000;
	padding: 80px 0px 80px 0;
	text-align: left;
}



.footer_nav_frame {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
  display: flex;
  margin: 0 auto 10px;
  padding: 0 0 50px 0;
  max-width: 1200px;
  border-bottom: 1px solid #808080;
}
.footer_nav_frame a {
	color: #fff;
	text-decoration: none;
}
.footer_nav_frame a:hover {
	color: #808080;
}
.footer_nav_frame div.logo_wrap {
	width: 150px;
}
.footer_nav_frame div.logo_wrap img {
	width: 100px;
}
.footer_nav_frame div.nav1 {
	width: auto;
}
.footer_nav_frame div.nav2 {
	width: auto;
}
.footer_nav_frame div.nav3 {
	width: auto;
}
.footer_nav_frame div.nav1 ,
.footer_nav_frame div.nav2  {
	padding-right: 8%;
}
.footer_nav_frame div.nav1 a,
.footer_nav_frame div.nav2 a,
.footer_nav_frame div.nav3 a {
	display: block;
	font-size: clamp(17px, 1vw, 18px);
	font-weight: bold;
}
.footer_nav_frame div.nav3 a {
	margin-bottom: 8px;
}
.footer_nav_frame div.nav1 ul,
.footer_nav_frame div.nav2 ul {
	list-style: none;
	margin: 5px 0 0px 0;
}
.footer_nav_frame div.nav1 ul li,
.footer_nav_frame div.nav2 ul li {
	text-align: left;

}
.footer_nav_frame div.nav1 ul li a,
.footer_nav_frame div.nav2 ul li a {
	font-size: clamp(14px, 1vw, 15px);
	font-weight: normal;

}
.footer_nav_frame div.sp_nav {
	display: none;
}
#copyright {
	display: block;
	font-size: 13px;
	padding: 0;
	margin: 0 auto;
	max-width: 1200px;
	color: #999999;
	text-align: right;
}

.site-info .social-links {
	float: none;
	margin-bottom: 15px;
	text-align: center;
}
.site-info .social-links {
	display: inline-block;
}
.site-info .social-links a {
	border: 1px solid #545454;
	color: #545454;
	display: inline-block;
	margin: 10px 8px 0;
}
.site-info .social-links a:hover {
	border-color: transparent;
}



/* Googlemap Widget
================================================== */
.googlemaps_widget {
	width: 100%;
	margin-bottom: 50px;
}
.maps-container {
	border: 1px solid #ccc;
	margin: 0px;
	padding: 0px;
	height: 402px;
}
.googlemaps_widget iframe {
	width: 100%;
	height: 400px;
}

/* 26.0 Footer
================================================== */
#colophon p {
	
}
#colophon {

}
#colophon .widget-wrap {
	background-color: #fff;
	/*border-bottom: 1px solid rgba(0, 0, 0, 0.1);*/
	border-top: 1px solid #B3B3B3;
	padding: 70px 0;
	text-align: center;
}
#colophon .widget-area {
	max-width: 1200px;
	margin: 0 auto;
	padding: 50px 0 0px;
	/*	display: -webkit-box;
		display: -moz-box;
		display: -ms-flexbox;
		display: -webkit-flex;
	display: flex;
	    -webkit-box-orient: horizontal;
	    -moz-box-orient: horizontal;
	    -webkit-box-direction: normal;
	    -moz-box-direction: normal;
	    -ms-flex-direction: row;
	    -webkit-flex-direction: row;
    flex-direction: row;*/
}

#colophon .widget {
	margin-bottom: 0px;
}
#colophon .widget ul li a {
	font-size: 13px;
	color: #000;
}
#colophon .widget ul li a:hover {
	color: #5278ac;
}
#colophon .widget_categories ul li a,
#colophon .widget_pages ul li a,
#colophon .widget_nav_menu ul li a,
#colophon .widget_recent_entries ul li a,
#colophon .widget_categories ul li a,
#colophon .widget_recent_comments ul li a,
#colophon .widget_meta ul li a,
#colophon .widget_rss ul li a {
	display: block;
}
#colophon .widget_categories ul ul li a,
#colophon .widget_pages ul ul li a,
#colophon .widget_nav_menu ul ul li a,
#colophon .widget_recent_entries ul ul li a,
#colophon .widget_categories ul ul li a,
#colophon .widget_recent_comments ul ul li a,
#colophon .widget_meta ul ul li a,
#colophon .widget_rss ul ul li a {
	padding-left: 20px;
}
#colophon .widget_categories ul ul ul li a,
#colophon .widget_pages ul ul ul li a,
#colophon .widget_nav_menu ul ul ul li a,
#colophon .widget_recent_entries ul ul ul li a,
#colophon .widget_categories ul ul ul li a,
#colophon .widget_recent_comments ul ul ul li a,
#colophon .widget_meta ul ul ul li a,
#colophon .widget_rss ul ul ul li a {
	padding-left: 30px;
}
#colophon .widget-title:after {
	background-color: #5278ac;
	content: " ";
	display: block;
	height: 1px;
	margin: 12px 0 auto;
	width: 60px;
}
#colophon .widget-title {
	font-family: 'Lato', sans-serif;
	font-size: 18px;
	line-height: 26px;
	text-transform: uppercase;
}
.widget_search .widget-title {
	display: none;
}
.widget_rss ul li {
	display: block;
	padding: 10px 0px;
}
.widget_meta ul li,
.widget_recent_comments ul li,
.widget_categories ul li,
.widget_recent_entries ul li,
.widget_archive ul li {
	display: block;
	padding: 8px 0 8px 0px;
	line-height: 1.4em;
}

.widget_recent_entries span {
	display: block;
	color: #818181;
	font-size: 11px;
}
#colophon .widget_posts .post-title {
	font-size: 15px;
	line-height: 22px;
	padding-bottom: 0px;
}
	/*フッターオフィシャルパートナー*/
.partner_title {
	color: #B3B3B3;
	font-size: 1.6em;
	font-weight: bold;
	text-align: center;
}
#colophon .column-4 #partner_logo img.so-widget-image {
	border: 1px solid #ccc;
}

/* Footer column
================================================== */
.column-4 {
	/*float: left;*/
	padding: 0 20px 40px;
}
.column-4 {
	width: 100%;
}
.column-4:nth-child(4n+5) {
 	clear: both;
}
#colophon .column-4 {
	margin-bottom: 30px;
	padding: 0 0px;
	/*border-right: 1px solid #e4e4e4;*/
		display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
		display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
		display: -ms-flexbox;      /* TWEENER - IE 10 */
		display: -webkit-flex;     /* NEW - Chrome */
	display: flex;             /* NEW, Spec - Opera 12.1, Firefox 20+ */
		-webkit-box-orient: vertical;
	    -moz-box-orient: vertical;
	    -webkit-box-direction: normal;
	    -moz-box-direction: normal;
	    -ms-flex-direction: column;
	    -webkit-flex-direction: column;
    flex-direction: column;
}
/*4個目非表示*/
#colophon .column-4:last-child {
	display: none;
}
/* ----- Footer Navigation ----- */
#footer-navigation {
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
	padding: 10px 0;
	text-align: center;
}
#footer-navigation a:hover{
    color: #5278ac;
}
#footer-navigation a {
    color: #717171;
    display: block;
    float: left;
    font-size: 12px;
    font-weight: normal;
    padding: 0 20px;
    text-transform: uppercase;
}
#footer-navigation ul li {
	position: relative;
	display: inline-block;
}
#footer-navigation ul li:before {
	content: '';
    border-right: 1px solid #999;
    position: absolute;
    height: 40%;
    right: 0;
    top: 30%;
}
#footer-navigation ul li:last-child:before {
	border-right: none;
}

/* #Main Slider
================================================== */
.main-slider,
.main-slider .layer-slider,
.main-slider .container {
	position: relative;
	height: 100%;
}
.main-slider .show-display {
	display: block;
}
.main-slider .hide-display {
	display: none;
}
.main-slider .image-slider {
	background-position: center center;
	background-size: cover;
	  	-webkit-box-sizing: border-box;
  		-moz-box-sizing: border-box;
  	box-sizing: border-box;
  	min-height: 600px;
  	position: relative;
}
.slider-content {
	left: 0;
	position: absolute;
	right: 0;
	text-align: center;
	top: 50%;
		-webkit-transform: translateY(-50%);
		-moz-transform: translateY(-50%);
		-o-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	margin: 0 auto;
	width: 70%;
}
.slider-content .slider-title,
.slider-content .slider-title a {
	color: #000;
	font-size: 36px;
	font-weight: 400;
	line-height: 44px;
}
.slider-content .slider-text h3 {
	color: #000;
	font-size: 16px;
	font-weight: 300;
	line-height: 24px;
}

/* ----- Slider Buttons ----- */
a.slider-prev, a.slider-next {
	color: #999;
	font-size: 80px;
	line-height: 1;
	opacity: 0;
		-moz-opacity: 0.3;
		filter:alpha(opacity=30);
	position: absolute;
	top: 50%;
		-webkit-transform: translateY(-50%);
		-moz-transform: translateY(-50%);
		-o-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
	transform: translateY(-50%);
		-webkit-transition: all 300ms ease-out;
		-moz-transition: all 300ms ease-out;
		-o-transition: all 300ms ease-out;
		-ms-transition: all 300ms ease-out;	
	transition: all 300ms ease-out;
	z-index: 99;
}
a.slider-prev {
	left: 120px;
}
a.slider-next {
	right: 120px;
}
.main-slider:hover a.slider-prev {
	left: 70px;
	opacity: 0.3;
		-moz-opacity: 0.3;
		filter:alpha(opacity=30);
}
.main-slider:hover a.slider-next {
	right: 70px;
	opacity: 0.3;
		-moz-opacity: 0.3;
		filter:alpha(opacity=30);
}
.main-slider a.slider-prev:hover, .main-slider a.slider-next:hover {
    opacity: 0.7;
		-moz-opacity: 0.7;
		filter:alpha(opacity=70);
}

/* ----- Slider Pagination Buttons ----- */
.slider-button {
	text-align: center;
	line-height: 0;
	position: absolute;
	width: 100%;
	bottom: 40px;
	z-index: 99;
}
.slider-button a {
	background-color: transparent;
	border: 1px solid #999;
	cursor: pointer;
	display: inline-block;
	font-size: 0;
	height: 14px;
	line-height: 14px;
	margin: 0 3px;
	opacity: 0.5;
		-moz-opacity: 0.5;
		filter:alpha(opacity=50);
	text-align: center;
	vertical-align: middle;
	width: 14px;
}
nav.slider-button a.active, 
nav.slider-button a:hover {
	background-color: #ddd;
	  	-moz-transition:background .3s ease;
	  	-webkit-transition:background .3s ease;
	  	-ms-transition:background .3s ease;
  	transition:background .3s ease;
}

/* #bbpress
================================================== */
#bbpress-forums,
div.bbp-breadcrumb, div.bbp-topic-tags,
div.bbp-template-notice p,
#bbpress-forums .bbp-topic-content ul.bbp-topic-revision-log, 
#bbpress-forums .bbp-reply-content ul.bbp-topic-revision-log, 
#bbpress-forums .bbp-reply-content ul.bbp-reply-revision-log {
	font-size: 14px;
}
#bbpress-forums p.bbp-topic-meta img.avatar, 
#bbpress-forums ul.bbp-reply-revision-log img.avatar, 
#bbpress-forums ul.bbp-topic-revision-log img.avatar, 
#bbpress-forums div.bbp-template-notice img.avatar, 
#bbpress-forums .widget_display_topics img.avatar, 
#bbpress-forums .widget_display_replies img.avatar, 
#bbpress-forums p.bbp-topic-meta img.avatar {
	border: 0px;
	float: none;
	margin-bottom: 2px;
	margin-right: 1px;
}
.bbp-pagination {
	text-align: right;
}
.bbp-pagination-count {
	float: none;
}
#bbpress-forums ul.bbp-lead-topic,
#bbpress-forums ul.bbp-topics,
#bbpress-forums ul.bbp-forums,
#bbpress-forums ul.bbp-replies,
#bbpress-forums ul.bbp-search-results {
	font-size: 14px;
	overflow: hidden;
	border: 1px solid #ddd;
	margin-bottom: 20px;
	clear: both;
}
#bbpress-forums li.bbp-header,
#bbpress-forums li.bbp-footer {
	background: #f4f4f4;
	border: none;
	font-weight: bold;
	text-align: center;
	padding: 15px 18px 15px 18px;
}
#bbpress-forums li.bbp-footer {
	padding: 8px;
	border-top: 1px solid #ddd;
}
#bbpress-forums .bbp-topics a {
	color: #333;
}
#bbpress-forums .bbp-topics a:hover {
	color: #5278ac;
}
#bbpress-forums li.bbp-body ul.forum, 
#bbpress-forums li.bbp-body ul.topic {
	border-top: 1px solid #ddd;
}
#bbpress-forums li.bbp-header ul {
	font-size: 16px;
}
#bbpress-forums li.bbp-body ul.forum, #bbpress-forums li.bbp-body ul.topic {
	font-size: 14px;
	padding: 12px 0 10px 18px;	
}
#bbpress-forums .bbp-forum-info .bbp-forum-content,
#bbpress-forums p.bbp-topic-meta {
	font-size: 14px;
	margin: 5px 0 5px;
	padding: 0;
	word-wrap: break-word;
}
div.bbp-template-notice.info {
	color: #1891a8;
}
div.bbp-template-notice.info a {
	color: #1891a8;
	font-weight: 400;
}
#bbpress-forums p.bbp-topic-meta img.avatar {
  width:25px;
  height:25px;
}
#bbpress-forums fieldset.bbp-form {
	border: none;
	padding: 0;
}
#bbpress-forums fieldset.bbp-form legend {
	font-size: 15px;
	font-weight: bold;
	padding: 0 0 10px;
}
div.bbp-template-notice, div.indicator-hint {
    background: #f4f4f4;
    border: 1px solid #ddd;
    padding: 15px 20px;
    	-webkit-border-radius: 0px;
		-moz-border-radius: 0px;
    border-radius: 0px;
}
#bbpress-forums .wp-editor-container, 
#wp-bbp_topic_content-editor-container, 
#wp-bbp_reply_content-editor-container {
	border: 1px solid #ddd;
}
#wp-bbp_topic_content-editor-container textarea {
	background-color: transparent;
}
.bbp-topic-form input#bbp_topic_title, 
.bbp-topic-form input#bbp_topic_tags,
.bbp-topic-form select#bbp_stick_topic_select, 
.bbp-topic-form select#bbp_topic_status_select { 
	color: #AAA9A9;
	background-color: #ffffff;
    border: 1px solid #ddd;
		-webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1) inset;  /* Safari 3-4, iOS 4.0.2 - 4.2, Android 2.3+ */
		-moz-box-shadow:    0 1px 5px rgba(0, 0, 0, 0.1) inset;  /* Firefox 3.5 - 3.6 */
	box-shadow:         	0 1px 5px rgba(0, 0, 0, 0.1) inset;  /* Opera 10.5, IE 9, Firefox 4+, Chrome 6+, iOS 5 */
    color: #747474;
    font-size: 13px;
    padding: 8px 2%;
}
.bbp-submit-wrapper button.submit {
	border: 1px solid #5278ac;
	background-color: #5278ac;
	color: #fff;
	padding: 8px 30px;
	font-size: 15px;
		-ms-transition: all 0.3s ease 0s;
		-moz-transition: all 0.3s ease 0s;
		-webkit-transition: all 0.3s ease 0s;
		-o-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
}
.bbp-submit-wrapper button.submit:hover {
	background-color: #ddd;
	border: 1px solid #ccc;
	color: #666;
	cursor: pointer;
}
.bbp-search-form input[type="submit"] {
	display: inline-block;
	height: 45px;
	margin: 0px 0px 0px -4px;
}
div.bbp-template-notice, div.indicator-hint {
	color: #ed1c24;
}

@media only screen and (max-width: 480px) {
	.bbp-search-form input[type="submit"] {
		height: 29px;
	}
}

/* Woocommerce
================================================== */
.woocommerce #main .page-title {
	display: none;
}
.woocommerce-ordering .orderby {
	background-color: #fafafa;
	border: 1px solid rgba(0, 0, 0, 0.1);
	padding: 5px;
}
.woocommerce #respond input#submit, 
.woocommerce a.button, 
.woocommerce button.button, 
.woocommerce input.button {
	background-color: #5278ac;
	color: #fff;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
	border-radius: 3px;
	font-size: 14px;
	font-weight: 400;
		-ms-transition: all 0.3s ease 0s;
		-moz-transition: all 0.3s ease 0s;
		-webkit-transition: all 0.3s ease 0s;
		-o-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
}
.woocommerce #respond input#submit.alt, 
.woocommerce a.button.alt, 
.woocommerce button.button.alt, 
.woocommerce input.button.alt {
	background-color: #5278ac;
	color: #fff;
		-ms-transition: all 0.3s ease 0s;
		-moz-transition: all 0.3s ease 0s;
		-webkit-transition: all 0.3s ease 0s;
		-o-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
}	
.woocommerce #respond input#submit.alt:hover, 
.woocommerce a.button.alt:hover, 
.woocommerce button.button.alt:hover, 
.woocommerce input.button.alt:hover {
	background-color: #999;
	color: #fff;
}
.woocommerce .quantity .qty {
	height: 34px;
}
.woocommerce span.onsale {
	background-color: #2eb851;
	min-height: 4em;
	min-width: 4em;
	padding: 0.402em;
	font-size: 14px;
	left: -20px;
	top: -20px;
	font-weight: 500;
}
.woocommerce ul.products li.product .onsale {
	margin: -1em -1em 0 0;
}
.woocommerce ul.products li.product h3 {
	font-size: 1.2em;
}
.woocommerce ul.products li.product .price {
	font-size: 1em;
}
.woocommerce div.product p.price, 
.woocommerce div.product span.price {
	color: #747474;
}
.woocommerce ul.products li.product .price {
	color: #747474;
}
.woocommerce div.product .woocommerce-tabs .panel {
	padding-top: 20px;
}
.woocommerce-demo-store p.demo_store {
	background-color: #5278ac;
}
.woocommerce #content table.cart td.actions .input-text, 
.woocommerce table.cart td.actions .input-text, .woocommerce-page #content table.cart td.actions .input-text, 
.woocommerce-page table.cart td.actions .input-text {
	width: auto;
}
.woocommerce .woocommerce-message:before {
	color: #5278ac;
}
.woocommerce-cart table.cart td.actions .coupon .input-text {
	padding: 10px 6px 12px;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
	padding: 15px;
}
.woocommerce table.shop_table td {
	padding: 12px;
	border-top: 0px;
}
.woocommerce table.shop_table {
		-webkit-border-radius: 0px;
		-moz-border-radius: 0px;
	border-radius: 0px;
}
.woocommerce #reviews #comments ol.commentlist li .comment-text,
.woocommerce div.product .woocommerce-tabs ul.tabs li {
		-webkit-border-radius: 0px;
		-moz-border-radius: 0px;
	border-radius: 0px;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li:after, 
.woocommerce div.product .woocommerce-tabs ul.tabs li:before {
	display: none;
}
.woocommerce nav.woocommerce-pagination ul li a, 
.woocommerce nav.woocommerce-pagination ul li span {
	padding: 0.5em 0.8em;
}
.woocommerce .woocommerce-ordering, 
.woocommerce .woocommerce-result-count {
	margin: 0 0 3em;
}
.woocommerce ul.products li.product a img {
	border: 1px solid #ddd;
	margin: 0px;
}
.woocommerce .widget_price_filter .ui-slider .ui-slider-range,
.woocommerce .widget_price_filter .ui-slider .ui-slider-handle {
	background-color: #2eb851;
}
.woocommerce .widget_price_filter .price_slider_wrapper .ui-widget-content {
	background-color: #008922;
}
.woocommerce .star-rating,
.comment-form-rating .stars span a {
	color: #f9b91e;
}
.woocommerce .woocommerce-product-search input.search-field {
	width: calc(100% - 95px);
}
.woocommerce .woocommerce-product-search button[type="submit"] {
	cursor: pointer;
	height: 46px;
	padding: 0 15px;
	margin-left: -1px;
}
.woocommerce .tagcloud a {
	border: 1px solid #ddd;
	padding: 5px 10px;
}
.woocommerce-review-link {
	color: #747474;
}
#main .woocommerce-MyAccount-navigation > ul {
	list-style: none;
}
.woocommerce-MyAccount-navigation ul li > a {
	border: 1px solid #e4e4e4;
	display: block;
	height: 100%;
	margin-bottom: -1px;
	padding: 8px;
	width: 100%;
}
.woocommerce-MyAccount-navigation ul li > a:hover,
.woocommerce-MyAccount-navigation ul li.is-active {
	background-color: #f8f8f8;
}
.related.products {
	display: inline-block;
}

/* 汎用　======================================== */
.acenter {text-align: center;margin: 0 auto;}
.aleft {text-align: left;}
.aright {text-align: right;}
.vtop {vertical-align: top;}
.vmiddle {vertical-align: middle;}
.vbottom {vertical-align: bottom;}

.red {color: #f00}
.bordeaux {color: #c32a0e}
.blue {color: #008ccf;}
.orange {color: #f08a0a;}
.whitegray {color: #f0f0f0;}
.navy {color: #003066;}
.white {color: #fff;}


.bold {font-weight: bold;}
.fs48 {font-size: 2.66em;}
.fs40 {font-size: 2.22em;}
.fs30 {font-size: 1.66em;}
.fs23 {font-size: 1.27em;}
.fs22 {font-size: 1.22em;}
.fs20 {font-size: 1.11em;}
.fs16 {font-size: 0.88em;}
.fs14 {font-size: 0.77em;}
.fg {font-family: ヒラギノ角ゴ Pro,Hiragino Kaku Gothic Pro,メイリオ,Meiryo,Osaka,ＭＳ Ｐゴシック,MS PGothic,sans-serif;}
.fm {font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
.fr {font-family: 'Roboto Condensed', sans-serif;}

.mt5 {margin-top: 5px;}
.mt10 {margin-top: 10px;}
.mt20 {margin-top: 20px;}
.mt30 {margin-top: 30px;}
.mt40 {margin-top: 40px;}
.mt50 {margin-top: 50px;}
.mt100 {margin-top: 100px;}
.mb5 {margin-bottom: 5px;}
.mb10 {margin-bottom: 10px;}
.mb20 {margin-bottom: 20px;}
.mb30 {margin-bottom: 30px;}
.mb40 {margin-bottom: 40px;}
.mb50 {margin-bottom: 50px;}
.mb60 {margin-bottom: 60px;}
.mb80 {margin-bottom: 80px;}

.mb100 {margin-bottom: 100px;}

.imgborder {
	border: 1px solid #b3b3b3;
}
.imgradius {
	border-radius: 20px;
}
#imgradius img {
	border-radius: 20px;
}
.gray_border {
	border-bottom: 1px solid #ccc;
}
.txtborder {
	text-decoration: underline;
}
.clear {
	clear: both;
}

#fn,
#plan {
    padding-top: 200px;
    margin-top: -200px;
    pointer-events: none;
    position: absolute;
}
#message, #philosophy, #company {
    padding-top: 200px;
    margin-top: -200px;
}
/*※印*/
#main ul.rm {
    list-style: none;
    margin: 0px 0 10px 0;
    text-align: left;
}
#main ul.rm li {
    text-align: left;
    text-indent: -10px;
    padding: 0 0 0 20px;
}
#main ul.rm li:before {
    content: '※';
    display: inline-block;
    position: relative;
    margin-right: 2px;
}
p.rm,
div.rm {
    text-indent: -14px;
    padding-left: 14px;
}
/*小さめ丸リスト*/
#main ul.list {
    list-style: none;
    margin: 0px 0 10px 0;
}
#main ul.list li {
    text-align: left;
    text-indent: -0.8em;
    padding: 0 0 0 1em;
}
#main ul.list li:before {
    content: '';
    display: inline-block;
    position: relative;
    bottom: 3px;
    width: 6px;
    height: 6px;
    margin-right: 8px;
    border-radius: 100%;
    background-color: #1F8A70;
}
/*ボタン*/
.btn a {
	background-color : #333;
	color: #fff;
	border-radius: 8px;
	display: inline-block;
	margin: 0;
	padding: 8px 5px;
	text-align: center;
	font-size: 0.88em;
	font-weight: bold;
	width: 220px;
	text-decoration: none;
	transition: all 0.3s ease-out;
}
.pc_on {
 display: inline;
}
.sp_on {
 display: none;
}

a.notel{
	color: #000;
	text-decoration: none;
	pointer-events: none;
}
.input_required {
	font-size: 12px;
	color: #f00;
	padding-left: 10px;
}
/* reCAPTCHA v3　表示位置 */
.grecaptcha-badge{
    margin-bottom: 90px;
}
/* 動画 */
.youtube {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
}
.youtube iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.youtube_pc {
    display: block;
}
.youtube_sp {
    display: none;
}
/* 地図 */
.gmap {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
}
.gmap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/*電話番号*/
span.syncer-tel,
span.syncer-tel a {
	text-decoration: none;
	color: #000;
}

/*---共通-----------------------------------------------*/

.width1200 {
	max-width: 1200px;
	margin: 0 auto;
}
.width1000 {
	max-width: 1000px;
	margin: 0 auto;
}
.width960 {
	max-width: 960px;
	margin: 0 auto;
}
.width900 {
	max-width: 900px;
	margin: 0 auto;
}
.width860 {
	max-width: 860px;
	margin: 0 auto;
}
.width830 {
	max-width: 830px;
	margin: 0 auto;
}
.width780 {
	max-width: 780px;
	margin: 0 auto;
}
.width630 {
	max-width: 630px;
	margin: 0 auto;
}
.width600 {
	max-width: 600px;
	margin: 0 auto;
}
.page_title_wrap {
	margin: 0 calc(50% - 50vw);
	width: 100vw;
	border-bottom: 1px solid #ccc;
	padding: 20px 20px 40px;
}
.page_title {
	max-width: 1200px;
	margin: 0 auto;
	font-size: clamp(30px, 3vw, 50px);
	font-weight: bold;
	line-height: 1.3;
}
.page_title span {
	display: block;
	font-size: clamp(20px, 2vw, 25px);
}
.news_title_wrap {
	margin: 0 0 100px 0;
}
.contents_title {
	font-size: clamp(30px, 3vw, 50px);
	font-weight: bold;
	line-height: 1.5;
}
.contents_title span {
	display: block;
	font-size: 15px;
}
/*---TOP-----------------------------------------------*/
.top_main {
	position: relative;
}
.top_main div.main_pc {
	
}
.top_main div.main_sp {
	display: none;
}
.top_main div.contents_wrap {
	width: 50%;
	max-width: 600px;
	position: absolute;
	top: 43%;
	left: 17%;
	bottom: 23%;
}
/*アニメーション*/
.top_main div.contents_wrap div.title {
	font-size: clamp(28px, 2vw, 50px);
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: 10px;
}
.top_main div.contents_wrap div.title span {
	opacity: 0;
	display: inline-block;
	transform: translateY(10px);
	animation: fadeUp 1s ease forwards;
}

@keyframes fadeUp {
	to {
		opacity: 1;
		transform: translateY(0);
	}
}
.fadein_text {
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 0.8s ease, transform 0.8s ease;
}
.fadein_link {
	opacity: 0;
	transform: translateY(50px);
	transition: opacity 1s ease, transform 1s ease;
}
.fadein_text.show,
.fadein_link.show {
	opacity: 1;
	transform: translateY(0);
}
/*アニメーションEND*/

.top_main div.contents_wrap p {

}
.top_main div.contents_wrap a {
	display: block;
	z-index: 2;
	overflow: hidden;
	position: relative;
	transition-duration: .4s;
	background-color: #74afd0;
	color: #fff;
	font-size: clamp(22px, 3vw, 34px);
	font-weight: bold;
	padding: 2.5% 10px;
	width: 100%;
	max-width: 540px;
	text-align: center;
	border-radius: 50px;
	border: 1px solid #74afd0;
	text-decoration: none;
}
.top_main div.contents_wrap a::after {
	background-color: #fff;
	border-radius: 50%;
	content: "";
	display: block;
	margin: auto;
	opacity: 0;
	pointer-events: none;
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	width: 100%;
	padding-top: 100%;
	height: 0;
	z-index: -1;
	transform: translateY(-50%) scale(0.1);
	transition: opacity .5s, transform 0s;
	transition-delay: 0s, .4s;
}
 
.top_main div.contents_wrap a:hover {
	color: #74afd0;
}
.top_main div.contents_wrap a:hover::after {
	opacity: 1;
	transform: translateY(-50%) scale(1.1);
	transition-delay: 0s;
	transition: opacity .8s, transform .6s ease-in-out;
}





.top_group_frame {
	position: relative;
	background: #333 url('img/sapporo_yakei_pc.svg') no-repeat bottom center;
	padding: 130px 0 400px;
}

#top_group_bg {
	position: absolute;
	top: 0%;
	left: 50%;
		transform: translate(-50%, 0%);
	width: 90%;
	background-color: #333;
	text-align: center;
}

#top_group_bg img {
	filter: blur(100px);
	transition: filter 2.3s ease-in-out;
}

#top_group_bg img.show {
	filter: blur(0);
}




.top_group_main {
	font-size: clamp(30px, 2vw, 45px);
	font-weight: bold;
	line-height: 1.2;
	color: #fff;
	text-align: center;
	margin-bottom: 40px;
}
.top_group_maintext {
	color: #fff;
	text-align: center;
	margin-bottom: 60px;
	padding: 0 20px;
}

.top_group_frame div.top_group_wrap {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
	display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
	justify-content: space-between;
		-webkit-box-align: stretch;
		-ms-flex-align: stretch;
	align-items: stretch;
	max-width: 1600px;
	padding: 0 30px;
	margin: 0 auto;
	row-gap: 40px;
	column-gap: 50px;
}
.top_group_frame div.top_group_wrap a.box {
	position: relative;
	width: calc(100% / 3 - 17px);
	padding-top: 6%;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
	display: flex;
	color: #000;
	text-decoration: none;
}
.top_group_frame div.top_group_wrap a.box:hover{
	opacity: 0.8;
	transition: 0.3s;
}
.top_group_frame div.top_group_wrap a.box div.logo_box {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
	display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
	justify-content: space-between;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.top_group_frame div.top_group_wrap a.box div.logo_box div:first-child {
	padding-top: 3.5%;
}
.top_group_frame div.top_group_wrap a.box div.logo_box div:last-child {
	padding-right: 3.5%;
}

.top_group_frame div.top_group_wrap a.box div.contents {
	background-color: #fff;
	border-radius: 20px;
	padding-bottom: 25px;
}
.top_group_frame div.top_group_wrap a.box div.contents img {
	border-radius: 20px 20px 0 0;
	margin-bottom: 20px;
}
.top_group_frame div.top_group_wrap a.box div.contents div.title {
	font-size: clamp(20px, 2vw, 27px);
	font-weight: bold;
	line-height: 1.2;
	padding: 0 30px;
}
.top_group_frame div.top_group_wrap a.box div.contents div.title span {
	display: block;
	font-size: clamp(14px, 1vw, 18px);
	padding-top: 10px;
}
/*ニュース*/
.news_title {
	font-size: clamp(42px, 5vw, 60px);
	font-weight: bold;
	line-height: 1;
	margin-bottom: 5%;
}
.news_nav a {
	font-size: clamp(16px, 2vw, 20px);
	font-weight: bold;
	color: #000;
	text-decoration: none;
  position: relative;
}
.news_nav a::after {
  content: "";
	display: inline-block;
  height: 3.3vh;
  width: 7%;
  margin: auto;
  position: relative;
  right: -8px;
  top: 10px;
	background-image: url(img/icon_link.png);
	background-size: contain;
	background-repeat: no-repeat;
  transition: right .3s;
}
.news_nav a:hover::after {
  right: -13px;
}






#main ul.category-posts-internal {
	list-style: none;
}
.entry-content ul.category-posts-internal {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
  display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
  justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
  flex-wrap: wrap;
	width: 100%;
	list-style: none;
	margin: 0 auto;
	padding: 0;
	text-align: left;
}
.entry-content ul.category-posts-internal li:first-child {

}
.entry-content ul.category-posts-internal li {
	width: 100%;
	padding: 25px 0;
	border-bottom: 1px solid #ccc;
}
.entry-content ul.category-posts-internal li:first-child {
	border-top: 1px solid #ccc;
}
.entry-content ul.category-posts-internal li div {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
	display: flex;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
	flex-wrap: wrap;
		-webkit-box-align: center;
		-ms-flex-align: center;
	align-items: center;
	line-height: 1;
}

.entry-content ul.category-posts-internal li div a {
	text-decoration: none;
}

.entry-content ul.category-posts-internal li div span.cat-post-date {
	margin-right: 10px;
}
.entry-content ul.category-posts-internal li div span.post-categories a {
	display: inline-block;
	background-color: #b3b3b3;
	text-align: center;
	color: #fff;
	font-size: 14px;
	padding: 5px 15px;
	border-radius: 50px;
}
a.cat-post-title {
	width: 100%;
	margin-top: 15px;
}
.entry-content ul.category-posts-internal li div a.cat-post-title:hover {
	text-decoration: underline;
}

/*---私たちについて-----------------------------------------------*/
.ceo_name {
	font-size: clamp(18px, 2vw, 20px);
	font-weight: bold;
}
.gp_philosophy_wrap {
	max-width: 1020px;
	margin: 0 auto;
}
.gp_philosophy_wrap div.contents_title {
	margin-bottom: 50px;
}

.gp_philosophy_wrap div.title {
	font-size: clamp(25px, 2vw, 34px);
	font-weight: bold;
	line-height: 1.3;
	margin-bottom: 20px;
}
.gp_philosophy_wrap p {
	margin: 0 0 40px 0;
	padding-right: 41%;
}
.gp_philosophy_wrap div.gp_philosophy_list {
	position: relative;
	background-color: #fff;
	border-radius: 20px;
	padding: 60px;
	margin: 0 0 40px 0;
}
.gp_philosophy_list_bg {
	background-image: url(img/group_philosophy_img01.png);
	background-repeat: no-repeat;
	background-position: top right;
	position: absolute;
	right: 20px;
	top: -62%;
	width: 100%;
	padding-bottom: 72%;
	z-index: 1;

}
#main .gp_philosophy_wrap div.gp_philosophy_list ul {
	position: relative;
	z-index: 5;
	list-style: none;
	margin: 0px 0 10px 0;
}

.gp_philosophy_wrap div.gp_philosophy_list ul li {
	text-align: left;
	text-indent: -0.8em;
	padding: 0 0 0 1em;
	color: #599dba;
	font-size: clamp(19px, 2vw, 30px);
	font-weight: bold;
}

.gp_philosophy_wrap div.gp_philosophy_list ul li:before {
	content: '';
	display: inline-block;
	position: relative;
	width: 18px;
	height: 18px;
	margin-right: 3px;
	border-radius: 100%;
	background-color: #599dba;
}
.gp_philosophy_wrap div.gp_philosophy_list ul li p {
	color: #000;
	font-weight: normal;
	font-size: clamp(14px, 2vw, 18px);
	margin: 0 0 20px 0;
	padding: 0 0 0 0.5em;
	text-indent: 0;
}
.gp_philosophy_wrap div.text {
	text-align: center;
}
.aboutus_photo_block {
	background-image: url(img/aboutus_photo.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: contain;
	padding-top: 30%;
}
.aboutus_company_logo {
	width: 100%;
	padding-bottom: 10px;
	margin-bottom: 10px;
}
.aboutus_company_logo img {
	max-width: 190px;
	min-width: 140px;
}
.company_keiz {
	border-bottom: 3px solid #f08a0a;
}
.company_power {
	border-bottom: 3px solid #c32a0e;
}
.company_luminous {
	border-bottom: 3px solid #008ccf;
}
.company_link a {
	position: relative;
	padding: 0 0 0 16px;
	color: #29abe2;
	text-decoration: none;
}

.company_link a::before{
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
		transform: translateY(-50%);
	border: 7px solid transparent;
	border-left: 11px solid #29abe2;
}
.company_link a:hover {
	text-decoration: underline;
}

/*---事業内容-----------------------------------------------*/
/*ナビボタン*/
.service_nav {
	max-width: 1240px;
	margin: 0 auto;
	padding: 20px 20px;
}
.service_nav a {
	font-size: clamp(14px, 2vw, 16px);
	color: #000;
	text-decoration: none;
	padding: 0 20px;
}
.service_nav a:first-child {
	padding-left: 0;
}
.service_nav a:last-child {
	padding-right: 0;
}
.service_nav a span:before {
	content: '・';
}
.service_nav a br {
	display: none;
}
.service_nav span.line:before {
	display: inline-block;
	content: '';
	height: 16px;
	width: 1px;
	background-color: #000;
	position: relative;
	top: 3px;
}
/*ケイズナビ*/
.service_nav.k_nav a.k_current {
	color: #f08a0a;
}
.service_nav.k_nav a.p_current:hover {
	color: #c32a0e;
}
.service_nav.k_nav a.l_current:hover {
	color: #008ccf;
}
/*パワーナビ*/
.service_nav.p_nav a.k_current:hover {
	color: #f08a0a;
}
.service_nav.p_nav a.p_current {
	color: #c32a0e;
}
.service_nav.p_nav a.l_current:hover {
	color: #008ccf;
}
/*リミナスナビ*/
.service_nav.l_nav a.k_current:hover {
	color: #f08a0a;
}
.service_nav.l_nav a.p_current:hover {
	color: #c32a0e;
}
.service_nav.l_nav a.l_current {
	color: #008ccf;
}



.service_main_wrap {
	max-width: 1200px;
	margin: 0 auto;
	padding: 80px 30px;
}
.service_main_wrap div.company_logo {
	font-size: clamp(20px, 2vw, 30px);
	font-weight: bold;
	margin-bottom: 20px;
}
.service_main_wrap div.company_logo img {
	display: block;
	margin-bottom: 5px;
	max-width: 285px;
}
.service_main_list  {
	position: relative;
	background-color: #fff;
	border-radius: 20px;
	padding: 60px;
	margin: 0 0 0px 0;	
}
.service_main_photo img {
	border-radius: 20px;
}
#main .service_main_wrap div.service_main_list ul {
	position: relative;
	z-index: 5;
	list-style: none;
	margin: 0px 0 20px 0;
}

.service_main_wrap div.service_main_list ul li {
	text-align: left;
	text-indent: -0.8em;
	padding: 0 0 0 1em;
	font-size: clamp(26px, 3vw, 36px);
	font-weight: bold;
	line-height: 1.5;
}

.service_main_wrap div.service_main_list ul li:before {
	content: '';
	display: inline-block;
	position: relative;
	bottom: 2px;
	width: 16px;
	height: 16px;
	margin-right: 10px;
	border-radius: 100%;
}


/*サービス-ケイズ*/
.service_main_list.k_service {

}
.service_main_list.k_service div.service_main_photo {
	position: absolute;
	right: 35px;
	top: -30%;
	width: 50%;
	padding-bottom: 3%;
	z-index: 1;
}
.service_main_list.k_service div.service_main_photo div.illust {
	position: absolute;
	bottom: 0;
	right: -20px;
	width: 32%;
}
.service_main_wrap div.service_main_list.k_service ul li {
	color: #f08a0a;
}

.service_main_wrap div.service_main_list.k_service ul li:before {
	background-color: #f08a0a;
}

#main ul.service_keiz {
	list-style: none;
	margin: 0px 0 10px 0;
}

#main ul.service_keiz li {
	text-align: left;
	text-indent: -0.8em;
	padding: 0 0 0 1em;
}

#main ul.service_keiz li:before {
	content: '';
	display: inline-block;
	position: relative;
	bottom: 3px;
	width: 6px;
	height: 6px;
	margin-right: 8px;
	border-radius: 100%;
	background-color: #f08a0a;

}

/*サービス-パワー*/
.service_main_list.p_service {
	padding-bottom: 145px;
}
.service_main_list.p_service div.service_main_photo {
	position: absolute;
	right: 35px;
	top: -30%;
	width: 50%;
	padding-bottom: 3%;
	z-index: 1;
}
.service_main_list.p_service div.service_main_photo div.illust {
	position: absolute;
	bottom: 0;
	right: -20px;
	width: 32%;
}
.service_main_wrap div.service_main_list.p_service ul li {
	color: #c32a0e;
}

.service_main_wrap div.service_main_list.p_service ul li:before {
	background-color: #c32a0e;
}

/*サービス-ルミナス*/
.service_main_list.l_service {
	padding-bottom: 145px;
}
.service_main_list.l_service div.service_main_photo {
	position: absolute;
	right: 35px;
	top: -30%;
	width: 50%;
	padding-bottom: 3%;
	z-index: 1;
}
.service_main_list.l_service div.service_main_photo div.illust {
	position: absolute;
	bottom: 0;
	right: -20px;
	width: 32%;
}
.service_main_wrap div.service_main_list.l_service ul li {
	color: #008ccf;
}

.service_main_wrap div.service_main_list.l_service ul li:before {
	background-color: #008ccf;
}

.service_main_wrap p {
	width: 100%;
	padding-right: 60%;
	margin: 0;
}
.service_title {
	font-size: clamp(24px, 2vw, 34px);
	font-weight: bold;
}
.service_title span {
	display: block;
	font-size: clamp(16px, 2vw, 19px);
}

/*---求人情報-----------------------------------------------*/
.job_maintitle {
	font-size: clamp(22px, 5vw, 34px);
	font-weight: bold;
	text-align: center;
	line-height: 1.3;
}
.job_text {
	text-align: center;
}

.joblistbtn_wrap {
	max-width: 600px;
	margin: 0 auto;
}
.joblistbtn_wrap div.title {
	max-width: 600px;
	margin: 0 auto 30px;
	color: #74afd0;
	font-size: clamp(24px, 2vw, 28px);
	font-weight: bold;
	text-align: center;
	line-height: 1.3;
}
.joblistbtn_wrap div.title p {
	font-size: clamp(18px, 2vw, 22px);
	margin: 0;
}
.joblistbtn_wrap div.title span {
	color: #ef8f81;
}
.joblistbtn_wrap a {
	position: relative;
	display: block;
	width: 100%;
	padding: 30px 30px 30px 150px;
	background-color: #f0f5f8;
	border: 1px solid #74afd0;
	border-radius: 8px;
	font-size: clamp(22px, 3vw, 28px);
	color: #000;
	font-weight: bold;
	text-decoration: none;
	text-align: left;
	line-height: 1.5;
	margin-bottom: 20px;
}
.joblistbtn_wrap a:hover {
	opacity: 0.7;
}
.joblistbtn_wrap a::before {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 50px;
	width: 70px;
	height: 70px;
	margin: auto;
	background-image: url(img/icon_btn.png);
	background-repeat: no-repeat;
}
.joblistbtn_wrap a::after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	right: 27px;
	width: 12px;
	height: 12px;
	margin: auto;
	border-top: 3px solid #74afd0;
	border-right: 3px solid #74afd0;
	transform: rotate(45deg);
	box-sizing: border-box;
}
.joblistbtn_wrap a span {
	display: block;
	font-size: clamp(14px, 3vw, 18px);
}
.joblistbtn_wrap a:last-child {
	margin-bottom: 0px;
}
/*---平均マージン比率-----------------------------------------------*/
.margin_title {
	font-size: clamp(20px, 2vw, 30px);
	font-weight: bold;
	line-height: 1.3;
}
.margin_contents ul {
	margin-bottom: 0;
}
.margin_contents p.rm {
	font-size: 14px;
}
/*---プライバシーポリシー-----------------------------------------------*/
.privacypolicy_title {
	font-size: clamp(18px, 2vw, 20px);
	font-weight: bold;
	line-height: 1.5;
}




/***********************最新************************/

/***************************************************
 * Generated by SVG Artista on 7/8/2025, 11:50:22 AM
 * MIT license (https://opensource.org/licenses/MIT)
 * W. https://svgartista.net
 **************************************************/

@-webkit-keyframes animate-svg-stroke-1 {
  0% {
    stroke-dashoffset: 301.5899963378906px;
    stroke-dasharray: 301.5899963378906px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 301.5899963378906px;
  }
}

@keyframes animate-svg-stroke-1 {
  0% {
    stroke-dashoffset: 301.5899963378906px;
    stroke-dasharray: 301.5899963378906px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 301.5899963378906px;
  }
}

.svg-elem-1 {
  -webkit-animation: animate-svg-stroke-1 2s cubic-bezier(0.47, 0, 0.745, 0.715) 0s both,
                       animate-svg-fill-1 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s both;
          animation: animate-svg-stroke-1 2s cubic-bezier(0.47, 0, 0.745, 0.715) 0s both,
               animate-svg-fill-1 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s both;
}

@-webkit-keyframes animate-svg-stroke-2 {
  0% {
    stroke-dashoffset: 598.4059448242188px;
    stroke-dasharray: 598.4059448242188px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 598.4059448242188px;
  }
}

@keyframes animate-svg-stroke-2 {
  0% {
    stroke-dashoffset: 598.4059448242188px;
    stroke-dasharray: 598.4059448242188px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 598.4059448242188px;
  }
}

.svg-elem-2 {
  -webkit-animation: animate-svg-stroke-2 2s cubic-bezier(0.47, 0, 0.745, 0.715) 0.12s both,
                       animate-svg-fill-2 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.9s both;
          animation: animate-svg-stroke-2 2s cubic-bezier(0.47, 0, 0.745, 0.715) 0.12s both,
               animate-svg-fill-2 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.9s both;
}

@-webkit-keyframes animate-svg-stroke-3 {
  0% {
    stroke-dashoffset: 1560.410400390625px;
    stroke-dasharray: 1560.410400390625px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 1560.410400390625px;
  }
}

@keyframes animate-svg-stroke-3 {
  0% {
    stroke-dashoffset: 1560.410400390625px;
    stroke-dasharray: 1560.410400390625px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 1560.410400390625px;
  }
}

@-webkit-keyframes animate-svg-fill-3 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(0, 0, 0);
  }
}

@keyframes animate-svg-fill-3 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(0, 0, 0);
  }
}

.svg-elem-3 {
  -webkit-animation: animate-svg-stroke-3 2s cubic-bezier(0.47, 0, 0.745, 0.715) 0.24s both,
                       animate-svg-fill-3 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1s both;
          animation: animate-svg-stroke-3 2s cubic-bezier(0.47, 0, 0.745, 0.715) 0.24s both,
               animate-svg-fill-3 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1s both;
}

@-webkit-keyframes animate-svg-stroke-4 {
  0% {
    stroke-dashoffset: 530.8348388671875px;
    stroke-dasharray: 530.8348388671875px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 530.8348388671875px;
  }
}

@keyframes animate-svg-stroke-4 {
  0% {
    stroke-dashoffset: 530.8348388671875px;
    stroke-dasharray: 530.8348388671875px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 530.8348388671875px;
  }
}

@-webkit-keyframes animate-svg-fill-4 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(0, 0, 0);
  }
}

@keyframes animate-svg-fill-4 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(0, 0, 0);
  }
}

.svg-elem-4 {
  -webkit-animation: animate-svg-stroke-4 2s cubic-bezier(0.47, 0, 0.745, 0.715) 0.36s both,
                       animate-svg-fill-4 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.1s both;
          animation: animate-svg-stroke-4 2s cubic-bezier(0.47, 0, 0.745, 0.715) 0.36s both,
               animate-svg-fill-4 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.1s both;
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

#k-1, #k-2 {
  animation: fadeOut 1.5s ease 3s forwards; /* 2秒後に1秒かけてフェードアウト */
}
