@charset "utf-8";
/* ////////////////////////////////////////////////////////////
	File Name	common.css
*/

/*============================================================
	[RESET DEFAULT TAGS]
*/
html,body { background:#FFFFFF; }
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,
pre,code,form,fieldset,legend,input,textarea,
p,blockquote,th,td,embed,button { margin:0; padding:0; }
table { border-collapse:collapse; border-spacing:0; }
fieldset,img { border:0; }
li { list-style:none; }
caption,th { text-align:left; }
q:before,q:after { content:''; }
abbr,acronym { border:0; font-variant:normal; }
sup { vertical-align:text-top; }
sub { vertical-align:text-bottom; }
legend { color:#000000; }
area { outline: 0; }

/*============================================================
	[RESET DEFAULT FONT]
*/
body { font-size:100%; color:#000000; }
input,button,textarea { font-weight:inherit; font-size:99%; }
table { font-size:inherit; font-size:100%; }
h1,h2,h3,h4,h5,h6 { font-size:100%; }
address,caption,cite,code,dfn,em,strong,th,var { font-style:normal; }

/*============================================================
	[HTML]
*/
html, body { width: 100%; background: #fff; }
body { font-family: "MuseoSans-300", sans-serif; color: #4d4d4d; -webkit-text-size-adjust: 100%; }
img { vertical-align: top; }
h1, h2, h3, h4, h5 { 
	font-family: "MuseoSans-300";
	font-weight: normal; 
}

/*============================================================
	[FONT]
*/
.museo900 { font-family: "MuseoSans-900", sans-serif; }
.museo700 { font-family: "MuseoSans-700", sans-serif; }
.museo500 { font-family: "MuseoSans-500", sans-serif; }
.museo300 { font-family: "MuseoSans-300", sans-serif; }
.museo100 { font-family: "MuseoSans-100", sans-serif; }
.museoslab700 { font-family: "MuseoSlab-700", sans-serif; }
.museoslab500 { font-family: "MuseoSlab-500", sans-serif; }
.museoslab300 { font-family: "MuseoSlab-300", sans-serif; }

/*============================================================
	[CONTAINER]
*/
#container {
	position: relative;
	overflow: hidden;
	width: 100%;
}
#containerInner {
	position: relative;
	width: 100%;
}

/*============================================================
	[HEADER]
*/
.header {
	position: fixed;
	z-index: 1000;
	left: 0; top: 0;
	width: 100%; height: 80px;
	background: #fff;
	font-family: "MuseoSans-700", sans-serif;
}
.header-changecolor .header {
	-webkit-transition: background-color .3s;
	transition: background-color .3s;
}
.header .wrapper {
	position: relative;
	margin: 0 auto;
	max-width: 990px;
}
.header .wrapper a {
	text-decoration: none;
}
.device-type-pc .header {
	-moz-user-select: none;
	-webkit-user-select: none;
	user-select: none;
}

/*
	[HEADER] LOGO
*/
.header .wrapper .logo {
	position: absolute;
	top: 22px; left: 15px;
	width: 150px; height: 35px;
	background-color: transparent;
	background-image: url(../img/logo.png);
	background-repeat: no-repeat;
	background-size: 150px 70px;
}
.header .wrapper .logo a,
.header .wrapper .logo span {
	overflow: hidden;
	display: block;
	padding-top: 40px;
	width: 100%; height: 0;
}

/*
	[HEADER] NAV OPENER
*/
.header .nav-opener {
	display: none;
	overflow: hidden;
	position: relative;
	top: 25px;
	float: right;
	margin: 0 15px 0 0;
	width: 29px; height: 29px;
	background-color: transparent;
	background-image: url(../img/icon.png);
	background-repeat: no-repeat;
	background-size: 200px 400px;
	text-indent: -999em;
	cursor: pointer;
}

/*
	[HEADER] NAV
*/
.header .nav {
	float: right;
	padding: 32px 0 0 0;
}
.header .nav ul {
	display: block;
}
.header .nav ul li {
	float: left;
	position: relative;
}
.header .nav ul li a {
	display: inline-block;
	float: left;
	padding: 4px 10px 4px 10px;
	font-size: 11px;
	line-height: 1em;
	letter-spacing: 1px;
	cursor: pointer;
}
.header .nav ul li.folder {
	padding-bottom: 10px;
}

.header .nav .folder:hover .folder-child{
	display: block;
}
.header .nav .folder-child {
	display: none;
	position: absolute;
	top: 26px; left: 0;
	min-width: 180px;
}
.header .nav .folder-child ul {
	padding: 6px 0;
}
.header .nav .folder-child ul li {
	display: block;
	float: none;
	font-size: 9px;
	line-height: 1em;
}
.header .nav .folder-child ul li a {
	display: block;
	float: none;
	padding: 5px 10px;
}
.header .nav ul li.active .folder-child {
	display: block;
}

/*
	[HEADER] SEARCH OPENER
*/
.header .search-opener {
	display: block;
	position: relative;
	top: 32px;
	overflow: hidden;
	float: right;
	margin: 0 15px 0 0;
	width: 18px; height: 18px;
	background-color: transparent;
	background-image: url(../img/icon.png);
	background-repeat: no-repeat;
	background-size: 200px 400px;
	text-indent: -999em;
	cursor: pointer;
}

/*
	[HEADER] SEARCH
*/
.header .search {
	display: none;
	position: absolute;
	top: 65px; right: 15px;
	width: 230px; height: 28px;
	border: 1px solid #999;
	background: #fff;
}
.header .search .input {
	float: left;
	width: 200px; height: 28px;
}
.header .search .input input {
	padding: 6px 5px;
	width: 190px;
	border: 0;
	font-size: 13px;
	line-height: 16px;
	color: #666;
	outline: 0;
}
.header .search button {
	float: left;
	overflow: hidden;
	display: block;
	width: 28px; height: 28px;
	border: 0;
	background-color: transparent;
	background-image: url(../img/icon.png);
	background-repeat: no-repeat;
	background-position: 0px -47px;
	background-size: 200px 400px;
	text-indent: -999em;
	cursor: pointer;
}
.open-search .header .search {
	display: block;
}

/*
	[HEADER] LOGIN
*/
.header .login {
	position: relative;
	top: 32px;
	float: right;
	margin: 0 5px 0 16px;
	text-align: center;
	border: 1px solid #666;
}
.header .login a {
	display: block;
	padding: 4px 10px 4px 10px !important;
	padding: 0 5px;
	font-size: 11px;
  line-height: 1em;
}

/*
	[HEADER] COLOR DARK
*/
.header {
	background: #fff;
}
.header .wrapper a {
	color: #4d4d4d;
}
.header .wrapper .logo {
	background-position: 0 0;
}

.header .login {
	border: none;
}
.header .nav ul li ul {
	background: #999;
}
.header .nav ul li ul li a {
	color: #fff;
}
.header .nav ul li ul li a:hover {
	background: #fff;
	color: #4d4d4d;
}
.header .nav ul li.active {
	background: #999;
}
.header .nav ul li.active > a {
	color: #fff;
}
.header .nav-opener {
	background-position: -116px -18px;
}
.header .search-opener {
	background-position: 0px 0px;
}
.open-search .header .search-opener {
	background-position: -36px 0px;
}

/*
	[HEADER] COLOR BRIGHT
*/
.header-bright-color {
	background: transparent;
}
.header-bright-color .wrapper a {
	color: #fff;
}
.header-bright-color .wrapper .logo {
	background-position: 0 -35px;
}

.header-bright-color .login {
	border: none;
}

.header-bright-color .nav ul li ul {
	background: #fff;
}
.header-bright-color .nav ul li ul li a {
	color: #4d4d4d;
}
.header-bright-color .nav ul li ul li a:hover {
	background: #999;
	color: #fff;
}
.header-bright-color .nav ul li.active {
	background: #fff;
}
.header-bright-color .nav ul li.active > a {
	color: #4d4d4d;
}
.header-bright-color .nav-opener {
	background-position: -145px -18px;
}
.header-bright-color .search-opener {
	background-position: -18px 0px;
}
.open-search .header-bright-color .search-opener {
	background-position: -54px 0px;
}

/*
	[HEADER] MEDIA QUERIES
*/
@media only screen and (max-width: 870px) {
	.header .nav {
		position: absolute;
		top: 44px; right: 15px;
		padding: 0;
	}
	.header .nav li:last-child .folder-child {
		position: static;
		position: absolute;
		top: 26px; right: 0; left: auto;
	}
	.header .search-opener {
		top: 22px;
	}
	.header .search {
		top: 70px;
	}
	.header .login {
		top: 22px;
	}
}
@media only screen and (max-width: 700px) {
	#containerInner {
		position: relative;
		left: 0; top: 0;
		-webkit-transition: left .5s;
		transition: left .5s;
	}
	.header {
		left: 0%;
		-webkit-transition: left .5s;
		transition: left .5s;
	}
	.header-changecolor .header {
		-webkit-transition: background-color .3s;
		transition: background-color .3s;
	}
	.header .login {
		top: 32px;
		margin-right: 25px;
	}
	.header .search {
		top: 65px;
	}
	.header .search-opener {
		top: 25px;
		margin: 0 5px 0 0;
		width: 29px; height: 29px;
	}
	.header .search-opener {
		background-position: 0px -18px;
	}
	.header-bright-color .search-opener {
		background-position: -29px -18px;
	}
	.open-search .header .search-opener {
		background-position: -58px -18px;
	}
	.open-search .header-bright-color .search-opener {
		background-position: -87px -18px;
	}
	.header .nav-opener {
		display: block;
	}
	.header .nav {
		overflow: hidden;
		width: 80%; height: 9999px;
		position: static;
		position: absolute;
		top: 0; left: 100%;
		float: none;
		padding: 0;
		text-align: center;
		background: #fff;
	}
	.header .nav ul {
		min-height: 100%;
		background-color: #fff !important;
	}
	.header .nav ul li {
		float: none;
		background-color: #fff !important;
		border-bottom: 1px solid #eee;
	}
	.header .nav ul li.folder {
		padding: 0;
	}
	.header .nav ul li a {
		display: block;
		float: none;
		padding: 20px 0;
		font-size: 15px;
		line-height: 1.2em;
		letter-spacing: 1px;
		color: #4d4d4d !important;
		/*font-family: "MuseoSans-300", sans-serif;*/
	}
	.header .nav ul li a span {
		display: inline-block;
		padding: 0 15px;
	}
	.header .nav ul li a:hover {
		background-color: #fff !important;
		color: #4d4d4d !important;
	}
	.header .nav ul li.folder a span {
		background-image: url(../img/icon_plus.png);
		background-repeat: no-repeat;
		background-position: 0px 50%;
		background-size: 9px 9px;
	}
	.header .nav ul li.folder-open a span {
		background-image: url(../img/icon_minus.png);
	}
	.header .nav li:last-child .folder-child {
		display: none;
		position: static;
	}
	.header .nav .folder-child {
		display: none;
		position: static;
	}
	.header .nav .folder-child ul {
		padding: 0 0 15px 0;
	}
	.header .nav .folder-child ul li {
		border: 0;
	}
	.header .nav .folder-child ul li a {
		padding: 15px 0;
	}
	.header .nav .folder-child ul li a span {
		background-image: none;
	}
	.header .nav .folder-open .folder-child {
		display: block !important;
	}
	.header .nav .scrollbar {
		position: absolute;
		top: 0; right: 2px;
		width: 4px;
		background-color: #666;
		opacity: 0.5;
		-webkit-border-radius: 2px;
		border-radius: 2px;
	}
	/* NAV OPEN */
	.nav-open #containerInner {
		left: -80%;
	}
	.nav-open .header {
		left: -80%;
	}
	.nav-open .header .search-opener,
	.nav-open .header .search,
	.nav-open .header .login {
		display: none;
	}
}
@media only screen and (max-width: 430px) {
	.header .login {
		display: none;
	}
}

/*============================================================
	[FOOTER]
*/
.footer {
	position: relative;
	z-index: 100;
	width: 100%;
	background: #4d4d4d;
	color: #fff;
	font-family: "MuseoSans-300", sans-serif;
}
.footer a {
	text-decoration: none;
	color: #fff;
}
.footer .nav-top a {
	text-decoration: none;
	color: #fff;
	font-family: "MuseoSans-300", sans-serif;
}
.footer .wrapper {
	margin: 0 auto;
	padding: 40px 15px;
	max-width: 960px;
}

/*
	[FOOTER] NAV TOP
*/
.footer .nav-top:after {
	content: "."; display: block; clear: both; visibility: hidden; height: 0;
}
.footer .nav-top {
	position: relative;
	color: #fff;
	zoom: 1;
}
.footer .nav-top div {
	float: left;
	width: 25%;
}
.footer .nav-top div.logo {
	position: absolute;
	top: 0; right: 0;
}
.footer .nav-top div.logo a {
	overflow: hidden;
	display: block;
	float: right;
	width: 150px; height: 35px;
	background-color: transparent;
	background-image: url(../img/logo.png);
	background-repeat: no-repeat;
	background-position: 0 -35px;
	background-size: 150px 70px;
	text-indent: -999em;
}
.footer .nav-top div h2 {
	margin: 0 20px 0 0;
	padding: 5px 0;
	border-top: 1px solid #666;
	font-size: 10px;
	line-height: 1.5;
	letter-spacing: 1px;
	font-family: "MuseoSans-700", sans-serif;
}
.footer .nav-top div ul {
	margin: 0 20px 0 0;
	padding: 5px 0 15px 0;
	border-top: 1px solid #666;
	font-size: 9px;
	line-height: 1.5;
	letter-spacing: 1px;
	font-family: "MuseoSans-500", sans-serif;
}
.footer .nav-top div ul li {
	padding: 3px 0;
}

/*
	[FOOTER] NAV BOTTOM
*/
.footer .nav-bottom:after {
	content: "."; display: block; clear: both; visibility: hidden; height: 0;
}
.footer .nav-bottom {
	position: relative;
	margin: 50px 0 0 0;
	padding: 30px 0 0 0;
	border-top: 1px solid #666;
	zoom: 1;
}
.footer .nav-bottom .nav {
	text-align: center;
	font-size: 10px;
	line-height: 1.5;
	letter-spacing: 1px;
}
.footer .nav-bottom .nav li {
	display: inline-block;
	padding: 0 1.5em 0 1em;
	border-right: 1px solid #666;
}
.footer .nav-bottom .nav li:first-child {
	border-left: 1px solid #666;
}
.footer .nav-bottom .nav li a {
	
}

.footer .nav-bottom .sns {
	position: absolute;
	top: 25px; right: 0;
}
.footer .nav-bottom .sns li {
	float: left;
	width: 25px;
}
.footer .nav-bottom .sns li a {
	overflow: hidden;
	display: block;
	width: 24px; height: 24px;
	background-color: transparent;
	background-image: url(../img/icon.png);
	background-repeat: no-repeat;
	background-size: 200px 400px;
	text-indent: -999em;
}
.footer .nav-bottom .sns li.facebook a {
	background-position: 0px -75px;
}
.footer .nav-bottom .sns li.twitter a {
	background-position: -24px -75px;
}
.footer .nav-bottom .sns li.linkedin a {
	background-position: -48px -75px;
}

.footer .nav-bottom a{
	color: #fff;
	font-family: "MuseoSans-300", sans-serif;
}

/*
	[FOOTER] MEDIA QUERIES
*/
@media only screen and (max-width: 860px) {
	.footer .nav-bottom .sns {
		position: static;
		display: table;
		margin: 20px auto 0 auto;
	}
}
@media only screen and (max-width: 700px) {
	.footer .wrapper {
		padding: 0 17px;
	}
	.footer .nav-top div.logo {
		position: static;
		padding: 20px 0 10px 0;
	}
	.footer .nav-top div.logo a {
		float: none;
	}
	.footer .nav-top div {
		float: none;
		width: 100%;
		padding: 10px 0 0 0;
	}
	.footer .nav-top div h2 {
		margin: 0;
		font-size: 13px;
		line-height: 1.5;
	}
	.footer .nav-top div ul {
		margin: 0;
		font-size: 11px;
		line-height: 1.5;
	}
	.footer .nav-bottom {
		margin: 0;
		padding: 15px 0 30px 0;
	}
	.footer .nav-bottom .nav {
		padding: 0 0 15px 0;
	}
	.footer .nav-bottom .nav li {
		display: block;
		padding: 5px 0;
		border: 0;
	}
	.footer .nav-bottom .nav li:first-child {
		border: 0;
	}
	.footer .nav-bottom .sns {
		position: static;
		display: table;
		margin: 0 auto;
	}
	.footer .nav-bottom .sns li {
		float: none;
		display: table-cell;
		padding: 0 5px;
	}
	.footer .nav-bottom .sns li a {
		width: 44px; height: 44px;
	}
	.footer .nav-bottom .sns li.facebook a {
		background-position: 0px -99px;
	}
	.footer .nav-bottom .sns li.twitter a {
		background-position: -44px -99px;
	}
	.footer .nav-bottom .sns li.linkedin a {
		background-position: -88px -99px;
	}
}

/*============================================================
	[BODY]
*/
.body {
	padding-top: 80px;
	padding-bottom: 80px;
}
.body .content {
	overflow: hidden;
	margin: 0 auto;
	padding: 40px 0;
	width: 100%;
	max-width: 980px;
	box-sizing: border-box;
}

/* LAYOUT */
.body .in { padding-left: 10px; padding-right: 10px; }
.body .row:after { content: "."; display: block; clear: both; visibility: hidden; height: 0; }
.body .row { zoom: 1; box-sizing: border-box; }
.body .row .row { padding-left: 0; padding-right: 0; }
.body .col { float: left; box-sizing: border-box; padding-left: 10px; padding-right: 10px; }
.body .col .col:first-child { padding-left: 0; }
.body .col .col:last-child { padding-right: 0; }

.body .tbody { display: table; width: 100%; }
.body .tbody .tr { display: table-row; }
.body .tbody .cell { display: table-cell; padding-left: 10px; padding-right: 10px; }
.body .tbody .cell .cell:first-child { padding-left: 0; }
.body .tbody .cell .cell:last-child { padding-right: 0; }

.body .box-center { margin-left: auto; margin-right: auto; }
.body .box-left { float: left; }
.body .box-right { float: right; }

/* BORDER */
.body .border-top { border-top: 1px solid #999; }
.body .border-bottom { border-bottom: 1px solid #999; }

.body .row.border-vertical .col { border-left: 1px solid #999; }
.body .row.border-vertical .col:first-child { border-left: 1px solid transparent; }
.body .tbody.border-vertical .cell { border-left: 1px solid #999; }
.body .tbody.border-vertical .cell:first-child { border-left: 1px solid transparent; }

.body .tbody.border-horizontally { box-sizing: content-box; border-collapse: separate; border-spacing: 10px 0; }
.body .tbody.border-horizontally .cell { padding: 20px 0; border-top: 1px solid #999; border-bottom: 1px solid #999; }
.body .tbody.border-horizontally-top { border-collapse: separate; border-spacing: 10px 0; }
.body .tbody.border-horizontally-top .cell { padding: 20px 0; border-top: 1px solid #999; border-bottom: 0; }


/* BOX SIZE PATTERN */
.body .w1-1s { width: 100%; }
.body .w2-1s { width: 50%; }
.body .w3-1s { width: 33.3%; }
.body .w3-2s { width: 66.6%; }
.body .w4-1s { width: 25%; }
.body .w4-2s { width: 50%; }
.body .w4-3s { width: 75%; }
.body .w5-1s { width: 20%; }
.body .w5-2s { width: 40%; }
.body .w5-3s { width: 60%; }
.body .w5-4s { width: 80%; }

.body .w05p { width: 5%; }
.body .w10p { width: 10%; }
.body .w15p { width: 15%; }
.body .w20p { width: 20%; }
.body .w25p { width: 25%; }
.body .w30p { width: 30%; }
.body .w35p { width: 35%; }
.body .w40p { width: 40%; }
.body .w45p { width: 45%; }
.body .w50p { width: 50%; }
.body .w55p { width: 55%; }
.body .w60p { width: 60%; }
.body .w65p { width: 65%; }
.body .w70p { width: 70%; }
.body .w75p { width: 75%; }
.body .w80p { width: 80%; }
.body .w85p { width: 85%; }
.body .w90p { width: 90%; }
.body .w95p { width: 95%; }
.body .w100p { width: 100%; }

/* BOX SIZE PATTERN LOCKED */
.body .w1-1 { width: 960px; }
.body .w2-1 { width: 480px; }
.body .w3-1 { width: 320px; }
.body .w3-2 { width: 640px; }
.body .w4-1 { width: 240px; }
.body .w4-2 { width: 480px; }
.body .w4-3 { width: 720px; }
.body .w5-1 { width: 192px; }
.body .w5-2 { width: 384px; }
.body .w5-3 { width: 576px; }
.body .w5-4 { width: 768px; }

/* LIST */
.body .list-line { border-bottom: 1px solid #999; }
.body .list-line li { padding: 8px 0; border-top: 1px solid #999; }
.body .list-disc li { position: relative; margin: 8px 0; padding-left: 0.8em; }
.body .list-disc li:before { content: "•"; position: absolute; top: 0; left: 0; display: block; }
.body .list-disc li:first-child { margin-top: 0; }
.body .list-striped li { padding: 4px 0; }
.body .list-striped li:nth-child(odd){ background-color: #f2f2f2; }
.body .list-striped li.odd { background-color: #f2f2f2; }

/* TEXT FORMAT */
.body a { text-decoration: none; color: #5D89B3; }
.body a:hover { text-decoration: underline; }
.body .headline { font-size: 42px; line-height: 1.1; }
.body .headline-bold { font-size: 16px; line-height: 1.5; letter-spacing: 1px; font-family: "MuseoSans-700", sans-serif; }
.body .allcaps-title { font-size: 13px; line-height: 1.5; letter-spacing: 1px; font-family: "MuseoSans-500", sans-serif; }
.body .allcaps-headline { font-size: 10px; line-height: 1.5; letter-spacing: 1px; font-family: "MuseoSans-900", sans-serif; }
.body .bold { font-family: "MuseoSans-700", sans-serif; }
.body .semi-bold { font-family: "MuseoSans-500", sans-serif; }
b { font-family: "MuseoSans-700", sans-serif; }

/* TEXT SIZE */
.body ul, .body ol { font-size: 14px; line-height: 1.5; }
.body p { font-size: 16px; line-height: 1.5; }
.body .fs01 { font-size: 40px; line-height: 1.1; }
.body .fs02 { font-size: 30px; line-height: 1.15; }
.body .fs03 { font-size: 25px; line-height: 1.2; }
.body .fs04 { font-size: 20px; line-height: 1.3; }
.body .fs05 { font-size: 18px; line-height: 1.35; }
.body .fs06 { font-size: 16px; line-height: 1.4; }
.body .fs07 { font-size: 14px; line-height: 1.45; }
.body .fs08 { font-size: 12px; line-height: 1.5; }
.body .fs09 { font-size: 10px; line-height: 1.5; }

/* TEXT COLOR */
.body .color-link { color: #5D89B3; }

/* TEXT POSITION */
.body .text-left { text-align: left; }
.body .text-right { text-align: right; }
.body .text-center { text-align: center; }

/* LINE */
.body div.line { margin: 0 auto; padding: 0 10px; width: 100%; max-width: 980px; height: 1px; box-sizing: border-box; }
.body div.line div { border-top: 1px solid #999; }
.body div.line div hr { display: none; }
.body .col div.line { padding: 0; }
.body div.line.hidden { display: none; }
.body div.line.visible { display: block; }

/* HEAD NAV */
.body .head-nav {
	margin: 0 auto;
	width: 100%;
	max-width: 980px;
	box-sizing: border-box;
}
.body .head-nav .nav:after {
	content: "."; display: block; clear: both; visibility: hidden; height: 0;
}
.body .head-nav .nav {
	margin: 0 10px;
	padding: 5px 0;
	border: 1px solid #999;
	border-left: 0;
	border-right: 0;
	zoom: 1;
}
.body .head-nav.noline .nav {
	border-bottom: 0;
}
.body .head-nav .nav .parent {
	float: left;
	padding: 10px 0 0 0;
	font-size: 14px;
	line-height: 1.2;
}
.body .head-nav .nav ul:after {
	content: "."; display: block; clear: both; visibility: hidden; height: 0;
}
.body .head-nav .nav ul {
	float: right;
	padding-bottom: 10px;
	font-size: 14px;
	line-height: 1.2;
	zoom: 1;
}
.body .head-nav .nav ul li {
	float: left;
	padding: 10px 15px 0 15px;
}
.body .head-nav .nav ul li a { color: #4d4d4d; }
.body .head-nav .nav ul li .current { color: #5d89b3; }
.body .head-nav .nav .parent.current a { color: #5d89b3; }
.body .head-nav .nav .parent a { color: #4d4d4d; }


/* MARGIN */
.body .row { margin-top: 25px; margin-bottom: 25px; }
.row15 { margin-top: 15px; margin-bottom: 15px; }
.body .row .row { margin-top: 0; margin-bottom: 0; }
.body .tbody { margin-top: 25px; margin-bottom: 25px; }
.body .tbody .tbody { margin-top: 0; margin-bottom: 0; }
.body .headline { margin-bottom: 25px; }

.body .mt05 { margin-top: 5px; }
.body .mt10 { margin-top: 10px; }
.body .mt15 { margin-top: 15px; }
.body .mt20 { margin-top: 20px; }
.body .mt25 { margin-top: 25px; }
.body .mt30 { margin-top: 30px; }
.body .mt35 { margin-top: 35px; }
.body .mt40 { margin-top: 40px; }
.body .mt45 { margin-top: 45px; }
.body .mt50 { margin-top: 50px; }
.body .mt60 { margin-top: 60px; }
.body .mt70 { margin-top: 70px; }
.body .mt80 { margin-top: 80px; }
.body .mt90 { margin-top: 90px; }
.body .mt100 { margin-top: 100px; }
.body .mb05 { margin-bottom: 5px; }
.body .mb10 { margin-bottom: 10px; }
.body .mb15 { margin-bottom: 15px; }
.body .mb20 { margin-bottom: 20px; }
.body .mb25 { margin-bottom: 25px; }
.body .mb30 { margin-bottom: 30px; }
.body .mb35 { margin-bottom: 35px; }
.body .mb40 { margin-bottom: 40px; }
.body .mb45 { margin-bottom: 45px; }
.body .mb50 { margin-bottom: 50px; }
.body .mb60 { margin-bottom: 60px; }
.body .mb70 { margin-bottom: 70px; }
.body .mb80 { margin-bottom: 80px; }
.body .mb90 { margin-bottom: 90px; }
.body .mb100 { margin-bottom: 100px; }

/*
	[BODY] MEDIA QUERIES
*/
@media only screen and (max-width: 700px) {

	.body { padding-bottom: 20px; }
	.body .content { width: 100%; box-sizing: border-box; padding: 30px 0; }
	.body .content:first-child { padding-top: 10px; }

	/* LAYOUT */
	.body .col { float: none; padding: 10px; }
	.body .col .col { padding-left: 0; padding-right: 0; }
	.body .tbody { display: block; padding: 0; }
	.body .tbody .tr { display: block; }
	.body .tbody .cell { display: block; padding-top: 10px; padding-bottom: 10px; box-sizing: border-box; }
	.body .tbody .cell .cell { padding-left: 0; padding-right: 0; }

	/* BORDER */
	.body .row.border-vertical .col { border-left: 0; }
	.body .row.border-vertical .col:first-child { border-left: 0; }
	.body .tbody.border-vertical .cell { border-left: 0; }
	.body .tbody.border-vertical .cell:first-child { border-left: 0; }

	.body .tbody.border-horizontally { margin-left: 0; margin-right: 0; padding-left: 10px; padding-right: 10px; border-collapse: separate; border-spacing: 0; box-sizing: border-box; }
	.body .tbody.border-horizontally .cell { padding-top: 20px; padding-bottom: 20px; border-top: 1px solid #999; border-bottom: 0; }
	.body .tbody.border-horizontally-top { margin-left: 0; margin-right: 0; padding-left: 10px; padding-right: 10px; border-collapse: separate; border-spacing: 0; box-sizing: border-box; }
	.body .tbody.border-horizontally-top .cell { padding: 20px 0; border-top: 1px solid #999; }

	/* BOX SIZE PATTERN */
	.body .w2-1s, .body .w3-1s, .body .w3-2s, .body .w4-1s, .body .w4-2s, .body .w4-3s,
	.body .w5-1s, .body .w5-2s, .body .w5-3s, .body .w5-4s,
	.body .w05p, .body .w10p, .body .w15p, .body .w20p, .body .w25p,
	.body .w30p, .body .w35p, .body .w40p, .body .w45p, .body .w50p,
	.body .w55p, .body .w60p, .body .w65p, .body .w70p, .body .w75p,
	.body .w80p, .body .w85p, .body .w90p, .body .w95p,
	.body .w1-1, .body .w2-1, .body .w3-1, .body .w3-2, .body .w4-1, .body .w4-2, .body .w4-3,
	.body .w5-1, .body .w5-2, .body .w5-3, .body .w5-4 {
		width: 100%;
	}

	/* TEXT FORMAT */
	.body .headline { font-size: 30px; line-height: 1.15; }
	
	/* TEXT SIZE */
	.body .fs01 { font-size: 28px; line-height: 1.15; }
	.body .fs02 { font-size: 25px; line-height: 1.2; }
	.body .fs03 { font-size: 21px; line-height: 1.3; }
	.body .fs04 { font-size: 18px; line-height: 1.35; }
	.body .fs05 { font-size: 16px; line-height: 1.4; }

	/* MARGIN */
	.body .row { margin-top: 10px; margin-bottom: 10px; }
	.body .row .row { margin-top: 0; margin-bottom: 0; }
	.body .tbody { margin-top: 10px; margin-bottom: 10px; }
	.body .tbody .tbody { margin-top: 0; margin-bottom: 0; }
	.body .headline { margin-bottom: 15px; }
	.body .mt60, .body .mt70, .body .mt80, .body .mt90, .body .mt100 { margin-top: 50px; }
	.body .mb60, .body .mb70, .body .mb80, .body .mb90, .body .mb100 { margin-bottom: 50px; }

	/* LINE */
	.body div.line.hidden { display: block; }
	.body div.line.visible { display: none; }
}

/*============================================================
	[FORM]
*/
.form {
	display: table;
	width: 100%;
	border-top: 1px solid #999;
}
.form dl {
	display: table-row;
}
.form dl dt,
.form dl dd {
	display: table-cell;
	padding: 10px 0;
	border-bottom: 1px solid #999;
	vertical-align: middle;
}
.form dl dt {
	padding-right: 20px;
	font-size: 12px;
	line-height: 1.3;
	white-space: nowrap;
}
.form dl dd {
	width: 100%;
}
.form dl dd .notice {
	margin: 0;
	padding-bottom: 2px;
	color: #f00;
}
.form dl dd input.input-text {
	padding: 2px 0;
	width: 100%;
	border: 0;
	font-size: 12px;
	line-height: 18px;
	color: #4d4d4d;
	outline: 0;
}

/*
	[FORM] MEDIA QUERIES
*/
@media only screen and (max-width: 700px) {

	.form, .form dl, .form dl dt, .form dl dd {
		display: block;
		width: 100%;
	}
	.form dl dt {
		padding-right: 0;
		padding-bottom: 0;
		font-size: 14px;
		line-height: 1.2;
		border: 0;
	}
	.form dl dd {
		padding-top: 5px;
	}

}

/*============================================================
	[OLD IE]
*/
.device-os-old-ie #container {
	min-width: 980px;
}
.device-os-old-ie .header .wrapper .logo,
.device-os-old-ie .footer .nav-top div.logo a {
	background-image: url(../img/logo_ie.png);
}
.device-os-old-ie .header .search-opener,
.device-os-old-ie .header .search button,
.device-os-old-ie .footer .nav-bottom .sns li a {
	background-image: url(../img/icon_ie.png);
}



/* LINE NO PADDING */
.body div.line-zero-padding { margin: 0 auto; padding: 0; width: 100%; max-width: 980px; height: 1px; box-sizing: border-box; }
.body div.line-zero-padding div { border-top: 1px solid #999; }
.body div.line-zero-padding div hr { display: none; }


.body .border-horizontally { padding: 0; border-top: 1px solid #999; }

.body .button {
  padding: 5px 15px;
  border: 0;
  background: #5d89b4;
  color: #fff;
  font-size: 16px;
  line-height: 1;
  letter-spacing: 2px;
  cursor: pointer;
}

.body .small-button {
  padding: 5px 15px;
  border: 0;
  background: #5d89b4;
  color: #fff;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 2px;
  cursor: pointer;
}


.body .col.no-padding{
	padding-left: 0px;
  padding-right: 0px;
}

a .anchoroffset {
	    padding-top: 50px;
    margin-top: -50px;
}
