/* ----------------
　ベース
------------------ */
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

body {
	color: $text-color-base;
	font-size: 14px;
	font-family: 'YuGothic',"Yu Gothic", 'Hiragino Kaku Gothic ProN', "Hiragino Sans", "Meiryo", sans-serif;
}

/* IE 游ゴシックフォント 余白対策 */
_:-ms-lang(x)::-ms-backdrop, body {
	font-family: "Meiryo", sans-serif;
}

a {
	color: $link-color;
	text-decoration: none;
}

a:link {
	color: $link-color;
}

a:visited {
	color: $link-color-visited;
}

dt {
	font-weight: bold;
}

td,
th {
	text-align: left;
}

/* ----------------
　コンテナ
------------------ */
.base-container {
	@include container();
}

.base-container-onecolumn {
	@include container($main-column-width);
}

.base-container-grid {
	display: block;
}

.main-column,
.sub-column {
	min-height: 1px;
}

.main-column {
	max-width: 100%;
}

.main-wrap {
	margin-bottom: 80px;
}

.sub-column {
	width: 100%;
}

@media screen and (min-width: $breakpoint-md-min) {
	.base-container-grid {
		display: flex;
		flex-wrap: nowrap;
		align-items: flex-start;
		justify-content: center;
	}

	.main-column {
		flex: 1 1 $main-column-width;
		max-width: calc($main-column-width + $main-column-right-padding);
		padding-right: $main-column-right-padding;
		&.is-onecolumn {
			max-width: 100%;
			padding-right: 0;
		}
	}

	.sub-column {
		width: $sub-column-width;
	}
}

/* ----------------
　パーツ
------------------ */

.base-required-label {
	display: inline-block;
	float: right;
	margin: 2px 5px 0;
	padding: 2px 8px;
	color: #e30314;
	font-weight: normal;
	font-size: 11px;
	line-height: 1.3;
	border: 1px solid #e30314;
}

.sub-heading {
	margin: 0 0 10px 0;
	font-weight: bold;
	font-size: 14px;
}

#js-seo_info th {
	width: 200px;
}

@media screen and (max-width: $breakpoint-md-max) {
	#offcanvas {
		padding: 0 0 15px 10px;
	}
}
