@charset "utf-8";

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	font-size: 100%;
	vertical-align: baseline;
}
ol, ul {
	list-style: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
caption, th, td {
	text-align: left;
	font-weight: normal;
	vertical-align: middle;
}
q, blockquote {
	quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
	content: "";
	content: none;
}
a img {
	border: none;
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
	display: block;
}
input, textarea {
	box-sizing: border-box;
	-webkit-appearance: none;
	max-width: 100%;
}
input[type="checkbox"] {
	-webkit-appearance: checkbox;
}
html {
  box-sizing: border-box;
}

*, *:before, *:after {
  box-sizing: inherit;
}


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

= base

----------------------------------------------- */
html {
	line-height: 1.5;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}
body {
	color: #313131;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	font-size: 1.6rem;
}
img {
	width: 100%;
	vertical-align: bottom;
}
a {
	color: #00397e;
	text-decoration: none;
	transition: background-color .2s,transform .2s;
	cursor: pointer;
}
a > *{
	transition: background-color .2s,transform .2s;
}
/* -----------------------------------------------

= 全ページ共通

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

/* = PC (768px以上)
----------------------------------------------- */
@media print, screen and (min-width: 768px) {
	html {
		min-width: 1100px;
		font-size: 62.5%;
	}
	.sp {
		display: none;
	}
	a:hover {
		text-decoration: underline;
	}
}
/* = SP (768px以下)
----------------------------------------------- */
@media screen and (max-width: 767px) {
	html {
		font-size: calc(100vw / 75);
	}
	body {
		font-size: 2.6rem;
	}
	.pc {
		display: none;
	}
}

/* JSブレイクポイント取得用
----------------------------------------------- */

body:before {
	content: "";
	display: none;
	visibility: hidden;
}

@media print, screen and (min-width: 768px) {
	body:before {
		content: "pc";
	}
}

@media screen and (max-width: 767px) {
	body:before {
		content: "sp";
	}
}