@charset "UTF-8";
/*----------------------------------------

	Default CSS (Last Update 2020.05.15)

	- default setting
	- font-family setting
	- font setting
	- line-height setting
	- link setting
	- color setting
	- common setting
	- clearfix
	+ split
		+ header
			- gnav
			- navDrawer
		+ main
			- mv
			- breadcrumb
			- content
		+ footer
			- fmenu
			- flink
	- blank pdf icon
	- pageContents
	- sp swipe icon
	- cookie
	- print

	- lang en

-----------------------------------------*/

/*----------------------------------------
	default setting
-----------------------------------------*/
html {
	font-size: 62.5%;
}

h1, h2, h3, h4, h5, h6, th {
	margin: 0;
	font-size: 100%;
	font-weight: normal;
}

p, dl, dd, ol, ul, th, td, figure {
	margin: 0;
	padding: 0;
}

th {
	text-align: left;
}

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

picture {
	display: block;
}

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

em {
	font-style: normal;
	font-weight: bold;
}

li {
	list-style: none;
	vertical-align: bottom;
}

li img {
	vertical-align: top;
}

small {
	font-size: 100%;
}

select, input, button, textarea {
	font-family: YuGothic, 'Yu Gothic Medium', 'Yu Gothic', meiryo, sans-serif;
}

body {
	line-height: 1.5;
	font-family: YuGothic, 'Yu Gothic Medium', 'Yu Gothic', meiryo, sans-serif;
	font-weight: 500;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	color: #222;
}

/* IE */
@media all and (-ms-high-contrast:none) {
	select, input, button, textarea {
		font-family: meiryo, YuGothic, 'Yu Gothic Medium', 'Yu Gothic', sans-serif;
	}

	body {
		font-family: meiryo, YuGothic, 'Yu Gothic Medium', 'Yu Gothic', sans-serif;
	}
}

/* WebKit, Blink, Edge */
::-webkit-input-placeholder {
	color: #999;
}

/* IE, Edge */
:-ms-input-placeholder {
	color: #999;
}

::placeholder {
	color: #999
}

/*----------------------------------------
	font-family setting
-----------------------------------------*/
.lato-light {
	font-family: 'Lato', sans-serif;
	font-weight: 300;
}

.lato-regular {
	font-family: 'Lato', sans-serif;
	font-weight: 400;
}

.lato-bold {
	font-family: 'Lato', sans-serif;
	font-weight: 700;
}

/*----------------------------------------
	font setting
-----------------------------------------*/
.font12,
.font12_14 {
	font-size: 1.2rem;
}
.font13 {
	font-size: 1.3rem;
}

.font14,
.font14_12,
.font14_13 {
	font-size: 1.4rem;
}

.font15,
.font15_17 {
	font-size: 1.5rem;
}

.font16,
.font16_12,
.font16_14 {
	font-size: 1.6rem;
}

.font18,
.font18_16,
.font18_14 {
	font-size: 1.8rem;
}

.font20,
.font20_16,
.font20_18,
.font20_14 {
	font-size: 2.0rem;
}

.font24,
.font24_16,
.font24_20 {
	font-size: 2.4rem;
}

.font25_24 {
	font-size: 2.5rem;
}

.font28,
.font28_24 {
	font-size: 2.8rem;
}

.font32,
.font32_16,
.font32_20,
.font32_24,
.font32_28 {
	font-size: 3.2rem;
}
.font34,
.font34_30 {
	font-size: 3.4rem;
}

.font36_28 {
	font-size: 3.6rem;
}

.font38,
.font38_36 {
	font-size: 3.8rem;
}

.font40,
.font40_28 {
	font-size: 4.0rem;
}

.font48,
.font48_28,
.font48_40 {
	font-size: 4.8rem;
}

.font80 {
	font-size: 8.0rem;
}

@media screen and (max-width: 767px) {
	.font14_12,
	.font16_12 {
		font-size: 1.2rem;
	}
	
	.font14_13 {
		font-size: 1.3rem;
	}

	.font12_14,
	.font16_14,
	.font18_14,
	.font20_14 {
		font-size: 1.4rem;
	}

	.font18_16,
	.font20_16,
	.font24_16,
	.font32_16 {
		font-size: 1.6rem;
	}
	
	.font15_17 {
		font-size: 1.7rem;
	}

	.font20_18 {
		font-size: 1.8rem;
	}

	.font24_20,
	.font32_20 {
		font-size: 2.0rem;
	}

	.font28_24,
	.font32_24,
	.font25_24 {
		font-size: 2.4rem;
	}

	.font32_28,
	.font36_28,
	.font40_28,
	.font48_28 {
		font-size: 2.8rem;
	}
	
	.font34_30 {
		font-size: 3.0rem;
	}
	
	.font38_36 {
		font-size: 3.6rem;
	}

	.font48_40 {
		font-size: 4.0rem;
	}
}

@media screen and (max-width: 1000px) {
	footer .font20_16 {
		font-size: 1.6rem;
	}
}

/*----------------------------------------
	line-height setting
-----------------------------------------*/
.lh1 {
	line-height: 1;
}

.lh13 {
	line-height: 1.3;
}

.lh15 {
	line-height: 1.5;
}

.lh17 {
	line-height: 1.7;
}

.lh175 {
	line-height: 1.75;
}

.lh2 {
	line-height: 2;
}

/*----------------------------------------
	font-feature-settings
-----------------------------------------*/
.ffs {
	font-feature-settings: 'palt';
}

/*----------------------------------------
	link setting
-----------------------------------------*/
a, a:focus {
	outline: none;
}
a:link, a:visited {
	color: #222;
	text-decoration: none;
	transition-property: color;
	transition-duration: .1s;
	transition-timing-function: ease-out;
}
a.l_white01:link, a.l_white01:visited {
	color: #fff;
}
a.l_white02:link, a.l_white02:visited {
	color: #fff;
}
a.l_gray01:link, a.l_gray01:visited {
	color: #666;
}
a.l_gray02:link, a.l_gray02:visited {
	color: #ccc;
}
a.l_gray03:link, a.l_gray03:visited {
	color: #bbb;
}
a.l_gray04:link, a.l_gray04:visited {
	color: #ccc;
}

@media screen and (min-width: 1001px) {
	a:hover, a:active {
		color: #666;
		text-decoration: none;
	}
	a.l_white01:hover, a.l_white01:active {
		color: #666;
	}
	a.l_white02:hover, a.l_white02:active {
		color: #00a0e9;
	}
	a.l_gray01:hover, a.l_gray01:active {
		color: #666;
	}
	a.l_gray02:hover, a.l_gray02:active {
		color: #666;
	}
	a.l_gray03:hover, a.l_gray03:active {
		color: #666;
	}
	a.l_gray04:hover, a.l_gray04:active {
		color: #00a0e9;
	}
}

@media screen and (max-width: 767px) {
	a:hover, a:active {
		color: #222;
	}
}

/*----------------------------------------
	color setting
-----------------------------------------*/
.white01 {
	color: #fff;
}

.gray01 {
	color: #666;
}

.gray02 {
	color: #ccc;
}

.gray03 {
	color: #bbb;
}

.blue01 {
	color: #00a0e9;
}

/*----------------------------------------
	common setting
-----------------------------------------*/
/* インデント */
.indent01 {
	padding-left: 1em;
	text-indent: -1em;
}
.indent011 {
	padding-left: 1.1em;
	text-indent: -1.1em;
}
.indent012 {
	padding-left: 1.2em;
	text-indent: -1.2em;
}

/* 太文字 */
.bold01 {
	font-weight: bold;
}

/* 注意事項 米印 */
.note01 {
	position: relative;
	padding-left: 1em;
}

.note01::before {
	content: "\0203B";
	position: absolute;
	top: 0;
	left: 0;
}

/* br */
br.pc {
	display: inline;
}

br.sp {
	display: none;
}

@media screen and (max-width: 767px) {
	br.pc {
		display: none;
	}
	br.sp {
		display: inline;
	}
}

/* blank icon */
a.blank::after {
	content: "";
	display: inline-block;
	width: 14px;
	height: 10px;
	margin: -2px 0 2px 10px;
	border-right: 2px solid rgba(255,255,255,0);
	border-bottom: 2px solid rgba(255,255,255,0);
	-webkit-box-shadow: inset 0 0 0 1px #00a0e9, 2px 2px 0px -1px #00a0e9;
	box-shadow: inset 0 0 0 1px #00a0e9, 2px 2px 0px -1px #00a0e9;
}

/* pdf icon */
a.pdf::after {
	content: "";
	display: inline-block;
	width: 22px;
	height: 22px;
	margin: 4px 0 -4px 5px;
	background-image: url("../img/c_pdf_icon01.png");
	background-repeat: no-repeat;
	background-size: 22px 22px;
}

/*----------------------------------------
	ofi
-----------------------------------------*/
img.ofi {
	height: 100%;
	width: 100%;
	object-fit: contain;
	object-position: center;
	font-family: 'object-fit: contain;';
}

/*----------------------------------------
	clear setting
-----------------------------------------*/
.clearfix:after {
	content: "";
	display: block;
	clear: both;
}

.clearfsize {
	font-size: 0;
	line-height: 0;
}

/*----------------------------------------
.split
-----------------------------------------*/
.split {
	display: flex;
}

@media screen and (max-width: 1000px) {
	.split {
		display: block;
	}
}

/*----------------------------------------
header
-----------------------------------------*/
header {
	width: 240px;
	background: #114fa6;
}

header > div {
	position: fixed;
	width: 240px;
	top: 0;
	left: 0;
	z-index: 1000;
}

header > div > h1 {
	width: 240px;
	padding: 64px 0 65px;
	background: #fff;
	text-align: center;
}

header > div > h1 > a {
	display: block;
}

header > div > h1 img {
	width: 200px;
	height: 31px;
	margin-left: 1px;
}

/* menuIcon */
/* menuCheckbox */
header > div > #menuIcon,
header > div > #menuCheckbox {
	display: none;
}

@media screen and (max-width: 1000px) {
	header {
		position: fixed;
		width: 100%;
		height: 70px;
		background: #fff;
		transition-duration: .2s;
		transition-timing-function: ease-out;
		top: 0;
		left: 0;
		z-index: 1000;
	}

	header > div {
		position: relative;
	}

	header > div > h1 {
		width: auto;
		padding: 23px 0 0 20px;
		background: none;
		text-align: left;
	}

	header > div > h1 img {
		width: 153px;
		height: auto;
		margin-left: 0;
	}

	/* menuIcon */
	header > div > #menuIcon {
		display: block;
		position: fixed;
		top: 0;
		right: 0;
		width: 70px;
		height: 70px;
		background: #114fa6;
		transition-duration: .2s;
		transition-timing-function: ease-out;
		cursor: pointer;
		z-index: 2000;
		user-select: none;
	}

	header > div > #menuIcon span {
		transition-duration: .2s;
		transition-timing-function: ease-out;
	}

	header > div > #menuIcon .top,
	header > div > #menuIcon .middle,
	header > div > #menuIcon .bottom {
		position: absolute;
		display: block;
		width: 30px;
		height: 3px;
		margin: auto;
		border-radius: 2px;
		background: #fff;
		top: 24px;
		right: 0;
		left: 0;
		transform: rotate(0deg);
	}

	header > div > #menuIcon .font12 {
		position: absolute;
		display: block;
		width: 40px;
		margin: auto;
		text-align: center;
		top: 47px;
		right: 0;
		left: 0;
	}

	header > div > #menuIcon .font12 span:nth-child(2) {
		display: none;
	}

	header > div > #menuIcon .top {
		transform: translateY(-10px);
	}

	header > div > #menuIcon .bottom {
		transform: translateY(10px);
	}

	header > div > #menuCheckbox:checked ~ #menuIcon .middle {
		opacity: 0;
	}

	header > div > #menuCheckbox:checked ~ #menuIcon .top {
		transform: rotate(-45deg) translateY(0px);

	}

	header > div > #menuCheckbox:checked ~ #menuIcon .bottom {
		transform: rotate(45deg) translateY(0px);
	}

	header > div > #menuCheckbox:checked ~ #menuIcon .font12 span {
		display: none;
	}

	header > div > #menuCheckbox:checked ~ #menuIcon .font12 span:nth-child(2) {
		display: block;
	}

	/* menuCheckbox */
	header > div > #menuCheckbox {
		display: none;
	}

	header > div > #menuCheckbox:checked ~ #navDrawer {
		transform: translate(-100vw);
	}
}

/*----------------------------------------
gnav
-----------------------------------------*/

#gnav {
	position: relative;
	width: 240px;
}

#gnav > ul {
	padding: 23px 0;
}

#gnav > ul > li {
	user-select: none;
}

#gnav > ul > li > span.white01 {
	cursor: default;
}

#gnav > ul > li > span,
#gnav > ul > li > a {
	display: block;
	z-index: 900;
	position: relative;
	padding: 4px 30px 3px;
	background-color: #114fa6;
	color: #fff;
	cursor: pointer;
	/* 消滅 */
	transition-duration: .1s;
	transition-property: background-color;
	transition-timing-function: ease-out;
	transition-delay: .2s;
}

#gnav > ul > li:hover > span,
#gnav > ul > li:hover > a {
	background-color: #2961af;
	/* 出現 */
	transition-duration: .1s;
	transition-property: background-color;
	transition-timing-function: ease-out;
	transition-delay: .2s;
}

#gnav > ul > li:hover > span::before,
#gnav > ul > li:hover > a::before {
	content: '';
	z-index: -1;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	animation-name: bgblink;
	animation-duration: .2s;
	animation-timing-function: ease-out;
	animation-delay: 0;
	animation-iteration-count: 1;
	animation-direction: alternate;
	animation-fill-mode: forwards;
}

@keyframes bgblink {
	0% {
		background-color: #2961af00;
	}

	100% {
		background-color: #2961af;
	}
}

/* サブナビ展開時の三角 */
#gnav > ul > li > span::after {
	content: "";
	z-index: 1000;
	position: absolute;
	top: calc(50% - 12px);
	right: -12px;
	width: 12px;
	height: 12px;
	border: 12px solid transparent;
	border-left: 12px solid #2961af;
	box-sizing: border-box;
	visibility: hidden;
	/* 消滅 */
	transition-duration: .1s;
	transition-property: all;
	transition-timing-function: ease-in;
	transition-delay: .1s;
}

#gnav > ul > li:hover > span::after {
	right: -24px;
	visibility: visible;
	/* 出現 */
	transition-duration: .1s;
	transition-property: all;
	transition-timing-function: ease-out;
	transition-delay: .3s;
}

/* サブナビ */
#gnav > ul > li > div {
	z-index: 800;
	position: absolute;
	overflow: hidden;
	top: 0;
	left: 240px;
	width: 630px;
	padding: 40px 0px 57px 50px;
	background: rgba(51, 51, 51, 0.9);
	opacity: 0;
	visibility: hidden !important;
	/* 消滅 */
	transition-duration: .0s;
	transition-property: all;
	transition-timing-function: ease-out;
	transition-delay: .3s;
}

#gnav > ul > li:hover > div {
	left: 240px;
	opacity: 1;
	visibility: visible !important;
	/* 出現 */
	transition-duration: .2s;
	transition-property: all;
	transition-timing-function: ease-out;
	transition-delay: .3s;
}

#gnav > ul > li > div > p {
	width: 580px;
	margin-bottom: 26px;
}

#gnav > ul > li > div > p > a::after {
	content: "";
	display: inline-block;
	width: 18px;
	height: 18px;
	border-top: 3px solid #666;
	border-right: 3px solid #666;
	transform: rotate(45deg);
	/* テキスト部と同じtransition */
	text-decoration: none;
	transition-property: border-color;
	transition-duration: .1s;
	transition-timing-function: ease-out;
}

#gnav > ul > li > div > p > a:hover::after,
#gnav > ul > li > div > p > a:active::after {
	border-top-color: #00a0e9;
	border-right-color: #00a0e9;
}

#gnav > ul > li > div > ul {
	display: flex;
	flex-wrap: wrap;
	width: 580px;
}

#gnav > ul > li > div > ul > li {
	width: 195px;
	margin-right: 5px;
}

#gnav > ul > li > div > ul > li:nth-child(n+4) {
	margin-top: 12px;
}

#gnav > ul > li > div > ul > li:nth-child(3n+3) {
	width: 180px;
	margin-right: 0;
}

#gnav > ul > li > div > ul > li a {
	position: relative;
	display: block;
	padding-left: 16px;
}

#gnav > ul > li > div > ul > li a::before {
	content: "";
	position: absolute;
	width: 6px;
	height: 6px;
	border: 6px solid transparent;
	border-left: 6px solid #666;
	box-sizing: border-box;
	top: 6px;
	left: 0;
	/* テキスト部と同じtransition */
	text-decoration: none;
	transition-property: border-color;
	transition-duration: .1s;
	transition-timing-function: ease-out;
}

#gnav > ul > li > div > ul > li a:hover::before {
	border-left-color: #00a0e9;
}

/* tmb */
#gnav > ul > li > div > ul.tmb {
	margin-bottom: 32px;
	padding-top: 4px;
}

#gnav > ul > li > div > ul.tmb > li {
	width: 240px;
	margin: 0;
}

#gnav > ul > li > div > ul.tmb > li:nth-child(even) {
	margin-left: 60px;
}

#gnav > ul > li > div > ul.tmb > li > a span {
	position: relative;
	display: block;
	padding-left: 16px;
}

#gnav > ul > li > div > ul.tmb > li a {
	padding-left: 0;
}

#gnav > ul > li > div > ul.tmb > li a > span::before {
	content: "";
	position: absolute;
	width: 6px;
	height: 6px;
	border: 6px solid transparent;
	border-left: 6px solid #666;
	box-sizing: border-box;
	top: 6px;
	left: 0;
}

#gnav > ul > li > div > ul.tmb > li a::before {
	position: relative;
	width: auto;
	height: auto;
	border: none;
	border-left: none;
	top: auto;
	left: auto;
}

#gnav > ul > li > div > ul.tmb > li a > span {
	margin-top: 5px;
}

#gnav > ul > li > div > ul.tmb > li a:hover > span::before {
	border-left-color: #00a0e9;
}

#gnav > ul > li > div > ul.tmb > li:hover > a::before {
	content: "";
	position: absolute;
	display: block;
	width: 240px;
	height: 120px;
	background: rgba(255, 255, 255, 0.5);
}
#gnav > ul > li > div > ul.tmb > li.font14 a > span::before {
	top: .32em;
}

#gnav > ul > li > div > ul > li.dir {
	width: 100%;
	margin: 32px 0 22px;
}

/* dir */
#gnav > ul > li > div > ul > li.dir > ul {
	display: flex;
	flex-wrap: wrap;
	margin: 15px 0 0 15px;
	padding-left: 20px;
	border-left: 1px solid #666;
}

#gnav > ul > li > div > ul > li.dir > ul li {
	width: 252px;
}

#gnav > ul > li > div > ul > li.dir > ul li:nth-child(odd) {
	margin-right: 30px;
}

#gnav > ul > li > div > ul > li.dir > ul li:nth-child(-n+2) {
	margin-top: -2px;
}

#gnav > ul > li > div > ul > li.dir > ul li:nth-child(n+3) {
	margin-top: 13px;
}

#gnav > ul > li > div > ul > li.dir a::before {
	top: .32em;
}

/* search */
#gnav > div {
	background: #07338c;
}
#gnav > div form {
	display: flex;
	padding: 16px 23px 14px 30px;
}

#gnav > div form input[type="text"] {
	width: 160px;
	height: 21px;
	border: none;
	border-bottom: 1px solid #5271af;
	background: none;
	border-radius: 0;
	outline: none;
	font-size: 1.4rem;
	color: #fff;
	box-sizing: border-box;
}
#gnav > div form input[type="text"]:placeholder {
  color: #999;
}
#gnav > div form input[type="text"]:-ms-input-placeholder {
  color: #999;
}
#gnav > div form input[type="text"]::-ms-input-placeholder {
  color: #999;
}

#gnav > div form input[type="image"] {
	width: 22px;
	height: 22px;
	margin-left: 5px;
	opacity: .3;
	transition-duration: .2s;
	transition-timing-function: ease-in-out;
	outline: none;
}

#gnav > div form input[type="text"]:focus + input[type="image"] {
	opacity: 1;
}


/* lang */
#gnav > .lang {
	display: flex;
	padding: 10px 0 20px;
	line-height: 1;
}

#gnav > .lang > li {
	position: relative;
	width: 50%;
	text-align: center;
}

#gnav > .lang > li a {
	width: 100%;
	padding: 10px 0;
}

#gnav > .lang > li:nth-child(2) a {
	width: calc(100% - 1px);
	margin-left: 1px;
}

#gnav > .lang > li:nth-child(2)::before {
	content: "";
	position: absolute;
	top: calc(50% - 8px);
	left: 0;
	width: 1px;
	height: 16px;
	background: #093389;
}

#gnav > .lang > .current::after {
	content: "";
	position: absolute;
	width: 16px;
	height: 2px;
	background: #00a0e9;
	left: calc(50% - 8px);
	bottom: -2px;
}

@media screen and (max-width: 1000px) {
	#gnav {
		display: none;
	}
}

/*----------------------------------------
navDrawer
-----------------------------------------*/
#navDrawer {
	display: none;
}

@media screen and (max-width: 1000px) {
	#navDrawer {
		position: fixed;
		display: block;
		width: 376px;
		height: calc(100vh - 70px);
		box-sizing: border-box;
		background: rgba(51, 51, 51, 0.95);
		top: 70px;
		right: -100vw;
		transition-property: transform;
		transition-duration: .3s;
		transition-timing-function: ease-out;
		overflow-y: scroll;
		-ms-overflow-style: none; /* ie, edge */
		scrollbar-width: none; /* firefox */
		z-index: 3000;
	}

	#navDrawer::-webkit-scrollbar {
		display: none; /* chrome, safari */
	}

	/* gmenu */
	#navDrawer > div > #gmenu > li > a {
		display: block;
		padding: 10px 20px;
		border-bottom: 1px solid #333;
		-moz-user-select: none;
		-webkit-user-select: none;
		-ms-user-select: none;
		user-select: none;
	}

	#navDrawer > div > #gmenu > li > label {
		position: relative;
		display: block;
		padding: 10px 20px;
		cursor: pointer;
		-moz-user-select: none;
		-webkit-user-select: none;
		-ms-user-select: none;
		user-select: none;
	}

	#navDrawer > div > #gmenu > li > label::after {
		content: "";
		position: absolute;
		height: 10px;
		width: 10px;
		border-top: 2px solid #999;
		border-right: 2px solid #999;
		transform: rotate(135deg);
		top: calc(50% - 10px);
		right: 12px;
	}

	#navDrawer > div > #gmenu > li > input[type="checkbox"]:checked ~ label {
		color: #114fa6;
		background: #333;
		font-weight: bold;
	}

	#navDrawer > div > #gmenu > li > input[type="checkbox"]:checked ~ label::after {
		border-top-color: #00a0e9;
		border-right-color: #00a0e9;
		transform: rotate(-45deg);
		top: calc(50% - 5px);
	}

	#navDrawer > div > #gmenu > li > input[type="checkbox"] {
		display: none;
		visibility: hidden;
		margin: 0;
		padding: 0;
		border: none;
		background: none;
		appearance: none;
		outline: none;
	}

	#navDrawer > div > #gmenu > li > input[type="checkbox"] ~ div {
		height: 0;
		background: #333;
		border-bottom: 1px solid #333;
		overflow: hidden;
	}

	#navDrawer > div > #gmenu > li > input[type="checkbox"]:checked ~ div {
		height: auto;
		border-bottom-color: #666;
	}

	#navDrawer > div > #gmenu > li > input[type="checkbox"] ~ div > dl {
		display: flex;
		flex-wrap: wrap;
		padding: 20px;
		transition-duration: .25s;
		transition-timing-function: ease-out;
		opacity: 0;
	}

	#navDrawer > div > #gmenu > li > input[type="checkbox"]:checked ~ div > dl {
		opacity: 1;
	}

	#navDrawer > div > #gmenu > li > input[type="checkbox"] ~ div > dl > dt {
		width: 100%;
		margin-bottom: 10px;
	}

	#navDrawer > div > #gmenu > li > input[type="checkbox"] ~ div > dl > dd {
		width: calc(50% - 10px);
		padding: 0 10px 0 0;
		letter-spacing: -.03em;
	}

	#navDrawer > div > #gmenu > li > input[type="checkbox"] ~ div > dl > dd:nth-of-type(even) {
		padding: 0 0 0 10px;
	}
	
	#navDrawer > div > #gmenu > li > input#gMenu04 ~ div > dl > dd:nth-of-type(4) {
		padding: 0 10px 0 0;
	}
	
	#navDrawer > div > #gmenu > li > input#gMenu04 ~ div > dl > dd:nth-of-type(5) {
		padding: 0 0 0 10px;
	}
	
	#navDrawer > div > #gmenu > li > input#gMenu04 ~ div > dl > dd:nth-of-type(6) {
		padding: 0 10px 0 0;
	}
	
	#navDrawer > div > #gmenu > li > input#gMenu04 ~ div > dl > dd:nth-of-type(7) {
		padding: 0 0 0 10px;
	}

	#navDrawer > div > #gmenu > li > input[type="checkbox"] ~ div > dl > dd:nth-of-type(n+3) {
		margin-top: 5px;
	}

	/* dir */
	#navDrawer > div > #gmenu > li > input[type="checkbox"] ~ div > dl > dd.dir {
		width: 100%;
		margin-top: 0;
		padding: 25px 0;
	}

	#navDrawer > div > #gmenu > li > input[type="checkbox"] ~ div > dl > dd.dir > ul {
		display: flex;
		flex-wrap: wrap;
		margin-top: 7px;
		padding-left: 18px;
		border-left: 1px solid #666;
	}

	#navDrawer > div > #gmenu > li > input[type="checkbox"] ~ div > dl > dd.dir > ul > li {
		width: calc(50% - 15px);
		margin-top: 7px;
		padding: 0 15px 0 0;
	}

	#navDrawer > div > #gmenu > li > input[type="checkbox"] ~ div > dl > dd.dir > ul > li:nth-of-type(even) {
		padding: 0 0 0 15px;
	}

	#navDrawer > div > #gmenu > li > input[type="checkbox"] ~ div > dl > dd.dir > ul > li:nth-of-type(-n+2) {
		margin-top: -5px;
	}

	#navDrawer > div > #gmenu > li > input[type="checkbox"] ~ div > dl > dd.dir > ul > li:nth-last-of-type(2+n) {
		margin: 5px 0 -5px;
	}

	/* search */
	#navDrawer > div > div form {
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 28px 20px 40px;
	}

	#navDrawer > div > div form input[type="text"] {
		width: calc(100% - 51px);
		height: 32px;
		padding: 0 10px;
		border: none;
		border-radius: 16px;
		background: #ccc;
		outline: none;
		font-size: 1.6rem;
		font-size: 16px;
		color: #222;
	}

	#navDrawer > div > div form input[type="image"] {
		width: 22px;
		height: 22px;
		margin-left: 9px;
		outline: none;
	}

	/* lang */
	#navDrawer > div > .lang {
		display: flex;
		margin-bottom: 150px;
		background: #333;
	}

	#navDrawer > div > .lang > li {
		position: relative;
		width: 50%;
		text-align: center;
		-ms-user-select: none;
		user-select: none;
	}

	#navDrawer > div > .lang > li a {
		display: block;
		padding: 10px 10px 20px;
		color: #fff;
	}

	#navDrawer > div > .lang > li.current {
		background: #00a0e9;
	}

	#navDrawer > div > .lang > li.current::before {
		content: "";
		position: absolute;
		bottom: 15px;
		left: calc(50% - 10px);
		width: 20px;
		height: 2px;
		background: #fff;
	}
}

@media screen and (max-width: 414px) {
	#navDrawer {
		width: 100%;
	}
}

/*----------------------------------------
main
-----------------------------------------*/
#main {
	position: relative;
	width: calc(100% - 240px);
}

@media screen and (max-width: 1000px) {
	#main {
		width: 100%;
		margin-top: 70px;
	}
}

/*----------------------------------------
	mv
-----------------------------------------*/
#mv {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 0 50px;
	height: 160px;
	background-color: #62b1d9;
}

#mv>div {
	width: 100%;
	max-width: 1120px;
	margin: 0 auto;
}

#mv>div h1 {
	color: #fff;
}

#mv>div h1>span::before {
	content: '';
	display: inline-block;
	width: 1px;
	height: 1.6rem;
	margin: 0 10px -2px;
	background-color: #fff;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

@media screen and (max-width: 767px) {
	#mv {
		padding: 0 20px;
		height: 80px;
	}
}

/*----------------------------------------
	breadcrumb
-----------------------------------------*/
#breadcrumb {
	border-bottom: 1px solid #ddd;
}

#breadcrumb ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 100%;
	padding: 0 30px;
}

#breadcrumb ul li {
	position: relative;
	padding: 12px 10px 11px 17px;
}

#breadcrumb ul li::before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: -2px;
	width: 7px;
	height: 7px;
	border-top: 1px solid #bbb;
	border-right: 1px solid #bbb;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transform-origin: top right;
	-ms-transform-origin: top right;
	transform-origin: top right;
}

#breadcrumb ul li:first-child {
	padding-left: 0;
}

#breadcrumb ul li:first-child::before {
	content: none;
}

#breadcrumb ul li {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
}

#breadcrumb ul li:last-child {
	-webkit-box-flex: 1;
	-ms-flex: 1 1 auto;
	flex: 1 1 auto;
	overflow: hidden;
	white-space: nowrap;
	-o-text-overflow: ellipsis;
	text-overflow: ellipsis;
}

@media screen and (max-width: 767px) {
	#breadcrumb {
		display: none;
	}
}

/*----------------------------------------
	content
-----------------------------------------*/
#content {
	background: url("../img/c_content_bg01.png") no-repeat left top;
	background-size: 40% auto;
	padding: 60px 0;
}
#content > div {
	max-width: 1120px;
	margin: 0 auto;
	padding: 0 50px;
}

@media screen and (max-width: 767px) {
	#content {
		background: url("../img/c_content_bg01_sp.png") no-repeat left top;
		background-size: 100% auto;
		padding: 40px 0;
	}
	#content > div {
		max-width: none;
		padding: 0 20px;
	}
}

/*----------------------------------------
footer
-----------------------------------------*/
footer {
	position: relative;
}

footer > #pagetop {
	display: block;
	position: absolute;
	top: -25px;
	right: 30px;
	width: 48px;
	height: 48px;
	border-radius: 50px;
	border: 1px solid #ddd;
	background: #fff;
	box-shadow: 0px 2px 0 rgba(0, 0, 0, 0.1);
	cursor: pointer;
	transition: .2s;
	opacity: 0;
}

footer > #pagetop::after {
	content: "";
	position: absolute;
	top: calc(50% - 3px);
	left: calc(50% - 7px);
	width: 12px;
	height: 12px;
	border-top: 2px solid #00a0e9;
	border-right: 2px solid #00a0e9;
	transform: rotate(-45deg);
}

@media screen and (min-width: 1001px) {
	footer > #pagetop:hover {
		border: 1px solid #00a0e9;
		background: #00a0e9;
		color: #fff;
	}

	footer > #pagetop:hover::after {
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
	}
}

@media screen and (max-width: 1000px) {
	footer > #pagetop {
		right: 10px;
	}
}

/*----------------------------------------
fmenu
-----------------------------------------*/
#fmenu {
	padding: 40px 50px 60px 70px;
	background: #eee;
}

#fmenu > p {
	max-width: 1200px;
	margin: 0 auto 60px;
}

#fmenu > p img {
	width: 255px;
	height: auto;
}

#fmenu > div {
	display: flex;
	justify-content: space-between;
	max-width: 1200px;
	margin: 0 auto;
}

#fmenu > div > div {
	max-width: 224px;
	margin-right: 20px;
}

#fmenu > div > div:nth-child(3) > ul {
	display: none;
}
#fmenu > div > div:nth-child(4) > ul {
	display: block;
}

#fmenu > div > div > input[type="checkbox"],
#fmenu > div > div > dl > dt label,
#fmenu > div > div > dl > dd > dl > dt {
	display: none;
}

#fmenu > div > div > dl > dd > dl > dd {
	margin-top: 13px;
}

#fmenu > div > div > dl:nth-of-type(n+2) {
	margin-top: 53px;
}

/* dir */
#fmenu > div > div > dl > dd > dl > dd.dir ul {
	margin-left: 14px;
}

#fmenu > div > div > dl > dd > dl > dd.dir ul > li {
	margin-top: 13px;
}

#fmenu > div > div > ul > li {
	margin-top: 53px;
}

@media screen and (max-width: 1000px) {
	#fmenu {
		padding: 31px 0 0;
	}

	#fmenu > p {
		max-width: 100%;
		margin: 0 0 40px 20px;
	}

	#fmenu > p img {
		width: 153px;
	}

	#fmenu > div {
		flex-direction: column;
		max-width: 100%;
		width: 100%;
		margin: 0;
		padding-left: 0;
	}

	#fmenu > div > div {
		max-width: 100%;
		width: 100%;
		margin-right: 0;
	}

	#fmenu > div > div:first-child {
		-ms-flex-order: 0;
		order: 0;
	}
	#fmenu > div > div:nth-child(2) {
		-ms-flex-order: 1;
		order: 1;
	}
	#fmenu > div > div:nth-child(3) {
		-ms-flex-order: 3;
		order: 3;
	}
	#fmenu > div > div:nth-child(3) > ul {
		display: block;
	}
	#fmenu > div > div:nth-child(4) {
		-ms-flex-order: 2;
		order: 2;
	}
	#fmenu > div > div:nth-child(4) > ul {
		display: none;
	}

	#fmenu > div > div > dl > dt {
		position: relative;
		padding: 12px 20px;
		border-top: 1px solid #ddd;
		user-select: none;
	}

	#fmenu > div > div > input[type="checkbox"]:checked + dl > dt {
		background: #fff;
	}

	#fmenu > div > div > dl > dt a {
		display: inline-block;
		pointer-events: none;
	}

	#fmenu > div > div:first-child > dl:nth-of-type(2) > dt {
		padding: 0;
	}

	#fmenu > div > div:first-child > dl:nth-of-type(2) > dt > a {
		display: block;
		padding: 12px 20px;
		pointer-events: auto;
	}

	#fmenu > div > div > input[type="checkbox"]:checked + dl > dt a {
		font-weight: bold;
		color: #114fa6;
	}

	#fmenu > div > div > dl > dt label {
		position: absolute;
		display: block;
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		cursor: pointer;
	}

	#fmenu > div > div > dl > dt label::after {
		content: "";
		position: absolute;
		height: 10px;
		width: 10px;
		border-top: 2px solid #999;
		border-right: 2px solid #999;
		transform: rotate(135deg);
		top: calc(50% - 10px);
		right: 12px;
	}

	#fmenu > div > div > input[type="checkbox"]:checked + dl > dt label::after {
		border-top-color: #00a0e9;
		border-right-color: #00a0e9;
		transform: rotate(-45deg);
		top: calc(50% - 5px);
	}

	#fmenu > div > div > dl > dd {
		display: none;
		padding: 12px 20px;
		background: #fff;
	}

	#fmenu > div > div > input[type="checkbox"]:checked + dl > dd {
		display: block;
	}

	#fmenu > div > div > dl > dd > dl {
		display: flex;
		flex-wrap: wrap;
	}

	#fmenu > div > div > dl > dd > dl > dt {
		position: relative;
		display: block;
		width: 100%;
	}

	#fmenu > div > div > dl > dd > dl > dd {
		width: calc(50% - 10px);
		margin-top: 7px;
		padding: 0 10px 0 0;
	}

	#fmenu > div > div > dl > dd > dl > dd:nth-child(odd) {
		padding: 0 0 0 10px;
	}
	
	#fmenu > div > div > input#fMenu03 + dl > dd > dl > dd:nth-of-type(4) {
		padding: 0 10px 0 0;
	}
	
	#fmenu > div > div > input#fMenu03 + dl > dd > dl > dd:nth-of-type(5) {
		padding: 0 0 0 10px;
	}
	
	#fmenu > div > div > input#fMenu03 + dl > dd > dl > dd:nth-of-type(6) {
		padding: 0 10px 0 0;
	}
	
	#fmenu > div > div > input#fMenu03 + dl > dd > dl > dd:nth-of-type(7) {
		padding: 0 0 0 10px;
	}

	#fmenu > div > div > dl:nth-of-type(n+2) {
		margin-top: 0;
	}

	/* dir */
	#fmenu > div > div > dl > dd > dl > dd.dir {
		width: 100%;
		margin-top: 0;
		padding: 30px 0;
	}

	#fmenu > div > div > dl > dd > dl > dd.dir ul {
		display: flex;
		flex-wrap: wrap;
		margin: 10px 0 0;
		padding-left: 17px;
		border-left: 1px solid #ccc;
	}

	#fmenu > div > div > dl > dd > dl > dd.dir ul > li {
		width: calc(50% - 15px);
		margin-top: 7px;
		padding: 0 15px 0 0;
	}

	#fmenu > div > div > dl > dd > dl > dd.dir ul > li:nth-of-type(even) {
		padding: 0 0 0 15px;
	}

	#fmenu > div > div > dl > dd > dl > dd.dir ul > li:nth-of-type(-n+2) {
		margin-top: -3px;
	}

	#fmenu > div > div > dl > dd > dl > dd.dir ul > li:nth-last-of-type(-n+2) {
		margin: 7px 0 -3px 0;
	}

	#fmenu > div > div > ul {
		width: 100%;
		border-bottom: 1px solid #ddd;
	}
	#fmenu > div > div > ul > li {
		margin-top: 0;
		border-top: 1px solid #ddd;
	}
	#fmenu > div > div > ul > li > a {
		display: block;
		padding: 12px 20px;
	}
}

/*----------------------------------------
flink
-----------------------------------------*/
#flink {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 40px 30px 17px;
	background: #fff;
}

#flink > ul {
	display: flex;
	margin-bottom: 13px;
}

#flink > ul > li {
	margin-right: 30px;
}

#flink > p {
	margin-bottom: 13px;
}

@media screen and (max-width: 1000px) {
	#flink {
		display: inherit;
		padding: 16px 20px;
	}

	#flink > ul {
		flex-wrap: wrap;
		margin-bottom: 10px;
	}

	#flink > ul > li {
		width: calc(50% - 5px);
		margin: 8px 0 0;
		padding: 0 5px 0 0;
	}

	#flink > ul > li:nth-of-type(-n+2) {
		margin: 0;
	}

	#flink > ul > li:nth-child(even) {
		padding: 0 0 0 5px;
	}

	#flink > p {
		margin-bottom: 0;
	}
}

/*-----------------------------------------
	pageContents
	+ news-page
	+ exhibition-page
-----------------------------------------*/
/* ↓ 過去記事調整用 ↓ */
#pageContents {
	overflow: hidden;
	padding-bottom: 2px;
}
#pageContents p img {
	width: auto;
	max-width: 100%;
}
#pageContents p span[style$="small;"] {
	font-size: 1.6rem !important;
}
#pageContents a[href*="http"] {
	word-break: break-all;
}
/* ↑ 過去記事調整用 ↑ */

#pageContents .pageTitle {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
		flex-wrap: wrap;
}
#pageContents .pageTitle>.title {
	width: 100%;
	margin-top: -2px;
	margin-bottom: 40px;
	padding: 0 0 36px;
	line-height: 1.2;
	color: #000;
	border-bottom: 1px solid #ddd;
}

/* ---- ↓ news style ↓ ---- */
#pageContents .pageTitle>.tag {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
		-ms-flex-pack: center;
			justify-content: center;
	-webkit-box-align: center;
		-ms-flex-align: center;
			align-items: center;
	width: 7.0em;
	height: 2.0em;
	margin-bottom: 20px;
	color: #fff;
	border-radius: 3px;
}
#pageContents.company .pageTitle>.tag {
	background-color: #3092bf;
}
#pageContents.products .pageTitle>.tag {
	background-color: #2e9999;
}
#pageContents.ir .pageTitle>.tag {
	background-color: #9474a6;
}
#pageContents.notice .pageTitle>.tag {
	background-color: #74a642;
}
#pageContents .pageTitle>.date {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
		-ms-flex-align: center;
			align-items: center;
	width: calc(100% - 20px - 7.0em);
	margin-bottom: 20px;
	padding: 0 0 0 20px;
}
/* ---- ↑ news style ↑ ---- */

/* text */
#pageContents [class*="text"] {
	margin-bottom: 40px;
	line-height: 1.8;
}
#pageContents [class*="text"] a {
	text-decoration: underline;
}
#pageContents [class*="text"] a:hover {
	text-decoration: none;
}
#pageContents .r_text {
	text-align: right;
}
#pageContents .sub_text {
	margin-top: -20px;
}

/* headline */
#pageContents .hl01 {
	margin-bottom: 10px;
	color: #000;
}
#pageContents .hl02 {
	margin-bottom: 8px;
	color: #000;
}

/* image */
#pageContents figure>img {
	display: block;
	max-width: 700px;
	margin: 0 auto 40px;
}

/* img_2column */
#pageContents .img_2_column {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
		-ms-flex-pack: justify;
			justify-content: space-between;
}
#pageContents .img_2_column>figure {
	width: 100%;
	max-width: calc(50% - 40px);
	-webkit-box-flex: 1;
		-ms-flex: 1 1 auto;
			flex: 1 1 auto;
}
@media screen and (max-width: 767px) {
	#pageContents .img_2_column {
		display: block;
	}
	#pageContents .img_2_column>figure {
		max-width: 100%;
	}
}

/* img_text */
#pageContents .img_text_1_column>figure>img {
	margin-bottom: 30px;
}
#pageContents .img_text_1_column>figure .text {
	margin-bottom: 0;
}

#pageContents .img_text_2_column {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
		-ms-flex-pack: justify;
			justify-content: space-between;
}
#pageContents .img_text_2_column>figure {
	width: 100%;
	max-width: calc(50% - 40px);
	-webkit-box-flex: 1;
		-ms-flex: 1 1 auto;
			flex: 1 1 auto;
}
#pageContents .img_text_2_column>figure .text {
	margin-bottom: 0;
}
#pageContents .img_text_2_column>figure>img {
	margin-bottom: 0.5em;
}
@media screen and (max-width: 767px) {
	#pageContents .img_text_2_column {
		display: block;
	}
	#pageContents .img_text_2_column>figure {
		max-width: 100%;
	}
	#pageContents .img_text_2_column>figure+figure {
		margin-top: 40px;
	}
}

/* table */
#pageContents [class^="table"] {
	width: 100%;
	margin-bottom: 40px;
}
#pageContents [class^="table"] a {
	word-break: break-all;
	text-decoration: underline;
}
#pageContents [class^="table"] a:hover {
	text-decoration: none;
}

#pageContents .table_2_clumn>ul {
	border-top: 1px solid #ddd;
}
#pageContents .table_2_clumn>ul li {
	border-bottom: 1px solid #ddd;
}
#pageContents .table_2_clumn>ul li>dl {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
#pageContents .table_2_clumn>ul li>dl dt {
	width: 20%;
	padding: 20px;
	background-color: #fafafa;
}
#pageContents .table_2_clumn>ul li>dl dd {
	width: 80%;
	padding: 20px;
}

/* tableタグ */
#pageContents .table_2_clumn>tbody {
	border-top: 1px solid #ddd;
}
#pageContents .table_2_clumn>tbody tr {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	border-bottom: 1px solid #ddd;
}
#pageContents .table_2_clumn>tbody tr th {
	width: 20%;
	padding: 20px;
	background-color: #fafafa;
}
#pageContents .table_2_clumn>tbody tr td {
	width: 80%;
	padding: 20px;
}
@media screen and (max-width: 767px) {
	#pageContents .table_2_clumn>ul li>dl dt {
		width: 8.0em;
		max-width: 8.0em;
		padding: 1.0em;
	}
	#pageContents .table_2_clumn>ul li>dl dd {
		width: calc(100% - 8.0em);
		max-width: calc(100% - 8.0em);
		padding: 1.0em;
	}
	
	/* tableタグ */
	#pageContents .table_2_clumn>tbody tr th {
		width: 8.0em;
		max-width: 8.0em;
		padding: 1.0em;
	}
	#pageContents .table_2_clumn>tbody tr td {
		width: calc(100% - 8.0em);
		max-width: calc(100% - 8.0em);
		padding: 1.0em;
	}
}

/* clipFiles */
#pageContents .clipFiles {
	margin-bottom: 40px;
}
#pageContents .clipFiles a[href$=".pdf"]::after {
	content: "";
    display: inline-block;
    width: 22px;
    height: 22px;
    margin: 4px 0 -4px 5px;
    background-image: url(/img/c_pdf_icon01.png);
    background-repeat: no-repeat;
    background-size: 22px 22px;
}


/* backbtn */
#pageContents .btn01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
		-ms-flex-pack: center;
			justify-content: center;
	-webkit-box-align: center;
		-ms-flex-align: center;
			align-items: center;
	width: 80%;
	max-width: 330px;
	height: 3.0em;
	margin: 0 auto;
	padding: 0;
	border: 1px solid #ddd;
	background-color: #fff;
	border-radius: 40px;
	-webkit-box-shadow: 0px 2px 0 rgba(0, 0, 0, 0.1);
			box-shadow: 0px 2px 0 rgba(0, 0, 0, 0.1);
	-webkit-transition: 0.2s;
	-o-transition: 0.2s;
	transition: 0.2s;
}
#pageContents .btn01>span {
	padding: 0 22px;
	color: #000;
}
#pageContents .btn01>span::before {
	content: "";
	display: inline-block;
	height: 10px;
	width: 10px;
	margin-right: 5px;
	border-bottom: 2px solid #00a0e9;
	border-left: 2px solid #00a0e9;
	-webkit-transform-origin: center center;
		-ms-transform-origin: center center;
			transform-origin: center center;
	-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
			transform: rotate(45deg);
	-webkit-transition: 0.2s;
	-o-transition: 0.2s;
	transition: 0.2s;
}

#pageContents .btn01:hover {
	background-color: #00a0e9;
}
#pageContents .btn01:hover>span {
	color: #fff;
}
#pageContents .btn01:hover>span::before {
	border-color: #fff;
}
@media screen and (max-width: 767px) {
	#pageContents .btn01 {
		max-width: 280px;
	}
}

/* em 対応 */
#pageContents em {
	font-style: italic;
	font-weight: normal;
}

/* pc時のtable幅指定 対応 */
@media screen and (min-width: 768px) {
	table.w100 {
		width: 100% !important;
	}
}


/*-----------------------------------------
	sp swipe icon
-----------------------------------------*/
@media screen and (max-width: 767px) {
	.touchCover {
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		height: 100%;
		width: 100%;
		background: url("../img/i_swipe.png") no-repeat center 60px;
		background-size: 110px 110px;
		pointer-events: none;
	}
}

/*----------------------------------------
	cookie
-----------------------------------------*/
#cookie {
	display: flex;
	justify-content: space-between;
	align-items: center;
	z-index: 10000;
	position: fixed;
	right: 0;
	bottom: 0;
	width: 100%;
	padding: 20px 0;
	background-color: rgba(51, 51, 51, 0.95);
	box-sizing: border-box;
}

#cookie p.font16_14 {
	padding: 0 50px 0 38px;
	line-height: 1.75;
}

#cookie p.font16_14 a {
	text-decoration: underline;
}

/* 同意ボタン */
#cookie #agreeBtn {
	margin: 0 40px 0 0;
}

#cookie #agreeBtn a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 156px;
	padding: 14px 30px;
	border-radius: 26px;
	background-color: #0072b2;
	box-shadow: 2px 2px 2px 0px rgba(0, 0, 0, 0.1);
	box-sizing: border-box;
	color: #fff;
	font-weight: bold;
	transition: background-color .2s ease-out;
}

#cookie #agreeBtn a:hover {
	background-color: #3f95c5;
}

@media (max-width: 767px) {
	#cookie {
		display: block;
		padding: 0 0 20px;
	}

	#cookie p.font16_14 {
		padding: 20px 19px 15px 19px;
		line-height: 1.5;
	}

	#cookie #agreeBtn {
		width: 156px;
		margin: 0 auto;
	}

	#cookie #agreeBtn a {
		padding: 10px 30px 9px;
	}
}

/*-----------------------------------------
	print
-----------------------------------------*/
@media print {
	/*body {
		width: 1400px;
		transform: scale(0.5);
		-moz-transform: scale(0.5);
		-webkit-transform: scale(0.5);
		transform-origin: left top;
	}*/
	header {
		position: absolute;
		width: 100%;
		height: 70px;
		background: #fff;
		top: 0;
		left: 0;
	}
	header > div {
		position: relative;
	}
	header > div > h1 {
		width: auto;
		padding: 23px 0 0 20px;
		background: none;
		text-align: left;
	}
	header > div > h1 img {
		width: 153px;
		height: auto;
		margin-left: 0;
	}
	/* menuIcon */
	header > div > #menuIcon {
		display: none;
	}
	#gnav {
		display: none;
	}
	#main {
		width: 100%;
		margin-top: 70px;
	}
	footer {
		display: none;
	}
	#main::after {
		display: block;
		margin-top: 20px;
		color: #666;
		content: "Copyright © KURABO INDUSTRIES LTD. All rights Reserved.";
	}
}
@media print and (-ms-high-contrast: none){
	body {
		page-break-before: auto;
	}
}

/*----------------------------------------
	lang en
-----------------------------------------*/
[lang="en"] .italic {
	font-style: italic;
}

[lang="en"] #tab>ul>li {
    display: flex;
	width: 100%;
	max-width: 200px;
}
[lang="en"] #tab>ul>li>a,
[lang="en"] #sec02 > div > ul > li.tab {
    white-space: normal;
	height: auto;
	min-height: 50px;
	text-align: center;
}
[lang="en"] #content > #pageAnchor > ul {
	flex-wrap: wrap;
	width: auto;
	margin-bottom: 40px;
}
[lang="en"] #content > #pageAnchor > ul > li {
	margin-right: 32px;
	margin-left: 0;
}
[lang="en"] #content > #pageAnchor > ul > li > a {
	display: inline-block;
	margin-bottom: 13px;
}
/* division */
[lang="en"] #sec02 > #pageAnchor > li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
[lang="en"] #sec02 > #pageAnchor > li > a {
	width: 100%;
	font-size: 1.4rem;
}
[lang="en"] body:not(.group) div[id*="sec"] .btn01 > a > span::after {
	top: calc(50% - 10px);
}
[lang="en"] body:not(.group) div[id*="sec"] .btn01 > a {
	/*height: auto !important;
	padding-top: 20px;
	padding-bottom: 20px;
	min-height: 50px;*/
	font-size: 80%;
	text-align: center;
}
[lang="en"] body:not(.group) div[id*="sec"] .btn01 > a > span {
    padding-left: 25px;
}
[lang="en"] body.group div[id*="sec"] .btn01 > a {
	width: auto;
	padding: 0 20px 0 30px;
}
[lang="en"] body.group div[id*="sec"] .btn01 > a > span::after {
	top: calc(20% + 4px);
	right: 2%;
}

/* sustainability society contribution */
[lang="en"] body.contribution .sec02 > div > div {
	width: calc(33.3333% - 20px);
}
[lang="en"] body.contribution .sec02 > div > div:nth-child(n+3) {
	margin-top: 0;
}
[lang="en"] body.contribution .sec02 > div > div > figure {
	width: 100%;
	margin-bottom: 20px;
}
[lang="en"] body.contribution .sec02 > div > div p {
	margin-bottom: 0;
}

/* en company about */
[lang="en"] body.about .about_table dl:nth-child(6) dd ul li>span:first-child {
	width: auto;
	margin-right: 20px;
}
[lang="en"] body.about .about_table dl:nth-child(6) dd ul li+li {
	margin-top: 14px;
}
/* en company number */
[lang="en"] body.number #content>div:nth-child(4) .btn01:nth-child(2) a {
	padding: 10px 30px;
	line-height: 1.5;
}
/* en company office */
[lang="en"] body.office #content > #pageAnchor > ul {
	margin-bottom: 0;
}

@media screen and (max-width: 1193px) and (min-width: 768px){
	[lang="en"] #sec02 #pageAnchor > li > a {
		height: auto;
	}
}
@media (max-width: 767px) {
	/* flex unset */
	[lang="en"] #tab>ul>li,
	[lang="en"] #sec02 #pageAnchor > li {
		display: block;
	}
	[lang="en"] #tab>ul>li {
		width: calc(50% - 1px);
		max-width: 100%;
	}
	[lang="en"] #tab>ul>li a {
		height: 100%;
		padding-left: 10px;
		padding-right: 10px;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
	[lang="en"] #sec02 #pageAnchor > li > a {
		height: 100%;
		padding-right: 18%;
	}
	
	/* en company number */
	[lang="en"] body.number #content>div:nth-child(n) .btn01:nth-child(n) a {
		max-width: 300px;
		padding: 10px 30px;
		line-height: 1.5;
	}
	
	/* en company about */
	[lang="en"] body.about .about_table dl dt {
		min-width: 118px;
	}
	/* en company office */
	[lang="en"] body.office #content > #pageAnchor > ul > li > a {
		margin-bottom: 0;
	}
	[lang="en"] body.office .office_table dl dt {
		min-width: 118px;
	}
	[lang="en"] body.office .office_table dl dd {
		min-width: calc(75% - 118px);
	}
	
	/* en rd policy */
	[lang="en"] #content > #pageAnchor > ul > li > a {
		margin-bottom: 0;
	}
	
	/* sustainability society contribution */
	[lang="en"] body.contribution .sec02 > div > div {
		width: 100%;
	}
	
	/* en sustainability sdgs */
	[lang="en"] body.sdgs #sec02 > div > dl > dt {
		min-height: 70px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
			-ms-flex-pack: center;
				justify-content: center;
		-webkit-box-align: center;
			-ms-flex-align: center;
				align-items: center;
	}
}