/* ---------------------
base overwrite
--------------------- */
H1, H2, H3, H4, H5 {
	margin: 8px 0 8px 0;
	padding: 0;
	line-height: 1.2em;
	letter-spacing: -0.008em;
}
H1, H2 {
	font-size: 28px;
	font-weight: normal;
}
H3 {
	font-size: 21px;
	font-weight: bold;
}
H4, H5, h6 {
	font-size: 16px;
	font-weight: bold;
}
h1 sup, h2 sup, h3 sup, h4 sup, h5 sup {
	vertical-align: top;
}
a {
	text-decoration: none;
	zoom: 1;
	color: #007DCE;
}
a[href*="/"]:hover {
	text-decoration: underline;
}
ul, ol {
	margin-bottom: 0.4em;
	padding: 0;
}
li {
	margin: 0 0 0.4em 1.8em;
	padding: 0;
	list-style-position: outside
}

/*PC*/
@media screen and (min-width: 768px) {
}

/*SP*/
@media screen and (max-width: 767px) {
H1, H2 {
	font-size: 21px;
	font-weight: bold;
}
H3 {
	font-size: 21px;
	font-weight: normal;
}
H4, H5, h6 {
	font-size: 16px;
	font-weight: bold;
}
}
/* ---------------------------------------------------------------
	役割 sn-r-
--------------------------------------------------------------- */

/* ---------------------
	テキスト
--------------------- */
.sn-r-text.sn-p-primary, p, li, dt, dd, th, td {
	font-size: 14px;
	line-height: 1.4em;
}
.sn-r-text.sn-p-secondary {
	font-size: 12px;
}
.sn-r-text.sn-p-assistant {
	font-size: 10px;
}
/*エラー*/
.sn-r-text.sn-error {
	color: #A30000;
}
/*警告*/
.sn-r-text.sn-p-alert {
	color: #A30000;
}
.sn-r-text.sn-p-alert:before {
	content: "";
	display: inline-block;
	margin-right: 8px;
	margin-top: -0.2em;
	vertical-align: middle;
	width: 1em;
	height: 1em;
	background: url("/~/media/Images/common/sn-css/icon_alert") no-repeat;
	background-size: contain;
}
/*成功*/
.sn-r-text.sn-p-success {
	color: #000;
}
.sn-r-text.sn-p-success:before {
	content: "";
	display: inline-block;
	margin-right: 8px;
	margin-top: -0.2em;
	vertical-align: middle;
	width: 1.2em;
	height: 1.2em;
	background: url("/~/media/Images/common/sn-css/icon_success") no-repeat;
	background-size: contain;
}
/* ---------------------
	見出し
--------------------- */

/*PC*/
@media screen and (min-width: 768px) {

.sn-r-heading.sn-p-l {
	font-size: 28px !important;
	font-weight: normal !important;
}
.sn-r-heading.sn-p-m {
	font-size: 21px !important;
	font-weight: bold !important;
}
.sn-r-heading.sn-p-s {
	font-size: 16px !important;
	font-weight: bold !important;
}

}

/*SP*/
@media screen and (max-width: 767px) {
.sn-r-heading.sn-p-l {
	font-size: 21px !important;
	font-weight: bold !important;
}
.sn-r-heading.sn-p-m {
	font-size: 21px !important;
	font-weight: normal !important;
}
.sn-r-heading.sn-p-s {
	font-size: 16px !important;
	font-weight: bold !important;
}
}

/*成功*/
.sn-r-heading[class^="sn-d-bgcolor-"], .sn-r-heading[class*=" sn-d-bgcolor-"] {
	padding: 8px;
}


/* ---------------------
	参照（リンク）
--------------------- */
.sn-r-href {
	color: #007DCE;
}
.sn-r-href:hover {
	color: #007DCE;
	text-decoration: underline;
}
input[type="button"].sn-r-href {
	padding: inherit;
	margin: inherit;
	background: none;
	border: none;
	cursor: pointer;
}
.sn-r-href.sn-p-primary:before {
	color: #007DCE;
	content: "\025B6";
	font-size: 80%;
	letter-spacing: 4px;
}

/*
.sn-r-href.sn-d-button {
	margin: 16px auto;
	text-align: center;
	display: inline-block;
	border: 1px solid #007DCE;
	border-radius: 40px;
	max-width: 240px;
	min-width: 140px;
	padding: 8px 8px;
}
*/

/* ---------------------
	実行（ボタン）
--------------------- */
/* 共通 */
.sn-r-exe {
	position: relative;
	font-weight: bold;
	text-decoration: none;
	box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.3);
	margin: 16px 8px;
	background-color: #fafafa;
	border: 1px solid transparent;
	cursor: pointer;
	color: #3D5863;
	outline: 0;
	/* ios */
	-webkit-appearance: none !important;
}
.sn-r-exe.sn-p-l {
	line-height: 4.8em;
	border-radius: 4px;
	margin-bottom: 5px;
	width: 360px;
}
.sn-r-exe.sn-p-m {
	line-height: 3.6em;
	border-radius: 4px;
	margin-bottom: 5px;
	width: 240px;
}
.sn-r-exe.sn-p-s {
	line-height: 2.4em;
	border-radius: 4px;
	margin-bottom: 1px;
	width: 120px;
}
.sn-r-exe:active {
	box-shadow: 0px -1px 8px rgba(0, 0, 0, 0.3);
	background-color: #fff;
	top: 3px;
}
.sn-r-exe:hover {
	background-color: #fff;
}
.sn-r-exe::before, .sn-r-exe::after {
	-webkit-transition: all .3s;
	transition: all .3s;
}
/*プライマリー*/
.sn-r-exe.sn-p-primary {
	background: #007DCE;
	color: #fff;
}
.sn-r-exe.sn-p-primary:hover {
	background: #00AAEE;
	border-color: #00AAEE;
}
/*成功*/
.sn-r-exe.sn-p-success {
	background: #16A085;
	color: #fff;
	text-decoration: none;
}
.sn-r-exe.sn-p-success:hover {
	background: #1abc9c;
}
/*不可状態*/
.sn-r-exe.sn-p-disable {
	background: #b2cad1;
	color: #5C8495;
	text-decoration: none;
	cursor: default;
	box-shadow: none;
}
.sn-r-exe.sn-p-disable:hover {
	top: 0;
}
.sn-r-exe.sn-p-disable:active {
	top: 0px;
}

/* ---------------------
	区切り
--------------------- */

hr.sn-r-separate{
	margin: 16px 0;
	border:none;
	border-bottom: 1px solid transparent;
}
hr.sn-r-separate.sn-p-primary{
	border-color: #222;	
}
hr.sn-r-separate.sn-p-secondary{
	border-color: #888;	
}
hr.sn-r-separate.sn-p-assistant{
	border-color: #bbb;		
}


/* ---------------------------------------------------------------
	装飾 sn-d-
--------------------------------------------------------------- */

/* ---------------------
	パディング
--------------------- */
.sn-d-padding-high,
.sn-d-padding-mid,
.sn-d-padding-low{
	box-sizing:border-box;	
}
/*PC*/
@media screen and (min-width: 768px) {
.sn-d-padding-high {
	padding: 32px;
}
.sn-d-padding-mid {
	padding: 16px;
}
.sn-d-padding-low {
	padding: 8px;
}
}
/*SP*/
@media screen and (max-width: 767px) {
.sn-d-padding-high {
	padding: 16px;
}
.sn-d-padding-mid {
	padding: 8px;
}
.sn-d-padding-low {
	padding: 4px;
}

}
/* ---------------------
	マージン
--------------------- */
.sn-d-margin-high {
	padding: 32px;
}
.sn-d-margin-mid {
	padding: 16px;
}
.sn-d-margin-low {
	padding: 8px;
}
/* ---------------------
	背景色
--------------------- */

/*状態*/
.sn-d-bgcolor-success-p {
	background-color: #16A085;
	color: #fff;
}
.sn-d-bgcolor-success-a {
	background-color: #E6FFF2;
}
.sn-d-bgcolor-error-p {
	background-color: #A30000;
	color: #fff;
}
.sn-d-bgcolor-error-a {
	background-color: #ffebee;
}
/*色相*/
.sn-d-bgcolor-blue-a {
	background-color: #AAE3F9;
}
/* ---------------------
	文字色
--------------------- */

/*状態*/
.sn-d-textcolor-attribute {
	color: #888;
}
.sn-d-textcolor-error {
	color: #A30000;
}
/*色相*/
.sn-d-textcolor-black-p {
	color: #222;
}
.sn-d-textcolor-black-s {
	color: #555;
}
.sn-d-textcolor-black-a {
	color: #888;
}
/* ---------------------
	ボーダー色
--------------------- */

/*状態*/

/*色相*/
.sn-d-bordercolor-black-p {
	color: #888;
}
.sn-d-bordercolor-black-s {
	color: #bbb;
}
.sn-d-bordercolor-black-a {
	color: #eee;
}
/* ---------------------
	レイアウト
--------------------- */

/*中身のセンタリング*/
.sn-d-content-center {
	text-align: center;
}
/*箱のセンタリング*/
.sn-d-container-center {
	margin-left: auto;
	margin-right: auto;
}
/*ホワイトスペース*/
/*PC*/
@media screen and (min-width: 768px) {
.sn-d-wsp-active-high {
	padding: 2em 0;
}
.sn-d-wsp-active-mid {
	padding: 1em 0;
}
.sn-d-wsp-active-low {
	padding: 0.5em 0;
}
}
/*SP*/
@media screen and (max-width: 767px) {
.sn-d-wsp-active-high {
	padding: 1em 0;
}
.sn-d-wsp-active-mid {
	padding: 0.5em 0;
}
.sn-d-wsp-active-low {
	padding: 0.2em 0;
}
}

/*マルチカラム*/
/*PC*/
@media screen and (min-width: 768px) {
.sn-d-multicolumn2 {
	column-count: 2;
	-moz-column-count: 2;
	-webkit-column-count: 2;
	-ms-column-count: 2;
}
.sn-d-multicolumn3 {
	column-count: 3;
	-moz-column-count: 3;
	-webkit-column-count: 3;
	-ms-column-count: 3;
}
.sn-d-multicolumn4 {
	column-count: 4;
	-moz-column-count: 4;
	-webkit-column-count: 4;
	-ms-column-count: 4;
}
}

/*SP*/
@media screen and (max-width: 767px) {
[class^="sn-d-multicolumn"],  [class*=" sn-d-multicolumn"] {
	column-count: 0;
	-moz-column-count: 0;
	-webkit-column-count: 0;
	-ms-column-count: 0;
}
}
