@charset "utf-8";

/*
1921 -	  4Kディスプレイ
1367 -	  ワイドディスプレイ
1281 - 1366 スモールワイドディスプレイ
1024 - 1280 ラージタブレット・スクエアディスプレイ
 768 - 1023 タブレット
 501 -  767 スモールタブレット
 361 -  500 スマホ
	 -  360

400 スマホ360 (360 - 720)
448 スマホ410 (410 - 820)
810 タブレット768 (768 - 875)
1064 タブレット横768 (1024 - 768)
1320 スクエア1280 (1280 - 875)
1400 ノート1366 (1366 －768)

@media (1367px <= width) {}
@media (1281px <= width <= 1366px) {}
@media (1024px <= width <= 1280px) {}
@media (768px <= width <= 1023px) {}
@media (501px <= width <= 767px) {}
@media (401px <= width <= 500px) {}
@media (width <= 400px) {}
@media (501px <= width) and (height <= 768px) {}

@media (hover: hover) and (pointer: fine) {}
*/

/*---------------------------------------------------------------------- variable --*/

html {
	--border: 1px solid #444;
	--border_pale: 1px solid #eee;
	--border_radius: 5px;
	--border_radius_light: 3px;
	--box_shadow: 0 0 3px #ddd;
	--box_shadow_3: 2px 2px 3px #ddd;
	--box_shadow_light: 0 0 15px #eee;
	--hover: #f90;
	--theme: #205d9a;
	--blue: #2f89e1;
	--error: #c00;
	--transition: all ease 0.2s;
}

@media (1024px <= width) {
	html {
		--margin: 75px;
	}
}

@media (768px <= width <= 1023px) {
	html {
		--margin: 50px;
	}
}

@media (width <= 767px) {
	html {
		--margin: 30px;
	}
}

/*---------------------------------------------------------------------- a --*/

@media (hover: hover) and (pointer: fine) {
	a,
	a::before,
	a::after {
		transition: var(--transition);
	}
}

/*---------------------------------------------------------------------- body --*/

body {
	background: url(/asset/image/general/bg.png) no-repeat center left / contain fixed;
}

@media (width <= 1023px) {
	body {
		padding-top: var(--header_height);
	}
}

/*---------------------------------------------------------------------- .box --*/

.box,
.box_half,
.box_top,
.box_top_half,
.box_right,
.box_right_half,
.box_bottom,
.box_bottom_half,
.box_left,
.box_left_half,
.box_side,
.box_side_half,
.box_all,
.box_all_half {
	width: 100%;
	margin: 0 auto;
}

.box {
	padding: var(--margin) 0;
}

.box_half {
	padding: calc(var(--margin) / 2) 0;
}

.box_top {
	padding-top: var(--margin);
}

.box_top_half {
	padding-top: calc(var(--margin) / 2);
}

.box_right {
	padding-right: var(--margin);
}

.box_right_half {
	padding-right: calc(var(--margin) / 2);
}

.box_bottom {
	padding-bottom: var(--margin);
}

.box_bottom_half {
	padding-bottom: calc(var(--margin) / 2);
}

.box_left {
	padding-left: var(--margin);
}

.box_left_half {
	padding-left: calc(var(--margin) / 2);
}

.box_side {
	padding: 0 var(--margin);
}

.box_side_half {
	padding: 0 calc(var(--margin) / 2);
}

.box_all {
	padding: var(--margin);
}

.box_all_half {
	padding: calc(var(--margin) / 2);
}

@media (width <= 767px) {
	.box {
		padding: var(--margin) 0 15px;
	}
	
	.box_bottom,
	.box_bottom_half {
		padding-bottom: 15px;
	}
}

/*---------------------------------------------------------------------- .frame --*/

.frame {
	margin: 0 auto;
}

@media (1084px <= width) {
	.frame {
		width: 1024px;
	}
}

@media (768px <= width <= 1083px) {
	.frame {
		width: calc(100% - 100px);
	}
}

@media (width <= 767px) {
	.frame {
		width: calc(100% - 30px);
	}
}

/*---------------------------------------------------------------------- .none --*/

@media (501px <= width) {
	.none_501_ {
		display: none;
	}
}

@media (1024px <= width) {
	.none_1024_ {
		display: none;
	}
}

@media (width <= 1024px) {
	.none_1024 {
		display: none !important;
	}
}

@media (width <= 1023px) {
	.none_1023 {
		display: none !important;
	}
}

@media (768px <= width) {
	.none_768_ {
		display: none;
	}
}

@media (width <= 768px) {
	.none_768 {
		display: none !important;
	}
}

@media (width <= 767px) {
	.none_767 {
		display: none !important;
	}
}

@media (width <= 500px) {
	.none_500 {
		display: none;
	}
}

@media (width <= 400px) {
	.none_400 {
		display: none;
	}
}

/*---------------------------------------------------------------------- scrollbar --*/

body {
	/*-ms-overflow-style: none; /* IE, Edge 対応 */
	/*scrollbar-width: none; /* Firefox 対応 */
}

body::-webkit-scrollbar { /* Chrome, Safari 対応 */
	/*display: none;*/
}
/*
::-webkit-scrollbar{
	width: 10px;
}

::-webkit-scrollbar-track{
	background: #ddd;
}

::-webkit-scrollbar-thumb{
	background: #f8b62d;
}
*/

/*---------------------------------------------------------------------- .section --*/

section {
	position: relative;
}

/*---------------------------------------------------------------------- .visible --*/

@media (1025px <= width) {
	.visible_1024 {
		display: none;
	}	
}

@media (769px <= width) {
	.visible_768,
	.visible_501_768 {
		display: none;
	}
}

@media (501px <= width) {
	.visible_500,
	.small_visible {
		display: none;
	}	
}

@media (width <= 1024px) {
	.visible_1024 {
		display: initial;
	}
}

@media (width <= 768px) {
	.visible_768,
	.visible_500_768 {
		display: initial;
	}
}

@media (width <= 500px) {
	.visible_500,
	.small_visible {
		display: initial;
	}

	.visible_501_768 {
		display: none;
	}
}

@media (401px <= width) {
	.visible_400 {
		display: none;
	} 
}

@media (width <= 400px) {
	.visible_400 {
		display: initial;
	}
}

/*---------------------------------------------------------------------- .wrap --*/

.wrap {
	background: #fff;
	z-index: 1;
}

/*---------------------------------------------------------------------- .lightbox --*/

.lb-data .lb-caption {
	font-weight: normal !important;
	line-height: 1.25em !important;
	color: #fff;
}

.lb-outerContainer {
	border-radius: 10px !important;
	overflow: hidden;
}

.lightbox .lb-image {
	border-radius: 12px !important;
}

.lb-dataContainer {
	margin: 2px auto 0 !important;
}

.lb-number {
	display: none !important;
}

/*---------------------------------------------------------------------- ol --*/

ol {
	padding-left: 1em;
}


ol li {	
	list-style-type: decimal;
}
