@charset "UTF-8";
/*
Theme Name: Flashf
Theme URI: https://themegrill.com/themes/flash
Author: ThemeGrill
Author URI: https://themegrill.com
Description: Flash is free responsive multipurpose WordPress theme – truly a versatile theme perfect for any type of website you want. Like never before, it provides multiple pre-built demos which can be imported in seconds using ThemeGrill Demo Importer Plugin. The theme fully integrates with Flash Toolkit and SiteOrigin’s Page Builder Plugin that makes theme more user-friendly and easy. Additionally, theme features multiple blog layouts, WooCommerce support, multiple header styles, multiple color options etc.
License: GNU General Public License v3 or later
Version: 1.3.5
Tested up to: 5.4.1
Requires PHP: 5.6
License URI: http://www.gnu.org/licenses/gpl-3.0.html
Text Domain: flash
Tags: one-column, two-columns, left-sidebar, right-sidebar, grid-layout, custom-background, custom-colors, custom-menu, custom-logo, featured-images, footer-widgets, full-width-template, theme-options, threaded-comments, translation-ready, blog, e-commerce

Flash is based on Underscores http://underscores.me/, (C) 2012-2016 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal http://necolas.github.com/normalize.css/
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
## Links
## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
## Posts and pages
## Comments
# Infinite scroll
# Media
## Captions
## Galleries
--------------------------------------------------------------*/
/*--------------------------------------------------------------
theme style
--------------------------------------------------------------*/
/*--------------------------------------------------------------
Normalize
--------------------------------------------------------------*/
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: Meiryo, 'Helvetica Neue', Arial, 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', sans-serif;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
	word-break: break-word;
}

html {
	font-size: 62.5%;
	/* Corrects text resizing oddly in IE6/7 when body font-size is set using em units http://clagnut.com/blog/348/#c790 */
	overflow-y: scroll;
	/* Keeps page centered in all browsers regardless of content height */
	-webkit-text-size-adjust: 100%;
	/* Prevents iOS text size adjust after orientation change, without disabling user zoom */
	-ms-text-size-adjust: 100%;
	/* www.456bereastreet.com/archive/201012/controlling_text_size_in_safari_for_ios_without_disabling_user_zoom/ */
}

* {
	/* apply a natural box layout model to all elements; see http://www.paulirish.com/2012/box-sizing-border-box-ftw/ */
	/* Not needed for modern webkit but still used by Blackberry Browser 7.0; see http://caniuse.com/#search=box-sizing */
	/* Still needed for Firefox 28; see http://caniuse.com/#search=box-sizing */
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

*:before, *:after {
	/* apply a natural box layout model to all elements; see http://www.paulirish.com/2012/box-sizing-border-box-ftw/ */
	/* Not needed for modern webkit but still used by Blackberry Browser 7.0; see http://caniuse.com/#search=box-sizing */
	/* Still needed for Firefox 28; see http://caniuse.com/#search=box-sizing */
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

body {
	background: #fff;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
nav,
section {
	display: block;
}

table {
	border-collapse: separate;
	border-spacing: 0;
}

caption,
th,
td {
	font-weight: normal;
	text-align: left;
}

blockquote,
q {
	quotes: "" "";
}

blockquote:before, blockquote:after,
q:before,
q:after {
	content: "";
}

a:focus, a:hover, a:active {
	outline: 0;
}

a img {
	border: 0;
	padding: 10px;
}

a:focus {
	outline: thin dotted;
}

embed, iframe, object {
	max-width: 100%;
}

/*--------------------------------------------------------------
Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
textarea {
	color: #333;
	font-family: Meiryo, 'Helvetica Neue', Arial, 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', sans-serif;
	font-size: 14px;
	line-height: 1.5;
	font-weight: 400;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

b,
strong {
	font-weight: bold;
}

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

blockquote,
.wp-block-quote,
.wp-block-quote.is-style-large {
	margin: 0 15px;
	font-size: 20px;
	font-style: italic;
	font-family: "Montserrat", sans-serif;
	font-weight: 300;
}

address {
	margin: 0 0 15px;
}

pre {
	background: #eee;
	font-family: "Montserrat", sans-serif;
	font-size: 15px;
	font-size: 1.5rem;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font: 15px Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

sup,
sub {
	font-size: 75%;
	height: 0;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	bottom: 1ex;
}

sub {
	top: 0.5ex;
}

small {
	font-size: 75%;
}

big {
	font-size: 125%;
}

h1 {
	font-size: 36px;
}
/* 
	20200803 chg arai 30px→32pxに変更
					  line-heightを追加
 */
h2 {
	font-size: 32px;
	line-height: 48px;
}
/* 
	20200803 chg arai 25px→24pxに変更
					  line-heightを追加
 */
h3 {
	font-size: 24px;
	line-height: 36px;
}

h4 {
	font-size: 20px;
}

h5 {
	font-size: 18px;
}

h6 {
	font-size: 16px;
}

/*
  20200804 chg arai
   h3～h6は太文字設定なしに変更
*/
h1,
h2 {
	font-weight: 700;
}

/*--------------------------------------------------------------
Elements
--------------------------------------------------------------*/
hr, .wp-block-separator {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 15px;
}

ul,
ol {
	margin: 0 0 15px 20px;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 15px;
}

dt {
	font-weight: bold;
}

dd {
	margin: 0 15px 15px;
}

img {
	height: auto;
	/* Make sure images are scaled correctly. */
	max-width: 100%;
	/* Adhere to tg-container width. */
	vertical-align: middle;
}

figure {
	margin: 0;
}

table {
	margin: 0 0 15px;
	width: 100%;
	border-collapse: collapse;
}

th {
	font-weight: bold;
}

td, th, .wp-block-table th, .wp-block-table td {
	border: 1px solid #ccc;
	padding: 5px 10px;
}

p {
	margin: 0 0 30px;
}

/*--------------------------------------------------------------
Forms
--------------------------------------------------------------*/
button,
input,
select,
textarea {
	font-size: 100%;
	/* Corrects font size not being inherited in all browsers */
	margin: 0;
	/* Addresses margins set differently in IE6/7, F3/4, S5, Chrome */
	vertical-align: middle;
}

.navigation .nav-links a,
.bttn,
button {
	background: #333;
	color: #fff;
	cursor: pointer;
	/* Improves usability and consistency of cursor style between image-type 'input' and others */
	font-size: 14px;
	line-height: 13px;
	border: none;
	padding: 10px 15px;
	font-weight: 400;
	display: inline-block;
	position: relative;
	text-shadow: none;
	-webkit-transition: background 0.5s ease;
	transition: background 0.5s ease;
	border-radius: 0;
	-webkit-appearance: none;
	-webkit-border-radius: 0;
}

input[type="button"], input[type="reset"], input[type="submit"] {
	background: #333;
	color: #fff;
	cursor: pointer;
	/* Improves usability and consistency of cursor style between image-type 'input' and others */
	font-size: 14px;
	line-height: 13px;
	border: none;
	padding: 10px 15px;
	font-weight: 400;
	display: inline-block;
	position: relative;
	text-shadow: none;
	-webkit-transition: background 0.5s ease;
	transition: background 0.5s ease;
	border-radius: 0;
	-webkit-appearance: none;
	-webkit-border-radius: 0;
}

.navigation .nav-links a:hover,
.bttn:hover,
button {
	color: #fff;
}

input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover {
	color: #fff;
}

input[type="checkbox"], input[type="radio"] {
	padding: 0;
}

button:-moz-focus-inner {
	/* Corrects inner padding and border displayed oddly in FF3/4 www.sitepen.com/blog/2008/05/14/the-devils-in-the-details-fixing-dojos-toolbar-buttons/ */
	border: 0;
	padding: 0;
}

input:-moz-focus-inner {
	/* Corrects inner padding and border displayed oddly in FF3/4 www.sitepen.com/blog/2008/05/14/the-devils-in-the-details-fixing-dojos-toolbar-buttons/ */
	border: 0;
	padding: 0;
}

input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"] {
	color: #666;
	border: 1px solid #ccc;
	height: 36px;
	width: 100%;
	-webkit-appearance: none;
	border-radius: 0;
	-webkit-border-radius: 0;
}

input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="search"]:focus {
	border: 1px solid #aaa;
}

textarea:focus {
	border: 1px solid #aaa;
}

.searchform input[type="text"]:focus {
	border: none;
}

input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"] {
	padding: 3px 6px;
}

textarea {
	overflow: auto;
	/* Removes default vertical scrollbar in IE6/7/8/9 */
	padding-left: 3px;
	vertical-align: top;
	/* Improves readability and alignment in all browsers */
	color: #666;
	border: 1px solid #ccc;
	height: 160px;
	max-width: 100%;
	width: 100%;
}

button[type="submit"] {
	margin-bottom: 50px;
}

/*--------------------------------------------------------------
Links
--------------------------------------------------------------*/
a {
	color: #000;
	text-decoration: none;
	transition: all 0.3s ease-in-out;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
}

a:hover {
	color: #000;
}

/*--------------------------------------------------------------
Clearings
--------------------------------------------------------------*/
.clearfix:after, .clearfix:before,
.row:after,
.row:before,
.entry-content:after,
.entry-content:before,
.comment-content:after,
.comment-content:before,
.site-header:after,
.site-header:before,
.site-content:after,
.site-content:before,
.site-footer:after,
.site-footer:before,
.tg-container:after,
.tg-container:before {
	content: "";
	display: table;
}

.clearfix:after,
.row:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after,
.tg-container:after {
	clear: both;
}

.clear {
	clear: both;
}

.wp-caption,
.wp-caption-text,
.sticky,
.gallery-caption,
.bypostauthor {
	/*class required for wordpress*/
}

.alignright {
	text-align: right;
}

.alignleft {
	text-align: left;
}

.aligncenter {
	text-align: center;
}

.alignleft {
	float: left;
	margin-right: 24px;
}

.alignright {
	float: right;
	margin-left: 24px;
}
/* 20200807 chg arai
 * 	margin: 0 auto 28px;→0 autoに変更
 */
.aligncenter {
	clear: both;
	display: block;
	margin: 0 auto;
}

.hidden {
	display: none;
}

.full-width,
.full-width-center {
	overflow: hidden;
}

.full-width #primary .entry-content > .alignfull,
.full-width-center #primary .entry-content > .alignfull {
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	max-width: unset;
}

.full-width #primary .entry-content > .alignfull.wp-block-cover, .full-width #primary .entry-content > .alignfull.wp-block-cover-image,
.full-width-center #primary .entry-content > .alignfull.wp-block-cover,
.full-width-center #primary .entry-content > .alignfull.wp-block-cover-image {
	width: unset;
}

.full-width #primary .entry-content > .alignwide,
.full-width-center #primary .entry-content > .alignwide {
	margin-left: -50px;
	margin-right: -50px;
	max-width: unset;
	width: unset;
}

.full-width.boxed #primary .entry-content > .alignfull,
.full-width-center.boxed #primary .entry-content > .alignfull {
	margin-left: -30px;
	margin-right: -30px;
	max-width: unset;
}

.full-width.boxed #primary .entry-content > .alignfull.wp-block-cover, .full-width.boxed #primary .entry-content > .alignfull.wp-block-cover-image,
.full-width-center.boxed #primary .entry-content > .alignfull.wp-block-cover,
.full-width-center.boxed #primary .entry-content > .alignfull.wp-block-cover-image {
	width: unset;
}

.full-width.boxed #primary .entry-content > .alignwide,
.full-width-center.boxed #primary .entry-content > .alignwide {
	margin: 0;
}

ul.wp-block-gallery {
	margin: 0;
}

/*--------------------------------------------------------------
grid
--------------------------------------------------------------*/
.tg-column-wrapper {
	clear: both;
	margin-left: -3%;
}

.tg-column-wrapper .tg-column-1,
.tg-column-wrapper .tg-column-2,
.tg-column-wrapper .tg-column-3,
.tg-column-wrapper .tg-column-4,
.tg-column-wrapper .tg-column-5 {
	float: left;
	margin-left: 3%;
}

.tg-column-wrapper .tg-column-1 {
	width: 100%;
}

.tg-column-wrapper .tg-column-2 {
	width: 47%;
}

.tg-column-wrapper .tg-column-3 {
	width: 30.33%;
}

.tg-column-wrapper .tg-column-4 {
	width: 22%;
}

/*--------------------------------------------------------------
Colors
--------------------------------------------------------------*/
.flash_inherit_color div {
	color: inherit !important;
}

.flash_inherit_color div.section-description {
	color: inherit !important;
}

.flash_inherit_color h1,
.flash_inherit_color h2 {
	color: inherit !important;
}

.flash_inherit_color h3 {
	color: inherit !important;
}

.flash_inherit_color h3.section-title {
	color: inherit !important;
}

.flash_inherit_color h4,
.flash_inherit_color h5,
.flash_inherit_color h6,
.flash_inherit_color p,
.flash_inherit_color span,
.flash_inherit_color div.service-content-wrap,
.flash_inherit_color .entry-summary {
	color: inherit !important;
}

/*--------------------------------------------------------------
Galleries
--------------------------------------------------------------*/
.gallery {
	margin-bottom: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	vertical-align: top;
	width: 100%;
}

.gallery-columns-2 .gallery-item {
	max-width: 50%;
}

.gallery-columns-3 .gallery-item {
	max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
	max-width: 25%;
}

.gallery-columns-5 .gallery-item {
	max-width: 20%;
}

.gallery-columns-6 .gallery-item {
	max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
	max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
	max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	max-width: 11.11%;
}

.gallery-caption {
	display: block;
}

.wp-caption,
.gallery-caption {
	color: #666;
	font-size: 13px;
	font-style: italic;
	margin-bottom: 21px;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 11px 0;
}

/*--------------------------------------------------------------
common
--------------------------------------------------------------*/
/* 20200803 chg arai
	max-width: 1200px;→976pxに変更
*/
.tg-container {
	max-width: 976px;
	margin: 0 auto;
}

.overlay {
	background-color: rgba(0, 0, 0, 0.5);
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	-webkit-clip-path: inset(50%);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
	/* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	-webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	-webkit-clip-path: none;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	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. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
	outline: 0;
}

#primary {
	float: left;
	width: 65.5%;
}

#secondary {
	float: right;
	width: 32.22%;
}

.page-template-full-width #primary,
.page-template-pagebuilder #primary {
	width: 100%;
}

#scroll-up {
	background-color: #30afb8;
	border-radius: 3px;
	bottom: 20px;
	color: #fff;
	display: none;
	padding: 10px 16px;
	position: fixed;
	opacity: 0.5;
	z-index: 9999;
	filter: alpha(opacity=50);
	/* For IE8 and earlier */
	right: 20px;
}

.post-navigation {
	margin: 30px 0;
	display: inline-block;
	width: 100%;
}

.post-navigation .nav-previous {
	float: left;
}

.post-navigation .nav-next {
	float: right;
}

.nav-next a .entry-title {
	float: left;
	margin-right: 3px;
}

.site {
	background-color: #fff;
}

/*--------------------------------------------------------------
}
Preloader CSS
--------------------------------------------------------------*/
#preloader {
	position: relative;
}
/* 20200818 chg arai 色変更
	background: #21858c;→#e83737
*/
#preloader span {
	display: block;
	bottom: 0;
	width: 9px;
	height: 5px;
	background: #e83737;
	position: absolute;
	-webkit-animation: preloader 1.5s infinite ease-in-out;
	animation: preloader 1.5s infinite ease-in-out;
}

#preloader span:nth-child(2) {
	left: 11px;
	-webkit-animation-delay: 0.2s;
	animation-delay: 0.2s;
}

#preloader span:nth-child(3) {
	left: 22px;
	-webkit-animation-delay: 0.4s;
	animation-delay: 0.4s;
}

#preloader span:nth-child(4) {
	left: 33px;
	-webkit-animation-delay: 0.6s;
	animation-delay: 0.6s;
}

#preloader span:nth-child(5) {
	left: 44px;
	-webkit-animation-delay: 0.8s;
	animation-delay: 0.8s;
}
/* 20200818 chg arai 色変更
	background: #21858c;→#e83737
	background: #30aeb7;→#f76062
*/
@-webkit-keyframes preloader {
	0% {
		height: 5px;
		-webkit-transform: translateY(0);
		background: #e83737;
	}
	25% {
		height: 30px;
		-webkit-transform: translateY(15px);
		background: #f76062;
	}
	50% {
		height: 5px;
		-webkit-transform: translateY(0);
		background: #e83737;
	}
	100% {
		height: 5px;
		-webkit-transform: translateY(0);
		background: #e83737;
	}
}
/* 20200818 chg arai 色変更
	background: #21858c;→#e83737
	background: #30aeb7;→#f76062
*/
@keyframes preloader {
	0% {
		height: 5px;
		-webkit-transform: translateY(0);
		transform: translateY(0);
		background: #e83737;
	}
	25% {
		height: 30px;
		-webkit-transform: translateY(15px);
		transform: translateY(15px);
		background: #f76062;
	}
	50% {
		height: 5px;
		-webkit-transform: translateY(0);
		transform: translateY(0);
		background: #e83737;
	}
	100% {
		height: 5px;
		-webkit-transform: translateY(0);
		transform: translateY(0);
		background: #e83737;
	}
}

#spinners {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

#preloader-background {
	background-color: #fff;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 9999;
}

/*--------------------------------------------------------------
Single page layout CSS
--------------------------------------------------------------*/
.left-sidebar #primary {
	float: right;
}

.left-sidebar #secondary {
	float: left;
}

.full-width #primary {
	float: none;
	width: 100%;
}

.full-width-center #primary {
	float: none;
	margin: 0 auto;
	width: 65.5%;
}

/*--------------------------------------------------------------
Header
--------------------------------------------------------------*/
.header-top {
	background-color: #f1f5f8;
}

.header-top .contact-info {
	line-height: 30px;
	float: left;
	margin: 0;
}

.header-top .tg-column-wrapper {
	margin-left: 0;
	display: -webkit-box;
	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;
}

.header-top .left-content {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
}

.header-top .right-content {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
}

.header-top .right-content ul {
	float: right;
}

.header-top .contact-info,
.header-top .social-menu {
	list-style: none;
}

.header-top .contact-info li {
	float: left;
	font-size: 12px;
	color: #384554;
	margin-right: 30px;
	padding: 5px 0;
}

.header-top .contact-info li:last-child {
	margin-right: 0;
}

.header-top .social-menu {
	line-height: 30px;
	margin: 0;
}

.header-top .social-menu li {
	float: left;
	margin-left: 10px;
	font-size: 12px;
	padding: 5px 0;
}

.header-top .social-menu li:first-child {
	margin-left: 0;
}

.contact-info span {
	font-size: 16px;
	padding-right: 10px;
	color: #99a3b0;
}

/*-----------------Social menu-----------------*/
.social-menu {
	list-style: none;
}

.social-menu li a {
	background-color: #fff;
	border-radius: 100%;
	font-size: 12px;
	font-family: fontawesome;
	text-align: center;
	display: block;
	line-height: 30px;
	height: 30px;
	width: 30px;
	color: #99a3b0;
}

.transparent .social-menu li a {
	background-color: rgba(0, 0, 0, 0);
	border: none;
	color: #fff;
	height: auto;
	width: auto;
}

.social-menu li a[href*="facebook.com"]::before {
	content: "\f09a";
}

.social-menu li a[href*="linkedin.com"]::before {
	content: "\f0e1";
}

.social-menu li a[href*="twitter.com"]::before {
	content: "\f099";
}

.social-menu li a[href*="plus.google.com"]::before {
	content: "\f0d5";
}

.social-menu li a[href*="pinterest.com"]::before {
	content: "\f231";
}

.social-menu li a[href*="instagram.com"]::before {
	content: "\f16d";
}

.social-menu li a[href*="youtube.com"]::before {
	content: "\f16a";
}

.social-menu li a[href*="twitter.com"]:hover, .social-menu li a[href*="plus.google.com"]:hover, .social-menu li a[href*="linkedin.com"]:hover, .social-menu li a[href*="facebook.com"]:hover, .social-menu li a[href*="pinterest.com"]:hover, .social-menu li a[href*="instagram.com"]:hover, .social-menu li a[href*="youtube.com"]:hover {
	color: #333;
}

.transparent .social-menu li a[href*="twitter.com"]:hover, .transparent .social-menu li a[href*="facebook.com"]:hover, .transparent .social-menu li a[href*="plus.google.com"]:hover, .transparent .social-menu li a[href*="linkedin.com"]:hover, .transparent .social-menu li a[href*="youtube.com"]:hover {
	color: #99a3b0;
}

.transparent .social-menu li a[href*="facebook.com"], .transparent .social-menu li a[href*="linkedin.com"], .transparent .social-menu li a[href*="twitter.com"], .transparent .social-menu li a[href*="plus.google.com"], .transparent .social-menu li a[href*="youtube.com"] {
	color: #fff;
}

.transparent .is-sticky .social-menu li a[href*="facebook.com"], .transparent .is-sticky .social-menu li a[href*="linkedin.com"], .transparent .is-sticky .social-menu li a[href*="twitter.com"], .transparent .is-sticky .social-menu li a[href*="plus.google.com"], .transparent .is-sticky .social-menu li a[href*="youtube.com"] {
	color: #333;
}

/*-----------------Logo-----------------*/
.logo {
	float: left;
	padding: 0;
}

.logo .logo-image {
	float: left;
	padding: 20px 0;
}
/** 20201211 add arai スマホサイズの時、ロゴの上下空白サイズ調整 */
@media (max-width: 782px) {
	.logo .logo-image {
		padding: 8px 0 10px 0;
	}
}

/* 20200807 add arai
 * outline: none;追加
 */ 
.logo-image a {
	outline: none;
}

.logo .logo-image a img {
	padding: 0;
}

.logo .logo-text {
	float: left;
	margin-left: 12px;
	padding: 11px 0;
}

.logo .logo-text p {
	margin: 0;
}

.logo-text .site-title {
	font-size: 22px;
	font-weight: 500;
	line-height: 24px;
}

.logo-text .site-title span {
	font-weight: 700;
}

/*-----------------Site Navigation-----------------*/
#site-navigation {
	float: right;
}

#site-navigation .menu-toggle {
	display: none;
}

#site-navigation ul {
	margin: 0;
	list-style: none;
}

#site-navigation ul li {
	float: left;
	padding: 23px 30px 23px 0;
	position: relative;
}

/* 20200807 chg arai
	font-size: 14px;→18pxに変更
	outline: none;追加
 */
#site-navigation ul li a {
	font-size: 18px;
	outline: none;
}

#site-navigation ul.sub-menu li a {
	font-size: 14px;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
#site-navigation ul li:hover > a,
#site-navigation ul li.current-menu-item > a,
#site-navigation ul li.current_page_item > a,
#site-navigation ul li.current_page_ancestor > a,
#site-navigation ul li.current-menu-ancestor > a {
	color: #e83737;
}

#site-navigation ul li:last-child {
	padding-right: 0;
}
/* 20200807 chg arai
	min-width: 200px;→300pxに変更
*/
#site-navigation ul.sub-menu {
	background-color: #fff;
	min-width: 300px;
	padding: 0;
	position: absolute;
	-webkit-box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.2);
	box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.2);
	right: 50%;
	top: 90%;
	-webkit-transform: translateX(50%);
	transform: translateX(50%);
	opacity: 0;
	visibility: hidden;
	z-index: 9;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

.menu ul li ul.children {
	background-color: #fff;
	min-width: 200px;
	padding: 0;
	position: absolute;
	-webkit-box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.2);
	box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.2);
	right: 50%;
	top: 90%;
	-webkit-transform: translateX(50%);
	transform: translateX(50%);
	opacity: 0;
	visibility: hidden;
	z-index: 9;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
/* 20200807 chg arai
	padding: 10px;→ 0 0 0 10px変更
    line-height: 32px;追加
*/

#site-navigation ul li ul li {
	padding: 0 0 0 10px;
	line-height: 32px;
	text-align: left;
	width: 100%;
}
/* 20200807 chg arai
	background-color: #f4f4f4;追加
	padding: 0 0 0 10px;追加
*/
#site-navigation ul.sub-menu li:hover {
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
	background-color: #f4f4f4;
	padding: 0 0 0 10px;
}
/* 20200807 chg arai
	display: block;追加
	width: 100%;追加
	height: 100%;追加
	outline: none;追加
*/
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
#site-navigation ul.sub-menu li:hover > a {
	color: #e83737;
	display: block;
	width: 100%;
	height: 100%;
	outline: none;
}

#site-navigation li:hover ul.sub-menu,
#site-navigation ul li.focus > ul.sub-menu {
	opacity: 1;
	visibility: visible;
	top: 100%;
}

.menu ul li:hover > ul.children {
	opacity: 1;
	visibility: visible;
	top: 100%;
}
/* 20200817 chg arai
*	color: #;→#000に変更
*/
#site-navigation ul li a {
	color: #000;
}

#site-navigation .sub-menu li.menu-item-has-children ul {
	left: 50%;
	opacity: 0;
	visibility: hidden;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

.menu ul li ul li ul.children {
	left: 50%;
	opacity: 0;
	visibility: hidden;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
/* 20200818 chg arai 一括置換
	color: #4c5867;→#000に変更
*/
#site-navigation .sub-menu li.menu-item-has-children ul li a {
	color: #000;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
#site-navigation .sub-menu li.menu-item-has-children ul li:hover > a {
	color: #e83737;
}

#site-navigation ul li ul.sub-menu li.menu-item-has-children:hover > ul,
#site-navigation ul li ul.sub-menu li.menu-item-has-children.focus > ul {
	top: 0;
	opacity: 1;
	visibility: visible;
}

.menu ul li ul li:hover > ul.children {
	top: 0;
	opacity: 1;
	visibility: visible;
}

.sub-toggle {
	color: #333;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
#site-navigation ul li.menu-item-has-children:hover > .sub-toggle {
	color: #e83737;
}

#site-navigation ul li ul.sub-menu li.menu-item-has-children .sub-toggle {
	position: absolute;
	top: 50%;
	right: 10px;
	-webkit-transform: translateY(-50%) rotate(-90deg);
	transform: translateY(-50%) rotate(-90deg);
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.transparent.header-sticky
#masthead-sticky-wrapper.is-sticky
#site-navigation
ul
li.current-flash-item
a,
#site-navigation ul li.current-flash-item a {
	color: #e83737;
}

.header-bottom {
	background: #fff;
}

#site-navigation ul li.menu-item-has-children .sub-toggle .fa {
	-webkit-transition: transform 0.5s ease;
	-webkit-transition: -webkit-transform 0.5s ease;
	transition: -webkit-transform 0.5s ease;
	transition: transform 0.5s ease;
	transition: transform 0.5s ease, -webkit-transform 0.5s ease;
}

.animate-icon {
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);
}

/*-----------------Header Search and Cart-----------------*/
.header-bottom .tg-container {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.header-bottom .site-navigation-wrapper {
	-webkit-box-flex: 6;
	-ms-flex: 6;
	flex: 6;
}

.header-bottom .header-action-container {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.header-bottom .search-wrap {
	float: right;
	padding: 20px 0 20px 40px;
	position: relative;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.transparent.header-sticky .search-icon:hover,
.transparent .search-icon:hover {
	border-color: #e83737;
	color: #e83737;
}

.header-bottom .search-icon {
	cursor: pointer;
	color: #99a3b0;
	font-size: 14px;
	height: 30px;
	width: 30px;
	line-height: 30px;
	text-align: center;
	border: 1px solid #9ca6b2;
	border-radius: 100%;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.header-bottom .search-icon:hover {
	border-color: #e83737;
	color: #e83737;
}

.header-bottom .search-box {
	opacity: 0;
	visibility: hidden;
	position: absolute;
	width: 300px;
	top: 100%;
	right: -10px;
	background-color: #fff;
	-webkit-box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.2);
	box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.2);
	padding: 20px;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

.header-bottom .search-box.active {
	opacity: 1;
	visibility: visible;
	right: 0;
	z-index: 9;
}

.header-bottom .search-box .search-field {
	width: 80%;
	border-right: none;
	border-top: none;
	border-left: none;
	border-bottom: 1px solid #a1a1a1;
}

.header-bottom .search-box button[type="submit"] {
	margin-bottom: 0;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.header-bottom .searchform .btn {
	background-color: #e83737;
}

.header-bottom .searchform .btn:hover {
	background-color: #2299a1;
}

.search-submit .fa {
	color: #fff;
}

.header-bottom .cart-wrap {
	float: right;
	padding: 20px 0 20px 30px;
	position: relative;
}

.header-bottom .flash-cart-views {
	font-size: 14px;
	height: 30px;
	width: 30px;
	line-height: 30px;
	text-align: center;
	border: 1px solid #9ca6b2;
	border-radius: 100%;
}

.header-bottom .flash-cart-views a {
	color: #99a3b0;
	position: relative;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.header-bottom .flash-cart-views a span {
	background-color: #e83737;
	border-radius: 100%;
	font-size: 12px;
	left: 17px;
	height: 20px;
	width: 20px;
	line-height: 20px;
	text-align: center;
	position: absolute;
	top: -10px;
	color: #fff;
}

.header-bottom .widget_shopping_cart {
	opacity: 0;
	visibility: hidden;
	position: absolute;
	top: 100%;
	right: -10px;
	min-width: 250px;
	-webkit-box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.2);
	box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.2);
	background-color: #fff;
	padding: 15px;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
	z-index: 99;
}

.header-bottom .widget_shopping_cart ul {
	margin: 0;
}

.header-bottom .widget_shopping_cart ul li {
	text-align: center;
}

.header-bottom .cart-wrap:hover .widget_shopping_cart {
	opacity: 1;
	visibility: visible;
	right: 0;
}

.boxed {
	width: 1200px;
	margin: 0 auto;
}

.boxed .site {
	background: #fff none repeat scroll 0 0;
	-webkit-box-shadow: 0 0 12px 1px rgba(0, 0, 0, 0.3);
	box-shadow: 0 0 12px 1px rgba(0, 0, 0, 0.3);
	margin: 30px 0;
	position: relative;
}

.boxed .tg-container {
	width: 100%;
	padding: 0 30px;
}

@media (max-width: 980px) {
	.boxed .tg-container {
		width: 98%;
	}
}

.transparent #masthead {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 999;
}

.transparent .header-top {
	background-color: transparent;
	border-bottom: 1px solid rgba(255, 255, 255, 0.3);
	color: #fff;
}

.transparent .contact-info span,
.transparent .contact-info li {
	color: #fff;
}

.transparent .header-bottom {
	border: none;
	background-color: transparent;
	border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}

.transparent .logo-text {
	color: #fff;
}

.transparent .logo-text a {
	color: #fff;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.transparent.header-sticky #site-navigation ul li:hover > a {
	color: #e83737;
}

.transparent #site-navigation .menu-toggle .fa {
	color: #fff;
}

.transparent #site-navigation ul li .sub-toggle {
	color: #fff;
}

.transparent #site-navigation ul.sub-menu li {
	padding: 0;
}

.transparent #site-navigation ul li a {
	color: #fff;
	display: inline-block;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.transparent #site-navigation ul li:hover .sub-toggle {
	color: #e83737;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.transparent #site-navigation ul li:hover a {
	color: #e83737;
	position: relative;
	visibility: none;
}
/* 20200818 chg arai 一括置換
	color: #4c5867;→#000に変更
*/
.transparent #site-navigation ul.sub-menu li a {
	color: #000;
	padding: 10px 30px;
}

.transparent #site-navigation ul.sub-menu li a:before {
	display: none;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.transparent #site-navigation ul.sub-menu li:hover a {
	color: #e83737;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.transparent #site-navigation ul.sub-menu li.menu-item-has-children ul li:hover a {
	color: #e83737;
}
/* 20200818 chg arai 一括置換
	color: #4c5867;→#000に変更
*/
.transparent #site-navigation ul.sub-menu li.menu-item-has-children ul li a {
	color: #000;
}

.transparent .cart-wrap .flash-cart-views {
	border-color: #fff;
}

.transparent .cart-wrap .flash-cart-views a {
	color: #fff;
}

.transparent .search-wrap .search-icon {
	color: #fff;
	border-color: #fff;
}

.right-logo-left-menu .header-bottom .tg-container {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
}

.right-logo-left-menu .header-bottom #site-navigation {
	float: left;
}

.right-logo-left-menu .header-bottom .header-action-container {
	margin-right: auto;
}

.right-logo-left-menu .header-bottom .header-action-container .cart-wrap,
.right-logo-left-menu .header-bottom .header-action-container .search-wrap {
	padding-left: 0;
	padding-right: 30px;
}

.right-logo-left-menu .header-bottom .search-box {
	left: -10px;
}

.right-logo-left-menu .header-bottom .search-box.active {
	right: auto;
	left: 0;
}

.right-logo-left-menu .header-bottom .widget_shopping_cart {
	left: 0;
}

.center-logo-below-menu .header-bottom .tg-container {
	display: block;
	text-align: center;
}

.center-logo-below-menu .logo {
	float: none;
}

.center-logo-below-menu .logo .logo-text {
	float: none;
}

.center-logo-below-menu .logo .logo-image {
	float: none;
	padding: 20px 0 0;
	display: inline-block;
}

.center-logo-below-menu #site-navigation {
	float: left;
}

.center-logo-below-menu .header-bottom .header-action-container {
	display: none;
}

.center-logo-below-menu .header-bottom .site-navigation-wrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.center-logo-below-menu .header-bottom .site-navigation-wrapper .header-action-container {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-left: auto;
}

.header-sticky .is-sticky #masthead {
	z-index: 99 !important;
}

.header-sticky .is-sticky .header-bottom {
	background: #fff;
	-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
}

.transparent.header-sticky #masthead-sticky-wrapper {
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 99;
}

.transparent.header-sticky #masthead {
	left: auto;
}

.transparent.header-sticky .header-top {
	display: none;
}

.transparent.header-sticky .header-bottom {
	background-color: transparent;
	border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}

.transparent.header-sticky #site-navigation .menu-toggle .fa,
.transparent.header-sticky #site-navigation ul li a {
	color: #fff;
}

.transparent.header-sticky .flash-cart-views a {
	color: #fff;
}

.transparent.header-sticky #site-navigation ul.sub-menu li a {
	color: #333;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.transparent.header-sticky #site-navigation ul.sub-menu li a:hover {
	color: #e83737;
}

.transparent.header-sticky .flash-cart-views {
	border-color: #fff;
}

.transparent.header-sticky .search-icon {
	color: #fff;
	border-color: #fff;
}

.transparent.header-sticky .is-sticky #masthead {
	z-index: 99 !important;
}

.transparent.header-sticky .is-sticky .header-top {
	background: #f1f5f8;
	border: none;
	color: #333;
	-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

.transparent.header-sticky .is-sticky .header-top .contact-info li {
	color: #333;
}

.transparent.header-sticky .is-sticky .header-top .contact-info li span {
	color: #333;
}

.transparent.header-sticky .is-sticky .logo-text {
	color: #333;
}

.transparent.header-sticky .is-sticky .logo-text a {
	color: #333;
}

.transparent.header-sticky .is-sticky #site-navigation ul li a,
.transparent.header-sticky .is-sticky #site-navigation ul.sub-menu li a {
	color: #333;
}

.transparent.header-sticky .is-sticky .flash-cart-views a {
	color: #333;
}

.transparent.header-sticky .is-sticky #site-navigation .menu-toggle .fa {
	color: #333;
}

.transparent.header-sticky .is-sticky #site-navigation ul li .sub-toggle {
	color: #333;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.transparent.header-sticky .is-sticky #site-navigation ul li:hover > .sub-toggle {
	color: #e83737;
}

.transparent.header-sticky .is-sticky .header-bottom {
	background: #fff;
	border: none;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

.transparent.header-sticky .is-sticky .flash-cart-views {
	border-color: #333;
}

.transparent.header-sticky .is-sticky .search-icon {
	color: #333;
	border-color: #333;
}

.transparent.header-sticky .custom-logo,
.transparent.header-sticky .is-sticky .transparent-logo {
	display: none;
}

.transparent-logo {
	display: none;
}

.transparent .custom-logo {
	display: none;
}

.transparent.header-sticky .is-sticky .custom-logo,
.transparent.header-sticky .transparent-logo {
	display: block;
}

.transparent .transparent-logo {
	display: block;
}

#wp-custom-header-video {
	display: block;
	min-height: 300px;
	min-height: 75vh;
	width: 100%;
}

.wp-custom-header {
	position: relative;
	text-align: center;
}

.wp-custom-header-video-button {
	position: absolute;
	bottom: 0;
	left: 0;
}

/*--------------------------------------------------------------
Slider
--------------------------------------------------------------*/
.tg-slider-widget .swiper-button-next {
	background-image: unset;
	right: 0;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
	width: 50px;
	height: 50px;
	visibility: hidden;
	opacity: 0;
}

.tg-slider-widget .swiper-button-next:before {
	content: "\" /*rtl:"\"*/;
	font-family: fontawesome;
	font-size: 30px;
	color: #313b48;
	background: #fff;
	width: 50px;
	height: 50px;
	line-height: 50px;
	text-align: center;
	display: block;
}

.tg-slider-widget .swiper-button-prev {
	background-image: unset;
	left: 0;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
	width: 50px;
	height: 50px;
	visibility: hidden;
	opacity: 0;
}

.tg-slider-widget .swiper-button-prev:before {
	content: "\" /*rtl:"\"*/;
	font-family: fontawesome;
	font-size: 30px;
	color: #313b48;
	background: #fff;
	width: 50px;
	height: 50px;
	line-height: 50px;
	text-align: center;
	display: block;
}

.tg-slider-widget:hover .swiper-button-next {
	right: 30px;
	visibility: visible;
	opacity: 1;
}

.tg-slider-widget:hover .swiper-button-prev {
	left: 30px;
	visibility: visible;
	opacity: 1;
}

.tg-slider-widget:hover .swiper-button-next.swiper-button-disabled,
.tg-slider-widget:hover .swiper-button-prev.swiper-button-disabled {
	opacity: 0.36;
}

.tg-slider-widget .swiper-wrapper {
	position: relative;
}

.tg-slider-widget .swiper-slide {
	width: 100% !important;
}

.tg-slider-widget .slider-content {
	text-align: center;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.tg-slider-widget .caption-title {
	color: #313b48;
	font-size: 48px;
	font-weight: 800;
	line-height: 1.5;
	text-transform: uppercase;
}

.tg-slider-widget.slider-light .caption-title {
	text-shadow: 1px 1px #fff;
}

.tg-slider-widget .caption-desc {
	font-size: 24px;
	line-height: 35px;
	margin: 10px 0 30px;
	text-transform: capitalize;
}

.tg-slider-widget.slider-light .caption-desc {
	text-shadow: 1px 1px #fff;
}

.tg-slider-widget .btn-wrapper {
	display: inline-block;
}

.tg-slider-widget .btn-wrapper a {
	border: 3px solid #313b48;
	display: inline-block;
	font-size: 20px;
	padding: 7px 26px;
}

.tg-slider-widget.slider-light .btn-wrapper a {
	text-shadow: 1px 1px #fff;
}

.tg-slider-widget .btn-wrapper a:hover {
	background: #313b48;
	color: #fff;
	border-color: #313b48;
}

.tg-slider-widget.slider-light .btn-wrapper a:hover {
	text-shadow: none;
}

.tg-slider-widget.slider-content-left .slider-content {
	text-align: left;
	left: 0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.tg-slider-widget.slider-content-left .caption-title {
	width: 60%;
}

.tg-slider-widget.slider-content-left .caption-desc {
	font-size: 18px;
	line-height: 30px;
	width: 50%;
}

.tg-slider-widget.slider-control-bottom-right .slider-arrow {
	bottom: 28px;
	right: 100px;
	position: absolute;
	width: 105px;
}

.tg-slider-widget.slider-control-bottom-right .swiper-button-next,
.tg-slider-widget.slider-control-bottom-right .swiper-button-prev {
	opacity: 1;
	visibility: visible;
}

.tg-slider-widget.slider-control-bottom-right .swiper-button-next {
	right: 0;
	display: inline-block;
}

.tg-slider-widget.slider-control-bottom-right .swiper-button-prev {
	left: 0;
	display: inline-block;
	float: left;
}

.tg-slider-widget.slider-light .slider-image .overlay {
	background-color: transparent;
}

.tg-slider-widget.slider-dark .slider-image .overlay {
	background-color: rgba(0, 0, 0, 0.5);
}

.tg-slider-widget.slider-dark .caption-title,
.tg-slider-widget.slider-dark .caption-desc {
	color: #fff;
}

.tg-slider-widget.slider-dark .btn-wrapper a {
	border-color: #fff;
	color: #fff;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.tg-slider-widget.slider-dark .btn-wrapper a:hover {
	border-color: #e83737;
	background: #e83737;
}

.full-screen.tg-slider-widget .slider-image img {
	height: 100%;
	max-width: none;
	visibility: hidden;
	opacity: 0;
}

.slider-image {
	text-align: center;
	background-position: center center;
	background-repeat: no-repeat;
}

/*--------------------------------------------------------------
Section Title
--------------------------------------------------------------*/
.section-title-wrapper {
	margin-bottom: 30px !important;
}

.section-title {
	color: #313b48;
	font-weight: 700;
	text-align: center;
	text-transform: uppercase;
	position: relative;
	margin-bottom: 20px;
}

.section-title:before {
	background: #e1e1e1 none repeat scroll 0 0;
	bottom: -5px;
	content: "";
	height: 1px;
	left: 50%;
	margin-left: -50px;
	position: absolute;
	width: 100px;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.section-title:after {
	content: "";
	left: 50%;
	position: absolute;
	background: #e83737 none repeat scroll 0 0;
	bottom: -6px;
	height: 3px;
	margin-left: -15px;
	width: 30px;
}

.section-description {
	text-align: center;
	color: #777;
}

/*--------------------------------------------------------------
About
--------------------------------------------------------------*/
.about-section .tg-column-wrapper {
	margin: 0;
}

.about-section .about-content-wrapper {
	float: left;
	vertical-align: middle;
	padding-left: 3%;
}

.about-section .btn-wrapper {
	margin-top: 30px;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.about-section .btn-wrapper a {
	background-color: #e83737;
	border-radius: 0;
	color: #fff;
	padding: 7px 35px;
}

.about-section .btn-wrapper a:hover {
	background-color: #2299a1;
}

.about-section .section-description {
	margin-top: 12px;
	text-align: left;
}

.about-content-wrapper .section-title {
	text-align: left;
}

.about-section .about-section-image {
	float: right;
	margin-right: -5px;
	text-align: center;
	vertical-align: middle;
	padding-left: 3%;
}

.about-section .section-title:before, .about-section .section-title:after {
	display: none;
}

/*--------------------------------------------------------------
Service
--------------------------------------------------------------*/
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.tg-service-widget .service-icon-wrap {
	background: #e83737;
	color: #fff;
	float: left;
	font-size: 26px;
	height: 60px;
	line-height: 60px;
	margin-right: 20px;
	text-align: center;
	width: 60px;
	position: relative;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.tg-service-widget .service-icon-wrap:after {
	position: absolute;
	left: 50%;
	bottom: -9px;
	border-right: 10px solid transparent;
	border-left: 10px solid transparent;
	border-top: 10px solid #e83737;
	content: "";
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.tg-service-widget .service-title-wrap {
	color: #313b48;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.5;
	margin-top: 15px;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.tg-service-widget .service-title-wrap a:hover {
	color: #e83737;
}

.tg-service-widget .service-content-wrap {
	margin: 10px 0;
	color: #777;
}

/*-----------------tg-service-layout-2 -----------------*/
.tg-service-layout-2 {
	margin: 20px 0;
}

.tg-service-widget.tg-service-layout-2 .service-content-wrap {
	margin: 0 0 10px;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.tg-service-widget .service-more {
	font-weight: 600;
	font-size: 13px;
	color: #e83737;
	display: inline-block;
	position: relative;
}

.tg-service-widget .service-more:hover {
	color: #1c9ba4;
}

.tg-service-widget .service-more:after {
	content: "\" /*rtl:"\"*/;
	font-family: FontAwesome;
	font-weight: 400;
	position: absolute;
	right: -22px;
	top: 0;
}

.tg-service-widget.tg-service-layout-2 {
	text-align: center;
}

.tg-service-widget.tg-service-layout-2 .service-icon-wrap {
	background: transparent none repeat scroll 0 0;
	border-radius: 50%;
	color: #000;
	display: block;
	float: none;
	font-size: 22px;
	height: 72px;
	line-height: 72px;
	margin: 0 auto;
	position: relative;
	text-align: center;
	width: 72px;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

.tg-service-widget.tg-service-layout-2 .service-icon-wrap:after {
	display: none;
}

.tg-service-widget.tg-service-layout-2 .service-icon-wrap:before {
	border: 2px solid #000;
	border-radius: 100%;
	content: "";
	height: 82px;
	left: 50%;
	margin-left: -41px;
	margin-top: -41px;
	position: absolute;
	top: 50%;
	width: 82px;
}

.tg-service-widget.tg-service-layout-2 .service-icon-wrap:hover {
	background: #000 none repeat scroll 0 0;
	color: #fff;
}

.tg-service-widget.tg-service-layout-2 .service-title-wrap a {
	line-height: 24px;
}

.tg-service-widget.tg-service-layout-3 .service-title-wrap {
	line-height: 24px;
	margin-top: 20px;
}

.tg-service-widget.tg-service-layout-3 .service-content-wrap {
	margin: 15px 0;
}

/*-----------------tg-service-layout-3 -----------------*/
.tg-service-layout-2 .service-title-wrap {
	margin: 15px 0 5px;
}

.service-image-wrap img {
	width: 100%;
}

/*--------------------------------------------------------------
Team
--------------------------------------------------------------*/
.team-wrapper .team-content-wrapper {
	padding-top: 30px;
	position: relative;
	text-align: center;
}

.team-wrapper .team-title {
	font-size: 18px;
}

.team-wrapper .team-title a {
	color: #313b48;
}

.team-wrapper .team-title a:hover {
	color: #2299a1;
}

.team-wrapper .team-designation {
	position: relative;
}

.tg-team-widget img {
	width: 100%;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.team-wrapper .team-designation:after {
	position: absolute;
	left: 50%;
	bottom: -10px;
	width: 30px;
	height: 2px;
	background: #e83737;
	content: "";
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.team-wrapper .team-content {
	color: #777;
	margin: 30px 0 20px;
}

.team-wrapper .team-social {
	background: #fff none repeat scroll 0 0;
	left: 50%;
	margin-left: -45%;
	padding: 10px 0;
	position: absolute;
	top: -20px;
	width: 90%;
}

.team-wrapper .team-social a {
	font-size: 18px;
	margin: 0 8px;
}

.team-wrapper .team-social a:hover {
	color: #2299a1;
}

/*-----------------tg-team-layout-2 -----------------*/
.tg-team-widget.tg-team-layout-2 {
	position: relative;
}

.tg-team-widget.tg-team-layout-2:before {
	border-bottom: 50px solid transparent;
	border-right: 67px solid #fff;
	content: " ";
	position: absolute;
	right: 0;
	top: 0;
}

.tg-team-widget.tg-team-layout-2 .team-content-wrapper {
	text-align: left;
}

.tg-team-widget.tg-team-layout-2 .team-designation:after {
	left: 15px;
}

.tg-team-widget.tg-team-layout-2 .team-social {
	position: static;
	margin-left: 0;
	width: 100%;
	background: transparent;
	border-top: 1px solid #e7e7e7;
}

.tg-team-widget.tg-team-layout-3:before {
	display: none;
}

.tg-team-widget.tg-team-layout-3 .team-img {
	position: relative;
}

.tg-team-widget.tg-team-layout-3 .team-img img {
	border-radius: 50%;
	width: 100%;
}

.tg-team-widget.tg-team-layout-3 .team-img .team-social {
	background: rgba(60, 180, 186, 0.8) none repeat scroll 0 0;
	border-radius: 50%;
	border-top: medium none;
	height: 100%;
	left: 0;
	padding: 0;
	position: absolute;
	top: 0;
	width: 100%;
	margin: 0;
	opacity: 0;
	visibility: hidden;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

.tg-team-widget.tg-team-layout-3 .team-social-block {
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	text-align: center;
}

.tg-team-widget.tg-team-layout-3 .team-social-block a {
	font-size: 18px;
	margin: 0 8px;
	color: #fff;
}

.tg-team-widget.tg-team-layout-3 .team-content-wrapper {
	position: unset;
	padding-top: 30px;
	text-align: center;
}

.tg-team-widget.tg-team-layout-3 .team-designation:after,
.tg-team-widget.tg-team-layout-3 .team-content {
	display: none;
}

.tg-team-widget.tg-team-layout-3 .team-wrapper:hover .team-social {
	opacity: 1;
	visibility: visible;
}

/*-----------------tg-team-layout-3 -----------------*/
/*--------------------------------------------------------------
Call To Action
--------------------------------------------------------------*/
.call-to-action-section {
	position: relative;
}

.call-to-action-section .section-title-wrapper .section-title {
	color: #fff;
	font-size: 32px;
}

.call-to-action-section .section-title:before, .call-to-action-section .section-title:after {
	display: none;
}

.call-to-action-section .section-subtitle {
	color: #fff;
	font-size: 14px;
	line-height: 1.5;
	position: relative;
	text-align: center;
}

.call-to-action-section .btn-wrapper {
	text-align: center;
	margin-top: 30px;
}

.call-to-action-section .btn-wrapper a {
	border: 1px solid;
	border-radius: 50px;
	color: #fff;
	font-size: 22px;
	height: 50px;
	line-height: 50px;
	position: relative;
	margin-left: 30px;
	padding: 0 20px;
	display: inline-block;
}

.call-to-action-section .btn-wrapper a:first-child {
	margin-left: 0;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.call-to-action-section .btn-wrapper a:hover {
	background-color: #e83737;
	border-color: #e83737;
}

.call-to-action-section .call-to-action-section-layout-2 {
	display: table;
	width: 100%;
}

.call-to-action-section .call-to-action-section-layout-2 .section-title-wrapper {
	display: table-cell;
	width: 75%;
	vertical-align: middle;
}

.call-to-action-section .call-to-action-section-layout-2 .section-title {
	margin-bottom: 0;
	text-align: left;
}

.call-to-action-section .call-to-action-section-layout-2 .section-subtitle {
	color: #fff;
	font-size: 14px;
	padding: 0 10px;
	position: relative;
	text-align: left;
}

.call-to-action-section .call-to-action-section-layout-2 .btn-wrapper {
	width: 25%;
	display: table-cell;
	vertical-align: middle;
	margin-top: 0;
}

.call-to-action-section .call-to-action-section-layout-2 .btn-wrapper a {
	display: block;
}

.call-to-action-section .call-to-action-section-layout-2 .btn-wrapper a:first-child {
	margin-left: 30px;
	margin-bottom: 15px;
}

/*----------------- call-to-action-section-layout-2 -----------------*/
/*--------------------------------------------------------------
Feature product
--------------------------------------------------------------*/
.feature-product-section .tg-feature-product-widget {
	position: relative;
	margin-bottom: 30px;
	overflow: hidden;
}

.feature-product-section .tg-feature-product-widget figure img {
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

.feature-product-section .featured-image-desc {
	visibility: hidden;
	opacity: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
	-webkit-transform: translate(-50%, -50%) scale(0);
	transform: translate(-50%, -50%) scale(0);
	width: 90%;
	height: 90%;
	background: rgba(49, 59, 73, 0.65);
}

.feature-product-section .tg-feature-product-widget .feature-inner-block {
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	padding: 5px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.feature-product-section .tg-feature-product-widget .feature-title-wrap {
	text-align: center;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

.feature-product-section .tg-feature-product-widget .feature-title-wrap a {
	font-size: 16px;
	color: #fff;
	font-weight: 800;
}

.feature-product-section .tg-feature-product-widget .feature-desc-wrap {
	text-align: center;
	color: #f3f0f0;
	font-size: 12px;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.feature-product-section .tg-feature-product-widget .featured-image-desc:before {
	border-bottom: 50px solid transparent;
	border-right: 48px solid #e83737;
	content: " ";
	position: absolute;
	right: 0;
	top: 0;
}

.feature-product-section .tg-feature-product-widget .featured-image-desc span {
	position: absolute;
	top: 4px;
	right: 7px;
}

.feature-product-section .tg-feature-product-widget .featured-image-desc span a {
	color: #fff;
}

.tg-feature-product-layout-1
.tg-feature-product-widget:hover
.featured-image-desc,
.tg-feature-product-layout-2
.tg-feature-product-widget:hover
.featured-image-desc {
	visibility: visible;
	opacity: 1;
	-webkit-transform: translate(-50%, -50%) scale(1);
	transform: translate(-50%, -50%) scale(1);
}

/*----------------- tg-feature-product-layout-2 -----------------*/
.feature-product-section .tg-feature-product-layout-2 .tg-container {
	width: 100%;
}

.feature-product-section .tg-feature-product-layout-2 .tg-column-wrapper {
	margin: 0;
}

.feature-product-section .tg-feature-product-layout-2 .tg-feature-product-widget {
	margin: 0;
}

.feature-product-section .tg-feature-product-layout-2 .tg-feature-product-widget.tg-column-3 {
	margin: 0;
	width: 33.33%;
}

.feature-product-section .tg-feature-product-layout-2 .tg-feature-product-widget.tg-column-4 {
	margin: 0;
	width: 25%;
}

.feature-product-section .tg-feature-product-layout-2 .tg-feature-product-widget img {
	width: 100%;
	max-width: auto;
}

.feature-product-section .tg-feature-product-layout-2 .featured-image-desc {
	width: 100%;
	height: 100%;
	padding: 5px;
	background: rgba(49, 175, 184, 0.8);
}

.feature-product-section .tg-feature-product-layout-2 .featured-image-desc:before {
	border-right: 48px solid #313b48;
}

.feature-product-section .tg-feature-product-layout-3 .featured-image-desc {
	visibility: visible;
	opacity: 1;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	-webkit-transform: scale(1);
	transform: scale(1);
	background: transparent -webkit-gradient(linear, left top, left bottom, from(transparent), to(rgba(0, 0, 0, 0.5))) repeat scroll 0 0;
	background: transparent linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.5)) repeat scroll 0 0;
}

.feature-product-section .tg-feature-product-layout-3 .featured-image-desc:before,
.feature-product-section .tg-feature-product-layout-3 .featured-image-desc span {
	display: none;
}

.feature-product-section .tg-feature-product-layout-3 .feature-inner-block {
	top: auto;
	-webkit-transform: translate(0);
	transform: translate(0);
	bottom: 2%;
}

.feature-product-section .tg-feature-product-layout-3 .feature-inner-block .feature-desc-wrap {
	display: none;
}

.feature-product-section .button-group {
	text-align: center;
	margin-bottom: 30px;
}

.feature-product-section .button-group button {
	background: transparent;
	color: #525a65;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.feature-product-section .button-group button:hover {
	color: #e83737;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

.feature-product-section .button-group button:before {
	background: #525a65 none repeat scroll 0 0;
	border-radius: 50%;
	content: " ";
	left: 0;
	margin-right: 50%;
	padding: 2px;
	position: absolute;
	top: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

/*----------------- tg-feature-product-layout-3 -----------------*/
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.tg-feature-product-filter-layout .button.is-checked:hover {
	color: #e83737;
}

.tg-feature-product-layout-3 .tg-feature-product-widget:hover figure img {
	transform: scale(1.1);
	-webkit-transform: scale(1.1);
	-moz-transform: scale(1.1);
	-ms-transform: scale(1.1);
	-o-transform: scale(1.1);
}

.tg-feature-product-layout-3 .tg-feature-product-widget:hover .feature-title-wrap {
	margin-bottom: 3px;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

.tg-feature-product-layout-1 .grid {
	margin-left: -3%;
}

/*--------------------------------------------------------------
Testimonial
--------------------------------------------------------------*/
.testimonial-container {
	padding: 0 0 50px;
}

.testimonial-container .testimonial-slide {
	text-align: left;
}

.testimonial-container .testimonial-content-wrapper {
	background: #fff;
	padding: 20px 30px;
	position: relative;
}

.testimonial-container .testimonial-content-wrapper:before {
	border-bottom: 34px solid transparent;
	border-left: 20px solid #fff;
	content: " ";
	left: 11%;
	position: absolute;
	top: 96%;
	-webkit-transform: rotate(12deg);
	transform: rotate(12deg);
	z-index: -9;
}

.testimonial-container .testimonial-icon {
	display: inline-block;
	vertical-align: top;
	color: #31afb8;
	font-size: 18px;
}

.testimonial-container .testimonial-content {
	width: 93%;
	display: inline-block;
	margin-left: 15px;
	color: #777;
}

.testimonial-container .testimonial-client-detail {
	margin-top: 40px;
}

.testimonial-container .testimonial-img {
	float: left;
}

.testimonial-container .client-detail-block {
	display: inline-block;
	margin-left: 20px;
}

.testimonial-container .testimonial-title {
	color: #313b48;
	font-size: 16px;
}

.testimonial-container .testimonial-degicnation {
	color: #666;
	font-size: 14px;
	font-weight: 400;
}

.testimonial-container .swiper-pagination.testimonial-pager {
	bottom: 0;
}

.testimonial-container .swiper-pagination.testimonial-pager .swiper-pagination-bullet {
	width: 10px;
	height: 10px;
	background: #313b48;
	opacity: 1;
}

.testimonial-container .swiper-pagination.testimonial-pager .swiper-pagination-bullet:hover, .testimonial-container .swiper-pagination.testimonial-pager .swiper-pagination-bullet.swiper-pagination-bullet-active {
	background: #2299a1;
}

/*--------------------------------------------------------------
Fun Facts
--------------------------------------------------------------*/
.fun-facts-section {
	text-align: center;
	color: #fff;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.fun-facts-icon-wrap {
	display: block;
	text-align: center;
	color: #e83737;
	font-size: 64px;
	line-height: 1.5;
}

.fun-facts-section .counter-wrapper {
	font-size: 46px;
	font-weight: 700;
	line-height: 46px;
	display: block;
	margin-bottom: 15px;
}

.fun-facts-section .fun-facts-title-wrap {
	display: block;
	font-size: 16px;
	font-weight: 400;
	color: #fff;
}

/*----------------- tg-fun-facts-layout-2 -----------------*/
.tg-fun-facts-widget.tg-fun-facts-layout-2 .fun-facts-icon-wrap {
	background-color: rgba(255, 255, 255, 0.2);
	border: 5px solid rgba(255, 255, 255, 0.5);
	border-radius: 100%;
	color: #fff;
	display: inline-block;
	font-size: 36px;
	line-height: 120px;
	width: 120px;
	height: 120px;
}

.tg-fun-facts-widget.tg-fun-facts-layout-2 .fun-facts-title-wrap {
	line-height: 15px;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.tg-fun-facts-widget.tg-fun-facts-layout-2 .counter-wrapper {
	font-size: 46px;
	color: #e83737;
	margin: 10px 0;
}

/*--------------------------------------------------------------
Blogs
--------------------------------------------------------------*/
.blog-section .tg-column-2 {
	margin: 0;
}

.blog-section .tg-blog-widget-layout-1 .tg-column-2 {
	width: 50%;
}

.blog-section .row:nth-child(odd) {
	float: left;
	width: 100%;
	background-color: #fcfcfc;
}

.blog-section .tg-blog-widget-layout-1 .row:nth-child(odd) .post-image {
	float: left;
	width: 50%;
	position: relative;
}

.blog-section .row .post-image figure img {
	padding: 0;
}

.blog-section .row:nth-child(odd) .post-image figure img {
	width: 100%;
}

.blog-section .row:nth-child(odd) .post-image:before {
	border-bottom: 15px solid transparent;
	border-right: 15px solid #fcfcfc;
	border-top: 15px solid transparent;
	content: " ";
	font-size: 22px;
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

.blog-section .tg-blog-widget-layout-1 .blog-content:hover .entry-title a {
	color: #fff;
}

.blog-section .row:nth-child(odd) .blog-content {
	float: left;
	padding: 15px 5px 15px 20px;
	width: 50%;
}

.blog-section .row:nth-child(odd) .post-readmore {
	display: none;
}

.blog-section .row:nth-child(odd) .entry-title {
	line-height: 24px;
}

.blog-section .row:nth-child(odd) .entry-title a {
	font-size: 18px;
	font-weight: 700;
	color: #313b48;
}

.blog-section .tg-blog-widget-layout-1 .tg-blog-widget:hover .blog-content .entry-title a {
	color: #fff;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.blog-section .row:nth-child(odd) .entry-title a:hover {
	color: #e83737;
}

.blog-section .row:nth-child(odd) .entry-meta {
	margin: 8px 0;
	color: #919191;
}

.blog-section .row:nth-child(odd) .entry-meta .fa {
	padding-right: 5px;
}

.blog-section .row:nth-child(odd) .entry-meta a {
	font-size: 12px;
	color: #919191;
}

.blog-section .row:nth-child(odd) .entry-meta .entry-author {
	margin-left: 15px;
}

.blog-section .row:nth-child(odd) .entry-summary {
	font-size: 14px;
	color: #777;
	font-weight: 400;
}

.blog-section .tg-blog-widget-layout-1 {
	margin: 0;
}

.tg-blog-widget-layout-1 .entry-summary {
	max-height: 167px;
	overflow: hidden;
}

.blog-section .row:nth-child(even) {
	float: left;
	width: 100%;
	background-color: #fcfcfc;
}

.blog-section .row:nth-child(even) .post-image {
	float: right;
	position: relative;
	width: 50%;
}

.blog-section .row:nth-child(even) .post-image figure img {
	width: 100%;
}

.tg-blog-widget-layout-1 .tg-blog-widget .entry-summary {
	margin: 0;
}

.blog-section .row:nth-child(even) .post-image:before {
	border-bottom: 15px solid transparent;
	border-left: 15px solid #fcfcfc;
	border-top: 15px solid transparent;
	content: " ";
	font-size: 22px;
	position: absolute;
	left: 0;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

.blog-section .row:nth-child(even) .blog-content {
	float: right;
	padding: 15px 5px 15px 20px;
	width: 50%;
}

.blog-section .row:nth-child(even) .post-readmore {
	display: none;
}

.blog-section .row:nth-child(even) .entry-title {
	line-height: 24px;
}

.blog-section .row:nth-child(even) .entry-title a {
	font-size: 18px;
	font-weight: 700;
	color: #313b48;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.blog-section .row:nth-child(even) .entry-title a:hover {
	color: #e83737;
}

.blog-section .row:nth-child(even) .entry-meta {
	margin: 8px 0;
	color: #919191;
}

.blog-section .row:nth-child(even) .entry-meta .fa {
	margin-right: 5px;
}

.blog-section .row:nth-child(even) .entry-meta a {
	font-size: 12px;
	color: #919191;
}

.blog-section .row:nth-child(even) .entry-meta .entry-author {
	margin-left: 15px;
}

.blog-section .row:nth-child(even) .entry-summary {
	font-size: 14px;
	color: #777;
	font-weight: 400;
}

.blog-section .tg-blog-widget {
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.blog-section .tg-blog-widget-layout-1 .tg-blog-widget:hover {
	background-color: #e83737;
}

.blog-section .tg-blog-widget-layout-1 .tg-blog-widget:hover .entry-title a {
	color: #fff;
}

.blog-section .tg-blog-widget-layout-1 .tg-blog-widget:hover .entry-title a:hover {
	color: #313b48;
}

.blog-section .tg-blog-widget-layout-1 .tg-blog-widget:hover .entry-meta {
	color: #fff;
}

.blog-section .tg-blog-widget-layout-1 .tg-blog-widget:hover .entry-meta a {
	color: #fff;
}

.blog-section .tg-blog-widget-layout-1 .tg-blog-widget:hover .entry-summary {
	color: #fff;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.blog-section .row:nth-child(odd) .tg-blog-widget:hover .post-image:before {
	border-right: 15px solid #e83737;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.blog-section .row:nth-child(even) .tg-blog-widget:hover .post-image:before {
	border-left: 15px solid #e83737;
}

.blog-section .tg-blog-widget-layout-1 .entry-title a:hover,
.blog-section .tg-blog-widget-layout-1 .tg-blog-widget:hover .blog-content .entry-title a:hover {
	color: #fff;
}

.blog-section .tg-blog-widget-layout-2 .post-image {
	position: relative;
	width: auto;
	float: none;
}

.blog-section .tg-blog-widget-layout-2 .post-image img {
	width: 100%;
	padding: 0;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.blog-section .tg-blog-widget-layout-2 .post-image .entry-date {
	background: #e83737;
	left: 0;
	padding: 10px;
	position: absolute;
	text-align: center;
	top: 0;
}

.blog-section .tg-blog-widget-layout-2 .post-image .entry-date .fa {
	display: none;
}

.blog-section .tg-blog-widget-layout-2 .post-image .entry-date a {
	color: #fff;
	font-size: 12px;
}

.blog-section .tg-blog-widget-layout-2 .post-image.image-none .entry-date {
	position: relative;
	display: inline-block;
}

.blog-section .tg-blog-widget-layout-2 .post-image:before {
	display: none;
}

.blog-section .tg-blog-widget-layout-2 .blog-content {
	float: none;
	padding: 0 10px;
	width: auto;
	text-align: left;
}

.blog-section .tg-blog-widget-layout-2 .entry-title a {
	font-size: 18px;
	line-height: 24px;
	display: block;
}

/*----------------- tg-blog-widget-layout-2 -----------------*/
.tg-blog-widget-layout-2 .entry-title {
	margin-top: 15px;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.blog-section .tg-blog-widget-layout-2 .post-readmore {
	background: #e83737;
	color: #fff;
	display: inline-block;
	font-size: 12px;
	padding: 6px 12px;
	margin: 20px 0;
}

.blog-section .tg-blog-widget-layout-2 .post-readmore:hover {
	background: #2299a1;
}

.blog-section .tg-blog-widget-layout-2 .read-more-container {
	background: #f6f6f6;
	display: inline-block;
	width: 100%;
	padding: 5px 10px;
	margin-top: 20px;
}

.blog-section .tg-blog-widget-layout-2 .read-more-container .entry-author {
	float: left;
	color: #8e8e8e;
}

.tg-blog-widget-layout-2 .read-more-container .entry-author a {
	color: #8e8e8e;
	font-size: 12px;
}

.blog-section .tg-blog-widget-layout-2 .read-more-container .entry-author .fa {
	margin-right: 5px;
}

.blog-section .tg-blog-widget-layout-2 .read-more-container .read-more {
	float: right;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.blog-section .tg-blog-widget-layout-2 .read-more-container .read-more a {
	font-size: 12px;
	color: #e83737;
}

.blog-section .tg-blog-widget-layout-2:hover {
	background-color: #fcfcfc;
}

.blog-section .tg-blog-widget-layout-2:hover .entry-meta a {
	color: #919191;
}

.tg-blog-widget-layout-2 .blog-content p {
	margin: 0 0 10px;
}

.blog-section .tg-blog-widget-layout-2 .entry-title a:hover,
.blog-section .tg-blog-widget-layout-2 .tg-blog-widget:hover .blog-content .entry-title a:hover,
.blog-section .tg-blog-widget-layout-2 .read-more-container .read-more:hover a {
	color: #239ca4;
}

.tg-blog-widget-layout-2 .read-more-container .entry-author:hover {
	color: #239ca4;
}

.tg-blog-widget-layout-2 .read-more-container .entry-author:hover a {
	color: #239ca4;
}

/*--------------------------------------------------------------
Clients
--------------------------------------------------------------*/
.client-wrapper.swiper-wrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin: 0 auto;
}

/*--------------------------------------------------------------
Footer
--------------------------------------------------------------*/
/* 20200807 chg arai 
	background-color: #313b48;→#000000に変更
	padding: 80px 0 30px;→20px 0 20pxに変更
*/
#top-footer {
	background-color: #000000;
	padding: 20px 0 20px;
}

#top-footer .footer-logo {
	display: inline-block;
	width: 100%;
	margin-bottom: 15px;
}

#top-footer .footer-logo .logo-image {
	float: left;
	padding: 5px;
}

#top-footer .footer-logo .site-title {
	font-size: 32px;
	color: #fff;
	font-weight: 700;
	float: left;
	line-height: 42px;
}
/* 20200825 chg arai
 * 	color: #fff;→削除
 *	line-height: 24px;→削除
 */
#top-footer .textwidget {
	font-size: 15px;
	font-weight: 400;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
#top-footer .widget-title {
	font-size: 18px;
	border-left: 3px solid #e83737;
	font-weight: 600;
	line-height: 24px;
	color: #fff;
	margin-bottom: 30px;
	padding-left: 20px;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
#top-footer .widget-title:first-letter {
	color: #e83737;
}
/* 20200807 chg arai 
	margin-bottom: 30px;→0pxに変更
*/
#top-footer .widget {
	margin-bottom: 0px;
}

#top-footer .widget ul {
	margin: 0;
	list-style: none;
}
/* 20200820 chg arai
 * 	position: relative；→削除
	padding: 0 0 10px 20px;→0pxに変更
	font-size: 12px;→16pxに変更
*/
#top-footer .widget ul li {
	padding: 0;
	font-size: 16px;
}

#top-footer .widget ul li:after {
	color: #fff;
	content: "\" /*rtl:"\"*/;
	font-family: fontawesome;
	left: 0;
	position: absolute;
	top: 0;
}
/* 20200820 chg arai
	font-size: 14px;→16pxに変更
*/
#top-footer .widget ul li a {
	font-size: 16px;
	color: #fff;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
#top-footer .widget ul li a:hover {
	color: #e83737;
}

#top-footer .widget_tag_cloud .tagcloud a {
	border: 1px solid #fff;
	color: #fff;
	display: inline-block;
	margin: 6px 4px;
	padding: 0 5px;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
#top-footer .widget_tag_cloud .tagcloud a:hover {
	background-color: #e83737;
	border-color: #e83737;
}

#bottom-footer {
	padding: 20px 0;
	background-color: #28313d;
}

#bottom-footer .copyright {
	float: left;
}

#bottom-footer .copyright-text {
	color: #fff;
	font-size: 12px;
}

#bottom-footer .copyright-text a {
	color: #bcbaba;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
#bottom-footer .copyright-text a:hover {
	color: #e83737;
}

#bottom-footer .footer-menu {
	float: right;
	margin: 0;
}

#bottom-footer .footer-menu ul li {
	float: left;
}

#bottom-footer .footer-menu ul li:after {
	content: "|";
	padding: 0 5px;
	color: #fff;
}

#bottom-footer .footer-menu ul li:last-child:after {
	display: none;
}

#bottom-footer .footer-menu ul li a {
	color: #fff;
	font-size: 12px;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
#bottom-footer .footer-menu ul li a:hover {
	color: #e83737;
}

.footer-menu li {
	float: left;
	padding: 0 0 0 15px;
}

.footer-menu li a {
	color: #fff;
	font-size: 12px;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.footer-menu li a:hover {
	color: #e83737;
}

/*--------------------------------------------------------------
Archive
--------------------------------------------------------------*/
.post {
	margin-bottom: 40px;
	display: inline-block;
}

.post .entry-thumbnail {
	float: left;
	margin-right: 30px;
	width: 33.7%;
}

.entry-meta .entry-date a .updated:not(.published) {
	display: none;
}

.entry-content-block #primary .entry-title {
	font-size: 20px;
	line-height: 24px;
}

/* 20200807 chg arai 
	margin-top: 12px;を削除
*/
.entry-content,
.entry-summary {
	color: #606060;
}

#primary .entry-footer span {
	font-size: 14px;
	margin-right: 15px;
}

#primary .entry-footer span .fa {
	margin-right: 5px;
}

#primary .entry-footer span a {
	font-size: 12px;
}

.navigation.posts-navigation {
	margin: 20px 0;
}

.entry-meta {
	font-size: 12px;
	margin-top: 12px;
}

.entry-meta .fa {
	padding-right: 5px;
}

.entry-meta a {
	font-size: 12px;
	color: #8e8e8e;
}

.entry-footer a {
	font-size: 12px;
	color: #8e8e8e;
}

.entry-meta span {
	margin-right: 15px;
}

#secondary {
	float: right;
	width: 32.22%;
}

#secondary .widget-title {
	font-size: 14px;
	position: relative;
	margin-bottom: 30px;
}

#secondary .widget-title:before, #secondary .widget-title:after {
	background: #e1e1e1 none repeat scroll 0 0;
	bottom: -10px;
	content: " ";
	height: 1px;
	left: 0;
	margin-left: 0;
	position: absolute;
	width: 100%;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
#secondary .widget-title:after {
	background: #e83737;
	bottom: -11px;
	height: 3px;
	margin-left: 0;
	width: 30px;
}

#secondary .searchform input {
	border: none;
	border-bottom: 1px solid #666;
	width: 70%;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
#secondary .searchform .btn:hover {
	background: #e83737 none repeat scroll 0 0;
}

#secondary .searchform button[type="submit"] {
	margin-bottom: 0;
}

#secondary .widget {
	margin-bottom: 30px;
}

#secondary .widget ul {
	margin: 0;
	list-style: none;
}

#secondary .widget ul li {
	position: relative;
	padding: 0 0 10px 20px;
	font-size: 12px;
}

#secondary .widget ul li:after {
	color: #000;
	content: "\" /*rtl:"\"*/;
	font-family: fontawesome;
	left: 0;
	position: absolute;
	top: 0;
}

#secondary .widget ul li a {
	font-size: 12px;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
#secondary .widget ul li a:hover {
	color: #e83737;
}

.widget_post_list .post-link-block {
	margin-bottom: 20px;
	display: inline-block;
}

.widget_post_list .entry-thumbnail {
	float: left;
	margin-right: 30px;
	width: 20%;
}

.widget_post_list .entry-content-block {
	overflow: hidden;
}

.widget_post_list .entry-content-block .entry-title {
	line-height: 13px;
	margin-bottom: 18px;
}

.widget_post_list .entry-content-block .entry-title a {
	font-size: 12px;
}

.widget_post_list .entry-content-block .entry-meta a {
	color: #8e8e8e;
	font-size: 12px;
}

.widget_post_list .entry-meta .entry-author {
	margin-left: 15px;
}

.blog .entry-thumbnail {
	float: left;
	width: 33.7%;
}

.blog .entry-content-block {
	width: 100%;
}

#primary .post .entry-content-block .entry-content {
	border: none;
}

.full-width-archive #primary .post {
	margin-bottom: 50px;
	width: 100%;
}

.full-width-archive #primary .post.has-post-thumbnail {
	margin-bottom: 0;
}

.full-width-archive #primary .post .entry-thumbnail {
	width: 100%;
	float: none;
	margin-right: 0;
}

.full-width-archive #primary .post .entry-thumbnail img {
	width: 100%;
}

.full-width-archive #primary .post .entry-content-block {
	overflow: unset;
	width: 94%;
	position: relative;
	top: 0;
	padding: 20px 20px 0;
	margin: 0 auto;
	background: #fff;
}

.full-width-archive #primary .post.has-post-thumbnail .entry-content-block {
	overflow: unset;
	width: 94%;
	position: relative;
	top: -45px;
	padding: 20px 20px 0;
	margin: 0 auto;
	background: #fff;
}

.grid-view #primary .post {
	display: inline-block;
	margin-bottom: 30px;
	margin-right: 1%;
	vertical-align: top;
	width: 48%;
}

.grid-view #primary .post .entry-thumbnail {
	width: 100%;
}

.grid-view #primary .post .entry-content-block {
	position: unset;
	width: 100%;
}

.post-type-archive-portfolio .entry-thumbnail {
	float: left;
	clear: both;
	margin-bottom: 40px;
	margin-right: 30px;
}

.post-type-archive-portfolio .navigation.posts-navigation {
	width: 100%;
	clear: both;
}

.entry-content-block .entry-title {
	font-size: 18px;
}

.grid-view .entry-header {
	margin-top: 10px;
}

/*--------------------------------------------------------------
Bread Crumb
--------------------------------------------------------------*/
/*
  20200804 chg arai
  margin-bottom: 30px;削除
*/
.breadcrumb-trail.breadcrumbs {
	background: #fafafa none repeat scroll 0 0;
}
/*
  20200804 chg arai
  タイトルを隠すため、文字色を変更
*/
.breadcrumb-trail.breadcrumbs .trail-title {
	float: left;
	font-weight: 400;
	font-size: 25px;
	padding: 6px 0;
	color: #FAFAFA !important;
}

.breadcrumb-trail.breadcrumbs .trail-items {
	float: right;
	margin: 0;
	padding: 14px 0;
	list-style: none;
}

.breadcrumb-trail.breadcrumbs .trail-items li {
	float: left;
}

.breadcrumb-trail.breadcrumbs .trail-items li:first-child span:before {
	display: none;
}

.breadcrumb-trail.breadcrumbs:before {
	clear: both;
	content: "";
	display: block;
}

.breadcrumb-trail.breadcrumbs .trail-items li span {
	font-size: 12px;
	color: #a1a1a1;
	position: relative;
	line-height: 18px;
	padding: 0 14px;
}

.breadcrumb-trail.breadcrumbs .trail-items li span a {
	color: #a1a1a1;
}

.breadcrumb-trail.breadcrumbs .trail-items li span:before {
	color: #a1a1a1;
	content: "\" /*rtl:"\"*/;
	font-family: fontawesome;
	left: 0;
	position: absolute;
	top: 0;
}

.page-template-pagebuilder .breadcrumb-trail.breadcrumbs {
	margin: 0;
}

/*--------------------------------------------------------------
Post Page
--------------------------------------------------------------*/
.post {
	width: 100%;
}

.single .entry-content-block .entry-meta {
	margin-top: 0;
	margin-bottom: 20px;
}

.single .entry-content-block .entry-header {
	margin: 20px 0 5px;
}

.single .entry-thumbnail {
	margin-top: 20px;
	width: 100%;
}

.single .entry-thumbnail img {
	padding: 0;
}

.single .entry-content-block {
	width: 100%;
}

.single .entry-content-block .entry-title {
	font-size: 20px;
}

.single .entry-content-block .entry-meta .fa {
	padding-right: 5px;
}

.single .entry-content-block .entry-meta a {
	font-size: 12px;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.post .entry-content-block .entry-meta a:hover,
.post .entry-content-block .entry-meta span:hover {
	color: #e83737;
}

.single .entry-content-block .entry-content {
	border-bottom: 1px solid #c5c5c5;
}

.single .entry-content-block .entry-footer span {
	color: #8e8e8e;
	font-size: 14px;
	margin-right: 15px;
}

.single .entry-content-block .entry-footer span .fa {
	margin-right: 5px;
}

.single .entry-content-block .entry-footer span a {
	color: #8e8e8e;
	font-size: 12px;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.post .entry-content-block .entry-footer span a:hover {
	color: #e83737;
}

.author-description {
	border-bottom: 1px solid #c5c5c5;
	display: block;
	padding: 0 0 30px;
}

.author-description .author-img {
	display: inline-block;
	width: 75px;
	float: left;
}

.author-description .author-description-block {
	width: calc(100% - 100px);
	float: right;
	display: inline-block;
}

.author-description .author-description-block .author-title {
	color: #313b48;
	font-weight: 700;
}

.author-description .author-description-block .author-summary {
	font-size: 12px;
}

.default-wp-page {
	margin: 0;
	padding: 30px 0;
	display: inline-block;
	border-bottom: 1px solid #c5c5c5;
}

.default-wp-page .previous {
	float: left;
	width: 46%;
}

.default-wp-page .previous a {
	display: inline-block;
}

.default-wp-page .previous a span {
	float: left;
}

.default-wp-page .previous a span:first-child {
	font-size: 30px;
	padding: 8px 0;
}

.default-wp-page .previous a span img {
	padding: 0 10px;
}

.default-wp-page .previous a .entry-title {
	display: inline-block;
	width: 60%;
	padding: 8px 0;
}

.default-wp-page .navigation-divider {
	display: inline-block;
	padding: 20px;
}

.default-wp-page .next {
	float: right;
	width: 46%;
}

.default-wp-page .next a {
	display: inline-block;
}

.default-wp-page .next a span {
	float: right;
}

.default-wp-page .next a span:first-child {
	font-size: 30px;
	padding: 8px 0;
}

.default-wp-page .next a span img {
	padding: 0 10px;
}

.default-wp-page .next a .entry-title {
	display: inline-block;
	width: 60%;
	padding: 8px 0;
	text-align: right;
}

.related-posts-wrapper {
	margin-top: 30px;
}

.related-posts-wrapper .related-posts-main-title {
	margin-bottom: 20px;
}

.related-posts-wrapper .post-thumbnails {
	margin-bottom: 20px;
}

.related-posts-wrapper .post-thumbnails img {
	padding: 0;
}

.related-posts-wrapper .entry-title {
	font-size: 18px;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.related-posts-wrapper .entry-title a:hover {
	color: #e83737;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.related-posts-wrapper .entry-meta > span a:hover {
	color: #e83737;
}

/*--------------------------------------------------------------
404 page
--------------------------------------------------------------*/
.not-found .icon-404 .fa {
	font-size: 300px;
}

#primary .content-404 {
	padding: 60px 0;
}

#primary .not-found .page-header .page-title {
	font-size: 24px;
	line-height: 30px;
}

#primary .not-found .page-content {
	margin: 30px 0;
}

#primary .searchform input {
	border: none;
	border-bottom: 1px solid #666;
	width: 70%;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
#primary .searchform .btn:hover {
	background: #e83737 none repeat scroll 0 0;
}

.search .hentry {
	border-bottom: 1px solid #e1e1e1;
	margin-top: 20px;
}

/*--------------------------------------------------------------
Comments
--------------------------------------------------------------*/
#comments {
	padding: 30px 0;
}

#comments .comments-title {
	font-size: 25px;
	line-height: 30px;
}

#comments .comment-list {
	margin: 0;
}

#comments .comment-list article.comment-body .comment-author {
	float: left;
	max-width: 100px;
}

#comments .comment-list article.comment-body .comment-author .says {
	display: none;
}

#comments .comment-list article.comment-body .comment-author img {
	margin-right: 30px;
	display: block;
	margin-bottom: 20px;
}

#comments .comment-list article.comment-body .comment-metadata {
	padding: 6px 0;
}

#comments .comment-list article.comment-body .comment-metadata a {
	color: #8e8e8e;
	font-size: 12px;
}

#comments .comment-list article.comment-body .comment-metadata .entry-author {
	margin-left: 15px;
}

#comments .comment-list article.comment-body .comment-content {
	overflow: hidden;
	font-weight: 500;
}

#comments .comment-list article.comment-body .comment-content p {
	margin: 0;
}

#comments .comment-list article.comment-body .reply {
	margin-left: 100px;
	padding-top: 6px;
}

#comments .comment-list article.comment-body .reply a {
	color: #8e8e8e;
	font-size: 12px;
	position: relative;
}

#comments .comment-list article.comment-body .reply a:before {
	position: absolute;
	top: 50%;
	left: 100%;
	content: " ";
	width: 30px;
	border: 1px solid #c5c5c5;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	margin-left: 10px;
}

#comments .comment-list .comment {
	border-bottom: 1px solid #c1c1c1;
	padding: 30px 0;
}

#comments .comment-list .comment ul.children {
	margin-left: 100px;
}

#comments .comment-list .comment ul.children .comment {
	padding: 0;
	border-bottom: none;
}

#comments .comment-list .comment ul.children .comment article.comment-body {
	border-bottom: 1px solid #c1c1c1;
	padding: 20px 0;
}

#comments .comment-list .comment ul.children .comment article.comment-body:last-child {
	border: none;
}

#respond {
	padding-bottom: 10px;
}

#respond #commentform .comment-form-comment #comment {
	background: #f9f9f9 none repeat scroll 0 0;
	resize: none;
}

#respond #commentform p {
	padding-bottom: 20px;
}

#respond #commentform p label {
	font-weight: 500;
}

#respond #commentform p input {
	background: #f9f9f9 none repeat scroll 0 0;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
#respond #commentform .form-submit input {
	background: #e83737;
	height: 45px;
	line-height: 30px;
}

#respond #commentform .form-submit input:hover {
	background-color: #1c9ba4;
}

/*--------------------------------------------------------------
Gutenberg Blocks Layout.
--------------------------------------------------------------*/
.wp-block-gallery.alignleft, .wp-block-gallery.alignright, .wp-block-gallery.aligncenter,
.wp-block-social-links.alignleft,
.wp-block-social-links.alignright,
.wp-block-social-links.aligncenter {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

/*--------------------------------------------------------------
WooCommerce
--------------------------------------------------------------*/
.woocommerce ul.products li.product a img,
.woocommerce div.product div.images img {
	padding: 0;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.woocommerce span.onsale,
.woocommerce ul.products li.product .onsale {
	background-color: #e83737;
	padding: 0;
	height: 50px;
	width: 50px;
	line-height: 50px;
}

#add_payment_method table.cart img,
.woocommerce-cart table.cart img,
.woocommerce-checkout table.cart img {
	width: auto;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.woocommerce ul.products li.product .button,
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
	background-color: #e83737;
	color: #fff;
}

.woocommerce ul.products li.product .button:hover,
.woocommerce #respond input#submit.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
	background-color: #2299a1;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.added_to_cart.wc-forward {
	background-color: #e83737;
	border-radius: 3px;
	font-size: 14px;
	line-height: 18px;
	color: #fff;
	padding: 4px 17px;
	margin-top: 5px;
}

.added_to_cart.wc-forward:hover {
	background-color: #2299a1;
}

.added_to_cart.wc-forward:after {
	content: "\f23d";
	color: #fff;
	font-family: fontawesome;
	padding-left: 8px;
}
/* 20200818 chg arai 一括置換
	color: #30afb8;→#e83737に変更
*/
.woocommerce-Price-amount.amount {
	color: #e83737;
}

.woocommerce .star-rating span {
	color: #ffae65;
}

.widget_shopping_cart .buttons {
	text-align: center;
}

.woocommerce .widget_shopping_cart .total,
.woocommerce.widget_shopping_cart .total {
	padding: 5px 0;
	text-align: center;
}

.flash-cart-views .woocommerce ul.cart_list li img {
	width: 70px;
}

.woocommerce ul.product_list_widget li img {
	width: 70px;
}

.woocommerce ul.products li.product .price del {
	margin-right: 5px;
	display: inline-block;
}

.woocommerce nav.woocommerce-pagination {
	text-align: left;
}

.woocommerce .woocommerce-breadcrumb {
	float: right;
	margin: 0;
	padding: 14px 0;
}

.woocommerce .woocommerce-breadcrumb span {
	font-size: 12px;
	color: #a1a1a1;
	position: relative;
	line-height: 18px;
	padding: 0 14px;
}

.woocommerce .woocommerce-breadcrumb span:before {
	color: #a1a1a1;
	content: "\" /*rtl:"\"*/;
	font-family: fontawesome;
	left: 0;
	position: absolute;
	top: 0;
}

.woocommerce .woocommerce-breadcrumb span:first-of-type:before {
	content: none;
}

#secondary .widget_products ul.product_list_widget li img {
	padding: 0 0 20px 0;
}

#secondary .widget_products ul li {
	clear: both;
}

.woocommerce-breadcrumb {
	float: right;
	margin: 0;
	padding: 14px 0;
}

.woocommerce-breadcrumb span {
	font-size: 12px;
	color: #a1a1a1;
	position: relative;
	line-height: 18px;
	padding: 0 14px;
}

.woocommerce-breadcrumb span:before {
	color: #a1a1a1;
	content: "\" /*rtl:"\"*/;
	font-family: fontawesome;
	left: 0;
	position: absolute;
	top: 0;
}

.woocommerce-breadcrumb span:first-of-type:before {
	content: none;
}
/*--------------------------------------------------------------
スクロールボタン：背景色と■形の成型
--------------------------------------------------------------*/
#scroll-up {
	background-color: #696969 !important;
	border-radius: 0%;
}
/*--------------------------------------------------------------
空白設定(600px以上)
--------------------------------------------------------------*/
.pre-space-0-tp {
	margin-top: 0;
}

.pre-space-0-bt {
	margin-bottom: 0;
}

.pre-space-15 {
	margin-bottom: 15px;
}

.pre-space-20 {
	margin-bottom: 20px;
}

.pre-space-20-tp {
	margin-top: 20px;
}

.pre-space-25 {
	margin-bottom: 25px;
}

.pre-space-30 {
	margin-bottom: 30px;
}

.pre-space-35 {
	margin-bottom: 35px;
}

.pre-space-50 {
	margin-bottom: 50px;
}

.pre-space-65 {
	margin-bottom: 65px;
}

.pre-space-65-tp {
	margin-top: 65px;
}

.pre-space-80-tp {
	margin-top: 80px;
}

.pre-space-80 {
	margin-bottom: 80px;
}

.pre-space-85 {
	margin-bottom: 85px;
}

.pre-space-90 {
	margin-bottom: 90px;
}

.pre-space-100 {
	margin-bottom: 100px;
}

.pre-space-100-top {
	margin-top: 100px;
}

.pre-space-100-td {
	margin-top: 100px;
	margin-bottom: 100px;
}
/*--------------------------------------------------------------
空白設定(599px以下)
--------------------------------------------------------------*/
@media only screen and (max-width: 599px) {
	.pre-space-65 {
		margin-bottom: 40px;
	}
}

/*--------------------------------------------------------------
全ページ共通：ボタンサイズ
--------------------------------------------------------------*/
.wp-block-button__link {
	width: 200px;
	font-size: 14px;
	padding: 12px 0;
}
.wp-block-button a,
.wp-block-button__link:active,
.wp-block-button__link:focus,
.wp-block-button__link:hover
.wp-block-button__link:visited {
	color: #FFF !important;
}

/*--------------------------------------------------------------
ボタン例外
--------------------------------------------------------------*/
.wp-block-button__link_600 {
    width: 600px;
    font-size: 14px;
    padding: 12px 0;
}
.wp-block-button a,
.wp-block-button__link_600:active,
.wp-block-button__link_600:focus,
.wp-block-button__link_600:hover
.wp-block-button__link_600:visited {
    color: #FFF !important;
}

@media only screen and (max-width: 700px) {
	.wp-block-button__link_600 {
		width: 100%;
		padding: 12px 10px;
	}
}

/*--------------------------------------------------------------
全ページ共通：h2、h3のフォントサイズ設定(599px以下)
--------------------------------------------------------------*/
@media only screen and (max-width: 599px) {
	h2 {
		font-size: 28px;
		line-height: 36px;
	}
	h3 {
		font-size: 20px;
		line-height: 28px;
	}
}

/*-------------------------------------------------------------
全ページ共通：概要ページの文字幅
--------------------------------------------------------------*/
p.pre-p {
	width: 708px;
	margin-left: auto;
	margin-right: auto;
	line-height: 199.6%;
	font-size: 18px;
}
p.pre-padding {
	padding: auto;
}

/*-------------------------------------------------------------
全ページ共通：概要ページの文字幅(708px以下)
--------------------------------------------------------------*/
@media only screen and (max-width: 708px) {
    p.pre-p {
	    width: 100%;
    }
}

/*-------------------------------------------------------------
全ページ共通：概要ページの文字幅(599px以下)
--------------------------------------------------------------*/
@media only screen and (max-width: 599px) {
    p.pre-p {
	    font-size: 16px;
		line-height: 26px;
    }
}
/*--------------------------------------------------------------
全ページ共通：罫線を太く表示
--------------------------------------------------------------*/
hr.pre-wide {
	border: 1px solid #000000 !important;
	height: 0px !important;
	margin: 10px 0 45px 0;
}

/*--------------------------------------------------------------
全ページ共通：ボタン、画像のリンクをオンマウスにしたときに透過60%
--------------------------------------------------------------*/
.movment {
	transition: all .3s ease 0s;
}

.movment:hover:not(:disabled) {
	opacity: .6;
}

.movment:focus {
 	opacity: .6;
	outline: none;
}

/*--------------------------------------------------------------
全ページ共通：599px以下の時、2カラム表示
--------------------------------------------------------------*/

/* 599pxサイズ以下の時、横に2カラム表示 */
@media only screen and (max-width: 599px){
	.wp-block-column {
		flex-basis: calc(50% - 16px) !important;
		margin: 5px;
	}
	.wp-block-columns .wp-block-image {
		margin-bottom: 0 !important;
	}
}

/*--------------------------------------------------------------
例外：599px以下の時、1カラム表示
--------------------------------------------------------------*/
@media only screen and (max-width: 599px){
	.wp-block-one-column {
		flex-basis: 100% !important;
	}
	.wp-block-columns .wp-block-image {
		margin-bottom: 0 !important;
	}
}

/*--------------------------------------------------------------
全ページ：1カラム時のイメージ中央表示
--------------------------------------------------------------*/
@media only screen and (max-width: 599px){
	.column-center {
		text-align: center !important;
	}
}
/*--------------------------------------------------------------
全ページ：1カラム時の左右反転
--------------------------------------------------------------*/
@media only screen and (max-width: 599px){
	.column-reverse {
		flex-wrap: wrap-reverse;
	}
}

/*--------------------------------------------------------------
TOP：4カラム表示の背景色設定
--------------------------------------------------------------*/
.pre-top-column-bg {
	width: 100vw;
	position: relative;
	left: 50%;
	transform: translateX(-50%);
	background-color: #f4f4f4;
	padding: 40px;
}

.pre-top-columns {
	width: 976px;
	margin: 0 auto;
}

@media only screen and (max-width: 976px) {
	.pre-top-columns {
	    width: 100%;
    }
}

/*--------------------------------------------------------------
TOP：ニュースタイトル
--------------------------------------------------------------*/
.h2-news {
	font-size: 30px;
	margin-bottom: 48px;
	margin-top: 90px;
}

/*--------------------------------------------------------------
TOP：ニュース
--------------------------------------------------------------*/
.news {
	margin: 10px 0;
	font-size: 18px;
	word-break: break-all;
	overflow: hidden !important;
}

.news dl {
	margin: 0; 
	padding: 0;
	border: 0;
}

.news dl dt {
	margin: 0 ;
	padding: 0 ;
	border: 0;
	color:#000;
	font-weight: normal;
	white-space: nowrap;
	float: left;
}

.news dl dd {
	margin-left: 130px;
}
@media only screen and (max-width: 599px) {
	.news dl dt,
	.news dl dd{
		font-size: 16px;
	}
}
/*--------------------------------------------------------------
会社情報：地図の空白設定(976px以下)
--------------------------------------------------------------*/
.pre-space-map {
	margin-bottom: 10px;
}

@media only screen and (max-width: 976px) {
	.pre-space-map {
		margin-bottom: 40px;
	}
}

/*--------------------------------------------------------------
会社情報：テーブル設定
--------------------------------------------------------------*/
.pre-table-company-profile {
	padding-bottom: 20px;
}

.pre-table-company-profile tbody tr td{
	padding: 20px;
}

.pre-table-history {
	padding-bottom: 20px;
	border: none !important;
	border-collapse: collapse !important;
}

.pre-table-history tbody tr td{
	padding: 20px;
	border: none;
	border-bottom: 1px solid #d0d0d0;
}

td.bg-color-g{
	background-color: #f7f7f7;
}

.box-inner-gray{
    background-color: #f4f4f4 !important;
}

.box-inner-white{
    background-color: #FFF !important;
}

.btn-bk-g{
	background-color: #f4f4f4;
	padding: 30px;
}

.pre-table-company-profile td:nth-child(1),
.pre-table-history td:nth-child(1){  
	min-width: 90px; 
	padding: 0 10px 0 0;
}
/*--------------------------------------------------------------
会社情報：クリックメニュー
--------------------------------------------------------------*/
.fluid-box-menu {
	width: 100vw;
	position: relative;
	left: 50%;
	transform: translateX(-50%);
	background-color: #000;
}

#nav-pre-menu {
	list-style: none;
	display: flex;
	justify-content: center;
}
 
#nav-pre-menu li {
	width: 200px;
	text-align: center;
	height: 50px;
	line-height: 50px;
	border-right: 1px solid #f4f4f4;
	border-left: 1px solid #f4f4f4;
}

#nav-pre-menu li + li {
  border-left: 0;
  border-right: 1px solid #f4f4f4;
}

#nav-pre-menu li a {
	display: block;
	text-decoration: none;
	color: #fff;
	font-weight: bold;
}

/* レスポンシブはリスト非表示 */
@media screen and (max-width: 976px){
	.fluid-box-menu{
		padding-bottom: 65px;
	}
	#nav-pre-menu li {
		display: none;
	}
}

/*--------------------------------------------------------------
会社情報：活動方針の背景色
--------------------------------------------------------------*/
.box-active-policy{
	width: 100vw;
	position: relative;
	left: 50%;
	transform: translateX(-50%);
	background-color: #f4f4f4 !important;
}

.fluid-box-inner{
	margin: 0 auto;
	padding: 25px;
}

/*--------------------------------------------------------------
会社情報：地図タイトル文字サイズ
--------------------------------------------------------------*/
.pre-map-name {
	font-size: 21px;
}

/*--------------------------------------------------------------
会社情報：地図サイズ
--------------------------------------------------------------*/
.pre-map-size {
	overflow: hidden;
	height: 300px;
	width: 400px;
}

.pre-map-size-iframe {
	border: none; 
	margin-top: -250px;
	width: 100%;
	height: 800px;
}

@media screen and (max-width: 976px) {
	.pre-map-size {
		overflow: hidden;
		height: 210px;
		width: 280px;
	}

	.pre-map-size-iframe {
		border: none; 
		margin-top: -280px;
		width: 100%;
		height: 800px;
	}
}

/*--------------------------------------------------------------
イメージ画像のパディングなし
--------------------------------------------------------------*/
.pre-img-boottom {
	margin-bottom: 0;
}

/*--------------------------------------------------------------
事業内容：h横文字罫線対応
--------------------------------------------------------------*/
.catch {
	display: flex;
	align-items: center; /* 垂直中心 */
	justify-content: center; /* 水平中心 */
}
.catch:before, .catch:after {
	border-top: 1px solid;
	content: "";
	width: 175px;
	color: #d0d0d0;
}
.catch:before {
	margin-right: 85px;
}
.catch:after {
	margin-left: 85px;
}
@media only screen and (max-width: 976px){
	.catch:before, .catch:after {
		border-top: 1px solid;
		content: "";
		width: 85px;
		color: #d0d0d0;
	}
	.catch:before {
		margin-right: 45px;
	}
	.catch:after {
		margin-left: 45px;
	}
}
@media only screen and (max-width: 479px){
	.catch:before, .catch:after {
		border-top: 1px solid;
		content: "";
		width: 60px;
		color: #d0d0d0;
	}
	.catch:before {
		margin-right: 30px;
	}
	.catch:after {
		margin-left: 30px;
	}
}

/*--------------------------------------------------------------
採用情報：976px以下の時、1カラム表示
--------------------------------------------------------------*/
@media only screen and (max-width: 976px){
	.wp-block-one-column-recinfo {
		flex-basis: 100% !important;
		margin: 0 !important;
	}
	.wp-block-one-column-recinfo .wp-block-image {
		margin-bottom: 0 !important;
	}
}
@media only screen and (min-width: 782px) {
	.wp-block-columns-recinfo {
		flex-wrap: wrap !important;
	}
}
/*--------------------------------------------------------------
採用情報：ボタン右揃え
--------------------------------------------------------------*/
.wp-block-columns.has-background-recinfo {
	padding: 20px 0;
}

/*--------------------------------------------------------------
採用情報：1カラム時のイメージ中央表示
--------------------------------------------------------------*/
@media only screen and (max-width: 599px){
	.column-img-center {
		float: none !important;
		display: block !important;
		text-align: center;
	}
}

/*--------------------------------------------------------------
採用情報：イメージ画像パディング設定
--------------------------------------------------------------*/
@media only screen and (max-width: 976px){
	.pre-img-boottom-sp {
		margin-top: 30px;
	}
}

/*--------------------------------------------------------------
問合せ：ボタン
--------------------------------------------------------------*/
@media only screen and (max-width: 700px) {
	.margin-none {
		margin: 0!important;
	}
	
	.wp-block-button__link_300 {
		width: 220px;
		padding: 12px 10px;
	}
	
	.align-center {
		float: none !important;
		text-align: center;
		margin: 0 !important;
	}
}

/*--------------------------------------------------------------
フッター
--------------------------------------------------------------*/
/* リンク色：通常白、オンマウスのみ赤 */
.hooter-list {
	background-color: #000;
}

.hooter-list a:link,
.hooter-list a:visited{
	color: #FFF;
}

.hooter-list a:hover {
	color: #e83737;
}

.hooter-list a:focus {
	outline: none;
}

.line-border {
	padding: 0 5px;
	border: 1px solid #FFFFFF;
	color: #FFF;
	font-size: 16px;
}

.chg-pad {
	padding: 0 20.5px;
}

.hooter-list ul.top,
.hooter-list ul.sub-menu01,
.hooter-list ul.sub-menu02,
.hooter-list ul.bottom {
	list-style: none;
	margin: 0;
	font-size: 0;
}

.hooter-list ul.top li,
.hooter-list ul.sub-menu01 li,
.hooter-list ul.sub-menu02 li {
	display: inline-block;
	font-size: 16px;
	color: #FFF;
}

/* TOPの横幅サイズ：スマホは要変更 */
.hooter-list ul.top li {
	width: 25%;
}

.hooter-list ul.bottom li{
	width: 50%;
	display: inline-block;
	font-size: 14px;
	color: #FFF;
}

.hooter-list ul.sub-menu01,
.hooter-list ul.sub-menu02 {
	list-style: none;
	margin: 0;
}

.hooter-list ul.sub-menu01 li {
	width: 33.3%;
	text-align: left;
	font-size: 16px;
	padding: 0 0 20px 0 !important;
}

.hooter-list ul.sub-menu02 li {
	width: 25%;
	text-align: left;
	font-size: 16px;
	padding: 0 0 20px 0 !important;
}

.hooter-list input {
	display: none;
}

.hooter-list .note {
	color: #FFF;
}


/* スマホサイズの時は縦並び */
@media screen and (max-width: 976px) {

	#top-footer {
		padding: 0 0 20px;
	}
	
	#top-footer .tg-container {
		padding: 0;
		width: 100%;
	}
	
	.hooter-list ul.top li,
	.hooter-list ul.bottom li{
		width: 100%;
		line-height: 36px;
		border-bottom: 1px solid #333;
		display:inline-block;
	}
	
	.hooter-list ul.sub-menu01,
	.hooter-list ul.sub-menu02{
		border-bottom: 1px solid #333;
	}
	
	.hooter-list ul.top.li:first-child {
		border: none;
	}
	
	.hooter-list ul.bottom li:first-child {
		border-top: 1px solid #333;
	}
	
	.hooter-list ul.bottom li:last-child {
		border: none;
		text-align: center;
	}
	
	.hooter-list a {
		display: block;
		width: 100%;
		padding: 0 0 0 6%;
	}
	
	.line-border {
		padding: 0;
		border: none;
	}
	
	.chg-pad {
		padding: 0;
	}
	
	.hooter-list .middle a {
		display: block;
		width: 100%;
		height: 100%;
		padding: 0 0 0 7%;
		text-decoration: none;
		color: #000000;
		line-height: 36px;
	}
	.hooter-list .middle label {
		display: block;
		position: relative;
		padding: 0 0 0 6%;
		line-height: 36px;
		color: #ffffff;
		cursor: pointer;
	}
	.hooter-list .middle label::before {
		position: absolute;
		content: '▼';
		color: #ffffff;
		right: 6%;
	}
	.hooter-list .middle input {
		display: none;
	}
	.hooter-list .middle ul {
		margin: 0;
		padding: 0;
		background: #3f3f3f;
		list-style: none;
	}
	.hooter-list .middle  li {
		overflow-y: hidden;
		max-height: 0;
		transition: all 0.5s;
	}
	
	.hooter-list ul.sub-menu01 li,
	.hooter-list ul.sub-menu02 li{
		width: 100%;
		padding: 0 !important;
	}
	
	#acd-menu01:checked ~ #link1 li,
	#acd-menu02:checked ~ #link2 li {
		max-height: 46px;
		opacity: 1;
	}
	.hooter-list .wp-block-spacer {
		height: 0 !important;
	}
	
	.hooter-list hr {
		display: none;
	}
	
	.hooter-list .note {
		text-align: left;
		padding: 0 6% 0 6%;
	}
}

/*--------------------------------------------------------------
Contact Form7専用
--------------------------------------------------------------*/
.contact7 {
	max-width: 100%;
	box-sizing: border-box;
}
.contact7 dd {
	margin: 0 0 30px 0;
	background-color:
}
.contact7 dt {
	font-weight: normal;
}
 
/* 必須マーク */
.contact7 .must {
	background: #FF1A00;
}
 
/* 任意マーク */
.contact7 .optional {
	background: #999;
}
 
.contact7 .must,
.contact7 .optional {
	color: #FFF;
	border-radius: 3px;
	font-size: 10px;
	margin-left: 10px;
	padding: 5px 10px;
	letter-spacing: 2px;
}
.btn_contact7 {
	text-align: center;
	transition: all .3s ease 0s;
}
.btn_contact7 input {
	width: 200px;
	background-color: #000000;
	color: #FFF;
	font-size: 14px;
	padding: 16px 0;
	/*font-weight: bold;*/
	letter-spacing: 0.2em;
	border: 0px solid #005513;
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	-ms-transition: 0.3s;
	transition: 0.3s;	
}
.btn_contact7 input:hover {
	background-color: #000000 !important;
	color: #FFFFFF; 
}

.btn_contact7:hover:not(:disabled) {
	opacity: .6;
}

.btn_contact7:focus {
 	opacity: .6;
	outline: none;
}

@media screen and (min-width: 976px) {
	.contact7 dt {
		float: left;
		clear: left;
		width: 35%;
		padding: 5px 10px 5px 0;
	}
	.contact7 dd {
		margin-left: 35%;
	}

	.btn_contact7 input {
		width: 200px;
		background-color: #000000;
		color: #FFF;
		font-size: 14px;
		padding: 16px 0;
		/* font-weight: bold;*/
		letter-spacing: 0.2em;
		border: 0px solid #005513;
		-webkit-transition: 0.3s;
		-moz-transition: 0.3s;
		-o-transition: 0.3s;
		-ms-transition: 0.3s;
		transition: 0.3s;	
	}
	
	.div_center {
		width: 100%;
		margin-bottom: 18px;
		padding:2px;
		text-align: center;
	}
}

/*--------------------------------------------------------------
business
--------------------------------------------------------------*/

.business-image img {
  width: 100%;
}

.business-image figcaption {
  color: black;
  font-size: 16px;
}

.business-matrix {
  overflow-x: auto;
  overflow-y: hidden;
  width: 100%;
  max-width: 976px;
  height: auto;
}

.business-matrix-table {
  margin: 0 !important;
  width: 976px;
  height: 1067px;
  border-collapse: collapse;
  border: none !important;
  table-layout: fixed;
  background: url("https://www.miraxia.com/wp-content/uploads/2020/08/service-1.png") no-repeat;
}

/*add-start 20201204*/

.business-matrix-table-v201201 {
  margin: 0 !important;
  width: 976px;
  height: 841px;
  border-collapse: collapse;
  border: none !important;
  table-layout: fixed;
  background: url("https://www.miraxia.com/wpimages/uploads/2020/12/service_2.png") no-repeat;
}

/*add-end*/


/*add-start 20210330*/

.business-matrix-table-v210401 {
  margin: 0 !important;
  width: 976px;
  height: 870px;
  border-collapse: collapse;
  border: none !important;
  table-layout: fixed;
  background: url("https://www.miraxia.com/wpimages/uploads/2021/03/service_5.png") no-repeat;
}

/*add-end*/

/*add-start 20210428*/

.business-matrix-table-v210401_en {
  margin: 0 !important;
  width: 976px;
  height: 870px;
  border-collapse: collapse;
  border: none !important;
  table-layout: fixed;
  background: url("https://www.miraxia.com/wpimages/uploads/2021/04/service_en.png") no-repeat;
}

/*add-end*/


.business-matrix td {
  display: table-cell;
  margin: 0;
  padding: 0;
  font-size: 0;
  text-align: center;
  vertical-align: middle;
  border: 1px solid transparent;
}

.business-matrix-col1-row1 {
  width: 228px;
  height: 68px;
}

.business-matrix-col2 {
  width: 21px;
}

.business-matrix-col3,
.business-matrix-col4 {
  width: 114px;
}

.business-matrix-col5 {
  width: 21px;
}

.business-matrix-col6,
.business-matrix-col7 {
  width: 114px;
}

.business-matrix-col8 {
  width: 21px;
}

.business-matrix-col9,
.business-matrix-col10 {
  width: 114px;
}

.business-matrix-row2 {
  height: 22px;
}

.business-matrix-row3 {
  height: 99px;
}

.business-matrix-row4 {
  height: 19px;
}

.business-matrix-row5 {
  height: 264px;
}

/*add-start 20210330*/
.business-matrix-row5-v210401 {
  height: 218px;
}
/*add-end*/

.business-matrix-row6 {
  height: 20px;
}

.business-matrix-row7 {
  height: 164px;
}

/*add-start 20210330*/
.business-matrix-row7-v210401 {
  height: 109px;
}
/*add-end*/

.business-matrix-row8 {
  height: 21px;
}

.business-matrix-row9 {
  height: 164px;
}

.business-matrix-row10 {
  height: 61px;
}

/*add-start 20210330*/
.business-matrix-row10-v210401 {
  height: 21px;
}
/*add-end*/

.business-matrix-row11 {
  height: 164px;
}

/*add-start 20210330*/
.business-matrix-row11-v210401 {
  height: 109px;
}
/*add-end*/

.business-matrix-align-left {
  padding-right: 8px !important;
  text-align: left !important;
}

.business-matrix-align-right {
  padding-left: 8px !important;
  text-align: right !important;
}

.business-matrix-align-left-bottom {
  padding-right: 8px !important;
  padding-bottom: 8px !important;
  text-align: left !important;
  vertical-align: bottom !important;
}

.business-matrix-align-right-bottom {
  padding-bottom: 8px !important;
  padding-left: 8px !important;
  text-align: right !important;
  vertical-align: bottom !important;
}

.business-matrix-align-left-top {
  padding-top: 8px !important;
  padding-right: 8px !important;
  text-align: left !important;
  vertical-align: top !important;
}

.business-matrix-align-right-top {
  padding-top: 8px !important;
  padding-left: 8px !important;
  text-align: right !important;
  vertical-align: top !important;
}

.business-matrix button {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 36px;
  color: white;
  font-size: 1.6rem;
  background-color: #EB5D50;
  transition: all .3s ease 0s;
}

.business-matrix button:hover:not(:disabled) {
  opacity: .6;
}

.business-matrix button:focus {
  opacity: .6;
  outline: none;
}

.business-matrix button:disabled {
  cursor: default;
}

.business-solution .blocks-gallery-grid {
  justify-content: center;
  width: 100%;
  max-width: 976px;
}

.business-solution .blocks-gallery-item {
  margin-right: 16px !important;
  max-width: 300px;
  min-width: 300px;
  height: 172px;
}

.business-solution .blocks-gallery-item figure {
  transition: all .3s ease 0s;
}

.business-solution .blocks-gallery-item figcaption {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 0;
  background: none !important;
}

.business-solution .blocks-gallery-item a {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow: hidden;
  text-indent: -9999px;
  white-space: nowrap;
}

@media only screen and (max-width: 332px) {
  .business-solution .blocks-gallery-item {
    margin-left: 16px !important;
    max-width: 100%;
    min-width: 100%;
    height: auto !important;
  }
}

/*--------------------------------------------------------------
emotion-app
--------------------------------------------------------------*/

.emotion-app-key-visual {
  position: relative;
}

.emotion-app-key-visual figcaption {
  overflow: hidden;
  position: absolute;
  bottom: 0;
  margin: 0 !important;
  padding: .8vw 0;
  width: 100%;
  color: white;
  font-size: 1.6vw;
  font-weight: bold;
  white-space: nowrap;
  background-color: rgba(0, 0, 0, .6);
}

.emotion-app-privacy-policy-text {
  margin-right: 0.5rem;
  font-size: medium;
  font-weight: bold;
  text-decoration: underline;
  transition: all .3s ease 0s;
}

.emotion-app-privacy-policy-text:link,
.emotion-app-privacy-policy-text:visited,
.emotion-app-privacy-policy-text:active {
  color: black;
}

.emotion-app-privacy-policy-text:hover:not(:disabled) {
  color: black;
  opacity: .6;
}

.emotion-app-privacy-policy-text:focus {
  color: black;
  opacity: .6;
  outline: none;
}

.emotion-app-privacy-policy-checkbox {
  display: flex;
  align-items: center;
  justify-content: center;
}

.emotion-app-privacy-policy-checkbox > div {
  position: relative;
}

#emotion-app-privacy-policy-input {
  position: absolute;
  left: 0;
  margin-top: 0.2rem;
  margin-left: 1rem;
  width: 2rem;
  height: 2rem;
  z-index: 1;
  cursor: pointer;
  transition: all .3s ease 0s;
}

#emotion-app-privacy-policy-input + label {
  padding-top: 1rem;
  padding-right: 1rem;
  padding-bottom: 1rem;
  padding-left: 4rem;
  color: white;
  font-size: medium;
  font-weight: bold;
  cursor: pointer;
  background-color: #434343;
  transition: all .3s ease 0s;
}

#emotion-app-privacy-policy-input:hover:not(:disabled),
#emotion-app-privacy-policy-input:hover:not(:disabled) + label {
  opacity: .6;
}

#emotion-app-privacy-policy-input:focus,
#emotion-app-privacy-policy-input:focus + label {
  opacity: .6;
  outline: none;
}

.emotion-app-panel {
  overflow-x: auto;
  overflow-y: hidden;
  width: 976px;
  max-width: 100%;
}

.emotion-app-panel > div {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  align-content: center;
  width: 976px;
  height: 488px;
  border-top: 1px solid #999999;
  border-right: 1px solid #999999;
  border-bottom: 1px solid #999999;
  border-left: 1px solid #999999;
}

.emotion-app-panel-contents {
  position: relative;
  margin: 0;
  padding: 0;
  width: 646px;
  height: 486px;
  background-color: #ececec;
  border: 3px solid #ececec;
}

.emotion-app-preview {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 640px;
  height: 480px;
}

.emotion-app-menu {
  position: absolute;
  top: 0;
  left: 0;
  width: 640px;
  height: 480px;
  background-color: #ececec;
}

.emotion-app-menu > div {
  position: relative;
}

.emotion-app-menu-contents {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  align-content: center;
  text-align: center;
  margin: 40px;
  width: 560px;
  height: 400px;
  border-radius: 10px;
  border: 4px dashed #087bed;
}

.emotion-app-menu-contents p {
  display: inline-block;
  margin: 0;
  width: 100%;
}

.emotion-app-menu-contents button[type='button'] {
  overflow: hidden;
  margin: 0 0 8px;
  width: 200px;
  height: 40px;
  color: white;
  background-color: #434343;
  cursor: pointer;
  border: none;
  transition: all .3s ease 0s;
}

.emotion-app-menu-contents button[type='button']:hover:not(:disabled) {
  opacity: .6;
}

.emotion-app-menu-contents button[type='button']:disabled {
  cursor: default;
  opacity: .1;
}

.emotion-app-menu-contents button[type='button']:focus {
  opacity: .6;
  outline: none;
}

.emotion-app-menu-droap {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  margin-top: 4px;
  margin-left: 44px;
  width: 552px;
  height: 392px;
  border-radius: 10px;
  border: 4px solid transparent;
  background-color: white;
  opacity: .6;
}

.emotion-app-menu-cover {
  position: absolute;
  top: 0;
  left: 0;
  margin-top: 0px;
  margin-left: 40px;
  width: 560px;
  height: 400px;
  border-radius: 10px;
  border: 4px solid white;
  background-color: white;
  opacity: .7;
}

.emotion-app-message {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 640px;
  height: 480px;
  background-color: rgba(0, 0, 0, .6);
}

.emotion-app-message-text {
  margin: 0;
  color: white;
  font-size: large;
  text-align: center;
}

.emotion-app-result {
  position: relative;
  width: 326px;
  height: 486px;
  background-color: #ececec;
  border: 3px solid #ececec;
}

.emotion-app-result-radios {
  display: flex;
  justify-content: space-around;
  align-items: center;
  width: 320px;
  height: 40px;
}

.emotion-app-result-radio {
  position: relative;
}
  
.emotion-app-result-radio input[type=radio] {
  position: absolute;
  left: 0;
  width: 1.8rem;
  height: 1.8rem;
  z-index: 1;
  font-size: 0;
  cursor: pointer;
  transition: all .3s ease 0s;
}

.emotion-app-result-radio input[type=radio] + label {
  padding-left: 2.3rem;
  cursor: pointer;
  transition: all .3s ease 0s;
}

.emotion-app-result-radio input[type=radio]:hover,
.emotion-app-result-radio input[type=radio]:hover + label {
  opacity: .6;
}

.emotion-app-result-radio input[type=radio]:focus {
  opacity: .6;
  outline: none;	
}

.emotion-app-result-radio input[type=radio]:focus + label {
  opacity: .6;
}

.emotion-app-result-contents {
  position: relative;
  width: 320px;
  height: 394px;
}

.emotion-app-result-list {
  overflow-x: hidden;
  overflow-y: auto;
  width: 320px;
  height: 394px;
  font-size: 0;
  border: 1px solid #999999;
  background-color: white;
}

.emotion-app-result-json {
  display: none;
  position: absolute;
  top: 0;
  width: 320px;
  height: 394px;
}

.emotion-app-result-text {
  overflow: auto;
  overflow-wrap: normal;
  padding: 10px;
  width: 320px;
  height: 394px;
  border: 1px solid #999999;
  resize: none;
  white-space: pre;
}

.emotion-app-result-text:focus {
  outline: none;
}

.emotion-app-result-buttons {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  align-content: center;
  width: 320px;
  height: 46px;
}

.emotion-app-result-buttons button[type='button'] {
  flex: 1;
  margin-top: 6px;
  margin-bottom: 3px;
  height: 40px;
  color: white;
  cursor: pointer;
  background-color: #434343;
  border: none;
  transition: all .3s ease 0s;
}

.emotion-app-result-buttons button[type='button']:hover:not(:disabled) {
  opacity: .6;
}

.emotion-app-result-buttons button[type='button']:focus {
  opacity: .6;
  outline: none;
}

.emotion-app-result-buttons button[type='button']:disabled {
  cursor: default;
  opacity: .1;
}

#emotion-app-result-button-analysis {
  margin-right: 3px;
}

#emotion-app-result-button-clear {
  margin-left: 3px;
}

.emotion-app-samples-text {
  margin-bottom: 10px;
  max-width: 920px;
  text-align: left;
}

.emotion-app-samples {
  max-width: 920px;
}

.emotion-app-samples .blocks-gallery-grid {
  flex-wrap: wrap;
  justify-content: left;
  align-items: start;
  align-content: start;
  width: 100%;
  max-width: 920px;
}

.emotion-app-samples .blocks-gallery-item {
  margin-right: 16px !important;
  max-width: 168px;
  min-width: 168px;
  max-height: 108px;
  min-height: 108px;
}

.emotion-app-samples .blocks-gallery-item figure {
  width: 168px;
  height: 108px;
  opacity: .6;
  cursor: pointer;
  border: 4px solid transparent;
  transition: all .3s ease 0s;
}

.emotion-app-samples .blocks-gallery-item img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.emotion-app-samples .blocks-gallery-item figcaption {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 0;
  background: none !important;
}

.emotion-app-samples .blocks-gallery-item a {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow: hidden;
  text-indent: -9999px;;
  white-space: nowrap;
}

.emotion-app-samples .blocks-gallery-item a:focus {
  outline: none;
}

.emotion-app-dialog-container {
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 100;
}

.emotion-app-dialog-background {
  position: absolute;
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, .8);
}

.emotion-app-dialog-buttons {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  padding: 8px 4px;
  width: 100%;
  height: 56px;
}

.emotion-app-dialog-button {
  overflow: hidden;
  margin: 0 4px;
  width: 150px;
  height: 40px;
  color: white;
  background: #434343;
  white-space: nowrap;
  cursor: pointer;
  border: none;
  transition: all .3s ease 0s;
}

.emotion-app-dialog-button:hover:not(:disabled) {
  opacity: .6;
}

.emotion-app-dialog-button:focus {
  outline: none;
}

.emotion-app-dialog-button:disabled {
  cursor: default;
  opacity: .1;
}

.emotion-app-webcam-dialog-contents {
  overflow: hidden;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  max-width: 648px;
  height: 538px;
  font-size: 0;
  background: #ececec;
  border: 4px solid #ececec;
  transform: translate(-50%, -50%);
}

.emotion-app-webcam-dialog-panel {
  overflow: auto;
  position: relative;
  width: 640px;
  max-width: 100%;
  height: 480px;
  max-height: 100%;
  background-color: black;
}

.emotion-app-webcam-dialog-message {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 640px;
  height: 480px;
  background-color: rgba(0, 0, 0, .6);
}

.emotion-app-webcam-dialog-message-text {
  margin: 0;
  color: white;
  font-size: large;
  text-align: center;
}

#emotion-app-webcam-dialog-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 640px;
  height: 480px;
}

.emotion-app-privacy-policy-dialog-contents,
.emotion-app-privacy-policy-dialog-contents-jp{
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  max-width: 976px;
  height: 30%;
  background: #ececec;
  transform: translate(-50%, -50%);
}

/** 20201211 add arai 個人情報保護表示欄をスマホの場合、長くする */
@media only screen and (max-width: 782px) {
	.emotion-app-privacy-policy-dialog-contents-jp {
		height: 50%;
	}
}

.emotion-app-privacy-policy-dialog-panel {
  margin-top: 4px;
  margin-right: 4px;
  margin-left: 4px;
  width: calc(100% - 8px);
  height: calc(100% - (56px + 4px));
  background-color: white;
  border: 1px solid #b4b4b4;
}

.emotion-app-privacy-policy-dialog-message {
  overflow: auto;
  width: 100%;
  height: 100%;
}

.emotion-app-privacy-policy-dialog-message > p {
  margin: 10px;
}

div.emotion-app-menu-contents p.initial-disp{
	display: inline-block;
}
div.emotion-app-menu-contents p.non-support-webcam{
	display: none;
}

/** 20201214 add arai
 *  縦横に表示
 *  */
@media only screen and (orientation: landscape) and (max-width: 1200px){
	.smart-br{
		display: none !important;
	}
	
	.emotion-app-key-visual figcaption{
		font-size: 14px;
	}
	
	.smart-order{
		display: flex;
		flex-direction: column;
	}
	
	.smart-order1{
		order: 1;
		height: 25px;
	}
	
	.smart-order2{
		order: 2;
		height: 100%;
	}
	
	.smart-order3{
		order: 3;
	}
	
	.smart-order4{
		order: 4;
	}
	
	.emotion-app-samples .blocks-gallery-item {
		margin: 0 0 0 0  !important;
		max-width: 20%;
		min-width: 20%;
		max-height: 100%;
		min-height: 100%;
	}
	
	.emotion-app-samples .blocks-gallery-item figure{
		width: 100%;
		height: 100%;
	}
	
	.emotion-app-panel{
		width: 100%;
	}
	
	.emotion-app-panel > div {
		width: 100%;
		height: 100%;
	}
	
	.emotion-app-menu{
		width: 100%;
		height: calc(100vh * 0.75);
	}
	
	.emotion-app-menu-content{
		margin: 0px;
		width: 100%;
	}
	
	.emotion-app-preview{
		width: 100%;
		height: 100%;
	}
	
	.emotion-app-menu-contents{
		width: calc(100% - 40px);
		height: calc(100% - 92px);
		margin: 43px 20px 49px 20px;
	}
	
	.emotion-app-menu > div{
		height: 100%;
	}
	
	.emotion-app-menu-cover{
		margin: 0;
		width: calc(100% - 40px);
		height: calc(100% - 92px);
		margin: 0 20px;
	}
	
	.emotion-app-preview-canvas{
		width: 100%;
		display: block;
		position: absolute;
		margin: auto;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
	}
	
	.emotion-app-message{
		width: 100%;
		height: 100%;
	}
	.emotion-app-panel-contents{
		width: 100%;
		height: calc(100vh * 0.75);
		border: none;
	}
	
	.emotion-app-result{
		width: 100%;
		height: calc(100vh * 0.75);
	}
	
	.emotion-app-result-radios{
		width: 100%;
	}
	
	.emotion-app-result-contents{
		width: 100%;
		height: calc(100% - 86px);
	}
	
	.emotion-app-result-buttons{
		width: 100%;
	}
	
	.emotion-app-result-list{
		width: 100%;
		height: 100%;
	}
	
	.emotion-app-result-json{
		width: 100%;
		height: 100%;
	}
	
	.emotion-app-result-text{
		width: 100%;
		height: 100%;
	}
		.emotion-app-webcam-dialog-contents {
		height: 80%;
		max-height: 538px;
	}
	
	.emotion-app-webcam-dialog-panel {
		height: calc(100% - 56px);
		max-height: 480px;
	}

	.emotion-app-webcam-dialog-message {
		width: 100%;
		height: calc(100% - 56px);
		max-height: 480px;
	}

	#emotion-app-webcam-dialog-video {
		width: 100%;
		height: 100%;
	}	
}

@media only screen and (orientation: portrait) and (max-width: 781px){
	
	.emotion-app-key-visual figcaption{
		font-size: 14px;
	}
	
	.smart-spacer{
		height: 50px !important;
	}
	
	.smart-br{
		display: none !important;
	}
	
	.emotion-app-panel{
		width: 100%;
		background-color: #ececec;
	}
	
	.emotion-app-panel > div {
		display: block;
		width: 100%;
		height: 100%;
	}
	
	.emotion-app-preview{
		width: 100%;
		height: 100%;
	}
	
	.emotion-app-menu{
		width: 100%;
		height: 100%;
	}
	
	.emotion-app-panel-contents{
		width: 100%;
		height: calc(100vw * 0.75);
	}
	
	.emotion-app-result{
		width: 100%;
	}
	
	div.emotion-app-menu-contents{
		width: calc(100% - 40px);
		height: calc(100vw * 0.75 - 43px);
		margin: 20px;
	}

	div.emotion-app-menu-cover{
		width: calc(100% - 40px);
		height: 100%;
		margin: 0px 20px;
		text-align: center;	
	}
	
	div.emotion-app-message{
		width: 100%;
		height: 100%;
		
	}
	
	div.emotion-app-result{
		display: flex;
		flex-direction: column;
		height: auto;
	}
	
	div.emotion-app-result-radios{
		order: 3;
		width: 100%;
	}
	
	.emotion-app-result-buttons button[type='button']{
		margin-bottom: 6px;
	}
	
	div.emotion-app-result-contents{
		order: 2;
		width: 100%;
		height: 40vh;
	}
	
	div.emotion-app-result-buttons{
		order: 1;
		width: 100%;
	}
	
	div.emotion-app-result-list{
		width: 100%;
		height: 40vh;
	}
	
	div.emotion-app-result-json{
		width: 100%;
		height: 40vh;
	}
	
	.blocks-gallery-item{
		width: 33.3%;
		margin-right: 3px !important;
	}
	
	.emotion-app-preview-canvas{
		width: 100%;
		height: auto;
		display: block;
		position: absolute;
		margin: auto;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
	}
	
	.emotion-app-result-text{
		width: 100%;
		height: 100%;
	}

	.emotion-app-samples {
		max-width: 100%
	}

	.emotion-app-samples .blocks-gallery-grid {
		justify-content: left;
		-ms-flex-wrap: wrap;
		width: 100%;
		max-width: 100%;
	}

	.emotion-app-samples .blocks-gallery-item {
		margin: 0 !important;
		max-width: 33.3%;
		min-width: 33.3%;
		max-height: 50%;
		min-height: 50%;
	}
	
	.emotion-app-samples .blocks-gallery-item figure{
		width: 100%;
		height: 100%;
	}
	
	.smart-order{
		display: flex;
		flex-direction: column;
	}
	
	.smart-order1{
		order: 1;
	}
	
	.smart-order2{
		order: 2;
		height: 100%;
	}
	
	.smart-order3{
		order: 3;
	}
	
	.smart-order4{
		order: 4;
	}
	
	.emotion-app-webcam-dialog-contents {
		height: 80%;
		max-height: 538px;
	}
	
	.emotion-app-webcam-dialog-panel {
		height: calc(100% - 56px);
		max-height: 480px;
	}

	.emotion-app-webcam-dialog-message {
		width: 100%;
		height: calc(100% - 56px);
		max-height: 480px;
	}

	#emotion-app-webcam-dialog-video {
		width: 100%;
		height: 100%;
	}	
}

/*--------------------------------------------------------------
トップバナーホバー時の透過
--------------------------------------------------------------*/

.alpha a:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}

/*--------------------------------------------------------------
画像Height固定実験
--------------------------------------------------------------*/


.topkey {
	width: 100vw;
	max-height: 647px;
	background-image: url('https://www.miraxia.com/wp-content/uploads/2020/08/top_no_text.png');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;

	border: 1px solid green;
}

.topkey img {
	max-width: 1600px;
	max-height: 647px;
}

/*--------------------------------------------------------------
プロジェクトストーリーCSS
--------------------------------------------------------------*/
.prox-top{
	position:relative;
	margin:0 calc(50% - 50vw);
	overflow:hidden;
	background-color: #f0f0f0;
}

.prox-top-bk{
	height: 500px;
	background-position: top center;
	background-repeat: no-repeat;
	background-size: cover;
}

.prox-top-bk-banner{
	height: 60px;
	background-position: top center;
	background-repeat: repeat;
}


.prox-top-title{
	display: table-cell; /* IE8から使用可能 */
	vertical-align: middle;
	width: 976px;
	text-align: center;
	color: #fff;
	position: absolute;
	top: 182px;
}

.prox-top-title-text{
	display: inline-block;
	margin-top: auto;
	font-size: 25px;
	font-family: 'Roboto Condensed', sans-serif;
	color: #fff;
	border-bottom: solid 1px #fff;
	position: relative;
	bottom: -3px;
	text-align: center;
}

.prox-sentence{
	font-size: 34px;
	font-weight: 700;
	font-family: "游明朝", "ヒラギノ明朝 ProN", serif, sans-serif;
}

.members{
	color: #fff;
	background: #2a2a2a;
	width: 788px;
	margin: 0 auto;
	font-size: 12px;
	text-align: center;
	padding-bottom: 21px;
	position: absolute;
	top: 450px;
	margin: 0 94px;
}

.members-title{
	height: 75px;
	text-align: center;
}

.members-title-text{
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 300;
	font-size: 24px;
	line-height: 75px;
}

.members ul{
	list-style: none;
	overflow: hidden;
	margin: 0;
	text-align: center;
	display: inline-block;
}

.members ul li{
	float: left;
	text-align: center;
	margin-left: 18px;
}

.members ul li:first-child{
	margin-left: 0;
}

.member-05 ul {
	margin: 0 10px;
}

.member-05 ul li{
	float: left;
	text-align: center;
	width: 19%;
	margin-left: 9px;
}

.member-03 ul,
.member-06 ul {
	margin: 0 60px;
	width: calc(100% - 120px);
}

.member-03 ul li,
.member-06 ul li{
	float: left;
	text-align: center;
	width: 33%;
	margin-left: 0;
}
.member-03 .members-img,
.member-04 .members-img,
.member-06 .members-img{
	width: 170px;
	height: 170px;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

.member-05 .members-img{
	width: 145px;
	height: 145px;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

.members p{
	margin: 2px 0;
}

.members .members-department{
	margin: 12px 0 2px 0;
}

.members p.members-name{
	font-size: 17px;
}

.member-03 .members-eng,
.member-04 .members-eng,
.member-05 .members-eng,
.member-06 .members-eng-bottom{
	margin: 2px 0 0;
}

.member-06 .members-eng-top{
	margin: 2px 0 20px;
}

.explanation{
	width: 700px;
	text-align: center;
	margin:0 138px;
	position: absolute;
}

p.explanation-title-text{
	font-size: 24px;
	color: #FF0000;
	margin: 0;
	padding: 45px 0 18px 0;
	font-family: "游明朝", "ヒラギノ明朝 ProN", serif, sans-serif;
	font-weight: bold;
}

p.explanation-sentence{
	font-size: 16px;
	text-align: left;
}
@media only screen and (min-width: 977px) and (max-width: 1200px){	
	.members{
		margin: 0 5vw;
	}
}

@media only screen and (max-width: 976px){	
	.prox-top{
		height: 100% !important;
	}
	
	.prox-top-bk{
		height: 200px;
	}
	
	.prox-top-bk-banner{
		height: 30px;
	}
	
	.smart-disp{
		display : -webkit-box;     /* old Android */
		display : -webkit-flex;    /* Safari etc. */
		display : -ms-flexbox;     /* IE10        */
		display : flex;
		flex-wrap: wrap;
	}
	
	.prox-top-title{
		width: 88vw;
		top: 62px;
	}
	
	.prox-top-title-text{
		font-size: 22px;
		position: static;
	}
	
	span.prox-sentence{
		font-size: 16px;
	}
	
	.members{
		width: 100vw;
		height: auto;
		font-size: 12px;
		position:relative;
		margin:0 calc(50% - 50vw);
		overflow:hidden;
		order: 3;
		position: static;
		top: 0;
	}

	.members-title{
		height: 75px;
		text-align: center;
	}

	.members-title-text{
		font-size: 24px;
		line-height: 75px;
	}

	.members ul{
		list-style: none;
		overflow: hidden;
		margin: 0;
		text-align: center;
		width: 100%;
	}

	.members ul li{
		margin-left: 0;
	}

	.members ul li:first-child{
		margin-left: 0;
	}

	.member-03 .members-img,
	.member-04 .members-img,
	.member-05 .members-img,
	.member-06 .members-img{
		width: 94vw;
		max-width: 400px;
		margin: 0 3vw;
		padding: 0 3vw;
		height: auto;
		max-height: 293px;
		object-fit: cover;
		font-family: 'object-fit: cover;';
	}
	
	.member-03 ul li,
	.member-04 ul li,
	.member-05 ul li,
	.member-06 ul li{
		width: 100%;
	}

	.members p{
		margin: 2px 0;
	}

	.members p.members-name{
		font-size: 17px;
	}

	.explanation{
		width: 94vw;
		text-align: center;
		margin:0 3vw;
		order: 2;
		position: static;
		top: 0;
	}

	p.explanation-title-text{
		font-size: 24px;
		color: #FF0000;
		margin: 0;
		padding: 45px 0 18px 0;
	}

	p.explanation-sentence{
		font-size: 16px;
		text-align: left;
	}
}

.prox-bk{
	position: relative;
	margin: 0 calc(50% - 50vw);
	overflow: hidden;
	background-position: top center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100vw;
	line-height: 1.5;
}

.prox-section{
	position: relative;
	margin: 0 calc(50% - 50vw);
	overflow: hidden;
}

.prox-section:before{
    content: "";
    display: block;
    width: calc((100% - 976px) / 2 - 20px);
    height: 1px;
    background-color: #111;
    position: absolute;
    margin-top: 50px;
}

.section-explanation{
	line-height: 1.7em;
	margin-top: 25px;
	margin-bottom: 25px;
}

.section-explanation-split{
	line-height: 1.7em;
	margin-top: 0;
	margin-bottom: 0;
}

.section-explanation-full{
	line-height: 1.7em;
	padding-top: 25px;
	margin-bottom: 25px;
	clear: both;
}

.section-explanation p,
.section-explanation-split p,
.section-explanation-full p{
	margin:0;
	font-size: 15px;
}

.section-explanation .text-bold,
.section-explanation-split .text-bold,
.section-explanation-full .text-bold{
	font-weight: 700;
}

@media only screen and (min-width: 1000px) and (max-width: 1200px){
	.prox-section:before{
		width: calc((100% - 976px) / 2 + 10px);
	}
}

@media only screen and (min-width: 977px) and (max-width: 999px){
	.prox-section:before{
		width: calc((100% - 976px) / 2 + 30px);
	}
}

@media only screen and (max-width: 976px){
	.prox-section:before{
		width: 5%;
	}
}

.smart-disp-br{
	display: none;
}

.prox-section-title{
	margin: 0;
}


/** セクションのタイトル文字 */
.prox-section-number{
	font-size: 75px;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: thin;
	font-style: italic;
}

.prox-section-title-text{
	color: #FF0000;
	font-size: 24px;
	font-family: "游明朝", "ヒラギノ明朝 ProN", serif, sans-serif;
	font-weight: bold;
}

/** セクション01のイメージ画像 */
.prox-section01-img{
	position:relative;
	margin:0 calc(50% - 50vw);
	overflow:hidden;
}

.prox-section01-img-info{
	width: 100%;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}
/** セクション02、03の半分 */
.prox-section-half-left{
	width: 50%;
	float: left;
}

.prox-section02-textarea{
	width: 488px;
	float: right;
}

.prox-section03-textarea{
	width: 488px;
	float: left;
}

.prox-section-half-right{
	width: 50%;
	float: right;
}

.prox-section02-img-info{
	width: 100%;
	object-fit: cover;
	font-family: 'object-fit: cover;';
	border: 0;
	padding-left: 20px;
}

.prox-section03-img-info{
	width: 100%;
	object-fit: cover;
	font-family: 'object-fit: cover;';
	border: 0;
	padding-right: 20px;
}

.prox-section04-img-info{
	width: 100%;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

.prox-past{
	text-align: center;
	height: 100%;
	width: 100%;
}

.prox-past a {
	outline: none;
}

.prox-past a:link,
.prox-past a:visited ,
.prox-past a:hover,
.prox-past a:active{
	color: #fff;
}

.prox-past p {
	margin: 0;
}

.prox-past-area{
	width: 470px;
	margin: 0 auto;
	overflow: hidden;
}

.prox-past-area:nth-child(n){
	float: left;
}

.prox-past-area:nth-child(2n){
	float: right;
}

.prox-past-area img{
	padding: 0;
	height: 154px;
}

.prox-past-text{
	height: 117px;
	background-color: #000;
	padding: 15px 0;
	font-size: 16px;
	font-family: "游明朝", "ヒラギノ明朝 ProN", serif, sans-serif;
}

.prox-past-title{
	font-size: 24px;
	font-family: 'Roboto Condensed', sans-serif;
}

@media only screen and (min-width: 977px) and (max-width: 1200px){
	
	.prox-past-area{
		max-width: 470px;
		width: 49%;
	}
}

@media only screen and (max-width: 976px){
	
	.smart-disp-br{
		display: block;
	}

	.smart-disp-space{
		margin-bottom: 50px;
	}
	
	.prox-bk{
		background-size: auto 100%;
	}
	.member-03 .members-eng,
	.member-04 .members-eng,
	.member-05 .members-eng,
	.member-06 .members-eng,
	.member-06 .members-eng-bottom{
		margin: 2px 0 25px;
	}

	.prox-section-half-left{
		clear: both;
		width: 100vw;
	}
	
	.prox-section02-textarea{
		width: 94vw;
		margin: 0 3vw;
		padding: 0 3vw;
	}
	
	.prox-section-half-right{
		clear: both;
		width: 100vw;
	}
	
	.prox-section02-img-info{
		padding-left: 0;
		margin-top: 50px;
	}

	.smart-order01{
		order: 1;
	}
	
	.smart-order02{
		order: 2;
	}
	
	.smart-order03{
		order: 3;
	}
	
	.prox-section03-img-info{
		padding-right: 0;
		margin-top: 50px;
	}
	
	.prox-section03-textarea{
		width: 94vw;
		margin: 0 3vw;
		padding: 0 3vw;
	}
	
	.prox-past-area:nth-child(n){
		clear: both;
	}
	
	.prox-past-area:nth-child(2n){
		clear: both;
		margin: 10px 0;
	}

	.prox-past{
		height: 100%;
	}
	
	.prox-past-area{
		position: relative;
		width: 100%;
		height: 100%;
	}
	
	.prox-past-text{
		max-width: 470px;
		margin: 0 auto;
	}
}
