@charset 'utf-8';

/*---------------------------------------------------------------------- */
/* Global Styles
------------------------------------------------------------------------ */
/* Web Font
---------------------------------------------------------- */
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700&subset=japanese&display=swap");
@import url("https://fonts.googleapis.com/css?family=Chivo:700,700i&display=swap");
/* Initialize
---------------------------------------------------------- */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre, a,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video, picture {
	margin: 0;
	padding: 0;
	vertical-align: baseline;
	border: 0;
	outline: 0;
	background: transparent;
	font-size: 100%;
}

html, body {
	height: 100%;
}

html {
	overflow-y: scroll;
	font-size: 62.5%;
}

body {
	line-height: 1.8;
	color: #000;
	word-break: normal;
	word-wrap: break-word;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	-webkit-touch-callout: none;
	-webkit-text-size-adjust: 100%;
}

main {
	display: block;
}

ul, ol {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

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

a {
	text-decoration: none;
}

a:hover,
a:focus {
	text-decoration: underline;
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: top;
}

ins {
	background-color: #ff9;
	color: #000;
	text-decoration: none;
}

mark {
	background-color: #ff9;
	color: #000;
	font-style: italic;
	font-weight: bold;
}

del {
	text-decoration: line-through;
}

em {
	font-style: normal;
}

abbr[title], dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}

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

hr {
	display: block;
	margin: 1em 0;
	padding: 0;
	height: 1px;
	border: 0;
	border-top: 1px solid #cccccc;
}

input, select, textarea {
	padding: 2px;
	font-family: inherit;
}

input, select, button {
	vertical-align: middle;
}

button {
	margin: 0;
	padding: 0;
	background: none;
	border: 0;
	outline: none;
	font-family: inherit;
	cursor: pointer;
}

button::-moz-focus-inner {
	padding: 0;
	border: 0;
}

label {
	cursor: pointer;
}

/* Override
---------------------------------------------------------- */
body {
	line-height: 1.8;
	color: #1d0404;
	font-family: 'Noto Sans JP';
	font-weight: 500;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6 {
	font-weight: 700;
}

a {
	color: #323232;
	text-decoration: underline;
}

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

input[type='text'],
input[type='tel'],
input[type='email'],
input[type='url'],
select,
textarea {
	font-size: 1.6rem;
}

input, select, textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

input::-ms-expand, select::-ms-expand, textarea::-ms-expand {
	display: none;
}

/*---------------------------------------------------------------------- */
/* Themes Styles
------------------------------------------------------------------------ */
/* tokyo as default */
.link-color0 a {
	color: blue;
}

.txt-color1 {
	color: #7ecedf;
}

.txt-color2 {
	color: #46b4cd;
}

.bg-color1 {
	background: #7ecedf;
}

.bg-color2 {
	background: #46b4cd;
}

.box-color1 .elementor-widget-container {
	background: #7ecedf;
}

.box-color2 .elementor-widget-container {
	background: #46b4cd;
}

.bar-color1 .elementor-widget-container,
.bar-color1 .elementor-divider-separator {
	border-color: #7ecedf !important;
}

.bar-color2 .elementor-widget-container,
.bar-color2 .elementor-divider-separator {
	border-color: #46b4cd !important;
}

.ico-color1 .elementor-icon i::before {
	color: #7ecedf;
}

.ico-color2 .elementor-icon i::before {
	color: #46b4cd;
}

.btn-color1 .elementor-button {
	background: #7ecedf;
	border-color: #7ecedf;
}

.btn-color1 .elementor-button:hover, .btn-color1 .elementor-button:focus {
	background: #fff;
	color: #7ecedf;
}

.btn-color2 .elementor-button {
	background: #46b4cd;
	border-color: #46b4cd;
}

.btn-color2 .elementor-button:hover, .btn-color2 .elementor-button:focus {
	background: #fff;
	color: #46b4cd;
}

.widget-step-number .elementor-widget-container {
	background: #46b4cd;
}

.tokyo:not(.new):not(.mid) .elementor-form .elementor-button {
	background: #46b4cd;
	border-color: #46b4cd;
}

.tokyo:not(.new):not(.mid) .elementor-form .elementor-button:not([disabled]):hover, .tokyo:not(.new):not(.mid) .elementor-form .elementor-button:not([disabled]):focus {
	background: #fff;
	color: #46b4cd;
}

/* Yamagata */
.yamagata .txt-color1 {
	color: #f0647d;
}

.yamagata .txt-color2 {
	color: #e6324b;
}

.yamagata .bg-color1 {
	background: #f0647d;
}

.yamagata .bg-color2 {
	background: #e6324b;
}

.yamagata .box-color1 .elementor-widget-container {
	background: #f0647d;
}

.yamagata .box-color2 .elementor-widget-container {
	background: #e6324b;
}

.yamagata .bar-color1 .elementor-widget-container,
.yamagata .bar-color1 .elementor-divider-separator {
	border-color: #f0647d !important;
}

.yamagata .bar-color2 .elementor-widget-container,
.yamagata .bar-color2 .elementor-divider-separator {
	border-color: #e6324b !important;
}

.yamagata .ico-color1 .elementor-icon i::before {
	color: #f0647d;
}

.yamagata .ico-color2 .elementor-icon i::before {
	color: #e6324b;
}

.yamagata .btn-color1 .elementor-button {
	background: #f0647d;
	border-color: #f0647d;
}

.yamagata .btn-color1 .elementor-button:hover, .yamagata .btn-color1 .elementor-button:focus {
	background: #fff;
	color: #f0647d;
}

.yamagata .btn-color2 .elementor-button {
	background: #e6324b;
	border-color: #e6324b;
}

.yamagata .btn-color2 .elementor-button:hover, .yamagata .btn-color2 .elementor-button:focus {
	background: #fff;
	color: #e6324b;
}

.yamagata .widget-step-number .elementor-widget-container {
	background: #e6324b;
}

.yamagata:not(.new):not(.mid) .elementor-form .elementor-button {
	background: #e6324b;
	border-color: #e6324b;
}

.yamagata:not(.new):not(.mid) .elementor-form .elementor-button:not([disabled]):hover, .yamagata:not(.new):not(.mid) .elementor-form .elementor-button:not([disabled]):focus {
	background: #fff;
	color: #e6324b;
}

/* Akita */
.akita .txt-color1 {
	color: #f57069;
}

.akita .txt-color2 {
	color: #f0281e;
}

.akita .bg-color1 {
	background: #f57069;
}

.akita .bg-color2 {
	background: #f0281e;
}

.akita .box-color1 .elementor-widget-container {
	background: #f57069;
}

.akita .box-color2 .elementor-widget-container {
	background: #f0281e;
}

.akita .bar-color1 .elementor-widget-container,
.akita .bar-color1 .elementor-divider-separator {
	border-color: #f57069 !important;
}

.akita .bar-color2 .elementor-widget-container,
.akita .bar-color2 .elementor-divider-separator {
	border-color: #f0281e !important;
}

.akita .ico-color1 .elementor-icon i::before {
	color: #f57069;
}

.akita .ico-color2 .elementor-icon i::before {
	color: #f0281e;
}

.akita .btn-color1 .elementor-button {
	background: #f57069;
	border-color: #f57069;
}

.akita .btn-color1 .elementor-button:hover, .akita .btn-color1 .elementor-button:focus {
	background: #fff;
	color: #f57069;
}

.akita .btn-color2 .elementor-button {
	background: #f0281e;
	border-color: #f0281e;
}

.akita .btn-color2 .elementor-button:hover, .akita .btn-color2 .elementor-button:focus {
	background: #fff;
	color: #f0281e;
}

.akita .widget-step-number .elementor-widget-container {
	background: #f0281e;
}

.akita:not(.new):not(.mid) .elementor-form .elementor-button {
	background: #f0281e;
	border-color: #f0281e;
}

.akita:not(.new):not(.mid) .elementor-form .elementor-button:not([disabled]):hover, .akita:not(.new):not(.mid) .elementor-form .elementor-button:not([disabled]):focus {
	background: #fff;
	color: #f0281e;
}

/* Nikaho */
.nikaho .txt-color1 {
	color: #48cf48;
}

.nikaho .txt-color2 {
	color: #27be27;
}

.nikaho .bg-color1 {
	background: #48cf48;
}

.nikaho .bg-color2 {
	background: #27be27;
}

.nikaho .box-color1 .elementor-widget-container {
	background: #48cf48;
}

.nikaho .box-color2 .elementor-widget-container {
	background: #27be27;
}

.nikaho .bar-color1 .elementor-widget-container,
.nikaho .bar-color1 .elementor-divider-separator {
	border-color: #48cf48 !important;
}

.nikaho .bar-color2 .elementor-widget-container,
.nikaho .bar-color2 .elementor-divider-separator {
	border-color: #27be27 !important;
}

.nikaho .ico-color1 .elementor-icon i::before {
	color: #48cf48;
}

.nikaho .ico-color2 .elementor-icon i::before {
	color: #27be27;
}

.nikaho .btn-color1 .elementor-button {
	background: #48cf48;
	border-color: #48cf48;
}

.nikaho .btn-color1 .elementor-button:hover, .nikaho .btn-color1 .elementor-button:focus {
	background: #fff;
	color: #48cf48;
}

.nikaho .btn-color2 .elementor-button {
	background: #27be27;
	border-color: #27be27;
}

.nikaho .btn-color2 .elementor-button:hover, .nikaho .btn-color2 .elementor-button:focus {
	background: #fff;
	color: #27be27;
}

.nikaho .widget-step-number .elementor-widget-container {
	background: #27be27;
}

.nikaho:not(.new):not(.mid) .elementor-form .elementor-button {
	background: #27be27;
	border-color: #27be27;
}

.nikaho:not(.new):not(.mid) .elementor-form .elementor-button:not([disabled]):hover, .nikaho:not(.new):not(.mid) .elementor-form .elementor-button:not([disabled]):focus {
	background: #fff;
	color: #27be27;
}

/* Yokote */
.yokote .txt-color1 {
	color: #4fa24f;
}

.yokote .txt-color2 {
	color: #228b22;
}

.yokote .bg-color1 {
	background: #4fa24f;
}

.yokote .bg-color2 {
	background: #228b22;
}

.yokote .box-color1 .elementor-widget-container {
	background: #4fa24f;
}

.yokote .box-color2 .elementor-widget-container {
	background: #228b22;
}

.yokote .bar-color1 .elementor-widget-container,
.yokote .bar-color1 .elementor-divider-separator {
	border-color: #4fa24f !important;
}

.yokote .bar-color2 .elementor-widget-container,
.yokote .bar-color2 .elementor-divider-separator {
	border-color: #228b22 !important;
}

.yokote .ico-color1 .elementor-icon i::before {
	color: #4fa24f;
}

.yokote .ico-color2 .elementor-icon i::before {
	color: #228b22;
}

.yokote .btn-color1 .elementor-button {
	background: #4fa24f;
	border-color: #4fa24f;
}

.yokote .btn-color1 .elementor-button:hover, .yokote .btn-color1 .elementor-button:focus {
	background: #fff;
	color: #4fa24f;
}

.yokote .btn-color2 .elementor-button {
	background: #228b22;
	border-color: #228b22;
}

.yokote .btn-color2 .elementor-button:hover, .yokote .btn-color2 .elementor-button:focus {
	background: #fff;
	color: #228b22;
}

.yokote .widget-step-number .elementor-widget-container {
	background: #228b22;
}

.yokote:not(.new):not(.mid) .elementor-form .elementor-button {
	background: #228b22;
	border-color: #228b22;
}

.yokote:not(.new):not(.mid) .elementor-form .elementor-button:not([disabled]):hover, .yokote:not(.new):not(.mid) .elementor-form .elementor-button:not([disabled]):focus {
	background: #fff;
	color: #228b22;
}

/* Toyama */
.toyama .txt-color1 {
	color: #0064af;
}

.toyama .txt-color2 {
	color: #004ba0;
}

.toyama .bg-color1 {
	background: #0064af;
}

.toyama .bg-color2 {
	background: #004ba0;
}

.toyama .box-color1 .elementor-widget-container {
	background: #0064af;
}

.toyama .box-color2 .elementor-widget-container {
	background: #004ba0;
}

.toyama .bar-color1 .elementor-widget-container,
.toyama .bar-color1 .elementor-divider-separator {
	border-color: #0064af !important;
}

.toyama .bar-color2 .elementor-widget-container,
.toyama .bar-color2 .elementor-divider-separator {
	border-color: #004ba0 !important;
}

.toyama .ico-color1 .elementor-icon i::before {
	color: #0064af;
}

.toyama .ico-color2 .elementor-icon i::before {
	color: #004ba0;
}

.toyama .btn-color1 .elementor-button {
	background: #0064af;
	border-color: #0064af;
}

.toyama .btn-color1 .elementor-button:hover, .toyama .btn-color1 .elementor-button:focus {
	background: #fff;
	color: #0064af;
}

.toyama .btn-color2 .elementor-button {
	background: #004ba0;
	border-color: #004ba0;
}

.toyama .btn-color2 .elementor-button:hover, .toyama .btn-color2 .elementor-button:focus {
	background: #fff;
	color: #004ba0;
}

.toyama .widget-step-number .elementor-widget-container {
	background: #004ba0;
}

.toyama:not(.new):not(.mid) .elementor-form .elementor-button {
	background: #004ba0;
	border-color: #004ba0;
}

.toyama:not(.new):not(.mid) .elementor-form .elementor-button:not([disabled]):hover, .toyama:not(.new):not(.mid) .elementor-form .elementor-button:not([disabled]):focus {
	background: #fff;
	color: #004ba0;
}

/* Uonuma */
.uonuma .txt-color1 {
	color: #32e1c3;
}

.uonuma .txt-color2 {
	color: #2dcda0;
}

.uonuma .bg-color1 {
	background: #32e1c3;
}

.uonuma .bg-color2 {
	background: #2dcda0;
}

.uonuma .box-color1 .elementor-widget-container {
	background: #32e1c3;
}

.uonuma .box-color2 .elementor-widget-container {
	background: #2dcda0;
}

.uonuma .bar-color1 .elementor-widget-container,
.uonuma .bar-color1 .elementor-divider-separator {
	border-color: #32e1c3 !important;
}

.uonuma .bar-color2 .elementor-widget-container,
.uonuma .bar-color2 .elementor-divider-separator {
	border-color: #2dcda0 !important;
}

.uonuma .ico-color1 .elementor-icon i::before {
	color: #32e1c3;
}

.uonuma .ico-color2 .elementor-icon i::before {
	color: #2dcda0;
}

.uonuma .btn-color1 .elementor-button {
	background: #32e1c3;
	border-color: #32e1c3;
}

.uonuma .btn-color1 .elementor-button:hover, .uonuma .btn-color1 .elementor-button:focus {
	background: #fff;
	color: #32e1c3;
}

.uonuma .btn-color2 .elementor-button {
	background: #2dcda0;
	border-color: #2dcda0;
}

.uonuma .btn-color2 .elementor-button:hover, .uonuma .btn-color2 .elementor-button:focus {
	background: #fff;
	color: #2dcda0;
}

.uonuma .widget-step-number .elementor-widget-container {
	background: #2dcda0;
}

.uonuma:not(.new):not(.mid) .elementor-form .elementor-button {
	background: #2dcda0;
	border-color: #2dcda0;
}

.uonuma:not(.new):not(.mid) .elementor-form .elementor-button:not([disabled]):hover, .uonuma:not(.new):not(.mid) .elementor-form .elementor-button:not([disabled]):focus {
	background: #fff;
	color: #2dcda0;
}

/* Ichinoseki */
.ichinoseki .txt-color1 {
	color: #00aabe;
}

.ichinoseki .txt-color2 {
	color: #008899;
}

.ichinoseki .bg-color1 {
	background: #00aabe;
}

.ichinoseki .bg-color2 {
	background: #008899;
}

.ichinoseki .box-color1 .elementor-widget-container {
	background: #00aabe;
}

.ichinoseki .box-color2 .elementor-widget-container {
	background: #008899;
}

.ichinoseki .bar-color1 .elementor-widget-container,
.ichinoseki .bar-color1 .elementor-divider-separator {
	border-color: #00aabe !important;
}

.ichinoseki .bar-color2 .elementor-widget-container,
.ichinoseki .bar-color2 .elementor-divider-separator {
	border-color: #008899 !important;
}

.ichinoseki .ico-color1 .elementor-icon i::before {
	color: #00aabe;
}

.ichinoseki .ico-color2 .elementor-icon i::before {
	color: #008899;
}

.ichinoseki .btn-color1 .elementor-button {
	background: #00aabe;
	border-color: #00aabe;
}

.ichinoseki .btn-color1 .elementor-button:hover, .ichinoseki .btn-color1 .elementor-button:focus {
	background: #fff;
	color: #00aabe;
}

.ichinoseki .btn-color2 .elementor-button {
	background: #008899;
	border-color: #008899;
}

.ichinoseki .btn-color2 .elementor-button:hover, .ichinoseki .btn-color2 .elementor-button:focus {
	background: #fff;
	color: #008899;
}

.ichinoseki .widget-step-number .elementor-widget-container {
	background: #008899;
}

.ichinoseki:not(.new):not(.mid) .elementor-form .elementor-button {
	background: #008899;
	border-color: #008899;
}

.ichinoseki:not(.new):not(.mid) .elementor-form .elementor-button:not([disabled]):hover, .ichinoseki:not(.new):not(.mid) .elementor-form .elementor-button:not([disabled]):focus {
	background: #fff;
	color: #008899;
}

/* Katagami */
.katagami .txt-color1 {
	color: #ff6e00;
}

.katagami .txt-color2 {
	color: #eb4b00;
}

.katagami .bg-color1 {
	background: #ff6e00;
}

.katagami .bg-color2 {
	background: #eb4b00;
}

.katagami .box-color1 .elementor-widget-container {
	background: #ff6e00;
}

.katagami .box-color2 .elementor-widget-container {
	background: #eb4b00;
}

.katagami .bar-color1 .elementor-widget-container,
.katagami .bar-color1 .elementor-divider-separator {
	border-color: #ff6e00 !important;
}

.katagami .bar-color2 .elementor-widget-container,
.katagami .bar-color2 .elementor-divider-separator {
	border-color: #eb4b00 !important;
}

.katagami .ico-color1 .elementor-icon i::before {
	color: #ff6e00;
}

.katagami .ico-color2 .elementor-icon i::before {
	color: #eb4b00;
}

.katagami .btn-color1 .elementor-button {
	background: #ff6e00;
	border-color: #ff6e00;
}

.katagami .btn-color1 .elementor-button:hover, .katagami .btn-color1 .elementor-button:focus {
	background: #fff;
	color: #ff6e00;
}

.katagami .btn-color2 .elementor-button {
	background: #eb4b00;
	border-color: #eb4b00;
}

.katagami .btn-color2 .elementor-button:hover, .katagami .btn-color2 .elementor-button:focus {
	background: #fff;
	color: #eb4b00;
}

.katagami .widget-step-number .elementor-widget-container {
	background: #eb4b00;
}

.katagami:not(.new):not(.mid) .elementor-form .elementor-button {
	background: #eb4b00;
	border-color: #eb4b00;
}

.katagami:not(.new):not(.mid) .elementor-form .elementor-button:not([disabled]):hover, .katagami:not(.new):not(.mid) .elementor-form .elementor-button:not([disabled]):focus {
	background: #fff;
	color: #eb4b00;
}

/* Misawa */
.misawa .txt-color1 {
	color: #da70d5;
}

.misawa .txt-color2 {
	color: #b929bf;
}

.misawa .bg-color1 {
	background: #da70d5;
}

.misawa .bg-color2 {
	background: #b929bf;
}

.misawa .box-color1 .elementor-widget-container {
	background: #da70d5;
}

.misawa .box-color2 .elementor-widget-container {
	background: #b929bf;
}

.misawa .bar-color1 .elementor-widget-container,
.misawa .bar-color1 .elementor-divider-separator {
	border-color: #da70d5 !important;
}

.misawa .bar-color2 .elementor-widget-container,
.misawa .bar-color2 .elementor-divider-separator {
	border-color: #b929bf !important;
}

.misawa .ico-color1 .elementor-icon i::before {
	color: #da70d5;
}

.misawa .ico-color2 .elementor-icon i::before {
	color: #b929bf;
}

.misawa .btn-color1 .elementor-button {
	background: #da70d5;
	border-color: #da70d5;
}

.misawa .btn-color1 .elementor-button:hover, .misawa .btn-color1 .elementor-button:focus {
	background: #fff;
	color: #da70d5;
}

.misawa .btn-color2 .elementor-button {
	background: #b929bf;
	border-color: #b929bf;
}

.misawa .btn-color2 .elementor-button:hover, .misawa .btn-color2 .elementor-button:focus {
	background: #fff;
	color: #b929bf;
}

.misawa .widget-step-number .elementor-widget-container {
	background: #b929bf;
}

.misawa:not(.new):not(.mid) .elementor-form .elementor-button {
	background: #b929bf;
	border-color: #b929bf;
}

.misawa:not(.new):not(.mid) .elementor-form .elementor-button:not([disabled]):hover, .misawa:not(.new):not(.mid) .elementor-form .elementor-button:not([disabled]):focus {
	background: #fff;
	color: #b929bf;
}

/* New graduate */
.new .widget-accordion-header::after {
	border-left-color: #ff82b4;
}

.new .elementor-form .elementor-button {
	background: #ff82b4;
	border-color: #ff82b4;
}

.new .elementor-form .elementor-button:not([disabled]):hover, .new .elementor-form .elementor-button:not([disabled]):focus {
	background: #fff;
	color: #ff82b4;
}

/* Mid-career */
.mid .widget-accordion-header::after {
	border-left-color: #ffaa00;
}

.mid .elementor-form .elementor-button {
	background: #ffaa00;
	border-color: #ffaa00;
}

.mid .elementor-form .elementor-button:not([disabled]):hover, .mid .elementor-form .elementor-button:not([disabled]):focus {
	background: #fff;
	color: #ffaa00;
}

/*---------------------------------------------------------------------- */
/* Utilities Styles
------------------------------------------------------------------------ */
/* Button --------------------------------- */
.btn-fade {
	transition: opacity .2s linear;
}

.btn-fade:hover, .btn-fade:focus {
	opacity: .7;
}

.btn-zoom a {
	display: block;
	overflow: hidden;
}

.btn-zoom a img {
	transition: all .3s ease-out;
}

.btn-zoom a:hover img, .btn-zoom a:focus img {
	transform: scale(1.1);
}

.btn .elementor-button {
	display: block;
	padding: 30px 0 !important;
	width: 100%;
	border: 1px solid transparent;
	border-radius: 8px !important;
	box-sizing: border-box;
	color: #fff;
	transition: all .3s ease;
}

.btn-new .elementor-button {
	background: #ff82b4;
	border-color: #ff82b4;
}

.btn-new .elementor-button:not([disabled]):hover, .btn-new .elementor-button:not([disabled]):focus {
	background: #fff;
	color: #ff82b4;
}

.btn-mid .elementor-button {
	background: #ffaa00;
	border-color: #ffaa00;
}

.btn-mid .elementor-button:not([disabled]):hover, .btn-mid .elementor-button:not([disabled]):focus {
	background: #fff;
	color: #ffaa00;
}

/* widget */
.widget-facebook,
.fb_iframe_widget {
	display: block !important;
	margin: 0 auto !important;
	width: 500px !important;
	height: 395px !important;
}

.widget-accordion-header .widget-box-title .elementor-widget-container,
.widget-accordion-content .widget-box-title .elementor-widget-container {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 39px;
	height: 39px;
	box-sizing: border-box;
	text-align: center;
}

.widget-accordion-header {
	position: relative;
	cursor: pointer;
}

.widget-accordion-header::after {
	position: absolute;
	top: 15px;
	right: 4px;
	width: 0;
	height: 0;
	border: 8px solid transparent;
	border-width: 8px 11px;
	box-sizing: border-box;
	content: '';
	transform-origin: 0 70%;
	transition: all .3s ease;
}

.widget-accordion-header.active::after {
	transform: translateY(-50%) rotate(90deg);
}

.widget-gallery .gallery {
	display: flex;
	flex-flow: row wrap;
}

.widget-gallery .gallery .gallery-item {
	float: none !important;
	margin-top: 0 !important;
	max-width: inherit !important;
	width: 20% !important;
}

.widget-gallery .gallery .gallery-item a {
	display: block;
	overflow: hidden;
}

.widget-gallery .gallery .gallery-item a img {
	border: 0 !important;
	transition: all .3s ease-out;
}

.widget-gallery .gallery .gallery-item a:hover img, .widget-gallery .gallery .gallery-item a:focus img {
	transform: scale(1.1);
}

.widget-row-title .elementor-widget-wrap {
	flex-flow: row nowrap;
	align-items: stretch;
}

.widget-row-title .elementor-widget-wrap .elementor-element {
	display: flex;
	align-items: center;
	min-height: 100%;
}

.widget-row-title .elementor-widget-wrap .elementor-element:nth-child(1) {
	margin-right: auto;
	width: auto;
}

.widget-sns {
	margin-left: auto;
	margin-right: auto;
}

.widget-sns .elementor-widget-wrap > .elementor-element {
	width: auto;
}

/*---------------------------------------------------------------------- */
/* 768px SmartPhone Styles
------------------------------------------------------------------------ */
@media screen and (max-width: 768px) {
	.nobreak-sp br {
		display: none;
	}
	/* button */
	.btn .elementor-button {
		padding: 20px 0 !important;
	}
	/* widget */
	.widget-facebook,
	.fb_iframe_widget {
		width: 288px !important;
		height: 227px !important;
	}
	.widget-accordion-header .widget-box-title .elementor-widget-container,
	.widget-accordion-content .widget-box-title .elementor-widget-container {
		width: 26px;
		height: 26px;
	}
	.widget-accordion-header::after {
		top: 10px;
		border-width: 5px 8px;
	}
	.widget-gallery .gallery .gallery-item {
		width: 50% !important;
	}
}

/* Layout
---------------------------------------------------------- */
/* Logged in Wordpress */
#wpadminbar {
	position: fixed;
	top: 0;
	left: 0;
}

.logged-in:not(.elementor-editor-active) #container {
	scroll-padding-top: 92px;
}

.logged-in:not(.elementor-editor-active) #header {
	top: 32px !important;
}

.logged-in:not(.elementor-editor-active) #btn-menu {
	top: 32px !important;
}

.logged-in:not(.elementor-editor-active) #gnav {
	top: 92px !important;
	height: calc(100% - 92px) !important;
}

/* loaded page */
.loaded #gnav {
	transition: opacity .3s ease;
}

/* #container */
#container.mid:not([class*="application"]):not([class*="visit"]):not(.referral) {
	background: #ececec;
}

#container.mid:not([class*="application"]):not([class*="visit"]):not(.referral) #main {
	padding-bottom: 100px;
}

/* #header */
#header {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
	width: 100%;
	height: 60px;
	background: #fff;
}

#header .logo a {
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
}

#header .logo a .img {
	margin-left: -40px;
}

#header .logo a .img img {
	width: auto;
	height: 60px;
}

#header .logo a .txt {
	margin-bottom: 2px;
	color: #000;
	font-weight: 700;
	font-size: 1.6rem;
	letter-spacing: .05em;
}

/* #btn-menu */
#btn-menu,
#btn-menu > .icons {
	position: absolute;
	top: 0;
	left: 0;
	width: 60px;
	height: 60px;
}

#btn-menu {
	display: block;
	position: fixed;
	top: 0;
	left: auto;
	right: 0;
	z-index: 100;
	background: #000;
	overflow: hidden;
	cursor: pointer;
}

#btn-menu > .icons {
	display: block;
	transform: rotate(0);
	transition: all .3s ease-out;
}

#btn-menu > .icons .icon {
	display: block;
	position: absolute;
	left: 17px;
	width: 26px;
	height: 2px;
	background: #fff;
	transform: rotate(0);
	transition: all .3s ease-out;
}

#btn-menu > .icons .icon-top {
	top: 17px;
}

#btn-menu > .icons .icon-mid {
	top: 29px;
}

#btn-menu > .icons .icon-bot {
	top: 41px;
}

/* #gnav */
#gnav {
	position: fixed;
	top: 60px;
	left: 0;
	padding: 115px 15%;
	width: 100%;
	height: calc(100% - 62px);
	line-height: 1.4;
	overflow-y: auto;
	box-sizing: border-box;
	background: rgba(70, 185, 210, 0.95);
	opacity: 0;
	pointer-events: none;
}

#gnav .unit01,
#gnav .unit02 {
	display: flex;
	flex-flow: row wrap;
	position: relative;
	width: 100%;
	border-top: 1px solid #fff;
}

#gnav .unit01 > li,
#gnav .unit02 > li {
	width: 50%;
	box-sizing: border-box;
}

#gnav .unit01 > li > a,
#gnav .unit02 > li > a {
	display: flex;
	align-items: center;
	position: relative;
	padding-left: 20px;
	height: 50px;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	box-sizing: border-box;
	color: #fff;
	font-weight: 700;
	font-size: 1.8rem;
	text-decoration: none;
	letter-spacing: .1em;
	transition: all .3s ease;
}

#gnav .unit01 > li > a:hover,
#gnav .unit02 > li > a:hover {
	background: rgba(255, 255, 255, 0.2);
}

#gnav .unit01 > li:nth-of-type(odd) > a,
#gnav .unit02 > li:nth-of-type(odd) > a {
	border-left: 1px solid #fff;
}

#gnav .unit01 > li > a.active {
	background: #fff;
	color: #46b9d2;
}

#gnav .unit01 > li > a.active + .sub {
	max-height: 120px;
	border-bottom: 1px solid #fff;
}

#gnav .unit01 > li > a::after {
	position: absolute;
	top: 50%;
	right: 4px;
	width: 0;
	height: 0;
	border: 10px solid transparent;
	border-width: 7px 10px;
	border-left-color: #fff;
	box-sizing: border-box;
	content: '';
	transform: translateY(-50%);
	transform-origin: 25% 50%;
	transition: all .3s ease;
}

#gnav .unit01 > li > a.active::after {
	border-left-color: #46b9d2;
	transform: translateY(-50%) rotate(90deg);
}

#gnav .unit01 > li:nth-child(even) .sub {
	left: -100%;
}

#gnav .unit01 > li:nth-last-child(1) .sub li:nth-child(2) {
	width: 100%;
	border-right: 1px solid #fff;
}

#gnav .unit02 {
	margin-top: 75px;
}

#gnav .unit02 > li > a {
	height: 45px;
	font-size: 1.4rem;
}

#gnav .unit02 > li > a[target='_blank']::after {
	position: absolute;
	top: 50%;
	right: 15px;
	width: 15px;
	height: 15px;
	background: url(../images/icon-window.svg) no-repeat left top;
	background-size: 100%;
	content: '';
	transform: translateY(-50%);
}

#gnav .sub {
	display: flex;
	position: relative;
	left: 0;
	z-index: 1;
	width: 200%;
	max-height: 0;
	background: #7ecedf;
	box-sizing: border-box;
	color: #fff;
	overflow: hidden;
	transition: all .5s ease;
}

#gnav .sub > li {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 90px;
	border-top: 1px solid #fff;
	border-left: 1px solid #fff;
	box-sizing: border-box;
}

#gnav .sub > li a {
	color: #fff;
	font-weight: 700;
	text-decoration: none;
}

#gnav .sub > li a:hover, #gnav .sub > li a:focus {
	text-decoration: underline;
}

#gnav .sub > li:nth-child(1) {
	width: calc(153 / 840 * 100%);
	font-size: 1.6rem;
	letter-spacing: .1em;
}

#gnav .sub > li:nth-child(2) {
	flex-flow: column;
	width: calc(687 / 840 * 100%);
	border-right: 1px solid #fff;
}

#gnav .sub > li:nth-child(2) > dl {
	display: flex;
	align-items: center;
	width: 100%;
	height: 45px;
}

#gnav .sub > li:nth-child(2) > dl > dt,
#gnav .sub > li:nth-child(2) > dl > dd {
	display: flex;
	align-items: center;
	position: relative;
	box-sizing: border-box;
	letter-spacing: .1em;
}

#gnav .sub > li:nth-child(2) > dl > dt {
	padding-left: 20px;
	width: 110px;
	font-size: 1.6rem;
}

#gnav .sub > li:nth-child(2) > dl > dt::after {
	position: absolute;
	top: 50%;
	right: 0;
	width: 0;
	height: 25px;
	border-right: 1px solid #fff;
	content: '';
	transform: translateY(-50%);
}

#gnav .sub > li:nth-child(2) > dl > dd {
	padding: 0 20px;
	font-size: 1.4rem;
}

#gnav .sub > li:nth-child(2) > dl > dd::after {
	position: absolute;
	top: 50%;
	right: 0;
	width: 0;
	height: 15px;
	border-left: 1px solid #fff;
	content: '';
	transform: translateY(-50%);
}

#gnav .sub > li:nth-child(2) > dl > dd:last-of-type::after {
	display: none;
}

#gnav .sub > li:nth-child(2) > dl:first-of-type {
	border-bottom: 1px solid #fff;
}

#gnav .sub > li:nth-child(3) {
	border-right: 1px solid #fff;
}

.nav-active #btn-menu > .icons .icon-top {
	left: 12px;
	width: 36px;
	transform: translateY(12px) rotate(45deg);
}

.nav-active #btn-menu > .icons .icon-mid {
	opacity: 0;
}

.nav-active #btn-menu > .icons .icon-bot {
	left: 12px;
	width: 36px;
	transform: translateY(-12px) rotate(-45deg);
}

.nav-active #gnav {
	opacity: 1;
	pointer-events: auto;
}

/* #main */
#main {
	padding-top: 60px;
	font-size: 1.4rem;
	letter-spacing: .05em;
}

#main a {
	text-decoration: underline;
}

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

/* #footer */
#footer {
	padding: 30px 0 25px;
	background: #fff;
}

#footer .btn-pagetop {
	position: fixed;
	right: 20px;
	bottom: 20px;
	width: 50px;
	height: 50px;
	opacity: 0;
	transition: opacity .3s ease;
}

#footer .btn-pagetop.active {
	opacity: 1;
}

#footer .logo {
	margin: 0 auto;
	width: 630px;
}

/* #copyright */
#copyright {
	margin-top: 30px;
	line-height: 1.1;
	font-family: 'Chivo';
	font-weight: 700;
	font-size: 1rem;
	text-align: center;
	letter-spacing: .05em;
}

/*---------------------------------------------------------------------- */
/* 768px SmartPhone Styles
------------------------------------------------------------------------ */
@media screen and (max-width: 768px) {
	/* Layout
	---------------------------------------------------------- */
	/* Logged in Wordpress */
	.logged-in:not(.elementor-editor-active) #header {
		top: 46px !important;
	}
	.logged-in:not(.elementor-editor-active) #btn-menu {
		top: 46px !important;
	}
	.logged-in:not(.elementor-editor-active) #gnav {
		top: 76px !important;
		height: auto !important;
	}
	/* #container */
	#container {
		min-width: 320px;
	}
	#container.mid #main {
		padding-bottom: 50px;
	}
	/* #header */
	#header {
		height: 30px;
	}
	#header .logo a {
		justify-content: flex-start;
	}
	#header .logo a .img {
		margin-left: 0;
	}
	#header .logo a .img img {
		height: 30px;
	}
	#header .logo a .txt {
		margin-bottom: 0;
		font-size: 1rem;
		transform: scale(0.9);
		transform-origin: 0 50%;
	}
	#btn-menu {
		transform: scale(0.5);
		transform-origin: 100% 0;
	}
	/* #gnav */
	#gnav {
		display: block;
		top: 30px;
		left: 0;
		right: 0;
		bottom: 0;
		padding: 25px 5%;
		width: auto;
		height: auto;
		overflow-y: auto;
	}
	#gnav .unit01 > li > a,
	#gnav .unit02 > li > a {
		padding-left: 10px;
		height: 43px;
		font-size: 1.4rem;
	}
	#gnav .unit01 > li > a.active + .sub {
		max-height: 208px;
	}
	#gnav .unit01 > li > a::after {
		right: 2px;
		border-width: 5px 8px;
	}
	#gnav .unit01 > li:nth-last-child(1) .sub li:nth-child(2) {
		border-right: 0;
	}
	#gnav .unit02 {
		flex-flow: column;
		margin-top: 30px;
	}
	#gnav .unit02 > li {
		width: 100%;
	}
	#gnav .unit02 > li > a {
		height: 35px;
		font-size: 1.2rem;
		border-left: 1px solid #fff;
	}
	#gnav .unit02 > li > a[target='_blank']::after {
		right: 12px;
		width: 12px;
		height: 12px;
	}
	#gnav .sub {
		flex-flow: column;
		width: 200%;
		border-left: 1px solid #fff;
		border-right: 1px solid #fff;
	}
	#gnav .sub > li {
		height: 36px;
		border-top: 0;
		border-left: 0;
	}
	#gnav .sub > li:nth-child(1) {
		width: 100%;
		font-size: 1.2rem;
		border-top: 1px solid #fff;
		border-bottom: 1px solid #fff;
	}
	#gnav .sub > li:nth-child(1) > a {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		height: 36px;
	}
	#gnav .sub > li:nth-child(2) {
		width: 100%;
		height: auto;
		border-bottom: 1px solid #fff;
		border-right: 0;
	}
	#gnav .sub > li:nth-child(2) > dl {
		flex-flow: row wrap;
		height: auto;
	}
	#gnav .sub > li:nth-child(2) > dl > dt,
	#gnav .sub > li:nth-child(2) > dl > dd {
		height: 34px;
	}
	#gnav .sub > li:nth-child(2) > dl > dt {
		margin: 0 10px;
		padding: 5px 0 0;
		width: calc(100% - 20px);
		border-bottom: 1px solid #fff;
		font-size: 1.2rem;
	}
	#gnav .sub > li:nth-child(2) > dl > dt::after {
		display: none;
	}
	#gnav .sub > li:nth-child(2) > dl > dd {
		padding: 0 10px;
		font-size: 1rem;
	}
	#gnav .sub > li:nth-child(3) {
		border-right: 0;
	}
	/* #main */
	#main {
		padding-top: 30px;
		font-size: 1.2rem;
	}
	/* #footer */
	#footer {
		padding: 20px 0;
	}
	#footer .btn-pagetop {
		right: 10px;
		bottom: 12px;
		width: 30px;
		height: 30px;
	}
	#footer .logo {
		margin-top: 20px;
		width: 320px;
	}
	/* #copyright */
	#copyright {
		transform: scale(0.9);
	}
}

/*---------------------------------------------------------------------- */
/* Elementor Styles
------------------------------------------------------------------------ */
.elementor-widget-image .elementor-image {
	vertical-align: top;
}

.elementor-widget-image .elementor-image > a,
.elementor-widget-image .elementor-image figure > a {
	display: block;
}

.elementor-lightbox .elementor-swiper-button [class*=' eicon-'], .elementor-lightbox .elementor-swiper-button [class^=eicon] {
	padding: 20px;
}

.elementor-lightbox .elementor-swiper-button-prev {
	left: 10px;
}

.elementor-lightbox .elementor-swiper-button-next {
	right: 10px;
}

.elementor-button {
	text-decoration: none !important;
}

.elementor-widget-heading .elementor-heading-title {
	line-height: inherit !important;
}

.elementor-form {
	font-size: 1.2rem;
}

.elementor-form .elementor-form-fields-wrapper {
	align-items: flex-start;
}

.elementor-form .elementor-field-textual:focus {
	box-shadow: none !important;
}

.elementor-form .elementor-field-textual.elementor-size-sm {
	padding: 4px !important;
	min-height: 33px !important;
	border-radius: 0 !important;
}

.elementor-form .elementor-field-type-html strong {
	font-size: 1.4rem;
}

.elementor-form .elementor-field-type-html span {
	font-size: 1rem;
}

.elementor-form input:invalid, .elementor-form select:invalid, .elementor-form textarea:invalid {
	border: 0;
	outline: 0;
	box-shadow: none;
}

.elementor-form input[type='radio'],
.elementor-form input[type='checkbox'] {
	position: absolute;
	opacity: 0;
}

.elementor-form input[type='radio'] + label,
.elementor-form input[type='checkbox'] + label {
	position: relative;
}

.elementor-form input[type='radio'] + label::before,
.elementor-form input[type='checkbox'] + label::before {
	display: inline-block;
	vertical-align: middle;
	margin: 0 5px 2px 0;
	width: 17px;
	height: 17px;
	background: #ececec;
	box-sizing: border-box;
	content: '';
}

.elementor-form input[type='radio']:checked + label::after,
.elementor-form input[type='checkbox']:checked + label::after {
	display: block;
	position: absolute;
	top: 5px;
	left: 3px;
	width: 12px;
	height: 10px;
	background: url(../images/icon-check.svg) no-repeat center center;
	background-size: 100%;
	content: '';
}

.elementor-form textarea.elementor-field-textual {
	height: 147px;
}

.elementor-form .elementor-field-group .elementor-select-wrapper select {
	font-size: 1.6rem;
}

.elementor-form .elementor-field-group .elementor-select-wrapper.elementor-error {
	flex-flow: row wrap;
}

.elementor-form .elementor-field-group .elementor-select-wrapper::before {
	top: 0;
	font-size: 20px;
	transform: none;
}

.elementor-form .elementor-button {
	display: block;
	margin-top: 40px;
	padding: 21px 0 !important;
	width: 258px;
	border-width: 1px;
	border-style: solid;
	border-radius: 8px !important;
	box-sizing: border-box;
	color: #fff;
	font-weight: 700;
	font-size: 2rem;
	letter-spacing: .1em;
	transition: all .3s ease;
}

.elementor-form .elementor-button > span {
	position: relative;
}

.elementor-form .elementor-button .elementor-form-spinner {
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
}

.elementor-form .elementor-button .elementor-button-icon {
	display: none;
}

.elementor-form .elementor-message::before {
	display: none;
}

.elementor-form .elementor-message:not(.elementor-help-inline) {
	font-size: 1.4rem;
	text-align: center;
}

.elementor-form .elementor-help-inline {
	text-align: left;
}

.flatpickr-rContainer {
	margin: 0 auto;
}

/*---------------------------------------------------------------------- */
/* 768px SmartPhone Styles
------------------------------------------------------------------------ */
@media screen and (max-width: 768px) {
	.elementor-lightbox .elementor-lightbox-item {
		padding: 0 20px;
	}
	.elementor-lightbox .elementor-swiper-button-prev {
		left: -25px;
	}
	.elementor-lightbox .elementor-swiper-button-next {
		right: -25px;
	}
	.dialog-type-lightbox .dialog-message {
		padding: 5%;
	}
	.elementor-form input[type='radio']:checked + label::after,
	.elementor-form input[type='checkbox']:checked + label::after {
		top: 5px;
		left: 3px;
	}
	.elementor-form textarea.elementor-field-textual {
		height: 147px;
	}
	.elementor-form .elementor-field-type-html strong {
		font-size: 1.2rem;
	}
	.elementor-form .elementor-button {
		margin-top: 30px;
		padding: 20px 0 !important;
		width: 100%;
		font-size: 1.4rem;
	}
}
