@charset "utf-8";

/*
Theme Name: Original Theme
Theme URI:
Author: Fuji Computer Co.Ltd.
Author URI : http://fujicomp.co.jp
Description: オリジナルテーマ
Version: 1.0
*/

/* << INDEX >> ----------------------------------------------------------------
*
* @ 基本定義
* @ サイト共通設定
* @ ヘッダー
* @ フッター
* @ コンテンツ
* @ メイン
*
* -------------------------------------------------------------------------- */

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ 基本定義
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */

/* @ Webフォント設定
---------------------------------------------------------------------------- */
@font-face {
	font-family: 'FontAwesome';
	src: url('../fonts/fontawesome-webfont-v=4.7.0.eot');
	src: url('../fonts/fontawesome-webfont-.eot#iefix&v=4.7.0') format('embedded-opentype'),
		url('../fonts/fontawesome-webfont-v=4.7.0.woff') format('woff'),
		url('../fonts/fontawesome-webfont-v=4.7.0.ttf') format('truetype'),
		url('../fonts/fontawesome-webfont-v=4.7.0.svg#fontawesomeregular') format('svg');
	font-weight: normal;
	font-style: normal;
}
.awesome {
	font-family: 'FontAwesome';
	font-weight: normal;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.opensans {
	text-transform: uppercase;
	font-family: 'Open Sans', sans-serif;
}
.ubuntu {
	font-family: 'Ubuntu', sans-serif;
}

/* @ Normalize.css調整（原則として改変禁止）
---------------------------------------------------------------------------- */
/* >>> 日本語フォント対応 */
html,
body {
	margin: 0;
	font-family: "Yu Gothic","YuGothic", "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;
	font-size: 14px;
	line-height: 1.5;
}
/* >>> 禁則処理 */
p,li,dt,dd,th,td,pre {
	-ms-line-break: strict;
	line-break: strict;
	-ms-word-break: strict;
	word-break: strict;
}
/* >>> フルードイメージ対応 */
img {
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}

/* @ テキスト見出し設定（html要素のfont-sizeを基準に算出、ここでの装飾は行わない）
---------------------------------------------------------------------------- */
h1 { /* 28px */
	font-size: 2em;
	line-height: 1.5;
}
h2 { /* 24px */
	font-size: 1.7143em;
	line-height: 1.75;
}
h3,h4 { /* 18px */
	font-size: 1.2857em;
	line-height: 1.1667;
}
h5,h6 { /* 16px */
	font-size: 1.1429em;
	line-height: 1.3125;
}

/* @ 見出し設定
---------------------------------------------------------------------------- */
h1 {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
h2 {
	position: relative;
	margin-top: 0;
	padding: 15px 7px;
	box-sizing: border-box;
	border-top: solid 4px #0025e2;
	border-left: none;
	border-bottom: solid 1px #eee;
}
h2:before {
	content: '';
	position: absolute;
	top: 2px;
	left: 0;
	width: 100%;
	height: 2px;
	background: #0025e2;
}
h2:first-of-type {
	margin-top: 16px;
}
h2 .h2__title-sub,
h2 .h2__title-main {
	display: block;
}
h2 .h2__title-sub {
	font-size: 0.666666666666667em;
}
h3 {
	margin: 50px 0 30px;
	padding: 14px 20px;
	background: #eee;
	border-left: solid 8px #0025e2;
	color: #000;
	font-size: 1.571rem;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
h2 + h3 {
	margin-top: 30px;
}
h4 {
	position: relative;
	margin: 30px 0 20px;
	padding-left: 24px;
	background: url('../img/h4_bgimg.png') no-repeat 0 49%;
	font-size: 1.286rem;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* @ リンク設定
---------------------------------------------------------------------------- */
a {
	color: #000;
	text-decoration: none;
	outline: none;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.alwaysline {
	color: #000;
	text-decoration: underline;
}

a:hover {
	color: #000;
	text-decoration: underline;
}

.blue {
	color: #0000ff;
	text-decoration: none;
	outline: none;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	text-decoration: underline;
}


/* @ リンクボタン設定
---------------------------------------------------------------------------- */
.link-btn {
	margin: 30px auto 50px;
	box-sizing: border-box;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.link-btn a {
	display: block;
	max-width: 335px;
	margin: 0 auto;
	border-radius: 30px;
	color: #0025e2;
	border: solid 3px #0025e2;
	font-weight: bold;
	line-height: 54px;
	text-align: center;
	text-decoration: none;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.link-btn a:hover {
	background: #0025e2;
	color: #fff;
}
.link-btn a.letter-icon:before {
	content: '\f0e0';
	font-family: 'FontAwesome';
	margin-right: 10px;
	font-weight: normal;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	line-height: 54px;
}
.link-btn a.graduation-cap-icon:before {
	content: '\f19d';
	font-family: 'FontAwesome';
	margin-right: 10px;
	font-weight: normal;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	line-height: 54px;
}
.link-btn a.briefcase-icon:before {
	content: '\f0b1';
	font-family: 'FontAwesome';
	margin-right: 10px;
	font-weight: normal;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	line-height: 54px;
}

/* @ その他
---------------------------------------------------------------------------- */
body {
	min-width: 1200px;
	color: #000;
}
strong,b,table th {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
hr {
	border: 0;
	border-top: 1px solid #ccc;
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ サイト共通設定
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.wrap {
	box-sizing: border-box;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
}
/*@media screen and (max-width: 1200px) {
	.wrap {
		padding: 0 20px;
	}
}*/

/* @ Newアイコン
---------------------------------------------------------------------------- */
.newpost {
	display: inline-block;
	text-transform: uppercase;
	font-family: 'Open Sans', sans-serif;
	font-weight: bold;
	font-size: 0.857rem;
	color: #c33;
	margin-left: 1em;
	-webkit-animation: blink 1.0s ease-in-out infinite alternate;
	animation: blink 1.0s ease-in-out infinite alternate;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
@-webkit-keyframes blink {
	0% { opacity: 0; }
	100% { opacity: 1; }
}
@keyframes blink {
	0% { opacity: 0; }
	100% { opacity: 1; }
}

/* @ パンくず
---------------------------------------------------------------------------- */
#breadcrumb ul {
	box-sizing: border-box;
	max-width: 1200px;
	margin: 30px auto;
	padding: 0;
	white-space: nowrap;
	overflow-x: auto;
}
#breadcrumb ul::-webkit-scrollbar {
	display: none;
}
#breadcrumb ul li {
	display: inline;
	font-size: 14px;
	line-height: 1em;
}
#breadcrumb ul li:before {
	content: '\f105';
	font-family: 'FontAwesome';
	font-weight: normal;
	padding: 0 10px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
#breadcrumb ul li:first-child:before {
	content: '\f015';
	font-family: 'FontAwesome';
	padding: 0 5px 0 0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
#breadcrumb ul li:last-child {
	font-weight: bold;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* @ ページナビ（記事詳細用）
----------------------------------------------------------------------------- */
.pagenavi {
	font-family: 'FontAwesome';
	margin: 2em 0 2em;
	padding: 0;
	overflow: hidden;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.pagenavi a {
	display: inline-block;
	padding: 5px 1.5em;
	background-color: #eb9500;
	color: #fff;
	text-align: center;
}
.pagenavi a:hover {
	-ms-filter: "alpha(opacity=60)";
	filter: alpha(opacity=60);
	opacity: 0.6;
	text-decoration: none;
}

/* >>> 前へ */
.pagenavi li:first-child {
	display: inline-block;
	float: left;
}

/* >>> 次へ */
.pagenavi li:last-child {
	display: inline-block;
	float: right;
}

/* @ ページナビ（記事一覧用）
----------------------------------------------------------------------------- */
.pagenavi {
	clear: both;
	text-align: center;
}
.pagenavi *:first-child {
	margin-left: 0 !important;
}
.pagenavi *:last-child {
	margin-right: 0 !important;
}
.pagenavi span,
.pagenavi a {
	display: inline-block;
	background-color: #ffc600;
	border: solid 1px #ffc600;
	color: #fff;
	margin: 0px;
	padding: 5px 10px;
}
.pagenavi span.current {
	background-color: #eb9500;
	border: solid 1px #eb9500;
}
.pagenavi a:hover {
	-ms-filter: "alpha(opacity=60)";
	filter: alpha(opacity=60);
	opacity: 0.6;
	text-decoration: none;
	border: solid 1px #eb9500;
}
.pagenavi .extend {
	background-color: transparent;
	color: #333;
}

/* @ メールフォーム
---------------------------------------------------------------------------- */
.mw_form-msg {
	border: 5px solid #ccc;
	padding: 1em;
}
.mw_form-msg em,
.mw_form-table em {
	display: inline-block;
	padding: 0.25em 1em;
	background-color: #c33;
	color: #fff;
	margin-right: 0.5em;
	font-weight: bold;
	font-style: normal;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.mw_form-table {
	width: 100%;
}
.mw_form-table tr:nth-child(even) {
	background-color: #eee;
}
.mw_form-table tr:nth-child(odd) {
	background-color: #fff;
}
@media screen and (max-width: 480px) {
	.mw_form-table,
	.mw_form-table tbody,
	.mw_form-table tr {
		display: block;
		width: 100%;
		background-color: transparent;
	}
}
.mw_form-table th {
	box-sizing: border-box;
	width: 20%;
	white-space: nowrap;
	padding: 1em;
	border-bottom: 1px dotted #ccc;
	text-align: right;
}
@media screen and (max-width: 480px) {
	.mw_form-table th {
		display: block;
		width: 100%;
		border-bottom: none;
		text-align: left;
		background-color: #eee;
	}
}
.mw_form-table td {
	box-sizing: border-box;
	padding: 1em;
	border-bottom: 1px dotted #ccc;
}
@media screen and (max-width: 480px) {
	.mw_form-table td {
		display: block;
		width: 100%;
		margin-bottom: 1em;
		padding: 1em 0;
		border-bottom: none;
		background-color: #fff;
	}
}
.mw_form-table input[type='text'],
.mw_form-table textarea {
	width: 100%;
	box-sizing: border-box;
	padding: 0.5em;
	border: 1px solid #ccc;
	background: #fff;
	outline: none;
}
.mw_form-table .mwform-zip-field input[type='text'],
.mw_form-table .mwform-tel-field input[type='text'] {
	width: 5em;
	margin: 0 0.5em;
}
.mw_form-table .error {
	font-weight: bold;
	color: #c33;
	margin-top: 0.5em;
	-webkit-animation: blink 1.0s ease-in-out infinite alternate;
	animation: blink 1.0s ease-in-out infinite alternate;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.mw_form-btn {
	font-size: 0;
	overflow: hidden;
	text-align: center;
	margin: 28px 0;
	padding: 0;
}
.mw_form-btn li {
	display: inline-block;
	list-style: none;
	font-size: 14px;
	margin: 0 1em;
}
.mw_form-btn li input[type='submit'] {
	display: inline-block;
	padding: 15px 30px;
	outline: none;
	text-align: center;
	background: #0025e2;
	border: none;
	border-radius: 5px;
	color: #fff;
	font-size: 1.143rem;
	font-weight: bold;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.mw_form-btn li:first-child input[type='submit'] {
	background-color: #eb9500;
}
.mw_form-btn li input[type='submit']:hover {
	-ms-filter: "alpha(opacity=60)";
	filter: alpha(opacity=60);
	opacity: 0.6;
}

/* @ アイコンスタイル
----------------------------------------------------------------------------- */
.extlink:after {
	margin-left: 10px;
	content: '\f08e';
	font-family: 'FontAwesome';
	font-weight: normal;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* @ ページトップ
----------------------------------------------------------------------------- */
#pagetop {
	display: none;
	position: fixed;
	right: 40px;
	bottom: 40px;
	z-index: 8000;
	margin: 0;
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ ヘッダー
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
#header {
	position: relative;
	margin-bottom: 1px;
}
#header > .wrap {
	position: relative;
	height: 90px;
}
#header > .wrap a:hover {
	text-decoration: none;
}

/* @ ロゴ
---------------------------------------------------------------------------- */
#header > .wrap #header-logo {
	position: absolute;
	top: 10px;
	left: 20px;
	width: 340px;
	margin: 0;
	background-color: transparent;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
#header > .wrap #header-logo img {
	background-color: #fff;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

/* @ メンバーコンテンツ
---------------------------------------------------------------------------- */
#header > .wrap .welcome {
	position: absolute;
	bottom: 0;
	right: 20px;
	margin: 0;
	font-weight: 500;
}
#header > .wrap .welcome:before {
	display: inline-block;
	content: '\f0eb';
	margin-right: 10px;
	font-family: 'FontAwesome';
	color: #999;
	font-size: 1.143rem;
	font-weight: normal;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
#header > .wrap .welcome .counter:before {
	content: "（";
}
#header > .wrap .welcome .counter:after {
	content: "）";
}
#header > .wrap .member_btn {
	display: block;
	position: absolute;
	right: 20px;
	top: 20px;
	padding: 10px 40px;
	box-sizing: border-box;
	text-align: center;
	background: #eb9500;
	color: #fff;
	font-weight: bold;
	border-radius: 20px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
#header > .wrap .member_btn:before {
	margin-right: 10px;
	content: '\f090';
	font-family: 'FontAwesome';
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
#header > .wrap .member_btn.logout {
	background: #0025e2;
}
#header > .wrap .member_btn.logout:before {
	content: '\f08b';
}
#header > .wrap .admin-nav {
	position: absolute;
	right: 206px;
	list-style: none;
	top: 32px;
	margin: 0;
	padding: 0;
	max-width: 620px;
}
#header > .wrap .admin-nav li {
	display: inline-block;
	margin-right: 1em;
}
#header > .wrap .admin-nav li a:before {
	content: '\f105';
	margin-right: .25em;
	font-family: 'FontAwesome';
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	color: #0025e2;
}
#header > .wrap .search {
	position: absolute;
	bottom: 0px;
	left: 20px;
}
#header > .wrap .search input[type="text"] {
	width: 292px;
}
#header > .wrap .search button:hover {
	cursor: pointer;
}

/* @ ログインポップアップ
---------------------------------------------------------------------------- */
#colorbox.login_box #cboxContent {
	color: #fff;
}
#colorbox.login_box #cboxContent #cboxLoadedContent {
	border: solid 5px #182e8d;
	background: #3452d2;
	color: #fff;
}
#colorbox.login_box #cboxContent #cboxTitle {
	display: none !important;
}
#colorbox.login_box #cboxContent #cboxClose {
	top: 16px;
	right: 19px;
	width: auto;
	height: auto;
	line-height: 1;
	background: none;
	text-indent: 0;
	color: #fff;
	font-size: 1.571rem;
	font-weight: 500;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
#login-content {
	padding: 10px 30px;
	width: 370px;
	box-sizing: border-box;
}
#login-content input {
	font-family: "Yu Gothic","YuGothic", "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;
	font-size: 1.143rem;
}
#login-content .title {
	margin: 15px 0 25px;
	font-size: 1.571rem;
	font-weight: bold;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
#login-content .title:before {
	display: inline-block;
	font-family: 'FontAwesome';
	font-weight: normal;
	content: '\f0eb';
	margin-right: 10px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
#login-content #login_error {
	display: none;
	background: #c33;
	font-weight: bold;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
#login-content #login_error.on {
	display: block;
}
#login-content .login_id input,
#login-content .login_pw input,
#login-content .login_certify p input[type='text'] {
	padding: 20px;
	width: 100%;
	box-sizing: border-box;
	border: solid 2px #cccccc;
	border-radius: 3px;
}
#login-content .login_certify p input[type='text'] {
	padding: 10px 20px;
}
#login-content .login_forget a {
	color: #fff;
	text-decoration: underline;
}
#login-content .login_forget a:hover {
	text-decoration: none;
}
#login-content .login_submit {
	margin: 25px 0 0;
	text-align: center;
}
#login-content .login_submit button[type='submit'],
#login-content .login_submit input[type='submit'] {
	width: 200px;
	line-height: 50px;
	outline: none;
	border: none;
	border-radius: 30px;
	background: #eb9500;
	color: #fff;
	font-size: 1.143rem;
	font-weight: bold;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
#login-content .login_submit button[type='submit']:hover,
#login-content .login_submit input[type='submit']:hover {
	cursor: pointer;
	opacity: 0.6;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

/* @ ヘッダーナビ
---------------------------------------------------------------------------- */
#header-navi {
	margin-top: -20px;
	border-bottom: solid 4px #0025e2;
}
#header-navi a {
	text-decoration: none;
}

/* @ グローバルナビ
---------------------------------------------------------------------------- */
#header-gnavi {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	margin-top: 30px;
	list-style: none;
}
#header-gnavi li {
	-webkit-flex-basis: calc(100% / 7);
	-ms-flex-basis    : calc(100% / 7);
	flex-basis: calc(100% / 7);
}
#header-gnavi li a {
	position: relative;
	display: block;
	padding: 20px 16px;
	/*width: 130px;*/
	text-align: center;
	font-size: 1.071rem;
	font-weight: bold;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	white-space: nowrap;
}
#header-gnavi li a:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 6px;
	right: 6px;
	height: 10px;
	margin: auto;
	background: #ffc734;
	border-radius: 3px;
	transform: skewX(40deg) skewY(.5deg);
	transition: all 500ms 0s ease;
	opacity: 0;
}
#header-gnavi li.current-menu-item a:before,
#header-gnavi li a:hover:before {
	opacity: 1;
}
#header-gnavi li.current-menu-item a:after,
#header-gnavi li a:hover:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	width: 0;
	height: 0;
	margin: auto;
	border-style: solid;
	border-width: 0 8px 8px 8px;
	border-color: transparent transparent #0025e2 transparent;
}
#header-gnavi li a span {
	position: relative;
	z-index: 1;
}
#header-gnavi li.new a span:before {
	content: "";
	position: absolute;
	top: -12px;
	right: -10px;
	width: 10px;
	height: 10px;
	margin: auto;
	border-radius: 5px;
	background: #FF0000;
	z-index: -1;
	animation-name: flash;
	animation-duration: 3s;
	animation-timing-function: ease;
	animation-delay: 0s;
	animation-iteration-count: infinite;
	animation-direction: normal;
	animation-fill-mode: none;
}
@keyframes flash {
	0% {
		opacity: .5;
	}
	75% {
		opacity: .5;
	}
	100% {
		opacity: 0;
	}
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ フッター
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
#footer {
	margin-top: 40px;
	padding: 30px 0 120px;
	background: #0025e2;
}
#footer a {
	box-sizing: border-box;
	color: #fff;
}
#footer ul li {
	list-style-type: none;
}
#footer-copyright ul li a:before {
	display: inline-block;
	content: '\f105';
	font-family: 'FontAwesome';
	margin-right: 10px;
	font-weight: normal;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
#footer-copyright ul li.privacy a:before {
	content: '\f023';
}
#footer-copyright ul li.sitemaps a:before {
	content: '\f0e8';
}
#footer-copyright ul li.agreement a:before {
	content: '\f15b';
}
#footer .wrap>ul {
	margin: 0;
	padding: 0;
}
#footer-copyright ul {
	float: right;
	padding: 0;
}
#footer-copyright ul li {
	display: inline;
	margin-left: 30px;
}
#footer-copyright ul li:first-of-type {
	margin-left: 0;
}
#footer-copyright .copyright {
	margin: 0;
	color: #fff;
}
#footer-copyright .copyright small {
	font-size: 1rem;
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ メイン
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
#main {
	min-width: auto;
}
#main>.wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}


/* @ 見出し
---------------------------------------------------------------------------- */
#page-keyimg {
	background: url("../img/page-keyimg.png") center center no-repeat;
	background-size: auto 100%;
}
#page-keyimg h1 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: center;
	-ms-align-items: center;
	align-items: center;
	margin: 0;
	padding: 49px 30px;
	color: #fff;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
#page-keyimg h1 strong {
	font-size: 2rem;
}
#page-keyimg h1 span {
	margin-left: 15px;
	font-size: 1.143rem;
	text-transform: uppercase;
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ コンテンツ
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
#contents {
	width: 100%;
}
#contents h2:first-of-type {
	margin-top: 0;
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ サイドバー
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
#sideber {
	width: 320px;
	padding: 0 0 0 40px;
	box-sizing: border-box;
}
#sideber h2 {
	margin: 0;
	padding: 0;
	background: #0025e2;
	border: solid 4px #0025e2;
}
#sideber h2 a {
	position: relative;
	display: block;
	margin: 0;
	padding: 10px 10px 10px 20px;
	color: #fff;
	font-size: 1.286rem;
	text-decoration: none;
}
#sideber h2 a::after {
	position: absolute;
	display: block;
	top: calc(50% - 10px);
	right: 20px;
	margin: 0;
	padding: 0;
	content: '\f105';
	color: #fff;
	font-family: 'FontAwesome';
	font-weight: normal;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	line-height: 20px;
}
#sideber ul {
	display: block;
	margin-top: 0;
	padding: 0 0 10px;
	border: solid 4px #0025e2;
	border-top: 0;
}
#sideber ul li {
	position: relative;
	list-style-type: none;
	padding: 0;
	background: #fff;
}
#sideber ul li::after {
	position: absolute;
	display: block;
	content: '';
	width: calc(100% - 20px);
	height: 1px;
	background-color: #ccc;
	bottom: 0;
	left: 10px;
}
#sideber ul li a {
	display: block;
	padding: 17px 10px 17px 38px;
	background: #fff;
	font-size: 1.143rem;
	text-decoration: none;
}
#sideber ul li.current_page_item a {
	background: #eee;
}
#sideber ul li a:hover {
	position: relative;
	background: #eee;
}
#sideber ul li a::before {
	position: absolute;
	display: block;
	top: calc(50% - 10px);
	left: 20px;
	margin: 0;
	padding: 0;
	content: '\f0da';
	color: #eb9500;
	font-family: 'FontAwesome';
	font-size: 1.286rem;
	font-weight: normal;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	line-height: 20px;
}


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ 検索ボックス
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */

.search-condition {
	margin-bottom: 20px;
}
.search-condition .search-condition__row > * {
	margin-right: .5em;
}
.search-condition .search-condition__row {
	line-height: 32px;
}
.search-condition dl {
	margin: 0;
}
.search-condition dl.search-condition__inline-group,
.search-condition dl.search-condition__inline-group dt,
.search-condition dl.search-condition__inline-group dd {
	display: inline-block;
}
.search-condition dl.search-condition__inline-group {
	margin-top: 0;
}
.search-condition dl.search-condition__inline-group dd {
	margin-left: 0;
}


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ 表組用のテーブル
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
table.standard-table {
	margin-bottom: 1.5em;
	border-collapse: collapse;
}
table.standard-table.__full-size {
	width: 100%;
}
table.standard-table.__center {
	margin-left: auto;
	margin-right: auto;
}
table.standard-table > thead > tr > th,
table.standard-table > tbody > tr > th,
table.standard-table > tbody > tr > td {
	padding: 5px 10px;
	border: 1px solid #ccc;
}
table.standard-table > thead {}
table.standard-table > thead > tr {}
table.standard-table > thead > tr > th {
	background-color: #eef;
	border-bottom: 2px solid #6678b1;
	color: #039;
}
table.standard-table > tbody {}
table.standard-table > tbody > tr {}
table.standard-table > tbody > tr > th {
	background-color: #eef;
	border-right: 2px solid #6678b1;
	color: #039;
}
table.standard-table.__cross > tbody > tr > th {
	background-color: #f0f0f0;
	border-bottom: 1px solid #ccc;
	border-right: 1px solid #ccc;
	color: #039;
}
table.standard-table > tbody > tr > th > div > *,
table.standard-table > tbody > tr > td > div > * {
	margin-top: 0;
	margin-bottom: .5em;
}
table.standard-table > tbody > tr > th > div > *:last-child,
table.standard-table > tbody > tr > td > div > *:last-child {
	margin-bottom: 0;
}


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ フォーラム
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.forum-list {}
.forum-list .forum-list__group,
.topic-list .topic-list__group {
	margin-bottom: 10px;
}
.forum-list .forum-list__group h3 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: center;
	-ms-align-items : center;
	align-items : center;
	-webkit-justify-content: space-between;
	-ms-justify-content : space-between;
	justify-content: space-between;
	margin: 0;
	padding: 12px 12px;
	background-color: #0025e2;
	border-bottom: 1px solid #CCCCCC;
	border-left: none;
	font-size: 1.142857142857143em;
}
.forum-list .forum-list__group h3,
.forum-list .forum-list__group h3 a,
.forum-list .forum-list__group h3 span.newpost {
	color: #fff;
}
.forum-list .forum-list__group h3 span {}
.forum-list .forum-list__group h3 button.form-control {
	font-size: 0.875em;
}
.forum-list .forum-list__group .forum-list__detail dl,
.topic-list .topic-list__group dl {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: center;
	-ms-align-items : center;
	align-items : center;
	-webkit-justify-content: space-between;
	-ms-justify-content : space-between;
	justify-content: space-between;
	margin: 0;
	padding: 8px;
	border-top: 1px solid #ccc;
}
.forum-list .forum-list__group .forum-list__detail dl:before,
.topic-list .topic-list__group dl:before {
	-webkit-flex-basis: 30px;
	-ms-flex-basis: 30px;
	flex-basis: 30px;
	align-self: flex-start;
	font-family: 'FontAwesome';
	font-weight: normal;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-size: 1.214285714285714em;
	color: #999;
	text-align: center;
}
.forum-list .forum-list__group .forum-list__detail dl > *,
.topic-list .topic-list__group dl > * {
	margin: 0;
	box-sizing: border-box;
}


.forum-list .forum-list__group .forum-list__detail dl:before {
	content: "\f086";
}
.forum-list .forum-list__group .forum-list__detail dl dt {
	-webkit-flex-grow: 2;
	-ms-flex-grow: 2;
	flex-grow: 2;
	-webkit-flex-basis: calc(100% - 150px);
	-ms-flex-basis: calc(100% - 150px);
	flex-basis: calc(100% - 150px);
	font-size: 1.214285714285714em;
}
.forum-list .forum-list__group .forum-list__detail dl dd.forum-list__topic-num {
	-webkit-flex-basis: 120px;
	-ms-flex-basis: 120px;
	flex-basis: 120px;
	text-align: right;
}
.forum-list .forum-list__group .forum-list__detail dl dd.forum-list__topic-num:before {
	content: "トピック数";
	margin-right: .5em;
	font-size: 0.857142857142857em;
	color: #666;
}


.topic-list {}
.topic-list .topic-list__group dl.topic-list__head {
	padding-top: 8px;
	padding-bottom: 8px;
	background-color: #555555;
	border-bottom: 1px solid #CCCCCC;
	color: #fff;
}
.topic-list .topic-list__group dl.topic-list__head dd.topic-list__num {
	-webkit-flex-basis: 120px;
	-ms-flex-basis: 120px;
	flex-basis: 120px;
}
.topic-list .topic-list__group dl.topic-list__head:before {
	content: none;
}
.topic-list .topic-list__group dl:before {
	content: "\f27a";
	font-size: 1em;
	transform: rotate(0deg);
}
.topic-list .topic-list__group dl dt {
	-webkit-flex-basis: calc(100% - 280px);
	-ms-flex-basis: calc(100% - 280px);
	flex-basis: calc(100% - 280px);
	-webkit-flex-grow: 2;
	-ms-flex-grow: 2;
	flex-grow: 2;
	font-size: 1.214285714285714em;
}
.topic-list .topic-list__group dl dd.topic-list__topic-time {
	-webkit-flex-basis: 160px;
	-ms-flex-basis: 160px;
	flex-basis: 160px;
	padding-right: 1em;
}
.topic-list .topic-list__group dl dd.topic-list__num {
	-webkit-flex-basis: 90px;
	-ms-flex-basis: 90px;
	flex-basis: 90px;
	padding-right: 1em;
}


.topic {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	border-bottom: 3px solid #E6E6E6;
}
.topic * {
	box-sizing: border-box;
}
.topic .topic__num {
	-webkit-flex-basis: 200px;
	-ms-flex-basis: 200px;
	flex-basis: 200px;
	max-width: 200px;
	padding: 0 10px;
	text-align: center;
}
.topic .topic__num p {
	margin: 0;
}
.topic .topic__auth-name {
	-webkit-flex-basis: 140px;
	-ms-flex-basis: 140px;
	flex-basis: 140px;
	max-width: 140px;
	padding: 0 10px;
}
.topic .topic__content {
	-webkit-flex-basis: calc(100% - 200px);
	-ms-flex-basis: calc(100% - 200px);
	flex-basis: calc(100% - 200px);
	max-width: calc(100% - 200px);
}
.topic .topic__content .entry-body > *:first-child {
	margin-top: 0;
}
.topic .buttons {
	-webkit-flex-basis: 100%;
	-ms-flex-basis: 100%;
	flex-basis: 100%;
	border-top: 1px solid #E6E6E6;
}
.topic .buttons ul {
	-webkit-flex-basis: 100%;
	-ms-flex-basis: 100%;
	flex-basis: 100%;
	max-width: 100%;
	margin: .5em 0;
}


.reply-list {
	border-top: 3px solid #E6E6E6;
}
.reply-list * {
	box-sizing: border-box;
}
.reply-list .reply-list__group {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding-top: 20px;
	border-bottom: 3px solid #E6E6E6;
}
.reply-list .reply-list__group .reply-list__auth-name {
	-webkit-flex-basis: 200px;
	-ms-flex-basis: 200px;
	flex-basis: 200px;
	max-width: 200px;
	padding: 0 10px;
	text-align: center;
}
.reply-list .reply-list__group .reply-list__auth-name p {
	margin: 0;
}
.reply-list .reply-list__group .reply-list__auth-name__name {
	
}
.reply-list .reply-list__group .reply-list__auth-name__id {
	color: #999;
}
.reply-list .reply-list__group .reply-list__content {
	-webkit-flex-basis: calc(100% - 200px);
	-ms-flex-basis: calc(100% - 200px);
	flex-basis: calc(100% - 200px);
	max-width: calc(100% - 200px);
}
.reply-list .reply-list__group .reply-list__content .reply-list__topic-time {
	margin: 0;
	padding-bottom: .25em;
	border-bottom: 1px dotted #E6E6E6;
	text-align: right;
}
.reply-list .reply-list__group .buttons {
	-webkit-flex-basis: 100%;
	-ms-flex-basis: 100%;
	flex-basis: 100%;
	border-top: 1px solid #E6E6E6;
}
.reply-list .reply-list__group .buttons ul {
	-webkit-flex-basis: 100%;
	-ms-flex-basis: 100%;
	flex-basis: 100%;
	max-width: 100%;
	margin: .5em 0;
}



/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ フォームパーツ
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
button,
input,
optgroup,
select,
textarea {
	font-family: "Yu Gothic","YuGothic", "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;
	font-size: 1em;
	line-height: 1.2;
	vertical-align: middle;
	box-sizing: border-box;
}
.form-control:not(label):not([type="file"]):not([type="checkbox"]):not([type="radio"]) {
	background: #fff;
	border: 1px solid #ccc;
	border-radius: 3px;
}
.form-control,
.form-text {
	margin-right: .25em;
}
label.form-control {
	margin-right: 1em;
	display:inline-block;
}
.form-control:last-child {
	margin-right: 0;
}
label.form-control input[type="radio"],
label.form-control input[type="checkbox"] {
	margin-right: .25em;
}
input[type="text"].form-control,
input[type="email"].form-control,
input[type="number"].form-control,
input[type="password"].form-control,
input[type="search"].form-control,
input[type="tel"].form-control,
input[type="url"].form-control,
input[type="datetime"].form-control,
input[type="date"].form-control,
input[type="month"].form-control,
input[type="week"].form-control,
input[type="time"].form-control,
select.form-control {
	height: 1.8em;
}
button.form-control,
textarea.form-control {
	min-height: 1.8em;
}
button.form-control {
	cursor: pointer;
}
.form-row {
	line-height: 32px;
	vertical-align: middle;
}

.large-button {
	display: inline-block;
	padding: 6px 40px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: #0025e2;
	color: #fff;
	font-weight: bold;
	border-radius: 20px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-decoration: none;
}
.large-button:hover {
	background: #1147ff;
	text-decoration: none;
	color: #fff;
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ ページ下部のボタン
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.buttons {
	display: block;
	width: 100%;
}
.buttons ul {
	padding-left: 0;
	list-style: none;
	line-height: 32px;
}
.buttons ul li {
	display: inline-block;
}
.buttons.__center {
	text-align: center;
}
.buttons.__left {
	text-align: left;
}
.buttons.__right {
	text-align: right;
}



/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ 戻るリンク
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
ul.back {
	margin-top: 20px;
	padding: 20px 0 0;
	border-top: 1px solid #ccc;
	text-align: center;
	list-style: none;
}
ul.back li a:before {
	content: "\f104";
	margin-right: .3em;
	font-family: FontAwesome;
}


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ 添付ファイル
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
ul.attachment-file {
	padding-left: 0;
}
ul.attachment-file li {
	display: inline-block;
	margin-right: 1em;
}
ul.attachment-file li:last-child {
	margin-right: 0;
}
ul.attachment-file li:before {
	content: '\f0c6';
	margin-right: .25em;
	font-family: 'FontAwesome';
	font-weight: normal;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	color: #666;
}
ul.attachment-file.__bordered {
	display: inline-block;
	padding: 8px 10px;
	border: 1px dotted #ccc;
	border-radius: 3px;
}
ul.attachment-file li a{
text-decoration:underline;
color: #0000ff;
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ 汎用クラス
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.message {
	max-width: 760px;
	margin: 40px auto;
	padding: 20px 40px;
	border: 1px solid #ccc;
	border-radius: 5px;
}
.message.__full-size {
	max-width: none;
}

dl.float-list {}
dl.float-list:after {
	content: "";
	clear: both;
}
dl.float-list dt {
	float: left;
	clear: left;
}
dl.float-list dd {}
dl.float-list dt.width-5em   + dd { margin-left:  1.0em; }
dl.float-list dt.width-10em  + dd { margin-left:  1.5em; }
dl.float-list dt.width-15em  + dd { margin-left:  2.0em; }
dl.float-list dt.width-20em  + dd { margin-left:  2.5em; }
dl.float-list dt.width-25em  + dd { margin-left:  3.0em; }
dl.float-list dt.width-30em  + dd { margin-left:  3.5em; }
dl.float-list dt.width-35em  + dd { margin-left:  4.0em; }
dl.float-list dt.width-40em  + dd { margin-left:  4.5em; }
dl.float-list dt.width-45em  + dd { margin-left:  5.0em; }
dl.float-list dt.width-50em  + dd { margin-left:  5.5em; }
dl.float-list dt.width-55em  + dd { margin-left:  6.0em; }
dl.float-list dt.width-60em  + dd { margin-left:  6.5em; }
dl.float-list dt.width-65em  + dd { margin-left:  7.0em; }
dl.float-list dt.width-70em  + dd { margin-left:  7.5em; }
dl.float-list dt.width-75em  + dd { margin-left:  8.0em; }
dl.float-list dt.width-80em  + dd { margin-left:  8.5em; }
dl.float-list dt.width-85em  + dd { margin-left:  9.0em; }
dl.float-list dt.width-90em  + dd { margin-left:  9.5em; }
dl.float-list dt.width-95em  + dd { margin-left: 10.0em; }
dl.float-list dt.width-100em + dd { margin-left: 10.5em; }
dl.float-list dt.width-105em + dd { margin-left: 11.0em; }
dl.float-list dt.width-110em + dd { margin-left: 11.5em; }
dl.float-list dt.width-115em + dd { margin-left: 12.0em; }
dl.float-list dt.width-120em + dd { margin-left: 12.5em; }
dl.float-list dt.width-125em + dd { margin-left: 13.0em; }
dl.float-list dt.width-130em + dd { margin-left: 13.5em; }
dl.float-list dt.width-135em + dd { margin-left: 14.0em; }
dl.float-list dt.width-140em + dd { margin-left: 14.5em; }
dl.float-list dt.width-145em + dd { margin-left: 15.0em; }
dl.float-list dt.width-150em + dd { margin-left: 15.5em; }
dl.float-list dt.width-155em + dd { margin-left: 16.0em; }
dl.float-list dt.width-160em + dd { margin-left: 16.5em; }
dl.float-list dt.width-165em + dd { margin-left: 17.0em; }
dl.float-list dt.width-170em + dd { margin-left: 17.5em; }
dl.float-list dt.width-175em + dd { margin-left: 18.0em; }
dl.float-list dt.width-180em + dd { margin-left: 18.5em; }
dl.float-list dt.width-185em + dd { margin-left: 19.0em; }
dl.float-list dt.width-190em + dd { margin-left: 19.5em; }
dl.float-list dt.width-195em + dd { margin-left: 20.0em; }
dl.float-list dt.width-200em + dd { margin-left: 20.5em; }
dl.float-list dt.width-205em + dd { margin-left: 21.0em; }
dl.float-list dt.width-210em + dd { margin-left: 21.5em; }
dl.float-list dt.width-215em + dd { margin-left: 22.0em; }
dl.float-list dt.width-220em + dd { margin-left: 22.5em; }
dl.float-list dt.width-225em + dd { margin-left: 23.0em; }
dl.float-list dt.width-230em + dd { margin-left: 23.5em; }
dl.float-list dt.width-235em + dd { margin-left: 24.0em; }
dl.float-list dt.width-240em + dd { margin-left: 24.5em; }
dl.float-list dt.width-245em + dd { margin-left: 25.0em; }
dl.float-list dt.width-250em + dd { margin-left: 25.5em; }
dl.float-list dt.width-255em + dd { margin-left: 26.0em; }
dl.float-list dt.width-260em + dd { margin-left: 26.5em; }
dl.float-list dt.width-265em + dd { margin-left: 27.0em; }
dl.float-list dt.width-270em + dd { margin-left: 27.5em; }
dl.float-list dt.width-275em + dd { margin-left: 28.0em; }
dl.float-list dt.width-280em + dd { margin-left: 28.5em; }
dl.float-list dt.width-285em + dd { margin-left: 29.0em; }
dl.float-list dt.width-290em + dd { margin-left: 29.5em; }
dl.float-list dt.width-295em + dd { margin-left: 30.0em; }
dl.float-list dt.width-300em + dd { margin-left: 30.5em; }


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ エラーメッセージ
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.error {
	color:#a84442;
	background:#edd;
	border-color:#a84442;
}
.error p {
	margin:6px 0;
}
/*
input.form-error {
	background:#edd;
	border:1px solid #ccc;
	border-radius:3px;
}
*/

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ テーブルセル内のリンク
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
td>div>p>a {
	text-decoration: underline;
}

/*
* サイトマップを非表示に
*/
#footer-copyright ul li.sitemaps {
	display:none;
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ 応募フォーム
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
table.table-scroll {
	display: block;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	table-layout: fixed;
}

p.indent{
    padding-left: 5em;
    padding-right: 5em;
}