@charset "UTF-8";

@import "common-normalize.css";
@import "common-layout.css";


/* -------------------------- */
/* basis */
/* -------------------------- */

html {
	height: 100%;
	background: #f5f5f5;
	font-size: 62.5%;
}
body {
	/*min-width: 1366px;*/
	min-height: 100vh;
	margin: 0;
	padding: 0;
	color: #282828;
	display: flex;
	flex-direction: column;
	font-family: Noto Sans JP, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 1.4em;
	line-height: 1.6;
	position: relative;
}

_:-ms-input-placeholder, :root body {
	font-family: Noto Sans JP, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

/* コンテンツ幅 */
.container {
	width: 1318px;
	padding: 0 24px;
}

/* 表示制御 */
.visible_xs {
	display: block;
}
.hidden_xs, .hidden_all {
	display: none;
}

/* フォント制御 */
.txt_normal {
	font-size: 1.4rem;
	line-height: 1.6;
}
.txt_c {
	text-align: center;
}
.txt_r {
	text-align: right;
}

/* 画像制御 */
.img_responsive {
	width: 100%;
	height: auto;
}
.thum_img {
	line-height: 0;
}
.icon {
	width: 15px;
	height: 15px;
	vertical-align: middle;
}


/* -------------------------- */
/* reset */
/* -------------------------- */

h1, h2, h3, h4, h5, h6, p, ul, ol, li, dl, dt, dd, figure {
	margin: 0;
	padding: 0;
	font-weight: normal;
}

ul, ol, li {
	list-style: none;
}

* {
	box-sizing: border-box;
}


/* -------------------------- */
/* link */
/* -------------------------- */

a {
	outline: none;
	transition: all 0.3s;
}

a:link, a:visited {
	text-decoration: none;
}

a:hover {
	opacity: 0.6;
}

a:active {
	text-decoration: none;
}


/* ================================================================================================================================================================================== */
/* tablet */
/* ================================================================================================================================================================================== */

@media screen and (min-width: 768px) {

/* -------------------------- */
/* basis */
/* -------------------------- */

.container {
	padding: 0 30px;
}
.visible_xs {
	display: none;
}
.hidden_xs {
	display: block;
}


}/* @media 768px */

/* ================================================================================================================================================================================== */
/* pc */
/* ================================================================================================================================================================================== */

@media screen and (min-width: 1280px) {

/* -------------------------- */
/* basis */
/* -------------------------- */

.txt_normal {
	font-size: 1.6rem;
	line-height: 1.8;
}

.container {
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 50px;
}


}/* @media 1280px */
