<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">* {
	box-sizing: border-box;
}

/* clearfix
---------------------------------------------------------*/

.clearfix:after {
  content: " "; 
  display: block; 
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*ﾂ･*//*/
  height: auto;
  overflow: hidden;
  /**/
}

/* clearfix
---------------------------------------------------------*/

.pc_none {
	display :none;
}

@media screen and (max-width: 768px) {
.pc_none {
	display :initial;
}
.sp_none {
	display :none;
}
}



.attn_left .h1_01 {
	position: absolute;
	top: -0.6em;
	font-size: 4vw;
	border-left: #285690 8px solid;
	padding: 0 0 0 0.5em;
	opacity: 0.5;
}

.attn_right .h1_01 {
	position: absolute;
	top: -0.6em;
	right : 0;
	font-size: 4vw;
	border-right: #285690 8px solid;
	padding: 0 0.5em 0 0 ;
	opacity: 0.5;
}

.h1_01:first-letter {
	color: #f00;
}

@media screen and (max-width: 768px) {
.attn_left .h1_01 ,
.attn_right .h1_01 {
	font-size: 6.5vw;
}
}

.h2_01 {
  position: relative;
  line-height: 1.4;
  padding:0.25em 1em;
  display: inline-block;
  top:0;
  text-align :center;
}

.h2_01:before, .h2_01:after { 
  position: absolute;
  top: 0;
  content:'';
  width: 8px;
  height: 100%;
  display: inline-block;
}
.h2_01:before {
  border-left: solid 1px #fff;
  border-top: solid 1px #fff;
  border-bottom: solid 1px #fff;
  left: 0;
}
.h2_01:after {
  content: '';
  border-top: solid 1px #fff;
  border-right: solid 1px #fff;
  border-bottom: solid 1px #fff;
  right: 0;
}

.h2_02 {
  position: relative;
  line-height: 1.4;
  padding:0.25em 1em;
  display: inline-block;
  top:0;
  text-align :center;
}

.h2_02:before, .h2_02:after { 
  position: absolute;
  top: 0;
  content:'';
  width: 8px;
  height: 100%;
  display: inline-block;
}
.h2_02:before {
  border-left: solid 1px #333;
  border-top: solid 1px #333;
  border-bottom: solid 1px #333;
  left: 0;
}
.h2_02:after {
  content: '';
  border-top: solid 1px #333;
  border-right: solid 1px #333;
  border-bottom: solid 1px #333;
  right: 0;
}

.h2_03 {
	position: relative;
	display: inline-block;
	padding: 0.5em 1em;
	font-weight: normal;
	background: #285690;
	color: #fff;
	margin: -2em 0 0 0;
}
.h2_03_br:after {
	content: "\A" ;
	white-space: pre;
}
.h2_03_se {
	display: block;
	font-size: 60%;
	text-decoration: overline;
}

.h2_04 {
	position: relative;
	display: inline-block;
	padding: 0.5em 1em;
	color :#285690;
}

.h2_04_br {
	font-size: 170%;
}

.h2_04_br:after {
	content: "\A" ;
	white-space: pre;
}
.h2_04_se {
	display: block;
	font-size: 60%;
	text-decoration: overline;
}

.h2_05_mr {
	position : relative;
	color: #285690;
	font-size: 300%;
	text-align: right;
	margin: 0.5em 15% 0 0;
	border-bottom: #285690 3px solid;
}

.h2_05_ml {
	position : relative;
	color: #285690;
	font-size: 300%;
	margin: 0.5em 0 0 15%;
	border-bottom: #285690 3px solid;
}

.h2_mini_left:after {
	position: absolute;
	top: 0%;
	left: 10%;
}

.h2_mini_right:after {
	position: absolute;
	top: 0%;
	right: 10%;
}

.h2_mini01:after {
	content: '';
	display: inline-block;
	background-image: url(../images/mini01.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	width: 120px;
	height: 97px;
}

.h2_mini02:after {
	content: '';
	display: inline-block;
	background-image: url(../images/mini02.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	width: 195px;
	height: 97px;
}

.h2_mini03:after {
	content: '';
	display: inline-block;
	background-image: url(../images/mini03.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	width: 123px;
	height: 130px;
}

.h2_mini04:after {
	content: '';
	display: inline-block;
	background-image: url(../images/mini04.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	width: 104px;
	height: 130px;
}

.h2_mini05:after {
	content: '';
	display: inline-block;
	background-image: url(../images/mini05.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	width: 120px;
	height: 121px;
}

.h2_mini06:after {
	content: '';
	display: inline-block;
	background-image: url(../images/mini06.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	width: 167px;
	height: 100px;
}

.h2_mini07:after {
	content: '';
	display: inline-block;
	background-image: url(../images/mini07.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	width: 120px;
	height: 97px;
}

.h2_mini08:after {
	content: '';
	display: inline-block;
	background-image: url(../images/mini08.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	width: 120px;
	height: 97px;
}


.h2_mini09:after {
	content: '';
	display: inline-block;
	background-image: url(../images/mini09.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	width: 120px;
	height: 97px;
}

.h2_mini10:after {
	content: '';
	display: inline-block;
	background-image: url(../images/mini10.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	width: 120px;
	height: 97px;
}

.h2_mini11:after {
	content: '';
	display: inline-block;
	background-image: url(../images/mini11.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	width: 120px;
	height: 97px;
}

.h2_mini12:after {
	content: '';
	display: inline-block;
	background-image: url(../images/mini12.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	width: 120px;
	height: 97px;
}
.h2_mini13:after {
	content: '';
	display: inline-block;
	background-image: url(../images/mini13.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	width: 120px;
	height: 97px;
}

.h2_mini14:after {
	content: '';
	display: inline-block;
	background-image: url(../images/mini14.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	width: 120px;
	height: 97px;
}

.h2_mini15:after {
	content: '';
	display: inline-block;
	background-image: url(../images/mini15.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	width: 120px;
	height: 97px;
}

.h2_mini16:after {
	content: '';
	display: inline-block;
	background-image: url(../images/mini16.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	width: 120px;
	height: 97px;
}

.h2_mini17:after {
	content: '';
	display: inline-block;
	background-image: url(../images/mini17.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	width: 120px;
	height: 97px;
}

.h2_mini18:after {
	content: '';
	display: inline-block;
	background-image: url(../images/mini18.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	width: 120px;
	height: 97px;
}

.h2_mini19:after {
	content: '';
	display: inline-block;
	background-image: url(../images/mini19.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	width: 120px;
	height: 97px;
}

@media screen and (max-width: 800px) {
.h2_05_mr, .h2_05_ml {
	font-size : 6vw;
}
	.h2_mini01:after {
		width: 20%;
		height: 120%;
	}
	.h2_mini02:after {
		width: 25%;
		height: 110%;
	}
	.h2_mini03:after {
		width: 20%;
		height: 120%;
	}
	.h2_mini04:after {
		width: 22%;
		height: 250%;
	}
	.h2_mini05:after {
		width: 25%;
		height: 220%;
	}
	.h2_mini06:after {
		width: 25%;
		height: 129%;
	}
	.h2_mini07:after,
	.h2_mini08:after,
	.h2_mini09:after,
	.h2_mini10:after,
	.h2_mini11:after,
	.h2_mini12:after,
	.h2_mini13:after,
	.h2_mini14:after,
	.h2_mini15:after,
	.h2_mini16:after,
	.h2_mini17:after,
	.h2_mini18:after,
	.h2_mini19:after {
		width: 20%;
		height: 120%;
	}
}

.h3_01 {
	display: inline-block;
	font-size: 125%;
	border-bottom: 1px dotted currentColor;
}

.h3_02 {
	text-align: center;
	max-width: 90%;
	margin: 1em auto;
	font-size: 150%;
	font-weight: 400;
	max-width: 500px;
	border-bottom: #285690 1px dashed;
}

.color-white {
	color :#fff;
}

.color-black {
	color :#000;
}

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

.block-center {
	display :block;
	margin : 0 auto;
	max-width: fit-content;
}

.text-right {
	text-align :right;
}

.text-left {
	text-align :left;
}

.text-big {
	font-size :130%;
}

.of-hidden {
	overflow: hidden;
}

.btn01 {
	display: inline-block;
	text-align: center;
	padding: 1em 2em;
	text-decoration: none;
	color: #fff;
	border: solid 1px #fff;
	border-radius: 3px;
	transition: .4s;
}

.btn01:hover {
	background: #285690;
	color: white;
}

.btn02 {
	display: inline-block;
	text-align: center;
	padding: 1em 2em;
	text-decoration: none;
	color: #333;
	border: solid 1px #333;
	border-radius: 3px;
	transition: .4s;
}

.btn02:hover {
	background: #285690;
	border: solid 1px #fff;
	color: white;
}

.bg_grey {
	background-color : #ccc!important;
}

.bg_grayish_white {
	background-color : #f2f2f2!important;
}

.bg_blue {
	background-color: #285690!important;
}

.bg_blue_trans {
	background: rgba(40,86,144,0.8)!important;
	color :#fff;
}

.bg_white {
	background-color: #fff!important;
}

.bg_white_trans {
	background: rgba(255,255,255,0.8)!important;
}


.bg_pale {

	background: #fffceb;

}

/* 險倅ｺ句�繝ｪ繧ｹ繝�
---------------------------------------------- */

.post ol {
    background: #eee;
    padding: 1em 1em 1em 3em;
    max-width: 90%;
    margin: 1em auto;
}

.post ul {
    background: #eee;
    padding: 1em;
    max-width: 90%;
    margin: 1em auto;
}

/* 豌ｴ蟷ｳ邱�
---------------------------------------------- */

.hr_dotted {
	border-bottom : #ccc 1px dotted;
}

.hr_cl {
	border-bottom : #ccc 1px dotted;
	clear: both;
}

/* 蠖灘�div縺薙％縺九ｉ 笆ｽ笆ｽ
---------------------------------------------- */

.divide_wrap {
	display :table;
	position :relative;
	width: 100%;
	max-width :1200px;
	margin :0 auto 0 auto;
	table-layout: fixed;
}

.divide02,.divide03,.divide04,.divide05,.divide06,.divide07,
.divide_sv_wrap ,
.divide_sv04 {
	display :table-cell;
	vertical-align:top;
}

.divide02 {
	width : 50% ; 
}

.divide03 {
	width : 33.33333% ; 
}

.divide04 {
	width : 25% ; 
}

.divide05 {
	width : 20% ; 
}

.divide06 {
	width : 16.66666% ; 
}

.divide07 {
	width : 14.28571% ; 
}

@media screen and (max-width: 768px) {
.divide02,.divide03,.divide04,.divide05,.divide06,.divide07 {
	display :block;
	width :100%;
}
}

.divide_sv_wrap {
	width : 50%;
}

.divide_sv04 {
	width : 25% ; 
}

@media screen and (max-width: 768px) {
.divide_sv_wrap {
	display :block;
	width : 100%;
}
.divide_sv04 {
	width : 50% ; 
}
}

/* 蠖灘�div縺薙％縺ｾ縺ｧ 笆ｳ笆ｳ
---------------------------------------------- */

.f-right {
	float : right!important;
}

.f-none {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
}

@media screen and (max-width: 768px) {
	.f-right {
		float : right!important;
	}
}

.pad01 {
	padding :1em;
}

.pad_tb01 {
	padding :1em 0;
}

.pad_tb02 {
	padding :2em 0;
}

.pad_tb03 {
	padding :3em 0;
}

/* 繝｢繝ｼ繝繝ｫ繧ｦ繧｣繝ｳ繝峨え 笆ｽ笆ｽ
---------------------------------------------- */

.modal-wrapper {
  z-index: 999;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 60px 10px;
  text-align: center
}

.modal-wrapper:not(:target) {
  opacity: 0;
  visibility: hidden;
  transition: opacity .3s, visibility .3s;
}

.modal-wrapper:target {
  opacity: 1;
  visibility: visible;
  transition: opacity .4s, visibility .4s;
}

.modal-wrapper::after {
  display: inline-block;
  height: 100%;
  margin-left: -.05em;
  vertical-align: middle;
  content: ""
}

.modal-wrapper .modal-window {
	box-sizing: border-box;
	display: inline-block;
	z-index: 20;
	position: relative;
	width: 80%;
	max-width: 1200px;
	padding: 30px 30px 15px;
	border-radius: 2px;
	background: #fff;
	box-shadow: 0 0 30px rgba(0, 0, 0, .6);
	vertical-align: middle;
}

.modal-wrapper .modal-window .modal-content {
	max-height: 80vh;
	overflow-y: auto;
}

.modal-overlay {
  z-index: 10;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, .8)
}

.modal-wrapper .modal-close {
  z-index: 20;
  position: absolute;
  top: 0;
  right: 0;
  width: 35px;
  color: #95979c !important;
  font-size: 20px;
  font-weight: 700;
  line-height: 35px;
  text-align: center;
  text-decoration: none;
  text-indent: 0
}

.modal-wrapper .modal-close:hover {
  color: #2b2e38 !important
}

.home-header {
	overflow: hidden;
}

.home-catch {
	position: relative;
	min-height: 100vh;
	width: 70%;
	margin-left: 30%;
}

@media screen and (max-width: 768px) {
.home-catch {
	width: 100%;
	margin-left: 0;
}
}


.home-catch video {
	position: relative;
	display: block;
	min-height: 100vh;
	min-width: 100%;
	z-index: 0;
}

@media screen and (max-width: 500px) {
	.home-catch {
		height: 60vh;
		min-height: 60vh;
	}
	.home-catch video {
		height: 60vh;
		min-height: 60vh;
	}
}

.video-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0.2;
	background-color: #eee;
	background-image: linear-gradient(0deg, black 25%, transparent 70%, transparent 75%, black 75%, black), linear-gradient(0deg, black 25%, transparent 70%, transparent 75%, black 75%, black);
	background-size: 1px 6px;
	background-position: 0 0, 30px 30px;
}


.site-logo {
	padding: 0px 0 0 30px;
}

@media screen and (max-width: 768px) {
.site-logo {
	padding: 0;
	width :60%;
}
}

.home-news {
	position: absolute;
	bottom: 0;
	background: rgba(0,0,0,0.8);
	width: 100%;
	list-style: none;
	margin: 0;
	padding: 0.5em 0;
}

.home-news li {
	color :#fff;
	margin-left :3em;
}

.home-news-title {
	width :15%;
	float :left;
	text-align :center;
	border :#fff 3px solid;
	padding: 25px 20px;
}

.home-news-text {
	padding-left: 20%;
}


.home-news li a {
	color :#fff;
	font-size: smaller;
	text-decoration: none;
}

@media screen and (max-width: 768px) {
	.home-news li {
		margin-left: 1em;
	}
	.home-news-title {
		width: 22%;
		padding: 24px 13px;
	}
	.home-news-text {
		padding-left: 25%;
	}
}

.catch-copy {
	position: absolute;
	bottom: 8%;
	right: 5%;
	font-size: 6vw;
	color: #fff;
	border: #fff 7px solid;
	padding: 20px;
}

.catch-img {
	position: absolute;
	top: -48%;
	left: 0;
}

@media screen and (max-width: 768px) {
.catch-copy {
	top :50%;
	left :50%;
	transform: translate(-50%, -50%);
	bottom : auto;
	right : auto;
}
}

/* --------------------------home-header-slider-------------------------- */
.home-header-content {
	position: absolute;
	bottom: 20%;
	width: 35%;
	max-width : 620px;
}

@media screen and (max-width: 768px) {
	.home-header-content {
		position: relative;
		bottom: auto;
		width: 100%;
		max-width :100%;
	}
}

.home-header-slider {
	position: relative;
	margin: 0 auto;
	background:#ddd;
	padding-bottom: 66%;/* 逕ｻ蜒上�豈皮紫縺ｫ繧医ｊ螟画峩 */
}

.slider_content {
	position: absolute;
}

.slider_content {
	width: 100%;
	height: auto;
	opacity:0;
	/* 譫壽焚縺ｫ繧医ｊ譎る俣螟画峩 */
	-moz-animation: slideFade 18s infinite;
	-webkit-animation: slideFade 18s ease-in infinite;
	animation: slideFade 18s infinite;
}

#slide-img01 {
	-moz-animation-delay: 0s;
	-webkit-animation-delay: 0s;
	animation-delay: 0s;
}

#slide-img02 {
	-moz-animation-delay: 6s;
	-webkit-animation-delay: 6s;
	animation-delay: 6s;
}

#slide-img03 {
	-moz-animation-delay: 12s;
	-webkit-animation-delay: 12s;
	animation-delay: 12s;
}

/* 逕ｻ蜒上�譫壽焚縺ｫ繧医ｊ繝輔ぉ繝ｼ繝峨�蜉ｹ譫懆ｪｿ謨ｴ */
@-webkit-keyframes slideFade {
	0% { opacity:0; }
	7% { opacity:1;
		z-index:20;}
	30% { opacity:1; }
	40% { opacity:0; }
	100% { opacity:0; }
}
@-moz-keyframes slideFade {
	0% { opacity:0; }
	7% { opacity:1; 
		z-index:20;}
	30% { opacity:1; }
	40% { opacity:0; }
	100% { opacity:0; }
}
@keyframes slideFade {
	0% { opacity:0; }
	7% { opacity:1; 
		z-index:20;}
	30% { opacity:1; }
	40% { opacity:0; }
	100% { opacity:0; }
}

.slider_content figcaption {
	position: absolute;
	top: 0;
	left: 0;
	padding: 0.5em 1em;
	border-right: #fff 3px solid;
	border-bottom: #fff 3px solid;
	color: #fff;
	background: rgba(0,0,0,0.5);
}

/* --------------------------home-header-slider-------------------------- */

.top-catch {
	position :relative;
	background :url(../images/catch_bg01.jpg) center center no-repeat;
	background-size: cover;
	background-attachment: fixed;
	padding: 25vh 1em;
	color : #fff;
	text-align : center;
}

.top-catch h1 {
	font-size :300%;
	text-shadow: 0 0 10px #000, 0 0 10px #000, 0 0 10px #000, 0 0 10px #000;
}

.top-catch h2 {
	font-size :150%;
	text-shadow: 0 0 10px #000, 0 0 10px #000, 0 0 10px #000, 0 0 10px #000;
}

.top-catch_description {
	font-size :130%;
	text-shadow: 0 0 10px #000, 0 0 10px #000, 0 0 10px #000, 0 0 10px #000;
	max-width: 440px;
	margin: 0 auto;
}

.top-catch .btn01 {
	text-shadow: 0 0 10px #000, 0 0 10px #000;
}

.top-catch .btn01:hover {
	text-shadow: none;
}

.anniversary_img {
	position: absolute;
	top: -130px;
	left: 5%;
	width: 18%;
}

@media screen and (max-width: 896px) {
	.top-catch {
		background-attachment: initial;
		padding: 1em;
	}
	
	.anniversary_img {
		position : relative;
		top : auto;
		left : auto;
		width :40%;
		margin : 0 auto;
	}
}

.sec_wrap {
	max-width :1400px;
	margin : 0 auto;
}

.attn {
	width :100%;
	position :relative;
}

.attn01 {
	background : url(../images/attn_bg01.jpg) center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.attn02 {
	background : url(../images/attn_bg02.jpg) center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.attn03 {
	background : url(../images/attn_bg03.jpg) center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.attn_left {
	width: 70%;
	padding: 3em 0;
	margin : 5em 0;
}

.attn_right {
	width: 70%;
	margin: 0 0 0 auto;
	padding: 3em 0;
}

.attn_left .attn_content {
	width: 70%;
	padding: 1em 2em;
	margin: 0 -43% 0 auto;
}

.attn_content {
	max-width :560px;
}

.attn_right .attn_content {
	width: 70%;
	padding: 1em 2em;
	margin: 0 auto 0 -43%;
}

.attn_content figure {
	max-width: 400px;
	margin: 0 auto;
}

@media screen and (max-width: 768px) {
	.attn_left {
		width: 100%;
		margin :0;
	}
	
	.attn_right {
		width: 100%;
		margin: 0;
	}
	.attn_left .attn_content {
		width : 90%;
		margin: 1em auto;
	}
	
	.attn_right .attn_content {
		width : 90%;
		margin: 1em auto;
	}
}

.page-wrap {
	margin-top :7.5%;
}

.content01 {
	padding-bottom: 3em;
}

.content02 {
	position: relative;
	max-width :1200px;
	margin :0 auto;
	padding: 3em 0;
}

.content02:after {
	position: absolute;
	top: 0;
	right: 40px;
	content: '';
	height: 100%;
	border-right: rgba(220,220,220,0.8) 2px solid;
}

@media screen and (max-width: 768px) {
.content02:after {
	display :none;
}
}

.content03 {
	max-width :1000px;
	margin :0 auto;
	padding: 3em 0;
	overflow :hidden;
}

.content04 {
	max-width :1200px;
	margin :0 auto;
	padding: 3em 0;
	overflow :hidden;
}

.content05 {
	max-width :1000px;
	margin :0 auto;
	padding: 3em 0;
	overflow :hidden;
	text-align: right;
}

.content06 {
	max-width :auto;
	margin :0 auto;
	padding: 1em 0 0;
	overflow :hidden;
}

.c-bnr {
	max-width :768px;
	padding : 1em;
	margin : 0 auto;
}

.c-bnr a:hover {
	opacity :0.8;
}

/* --------------------------link_list-------------------------- */

.link-list01 {
    max-width: 600px;
    margin: 1em auto;
    padding: 1em;
    list-style: none;
    border: #ccc 1px solid;
}

.link-list01 li {
    border-bottom: #ccc 1px dashed;
    margin-bottom : 0.5em;
}

.link-list01 li .children li {
    border-bottom: none;
}


/* --------------------------float_list-------------------------- */

.text_list01 {
	list-style :none;
}

.text_list01 li {
	margin :1em 1em 1em 2em;
}

.text_list01 .tl_title {
	font-size: 130%;
	font-weight: 500;
	margin : 1em;
}

.table_text_list01 {
	list-style :none;
	margin: 1em;
}

.table_text_list01 li {
	padding-left : 1em;
	white-space: nowrap;
}

.table_text_list01 .ttl_title {
	padding-left :0;
	font-weight: 600;
}

.float_list03 {
	list-style: none;
	max-width: 1200px;
	margin: 0 auto;
}

.float_list03 li {
	width: 33.3%;
	float: left;
	padding: 1em;
}

.float_list03 li figure {
	position: relative;
	text-align :center;
}

.float_list03 li figcaption {
	position: absolute;
	bottom: 0;
	width: 100%;
	padding: 1em;
	color: #fff;
	background: rgba(0,0,0,0.7);
}

@media screen and (max-width: 768px) {
	.float_list03 li {
		width: 50%;
		padding: 0.5em;
	}
	.float_list03 li figcaption {
		padding: 0.5em 0;
	}
}

.float_list05 {
	list-style: none;
	max-width: 1200px;
	margin: 0 auto;
}

.float_list05 li {
	width: 20%;
	float: left;
	padding: 1em;
}

.float_list05 li figure {
	position: relative;
	text-align :center;
}

.float_list05 li figcaption {
	position: absolute;
	bottom: 0;
	width: 100%;
	padding: 1em;
	color: #fff;
	background: rgba(0,0,0,0.8);
}

@media screen and (max-width: 768px) {
	.float_list05 li {
		width: 50%;
		padding: 0.5em;
	}
	.float_list05 li figcaption {
		padding: 0.5em 0;
	}
}

.float_list06 {
	list-style: none;
	max-width: 1200px;
	margin: 0 auto;
}

.float_list06 li {
	width: 16.6%;
	float: left;
	padding: 1em;
}

.float_list06 li figure {
	position: relative;
	text-align :center;
}

.float_list06 li figcaption {
	position: absolute;
	bottom: 0;
	width: 100%;
	padding: 1em;
	color: #fff;
	background: rgba(0,0,0,0.8);
}

@media screen and (max-width: 768px) {
	.float_list06 li {
		width: 25%;
		padding: 0.5em;
	}
	.float_list06 li figcaption {
		padding: 0.5em 0;
	}
}
/* --------------------------history-list-------------------------- */

.history-list {
	display: table;
	width: 100%;
}

.history-list dt {
	position : relative;
	display: table-cell;
	border-right: #ccc 1px solid;
	width: 20%;
	text-align: right;
	vertical-align: middle;
	padding: 1em;
	font-weight: 400;
	white-space: nowrap;
}

@media screen and (max-width: 768px) {
	.history-list dt {
		padding: 10px;
		font-size: small;
	}
}

.history-start {
	position: absolute;
	top: -3em;
	right: -45px;
}

@media screen and (max-width: 768px) {
	.history-start {
		right: -35px;
	}
}

.history-start_wrap:before {
	content: "笆ｼ";
	position: absolute;
	top: -19px;
	right: -8px;
	font-size: 16px;
	color: #ccc;
}

.history-tbc {
	position: absolute;
	bottom: -3em;
	right: -60px;
}

@media screen and (max-width: 768px) {
	.history-tbc {
		right: -50px;
	}
}

.history-tbc_wrap:before {
	content: "笆ｼ";
	position: absolute;
	bottom: -19px;
	right: -9px;
	font-size: 16px;
	color: #ccc;
}

.history-list dd {
	display: table-cell;
	position : relative;
	width: 80%;
	padding: 2em 1em 2em 50px;
	border-bottom: #ccc 1px solid;
}

.history-list dd:before {
	position: absolute;
	bottom: -11px;
	left: 24px;
	width: 0px;
	height: 70px;
	content: '';
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	border-width: 0 0 0 1px;
	border-style: solid;
	border-color: #ccc;
}

.history-list dd:after {
	position: absolute;
	left: 0;
	bottom: -1px;
	width: 48px;
	height: 1px;
	content: '';
	border-width: 0 0 1px 0;
	border-style: solid;
	border-color: #fff;
}

.history-img {
	position: absolute;
	bottom: 20px;
	right: 0;
	padding: 10px;
	border: #ccc 1px solid;
	background: #fff;
	max-width: 350px;
}

@media screen and (max-width: 1050px) {
.history-img {
	max-width: 300px;
}
}

@media screen and (max-width: 900px) {
.history-img {
	max-width: 250px;
}
}

.history-img:after {
	position: absolute;
	left: 50%;
	bottom: -21px;
	width: 1px;
	height: 20px;
	content: '';
	border-width: 0 1px 0 0;
	border-style: solid;
	border-color: #ccc;
}

.history-img:before {
	position: absolute;
	left: 48.7%;
	bottom: -31px;
	content: '笳�';
	font-size: 11px;
	color: #ccc;
}

.history-img figcaption {
	text-align: center;
	padding: 5px 0 0 0;
	font-size: small;
}

@media screen and (max-width: 768px) {
	.history-img {
		position: relative;
		bottom: auto;
		right: auto;
		max-width: 300px;
		margin: 0.5em auto 0 auto;
	}
	.history-img:after {
		bottom: -26px;
		height: 25px;
	}
	.history-img:before {
		bottom: -40px;
	}
}

/* --------------------------flex_list-------------------------- */

.flex_list06 {
	display : flex;
	flex-wrap: wrap;
	list-style: none;
	max-width: 1200px;
	margin: 0 auto;
}

.flex_list06 li {
	display: flex;
	width: 16.6%;
	padding: 1em;
	text-align: center;
}

@media screen and (max-width: 768px) {
	.flex_list06 li {
		width: 33.3%;
	}
	.flex_list06 li {
		padding: 0.5em;
	}
}

.round-list {
  display: flex;
  justify-content: center;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .round-list {
    flex-wrap: wrap;
  }
}
.round-list_item {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #285690;
  border-radius: 50%;
  color: #fff;
  line-height: 1.4;
  font-weight: bold;
  text-align: center;
}
@media screen and (min-width: 768px) {
	.round-list_item {
	    flex-shrink: 0;
	    width: 200px;
	    height: 200px;
	    margin: 0 10px;
	    font-size: 1.5em;
	}
}
@media screen and (max-width: 767px) {
  .round-list_item {
    width: 97px;
    height: 97px;
    margin: 0 1.33333%;
    font-size: 1.3rem;
  }
}

/* --------------------------definition_list-------------------------- */

.definition_list01 {
	padding :2em 1em 1em 1em;
}

.definition_list01 dt {
	display: inline-block;
	width: 8em;
	text-align: center;
	color: #fff;
	font-weight: 500;
	background: #295690;
	padding: 0.2em 1em;
	border-radius: 50px;
	float: left;
	margin-top: -1em;
}

.definition_list01 dd {
	background :#fff;
	padding: 1em 1em 1em 8em;
	border: #ccc 1px solid;
}

@media screen and (max-width: 500px) {
.definition_list01 dt {
    width: 100%;
    border-radius: unset;
    float: none;
    margin-top: 0;
}
.definition_list01 dd {
    padding: 1em;
    margin: 0.5em 0 1em 0;
    border: none;
}
}

.definition_list02 {
	padding :2em 1em 1em 1em;
}

.definition_list02 dt {
	width: 35%;
	text-align: right;
	float: left;
	padding: 0.5em 1em 0.5em 0.5em;
	margin: 0;
}

.definition_list02 dd {
	padding: 0.5em 0.5em 0.5em 35%;
	margin: 0;
}

.definition_list03 {
	display: inline-block;
	padding: 1em;
	width: 49%;
}

.definition_list03 dt {
	font-size :130%;
	font-weight: 500;
}

.definition_list03 .text-right {
	margin-right: 2em;
}

@media screen and (max-width: 768px) {
	.definition_list03 {
		display :block;
		width: 100%;
	}
}

.definition_list04 {
	padding :2em 1em 1em 1em;
}

.definition_list04 dt {
	width: 64%;
	text-align: right;
	float: left;
	padding: 0.5em 1em 0.5em 0.5em;
	margin: 0;
}

.definition_list04 dd {
	padding: 0.5em 0.5em 0.5em 35%;
	margin: 0;
}

.definition_memo01 {
	width: 80%;
	margin: 1em auto;
	border: #285690 2px solid;
}

.definition_memo01 dt {
	background: #285690;
	color: #fff;
	text-align: center;
	padding: 0.5em;
	margin-bottom: 1em
}

.definition_memo01 dd {
	margin: 0 0 1em 1.5em;
}

/* --------------------------繧ｳ繝ｳ繝�Φ繝�-------------------------- */

.site-main {
	padding :1em;
}

.icon-wrap {
	width: 100%;
	border : #fff 2px solid;
	border-radius : 2px;
	color : #fff;
	padding: 2em 1em 0 1em;
}

.icon-wrap i {
	font-size : 150%;
}

.icon-wrap:hover {
	color : #285690;
	background :#fff;
}

@media screen and (max-width: 768px) {
	.icon-wrap {
		font-size: smaller;
		padding: 2em 0.5em 0 0.5em;
	}
}

.news-list {
	border-bottom: #666 2px dotted;
	margin-bottom: 1em;
}

.post-link {
	color : #666;
}

.news-list-title {
	margin : 0;
}

.news-list-tn {
	max-width: 200px;
	max-height: 120px;
	overflow: hidden;
	float: left;
	padding: 1em 1em 0 1em;
	margin-bottom: 1em;
}

.news-list-tn img {
	display : block;
}

/* --------------------------SNS繧｢繧､繧ｳ繝ｳ逕ｨ-------------------------- */

.sns-list {
    margin: 1em auto;
    width: fit-content;
}

.sns-list li {
    display: contents;
    list-style: none;
    font-size: 200%;
}

.sns-list li a {
    color: #444;
}

/* --------------------------莠区･ｭ驛ｨ譯亥�-------------------------- */

@keyframes hc_wrap_fade {
	0% {
	opacity: 0;
	}
	90% {
	opacity: 0;
	}
	100% {
	opacity: 1;
	}
}

.hc_wrap_tp {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	z-index: -1;
	background : url(../images/hc_wrap_tp01.jpg) 0 0 repeat;
	background-size : auto 100vh;
	animation-name: hc_wrap_fade;
	animation-duration: 4s;
}

.hc_wrap_wh {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	z-index: -1;
	background : url(../images/hc_wrap_wh01.jpg) 0 0 repeat;
	background-size : auto 100vh;
	animation-name: hc_wrap_fade;
	animation-duration: 4s;
}
 
.header_catch_tp ,.header_catch_wh ,.header_catch_tm {
	position : relative;
	height :100vh;
}

.header_catch_tp h1, .header_catch_wh h1, .header_catch_tm h1 {
    position: absolute;
    top: 50%;
    right: 0;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
    font-size: 4.5vw;
    color: #285690;
    background: rgba(255,255,255,0.8);
    padding: 0.5em;
	z-index :99;
}


@media screen and (max-width: 600px) {
	.header_catch_tp h1, .header_catch_wh h1, .header_catch_tm h1 {
		font-size :4vw;
		top: 40%;
		right: 50%;
		-webkit-transform: translate(50%, -50%);
		transform: translate(50%, -50%);
	}
}

@media screen and (max-width: 500px) {
	.header_catch_tp h1, .header_catch_wh h1, .header_catch_tm h1 {
		font-size :150%;
	}
}

.header_catch_tp {
	background : url(../images/header_catch_tp_bg01.jpg) 0 0 no-repeat;
	background-size : auto 100vh;
	overflow : hidden;
}

.header_catch_wh {
	background : url(../images/header_catch_wh_bg01.jpg) 0 0 no-repeat;
	background-size : auto 100vh;
	overflow : hidden;
}

.header_catch_tm {
	width : 100%; 
	top: 0 ; 
	left : 0; 
	background : url(../images/hc_wrap_tm01.jpg);
	background-position:center;  
	-moz-background-size:cover;
	-o-background-size:cover;
	-webkit-background-size:cover;
	background-size:cover;
}

.header_catch_none {
	position : relative;
	width : 100%;
	top: 0 ; 
	left : 0; 

}

@media screen and (max-width: 768px) {
	.header_catch_tp {
	}
}

.cs-scroll {
	position: absolute;
	bottom: 5%;
	left: 50%;
	text-align: center;
	padding: 1em;
	width: 100px;
	height: 100px;
	transform: translate(-50%, 0);
	color: #fff;
	background: rgba(0,0,0,0.5);
	border: #fff 3px solid;
	border-radius: 50%;
	z-index :99;
}

@media screen and (max-width: 768px) {
.cs-scroll {
	width: 10vw;
	height: 10vw;
	font-size: 1.7vw;
}
}


@media screen and (max-width: 600px) {
	.cs-scroll {
		width: 50px;
		height: 50px;
		font-size: 13px;
	}
	.cs-scroll span {
		display :none;
	}
}

@keyframes tp_line {
	0% {
	fill-opacity: 0;
	stroke-dashoffset: 2000;
	}
	30% {
	stroke-dashoffset: 1500;
	}
	60% {
	fill-opacity: 0;
	stroke-dashoffset: 1000;
	}
	90% {
	fill-opacity: 0.5;
	stroke-dashoffset: 0;
	}
	100% {
	fill-opacity: 0;
	stroke-dashoffset: 0;
	}
}

@keyframes hc_anime_bg {
	0% {
	opacity: 1;
	}
	90% {
	opacity: 1;
	}
	100% {
	opacity: 0;
	}
}

.header_catch_svg {
	width :auto;
	height :100vh;
	background :#fff;
	animation-name: hc_anime_bg;
	animation-duration: 4s;
	opacity: 0;
}

@media screen and (max-width: 768px) {
.header_catch_svg {
	width: unset;
	height: -webkit-fill-available;
}
}

.cls-1 {
	stroke: #1b1464;
	stroke-dasharray: 2000;
	stroke-dashoffset: 2000;
	stroke-width: 1;
	animation-name: tp_line;
	animation-duration: 4s;
	animation-timing-function: ease-out;
	fill-opacity: 0;
}

.header_catch_recruit-green {
	position : relative;
	max-width: 2000px;
	height :100vh;
	margin: 0 auto;
	background : url(../images/recruit-green.jpg?20250616) left bottom no-repeat;
	background-size: cover;
}

.header_catch_recruit-green h1 {
    position: absolute;
    top: 50%;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
    font-size: 4.5vw;
    color: #285690;
    background: rgba(255,255,255,0.8);
    padding: 0.5em;
	z-index :99;
}

.header_catch_4th-warehouse {
    text-align: center;
}

.header_catch_prt-sanchomo {
	position : relative;
	max-width: 2000px;
	height :100vh;
	margin: 0 auto;
	background : url(../images/bg-sanchomo.jpg) left bottom no-repeat;
	background-size: cover;
}

.header_catch_prt-sanchomo h1 {
    position: absolute;
    bottom: 15%;
    right: 0;
    font-size: 45px;
    color: #fff;
    background: #295690bf;
    padding: 100% 0.5em 0.5em 0.5em;
    z-index: 99;
}

.header_catch_prt-seagulls {
	position : relative;
	max-width: 2000px;
	height :100vh;
	margin: 0 auto;
	background : url(../images/bg-seagulls.jpg) left bottom no-repeat;
	background-size: cover;
}

.header_catch_prt-yunogo {
	position : relative;
	max-width: 2000px;
	height :100vh;
	margin: 0 auto;
	background : url(../images/bg-yunogo.jpg) left bottom no-repeat;
	background-size: cover;
}

.header_catch_prt-kibijimarathon {
	position : relative;
	max-width: 2000px;
	height :100vh;
	margin: 0 auto;
	background : url(../images/bg-kibijimarathon.jpg) left bottom no-repeat;
	background-size: cover;
}

.header_catch_prt-lgbtq {
	position : relative;
	max-width: 2000px;
	height :100vh;
	margin: 0 auto;
	background : url(../images/bg-lgbtq.jpg) left bottom no-repeat;
	background-size: cover;
}

.header_catch_prt-tryhoop {
	position : relative;
	max-width: 2000px;
	height :100vh;
	margin: 0 auto;
	background : url(../images/bg-tryhoop.jpg) left bottom no-repeat;
	background-size: cover;
}

.header_catch_prt-employment1500 {
	position : relative;
	max-width: 2000px;
	height :100vh;
	margin: 0 auto;
	background : url(../images/bg-employment1500.jpg) left bottom no-repeat;
	background-size: cover;
}

.header_catch_prt-fujisawa {
	position : relative;
	max-width: 2000px;
	height :100vh;
	margin: 0 auto;
	background : url(../images/bg-fujisawa.jpg) left bottom no-repeat;
	background-size: cover;
}

.header_catch_prt-Okasyo01 {
	position : relative;
	max-width: 2000px;
	height :100vh;
	margin: 0 auto;
	background : url(../images/bg-Okasyo01.jpg) left bottom no-repeat;
	background-size: cover;
}

.header_catch_prt-tsuyama {
	position : relative;
	max-width: 2000px;
	height :100vh;
	margin: 0 auto;
	background : url(../images/bg-tsuyama.jpg) left bottom no-repeat;
	background-size: cover;
}

.header_catch_prt-kurashiki {
	position : relative;
	max-width: 2000px;
	height :100vh;
	margin: 0 auto;
	background : url(../images/bg-kurashiki.jpg) left bottom no-repeat;
	background-size: cover;
}

.header_catch_prt-kibichuo {
	position : relative;
	max-width: 2000px;
	height :100vh;
	margin: 0 auto;
	background : url(../images/bg-kibichuo.jpg) left bottom no-repeat;
	background-size: cover;
}

@media screen and (max-width: 1200px) {
	.header_catch_prt-sanchomo h1 {
	    font-size: 4vw;
	}
}

@media screen and (max-width: 550px) {
	.header_catch_prt-sanchomo h1 {
	    bottom: 25%;
	}
}

.header_catch_prt-sanchomo .prt-top-img {
    position: absolute;
    top: 40%;
    right: 25%;
    width: 45%;
    max-width: 470px;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    box-shadow: 5px 5px 30px #000;
    z-index: 101;
}

.header_catch_prt-sanchomo .prt-top-img-bg {
    position: absolute;
    top: 0;
    right: 0;
    width: 55%;
    height: 600px;
    overflow: hidden;
    max-width: 470px;
    z-index: 100;
}

@media screen and (max-width: 940px) {
	.header_catch_prt-sanchomo .prt-top-img-bg {
	    height: 580px;
	}
}

@media screen and (max-width: 768px) {
	.header_catch_prt-sanchomo {
		height :60vh;
	}
	.header_catch_prt-sanchomo .prt-top-img-bg {
		height: 36vh;
	}
	.header_catch_prt-seagulls,
	.header_catch_prt-yunogo,
	.header_catch_prt-kibijimarathon,
	.header_catch_prt-lgbtq,
	.header_catch_prt-tryhoop,
	.header_catch_prt-employment1500,
	.header_catch_prt-fujisawa,
	.header_catch_prt-Okasyo01,
	.header_catch_prt-tsuyama,
	.header_catch_prt-kurashiki,
	.header_catch_prt-kibichuo {
		height :60vh;
	}
	.header_catch_recruit-green {
		height :50vh;
	}
}

.header_catch_osdc {
    position: relative;
    width: 100%;
    padding-top: 57%;
    max-width: 2000px;
    margin: 0 auto;
    background: url(../images/osdc-heade01.png) left bottom no-repeat;
    background-size: 100% auto;
}


/* --------------------------霈ｸ騾∽ｺ区･ｭ驛ｨ-------------------------- */

.divide_h2 {
	font-weight: 400;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	height: 13em;
	padding-top: 3em;
	margin: 0 auto;
}

.divide_h2 span {
	font-family: "貂ｸ譏取悃", YuMincho, "Hiragino Mincho ProN W3", "繝偵Λ繧ｮ繝取�譛� ProN W3", "Hiragino Mincho ProN", "HG譏取悃E", "�ｭ�ｳ �ｰ譏取悃", "�ｭ�ｳ 譏取悃", serif;
	font-size :150%;
}

.s_reason figure img {
	display: block;
	width: 50%;
	margin: 1em auto;
}

.s_reason figure figcaption {
	text-align :center;
}

.s_reason p {
	padding: 0 1em 1em 1em;
	margin :0;
}

/* --------------------------迚ｩ豬∵ュ蝣ｱ莠区･ｭ驛ｨ-------------------------- */

.particle-wrap {
	position: absolute!important;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	overflow: hidden;
}

/* --------------------------蝟ｶ讌ｭ謇繝槭ャ繝�-------------------------- */

.som_wrap {
	position: relative;
	max-width: 1000px;
	margin: 1em auto;
	border-bottom: #ccc 1px dotted;
}

.som_text {
	max-width: 10em;
	position: absolute;
	font-size: 15px;
	white-space: nowrap;
}

.som_text a {
	color : #666;
}

@media screen and (max-width: 1000px) {
	.som_text {
		font-size: 1.5vw;
	}
}

.som_anken {
	top: 29%;
	left: 15%;
}

.som_okayama {
	top: 39%;
	left: 15%;
}

.som_kurashiki {
	top: 47%;
	left: 16%;
}

.som_akaiwa {
	top: 18%;
	left: 19%;
}

.som_syouou {
	top: 3%;
	left: 20%;
}

.som_tosu {
	top: 47%;
	left: 2%;
}

.som_kyouto {
	top: 9%;
	left: 51%;
}

.som_ichinomiya {
    top: 75%;
    left: 51%;
}

.som_kanagawa {
    top: 84%;
    left: 67%;
}

.som_saitama {
	top: 9%;
	left: 81%;
}

.som_fuji {
	top: 52%;
	left: 51%;
}

.som_siga {
	top: 22%;
	left: 53%;
}

.som_ehime {
    top: 78%;
    left: 35%;
}

.som_hyogo {
    top: -1%;
    left: 50.5%;
}

.som_okayama_ic {
	top: 29%;
	left: 14.5%;
}

.som_saga_ic {
	top: 47%;
	left: 0%;
}

.som_aich_ic {
	top: 22%;
	left: 49%;
}

.som_kanagawa_ic {
	top: 38%;
	left: 49%;
}

.som_saitama_ic {
	top: 9%;
	left: 79%;
}

.som_chiba_ic {
	top: 80%;
	left: 78.5%;
}

.som_hyogo_ic {
	top: 15%;
	left: 23.5%;
}

.som_shizuoka_ic {
	top: 80%;
	left: 34.5%;
}

.som_osaka {
    top: 84%;
    left: 49%;
}

.som_kanazawa {
    top: 33%;
    left: 57%;
}

/* --------------------------豎ゆｺｺ諠��ｱ-------------------------- */

.header_catch_recruit {
    position: relative;
}

.hcr_h1_wrap {
    position: absolute;
    top: 50%;
    font-size: 2.5vw;
}

.hcr_h1_wrap h1 {
    background: rgba(255,255,255,0.8);
    padding: 0.5em 1em;
    font-size: 1.5em;
    color: #285690;
}

.catch_in_wrap {
    width: 80%;
    margin: 0 0 0 auto;
}

@media screen and (max-width: 1000px) {
	.catch_in_wrap {
	    width: 100%;
	    margin: 0;
	}
}

.catch_in_wrap figure {
    float: left;
    width: 20%;
}

.catch_in_img02 {
    padding-top: 10%;
}

.catch_in_img03 {
    padding-top: 30%;
}

.catch_in_img04 {
    padding-top: 20%;
}

.catch_in_img05 {
    padding-top: 20%;
}

.header_catch_recruit .cs-scroll {
    color: #285690;
    background: rgba(255,255,255,0.5);
    border: #285690 3px solid;
}

.recruit-word01 {
    padding: 3em;
    text-align: center;
    border: #285690 2px solid;
    background: #285690;
}

.recruit-word01 h2,
.recruit-word01 p,
.recruit-word02 h2,
.recruit-word02 p {
	background: -webkit-linear-gradient(-45deg, #888142, #bba81f, #EDAC06, #888142, #ECB802, #fddc98, #b1a553, #fddc98, #EDAC06, #888142, #ECB802, #EDAC06);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	font-weight :600;
}

.recruit-word01 h2,
.recruit-word02 h2,
.recruit-word03 h2 {
    font-size: 3vw;
    margin :0;
}

.recruit-word01 p,
.recruit-word02 p,
.recruit-word03 p {
    font-size: 3vw;
    margin :0;
}

.recruit-word01 p span,
.recruit-word02 p span,
.recruit-word03 p span {
    font-size: 6vw;
}

@media screen and (max-width: 768px) {
	.recruit-word01 h2,
	.recruit-word02 h2,
	.recruit-word03 h2 {
	    font-size: 6vw;
	    margin :0;
	}

	.recruit-word01 p,
	.recruit-word02 p,
	.recruit-word03 p {
	    font-size: 6vw;
	    margin :0;
	}

	.recruit-word01 p span,
	.recruit-word02 p span,
	.recruit-word03 p span {
	    font-size: 12vw;
	}
}

.recruit-word02 {
    padding: 1em;
    text-align: center;
    border: #285690 2px solid;
}

.recruit-word03 {
	display :table;
	width : 80%;
	margin : 1em auto;
}

.recruit-word03 div {
	display :table-cell;
	vertical-align: middle;
	width : 50%;
	text-align : center;
}

.recruit-word03 p span {
	font-weight :600;
}

/* --------------------------繝輔ャ繧ｿ繝ｼ繝�じ繧､繝ｳ-------------------------- */

.footer_mark figure img {
	display: block;
	width: 50%;
	margin: 1em 1em 1em auto;
}

.footer_list {
    list-style: none;
    padding: 1em 0;
    margin: 0;
}

.footer_list li {
    padding: 1em;
    display: initial;
}

@media screen and (max-width: 768px) {
	.footer_list li {
		display: block;
	}
}

.footer_profile_wrap {
    max-width: 800px;
    display: table;
    margin: 0 auto;
}

.footer_profile_img, .footer_profile_text {
    display: table-cell;
    vertical-align: middle;
}

.footer_profile_img figure {
    max-width: 170px;
}

.footer_profile_text ul {
	list-style :none;
}

.footer_profile_text ul .fpt_title{
	list-style :none;
}

.fpt_title {
    font-weight: 600;
    font-size: 105%;
    margin-left: -1em;
}

/* --------------------------繝輔か繝ｼ繝�繝�じ繧､繝ｳ-------------------------- */

.contact_form_bg {
	background : url(../images/form_bg01.jpg) center center no-repeat;
	background-size :cover;
	padding: 2em 0.5em;
	min-height: 100vh;
}

.contact_form_wrap {
    max-width: 500px;
    background: rgba(255,255,255,0.8);
    border: #ccc 1px solid;
    border-radius: 10px;
    margin: 0 auto;
    padding: 1em;
}

form.sent p{
display:none;
}

.driver-form {
    max-width: 600px;
    padding: 1em;
    margin: 0 auto;
    background: #f0f0f0;
    border-radius: 10px;
}

.driver-form form {
    padding: 0 2em 0 1em;
}

.from-notes {
    background: #ddd;
    color: #666;
    padding: 1em;
    margin: 2em;
    max-height: 300px;
    overflow: auto;
}

.codedropz-upload-inner h3 {
    background: none;
    color: #777;
}

.remove-file {
    background: #ccc;
}

/* --------------------------讀懃ｴ｢邨先棡-------------------------- */

.search-wrap {
	max-width: 768px;
	padding: 2em;
	margin: 2em auto;
	border: #ccc 1px solid;
}

/* --------------------------蜍慕判縺ｮ荳ｭ螟ｮ蟇�○-------------------------- */
.wp-video {
    margin: 0 auto;
}


/* --------------------------Google繧ｫ繝ｬ繝ｳ繝繝ｼ-------------------------- */

.cal_wrapper {
max-width: 960px; /* 譛螟ｧ蟷� */
min-width: 300px; /* 譛蟆丞ｹ� */
margin: 2.0833% auto;
}
.googlecal {
position: relative;
padding-bottom: 100%; /* 邵ｦ讓ｪ豈� */
height: 0;
}
.googlecal iframe {
position: absolute;
top: 0;
left: 0;
width: 100% !important;
height: 100% !important;
}

@media only screen and (min-width: 768px) {
.googlecal { padding-bottom: 75%; }
}

@media only screen and (max-width: 980px) {
  .drawer-navigation ul {
      padding: 1em;
  }
}


/* --------------------------繝輔ぅ繝�け繧ｹ繝ｪ繝ｳ繧ｯ-------------------------- */

.fix-link01 {
    position: fixed;
    top: 105px;
    right: 0;
    background: #48a350;
    border-left: #ffe900 4px solid;
    border-radius: 5px 0 0 5px;
    font-size: 16px;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    align-items: center;
    transition: .2s;
    z-index: 9999;
}

.fix-link01 a,
.fix-link01 a:hover {
    display: block;
    color: #fff!important;
    padding: 1em;
}

.fix-link01:hover {
    background: #a95d5d;
}

.fix-link02 {
    position: fixed;
    top: 222px;
    right: 0;
    background: -webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
    background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
    font-size: 36px;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    align-items: center;
    border-radius: 5px 0 0 5px;
    transition: .2s;
    z-index: 9999;
    overflow: hidden;
}

.fix-link02 .insta {
    position: relative;
    display: inline-block;
    background: -webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
    background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
    mix-blend-mode: lighten;
}

.fix-link02:before {
    content: "";
    position: absolute;
    top: 23px;
    left: -18px;
    width: 60px;
    height: 60px;
    background: -webkit-radial-gradient(#ffdb2c 10%, rgba(255, 105, 34, 0.65) 55%, rgba(255, 88, 96, 0) 70%);
    background: radial-gradient(#ffdb2c 10%, rgba(255, 105, 34, 0.65) 55%, rgba(255, 88, 96, 0) 70%);
}

.fix-link02 a {
    display: block;
    color: #fff!important;
    padding: 6px 0;
}

.fix-link03 {
    position: fixed;
    top: 271px;
    right: 0;
    font-size: 30px;
    background: #333;
    border-radius: 5px 0 0 5px;
    overflow: hidden;
    z-index: 9999;
}

.fix-link03 a {
    display: block;
    color: #fff!important;
    width: 58px;
    height: 50px;
    background: #333;
}

.fix-link03 i {
    position: absolute;
}

.tikitok-red {
    top: 50%;
    left: 50%;
    transform: translate(-40%, -40%);
    color: #F00;
}

.tikitok-blue {
    top: 50%;
    left: 50%;
    transform: translate(-60%, -60%);
    color: #328f9f;
}

.tikitok-white {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #fff;
}

/* --------------------------蜷ｹ縺榊�縺�-------------------------- */
.balloon.qanda {
    width: 100%;
    max-width: 768px;
    margin: 0 auto;
    padding: 10px 0;
    color: #333;
    overflow: hidden;
}
/*繝輔く繝繧ｷ蜈ｱ騾�*/
.balloon.qanda .fukidasi {
    position: relative;
    display: inline-block;
    margin: 1px 10px 6px;
    padding: 9px 14px;
    border-radius: 19px;
    overflow-wrap: break-word;
    clear: both;
    box-sizing: content-box;/*縺ｯ縺ｦ縺ｪ逕ｨ*/
}
/*縺励▲縺ｽ繧偵▽縺代↑縺�→縺�*/
.balloon.qanda .fukidasi.notail {
    margin-bottom: 0;
}
/*繝輔く繝繧ｷ蟾ｦ*/
.balloon.qanda .fukidasi.left {
    float: left;
    background: #9de8b0;
}
/*繝輔く繝繧ｷ蜿ｳ*/
.balloon.qanda .fukidasi.right {
    float: right;
    background: #4c80b1;
    color: white;
}
/*縺励▲縺ｽ蜈ｱ騾�*/
.balloon.qanda .fukidasi::after {
    position: absolute;
    content: "";
    width: 17px;
    height: 17px;
    bottom: 0;
}
/*縺励▲縺ｽ蟾ｦ*/
.balloon.qanda .fukidasi.left::after {
    left: -6px;
    border-radius: 0px 0  17px 0px/ 0px 0 13px 0; 
    box-shadow: -14px 2px 0 -3px #9de8b0 inset; 
}
/*縺励▲縺ｽ蜿ｳ*/
.balloon.qanda .fukidasi.right::after {
    right: -6px;
    border-radius: 0px 0  0 17px/ 0px 0 0 13px; 
    box-shadow: 14px 2px 0 -3px #4c80b1 inset; 
}
/*縺励▲縺ｽ繧偵▽縺代↑縺�→縺�*/
.balloon.qanda .fukidasi.notail::after {
    content: none;
}


/* --------------------------繧ｹ繝�ャ繝励ヰ繝ｼ-------------------------- */

.stepbar {
  margin: 0 auto;
  width: 80%;
}

.stepbar .stepbarwrap {
  margin: 2em 0;
  position: relative;
}

.stepbar .stepbarwrap .steptitle {
  display: inline-flex;
  align-items: center;
}

.stepbar .stepbarwrap .steptitle .stepcircle {
  display: inline-block;
  width: 3em;
  height: 3em;
  content: "";
  border-radius: 50%;
  background-color: #285690;
  color: #fff;
  text-align: center;
}

.stepbar .stepbarwrap .steptitle .stepcircle span {
  display: inline-block;
  line-height: 1.2em;
  font-size: 0.8em;
  font-weight: bold;
  position: relative;
  top: 0.9em;
}

.stepbar .stepbarwrap .steptitle .title {
  margin: 0.5em;
  font-weight: bold;
  font-size: 1.2em;
  border-bottom: #ccc 2px dashed;
}

.stepbar .stepbarwrap .steptxt {
  padding-left: 3.5em;
}

.stepbar .stepbarwrap .steptxt .txt {
  font-size: 0.9em;
}

.stepbar .stepbarwrap .stepline {
  width: 5px;
  height: calc(100% + 1em);
  background-color: #285690;
  position: absolute;
  top: 1em;
  left: calc(1.5em - 2px);
  z-index: -1;
}

.stepbarwrap:last-of-type .stepline:last-of-type {
  display: none;
}

@media screen and (max-width: 960px) {
  .stepbar {
    width: 90%;
  }
}

/* --------------------------cookie險ｱ蜿ｯ-------------------------- */

.cookie_btn {
    background: #285690;
    padding: 10px 20px;
    border-radius: 5px;
    color: #fff!important;
}

/* --------------------------cookie險ｱ蜿ｯ-------------------------- */

/* --------------------------繝繝ｼ繧ｯ繝｢繝ｼ繝�-------------------------- */

@media (prefers-color-scheme: dark) {
  body {
    background-color: #17181a!important;
    color: #cfcfcf!important;
  }
  a {
    color: #85bbff!important;
  }
  img {
    filter: brightness(0.8);
  }
  .dark-img {
    filter: brightness(0) invert(1)!important;
  }
  .main-header {
    background: rgb(0 0 0 / 50%)!important;
  }
  .main-header-clone {
    background: rgb(0 0 0 / 50%)!important;
  }
  .drawer-hamburger-icon, .drawer-hamburger-icon:before, .drawer-hamburger-icon:after {
    background-color: #fff!important;
  }
  .drawer-navigation {
    background: #0b1726!important;
  }
  .drawer-navigation .dropdown-toggle {
    background-color: #fff!important;
  }
  .drawer-opened .drawer-hamburger-icon {
    background-color: transparent!important;
  }
  .site-logo {
    filter: brightness(0) invert(1)!important;
  }
  .main-navigation .current_page_item &gt; a, .main-navigation .current-menu-item &gt; a {
    color: #fff!important;
  }
  .main-navigation ul ul {
    background-color: #0f223a!important;
  }
  .main-navigation a:hover {
    color: #fff!important;
  }
  .bg_blue {
    background-color: #0f223a!important;
  }
  .bg_pale {
    background: #32363b!important;
  }
  .bg_grey {
    background-color: #001c2a!important;
  }
  .bg_white_trans ,
  .bg_blue_trans {
    background: rgb(10 35 58 / 80%)!important;
  }
  .bg_grayish_white {
    background-color: #303030!important;
  }
  .btn01 {
    color: #fff!important;
    border: solid 1px #fff!important
  }
  .btn02 {
    color: #fff!important;
    border: solid 1px #fff!important
  }
  .top-catch:before {
    content: "";
    background: rgba(0,0,0,0.5);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
  .top-catch_wrap p {
    position: relative!important;
  }
  .icon-wrap {
    color: #fff!important;
  }
  .icon-wrap:hover {
    background: #296a90;
  }
  .attn_content figure {
    filter: brightness(1) invert(1)!important;
  }
  .attn_content.bg_blue_trans figure {
    filter: brightness(0) invert(1)!important;
  }
  .h2_02:before {
    border-left: solid 1px #fff!important;
    border-top: solid 1px #fff!important;
    border-bottom: solid 1px #fff!important;
  }
  .h2_02:after {
    border-top: solid 1px #fff!important;
    border-right: solid 1px #fff!important;
    border-bottom: solid 1px #fff!important;
  }
  .h2_03 {
    background: #0f223a!important;
    color: #fff!important;
  }
  .h2_04 {
    color: #fff!important;
  }
  .h2_05_mr {
    color: #fff;
    border-bottom: #ffffff 3px solid!important;
  }
  .h2_05_ml {
    color: #fff;
    border-bottom: #fff 3px solid!important;
  }
  .h3_02 {
    border-bottom: #fff 1px dashed!important;
  }
  .definition_list01 dt {
    background: #0f223a!important;
  }
  .post-link {
    color: #fff!important;
  }
  .widget-title {
    color: #fff!important;
  }
  .widget {
    color: #fff!important;
  }
  .back-to-top {
    background: rgba( 255, 255, 255, 1 )!important;
  }
  .header_catch_svg {
    background: #000!important;
  }
  .round-list_item {
    background: #0f223a!important;
  }

  .sns-list li a {
    color: #000;
  }
  .definition_list01 dd {
    background: #333!important;
  }
  .driver-form {
    background: #333!important
  }
  .cls-1 {
    stroke: #fff;
  }

  .history-list dd:after {
    border-width: 0 0 2px 0;
    border-color: #111;
  }
  .contact_form_wrap {
    background: rgba(20,40,50,0.8);
  }
  .modal-wrapper .modal-window {
    background: #0f223a;
  }
  .cs-scroll {
    color: #fff!important;
  }
  .fix-link01 {
    background: #a6292c;
  }
  .wp-block-verse {
    background: #444;
    color: #fff;
  }
}

/* --------------------------繝繝ｼ繧ｯ繝｢繝ｼ繝�-------------------------- */

/* ---謚慕ｨｿ蜀�ｮｹ--- */

.entry-content h2:not([class]) ,
.entry-content h2.wp-block-heading:not([class*=" "]) {
	font-size: 170%;
	border-left: #295690 5px solid;
	padding-left: 0.5em;
	font-weight: 500;
}

.entry-content h3:not([class]) ,
.entry-content h3.wp-block-heading:not([class*=" "]) {
	background: #295690;
	color: #fff;
	font-weight: 400;
	padding: 0.5em 1em;
	margin:1em;
	border-radius: 5px;
}

.entry-content h4:not([class]) ,
.entry-content h4.wp-block-heading:not([class*=" "]) {
	display: flex;
	font-weight: 500;
	padding: 0.5em 1em;
	margin: 0 1.5em;
	background: #ccc;
	border-radius: 5px;
}

.entry-content h5:not([class]) ,
.entry-content h5.wp-block-heading:not([class*=" "]) {
    font-size: medium;
    margin: 1.5em 2em;
    font-weight: 600;
    border-bottom: #ccc 1px dashed;
}

.entry-content h6:not([class]), .entry-content h6.wp-block-heading:not([class*=" "]) {
    font-size: medium;
    margin: 1.5em;
    padding: 0.5em 1em;
    font-weight: 600;
    border: #ccc 1px solid;
    border-radius: 30px;
}

.entry-content p {
    margin: 0.5em 2em;
}

.entry-content ul:not([class]), .entry-content ol:not([class]) ,ul.wp-block-list {
    margin: 2em;
    padding: 1em 1em 1em 3em;
    background: #fffceb;
}

.entry-content iframe {
    margin: 0 auto !important;
}

.memo {
    color: #333;
    background: #ccc;
    font-weight: 500;
    border-radius: 5px;
    margin: 2em;
}

.wp-block-column {
    padding: 1em;
}

.wp-block-column figure {
    width: 100%;
    margin: 0;
}

b:not([class]), strong:not([class]) {
	font-weight: 700;
	background: linear-gradient(transparent 60%, #ff6 60%);
}

.wp-block-table.is-style-stripes {
    border-bottom: none;
}

.wp-block-table table {
    width: calc(100% - 4em);
    margin: 0 2em;
}

.wp-block-table.is-style-stripes td, .wp-block-table.is-style-stripes th {
    border-color: #ccc;
}

/* ---繝繝ｼ繧ｯ繝｢繝ｼ繝�--- */
@media (prefers-color-scheme: dark) {

	.entry-content h4:not([class]) ,
	.entry-content h4.wp-block-heading:not([class*=" "]) {
    background: #0f223a!important;
  }
  .entry-content ul:not([class]), .entry-content ol:not([class]) {
    background: #333333;
  }
  b:not([class]), strong:not([class]) {
    font-weight: 700;
    background: linear-gradient(transparent 60%, #91421a 60%);
  }
  
  .wp-block-table.is-style-stripes td {
    border-color: #777;
    background: #444;
  }
  .wp-block-table.is-style-stripes th {
    border-color: #777;
    background: #0f223a;
  }

}

/* ---繝繝ｼ繧ｯ繝｢繝ｼ繝�--- */


/* --------------------------reCAPTCHA髱櫁｡ｨ遉ｺ-------------------------- */

.grecaptcha-badge { visibility: hidden; }


/* --------------------------遉ｾ蜀��ｱ繝ｭ繧ｰ繧､繝ｳ繝輔か繝ｼ繝�-------------------------- */

.login-form-container {
    max-width: 500px;
    margin: 1em auto;
    padding: 2em;
    background: #ccc;
    color: #333;
    border-radius: 10px;
}

#loginform label {
    display: block;
}

input#user_login ,
input#user_pass {
    width: 100%;
}

.login-error {
    color: #f00;
    text-align: center;
}
</pre></body></html>