@charset "utf-8";

body > header {
	position: relative;
	top: 0;
	left: 0;
	z-index: 200;
	width: 100%;
	/* height: 65px; */
	height: 6.02vh;
	background-color: rgba(255,255,255,1.00);
}

body.home > header {
	position: fixed;
}

body > header > h1 img,
body > header > p.logo img {
	width: auto;
	/* height: 45px; */
	height: 4.167vh;
}

body > header > h1,
body > header > p.logo {
	position: absolute;
	/* top: 10px;
	left: 10px; */
	top: 0.926vh;
	left: 0.926vh;
}

body > header > ul.header-nav {
	position: absolute;
	top: 1.203vh;
	right: 1.389vh;
}

body > header > ul.header-nav > li {
	display: inline-block;
	vertical-align: middle;
}

body > header > ul.header-nav > li > ul.sns > li {
	/* margin-right: 6px; */
	margin-right: 0.556vh;
	display: inline-block;
	vertical-align: top;
}

body > header > ul.header-nav > li > ul.sns > li img {
	width: auto;
	/* height: 35px; */
	height: 3.241vh;
}

body > header > ul.header-nav > li > p.english > a {
	padding: 0.9259vh;
	display: inline-block;
	color: rgba(255,255,255,1.00);
	background-color: rgba(137,137,137,1.00);
	text-decoration: none;
	font-size: 1.389vh;
	line-height: 1.0;
}

body > header > ul.header-nav > li > div.search > form {
	padding: 0.278vh 2.778vh 0.278vh 0.741vh;
	border: solid 1px rgba(181,181,181,1.00);
	display: inline-block;
	background-color: rgba(255,255,255,1.00);
	width: 100%;
	vertical-align: top;
	box-sizing: border-box;
	height: 2.963vh;
	position: relative;
}

body > header > ul.header-nav > li > div.search > form > input[type="text"] {
	border: 0;
	padding: 0;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	width: 100%;
	height: 1.944vh;
	box-sizing: border-box;
	vertical-align: top;
	font-size: 1.296vh;
}

body > header > ul.header-nav > li > div.search > form > input[type="submit"] {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	border: 0;
	position: absolute;
	top: 0.37vh;
	right: 0.463vh;
	width: 2.037vh;
	height: 2.037vh;
	background-color: transparent;
	background-image: url("../images/common/header/icon-search-g.svg");
	background-size: 2.037vh;
	background-repeat: no-repeat;
	vertical-align: top;
	cursor: pointer;
}

body > header > ul.header-nav > li > div.search * {
	margin: 0;
	padding: 0;
}

body > header > ul.header-nav > li > div.search .gsc-control-cse {
	padding: 0;
}


body > header > ul.header-nav > li > div.search table.gsc-search-box {
	padding: 0.278vh 2.778vh 0.278vh 0.741vh;
	border: solid 1px rgba(181,181,181,1.00);
	display: inline-block;
	background-color: rgba(255,255,255,1.00);
	width: 100%;
	vertical-align: top;
	box-sizing: border-box;
	height: 2.963vh;
	position: relative;
}

/* body > header > ul.header-nav > li > div.search table.gsc-search-box table,
body > header > ul.header-nav > li > div.search table.gsc-search-box td,
body > header > ul.header-nav > li > div.search table.gsc-search-box tr {
	display: block;
} */

body > header > ul.header-nav > li > div.search table.gsc-search-box div.gsc-input-box {
	border: none;
}

body > header > ul.header-nav > li > div.search table.gsc-search-box div.gsc-input-box .gsib_a {
	padding: 0;
}

body > header > ul.header-nav > li > div.search table.gsc-search-box div.gsc-input-box .gscb_a {
	padding-top: 4px;
	line-height: 1.296vh;
}

body > header > ul.header-nav > li > div.search table.gsc-search-box td.gsc-input {
	padding-right: 0;
}

body > header > ul.header-nav > li > div.search table.gsc-search-box div.gsc-input-box input.gsc-input {
	border: 0 !important;
	padding: 0 !important;
	-moz-appearance: none !important;
	-webkit-appearance: none !important;
	appearance: none !important;
	/* width: 100% !important; */
	height: 1.944vh !important;
	box-sizing: border-box !important;
	vertical-align: top !important;
	font-size: 1.296vh !important;
	width: 150px !important;
}

body > header > ul.header-nav > li > div.search table.gsc-search-box button.gsc-search-button-v2 {
	-moz-appearance: none;
	-webkit-appearance: none;
	padding: 0;
	appearance: none;
	border: 0;
	position: absolute;
	top: 0.37vh;
	right: 0.463vh;
	width: 2.037vh;
	height: 2.037vh;
	background-color: transparent;
	background-image: url("../images/common/header/icon-search-g.svg");
	background-size: 2.037vh;
	background-repeat: no-repeat;
	vertical-align: top;
	cursor: pointer;
}

body > header > ul.header-nav > li > div.search table.gsc-search-box button.gsc-search-button-v2 > svg {
	display: none;
}

div.main > div.contents > ul {
	text-align: center;
}

div.main > div.contents > ul > li {
	/* margin-left: 95px; */
	margin-left: 3.95vw;
	margin-left: min(3.95vw, 90px);
	display: inline-block;
	vertical-align: top;
}

div.main > div.contents > ul > li:first-child {
	margin-left: 0;
}

body > footer {
	height: 4.167vh;
	background-color: rgba(76,79,82,1.00);
	position: relative;
	font-size: 62.5%;
}

body > footer ul.nav {
	position: absolute;
	top: 1.296vh;
	left: 1.042vw;
	z-index: 201;
}

body > footer ul.nav > li {
	padding-left: 8px;
	margin-right: 1.851vh;
	display: inline-block;
	vertical-align: top;
	font-size: min(1.389vh, 14px);
	position: relative;
}

body > footer ul.nav > li::before {
	margin-top: -1px;
	content: "";
	width: 4px;
	height: 1px;
	display: block;
	background-color: rgba(255,255,255,1.00);
	position: absolute;
	left: 0;
	top: 50%;
}

body > footer ul.nav > li > a {
	color: rgba(255,255,255,1.00);
}

body > footer ul.nav > li > a:hover {
	text-decoration: underline;
}


body > footer p.copyright {
	position: absolute;
	top: 1.296vh;
	right: 1.042vw;
	z-index: 201;
	color: rgba(255,255,255,1.00);
	font-size: min(1.389vh, 14px);
}

body > footer > div.body > div.pagetoplink {
}

body > footer > div.body > div.pagetoplink > p {
	position: absolute;
	bottom: calc( 4.167vh + 15px );
	right: 15px;
	font-size: 1.4rem;
	z-index: 20;
}

body > footer > div.body > div.pagetoplink > p > a {
	display: inline-block;
	border-radius: 50%;
	padding-top: 5.5vh;
	width: 9.259vh;
	height: 9.259vh;
	color: rgba(255,255,255,1.00);
	background-color: rgba(76,79,82,0.70);
	text-transform: uppercase;
	position: relative;
	box-sizing: border-box;
	font-size: 1.2rem;
	text-align: center;
}

body > footer > div.body > div.pagetoplink > p > a::before {
	content: "";
	margin-left: -1.2vh;
	display: block;
	top: 3.3vh;
	left: 50%;
	position: absolute;
	width: 2vh;
	height: 2vh;
	border-top: solid 5px rgba(255,255,255,1.00);
	border-right: solid 5px rgba(255,255,255,1.00);
	transform: rotate(-45deg)
}

@media screen and (max-width: 600px) {
	body > footer {
		padding: 0.9259vh;
		height: auto;
	}
	
	body > footer ul.nav {
		position: static;
		text-align: center;
	}
	
	body > footer p.copyright {
		position: static;
		text-align: center;
	}
	
	body > footer > div.body > div.pagetoplink > p > a {
		font-size: 1.1rem;
	}
}