/*
Theme Name: ABN_20260120
Author: Yoko Dohi
*/

@charset "UTF-8";
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, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font-style: normal;
	/*font: inherit;*/
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
input[type="text"],
input[type="password"],
textarea,
select,*:focus {
	outline: none;
}


/*====================================================
////id common
====================================================*/
html{
	font-size: 10px;
	font-size: 62.5%;
	overflow-x : hidden;
	width: 100%;
	max-width: 100vw;
}

:root {
	/* --mainColor: #CC0011;
	--mainColor_rgb: 204, 0, 17;
	--subColor: #fff; */
  --red: #CC0011;
  --blue: #2B68E2;
  --blue_rgb: 43, 104, 226;
	--w_blue: #f1f4fa;
	--l_blue: #E2ECFF;
	--l_blue2: #E9F2F7;
	--s_blue: #D0EDF7;
	--d_blue: #1B78BD;
  --green: #20ADBC;
  --green_rgb: 32, 172, 187;
	--w_green: #EEF7F6;
  --l_green: #DFF1F2;
  --l_green2: #DFF5EF;
  --d_green: #006E80;
  --y_green: #D5E37B;
  --yellow: #EAFF61;
  --l_b_gray: #ACB7CC;
  --l_gray: #F5F5F5;
  --gray: #9F9F9F;
  --d_gray: #555252;
  --black: #222;

	--grd_blue: linear-gradient(to right, var(--blue), var(--green));
	--grd_green: linear-gradient(to right, #17B611, #DCE37B);

	--font_family: 'Noto Sans JP', "Yu Gothic", "游ゴシック Medium", "YuGothic", "游ゴシック体", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
	--font_family_zh: 'Noto Sans SC', 'Noto Sans JP', "Yu Gothic", "游ゴシック Medium", "YuGothic", "游ゴシック体", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
	--font_family_zt: 'Noto Sans TC', 'Noto Sans JP', "Yu Gothic", "游ゴシック Medium", "YuGothic", "游ゴシック体", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
}

body, button, input, select, optgroup, textarea {
	background: #fff;
	color: var(--black);
	font-family: var(--font_family);
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 1.8;
}
body .lng-zh, .lng-zh button, .lng-zh input, .lng-zh select, .lng-zh optgroup, .lng-zh textarea {
	font-family: var(--font_family_zh);
}
body .lng-zt, .lng-zt button, .lng-zt input, .lng-zt select, .lng-zt optgroup, .lng-zt textarea {
	font-family: var(--font_family_zt);
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
	body, button, input, select, optgroup, textarea {
	}
}
@media screen and (max-width: 500px) {
	body, button, input, select, optgroup, textarea {
		font-size: 3.7vw;
		letter-spacing: 0;
	}
}
/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
}
/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
/*
	body, button, input, select, optgroup, textarea {
		font-size: 17px;
		font-size: 1.7rem;
	}
*/
}
@media screen and (min-width:1280px) {
	body, button, input, select, optgroup, textarea {
		/* font-size: 18px;
		font-size: 1.8rem; */
	}
}

body {
	position: relative;
	width: 100%;
	max-width: 100vw;
	height: auto;
	/* overflow-x: hidden; */
}
* {
	min-height:0;
	min-width : 0;
}

body * {
	box-sizing: border-box;
}
section {
	/*	background: #fff;*/
/*	overflow: hidden;*/
	position: relative;
	max-width: 100vw;
}
a {
	display: inline-block;
	transition: 0.2s ease-in-out;
	color: inherit;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	outline:none;
	position: relative;
	text-decoration: none;
	/* vertical-align: middle; */
}
.tel_link a {
	text-decoration: none !important;
}

.underline {
	-webkit-text-decoration: underline solid 1px;
	text-decoration: underline solid 1px;
	text-underline-position: under;
	text-underline-offset: 0.1em;
}

p a:not(.linkBtn) ,
a.underline {
	color: var(--blue);
	display: inline;
	filter: brightness(.6);
	-webkit-text-decoration: underline dotted 1px;
	text-decoration: underline dotted 1px;
	text-underline-position: under;
	text-underline-offset: 0.1em;
	word-wrap: break-word;
}


.color-green p a:not(.linkBtn) ,
.color-green a.underline {
	color: var(--green);
	display: inline;
	filter: brightness(.6);
	-webkit-text-decoration: underline dotted 1px;
	text-decoration: underline dotted 1px;
	text-underline-position: under;
	text-underline-offset: 0.1em;
	word-wrap: break-word;
}


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

figure {
	margin: 0;
	position: relative;
}
figure img {
	position: relative;
}
figure.coverImg {
	overflow: hidden;
	padding-top: 65%;
	width: 100%;
}
figure.coverImg img {
	-o-object-fit: cover;
	object-fit: cover;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	max-width: none;
	height: 100%;
	max-height: none;
}
figure.coverImg.contain img {
	-o-object-fit: contain;
	   object-fit: contain;
}
figure figcaption.noImage {
	background: #f2faff;
	color: var(--red);
	display: flex;
		align-items: center;
		justify-content: center;
	font-size: 2.0rem;
	font-weight: bold;
	position: absolute;
		top: 0;
		left: 0;
	width: 100%;
	height: 100%;
}

.scaleUpImg figure {
	overflow: hidden;
}
a.scaleUpImg:hover {
	opacity: 1;
}
.scaleUpImg img {
	transition: .4s;
}

.round {
	border-radius: 14px;
	overflow: hidden;
}

figure.square {
	display: block;
	width: 100%;
	padding-top: 100%;
}
figure.square img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}



#contents {
	width: 100%;
	position: relative;
	transition: .2s ease-in-out;
	z-index: 10;
}
.innerBox{
	margin: 0 auto;
	padding: 120px 0;
	position: relative;
	width: 94%;
		max-width: 1200px;
	z-index: 1;
}
.innerBox.short {
	max-width: 1000px;
}
.innerBox.wide {
	max-width: 1600px;
}
.innerBox.mediumPadding {
	padding: 90px 0;
}
.innerBox.shortPadding {
	padding: 60px 0;
}

.block {display: block;}
.inb {display: inline-block;}
.relative { position: relative; z-index: 1;}
.flexBox {
	display: flex;
	justify-content: flex-start;
	align-items: stretch;
}
.flexCenter {
	align-items: center;
	justify-content: center;
}
.flexStart {
	justify-content: flex-start;
}
.flexEnd {
	justify-content: flex-end;
}
.flexWrap {
	flex-wrap: wrap;
}
.flexColumn {
	flex-direction: column;
	justify-content: flex-start;
}
.flex-1 {
	flex: 1;
}
.gridBox {
	display: grid;
}
dl.gridBox {
	grid-template: 'dt dd';
}
.whiteBox {
	background: #fff;
	padding: 30px;
}
.roundBox {
	border-radius: 5px;
}

p + p {margin-top: 1em;}

.mw300 {max-width: 300px; margin: auto;}
.mw400 {max-width: 400px; margin: auto;}
.mw500 {max-width: 500px; margin: auto;}
.mw600 {max-width: 600px; margin: auto;}
.mw700 {max-width: 700px; margin: auto;}
.mw800 {max-width: 800px; margin: auto;}
.mw900 {max-width: 900px; margin: auto;}
.mw1000 {max-width: 1000px; margin: auto;}
.mw-none {max-width: none;}

input[type="radio"], input[type="checkbox"] {
	display: none;
}

.decoBox {
	position: absolute;
}

.over_hidden {
	overflow: hidden;
}
.hidden {
	display: none;
}
.clear {
	clear: both;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
	.innerBox {
		padding: 80px 0;
		width: 92%;
	}
	.innerBox.mediumPadding {
		padding: 60px 0;
	}
	.innerBox.shortPadding {
		padding: 50px 0;
	}

	.hidden-mob {
		display: none;
	}
	.display-mob {
		display: block;
	}

	figure figcaption.noImage {
		font-size: 1.6rem;
	}
	.whiteBox {
		padding: 2em 1.2em;
	}
	.flexColumn-mob ,
	.flexColumn-tab {
		flex-direction: column;
	}
	dl.gridBox {
		grid-template: 'dt' 'dd';
	}
}

@media screen and (max-width:500px) {
	#contents {
		min-height: calc(100vh - 60px - 98vw);
		min-height: calc(100dvh - 60px - 98vw);
	}
	.innerBox {
		padding: 15vw 0;
	}
	.innerBox.mediumPadding {
		padding: 13vw 0;
	}
	.innerBox.shortPadding {
		padding: 10vw 0;
	}
	.whiteBox {
		padding: 2em 1em;
	}

	.hidden-small {
		display: none;
	}
	.display-small {
		display: block;
	}
}

@media screen and (max-width: 1280px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
	#contents {
		min-height: calc(100vh - 470px);
		min-height: calc(100dvh - 470px);
	}
	a:hover {
		opacity: .7;
	}
	a.opacity-1:hover {
		opacity: 1;
	}
	.scaleUpImg:hover img {
		transform: scale(1.1);
	}

	.whiteBox {
		padding: 40px;
	}

	.hidden-pc_d_tab,
	.hidden-pc {
		display: none;
	}
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
	.flexColumn-tab {
		flex-direction: column;
	}
	.hidden-tab {
		display: none;
	}
	.hidden-pc_d_tab ,
	.display-tab {
		display: block;
	}
}

@media screen and (min-width:1280px) {
	#contents {
		min-height: calc(100vh - 490px);
		min-height: calc(100dvh - 490px);
	}
	.whiteBox {
		padding: 40px 60px 50px;
	}
	.hidden-wide {
		display: none;
	}
	.display-wide {
		display: block;
	}
}


.h100 {
	height: 100%;
}
.w100 {
	width: 100%;
}

/*====================================================
//NOTE 余白
====================================================*/
.ma-auto {margin: auto !important}
.ma-0 {margin: 0 !important}
.ma-05em {margin: .5em !important}
.ma-10em {margin: 1.0em !important}
.ma-15em {margin: 1.5em !important}
.ma-20em {margin: 2em !important}
.ma-30em {margin: 3em !important}
.mt-0 {margin-top: 0 !important}
.mt-03em {margin-top: .3em !important}
.mt-05em {margin-top: .5em !important}
.mt-08em {margin-top: .8em !important}
.mt-10em {margin-top: 1.0em !important}
.mt-15em {margin-top: 1.5em !important}
.mt-20em {margin-top: 2em !important}
.mt-30em {margin-top: 3em !important}
.ml-0 {margin-left: 0 !important}
.ml-03em {margin-left: .3em !important}
.ml-05em {margin-left: .5em !important}
.ml-10em {margin-left: 1.0em !important}
.ml-15em {margin-left: 1.5em !important}
.ml-20em {margin-left: 2em !important}
.ml-30em {margin-left: 3em !important}
.mr-0 {margin-right: 0 !important}
.mr-02em {margin-right: .2em !important}
.mr-05em {margin-right: .5em !important}
.mr-10em {margin-right: 1.0em !important}
.mr-15em {margin-right: 1.5em !important}
.mr-20em {margin-right: 2em !important}
.mr-30em {margin-right: 3em !important}
.mb-0 {margin-bottom: 0 !important}
.mb-03em {margin-bottom: .3em !important}
.mb-05em {margin-bottom: .5em !important}
.mb-08em {margin-bottom: .8em !important}
.mb-10em {margin-bottom: 1.0em !important}
.mb-15em {margin-bottom: 1.5em !important}
.mb-20em {margin-bottom: 2em !important}
.mb-30em {margin-bottom: 3em !important}

.ma-10 {margin: 10px !important}
.ma-20 {margin: 20px !important}
.ma-30 {margin: 30px !important}
.ma-40 {margin: 40px !important}
.ma-50 {margin: 50px !important}
.mt-10 {margin-top: 10px !important}
.mt-20 {margin-top: 20px !important}
.mt-30 {margin-top: 30px !important}
.mt-40 {margin-top: 40px !important}
.mt-50 {margin-top: 50px !important}
.mt-60 {margin-top: 60px !important}
.mt-70 {margin-top: 70px !important}
.ml-10 {margin-left: 10px !important}
.ml-20 {margin-left: 20px !important}
.ml-30 {margin-left: 30px !important}
.ml-40 {margin-left: 40px !important}
.ml-50 {margin-left: 50px !important}
.mr-10 {margin-right: 10px !important}
.mr-20 {margin-right: 20px !important}
.mr-30 {margin-right: 30px !important}
.mr-40 {margin-right: 40px !important}
.mr-50 {margin-right: 50px !important}
.mb-10 {margin-bottom: 10px !important}
.mb-20 {margin-bottom: 20px !important}
.mb-30 {margin-bottom: 30px !important}
.mb-40 {margin-bottom: 40px !important}
.mb-50 {margin-bottom: 50px !important}
.mb-60 {margin-bottom: 60px !important}
.mb-70 {margin-bottom: 70px !important}

.pa-0 {padding: 0 !important}
.pa-05em {padding: .5em !important}
.pa-10em {padding: 1.0em !important}
.pa-15em {padding: 1.5em !important}
.pa-20em {padding: 2em !important}
.pt-0 {padding-top: 0 !important}
.pt-05em {padding-top: .5em !important}
.pt-10em {padding-top: 1.0em !important}
.pt-15em {padding-top: 1.5em !important}
.pt-20em {padding-top: 2em !important}
.pb-0 {padding-bottom: 0 !important}
.pb-05em {padding-bottom: .5em !important}
.pb-10em {padding-bottom: 1.0em !important}
.pb-15em {padding-bottom: 1.5em !important}
.pb-20em {padding-bottom: 2em !important}

/*====================================================
//class .sa
====================================================*/
.sa {
	opacity: 0;
	transition: all .8s ease;
}
.sa.show {
	opacity: 1;
	transform: none;
}
.sa-lr {
	transform: translate(-40px, 0);
}
.sa-rl {
	transform: translate(40px, 0);
}
.sa-up {
	transform: translate(0, 40px);
}
.sa-down {
	transform: translate(0, -40px);
}
.sa-scaleUp {
	transform: scale(.8);
}
.sa-scaleDown {
	transform: scale(1.2);
}
.sa-rotateL {
	transform: rotate(180deg);
}
.sa-rotateR {
	transform: rotate(-180deg);
}

.sa.slideShow {
	opacity: 1;
	position: relative;
	z-index: 1;
}
.sa.slideShow:before {
	background: #f4f4f4;
	content: '';
	position: absolute;
		top: 0;
		left: 0;
		right: auto;
	transition: .5s ease-in-out;
	width: 0;
	height: 100%;
	z-index: 10;
}
.sa.slideShow.show:before {
	-webkit-animation: anim-slide 1.0s ease-in-out forwards;
	        animation: anim-slide 1.0s ease-in-out forwards;
	-webkit-animation-delay: .4s;
	        animation-delay: .4s;
}
@-webkit-keyframes anim-slide {
	0%   {}
	55%  { width: 100%; left: 0; right: 0;}
	65% { width: 100%; left: auto; right: 0; }
	100% { width: 0; left: auto; right: 0; }
}
@keyframes anim-slide {
	0%   {}
	47%  { width: 100%; left: 0; right: 0;}
	53% { width: 100%; left: auto; right: 0; }
	100% { width: 0; left: auto; right: 0; }
}

.sa.slideShow img,
.sa.slideShow > .box-inner {
	opacity: 0;
}
.sa.slideShow.show img ,
.sa.slideShow.show > .box-inner {
	opacity: 1;
	transition-delay: .9s;
}


.sa.slideShow.slide-rl {
	transform: rotate(180deg);
}
.sa.slideShow.slide-rl img {
	transform: rotate(180deg);
}

.sa.slideShow.slide-pink:before {
	background: #f1cfd4;
}
.sa.slideShow.slide-white:before {
	background: #fff;
}


/*====================================================
//class eachTextAnime
====================================================*/
.eachTextAnime {
	opacity: 0;
}
.eachTextAnime.appeartext {
	opacity: 1;
}
.eachTextAnime span {
	opacity: 0;
}
.eachTextAnime.appeartext span {
	-webkit-animation:text_anime_on .4s ease-out forwards;
	        animation:text_anime_on .4s ease-out forwards;
	/* animation-delay: .4s; */
}
@-webkit-keyframes text_anime_on {
	0% {opacity:0;}
	100% {opacity:1;}
}
@keyframes text_anime_on {
	0% {opacity:0;}
	100% {opacity:1;}
}


.delay-01 {
	transition-delay: .1s;
}
.delay-02 {
	transition-delay: .2s;
}
.delay-03 {
	transition-delay: .3s;
}
.delay-04 {
	transition-delay: .4s;
}
.delay-05 {
	transition-delay: .5s;
}
.delay-06 {
	transition-delay: .6s;
}

/*====================================================
//NOTE テキスト
====================================================*/
.f-en {
	font-family: 'Oswald';
	font-weight: 500;
	letter-spacing: 0;
	line-height: 1.0;
}

.shadow_text {
	text-shadow: .02em .02em .15em rgba(9, 142, 143, 0.08);
}

.tate {
	-ms-writing-mode: tb-rl;
	    writing-mode: vertical-rl;
	-webkit-text-orientation: upright;
	        text-orientation: upright;
}

.f-05em {font-size: .5em}
.f-06em {font-size: .6em}
.f-07em {font-size: .7em}
.f-08em {font-size: .8em}
.f-09em {font-size: .9em}
.f-10em {font-size: 1.0em}
.f-11em {font-size: 1.1em}
.f-12em {font-size: 1.2em}
.f-13em {font-size: 1.3em}
.f-14em {font-size: 1.4em}
.f-15em {font-size: 1.5em}
.f-16em {font-size: 1.6em}
.f-17em {font-size: 1.7em}
.f-18em {font-size: 1.8em}
.f-20em {font-size: 2.0em}

.f-10 {font-size: 1.0rem}
.f-11 {font-size: 1.1rem}
.f-12 {font-size: 1.2rem}
.f-13 {font-size: 1.3rem}
.f-14 {font-size: 1.4rem}
.f-15 {font-size: 1.5rem}
.f-16 {font-size: 1.6rem}
.f-17 {font-size: 1.7rem}
.f-18 {font-size: 1.8rem}
.f-20 {font-size: 2.0rem}
.f-22 {font-size: 2.2rem}
.f-24 {font-size: 2.4rem}

.lh-10 {line-height: 1.0;}
.lh-12 {line-height: 1.2;}
.lh-14 {line-height: 1.4;}
.lh-16 {line-height: 1.6;}
.lh-18 {line-height: 1.8;}
.lh-20 {line-height: 2.0;}
.lh-22 {line-height: 2.2;}

.ls-0 {letter-spacing: 0;}
.ls-03 {letter-spacing: .03em;}
.ls-05 {letter-spacing: .05em;}
.ls-10 {letter-spacing: .1em;}
.ls-15 {letter-spacing: .15em;}
.ls-20 {letter-spacing: .2em;}
.ls-25 {letter-spacing: .25em;}

small, .small {
	font-size: .8em;
}
big, .big {
	font-size: 1.2em;
}
strong {
	font-weight: bold;
}
sup {
	font-size: .5em;
	vertical-align: .5em;
}
.fuchi2 {
	text-shadow: 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff;
}
.fuchi3 {
	text-shadow: 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff;
}
.fuchi5 {
	text-shadow: 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff;
}

.fw-light {
	font-weight: 400;
}
.fw-medium {
	font-weight: 500;
}
.fw-semibold {
	font-weight: 600;
}
.fw-bold {
	font-weight: 700;
}
.fw-black {
	font-weight: 900;
}

.txt-left {
	text-align: left;
}
.txt-right {
	text-align: right;
}
.txt-center {
	text-align: center;
}

h1, h2, h3, h4, h5, h6 {
	font-weight: 500;
	line-height: 1.6;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
	h1 {font-size: 2.2em;}
	h2 {font-size: 1.9em;}
	h3 {font-size: 1.4em;}
	h4 {font-size: 1.3em;}
	h5 {font-size: 1.2em;}
	h1, h2, h3, h4, h5, h6 {
		/* letter-spacing: .08em; */
	}
}

@media screen and (max-width: 540px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
	h1 {font-size: 3.6rem;}
	h2 {font-size: 3.2rem;}
	h3 {font-size: 2.5rem;}
	h4 {font-size: 2.2rem;}
	h5 {font-size: 2.0rem;}
	h1, h2, h3, h4, h5, h6 {
		/* letter-spacing: .1em; */
	}
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
	/* h1 {font-size: 3.4rem;}
	h2 {font-size: 3.0rem;}
	h3 {font-size: 2.6rem;}
	h4 {font-size: 2.2rem;}
	h5 {font-size: 2.0rem;} */
}

@media screen and (min-width:1280px) {
	h1 {font-size: 3.8rem;}
	h2 {font-size: 3.5rem;}
	h3 {font-size: 2.7rem;}
	h4 {font-size: 2.4rem;}
	h5 {font-size: 2.2rem;}
}

/*====================================================
//NOTE 装飾系
====================================================*/

.menu-btn-container .menu a,
.wp-block-button:not(.is-style-outline) .wp-block-button__link,
.wp-block-file__button,
.linkBtn { /* class linkBtn */
	background: transparent;
	border: solid 1px;
	border-radius: 0;
	color: var(--blue);
  cursor: pointer;
	display: grid;
		grid-gap: .3em .6em;
		grid-template-columns: auto auto;
		place-content: center;
		place-items: center;
	font-size: .94em;
	font-weight: 500;
	line-height: 1.4;
	margin: 0 auto;
  padding: 1em .5em;
	position: relative;
	text-align: center;
	transition: .2s ease-in-out;
  width: 100%;
		max-width: 350px;
	z-index: 1;
}

.color-green .menu-btn-container .menu a,
.color-green .wp-block-button:not(.is-style-outline) .wp-block-button__link,
.color-green .linkBtn { /* class linkBtn */
	color: var(--green);
}

.menu-btn-container .menu a:after,
.wp-block-button:not(.is-style-outline) .wp-block-button__link::after,
.linkBtn::after,
.wp-block-button .wp-block-button__link.is-style-outline:not(.has-text-color)::after,
.wp-block-button.is-style-outline>.wp-block-button__link:not(.has-text-color)::after,
.wp-block-button.is-style-outline > .wp-block-button__link::after,
main .bodyText .is-style-outline .wp-block-button__link::after,
.wp-block-file__button::after,
.linkBtn-small::after {
	background: url('img/cmn/arrow-blue.png') no-repeat center / contain;
	content: '';
	display: block;
	margin: auto;
	transition: .2s ease-in-out;
	width: 1.2em;
	height: 1.2em;
}
.color-green .menu-btn-container .menu a:after,
.color-green .wp-block-button:not(.is-style-outline) .wp-block-button__link::after,
.color-green .linkBtn::after,
.color-green .wp-block-button .wp-block-button__link.is-style-outline:not(.has-text-color)::after,
.color-green .wp-block-button.is-style-outline>.wp-block-button__link:not(.has-text-color)::after,
.color-green .wp-block-button.is-style-outline > .wp-block-button__link::after,
.color-green main .bodyText .is-style-outline .wp-block-button__link::after,
.color-green .linkBtn-small::after {
	background: url('img/cmn/arrow-green.png') no-repeat center / contain;
}

.linkBtn.green ,
#overseas_business #contents .linkBtn {
	color: var(--green);
}
.linkBtn.green::after ,
#overseas_business #contents .linkBtn::after {
	background: url('img/cmn/arrow-green.png') no-repeat center / contain;
}
.linkBtn.white {
	color: #fff;
}
.linkBtn.white::after {
	filter: brightness(0) invert(1);
}
.linkBtn.bg-blue::after ,
.linkBtn.bg-green::after {
	background: url('img/cmn/arrow-green.png') no-repeat center / contain;
	filter: brightness(0) invert(1);
}

.linkBtn.underlineBtn {
	border-bottom: solid 2px;
	padding-bottom: .5em;
}
.linkBtn.underlineBtn::before {
	display: none;
}
.linkBtn.underlineBtn::after {
	bottom: .5em;
}
.linkBtn.underlineBtn:hover::after {
	border-color: var(--mainColor);
}

.wp-block-button .wp-block-button__link.is-style-outline:not(.has-text-color),
.wp-block-button.is-style-outline>.wp-block-button__link:not(.has-text-color),
.wp-block-button.is-style-outline > .wp-block-button__link,
main .bodyText .is-style-outline .wp-block-button__link,
.linkBtn-small {
	background: transparent;
	border: none;
	border-radius: 0;
	color: var(--blue);
	cursor: pointer;
	display: inline-table;
	filter: none;
	font-size: inherit;
	line-height: 1.4;
	opacity: 1;
	padding: 0 2em 0 0;
	position: relative;
	text-align: center;
}
.color-breen .wp-block-button.is-style-outline > .wp-block-button__link,
.color-breen main .bodyText .is-style-outline .wp-block-button__link,
.color-breen .linkBtn-small {
	color: var(--green);
}
.wp-block-button .wp-block-button__link.is-style-outline:not(.has-text-color)::after,
.wp-block-button.is-style-outline>.wp-block-button__link:not(.has-text-color)::after,
.wp-block-button.is-style-outline > .wp-block-button__link::after,
main .bodyText .is-style-outline .wp-block-button__link::after,
.linkBtn-small::after {
	position: absolute;
		top: .1em;
		right: 0;
}

.wp-block-file:not(.wp-element-button) {
    font-size: 1em;
}
.wp-block-file__button:focus {
    color: var(--blue);
    opacity: 1;
}


.linkBtn img {
	display: inline-block;
	height: 1em;
	margin-right: .7em;
	transition: .1s ease-in-out;
	vertical-align: -.1em;
}
.link_icon {
	display: inline-block;
	height: .8em;
	margin-left: .5em;
}
.arrow {
	background: url('img/cmn/arrow-blue.png') no-repeat center / contain;
	display: inline-block;
	margin: 0 0 0 .5em;
	position: relative;
	transition: .2s ease-in-out;
	width: 1em;
	height: 1em;
	vertical-align: -.15em;
}
.blue .arrow {
	background: url('img/cmn/arrow-blue.png') no-repeat center / contain;
}
.green .arrow ,
#overseas_business .arrow {
	background: url('img/cmn/arrow-green.png') no-repeat center / contain;
}

.line_arrow {
	background: url('img/cmn/line_arrow.png') no-repeat right bottom / contain;
	display: inline-block;
	margin: 0 0 0 .5em;
	position: relative;
	transition: .2s ease-in-out;
	width: 3em;
	height: 1em;
}
#overseas_business #contents .line_arrow {
	background: url('img/cmn/line_arrow-green.png') no-repeat right bottom / contain;
}

.small_arrow {
	display: inline-block;
	position: relative;
	width: .5em;
	height: 1em;
}
.small_arrow::before {
	border: solid;
	border-width: 2px 2px 0 0;
	content: '';
	display: block;
	margin: auto;
	position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
	transform: rotate(45deg);
	width: .3em;
	height: .3em;
}

i.icon {
	margin: -.3em .5em 0 0;
	width: 20px;
	height: 1.5em;
}

dl.accordion dt ,
dl.menu-accordion dt {
	cursor: pointer;
	position: relative;
}
dl.accordion dd ,
dl.menu-accordion dd {
	overflow: hidden;
	transition: .2s ease-in-out;
}
dl.accordion .accordion_close {
	cursor: pointer;
}
.bgBox {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: 100%;
	height: 100%;
	z-index: -1;
}
.bgBox img {
	width: 100% !important;
	height: 100% !important;
	-o-object-fit: cover;
	object-fit: cover;

}

.opacity-6 {opacity: .6}
.opacity-8 {opacity: .8}
.opacity-10 {opacity: 1}


/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
	main .bodyText .wp-block-buttons {
		display: block;
	}
	main .bodyText .wp-block-buttons .wp-block-button {
		display: block;
		margin: 10px auto !important;
		text-align: center;
	}
	.wp-block-button:not(.is-style-outline) ,
	main .bodyText .wp-block-button:not(.is-style-outline),
	.linkBox {
	}
	.wp-block-button:not(.is-style-outline) .wp-block-button__link,
	main .bodyText .wp-block-button:not(.is-style-outline) .wp-block-button__link,
	.linkBtn { /* class linkBtn mobile */
		font-size: 1em;
		margin: auto;
		width: 90%;
			max-width: 500px;
	}
	.linkBtn.smallBtn {
		padding: 0.5em 1em;
		width: auto;
			min-width: 0;
	}

}

@media screen and (max-width:500px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) { /* NOTE linkBtn pc */
	.wp-block-button:not(.is-style-outline) .wp-block-button__link {
		width: 350px;
	}
	.menu-btn-container .menu a:hover,
	.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover,
    .wp-block-file__button:hover,
	.linkBtn:hover ,
  a:hover .linkBtn {
        background: var(--l_blue);
        color: var(--blue);
		opacity: 1;
  }
.color-green .menu-btn-container .menu a:hover,
.color-green .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover,
	.color-green .linkBtn:hover ,
	.linkBtn.green:hover ,
  a:hover .linkBtn.green {
		background: var(--l_green);
  }
	.linkBtn.white:hover ,
  a:hover .linkBtn.white {
		background: var(--blue);
		color: #fff;
  }
	.linkBtn.bg-blue:hover ,
  a:hover .linkBtn.bg-blue {
		background: var(--blue);
		filter: brightness(1.15);
		color: #fff;
	}
	.linkBtn.bg-green:hover ,
  a:hover .linkBtn.bg-green {
		background: var(--green);
		filter: brightness(1.15);
		color: #fff;
  }

	.menu-btn-container .menu a:hover::after,
	.wp-block-button:not(.is-style-linkBtn-small):not(.is-style-linkBtn-line) .wp-block-button__link:hover:after,
	main .bodyText .wp-block-button:not(.is-style-linkBtn-small):not(.is-style-linkBtn-line) .wp-block-button__link:hover:after,
    .wp-block-file__button:hover::after,
	.linkBtn:hover::after {
		transform: translateX(.2em);
	}
	.is-style-outline .wp-block-button__link:hover,
	main .bodyText .is-style-outline .wp-block-button__link:hover,
	a:hover .linkBtn-small ,
	.linkBtn-small:hover {
		background: var(--l_pink);
		filter: none;
		opacity: 1;
	}
	.arrowBtn:hover::before {
	}
	.linkBtn.bg-transparent:hover {
		background: rgba(0, 0, 0, .2);
		filter: none;
	}
	.linkBtn-line:hover {
		background: #34d568;
	}

	a:hover .arrow ,
	a:hover .line_arrow {
		transform: translateX(4px);
	}
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
}

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


ul.markList li {
	position: relative;
	padding-left: 1.1em;
	line-height: 1.5;
	margin: .3em 0;
}
ul.markList li:before {
	position: absolute;
	display: block;
	left: 0;
	top: 0;
}
ul.markList li:after {
	display: none !important;
}
ul.markList.attentionMark li:before {
	content: '\203B';
}
ul.markList.dot li:before {
	content: '\30FB';
}
ul.markList.color_dot li:before {
	background: #DCC37F;
	border-radius: 100px;
	content: '';
	top: calc(.5em - 0px);
	width: .6em;
	height: .6em;
}
ol{
	counter-reset:number; /* 名前を付けたカウンターをリセット */
	list-style:none; /* olが数字を付けることをキャンセル */
	margin:0;
	padding:0;
}
ol > li{
	padding-left: 1.7em;
	line-height: 1.6;
	margin: .7em 0;
	position: relative;
}
ol > li:before{
	counter-increment: number;
	content: counter(number) '.';
	position: absolute;
	top: .1em;
	left: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 1.4em;
	height: 1.4em;
	line-height: 1;
}
ol.circleMarkList > li:before{
	border: solid 1px;
	border-radius: 100%;
	font-size: .9em;
	top: .05em;
}

.circleBox {
	border-radius: 100%;
}

.markerline {
	background: linear-gradient(transparent 80%, #FFFF00 80%, #FFFF00 100%);
}
.markerline-orange {
	background: linear-gradient(transparent 80%, #FF9900 80%, #FF9900 100%);
}

.squareMark {
	border: solid 1px;
	display: inline-block;
	padding: .2em 1em .3em;
	line-height: 1;
}

.circleMark {
	border-radius: 100px;
	line-height: 1.4;
	padding: .15em 1em .2em;
}

.newWindow_link {
	padding-right: 1em;
	position: relative;
}
.newWindow_link::before {
	background: url('img/cmn/icon-newWindow.png') no-repeat center right / contain;
	content: '';
	display: block;
	margin: auto;
	position: absolute;
		top: .6em;
		right: 1px;
	width: .7em;
	height: .7em;
}

/*/ NOTE 【特殊装飾】 */
#main_bg {
  position: fixed;
    top: 0;
    left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}
.tel_icon {
	padding-left: 1em;
	position: relative;
}
.tel_icon::before {
	background: url('img/cmn/tel.png') no-repeat center left / contain;
	content: '';
	display: block;
	margin: auto;
	position: absolute;
		top: .1em;
		left: 0;
		bottom: 0;
	width: .7em;
	height: .8em;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
}

@media screen and (max-width:500px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
}
/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
}

@media screen and (min-width:1000px) and (max-width:1500px) {
}

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

/*====================================================
////NOTE カラー
====================================================*/

.bg-white {
	background: #fff;
}

.bg-mainColor {
	background: var(--mainColor);
	color: #fff;
}

.bg-red {
	background: var(--red);
	color: #fff;
}
.bg-blue {
	background: var(--blue);
	color: #fff;
}
.bg-l_blue {
	background: var(--l_blue);
}
.bg-l_blue2 {
	background: var(--l_blue2);
}
.bg-d_blue {
	background: var(--d_blue);
	color: #fff;
}
.bg-green {
	background: var(--green);
	color: #fff;
}
.bg-w_green {
	background: var(--w_green);
}
.bg-l_green {
	background: var(--l_green);
}
.bg-l_green2 {
	background: var(--l_green2);
}
.bg-y_green {
	background: var(--y_green);
	color: #fff;
}
.bg-yellow {
	background: var(--yellow);
	color: #fff;
}
.bg-l_gray {
	background: var(--l_gray);
}
.bg-d_gray {
	background: var(--d_gray);
	color: #fff;
}
.bg-black {
	background: var(--black);
	color: #fff;
}

.bg-grd_blue {
	background: var(--grd_blue);
	color: #fff;
}
.bg-grd_green {
	background: var(--grd_green);
	color: #fff;
}

.bg-none {
	background: transparent;
}

.white {
	color: #fff;
}
.mainColor, .has-maincolor-color {
	color: var(--mainColor);
}
.red, .has-red-color {
	color: var(--red);
}
.blue, .has-blue-color {
	color: var(--blue);
}
.green, .has-green-color {
	color: var(--green);
}
.y_green, .has-y_green-color {
	color: var(--y_green);
}
.yellow, .has-yellow-color {
	color: var(--yellow);
}
.l_b_gray {
	color: var(--l_b_gray);
}
.gray {
	color: var(--gray);
}
.d_gray {
	color: var(--d_gray);
}
.black {
	color: var(--black);
}

.border-blue {
	border: solid var(--blue);
}
.border-green {
	border: solid var(--green);
}
.border-none {
	border: none;
}

.shadowBox {
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
}

/*====================================================
//id form
====================================================*/
input, button, select {
	margin: 0;
	padding: 0;
	background: none;
	background-image: none;
	background-position-x: initial;
	background-position-y: initial;
	background-size: initial;
	background-repeat-x: initial;
	background-repeat-y: initial;
	background-attachment: initial;
	background-origin: initial;
	background-clip: initial;
	background-color: initial;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	color: inherit;
	cursor: pointer;
}
input[type="text"],input[type="email"],input[type="tel"],input[type="search"],input[type="password"],input[type="url"],input[type="number"], select, textarea {
	-webkit-appearance: none;
	background: #fff;
	border: solid 1px var(--l_gray);
	border-radius: 0;
	display: block;
	/* font-family: var(--font_family); */
	min-height: 1.8em;
	padding: 10px;
	width: 100%;
	flex: 1;
	transition: .2s ease-in-out;
}
textarea {
	resize: vertical;
	height: 160px;
	width: 100%;
}
input[type="text"]:focus, input[type="email"]:focus, input[type="password"]:focus, select:focus, textarea:focus {
	border-color: var(--gray);
	/*
	-webkit-box-shadow: 0 0 5px rgba(83, 37, 15, 0.5);
	box-shadow: 0 0 5px rgba(83, 37, 15, 0.5);
	*/
}
input[type="file"],
label {
	cursor: pointer;
}
form label {
	position: relative;
	line-height: 1.4;
	display: inline-block;
}

input[type="checkbox"] + span ,
input[type="checkbox"] + label {
	position: relative;
	padding-left: 1.5em;
	display: inline-block;
}
input[type="checkbox"] + span:before ,
input[type="checkbox"] + label:before {
	position: absolute;
	content: '';
	width: 15px;
	height: 15px;
	border: solid 1px;
	border-radius: 3px;
	border-color: var(--black);
	top: .2em;
	left: 0px;
	background: #fff;
	transition: .2s ease-in-out;
}
input[type="checkbox"] + label:before {
	top: -.15em;
}
input[type="checkbox"] + span:after ,
input[type="checkbox"] + label:after {
	position: absolute;
	content: '';
	width: 11px;
	height: 7px;
	border: solid;
	border-width: 0 0 3px 3px;
	border-color: transparent transparent #b23750 #b23750;
	transform: rotate(-45deg);
	top: .2em;
	left: 3px;
	opacity: 0;
	transition: .2s ease-in-out;
}
input[type="checkbox"] + label:after {
	top: -2px;
}
input[type="checkbox"]:checked + span:after ,
input[type="checkbox"]:checked + label:after {
	opacity: 1;
}
input[type="radio"] + span ,
input[type="radio"] + label {
	position: relative;
	padding-left: 1.5em;
}
input[type="radio"] + span:before,
input[type="radio"] + label:before {
	position: absolute;
	content: '';
	width: 1em;
	height: 1em;
	border: solid 1px;
	border-radius: 100%;
	border-color: var(--black);
	top: .25em;
	left: 0px;
	background: #fff;
	transition: .2s ease-in-out;
}
input[type="radio"] + span:after,
input[type="radio"] + label:after {
	position: absolute;
	content: '';
	width: .6em;
	height: .6em;
	top: .53em;
	left: .26em;
	border-radius: 100%;
	opacity: 0;
	transition: .2s ease-in-out;
}
input[type="radio"]:checked + span:after,
input[type="radio"]:checked + label:after {
	opacity: 1;
	background: #b23750;
}
.select {
	position: relative;
}
.select:before {
	position: absolute;
	content: '';
	width: 0;
	height: 0;
	border: solid 4px transparent;
	border-top-color: #53250F;
	border-top-width: 6px;
	border-bottom-width: 0;
	right: 10px;
	top: 0;
	bottom: 0;
	margin: auto;
	pointer-events: none;
	z-index: 100;

}
#confirm .select:before {
	display: none;
}
select {
	cursor: pointer;
}
.tel input[type="text"] {
	width: calc(100% / 3 - 10px);
	max-width: 100px;
}
::-moz-placeholder {
	color: #C7C7C7;
}
:-ms-input-placeholder {
	color: #C7C7C7;
}
::placeholder {
	color: #C7C7C7;
}
/*====================================================
////id .yt
====================================================*/

.yt,
.wp-block-embed__wrapper {
	position: relative;
	height: 0;
	padding: 0px 0 56.3%;
	overflow: hidden;
}
.yt iframe,
.wp-block-embed__wrapper iframe {
	position: absolute;
	bottom: 0;
	width: 100%;
	height: 100%;
}


/*====================================================
////id 【header】
====================================================*/
header {
	transition: .3s ease-in-out;
}
header .headerBox {
	background: rgba(255, 255, 255, 1);
	box-shadow: 0 3px 10px rgba(0, 0, 0, .15);
	position: fixed;
		top: 0;
		left: 0;
	transition: .2s ease-in-out;
	width: 100%;
	z-index: 10000;
}
header.global .headerBox {
	background: rgba(255, 255, 255, .8);
}
header .header_logo {
	align-items: center;
}
header img {
	margin: 0;
}

header .languageBox dl {
	font-size: 1.3rem;
	position: relative;
}
header .languageBox dt {
	background: rgba(255, 255, 255, .5);
	border: solid 1px var(--gray);
	font-weight: 500;
	letter-spacing: 0;
	padding: .2em 1em;
}
header .languageBox dd {
	opacity: 0;
	position: absolute;
		top: 100%;
		left: 0;
	width: 100%;
}
header .languageBox .open dd {
	opacity: 1;
}
header .languageBox dd .accordion-inner {
	border: solid;
	border-width: 0 1px 1px;
}
header .languageBox dd button {
	background: var(--w_blue);
	font-size: inherit;
	text-align: center;
	width: 100%;
}
header .languageBox dd button:hover {
	background: #fff;
	opacity: 1;
}

header .menuBtn {
	background: transparent;
	cursor: pointer;
	place-content: center;
	position: fixed;
		top: 0;
		right: 0;
	transition: .2s ease-in-out;
	width: 80px;
	height: 80px;
	z-index: 10;
}
header .menuBtn .humberger {
	padding-top: 48%;
	width: 40px;
	height: 0;
	position: relative;
	margin: 0;
}
header .menuBtn .humberger span {
	background: var(--blue);
	content: '';
	margin: auto;
	opacity: 1;
	position: absolute;
		left: 0;
	transition: .4s ease-in-out;
	height: 2px;
}
header .menuBtn .humberger span:nth-child(1) {
	top: 0;
	right: 0;
	width: 100%;
}
header .menuBtn .humberger span:nth-child(2) {
	top: 0;
	right: 21.7%;
	bottom: 0;
	width: 78.3%;
}
header .menuBtn .humberger span:nth-child(3) {
	right: 44%;
	bottom: 0;
	width: 56%;
}
header .maskBox {
	/* background: rgba(0, 0, 0, .4);
	opacity: 0;
	pointer-events: none;
	position: fixed;
		top: 59px;
		left: 0;
	transition: .5s ease-in-out;
	width: 100%;
	height: 150%; */
}
header .menuBox {
	background: rgba(255, 255, 255, .9);
	opacity: 0;
	overflow-y: auto;
	padding: 0;
	pointer-events: none;
	position: fixed;
		bottom: 0;
		left: 0;
	transition: .5s ease-in-out;
	width: 100%;
	height: 100vh;
	height: 100dvh;
	z-index: 1;

	overflow-y: scroll;
	-ms-overflow-style: none;    /* IE, Edge 対応 */
	scrollbar-width: none;       /* Firefox 対応 */
}
header .menuBox::-webkit-scrollbar {  /* Chrome, Safari 対応 */
	display:none;
}
header .menu-outer.open .menuBtn {
	transition: .2s ease-in-out;
}
header .menu-outer.open .humberger span {
	right: 0;
	width: 80%;
}
header .menu-outer.open .humberger span:nth-child(2) {
	opacity: 0;
}
header .menu-outer.open .humberger span:nth-child(1) {
	top: calc(50% - 1px);
	right: 0;
	transform: rotate(-135deg);
}
header .menu-outer.open .humberger span:nth-child(3) {
	bottom: calc(50% - 0px);
	right: 0;
	transform: rotate(135deg);
}
header .menu-outer.open .humberger span:nth-child(2)::before,
header .menu-outer.open .humberger span:nth-child(3)::before {
	display: none;
}
header .menu-outer.open .maskBox {
	opacity: 1;
	pointer-events: auto;
}
header .menu-outer.open .menuBox {
	pointer-events: auto;
	bottom: 0;
	opacity: 1;
}

header .menuBox ul {
}
header .menu-outer .menu-pc {
	display: none;
}
header .menuBox li {
	line-height: 1.4;
	padding: 0;
	position: relative;
	width: 100%;
}
header .menuBox .menu {
	display: grid;
	grid-gap: 1em;
}
header .menuBox .menu > li {
	padding: 0;
}
header .menuBox .menu > li > a {
	display: flex;
		align-items: center;
	font-weight: 500;
	min-height: 4em;
	padding: .6em 3em .6em 1em;
}
header .menuBox .menu > li.blueBtn > a {
	background: var(--blue);
	color: #fff;
}
header .menuBox .menu > li.greenBtn > a {
	background: var(--green);
	color: #fff;
}
header .menuBox .menu > li > a::before {
	background: var(--mainColor);
	border-radius: 100%;
	content: '';
	margin: auto;
	position: absolute;
		top: -.5em;
		right: 0;
		bottom: -.5em;
	transition: .2s ease-in-out;
	width: 1.0em;
	height: 1.0em;
}
header .menuBox .menu > li > a::after {
	border: solid #fff;
	border-width: .13em .13em 0 0 ;
	content: '';
	margin: auto;
	position: absolute;
		top: 0;
		right: .4em;
		bottom: 0;
	transform: rotate(45deg);
	transition: .2s ease-in-out;
	width: .15em;
	height: .15em;
}

header .menu .sub-menu-outer {
	overflow: hidden;
	transition: .4s ease-in-out;
}
header .menuBox li .sub-menu-btn {
	background: #fff;
	cursor: pointer;
	display: block;
	margin: auto;
	position: absolute;
		top: 0;
		right: 0;
	width: 3em;
	height: 4em;
}
header .menuBox li .sub-menu-btn::before,
header .menuBox li .sub-menu-btn::after {
	border-top: solid 1px var(--black);
	content: '';
	margin: auto;
	position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
	transition: .2s ease-in-out;
	width: .8em;
	height: 0;
}
header .menuBox li .sub-menu-btn::after {
	transform: rotate(90deg);
}
header .menuBox li.open .sub-menu-btn::before {
	transform: rotate(180deg);
}
header .menuBox li.open .sub-menu-btn::after {
	opacity: 0;
	transform: rotate(180deg);
}
header .menuBox .sub-menu li {
}
header .menuBox .sub-menu-outer ul a {
	padding: .5em 1em .5em 0;
}
header .menuBox .sub-menu-outer ul a::before {
	border: solid;
	border-width: 1px 1px 0 0;
	content: '';
	display: block;
	margin: auto;
	position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
	transform: rotate(45deg);
	transition: .1s ease-in-out;
	width: .3em;
	height: .3em;
}
header .menuBox .menu .sub-menu {
	display: grid;
		grid-gap: .3em;
	padding: .8em .3em;
}
header .menuBox .menu .sub-menu a {
	border-bottom: solid 1px var(--gray);
	display: block;
}


/* ////////// mobile ////////// NOTE header mobile */
@media screen and (max-width: 959.8px) {
	header {
		height: 60px;
	}
	header.hide {
		top: -130px;
	}
	header .headerBox {
		height: 60px;
	}
	.menu-open header .headerBox {
		background: rgba(255, 255, 255, 1) !important;
	}
	header .headerBox.hide {
		/* opacity: 0; */
	}
	header .innerBox {
		align-items: center;
		grid-gap: 1.5em;
		padding: 5px 0;
		height: 100%;
		max-width: none;
	}
	header .header_logo {
		height: 100%;
		justify-content: flex-start;
		max-width: 60%;
	}
	header .header_logo a {
		display: flex;
			align-items: center;
		height: 40px;
	}
	header .header_logo + .languageBox {
		display: none;
	}
	header .navigation_menu {
		display: none;
	}
	header .menuBtn {
		width: 80px;
		height: 60px;
	}
	header .menuBox {
		height: calc(100% - 60px);
	}
	header .menuBox .logoBox {
		display: none;
	}
	header .menuBox {
		padding: 3em 2em;
	}
	header .menuBox .menuBox-inner {
		grid-gap: 2.5em;
	}
	header .menuBox .menu-outer {
		align-items: flex-start;
	}
	header .menuBox .menu-outer > div{
		width: 100%;
			max-width: 400px;
	}
	header .telBox .tel_link {
		font-size: 2.7em;
		padding-right: .3em;
	}
	header .telBox .time {
		font-size: 1em;
		margin-top: .5em;
	}
	header .menuBox .languageBox dl {
		font-size: 1.8rem;
	}

}

@media screen and (max-width:500px) {
}

@media screen and (max-width:480px) {
}


/* ////////// PC ////////// NOTE header PC */
@media print, screen and (min-width: 960px) {
	header {
		height: 85px;
	}
	header .headerBox {
		position: fixed;
			top: 0;
			left: 0;
			right: 0;
		transition: .4s ease-in-out;
		width: 100%;
		height: 85px;
		z-index: 9000;
	}
	header .headerBox:hover {
		background: rgba(255, 255, 255, 1);
	}
	header.hide {
		top: -180px;
	}
	header .innerBox {
		align-items: center;
		grid-gap: 15px;
		height: 100%;
		margin: auto;
		padding: 0 ;
	}
	header .header_logo {
		height: 100%;
	}
	header .header_logo img {
		height: 40px;
	}
	header .header_logo a:hover {
		color: inherit;
		opacity: .8;
	}

	header .navigation_menu {
    align-items:  center;
		grid-gap: 0 15px;
		grid-template-columns: 1fr auto;
		height: 100%;
	}
	header .navigation_menu .menu-header-container {
	}
	header .navigation_menu .menu {
		display: flex;
			justify-content: flex-end;
		grid-gap: .5em;
		height: 100%;
	}
	header .navigation_menu .menu > .menu-item {
		display: flex;
			align-items: center;
		padding: 0;
		position: relative;
	}
	header .navigation_menu .menu > .menu-item::before {
		content: '';
		display: block;
		margin: auto;
		position: absolute;
			top: 100%;
			left: 0;
		width: 100%;
		height: 0;
	}
	header .navigation_menu .menu > .menu-item:hover::before {
		height: 18px;
	}
	header .navigation_menu .menu > .menu-item > a {
		color: #fff;
		display: flex;
			align-items: center;
			justify-content: center;
		font-size: 1.4rem;
		font-weight: 500;
		line-height: 1.3;
		padding: .4em 1.5em;
		position: relative;
		text-align: center;
		width: 210px;
		height: 50px;
	}
	header .navigation_menu .menu > .menu-item.blueBtn > a {
		background: var(--blue);
	}
	header .navigation_menu .menu > .menu-item.greenBtn > a {
		background: var(--green);
	}
	header .navigation_menu .menu > .menu-item > a:hover {
		filter: brightness(1.15);
	}
	header .navigation_menu .menu > .menu-item > a::after {
		border: solid;
		border-width: 2px 2px 0 0;
		content: '';
		display: block;
		margin: auto;
		position: absolute;
			top: 0;
			right: .7em;
			bottom: 0;
		transform: rotate(45deg);
		width: .35em;
		height: .35em;
	}
	header .navigation_menu .sub-menu-outer {
		margin: auto;
		opacity: 0;
		pointer-events: none;
		position: fixed;
			top: 85px;
			left: 0;
			right: 0;
		width: 100%;
	}
	header .navigation_menu li.blueBtn .sub-menu-outer {
		background: rgba(var(--blue_rgb), .84);
	}
	header .navigation_menu li.greenBtn .sub-menu-outer {
		background: rgba(var(--green_rgb), .84);
	}
	/* header .navigation_menu .menu > li:first-child .sub-menu-outer {
		opacity: 1;
		height: auto !important;
		pointer-events: auto !important;
	} */
	header .navigation_menu .open .sub-menu-outer {
		opacity: 1;
		pointer-events: auto;
	}
	header .navigation_menu .sub-menu-outer::before {
		content: '';
		margin: auto;
		opacity: .6;
		pointer-events: none;
		position: absolute;
			top: 0;
			left: 0;
		width: 100%;
		height: 10px;
	}
	header .navigation_menu .sub-menu-outer > .sub-menu {
		margin: auto;
		padding: 50px 0;
		width: 94%;
			max-width: 1200px;
	}
	header .navigation_menu .sub-menu .main-menu-item {
		display: grid;
			grid-template-columns: 330px 1fr;
	}
	header .navigation_menu .sub-menu .menu-title {
		position: relative;
	}
	header .navigation_menu .sub-menu .menu-title a {
		border: solid 2px;
		color: #fff;
		font-size: 2.0rem;
		grid-template-columns: auto;
		height: 100%;
		position: relative;
	}
	header .navigation_menu .sub-menu .menu-title a::before {
		border: solid 1px;
		content: '';
		display: block;
		margin: auto;
		position: absolute;
			top: 5px;
			left: 5px;
		width: calc(100% - 12px);
		height: calc(100% - 12px);
	}
	header .navigation_menu .sub-menu .menu-title a::after {
		filter: brightness(0) invert(1);
		width: .9em;
		height: .9em;
	}
	header .navigation_menu .sub-menu .menu-title a:hover {
		background: rgba(255, 255, 255, .1);
	}
	header .navigation_menu .main-menu-item .sub-menu {
		display: grid;
			grid-gap: 1em 40px;
			grid-template-columns: repeat(2, 1fr);
		font-size: 1.5rem;
		padding: 0 40px;
	}
	header .navigation_menu .main-menu-item .sub-menu li {
		position: relative;
	}
	header .navigation_menu .main-menu-item .sub-menu a {
		color: #fff;
		display: block;
		padding: 0 1em .4em 0;
		position: relative;
		text-align: left;
	}
	header .navigation_menu .main-menu-item .sub-menu a::before {
		border-bottom: solid 1px #fff;
		content: '';
		display: block;
		margin: auto;
		position: absolute;
			bottom: 0;
			left: 0;
		transition: .2s ease-in-out;
		width: 100%;
		height: 0;
	}
	header .navigation_menu .main-menu-item .sub-menu a::after {
		border: solid;
		border-width: 2px 2px 0 0 ;
		content: '';
		margin: auto;
		position: absolute;
			top: 0;
			right: .2em;
			bottom: 0;
		transform: rotate(45deg);
		transition: .2s ease-in-out;
		width: .3em;
		height: .3em;
	}
	header .navigation_menu .main-menu-item .sub-menu a:hover {
		opacity: 1;
	}
	header .navigation_menu .main-menu-item .sub-menu a:hover::before {
		width: calc(100% + .3em);
	}
	header .navigation_menu .main-menu-item .sub-menu a:hover::after {
		transform: translateX(.3em) rotate(45deg);
	}

	header .navigation_menu .telBox .tel_link {
		font-size: 2.5rem;
	}
	header .navigation_menu .telBox .time {
		font-size: 1.02rem;
	}

	header .menu-outer {
		display: none;
	}
	header .menuBox {
		grid-template-columns: 40% 1fr;
	}
	header .menuBox .logoBox {
		padding: 40px;
		position: -webkit-sticky;
		position: sticky;
			top: 0;
	}
	header .menuBox .logoBox a {
		max-width: 400px;
	}
	header .menuBox .menu-outer {
		padding: 50px 30px;
	}
	header .menuBox .menu {
		display: grid;
			grid-gap: 3em;
	}
	header .menuBox .menu li {
		padding: 0;
	}
	header .menuBox .menu > li > a {
		font-size: 2.2rem;
		padding-right: 2em;
	}
	header .menuBox .menu > li > a:hover {
		color: var(--mainColor);
		opacity: 1;
	}
	header .menuBox .menu > li > a:hover::before {
		transform: translateX(.2em);
	}
	header .menuBox .menu > li > a:hover::after {
		transform: translateX(.2em) rotate(45deg);
	}

	header .menuBox .sub-menu-outer {
		height: auto !important;
		margin-top: .7em;
	}
	header .menuBox .sub-menu-outer ul {
		display: flex;
			flex-wrap: wrap;
			grid-gap: .7em 2em;
	}
	header .menuBox .sub-menu-outer ul li {
		width: auto;
	}
	header .menuBox .sub-menu-outer ul a {
		padding-left: 1.3em;
	}
	header .menuBox .sub-menu-outer ul a:hover {
		color: var(--mainColor);
		opacity: 1;
	}
	header .menuBox .sub-menu-outer ul a:hover::before {
		width: 1em;
	}
	header .menuBox li .sub-menu-btn {
		display: none;
	}
	header .menuBox .languageBox {
		display: block;
		position: fixed;
			top: 30px;
			left: calc(3vw + 200px);
	}
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:1280px) {
}

@media screen and (min-width:960px) and (max-width:1280px) {
	header .header_logo {
		justify-content: flex-start;
	}
}


@media screen and (min-width:1280px) {
	header .innerBox {
		grid-gap: 25px;
	}
	header .header_logo img {
		height: 50px;
	}
	header .navigation_menu .sub-menu-outer > .sub-menu {
		padding: 70px 0;
	}
	header .navigation_menu .sub-menu .menu-title {
	}
	header .navigation_menu .main-menu-item .sub-menu {
		grid-gap: 1em 70px;
    padding: 0 70px;
	}
	header .navigation_menu .sub-menu .main-menu-item {
		grid-template-columns: 355px 1fr;
	}
	header .navigation_menu .sub-menu .menu-title::before {
	}

	header .menuBox {
		grid-template-columns: 36% 1fr;
	}
	header .menuBox .sub-menu-outer ul {
		grid-gap: 1em 4em;
	}

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


/*====================================================
////id  loader
====================================================*/
.is-hide {
	display: none;
}
/* ローディング画面をフェードアウト */
.fadeout-bg {
	transition-property: opacity;
	transition-delay: .8s;
	transition-duration: 1.7s;
	opacity: 0;
	pointer-events: none;
}
/* ローダーをフェードアウト */
.fadeout-loader {
	transition-property: opacity;
	transition-delay: .8s;
	transition-duration: 1.7s;
	opacity: 0;
	pointer-events: none;
}
/* ローディング画面 */
#loader-bg {
	background: #fff;
	height: 100%;
	left: 0;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 9999;
}
#loader {
	height: 120px;
	left: 50%;
	margin-left: -60px;
	margin-top: -60px;
	position: fixed;
	top: 50%;
	width: 120px;
}


/*====================================================
////class .slick
====================================================*/
.slider{
  display: none;
}
.slick-track {
  display: flex;
	margin: auto;
}
.slick-slide {
  height: auto !important;
}
.slider.slick-initialized{
  display: block; /*slick-initializedが付与されたら表示*/
}
.slick-dotted {
}
.slick-dotted.slick-slider {
	margin-bottom: 40px;
	padding-bottom: 0px;
}
.slick-dots {
	display: flex;
		justify-content: center;
	height: 20px;
	margin: auto;
	position: absolute;
		left: 0;
		right: 0;
		bottom: -40px;
}
.slick-dots li {
	width: auto;
	height: auto;
	margin: 0 8px;
	padding: 0;
}
.slick-dots li::before {
	display: none;
}
.slick-dots li button {
	background: none;
  border: none;
	cursor: pointer;
	outline: none;
	overflow: hidden;
	padding: 0;
	position: relative;
  text-indent: -9999px;
	width: 20px;
	height: 20px;
}
.slick-dots li button:before {
	background: var(--w_purple);
	border-radius: 10px;
	content: '';
	margin: auto;
	opacity: 1;
	position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
	transition: .2s ease-in-out;
	width: 13px;
	height: 13px;
}
.slick-dots li.slick-active button:before {
	background: var(--mainColor);
	opacity: 1;
}

.slick-prev ,
.slick-next {
	background: url('img/cmn/arrow-blue.png') no-repeat center / contain;
	border: none;
	border-radius: 100%;
	margin: auto;
	opacity: .8;
	overflow: hidden;
	position: absolute;
		top: 0;
		bottom: 0;
	transition: .2s ease-in-out;
	width: 2em;
	height: 2em;
	z-index: 1000;
}
.color-green .slick-prev ,
.color-green .slick-next {
	background: url('img/cmn/arrow-green.png') no-repeat center / contain;
}
.slick-prev {
	left: 0;
	transform: rotate(180deg);
}
.slick-next {
	right: 0;
}
.slick-prev:hover ,
.slick-next:hover {
/*	background: #fff;*/
	opacity: 1;
}
.slick-prev {
	left: 0;
}
.slick-next {
	right: 0;
}

.slick-prev * {
	display: none;
}
/* .slick-prev:before ,
.slick-next:before {
	background: #fff;
	border: none;
	border-radius: 2px;
	content: '';
	margin: auto;
	position: absolute;
		left: 0;
		right: 0;
		top: calc(50% - 1px);
	transition: .2s ease-in-out;
	width: 13px;
	height: 2px;
}
.slick-prev:before {
	transform: rotate(-40deg);
	transform-origin: left top;
}
.slick-next:before {
	transform: rotate(40deg);
	transform-origin: right top;
}
.slick-prev:after ,
.slick-next:after {
	background: #fff;
	border: none;
	border-radius: 2px;
	content: '';
	margin: auto;
	position: absolute;
		bottom: 50%;
		left: 0;
		right: 0;
	transition: .2s ease-in-out;
	width: 13px;
	height: 2px;
}
.slick-prev:after {
	transform: rotate(40deg);
	transform-origin: left bottom;
}
.slick-next:after {
	transform: rotate(-40deg);
	transform-origin: right bottom;
} */
.slick-arrow.slick-disabled {
	opacity: 0;
}
.slick-list {
	overflow: hidden;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
	.slick-dots li {
		margin: 0 4px;
	}
	.slick-dots li button:before {
		width: 10px;
		height: 10px
	}
}

@media screen and (max-width:480px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {

}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
	/* .slick-prev {
		transform: scale(.8);
		transform-origin: left;
	}
	.slick-next {
		transform: scale(.8);
		transform-origin: right;
	} */
}

@media screen and (min-width:1550px) {
	.slick-prev ,
	.slick-next {
	}
	.slick-prev {
	}
	.slick-next {
	}
	.slick-prev::before ,
	.slick-prev::after ,
	.slick-next::before ,
	.slick-next::after {
		width: 14px;
	}
}

/*====================================================
////class .headBox
====================================================*/
.headBox {
	position: relative;
	z-index: 2;
}

.headBox .jp_en {
	display: grid;
	place-content: center;
	place-items: center;
}
.headBox .jp_en .jp {
	display: block;
	font-weight: 500;
	letter-spacing: .1em;
	line-height: 1.6;
}
.headBox .jp_en .en {
	color: var(--blue);
	display: inline-block;
	font-family: 'Oswald';
	font-size: .57em;
	font-weight: 500;
	letter-spacing: 0;
	line-height: 1.0;
	padding: 0 1.2em;
	position: relative;
}
#overseas_business #contents .headBox .jp_en .en {
	color: var(--green);
}
.headBox .jp_en .en::before ,
.headBox .jp_en .en::after {
	border-top: solid 1px;
	content: '';
	display: block;
	margin: auto;
	position: absolute;
		top: .6em;
	width: .8em;
	height: 0;
}
.headBox .jp_en .en::before {
	left: 0;
}
.headBox .jp_en .en::after {
	right: 0;
}

.headBox .en_jp .en {
	color: var(--gray);
	display: block;
	font-family: 'Oswald';
	font-size: .57em;
	font-weight: 500;
	margin-bottom: .5em;
	letter-spacing: 0;
	line-height: 1.0
}
.headBox .en_jp .jp {
	display: block;
	line-height: 1.6;
}

.headBox .side_deco {
  display: block;
  line-height: 1.4;
  padding-left: .7em;
  position: relative;
}
.headBox .side_deco::before {
  border: solid;
  border-width: .6em 0;
  border-top-color: var(--green);
  border-bottom-color: var(--blue);
  content: '';
  margin: auto;
  position: absolute;
    top: .2em;
    left: 0;
  width: .15em;
  height: 0;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
}

@media screen and (max-width:500px) {
	.headBox .en_jp .en {
	}
	.headBox .en_jp .jp {
	}
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
	.headBox .en_jp {
	}
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
}

@media screen and (min-width:960px) and (max-width:1280px) {
}

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

/*====================================================
////class コンタクトフォーム7
====================================================*/
.wpcf7-form .wpcf7-checkbox ,
.wpcf7-form .wpcf7-radio {
	display: flex;
		flex-wrap: wrap;
		grid-gap: .3em 1.2em;
}
.wpcf7-form .wpcf7-list-item {
	margin-left: 0;
}
.wpcf7-not-valid-tip {
	bottom: -7px;
	background: var(--red);
	color: #fff;
	display: inline-block;
	font-size: 1.2rem;
	font-weight: bold;
	margin-top: 10px;
	padding: 1px 10px 1px 15px;
	position: relative;
	text-align: center;
	width: 10em;
	white-space: nowrap;
}
.wpcf7-not-valid-tip:before {
	border: solid transparent;
	border-width: 0 5px 12px 5px;
	border-bottom-color: var(--red);
	content: '';
	margin: auto;
	position: absolute;
		top: -10px;
		left: 20px;
	width: 0;
	height: 0;
}

.wpcf7-spinner {
	display: none;
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
	border-color: var(--blue);
	margin: auto;
	max-width: 800px;
	padding: .5em 1em;
}


.item-100 .wpcf7-list-item {
	display: block;
	width: 100%;
}


/*====================================================
////class .formBox
====================================================*/

.formBox {
	margin: auto;
	font-size: .9em;
}
.formBox .whiteBox {
	background: var(--l_gray);
}
.formBox .formItem-outer {
	grid-gap: 1.5em;
}
.formBox .formItem {
	grid-gap: .5em 1em;
	width: 100%;
}
.formBox .formItem dt {
	font-weight: 500;
}
.formBox .required {
	border-radius: 2px;
	display: inline-block;
	font-size: .8em;
	line-height: 1;
	margin-left: 1em;
	padding: .25em .4em .3em;
}
.color-green .formBox .required {
	background: var(--green);
}
.formBox .formItem .mwform-tel-field {
	display: flex;
	margin-left: -3px;
	align-items: center;
}
.formBox .formItem .mwform-tel-field input{
	margin: 0 3px;
}
.formBox .formItem input[type="number"] {
	width: 100px;
}
.formBox .linkBtn {
	padding: 0 1.5em .3em 1.5em;
	transition: .2s ease-in-out;
}
.formBox .linkBtn {
	font-size: 1.5rem;
}

.formBox input[type="submit"].linkBtn {
	/* cursor: pointer;
	display: block;
	letter-spacing: .1em;
	margin: 0 auto;
	padding: 20px 35px;
	position: relative;
	transition: .2s ease-in-out;
	width: 100%;
	max-width: 300px;
	height: auto; */
}
.formBox .backBtn {
	/* margin-top: 30px; */
	position: relative;
}
.formBox .backBtn .linkBtn-small {
	padding: 0;
}
.formBox .backBtn .linkBtn-small:after {
	transform: rotate(-135deg);
	right: auto;
	left: 25px;
}
.formBox .backBtn .linkBtn-small:hover:after {
	left: 15px !important;
}
.formBox .backBtn input[type="submit"] {
	background: transparent;
	color: inherit;
	display: inline-block;
	font-size: 1.4rem;
	margin: 0 !important;
	min-width: 140px;
/*	padding: .2em 20px .1em 40px;*/
	transition: .2s ease-in-out;
}
.formBox .linkBtn:hover input {
}
.formBox dd {
	position: relative;
	text-align: left;
}
.formBox .h_radioBox {
	display: grid;
		grid-gap: 0 2em;
		grid-template-columns: auto 1fr;
}
.mw_wp_form .formBox .horizontal-item + .horizontal-item {
	margin-left: 0;
	display: block;
	/* margin: 5px 0; */
}
.formBox .consentBox {
	align-items: flex-start;
	max-width: 500px;
	margin: 1.5em auto;
	/*    font-size: 1.3rem;*/
}
.formBox .consentBox .checkBox {
	width: 1.5em;
}
.formBox .consentBox div {
	position: relative;
}
.formBox .consentBox .mwform-checkbox-field {
	display: block;
}
.formBox input[type="submit"] {
	background: var(--blue);
	border-radius: 0;
	color: #fff;
	display: block;
	font-weight: bold;
	margin: 2em auto 0;
	padding: 1em 3em;
	transition: .2s ease-in-out;
	min-width: 350px;
}
.formBox input[type="button"] {
	font-weight: bold;
}
.color-green .formBox input[type="submit"] {
	background: var(--green);
}
/*
.formBox .backBtn {
margin-top: -10px;
}
*/

.formQ {
	border-bottom: solid 1px var(--green);
	padding-bottom: 5px;
	margin-top:10px;
	margin-bottom: 5px;
}
.formQ--blue {
	border-bottom: solid 1px var(--blue);
}


/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
	.formBox .formItem dt {
		text-align: left;
		position: relative;
	}
	.formBox .formItem dd {
		text-align: left;
		width: 100%;
	}
	.mw_wp_form .formBox .error {
		/*		bottom: -2em;*/
		left: 0;
		padding-left: 1em;
	}
	#confirm .formBox dd {
		padding-left: 1em;
	}
	.formBox .consentBox {
		align-items: stretch;
		/* flex-direction: column; */
	}
	.formBox input[type="submit"] {
		min-width: 0;
		width: 100%;
	}
}

@media screen and (min-width:480px) and (max-width:769px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
	.formBox .formItem {
		align-items: center;
		grid-template: 'dt dd' / 230px 1fr;
	}
	.formBox .formItem.formItem--col {
		align-items: center;
		grid-template: 'dt' 'dd';
	}	
	.formBox .formItem dt p {
		display: grid;
			align-items: center;
			grid-template-columns: 1fr auto;
		position: relative;
	}
	.mw_wp_form_confirm .formBox dd {
		position: relative;
	}
	.mw_wp_form_confirm .formBox dd:after {
		position: absolute;
		content: '';
		right: 0;
		bottom: 0;
		width: calc(100% + 200px);
		height: 0;
		border-top: solid 1px #ccc;
	}
	/*
	.mw_wp_form_confirm .formBox dt:last-of-type:after {
	display: none;
}
	*/
	.formBox .formItem dd {
	}
	.mw_wp_form_confirm .formBox .formItem dt,
	.mw_wp_form_confirm .formBox .formItem dd {
		padding: 20px 0;
	}
	.formBox dd .dateBox {
		width: calc(50% - 5px);
	}
	.formBox .error {
	}
	.formBox .btn-outer:hover:before {
		left: 0;
	}
	.formBox input[type="submit"]:hover {
		filter: brightness(1.15);
	}
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
}

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

/*====================================================
////id #ui-datepicker-div
====================================================*/
#ui-datepicker-div.ui-widget-content {
	border-radius: 0;
	font-family: 'Kumbh Sans', "游ゴシック体 Medium", "YuGothic Medium", "游ゴシック Medium", "Yu Gothic Medium", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
}
#ui-datepicker-div .ui-widget-header {
	border: none;
	background: transparent;
}
#ui-datepicker-div.ui-datepicker .ui-datepicker-prev,
#ui-datepicker-div.ui-datepicker .ui-datepicker-next {
	cursor: pointer !important;
}
#ui-datepicker-div.ui-datepicker .ui-datepicker-prev:before,
#ui-datepicker-div.ui-datepicker .ui-datepicker-next:before {
	border: solid #000;
	content: '';
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	width: 12px;
	height: 12px;
	transform: rotate(45deg);
}
#ui-datepicker-div.ui-datepicker .ui-datepicker-prev:before {
	border-width: 0 0 1px 1px;
	left: 10px;
}
#ui-datepicker-div.ui-datepicker .ui-datepicker-next:before {
	border-width: 1px 1px 0 0;
	right: 10px;
}
#ui-datepicker-div .ui-widget-header .ui-state-hover,
#ui-datepicker-div .ui-widget-header .ui-state-focus {
	border: none;
	background: transparent;
}
#ui-datepicker-div.ui-datepicker .ui-datepicker-prev span,
#ui-datepicker-div.ui-datepicker .ui-datepicker-next span {
	display: none;
}
#ui-datepicker-div .ui-state-default,
#ui-datepicker-div .ui-widget-content .ui-state-default {
	background: #fff;
	border-color: #1792D4;
}
#ui-datepicker-div  {}
#ui-datepicker-div  {}
#ui-datepicker-div  {}
/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
}

@media screen and (max-width:500px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
}

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

/*====================================================
////class .wp-block-table
====================================================*/
table ,
.bodyText .wp-block-table table {
	border: solid var(--l_b_gray);
	border-width: 1px 0;
	border-collapse: collapse;
	border-spacing: 0;
	font-size: .9em;
	line-height: 1.6;
	vertical-align: middle;
	width: 100%;
}
table thead ,
.wp-block-table thead {
	border: none;
	/* border-bottom-width: 2px; */
}
table thead th ,
table tr td ,
.wp-block-table thead th ,
.wp-block-table tr td {
	background: #fff;
	border: none;
	padding: 1em 1.2em;
	vertical-align: middle;
}
table thead th ,
.wp-block-table thead th {
	background: rgba(var(--mainColor_rgb), .1);
	border-bottom: solid 2px var(--l_b_gray);
	margin-bottom: 2px
}
table thead th:not(th:last-child) ,
.wp-block-table thead th:not(th:last-child) {
}
table tbody tr:not(tr:first-child) td ,
.wp-block-table tbody tr:not(tr:first-child) td {
	border: solid var(--l_b_gray);
	border-width: 1px 0;
}
table th:nth-child(1) ,
.wp-block-table th:nth-child(1) ,
table td:nth-child(1) ,
.wp-block-table td:nth-child(1) {
	background: var(--w_blue);
}
.color-green table th:nth-child(1) ,
.color-green .wp-block-table th:nth-child(1) ,
.color-green table td:nth-child(1) ,
.color-green .wp-block-table td:nth-child(1) {
	background: var(--w_green);
}
table tbody td:not(td:last-child) ,
.wp-block-table tbody td:not(td:last-child) {
}
table tr td a ,
.wp-block-table tr td a {
	-webkit-text-decoration: underline dotted 1px;
	text-decoration: underline dotted 1px;
	text-underline-position: under;
	text-underline-offset: 0.2em;
}
table tr td .tel_link a ,
.wp-block-table tr td .tel_link a {
	color: inherit;
}

table tfoot ,
.wp-block-table tfoot {
	border: none;
}
table tfoot td ,
.wp-block-table tfoot td {
	border-top: solid 2px var(--l_b_gray);
	text-align: center;
}
table tfoot td:not(td:last-child) ,
.wp-block-table tfoot td:not(td:last-child) {
}
table figcaption ,
.wp-block-table figcaption {
	font-size: .8em;
	margin: .5em 0 0 1em;
}

/* table.responsive th,
.wp-block-table.responsive td:first-child {
	background: rgba(var(--mainColor_rgb), .05);
	background: var(--w_blue);
} */

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
	table thead th ,
	table tr td ,
	.wp-block-table thead th ,
	.wp-block-table tr td {
		padding: .7em 1em;
	}
}

@media screen and (max-width:500px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
}

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


/* ////////// mobile ////////// */
@media screen and (max-width: 768px) {
	table.responsive,
	.wp-block-table.responsive table ,
	table.responsive tbody,
	.wp-block-table.responsive table tbody,
	table.responsive tr,
	.wp-block-table.responsive table tr,
	table.responsive td,
	.wp-block-table.responsive table td {
		display: block;
	}
	table.responsive,
	.wp-block-table.responsive table {
		border: none;
	}
	table.responsive thead,
	.wp-block-table.responsive thead {
		display: none;
	}
	table.responsive tbody,
	.wp-block-table.responsive tbody {
		display: block;
	}
	table.responsive tr,
	.wp-block-table.responsive tr {
		background: #fff;
		margin-bottom: 15px;
		position: relative;
		width: 100%;
	}
	table.responsive th,
	.wp-block-table.responsive td:first-child {
		border: none;
		font-weight: bold;
		padding: 10px 15px;
		width: 100%;
	}
	table.responsive td,
	.wp-block-table.responsive td {
		border: none !important;
		/* padding: 15px 8px 15px 120px; */
		padding: 10px 15px;
		text-align: left;
		transition: .4s ease;
		width: 100%;
	}
	table.responsive td.price,
	.wp-block-table.responsive td.price {
		text-align: right;
	}
	table.responsive td:before {
		color: var(--black);
		content: attr(data-label);
		font-weight: normal;
		padding-top: .25em;
		position: absolute;
		left: 18px;
	}
}

@media screen and (max-width:500px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
	table.responsive td.blank .blank_line {
		background: #fff;
		display: block;
		margin: -8px auto -8px -12px;
		position: relative;
		width: 3px;
		height: calc(100% + 16px);
		z-index: 1;
	}

}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
}

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

/*====================================================
////class .tabBox
====================================================*/
.tabBox {
	overflow: hidden;
	position: relative;
}
.tabBox .tabArea {
	grid-gap: 4px;
	position: relative;
	z-index: 5;
}
.tabBox .tabArea li {
	background: var(--l_gray);
	border: solid 1px var(--gray);
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 1;
	height: 50px;
	line-height: 1.2;
	padding: 5px;
}
.tabBox .tabArea li.current {
	background: #fff;
	border-bottom-color: #fff;
	cursor: default;
	pointer-events: none;
}
.tabBox .tabArea li a {
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	width: 100%;
	height: 100%;
}
.tabBox .tabArea li.current a {
	pointer-events: none;
}
.tabBox .contentArea {
	background: #fff;
	border: solid 1px var(--gray);
	margin-top: -1px;
	position: relative;
	transition: .4s all;
}
.tabBox .contentArea .tab_content {
	transition: 1.2s all;
	transition-delay: .4s;
}
.tabBox .contentArea .tab_content:not(.current) {
	opacity: 0;
	pointer-events: none;
	position: absolute;
	transition: .6s all;
	transition-delay: 0;
	width: 100%;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 768px) {
	.tabBox .tabArea {
		display: flex;
	}
	.tabBox .tabArea .tab {
		flex: 1;
		font-size: 1.1rem;
		height: auto;
		min-height: 40px;
		padding: 6px 3px;
	}
	.tabBox .contentArea .tab_content {
		padding: 1.5em 1em;
	}
}

@media screen and (max-width:500px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
	.tabBox .contentArea .tab_content {
		padding: 2em;
	}
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:959px) {
}

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

/*====================================================
//// id mapBox
====================================================*/
.mapBox .box-inner {
	overflow: hidden;
	position: relative;
}
.mapBox iframe {
	margin: auto;
	position: absolute;
		top: -200px;
	width: 100%;
	height: calc(100% + 400px);
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
	.mapBox .box-inner {
		width: 100%;
		height: 90vw;
			max-height: 300px;
	}
}

@media screen and (max-width:580px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
	.mapBox .box-inner {
		width: 100%;
		height: 340px;
	}
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
}

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

/*====================================================
//// id faq_layout
====================================================*/
.faq_layout {
	display: grid;
}
.faq_layout .faqBox {
	grid-template-columns: auto 1fr;
}
.faq_layout .faqBox .alphabet {
	display: flex;
		align-items: center;
		justify-content: center;
	font-size: 1.25em;
	font-weight: bold;
	margin-right: 1em;
	letter-spacing: 0;
	line-height: 1;
	width: 2em;
	height: 2em;
}
.faq_layout dt .alphabet {
	background: var(--mainColor);
	color: #fff;
}
.faq_layout dt .faq_text {
	font-size: 1.125em;
	padding-top: .15em;
}
.faq_layout dd .alphabet {
	background: var(--yellow);
	color: var(--mainColor);
}
.faq_layout dd .faq_text {
	padding-top: .2em;
}
.faq_layout dd .accordion-inner {
	padding-bottom: 1em;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
	.faq_layout {
		grid-gap: 1.5em;
	}
	.faq_layout dd {
		margin-top: .8em;
	}
}

@media screen and (max-width:500px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
	.faq_layout {
		grid-gap: .5em;
	}
	.faq_layout dd {
		margin-top: .5em;
	}
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
}

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

/*====================================================
//// id cmn_contact
====================================================*/
#cmn_contact {
	position: relative;
	z-index: 10;
}
#cmn_contact .whiteBox {
	border-radius: 10px;
}
#cmn_contact .linkBox {
	border-bottom: solid 1px var(--l_b_gray);
	grid-gap: 1.2em 30px;
}
/* #cmn_contact .linkBtn {
	grid-template-columns: repeat(3, auto);
	font-size: 1.25em;
	max-width: 450px;
} */

/* ////////// 追加↓ ////////// */
#cmn_contact .linkBtn {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.25em;
	max-width: 450px;
}
#cmn_contact .linkBtn img{
	flex-shrink: 0;
}
#cmn_contact .linkBtn .text {
	flex-shrink: 1;
    flex-grow: 0;
    flex-basis: auto;
}
#cmn_contact .linkBtn.bg-blue::after, #cmn_contact .linkBtn.bg-green::after {
	margin: 0 0 0 0.7em;
	flex-shrink: 0;
}
/* ////////// 追加↑ ////////// */

#cmn_contact .telBox {
	border-width: 2px;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
	#cmn_contact .linkBox {
		margin-bottom: 2em;
		padding-bottom: 2em;
	}
	#cmn_contact .linkBtn {
		width: 100%;
	}
	#cmn_contact .telBox {
		border-radius: 15px;
		margin: auto;
		max-width: 450px;
		padding: 20px;
	}
	#cmn_contact .telBox .text {
		font-size: 1.4em;
	}
	#cmn_contact .telBox .no {
	}
	#cmn_contact .telBox .tel_link {
		font-size: 2.2em;
	}
	#cmn_contact .telBox .time {
		font-size: .8em;
	}
}

@media screen and (max-width:500px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
	#cmn_contact .linkBox {
		margin-bottom: 1.8em;
		padding-bottom: 1.8em;
	}
	#cmn_contact .telBox {
		border-radius: 100px;
		margin: auto;
		max-width: 750px;
		padding: 20px;
	}
	#cmn_contact .telBox .text {
		border-right: solid 1px var(--green);
		font-size: 2.2rem;
	}
	#cmn_contact .telBox .no {
	}
	#cmn_contact .telBox .tel_link {
		font-size: 3.0rem;
	}
	#cmn_contact .telBox .time {
		font-size: 1.1rem;
	}
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
}

@media screen and (min-width:1280px) {
	#cmn_contact .linkBox {
		grid-gap: 40px;
	}
}

/*====================================================
////class .pagetop
====================================================*/

.pagetop {
	display: none;
	position: fixed;
		bottom: 20px;
		right: 20px;
	transform: none !important;
	width: 50px;
	height: 50px;
	z-index: 1000;
	/*	border: solid 1px*/
}
.pagetop.stop {
	position: absolute;
	top: -70px;
	bottom: auto;
}
.pagetop a {
	border-radius: 100%;
	display: flex;
		align-items: center;
		justify-content: center;
	position: relative;
	opacity: .8;
	width: 100%;
	height: 100%;
}
.pagetop a .arrow {
	margin: 0;
	transform: rotate(-90deg);
	width: 100%;
	height: 100%;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
	.pagetop {
		right: 10px;
		bottom: 10px;
		width: 40px;
		height: 40px;
	}
}

@media screen and (min-width:480px) and (max-width:769px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
	.pagetop a:hover {
		opacity: 1;
	}
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
}

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

/*====================================================
////id footer
====================================================*/
footer {
	position: relative;
	z-index: 10;
}
footer .infoBox .txtBox img.logo2 {
	height: 3em;
	margin-top: 2em;
}
footer .menuBox {
	font-size: .875em;
	grid-gap: 30px;
	justify-content: flex-end;
}
footer .menuBox ul li {
	padding: .1em 0;
}
footer .menuBox ul li .sub_menu li {
	padding-left: 1.5em;
	position: relative;
}
footer .menuBox ul li .sub_menu li::before,
footer .menuBox ul li .sub_menu li::after {
	content: '';
	display: block;
	margin: auto;
	position: absolute;
		left: .3em;
}
footer .menuBox ul li .sub_menu li::before {
	border-left: solid 1px var(--gray);
	top: 0;
	width: 0;
	height: 100%
}
footer .menuBox ul li .sub_menu li:last-child::before {
	height: calc(50% - 1px);
}
footer .menuBox ul li .sub_menu li::after {
	border-top: solid 1px var(--gray);
	top: .9em;
	width: .5em;
	height: 0;
}
footer .other_menu .menu {
	display: flex;
		flex-wrap: wrap;
		grid-gap: 0 1em;
		justify-content: center;
	font-size: 1.4rem;
}
footer .other_menu .menu a {
	padding-right: 1.5em;
	position: relative;
}
footer .other_menu .menu a::after {
	background: url('img/cmn/arrow-blue.png') no-repeat center / contain;
	content: '';
	display: block;
	filter: brightness(.2) invert(0) grayscale(10);
	margin: auto;
	position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
	width: 1em;
	height: 1em;
}

footer .copyright {
	position: absolute;
		left: 0;
		right: 0;
		bottom: 2em;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
	footer .innerBox {
		text-align: center;
	}
	footer .innerBox .box-inner {
		display: inline-block;
		text-align: left;
	}

	footer .itemBox {
		grid-gap: 2em;
	}
	footer .logoBox img {
		max-width: 300px;
	}
	footer .infoBox h2 {
		font-size: 1.1em;
		line-height: 1.4;
		margin: 1em 0;
	}
	footer .infoBox .txtBox {
	}
	footer .menuBox {
		display: none;
	}
	footer .other_menu a {
		font-size: .9em;
		letter-spacing: 0;
	}
}

@media screen and (max-width:500px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
	footer .itemBox {
		grid-gap: 40px;
		grid-template-columns: auto 1fr;
		grid-template-rows: 1fr auto;
	}
	footer .infoBox {
		grid-row: span 2;
	}
	footer .logoBox img {
		width: 28vw;
			max-width: 400px;
	}
	footer .infoBox h2 {
		font-size: 1.7rem;
		line-height: 1.4;
		margin: 1em 0;
	}
	footer .infoBox .txtBox {
		font-size: .875em;
	}
}
/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
	footer .itemBox {
		grid-template-columns: 1fr;
	}
	footer .infoBox {
		margin: auto;
		width: 400px;
	}
	footer .menuBox {
		justify-content: center;
	}
}

@media screen and (min-width:960px) {
	footer .other_menu .menu {
		grid-gap: 2em;
		justify-content: flex-end;
	}
}

@media screen and (min-width:1280px) {
	footer .menuBox {
		grid-gap: 50px;
	}
}


.grecaptcha-badge { visibility: hidden; }

/*====================================================
//// id
====================================================*/

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
}

@media screen and (max-width:500px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
}

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


/* ▽ 100リンク 専用レイアウト */
.hundred-list {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

/* アイテム（カード）の幅指定：PCは3列 */
.hundred-list .item {
    width: calc(33.333% - 20px);
    box-sizing: border-box;
}

/* 画像をカード幅に合わせて揃える */
.hundred-list .imgBox,
.hundred-list .imgBox img {
    width: 100%;
    height: auto;
    display: block;
}

/* ▼ タブレット用：2列 */
@media (max-width: 1024px) {
    .hundred-list .item {
        width: calc(50% - 20px);
    }
}

/* ▼ スマホ用：1列 */
@media (max-width: 600px) {
    .hundred-list .item {
        width: 100%;
    }
}

.hundredcategory {
    display: block;
    text-align: left; 
}

.hundred-list .hundredcategory {
    font-size: 12px !important;
    line-height: 1.4 !important;
    color: #666 !important;
    display: block;
    margin-bottom: 6px;
}

.hundred-list .hundredcategory .cat-name {
    font-size: inherit !important;
    display: inline-block;
}

body.page-id-5921 .inb {
    display: revert !important;
}

