@charset "UTF-8";
/**************************
Compass Text Replacement
*/
/**************************
Inline List
*/
/**************************
Inline Block List
*/
/**************************
horizontal-list
*/
/**************************
Bullets
*/
/* simple clearfix */
/**************************
@mixin for sprite
*/
@keyframes fade-in {
	0% {
		display: none;
		opacity: 0;
	}
	1% {
		display: block;
		opacity: 0;
	}
	100% {
		display: block;
		opacity: 1;
	}
}

@keyframes fade-out {
	0% {
		display: block;
		opacity: 1;
	}
	99% {
		display: block;
		opacity: 0;
	}
	100% {
		display: none;
		opacity: 0;
	}
}

@keyframes zoom-in {
	0% {
		transform: scale(0);
	}
	100% {
		transform: scale(1);
	}
}

@keyframes zoom-in-hover {
	0% {
		transform: scale(1);
	}
	100% {
		transform: scale(1.1);
	}
}

@keyframes gnav_sub {
	0% {
		opacity: 0;
		transform: scale(0.9) translateY(-5%);
	}
	100% {
		transform: scale(1) translateY(0);
	}
}

@keyframes _on_opacity {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

/***********************************************************************
 ***********************************************************************
 ***********************************************************************
## Layout
*/
body {
	box-sizing: border-box;
	position: relative;
	top: 0;
	left: 0;
}

.wrapper {
	width: auto;
/*	min-width: 980px;*/
}

.root {
/*	min-width: 980px;*/
	box-sizing: border-box;
}

.pc_container,
.pc_tb_container,
.container {
	max-width: 1220px;
/*	min-width: 980px;*/
	box-sizing: border-box;
	margin-left: auto;
	margin-right: auto;
}

.pc_container-relative,
.pc_tb_container-relative,
.container-relative {
	position: relative;
	top: 0;
	left: 0;
}

.pc_container-sm,
.pc_tb_container-sm,
.container-sm {
	width: 500px;
	min-width: 500px;
	box-sizing: border-box;
	margin-left: auto;
	margin-right: auto;
}

.pc_container-sm2,
.pc_tb_container-sm2,
.container-sm2 {
	width: 300px;
	min-width: 300px;
	box-sizing: border-box;
	margin-left: auto;
	margin-right: auto;
}

.pc_padding,
.padding {
	padding-left: 0;
	padding-right: 0;
}

.main_wrapper {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;
	    justify-content: space-between;
	margin-bottom: 100px;
}

.main_column {
	-ms-flex-order: 1;
	    order: 1;
	width: 760px;
	box-sizing: border-box;
}

.sub_column {
	-ms-flex-order: 2;
	    order: 2;
	width: 220px;
	box-sizing: border-box;
}

.main_content {
	padding-left: 0;
	padding-right: 0;
}

.scroll_to_top {
	right: 15px;
}

/***********************************************************************
 ***********************************************************************
 ***********************************************************************

## Utility - Cosmetic

ユーティリティー設定。
このサイト専用というわけでもない共通設定。

*/
.pc_none,
.root .pc_none {
	display: none;
}

._pc_mb_none {
	margin-bottom: 0 !important;
}

.block,
.pc_block {
	display: block;
}

.tel_link,
.tel_link-no {
	pointer-events: none;
	cursor: default;
	color: inherit;
}

.root .tel_link,
.root .tel_link:hover, .root
.tel_link-no,
.root
.tel_link-no:hover {
	text-decoration: none;
	color: inherit;
}

.sp_click,
.pc_no_click {
	pointer-events: none;
	cursor: default;
}

/***********************************************************************
 ***********************************************************************
 ***********************************************************************



## Component - Base

コンポーネント設定。
各ページでよく使い回す記述。
このサイト専用の共通設定。

*/
/**************************

## - 段組設定 2列 3列 4列

PCの時だけ、中央に等間隔で余白を作り、width: 100%; を守って列になる。
ul でなくてもいい。

**2列 .pc_column2**

	<ul class="pc_column2">
		<li>コンテンツ</li>
		<li>コンテンツ</li>
		<li>コンテンツ</li>
		<li>コンテンツ</li>
		<li>コンテンツ</li>
	</ul>

**3列 .pc_column3**

	<ul class="pc_column3">
		<li>コンテンツ</li>
		<li>コンテンツ</li>
		<li>コンテンツ</li>
		<li>コンテンツ</li>
		<li>コンテンツ</li>
	</ul>

**4列 .pc_column4**

	<ul class="pc_column4">
		<li>コンテンツ</li>
		<li>コンテンツ</li>
		<li>コンテンツ</li>
		<li>コンテンツ</li>
		<li>コンテンツ</li>
	</ul>

*/
.pc_column2 > *:nth-child(2n) {
	padding-bottom: 12px;
}

.pc_column2 > *:last-child {
	padding-bottom: 0;
}

.pc_column3 > *:nth-child(3n) {
	padding-bottom: 12px;
}

.pc_column3 > *:last-child {
	padding-bottom: 0;
}

.pc_column4 > *:nth-child(4n) {
	padding-bottom: 12px;
}

.pc_column4 > *:last-child {
	padding-bottom: 0;
}

.pc_column2::before, .pc_column2::after {
	content: '';
	display: table;
}

.pc_column2::after {
	clear: both;
}

.pc_column2 > * {
	width: 50%;
	float: left;
	box-sizing: border-box;
}

.pc_column2 > *:nth-child(2n + 1) {
	clear: left;
	padding-right: 15px;
}

.pc_column2 > *:nth-child(2n) {
	padding-left: 15px;
}

.pc_column3 {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	width: 100%;
}

.pc_column3 > * {
	width: 313px;
	margin-right: 20px;
}

.pc_column3 > *:nth-child(3n) {
	margin-right: 0;
}

.pc_column4::before, .pc_column4::after {
	content: '';
	display: table;
}

.pc_column4::after {
	clear: both;
}

.pc_column4::before, .pc_column4::after {
	content: '';
	display: table;
}

.pc_column4::after {
	clear: both;
}

.pc_column4 > * {
	width: 25%;
	float: left;
	box-sizing: border-box;
}

.pc_column4 > *:nth-child(4n + 1) {
	clear: left;
	padding-right: 12px;
}

.pc_column4 > *:nth-child(4n + 2) {
	padding-left: 4px;
	padding-right: 8px;
}

.pc_column4 > *:nth-child(4n + 3) {
	padding-left: 8px;
	padding-right: 4px;
}

.pc_column4 > *:nth-child(4n) {
	padding-left: 12px;
}

.set::before, .set::after {
	content: '';
	display: table;
}

.set::after {
	clear: both;
}

.set .resize.right {
	width: 100%;
	box-sizing: border-box;
	float: right;
	padding-left: 330px;
	margin-left: -300px;
}

.set .fix.left {
	width: 300px;
	position: relative;
	top: 0;
	left: 0;
	z-index: 2;
	float: left;
}

.set .resize.left {
	width: 100%;
	box-sizing: border-box;
	float: left;
	padding-right: 330px;
	margin-right: -300px;
}

.set .fix.right {
	width: 300px;
	position: relative;
	top: 0;
	left: 0;
	z-index: 2;
	float: right;
}

.set .fix > img:not(.cancel),
.set .resize > img:not(.cancel) {
	display: block;
	margin-left: auto;
	margin-right: auto;
	max-width: 100%;
}

.set-2 .resize.right {
	width: 100%;
	box-sizing: border-box;
	float: right;
	padding-left: 220px;
	margin-left: -200px;
}

.set-2 .fix.left {
	width: 200px;
	position: relative;
	top: 0;
	left: 0;
	z-index: 2;
	float: left;
}

.set-2 .resize.left {
	width: 100%;
	box-sizing: border-box;
	float: left;
	padding-right: 220px;
	margin-right: -200px;
}

.set-2 .fix.right {
	width: 200px;
	position: relative;
	top: 0;
	left: 0;
	z-index: 2;
	float: right;
}

.set-3 .resize.right {
	width: 100%;
	box-sizing: border-box;
	float: right;
	padding-left: 260px;
	margin-left: -240px;
}

.set-3 .fix.left {
	width: 240px;
	position: relative;
	top: 0;
	left: 0;
	z-index: 2;
	float: left;
}

.set-3 .resize.left {
	width: 100%;
	box-sizing: border-box;
	float: left;
	padding-right: 260px;
	margin-right: -240px;
}

.set-3 .fix.right {
	width: 240px;
	position: relative;
	top: 0;
	left: 0;
	z-index: 2;
	float: right;
}

.set-4 .resize.right {
	width: 100%;
	box-sizing: border-box;
	float: right;
	padding-left: 520px;
	margin-left: -500px;
}

.set-4 .fix.left {
	width: 500px;
	position: relative;
	top: 0;
	left: 0;
	z-index: 2;
	float: left;
}

.set-4 .resize.left {
	width: 100%;
	box-sizing: border-box;
	float: left;
	padding-right: 520px;
	margin-right: -500px;
}

.set-4 .fix.right {
	width: 500px;
	position: relative;
	top: 0;
	left: 0;
	z-index: 2;
	float: right;
}

.set-5 .resize.right {
	width: 100%;
	box-sizing: border-box;
	float: right;
	padding-left: 370px;
	margin-left: -350px;
}

.set-5 .fix.left {
	width: 350px;
	position: relative;
	top: 0;
	left: 0;
	z-index: 2;
	float: left;
}

.set-5 .resize.left {
	width: 100%;
	box-sizing: border-box;
	float: left;
	padding-right: 370px;
	margin-right: -350px;
}

.set-5 .fix.right {
	width: 350px;
	position: relative;
	top: 0;
	left: 0;
	z-index: 2;
	float: right;
}

.footer {
	position: relative;
	top: 0;
	left: 0;
}

.footer-scroll_to_top_stop .scroll_to_top {
	position: absolute;
	top: -100px;
}

/***********************************************************************
 ***********************************************************************
 ***********************************************************************

## Project

特定ページ専用、効果範囲が限定的な記述。
コンテンツ内容に密接で、汎用性がなく、機能の付け替えを想定していない。

*/
.header {
	height: 70px;
}

.header__logo {
	width: 120px;
	height: 120px;
}

.header__janame {
	padding: 10px 0;
	line-height: 50px;
	font-size: 130%;
}

.hero {
	height: 390px;
}

.hero__text {
	width: 900px;
	height: 200px;
}

.intro_text1 {
	width: 670px;
	height: 80px;
	margin: auto;
}

/*# sourceMappingURL=pc_style.css.map */
