@charset "utf-8";
@font-face {
	font-family: "Vegur-Light";
	font-weight: 400;
	font-style: normal;
	src: url(../fonts/Vegur-Light.woff) format("woff");
}

/* HTMLリセット */ body,div,h1,h2,h3,h4,h5,h6,p,ul,ol,li,dl,dt,dd,pre,blockquote,th,td,form,fieldset,input,textarea{margin:0;padding:0;}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}em,strong,code,address,th{font-weight:normal;font-style:normal;}ul,ol{list-style:none;}q:before,q:after{content:"";}abbr,acronym{border:0;}table{border-collapse:collapse;border-spacing:0;}th{text-align:left;}button,fieldset,img{border:0;}
/********* HTML再定義 ***********************************************/

html {
	overflow-y: scroll;
}

body {
	margin: 0;
	padding: 0;
	background-color: #FFF;
	line-height: 1.4;
	color: #3B3B3B;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Meiryo, "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
	font-size: 15px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 10px 0;
	font-weight: 800;
}

h1 {
	font-family: "Vegur-Light", "Open Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック体", "Yu Gothic", Meiryo, "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
	font-size: 220%;
}
h2 {
	font-size: 180%;
}
h3 {
	font-size: 160%;
}
h4 {
	font-size: 140%;
}
h5 {
	font-size: 120%;
}
h6 {
	font-size: 100%;
}

p {
	margin: 10px 0;
}

em,
strong {
	font-weight: bold;
	font-style: normal;
}

ul {
	margin: 10px 20px;
}
ul li {
	list-style: disc;
}

ol {
	margin: 10px 30px;
}
ol li {
	list-style: decimal;
}

dl {
	margin: 10px 0;
}
dl dd {
	margin-left: 30px;
}

pre {
	overflow: auto;
	margin: 10px 0;
	padding: 10px 18px;
	border-left: 3px solid #B8E2F2;
	background-color: #FCFCFC;
	line-height: 1.2;
	font-size: 100%;

	-webkit-overflow-scrolling: touch;
}
pre code {
	color: #9B2D7E;
}
code {
	color: #2F667A;
	font-family: Consolas, Menlo, monospace;
}

blockquote {
	overflow: hidden;
	margin: 40px 0 30px;
	padding: 18px 20px;
	border-top: 1px solid #B8E2F2;
	border-bottom: 1px solid #B8E2F2;
	color: #D64072;
	font-family: "Open Sans", Avenir, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック体", "Yu Gothic", Meiryo, "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
	font-size: 166%;
	font-style: italic;
	text-align: center;
}
blockquote:before {
	position: absolute;
	left: 50%;
	width: 32px;
	height: 32px;
	margin-top: -38px;
	margin-left: -16px;
	border-radius: 100%;
	background-color: #B8E2F2;
	line-height: 34px;
	color: #FFF;
	font-family: "FontAwesome";
	font-size: 10px;
	text-align: center;
	content: "\f10d  \f10e";
}
blockquote * {
	display: inline-block;
	margin: 0 5px 0 0 !important;
	padding: 0 !important;
}
blockquote cite {
	color: #808080;
	font-size: 64%;
}

table {
	max-width: 100%;
	margin: 20px 0;
	border: 1px solid #DDD;
}
table tr th {
	padding: 4px 5px;
	border-right: 1px dotted #DDD;
	border-bottom: 1px solid #DDD;
	background-color: #F2F2F2;
	line-height: 1.0;
	font-weight: 800;
	text-align: center;
}
table tr:nth-child(odd) {
	background-color: #FAFAFA;
}
table tr td {
	padding: 8px 15px;
	border-right: 1px dotted #DDD;
	border-bottom: 1px solid #EEE;
}
table tr:hover > td {
	background-color: #FFFFF2;
}

form {
	margin-bottom: 20px;
}
form legend {
	display: none;
}
form dl dd {
	margin: 0 0 10px;
}
form dl dd input,
form dl dd textarea {
	padding: 4px;
}
form dl dd select {
	padding: 2px;
}
form ul {
	margin: 15px 0;
}
form ul li {
	list-style: none;
}
form p {
	margin: 0;
}

input,
textarea,
select,
button {
	vertical-align: middle;
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}

a:link,
a:visited {
	color: #5698C4;
	text-decoration: none;
	-webkit-transition: 0.1s;
	        transition: 0.1s;
}
a:hover,
a:active {
	color: #145E93;
	text-decoration: none;
}

/********* フォーム *************************************************/

::-moz-placeholder {
	color: #C0C0C0;
	font-size: 12px;
	vertical-align: middle;
}
:-ms-input-placeholder {
	color: #C0C0C0;
	font-size: 12px;
	vertical-align: middle;
}
::-webkit-input-placeholder {
	color: #C0C0C0;
	font-size: 12px;
	vertical-align: middle;
}

/********* 基本 *********/

label {
	cursor: pointer;
}
button {
	padding: 0;
	background-color: transparent;
	cursor: pointer;
	-webkit-transition: all 0.2s ease-out;
	        transition: all 0.2s ease-out;

	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
}
input,
select,
textarea {
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
	border: 1px solid #DCDCDC;
	border-radius: 2px;
	font-family: inherit;
	font-size: 100%;
	-webkit-transition: all 0.12s ease-out;
	        transition: all 0.12s ease-out;
}
textarea {
	padding: 10px 8px;
}

[type="url"],
[type="text"],
[type="email"],
[type="password"],
textarea,
select {
	padding: 10px 8px;
	color: #2B2B2B;

	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
}
[type="url"]:focus,
[type="text"]:focus,
[type="email"]:focus,
[type="password"]:focus,
textarea:focus,
select:focus {
	border: 1px solid #5698C4;
}
select::-ms-expand {
	display: none;
}

input[type="submit"] {
	position: relative;
	z-index: 400;
	min-width: 100px;
	padding: 12px 18px;
	border: 1px solid #5698C4;
	border-radius: 3px;
	background-color: #FFF;
	color: #5698C4;
	font-size: 12px;
	cursor: pointer;

	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
}
input[type="submit"]:hover {
	position: relative;
	z-index: 400;
	border-color: #007FDB;
	box-shadow: 0 2px 2px #EEE;
	color: #007FDB;
}
input[type="submit"]:active {
	opacity: 0.6;
	border-color: #808080;
	color: #808080;
}

/********* セレクトボックス *********/

.select-box {
	width: 100%;
}
.select-box select {
	width: 100%;
	height: 42px;
}
.select-box:after {
	position: absolute;
	width: 10px;
	height: 10px;
	margin: 17px 0 0 -24px;
	line-height: 1.0;
	color: #C0C0C0;
	font-family: "FontAwesome";
	font-size: 16px;
	content: "\f107";
	pointer-events: none;
}

/********* ラジオボタン兼チェックボックス *********/

.radio-box {
	display: none;
}

.radio-button {
	display: inline-block;
	padding: 4px 8px;
	border: 1px solid #FFF;
	border-radius: 4px;
	background-color: transparent;
	line-height: 1.0;
	color: #999;
	letter-spacing: 0.2px;
}
.radio-box:checked + .radio-button {
	border: 1px solid #4895CE;
	background-color: #4895CE;
	color: #FFF;
}

.radio-button:before {
	margin-right: 7px;
	color: #CCC;
	font-family: "FontAwesome";
	font-size: 110%;
	content: "\f1db";
}
.radio-box:checked + .radio-button:before {
	color: #FFF;
	content: "\f058";
}

/********* 個別指定 *************************************************/

#action {
	overflow: hidden;
}
#action form {
	display: inline-block;
	margin-right: 3px;
}

.number {
	text-align: right;
}
.required {
	color: #D70035;
}

/********* アラート *************************************************/

.alert {
	margin: 15px 0;
	padding: 10px;
	border: 1px solid transparent;
	border-radius: 2px;
	text-align: center;
	letter-spacing: 0.1px;
	-webkit-transition: 0.2s;
	        transition: 0.2s;
}
a > .alert:hover {
	opacity: 0.6;
}
.alert:before {
	margin-right: 5px;
	font-family: "FontAwesome";
	font-size: 120%;
}

/********* 成功 *********/

.success {
	border-color: #CFE0BE;
	background-color: #E4F2DE;
	color: #39703A;
}

/********* 警告 *********/

.attention {
	border-color: #E2C5C9;
	background-color: #F7E3E3;
	color: #A04140;
}

ul.attention {
	margin: 10px 0;
}
ul.attention li {
	list-style: circle;
	margin: 0 0 0 20px;
	padding: 0 5px;
	text-align: left;
}

.warning {
	border-color: #EDE7D3;
	background-color: #F9F6E3;
	color: #939083;
}

/********* お知らせ *********/

.info,
.message {
	border-color: #ABD7EA;
	background-color: #D9F0F9;
	color: #256D8E;
}