@charset "utf-8";

/* ==========================================================
 * reset
 * ========================================================*/
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td,figure {
	margin: 0;
	padding: 0;
}
h1,h2,h3,h4,h5,h6,th,dt {
	font-weight: 400;
}
address,caption,cite,code,dfn,em,strong,th,var {
	font-style: normal;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
q:before,q:after {
	content: '';
}
object,embed {
	vertical-align: top;
}
hr,legend {
	display: none;
}
h1,h2,h3,h4,h5,h6 {
	font-size: 100%;
}
img,abbr,acronym,fieldset {
	border: 0;
}
ol,ul {
	list-style-type: none;
}

/* ==========================================================
 * common
 * ========================================================*/
html {
	font: 62.5%;
}
body {
	font-size: 1rem;
	font-family: "Noto Sans Japanese", 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	line-height: normal;
	color: #000000;
	background: #fff;
}
img {
	vertical-align: top;
	width: 100%;
}
p {
	text-align: justify;
}
*::selection {
	background: #81bb0d;
	color: #d0ff00;
}
*::-moz-selection {
	background: #81bb0d;
	color: #d0ff00;
}
.clearfix:after {
	content: "";
	display: block;
	clear: both;
}
.clear {
	clear: both;
}
.corner {
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}
.left, .right {
	float: none;
}
.te_left {
	text-align: left !important;
}
.te_right {
	text-align: right !important;
}
.te_center {
	text-align: center !important;
}
.center {
	margin: 0 auto !important;
}
.block {
	display: block !important;
}
.inline {
	display: inline !important;
}
.nopadding {
	padding: 0 !important;
}
.nomargin {
	margin: 0 !important;
}
.noborder {
	border: none !important;
}
.nobg {
	background: none !important;
}
small {
	font-size: 90%;
	font-weight: normal;
}
strong {
	font-size: 110%;
	font-weight: 500;
}
a {
	outline: none;
	text-decoration: none;
}
a img {
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	-o-transition: all .3s ease;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
a img:hover {
	opacity: 0.6;
	filter: alpha(opacity=60);
/* ie lt 8 */
	-ms-filter: alpha(opacity=60);
/* ie 8 */
	-moz-opacity: 0.6;
/* FF lt 1.5, Netscape */
	-khtml-opacity: 0.6;
/* Safari 1.x */
}
.button {
	width: 100%;
	max-width: 300px;
	margin: 4rem auto;
	padding: 1.5rem 1rem;
	text-align: center;
	font-size: 1.3rem;
	font-family: "Noto Sans Japanese";
	font-weight: bold;
	transition: 0.2s;
	display: block;
	color: #fff;
	border: 1px solid #000;
	background: #000;
}
.button:hover {
	background: #efefef;
	color: #000;
}

/* ==========================================================
 * header
 * ========================================================*/
header {
	position: relative;
	top: 0;
	width: 100%;
	height: 50px;
	background: #000;
}
header .width_box2 div {
	position: absolute;
	background: #fff;
	width: 200px;
	height: 120px;
}
header .width_box2 div p {
	text-align: center;
	padding-top: 40px;
	font-size: 1.5rem;
	font-weight: 900;
	color: #000;
	transition: 0.2s;
}
header .width_box2 div:hover p {
	color: #aaa;
}
header ul {
	display: flex;
	float: right;
	padding: 0.7rem 1.5rem 0 0;
}
header ul li {
	margin: 0 1rem;
}
header ul li a {
	color: #fff;
	font-weight: 700;
	transition: 0.2s;
}
header ul li a:hover {
	color: #ccc;
}
header ul li a .fas {
	margin-right: 0.5rem;
}

/* ==========================================================
 * footer
 * ========================================================*/
footer p {
	font-size: 0.9rem;
	font-weight: 500;
	text-align: center;
	margin: 2rem auto;
}

/* =========================================================
 * responsive
 * =========================================================*/
@media screen and (min-width:1024px){
	/* ===== common =====*/
	.left {
		float: left;
		width: 50%;
	}
	.right {
		float: right;
		width: calc(50% - 1px);
	}
}