@charset "UTF-8";

/*
フォント設定
カラー設定
汎用
横幅最大値・左右余白設定

ヘッダー（Header）
グローバルナビ（GlobalNav）
パン屑リスト（TopicPath）
ページの先頭へ
フッターナビ（FooterNav）
フッター（Footer）
ヘッダー・フッター以外の領域指定（Stage）

ローカルナビ（LocalNav）
コンテンツ領域（Contents）

見出し（h1〜）
メインリード（LeadMain）
メインセクション（SectionMain）
サブセクション（SectionSub）
関連情報（RelatedInfo）

記述リスト（DLHori、DLVert、DLTable）
表組み（Table1、Table2）
囲み（Box）
リスト各種
テキストリンクアイコン
ボタン
ページネーション
検索窓

フォーム

印刷用設定
*/



/* ■ フォント設定 ==================================================================================== */

/*
フォント
基準サイズ
*/


/* フォント --------------------------------------------------- */

/* WEBフォント：日本語 */
@font-face {
font-family: 'Noto Sans Japanese';
font-style: normal;
font-weight: 100;
src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Thin.woff2) format('woff2'),
url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Thin.woff) format('woff'),
url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Thin.otf) format('opentype');
}

@font-face {
font-family: 'Noto Sans Japanese';
font-style: normal;
font-weight: 200;
src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Light.woff2) format('woff2'),
url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Light.woff) format('woff'),
url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Light.otf) format('opentype');
}

@font-face {
font-family: 'Noto Sans Japanese';
font-style: normal;
font-weight: 300;
src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-DemiLight.woff2) format('woff2'),
url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-DemiLight.woff) format('woff'),
url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-DemiLight.otf) format('opentype');
}

@font-face {
font-family: 'Noto Sans Japanese';
font-style: normal;
font-weight: 400;
src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Regular.woff2) format('woff2'),
url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Regular.woff) format('woff'),
url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Regular.otf) format('opentype');
}

@font-face {
font-family: 'Noto Sans Japanese';
font-style: normal;
font-weight: 500;
src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Medium.woff2) format('woff2'),
url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Medium.woff) format('woff'),
url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Medium.otf) format('opentype');
}

@font-face {
font-family: 'Noto Sans Japanese';
font-style: normal;
font-weight: 700;
src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.woff2) format('woff2'),
url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.woff) format('woff'),
url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.otf) format('opentype');
}

@font-face {
font-family: 'Noto Sans Japanese';
font-style: normal;
font-weight: 900;
src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Black.woff2) format('woff2'),
url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Black.woff) format('woff'),
url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Black.otf) format('opentype');
}

/* WEBフォント：英語 */
.WF1 {
font-family: 'Lato', sans-serif;
letter-spacing: 0.08em;
}

.WF2 {
}

/* フォントファミリー */
@media only screen and (max-width: 767px) {

	body {
	font-family: Sans-Serif;
	}

}

@media print, screen and (min-width: 768px) {

	body {
	font-family: "Noto Sans Japanese","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo","ＭＳ Ｐゴシック",Sans-Serif;
	}

}

@media print, screen and (min-width: 1090px) {

}


/* 基準サイズ --------------------------------------------------- */

@media only screen and (max-width: 767px) {

	body {
	font-size: 15px; 
	}

	h1,h2,h3,h4,h5,h6,p,th,td,dl,ul,ol,caption,blockquote,input,select,textarea,div {
	line-height: 1.8em;
	}

}

@media print, screen and (min-width: 768px) {

	body {
	font-size: 12px;
	}

	h1,h2,h3,h4,h5,h6,p,th,td,dl,ul,ol,caption,blockquote,input,select,textarea,div {
	line-height: 2.0em;
	}

}

@media print, screen and (min-width: 1090px) {

	/* 基準フォントサイズ：15px */
	body {
	font-size: 15px;
	}

	h1,h2,h3,h4,h5,h6,p,th,td,dl,ul,ol,caption,blockquote,input,select,textarea,div {
	line-height: 2.0em;
	}

	/* 基準フォントサイズ：16px */
/*
	body {
	font-size: 16px;
	}

	h1,h2,h3,h4,h5,h6,p,th,td,dl,ul,ol,caption,blockquote,input,select,textarea,div {
	line-height: 2.2em;
	}
*/

}



/* ■ カラー設定 ==================================================================================== */

/* 
本文・body背景
リンク
アラート
テキスト個別
ボーダー個別
背景個別
*/


/* 本文・body背景 --------------------------------------------------- */

body {
color: #000;
background: #fff;
}


/* リンク --------------------------------------------------- */

a:link {
color: #1567a6;
text-decoration: none;
-webkit-transition: color 0.3s ease 0.01s, background-color 0.3s ease 0.01s, opacity 0.3s ease 0.01s;
transition: color 0.3s ease 0.01s, background-color 0.3s ease 0.01s, opacity 0.3s ease 0.01s;
}

a:active {
color: #1567a6;
text-decoration: none;
}

a:visited {
color: #1567a6;
text-decoration: none;
}

a:hover {
color: #cc0000;
text-decoration: none;
}

@media print, screen and (min-width: 1090px) {

	a:hover {
	opacity: 0.7;
	}

}

/* スマホ・タブレット */
.SmartPhone a:link,
.SmartPhone a:active,
.SmartPhone a:visited,
.SmartPhone a:hover,
.Tablet a:link,
.Tablet a:active,
.Tablet a:visited,
.Tablet a:hover {
color: #1567a6;
text-decoration: none;
-webkit-transition: none;
transition: none;
}


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

.Alert {
color: #e90000;
}

.Box.Alert,
.Box1.Alert {
border-color: #e90000;
}


/* テキスト個別 --------------------------------------------------- */

.C1T {
color: #b8b8b8 !important;
}

.C2T {
color: green !important;
}

.C3T {
color: red !important;
}

.C4T {
color: purple !important;
}

.C5T {
color: orange !important;
}

/* ボーダー個別 --------------------------------------------------- */

.C1Bo {
border-color: #b8b8b8 !important;
}

.C2Bo {
border-color: green !important;
}

.C3Bo {
border-color: red !important;
}

.C4Bo {
border-color: purple !important;
}

.C5Bo {
border-color: orange !important;
}


/* 背景個別 --------------------------------------------------- */

.Bg1 {
background-color: #f5f6f6 !important;
}



/* ■ 汎用 ==================================================================================== */

#Wrapper {
min-width: 320px;
}

@media only screen and (max-width: 767px) {

	#Wrapper {
	padding-top: 90px;
	}

	.PC {
	display: none !important;
	}

}

@media only screen and (max-width: 372px) {

	#Wrapper {
	padding-top: 110px;
	}


}

@media print, screen and (min-width: 768px) {

	#Wrapper {
	padding-top: 70px;
	}

	.SP {
	display: none !important;
	}

}

@media print, screen and (min-width: 1090px) {

	#Wrapper {
	padding-top: 90px;
	}

}


/* ■ 横幅最大値・左右余白設定 ==================================================================================== */

#Header,
#GlobalNav,
#FooterNavUnit,
#FooterUnit,
#Stage {
width: 100%;
}

@media only screen and (max-width: 767px) {

	.Width1,
	.Width2 {
	margin: 0 15px;
	box-sizing: border-box;
	}

}

@media print, screen and (min-width: 768px) {

	#GlobalNavUnit,
	#FooterNavUnit,
	#FooterUnit,
	.TopicPathUnit,
	.BreadCrumbUnit,
	#Stage,
	.Width1 {
	max-width: 1090px;
	margin: 0 auto;
	padding: 0 20px;
	}

	.Width2 {
	max-width: 800px;
	margin: 0 auto;
	padding: 0 20px !important;
	}

}

@media print, screen and (min-width: 1090px) {



}



/* ■ ヘッダー（Header） ==================================================================================== */

#HeaderWrap {
position: fixed;
width: 100%;
top: 0;
left: 0;
z-index: 3000;
height: 95px;
background: #fff;
}

#Header {
background: #fff;
}

/* Logo */
#HeaderUnit .Logo {
float: left;
}

#HeaderUnit .ServiceName {
display: inline-block;
line-height: 1.0em;
text-indent: -9999px;
background: url(../img/common/header/nss_logo.png?01) no-repeat;
background-position: center;
background-size: cover;
}

/* SubNav */

#HeaderUnit .SubNav li a {
margin-left: 5px;
line-height: 1.3em;
letter-spacing: 0.075em;
text-align: center;
}

/* #BtnOpenMenu */
#BtnOpenMenu a {
display: block;
position: relative;
float: right;
width: 30px;
height: 30px;
font-size: 100%;
text-align: center;
text-indent: -9999px !important;
}

/* ハンバーガー */
#BtnOpenMenu .HamburgerItem {
position: absolute;
display: block;
width: 34px;
height: 4px;
top: 20px;
left: 0;
right: 0;
margin: auto;
background-color: #12a4a5;
transition: 0.3s ease 0.01s;
border-radius: 20px;
}

#BtnOpenMenu .HamburgerItem:nth-child(1) {
transform: translateY(-11px);
}

#BtnOpenMenu .HamburgerItem:nth-child(3) {
transform: translateY(11px);
}

#BtnOpenMenu.Opened .HamburgerItem:nth-child(1) {
transform: translateY(0px) rotate(45deg);
}

#BtnOpenMenu.Opened .HamburgerItem:nth-child(2) {
transform: translateX(6.3333333333px);
opacity: 0;
}

#BtnOpenMenu.Opened .HamburgerItem:nth-child(3) {
transform: translateY(0px) rotate(-45deg);
}

body.Fixed {
overflow: hidden;
}

@media only screen and (max-width: 767px) {

	#Header {
	height: 60px;
	margin-bottom: 5px;
	}
		
	/* Logo */
	#HeaderUnit .Logo {
	padding-top: 4px;
	/* padding-left: 10px; */
	line-height: 1.0em;
	}
	
	#HeaderUnit .Logo a {
	display: block;
	}

	#HeaderUnit .ServiceName {
	width: 263px;
	height: 63px;
	cursor:pointer;
	}

	#HeaderUnit .TagLine {
	position: absolute;
	top: 63px;
	width: 100%;
	height: 35px;
	padding: 0 0;
	color: #fff;
	background: #12a4a5;
	font-size: 67%;
	line-height: 35px;
	text-align: center;
	}

	/* SubNav */
	#HeaderUnit .Entry a {
	display: block;
	position: absolute;
	top: 21px;
	right: 32px;
	background: url(../img/common/header/Btn_Entry_Sp.png) no-repeat;
	background-size: 70px 25px;
	width: 78px;
	height: 30px;
	text-indent: -9999px;
	}

	/* #BtnOpenMenu */
	#BtnOpenMenu a {
	margin-top: 12px;
	margin-right: 8px;
	}

}

@media only screen and (max-width: 372px) {

	/* Logo */
	#HeaderUnit .Logo {
	padding-top: 3px;
	}

	#HeaderUnit .ServiceName {
	width: 230px;
	height: 55px;
	}

	#HeaderUnit .TagLine {
	letter-spacing: -0.1px;
	}

	/* SubNav */
	#HeaderUnit .Entry a {
	display: block;
	position: absolute;
	top: 22px;
	right: 43px;
	background: url(../img/common/header/Btn_Entry_Sp.png) no-repeat;
	background-size: 70px 25px;
	width: 70px;
	height: 25px;
	text-indent: -9999px;
	}

}

@media print, screen and (min-width: 768px) {

	#Header {
	height: 120px;
	border-bottom: 1px solid #e4e9e6;
	}

	/* Logo */
	#HeaderUnit .Logo {
	margin-top: 15px;
	margin-left: 15px;
	line-height: 1.0em;
	}

	#HeaderUnit .ServiceName {
	width: 410px;
	height: 98px;
	background-size: 410px 98px; 
	background-position: left;
	display: inline-block;
	vertical-align: top;
	}

	#HeaderUnit .TagLine {
	display: inline-block;
	height: 93px;
	margin-left: 7px;
	padding-top: 47px;
	padding-left: 7px;
	padding-bottom: 0px;
	padding-right: 20px;
	font-size: 94%;
	font-weight: normal;
	line-height: 1.0em;
	color: #12a4a5;
	border-left: 1px solid #12a4a5;
	}

	#HeaderUnit .SubNav li {
	display: inline;
	}

	#HeaderUnit .Entry a {
	position: absolute;
	top: 45px;
	right: 58px;
	display: block;
	background: url(../img/common/header/Btn_Entry_Pc.png) no-repeat;
	background-size: 150px 40px;
	width: 150px;
	height: 40px;
	text-indent: -9999px;
	}

	/* #BtnOpenMenu */
	#BtnOpenMenu a {
	margin-top: 41px;
	margin-right: 15px;
	}

}

@media print, screen and (min-width: 1090px) {

	#Header {
	height: 105px;
	}

	#HeaderUnit {
	padding-top: 0;
	}

	#HeaderUnit .ServiceName {
	width: 450px;
	height: 75px;
	}

	#HeaderUnit .TagLine {
	height: 52px;
	padding-top: 20px;
	margin-top: 5px;
	}

	#HeaderUnit .Entry a {
	top: 25px;
	right: 100px;
	background-size: 150px 40px;
	width: 150px;
	height: 40px;
	}

	/* #BtnOpenMenu */
	#BtnOpenMenu a {
	margin-top: 23px;
	margin-right: 33px;
	}

}


/* ■ グローバルナビ（GlobalNav） ==================================================================================== */

#GlobalNav {
background: #12a4a5;
}

#GlobalNav li a {
display: block;
color: #fff;
}

@media only screen and (max-width: 767px) {

	#GlobalNav {
    display: none;
    position: fixed;
    left: 0;
    top: 60px;
    right: 0;
    bottom: 0;
    width: 100%;
    padding: 20px 20px;
	}

	#GlobalNav ul {
	height: 100%;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
	}

	#GlobalNav li {
	float: left;
	width: 50%;
	text-align: center;
	}

	#GlobalNav .sm li {
	float: none;
	width: 100%;
	text-align: left;
	}

	#GlobalNav li:first-child {
   	margin-top: 25px;
	border-top: 1px solid #fff;
	}

	#GlobalNav .Level2 li:first-child {
   	margin-top: 0;
	border-top: none;
	}

	#GlobalNav li a {
	display: block;
	padding: 12px;
	border-bottom: 1px solid #fff;
	}
	
	#GlobalNav li a:link,
	#GlobalNav li a:active,
	#GlobalNav li a:visited,
	#GlobalNav li a:hover {
	text-decoration: none;
	}

	#GlobalNav .Level2 a {
	padding-left: 10px;
	background: #2fbbbc url(../img/common/icon/Icon_LinkFwd.png?01) no-repeat;
	background-size: 12px 12px;
	background-position: 96% 50%;
	font-size: 90%;
	border-bottom: 1px solid #12a4a5;
	}

	#GlobalNav .Parent a {
	position: relative;
	padding: 16px 10px;
	font-weight: bold;
	}
	
	#GlobalNav .Parent a:before,
	#GlobalNav .Parent a:after {
	display: block;
	position: absolute;
	background-color: #fff;
	content: "";
	}
	
	#GlobalNav .Parent a:before {
	top: 50%;
	right: 10px;
	width: 14px;
	height: 2px;
	margin-top: -1px;
	}
	
	#GlobalNav .Parent a:after {
	top: 50%;
	right: 16px;
	width: 2px;
	height: 14px;
	margin-top: -7px;
	}
	
	#GlobalNav .Parent a.highlighted:after {
	display: none;
	}

	#GlobalNav .Parent a.highlighted {
	background: #2fbbbc;
	border-bottom: 1px solid #12a4a5;
	}

}

@media print, screen and (min-width: 768px) {

	#GlobalNav {
	display: none;
	position: absolute;
	left: 0;
	top: 70px;
	z-index: 1000;
	}

	#GlobalNav .sm {
	padding-top: 45px;
	}

	#GlobalNav ul {
	max-width: 1090px;
	margin: 0 auto;
	padding: 0 0 0 20px;
	text-align: left;
	box-sizing: border-box;
	}

	#GlobalNav li:nth-child(3n) {
	margin-right: 0 !important;
	}

	#GlobalNav li a {
	display: block;
	}

	#GlobalNav .Level1 {
	float: left;
	width: 30%;
	margin-right: 3%;
	height: 200px;
	}

	#GlobalNav .Level1 .Parent a {
	padding-bottom: 10px;
	margin-bottom: 15px;
	font-size: 120%;
	border-bottom: 2px solid #fff;
	}
	
	#GlobalNav .Level2 {
	display: block;
	}

	#GlobalNav .Level2 li {
	margin-bottom: 10px;
	margin-right: 0 !important;
	width: 100%;
	}

	#GlobalNav .Level2 a {
	padding-left: 25px;
	background: url(../img/common/icon/Icon_LinkFwd.png?01) no-repeat;
	background-size: 12px 12px;
	background-position: 0 50%;
	font-size: 90%;
	}

}

@media print, screen and (min-width: 1090px) {

	#GlobalNav {
	margin-bottom: 10px;
	top: 90px;
	}

	#GlobalNav ul {
	padding: 0;
	}

	#GlobalNav li {
	width: 320px;
	margin-right: 45px;
	}

	#GlobalNav .Level1 {
	margin-bottom: 40px;
	}

	#GlobalNav .Parent a {
	cursor: default;
	}

	#GlobalNav .Parent a:hover {
	opacity: 1;
	}

}



/* ■ パン屑リスト（TopicPath） ==================================================================================== */

.TopicPathUnit li,
.BreadCrumbUnit li {
display: inline;
padding-left: 1px;
line-height: 1.5em;
padding-right: 12px;
background: url(../img/common/icon/Icon_PathAllow.png) no-repeat right center;
}

.TopicPathUnit li:first-child,
.BreadCrumbUnit li:first-child {
padding-left: 13px;
background-image: url(../img/common/icon/Icon_PathHome.png), url(../img/common/icon/Icon_PathAllow.png);
background-repeat: no-repeat, no-repeat;
background-position: left center, right center;
box-sizing: border-box;
}

.TopicPathUnit li:last-child,
.BreadCrumbUnit li:last-child {
background: none;
}

.TopicPathUnit li:last-child a,
.BreadCrumbUnit li:last-child a {
color: #000;
text-decoration: none;
}

@media only screen and (max-width: 767px) {

	.TopicPath,
	.BreadCrumb {
	margin-bottom: 15px;
	padding: 0 0 5px 18px;
	width: 100%;
	-webkit-overflow-scrolling: touch;
	overflow-x: scroll;
	white-space: nowrap;
	}

	.TopicPathUnit,
	.BreadCrumbUnit {
	width: 100%;
	white-space: nowrap;
	}

	.TopicPathUnit li,
	.BreadCrumbUnit li {
	display: inline-block;
	max-width: 200px;
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
	font-size: 72%;
	}

	.TopicPathUnit li:last-child,
	.BreadCrumbUnit li:last-child {
	padding-left: 1px;
	}

}


@media print, screen and (min-width: 768px) {

	.TopicPath,
	.BreadCrumb {
	margin-bottom: 20px;
	}

	.TopicPathUnit li,
	.BreadCrumbUnit li {
	font-size: 79%;
	padding-left: 12px;
	}
	
}

@media print, screen and (min-width: 1090px) {

	.TopicPath,
	.BreadCrumb {
	margin-bottom: 30px;
	}

}



/* ■ ページの先頭へ ==================================================================================== */

#PageTop {
display: none;
position: fixed;
z-index: 3000;
right: 20px;
bottom: 20px;
}

@media only screen and (max-width: 767px) {

	#PageTop img {
	width: 17px;
	height: auto;
	}

}

@media print, screen and (min-width: 768px) {

	#PageTop img {
	width: 16px;
	height: auto;
	}

}


@media print, screen and (min-width: 1090px) {

}



/* ■ フッターナビ（FooterNav） ==================================================================================== */

#FooterNav .NonActive {
opacity: 0.4;
}

#FooterNav .NonActive a {
pointer-events: none;
cursor: default;
}

@media only screen and (max-width: 767px) {

	#FooterNavUnit h2 a {
	display: block;
	color: #000;
	}
	
	#FooterNavUnit ul li a {
	display: block;
	position: relative;
	color: #000;
	}
	
	#FooterNavUnit ul li a:before {
	display: block;
	position: absolute;
	border-left: solid 1px #12a4a5;
	border-bottom: solid 1px #12a4a5;
	content: '';
	}

	#FooterNav {
	padding: 40px 15px 0 15px;
	}

	#FooterNavUnit h2 a {
	position: relative;
	padding: 12px 0;
	border-top: 1px solid #12a4a5;
	}

	#FooterNavUnit .Unit:nth-of-type(6) h2 a {
	border-bottom: 1px solid #12a4a5;
	}

	#FooterNavUnit h2 a:before,
	#FooterNavUnit h2 a:after {
	display: block;
	position: absolute;
	background-color: #12a4a5;
	content: "";
	}

	#FooterNavUnit h2 a:before {
	top: 50%;
	right: 10px;
	width: 14px;
	height: 2px;
	margin-top: -1px;
	}

	#FooterNavUnit h2 a:after {
	top: 50%;
	right: 16px;
	width: 2px;
	height: 14px;
	margin-top: -7px;
	}

	#FooterNavUnit h2 a.Current:after {
	display: none;
	}

	#FooterNavUnit ul {
	display: none;
	}

	#FooterNavUnit ul li a {
	padding: 15px 30px 15px 10px;
	border-top: 1px solid #12a4a5;
	font-size: 94%;
	line-height: 1.6em;
	}

	#FooterNavUnit ul li a:before {
	top: 50%;
	right: 10px;
	width: 10px;
	height: 10px;
	margin-top: -5px;
	-ms-transform: rotate(225deg);
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
	}


}

@media print, screen and (min-width: 768px) {

	#FooterNav{
	padding-top: 30px;
	}

	#FooterNavUnit .Unit {
	float: left;
	width: 33%;
	margin-bottom: 50px;
	}

	#FooterNavUnit .Unit:first-child {
	width: 28%;
	}

	#FooterNavUnit .Unit:nth-child(2) {
	width: 38%;
	}

	#FooterNavUnit .Unit:nth-child(3) {
	width: 34%;
	}
	
	#FooterNavUnit .Unit:nth-child(4) {
	width: 28%;
	}

	#FooterNavUnit .Unit:nth-child(5) {
	width: 38%;
	}
	
	
	/* 見出し（カテゴリ名） */
	#FooterNavUnit h2 {
	margin-bottom: 7px;
	line-height: 1.5em;
	}
	
	#FooterNavUnit h2 a {
	display: block;
	color: #12a4a5;
	}


	#FooterNavUnit .Unit:nth-child(3n) ul li a {
	letter-spacing: -0.5px;
	}

	/* 子メニュー */
	#FooterNavUnit ul {
	margin-bottom: 15px;
	}
	
	#FooterNavUnit ul li {
	}
	
	#FooterNavUnit ul li a {
	color: #000;
	font-size: 87%;
	}

}

@media print, screen and (min-width: 1090px) {

	#FooterNav {
	padding-top: 50px;
	}

	#FooterNav .BtnOpenClose {
	cursor: default;
	}

	#FooterNav .BtnOpenClose:hover {
	opacity: 1;
	}

	#FooterNavUnit .Unit:first-child {
	width: 30%;
	}

	#FooterNavUnit .Unit:nth-child(2) {
	width: 36%;
	}

	#FooterNavUnit .Unit:nth-child(3) {
	width: 30%;
	}
	
	#FooterNavUnit .Unit:nth-child(4) {
	width: 30%;
	}

	#FooterNavUnit .Unit:nth-child(5) {
	width: 36%;
	}

}



/* ■ フッター（Footer） ==================================================================================== */

#FooterUnit .SubNav li {
display: inline;
}

@media only screen and (max-width: 767px) {

	#Footer {
	padding: 15px 15px;
	text-align: center;
	}
	
	/* SubNav */
	#FooterUnit .SubNav {
	margin-bottom: 20px;
	text-align: center;
	}
	
	#FooterUnit .SubNav li {
	margin: 0 10px;
	}
	
	/* クレジット */
	#FooterUnit .Credit {
	text-align: center;
	}
	
	#FooterUnit .Logo a {
	width: 120px;
	height: 13px;
	background-size: 120px 13px;
	}

	#FooterUnit .Corporate a {
	color: #000;
	font-size: 87%;
	}

	#FooterUnit .Copyright {
	font-size: 67%;
	}

	#FooterUnit .Credit {
	margin-top: 20px;
	margin-bottom: 20px;
	text-align: center;
	}

	#FooterUnit .Logo a {
	display: block;
	background: url(../img/common/footer/nss_logo.png) no-repeat;
	background-size: 300px 71px;
	width: 300px;
	height: 71px;
	text-indent: -9999px;
	margin: 0 auto;
	}

}

@media print, screen and (min-width: 768px) {

	#Footer {
	height: 105px;
	padding: 0 !important;
	}
	
	#FooterUnit {
	border-top: 1px solid #12a4a5;
	padding: 20px 20px;
	}
	
	/* SubNav */
	#FooterUnit .SubNav {
	float: left;
	}
	
	#FooterUnit .SubNav li {
	zoom: 1;
	}
	
	#FooterUnit .SubNav li a {
	display: block;
	float: left;
	margin-right: 10px;
	}
	
	#FooterUnit .Corporate {
	display: inline-block;
	margin-right: 30px;
	vertical-align: bottom;
	padding-bottom: 34px;
	}

	#FooterUnit .Corporate a {
	color: #000;
	font-size: 94%;
	}

	#FooterUnit .Copyright {
	display: inline-block;
	font-size: 79%;
	vertical-align: bottom;
	padding-bottom: 34px;
	}

	#FooterUnit .Credit {
	display: inline-block;
	margin-right: 20px;
	padding-right: 30px;
	border-right: 1px solid #12a4a5;
	}

	#FooterUnit .Logo a {
	display: block;
	background: url(../img/common/header/nss_logo.png?01) no-repeat;
	background-size: 450px 107px;
	background-position: left;
	width: 450px;
	height: 107px;
	text-indent: -9999px;
	}


}

@media print, screen and (min-width: 1090px) {

	#FooterUnit {
	padding: 20px 0;
	}

}



/* ■ ヘッダー・フッター以外の領域指定（Stage） ==================================================================================== */

@media only screen and (max-width: 767px) {

	#Stage {
	margin-bottom: 30px;
	}

}

@media print, screen and (min-width: 768px) {

	#Stage {
	margin-bottom: 50px;
	}

}

@media print, screen and (min-width: 1090px) {

}



/* ■ ローカルナビ（LocalNav） ==================================================================================== */

/* リンク色 */
.LocalNav a:link {
color: #000;
text-decoration: none;
}

.LocalNav a:active {
color: #000;
text-decoration: none;
}

.LocalNav a:visited {
color: #000;
text-decoration: none;
}

.LocalNav a:hover {
color: #bb2218;
text-decoration: none;
}

/* 見出し（カテゴリ名） */
#LocalNavArea h2.Mds {
text-align: center;
color: #fff;
}

.LocalNav {
margin-bottom: 20px;
}

.LocalNav li {
border-bottom: 1px solid #b8b8b8;
}	

/* 親メニュー */
.LocalNav li a,
.LocalNav li.Disabled {
display: block;
background-image: url(../img/common/icon/Icon_LinkS.png);
background-repeat: no-repeat;	
}

/* 親メニュー：Disabled */
.LocalNav li.Disabled {
background-image: none;
}

.LocalNav li.Disabled span {
opacity: 0.25;
}

/* 親メニュー：カレント */
.LocalNav li.Current {
background-color: #bb2218;
}

.LocalNav li > ul li {
border-bottom: none;
font-weight: normal;
}

/* 子メニュー */
/* 子メニュー：カレント */
.LocalNav li > ul li.Current a {
background-color: #fff;
}

/* 子メニュー */
.LocalNav li > ul {
padding: 5px 0;
background-color: #fff;
}

.LocalNav li > ul li a,
.LocalNav li > ul li.Disabled {
background-image: url(../img/common/icon/Icon_LinkS.png);
background-repeat: no-repeat;
}

/* Extraナビ */
.ExtraNav1 li,
.ExtraNav2 li {
margin-bottom: 10px;
}

.ExtraNav1 {
margin-bottom: 20px;
}

@media only screen and (max-width: 767px) {

	#LocalNavArea {
	float: none;
	padding-bottom: 15px;
	background-color: #f2f2f2;
	}

	/* 見出し（カテゴリ名） */
	#LocalNavArea h2.Mds {
	padding: 10px 15px;
	font-size: 108%;
	background-color: #000;
	}

	/* 親メニュー */
	.LocalNav li a,
	.LocalNav li.Disabled {
	padding: 15px 30px 15px 15px;
	line-height: 1.5em;
	background-position: 97% 50%;	
	}

	/* 親メニュー：カレント */
	.LocalNav li.Current {
	font-weight: bold;
	}

	/* 子メニュー */
	.LocalNav li > ul li a,
	.LocalNav li > ul li.Disabled {
	padding: 6px 15px 4px 25px;
	font-size: 93%;
	background-position: 13px 11px;
	}

	/* Extraナビ */
	.ExtraNav1,
	.ExtraNav2 {
	padding: 0 15px;
	}

	.ExtraNav1 li,
	.ExtraNav2 li {
	width: 100%;
	}

}

@media print, screen and (min-width: 768px) {

	#LocalNavArea {
	float: left;
	width: 25%;
	}
	
	/* 見出し（カテゴリ名） */
	#LocalNavArea h2.Mds {
	padding: 8px 10px;
	font-size: 115%;
	font-weight: normal;
	background-color: #EE4035;
	}

	/* 親メニュー */
	.LocalNav {
	background-color: #f2f2f2;
	}

	.LocalNav li:first-child {
	border-top: none;
	}
	
	.LocalNav li a,
	.LocalNav li.Disabled {
	padding: 10px 15px 10px 25px;
	font-size: 100%;
	line-height: 1.6em;
	background-position: 10px 19px;
	}

	.LocalNav li.Current a {
	color: #fff;
	}

	/* 親メニュー：ホバー */
	.LocalNav li a:hover {
	}
	
	.LocalNav li > ul li a,
	.LocalNav li > ul li.Disabled {
	padding: 6px 15px 4px 25px;
	font-size: 93%;
	color: #000 !important;
	background-position: 13px 11px;
	}

	/* 子メニュー：ホバー */
	.LocalNav li > ul li a:hover,
	.LocalNav li > ul li.Current a:hover {
	background-color: #efefef;
	}

}

@media print, screen and (min-width: 1090px) {

	#LocalNavArea {
	width: 23%;
	}

	/* 見出し（カテゴリ名） */
	#LocalNavArea h2.Mds {
	padding: 10px 10px;
	}

	.LocalNav li a,
	.LocalNav li.Disabled {
	padding: 12px 15px 12px 25px;
	}

}



/* ■ コンテンツ領域（Contents） ==================================================================================== */

@media only screen and (max-width: 767px) {

	#Contents {
	float: none;
	margin-bottom: 30px;
	padding: 0 15px;
	}

	#Contents2 {
	padding: 0 15px;
	}

}

@media print, screen and (min-width: 768px) {

	#Contents {
	float: right;
	width: 71.5%;
	}
	
	#Contents2 {
	}
	
	#Contents3 {
	}

}

@media print, screen and (min-width: 1090px) {

}



/* ■ 見出し（h1〜） ==================================================================================== */

.MdsH1,
.MdsH2 {
border-bottom: 1px solid #b8b8b8;
}

/* h1 */
.MdsH1 {
line-height: 1.4em;
}

/* h2 */
.MdsH2 {
line-height: 1.6em;
}

/* h3 */
.MdsH3 {
background: #eee;
}

/* h4 */
.MdsH4 {
position: relative;
margin-bottom: 5px;
}

.MdsH4:before {
position: absolute;
left: 0;
background: #000;
content: "";
}
	
/* h5 */
.MdsH5 {
margin-bottom: 0;
font-size: 100%;
line-height: 1.4em;
}

@media only screen and (max-width: 767px) {

	/* h1 */
	.MdsH1 {
	margin-bottom: 30px;
	padding-bottom: 8px;
	font-size: 158%;
	}
	
	/* h2 */
	.MdsH2 {
	margin-bottom: 15px;
	padding-bottom: 8px;
	font-size: 136%;
	}
	
	/* h3 */
	.MdsH3 {
	margin-bottom: 10px;
	padding: 4px 8px;
	font-size: 115%;
	line-height: 1.6em;
	}
	
	/* h4 */
	.MdsH4 {
	padding-left: 16px;
	font-size: 108%;
	line-height: 1.4em;
	}

	.MdsH4:before {
	top: 5px;
	width: 11px;
	height: 11px;
	}

}

@media print, screen and (min-width: 768px) {

	/* h1 */
	.MdsH1 {
	margin-bottom: 40px;
	padding-bottom: 10px;
	font-size: 214%;
	}
	
	/* h2 */
	.MdsH2 {
	margin-bottom: 15px;
	padding-bottom: 8px;
	font-size: 165%;
	}
	
	/* h3 */
	.MdsH3 {
	margin-bottom: 12px;
	padding: 2px 8px;
	font-size: 122%;
	line-height: 1.8em;
	}
	
	/* h4 */
	.MdsH4 {
	padding-left: 14px;
	font-size: 108%;
	line-height: 1.8em;
	}

	.MdsH4:before {
	top: 7px;
	width: 10px;
	height: 10px;
	}

}

@media print, screen and (min-width: 1090px) {

	/* h1 */
	.MdsH1 {
	margin-bottom: 60px;
	padding-bottom: 12px;
	}
	
	/* h2 */
	.MdsH2 {
	margin-bottom: 20px;
	padding-bottom: 10px;
	}
	
	/* h3 */
	.MdsH3 {
	margin-bottom: 15px;
	padding: 4px 10px;
	}
	
	/* h4 */
	.MdsH4 {
	margin-bottom: 10px;
	padding-left: 18px;
	}

	.MdsH4:before {
	left: 0;
	top: 8px;
	width: 12px;
	height: 12px;
	}
	
	/* h5 */
	.MdsH5 {
	margin-bottom: 0;
	}

}



/* ■ メインリード（LeadMain） ==================================================================================== */

@media only screen and (max-width: 767px) {

	.LeadMain {
	margin-bottom: 20px;
	}

}

@media print, screen and (min-width: 768px) {

	.LeadMain {
	margin-bottom: 25px;
	}

}

@media print, screen and (min-width: 1090px) {

	.LeadMain {
	margin-bottom: 30px;
	}

}



/* ■ メインセクション（SectionMain） ==================================================================================== */

@media only screen and (max-width: 767px) {

	.SectionMain,
	.SectionBasic {
	margin-bottom: 40px;
	}

	.SectionMain .Lead1,	
	.SectionBasic .Lead1 {
	margin-bottom: 10px;
	}

	.SectionMain .Lead2,	
	.SectionBasic .Lead2 {
	margin-bottom: 20px;
	}

	.SectionMain .Photo,	
	.SectionBasic .Photo {
	margin-bottom: 10px;
	}

}

@media print, screen and (min-width: 768px) {

	.SectionMain,
	.SectionBasic {
	margin-bottom: 50px;
	}

	.SectionMain .Lead1,	
	.SectionBasic .Lead1 {
	margin-bottom: 10px;
	}

	.SectionMain .Lead2,	
	.SectionBasic .Lead2 {
	margin-bottom: 22px;
	}

	.SectionMain .Photo,	
	.SectionBasic .Photo {
	margin-bottom: 15px;
	}

}

@media print, screen and (min-width: 1090px) {

	.SectionMain,
	.SectionBasic {
	margin-bottom: 70px;
	}

	.SectionMain .Lead1,	
	.SectionBasic .Lead1 {
	margin-bottom: 15px;
	}

	.SectionMain .Lead2,	
	.SectionBasic .Lead2 {
	margin-bottom: 30px;
	}

	.SectionMain .Photo,	
	.SectionBasic .Photo {
	margin-bottom: 20px;
	}

}



/* ■ サブセクション（SectionSub） ==================================================================================== */

@media only screen and (max-width: 767px) {

	.SectionSub {
	margin-bottom: 20px;
	}
	
}

@media print, screen and (min-width: 768px) {

	.SectionSub {
	margin-bottom: 25px;
	}
	
}

@media print, screen and (min-width: 1090px) {

	.SectionSub {
	margin-bottom: 30px;
	}

}



/* ■ 関連情報（RelatedInfo） ==================================================================================== */

@media only screen and (max-width: 767px) {

	.RelatedInfo .Mds {
	margin-bottom: 5px;
	font-size: 108%;
	}
	
}

@media print, screen and (min-width: 768px) {

	.RelatedInfo .Mds {
	margin-bottom: 5px;
	font-size: 108%;
	}
	
}


/* ■ 記述リスト（DLHori、DLVert、DLTable） ==================================================================================== */

/*
左右（dlh）
上下（dlv）
テーブルスタイル（dlt）
*/

/* 左右（dlh） --------------------------------------------------- */

.DLHori dl {
border-bottom: 1px solid #e7e7e7;
}

@media only screen and (max-width: 767px) {

	/* 左右（dlh） */
	.DLHori {
	margin-top: -10px;
	}

	.DLHori dt,
	.DLHori dd {
	padding: 10px 0;
	}

}

@media print, screen and (min-width: 768px) {

	.DLHori {
	margin-top: -15px;
	}
	
	.DLHori dt,
	.DLHori dd {
	padding: 15px 0;
	}

}

@media print, screen and (min-width: 1090px) {

}

/* 上下（dlv） --------------------------------------------------- */

.DLVert dl {
border-bottom: 1px solid #e7e7e7;
}

@media only screen and (max-width: 767px) {

	.DLVert {
	margin-top: -10px;
	}

	.DLVert dl {
	padding: 10px 0;
	}

	.DLVert dt {
	margin-bottom: 3px;
	}

}

@media print, screen and (min-width: 768px) {

	.DLVert {
	margin-top: -15px;
	}

	.DLVert dl {
	padding: 15px 0;
	}

	.DLVert dt {
	margin-bottom: 5px;
	}

}

@media print, screen and (min-width: 1090px) {

}

/* テーブルスタイル（dlt） --------------------------------------------------- */

.DLTable {
border-top: 1px solid #b8b8b8;
}

.DLTable dl {
border-left: 1px solid #b8b8b8;
}

.DLTable dt,
.DLTable dd {
padding: 10px 15px;
border-right: 1px solid #b8b8b8;
border-bottom: 1px solid #b8b8b8;
}

.DLTable dt {
background: #f2f2f2;
}

@media only screen and (max-width: 767px) {

}

@media print, screen and (min-width: 768px) {

}

@media print, screen and (min-width: 1090px) {

}


/* ■ 表組み（Table1、Table2） ==================================================================================== */

.Table1 th,
.Table2 th,
.Table1 td,
.Table2 td {
padding: 10px 15px;
border: 1px solid #b8b8b8;
}

.Table1 th,
.Table2 th {
background: #f2f2f2;
}

.Table1 td,
.Table2 td {
background: #fff;
}

@media only screen and (max-width: 767px) {

}

@media print, screen and (min-width: 768px) {

}

@media print, screen and (min-width: 1090px) {

}



/* ■ 囲み（Box） ==================================================================================== */

.Box,
.Box1 {
border: 1px solid #b8b8b8;
}

@media only screen and (max-width: 767px) {

	.Box,
	.Box1 {
	margin-bottom: 15px;
	padding: 15px 15px;
	}

}

@media print, screen and (min-width: 768px) {

	.Box,
	.Box1 {
	margin-bottom: 20px;
	padding: 15px 15px;
	}

}

@media print, screen and (min-width: 1090px) {

	.Box,
	.Box1 {
	margin-bottom: 20px;
	padding: 20px 20px;
	}

}



/* ■ リスト各種 ==================================================================================== */

/*
ディスク（ListDisc）
ディスク：小（ListDiscS）
米印（ListKome）
米印：小（ListKomeS）
連番（ListNum）
連番：小（ListNumS）
米印連番：小（ListKomeNumS）
*/


/* ディスク（ListDisc） --------------------------------------------------- */

.ListDisc li {
margin-bottom: 8px;
line-height: 1.8em;
}

.ListDisc li:before {
left: 2px;
border-radius: 100%;
background: #000;
}


@media only screen and (max-width: 767px) {

	.ListDisc li {
	padding-left: 16px;
	}

	.ListDisc li:before {
	left: 2px;
	top: 9px;
	width: 8px;
	height: 8px;
	}

}

@media print, screen and (min-width: 768px) {

	.ListDisc li {
	padding-left: 15px;
	}
	
	.ListDisc li:before {
	left: 2px;
	top: 7px;
	width: 8px;
	height: 8px;
	}
	
}

@media print, screen and (min-width: 1090px) {

	/* 基準フォントサイズ：14px */
	.ListDisc li {
	padding-left: 18px;
	}
	
	.ListDisc li:before {
	top: 8px;
	width: 9px;
	height: 9px;
	}

	/* 基準フォントサイズ：16px */
/*
	.ListDisc li {
	padding-left: 22px;
	}
	
	.ListDisc li:before {
	top: 9px;
	width: 12px;
	height: 12px;
	}
*/

}

/* IE10以上 */
@media all and (-ms-high-contrast: none) {

	.ListDisc li:before {
	top: 9px;
	}

}

/* Firefox */
@-moz-document url-prefix() {

	.ListDisc li:before {
	top: 9px;
	}

}


/* ディスク：小（ListDiscS） --------------------------------------------------- */

.ListDiscS li {
margin-bottom: 5px;
}

.ListDiscS li:before {
border-radius: 100%;
background: #000;
}

@media only screen and (max-width: 767px) {

	.ListDiscS li {
	padding-left: 16px;
	font-size: 86%;
	line-height: 1.7em;
	}
	
	.ListDiscS li:before {
	left: 4px;
	top: 7px;
	width: 6px;
	height: 6px;
	}
	
}

@media print, screen and (min-width: 768px) {

	.ListDiscS li {
	padding-left: 15px;
	font-size: 88%;
	line-height: 1.8em;
	}
	
	.ListDiscS li:before {
	left: 4px;
	top: 7px;
	width: 6px;
	height: 6px;
	}
	
}

@media print, screen and (min-width: 1090px) {

	/* 基準フォントサイズ：14px */
	.ListDiscS li {
	padding-left: 17px;
	}
	
	.ListDiscS li:before {
	top: 8px;
	width: 7px;
	height: 7px;
	}

	/* 基準フォントサイズ：16px */
/*
	.ListDiscS li {
	padding-left: 20px;
	}
	
	.ListDiscS li:before {
	top: 8px;
	width: 9px;
	height: 9px;
	}
*/

}

/* Firefox */
@-moz-document url-prefix() {

	.ListDiscS li:before {
	top: 9px;
	}

}


/* 米印（ListKome） --------------------------------------------------- */

.ListKome li {
margin-bottom: 5px;
}

.ListKome li:before {
left: 1px;
}


@media only screen and (max-width: 767px) {

	.ListKome li {
	padding-left: 17px;
	line-height: 1.8em;
	}

	.ListKome li:before {
	top: 1px;
	font-size: 93%;
	}
	
}

@media print, screen and (min-width: 768px) {

	.ListKome li {
	padding-left: 16px;
	line-height: 1.8em;
	}
	
	.ListKome li:before {
	top: 0;
	font-size: 90%;
	}

}

@media print, screen and (min-width: 1090px) {

	/* 基準フォントサイズ：14px */
	.ListKome li {
	padding-left: 18px;
	}

	.Win .ListKome li:before {
	top: -1px;
	}

	/* 基準フォントサイズ：16px */
/*
	.ListKome li {
	padding-left: 22px;
	}
*/

}

/* IE10以上 */
@media all and (-ms-high-contrast: none) {

	.Win .ListKome li:before {
	top: 1px;
	}

}

/* Firefox */
@-moz-document url-prefix() {

	.ListKome li:before {
	top: 1px;
	}

	.Win .ListKome li:before {
	top: 0;
	}

}


/* 米印：小（ListKomeS） --------------------------------------------------- */

.ListKomeS li {
margin-bottom: 5px;
line-height: 1.8em;
}

.ListKomeS li:before {
left: 1px;
}

@media only screen and (max-width: 767px) {

	.ListKomeS li {
	padding-left: 16px;
	font-size: 86%;
	}
	
	.ListKomeS li:before {
	top: 0;
	}
	
}

@media print, screen and (min-width: 768px) {

	.ListKomeS li {
	padding-left: 13px;
	font-size: 86%;
	}
	
	.ListKomeS li:before {
	top: 0;
	font-size: 84%;
	}
	
}

@media print, screen and (min-width: 1090px) {

	/* 基準フォントサイズ：14px */
	.ListKomeS li {
	padding-left: 15px;
	}

	.ListKomeS li:before {
	font-size: 82%;
	}

	.Win .ListKomeS li:before {
	top: -1px;
	}

	/* 基準フォントサイズ：16px */
/*
	.ListKomeS li {
	padding-left: 18px;
	}
*/
	
}

/* IE10以上 */
@media all and (-ms-high-contrast: none) {

	.Win .ListKomeS li:before {
	top: 1px;
	}

}


/* 連番（ListNum） --------------------------------------------------- */

.ListNum li {
margin-bottom: 10px;
line-height: 1.8em;
counter-increment: ListNum;
}

.ListNum li:before {
left: 1px;
top: 0;
font-size: 97%;
}

@media only screen and (max-width: 767px) {

	.ListNum li {
	padding-left: 16px;
	}
	
}

@media print, screen and (min-width: 768px) {

	.ListNum li {
	padding-left: 15px;
	}
	
}

@media print, screen and (min-width: 1090px) {

	/* 基準フォントサイズ：14px */
	.ListNum li {
	padding-left: 17px;
	}

	/* 基準フォントサイズ：16px */
/*
	.ListNum li {
	padding-left: 20px;
	}
*/
	
}


/* 連番：小（ListNumS） --------------------------------------------------- */

.ListNumS li {
margin-bottom: 5px;
font-size: 86%;
counter-increment: ListNum;
}

.ListNumS li:before {
left: 1px;
top: 0;
font-size: 97%;
}

@media only screen and (max-width: 767px) {

	.ListNumS li {
	padding-left: 16px;
	line-height: 1.7em;
	}
	
}

@media print, screen and (min-width: 768px) {

	.ListNumS li {
	padding-left: 13px;
	font-size: 86%;
	line-height: 1.8em;
	}

}

@media print, screen and (min-width: 1090px) {

	/* 基準フォントサイズ：14px */
	.ListNumS li {
	padding-left: 15px;
	}

	/* 基準フォントサイズ：16px */
/*
	.ListNumS li {
	padding-left: 18px;
	}
*/

}


/* 米印連番：小（ListKomeNumS） --------------------------------------------------- */

.ListKomeNumS li {
margin-bottom: 5px;
counter-increment: ListNum;
}

.ListKomeNumS li:before {
left: 1px;
top: 0;
font-size: 97%;
}

@media only screen and (max-width: 767px) {

	.ListKomeNumS li {
	padding-left: 26px;
	font-size: 86%;
	line-height: 1.7em;
	}
	
}

@media print, screen and (min-width: 768px) {

	.ListKomeNumS li {
	padding-left: 22px;
	font-size: 88%;
	line-height: 1.8em;
	}
	
}

@media print, screen and (min-width: 1090px) {

	/* 基準フォントサイズ：14px */
	.ListKomeNumS li {
	padding-left: 25px;
	}

	/* 基準フォントサイズ：16px */
/*
	.ListKomeNumS li {
	padding-left: 29px;
	}
*/

}



/* ■ テキストリンクアイコン ==================================================================================== */

/* ※将来的にCSSに移行予定 */

/* 進む（LinkFwd） */
.LinkFwd {
padding-left: 16px;
background: url(../img/common/icon/Icon_LinkFwd.png) no-repeat left center;
}

/* 戻る（LinkBack） */
.LinkBack {
padding-left: 16px;
background: url(../img/common/icon/Icon_LinkBack.png) no-repeat left center;
}

/* 下へ（LinkDown） */
.LinkDown {
padding-left: 16px;
background: url(../img/common/icon/Icon_LinkDown.png) no-repeat left center;
}

/* 別ウインドウ（LinkNewWin） */
.LinkNewWin {
padding-right: 16px;
background-image: url(../img/common/icon/Icon_LinkNewWin.png?02);
background-repeat: no-repeat;
background-position: 98% 7px;
}

/* PDF（LinkPDF） */
.LinkPDF {
padding: 2px 0 0 22px;
background: url(../img/common/icon/Icon_LinkPDF.png) no-repeat left center;
}

@media only screen and (max-width: 767px) {

	.LinkNewWin {
	padding-right: 16px;
	background-image: url(../img/common/icon/Icon_LinkNewWin.png?01);
	background-repeat: no-repeat;
	background-position: 98% 2px;
	}

}

@media print, screen and (min-width: 768px) {
	
	/* 別ウインドウ（LinkNewWin） */
	.LinkNewWin {
	padding-right: 18px;
	}
	
}

@media print, screen and (min-width: 1090px) {

}



/* ■ ボタン ==================================================================================== */

/* 共通 */

/* 基本スタイル・サイズ設定 */
.BtnS {
display: inline-block;
font-size: 93%;
line-height: 1.0em;
text-align: center;
}

.BtnM {
display: inline-block;
font-size: 105%;
line-height: 1.0em;
text-align: center;
}

.BtnL {
display: inline-block;
font-size: 115%;
line-height: 1.0em;
text-align: center;
}

/* 矢印なし */
.NoAllow:after {
border: none !important;
}

/* 通常（他のページ、次のページに移動など） */
.BtnFwd,
.BtnNext {
position: relative;
color: #fff !important;
background: #1567a6;
}

.BtnFwd:link,
.BtnFwd:active,
.BtnFwd:visited,
.BtnFwd:hover,
.BtnNext:link,
.BtnNext:active,
.BtnNext:visited,
.BtnNext:hover {
color: #fff !important;
text-decoration: none !important;
}

.BtnFwd:after,
.BtnNext:after {
position: absolute;
content: '';
display: block;
width: 10px;
height: 10px;
border-top: solid 2px #fff;
border-right: solid 2px #fff;
-ms-transform: rotate(45deg);
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}

/* 確定系（送信・申し込み・購入など） */
.BtnSend {
position: relative;
color: #fff !important;
background: #d12d1e;
}

.BtnSend:link,
.BtnSend:active,
.BtnSend:visited,
.BtnSend:hover {
color: #fff !important;
text-decoration: none !important;
}

.BtnSend:after {
position: absolute;
content: '';
display: block;
width: 10px;
height: 10px;
border-top: solid 2px #fff;
border-right: solid 2px #fff;
-ms-transform: rotate(45deg);
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}

/* 戻る・キャンセル */
.BtnBack {
color: #000 !important;
background: #f5f5f5;
}

.BtnBack:link,
.BtnBack:active,
.BtnBack:visited,
.BtnBack:hover {
color: #000 !important;
text-decoration: none !important;
}

/* Disabled */
.BtnD {
color: #b3b3b3 !important;
background: #dedede;
cursor: default;
}

.BtnD:link,
.BtnD:active,
.BtnD:visited,
.BtnD:hover {
color: #b3b3b3 !important;
text-decoration: none !important;
}

/* 左に矢印 */
.BtnAllowBack {
position: relative;	
}

.BtnAllowBack:before {
position: absolute;
content: '';
display: block;
width: 10px;
height: 10px;
border-bottom: solid 2px #838383;
border-left: solid 2px #838383;
-ms-transform: rotate(45deg);
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}

@media only screen and (max-width: 767px) {

	/* 基本スタイル・サイズ設定 */
	.BtnS {
	width: 100%;
	padding: 14px 20px;
	border-radius: 2px;
	}

	.BtnS:after {
	top: 35% !important;	
	}

	.BtnM {
	width: 100%;
	padding: 22px 20px;
	border-radius: 2px;
	}
	
	.BtnL {
	width: 100%;
	padding: 28px 20px;
	border-radius: 2px;
	}
	
	.BtnFwd:after,
	.BtnNext:after {
	top: 40%;
	right: 4%;
	}

	.BtnSend:after {
	top: 40%;
	right: 4%;
	}

	.BtnAllowBack:before {
	top: 40%;
	left: 4%;
	}

}

@media print, screen and (min-width: 768px) {

	/* 基本スタイル・サイズ設定 */
	.BtnS {
	padding: 8px 30px;
	border-radius: 0;
	}
	
	.BtnM {
	padding: 12px 30px;
	border-radius: 0;
	}
	
	.BtnL {
	padding: 16px 30px;
	border-radius: 0;
	}

	.BtnFwd:after,
	.BtnNext:after {
	top: 36%;
	right: 6%;
	}

	.BtnSend:after {
	top: 36%;
	right: 6%;
	}

	.BtnAllowBack:before {
	top: 36%;
	left: 6%;
	}

}

@media print, screen and (min-width: 1090px) {

	/* 通常（他のページ、次のページに移動など） */
	.BtnFwd:hover,
	.BtnNext:hover {
	background: #0c5083;
	}

	/* 確定系（送信・申し込み・購入など） */
	.BtnSend:hover {
	background: #a11c10;
	}

}



/* ■ ページネーション ==================================================================================== */

.PageNation li a {
display: block;
border-radius: 2px;
}

.PageNation li.Prev a {
background: #1567a6 url(../img/common/icon/Icon_PageNationPrev.png) no-repeat;
background-position: 50% 49.5%;
background-size: 8px 15px;
}

.PageNation li.Next a {
background: #1567a6 url(../img/common/icon/Icon_PageNationNext.png) no-repeat;
background-position: 50% 49.5%;
background-size: 8px 15px;
}

@media only screen and (max-width: 767px) {

	.PageNation {
	margin-top: 20px;
	}
	
	.PageNation .Num {
	margin-bottom: -33px;
	font-size: 86%;
	text-align: center;
	}
	
	.PageNation li:not(.Prev):not(.Next) {
	display: none;
	}
	
	.PageNation li a {
	padding: 12px 18px;
	border: 1px solid #1567a6;
	line-height: 1.0em;
	text-indent: -9999px;
	}
	
	.PageNation li.Prev {
	float: left;
	}
	
	.PageNation li.Next {
	float: right;
	}

}

@media print, screen and (min-width: 768px) {

	.PageNation .Num {
	float: left;
	padding: 12px 0;
	line-height: 1.0em;
	}
	
	.PageNation ul {
	float: right;
	}
	
	.PageNation li {
	float: left;
	margin-left: 5px;
	line-height: 1.0em;
	}
	
	.PageNation li a {
	float: left;
	padding: 8px 12px;
	border: 1px solid #ccc;
	}
	
	.PageNation li a:link,
	.PageNation li a:active,
	.PageNation li a:visited {
	text-decoration: none;
	}
	
	.PageNation li a:hover {
	border: 1px solid #ccc;
	background: #f2f2f2;
	text-decoration: none;
	}
	
	.SmartPhone .PageNation li a:hover {
	border: 1px solid #ccc;
	background: #fff;
	text-decoration: none;
	}
	
	.PageNation li.Current a {
	border: 1px solid #ccc;
	font-weight: bold;
	color: #000;
	background: #f2f2f2;
	}
	
	.PageNation li.Prev {
	margin-right: 10px;
	}
	
	.PageNation li.Prev a {
	padding: 8px 20px;
	border: 1px solid #1567a6;
	text-indent: -9999px;
	}
	
	.PageNation li.Prev a:hover {
	background: #1567a6 url(../img/common/icon/Icon_PageNationPrev.png) no-repeat;
	background-position: 50% 49.5%;
	background-size: 8px 15px;
	}
	
	.PageNation li.Next {
	margin-left: 15px;
	}
	
	.PageNation li.Next a {
	padding: 8px 20px;
	border: 1px solid #1567a6;
	text-indent: -9999px;
	}
	
	.PageNation li.Next a:hover {
	background: #1567a6 url(../img/common/icon/Icon_PageNationNext.png) no-repeat;
	background-position: 50% 49.5%;
	background-size: 8px 15px;
	}
	
	.PageNation .Abbr {
	display: block;
	padding: 4px 2px;
	}

}

@media print, screen and (min-width: 1090px) {

}



/* ■ 検索窓 ==================================================================================== */

.SearchBox .SearchTxt {
width: 80%;
padding: 0 10px;
box-shadow: inset 1px 1px 1px 0px #d5d5d5;
box-sizing: border-box;
vertical-align: middle;
background: #fff;
}

.SearchBox .BtnSearch {
width: 20%;
padding: 0 10px;
border: 1px solid #000;
border-radius: 0 5px 5px 0;
box-sizing: border-box;
letter-spacing: 0.2em;
vertical-align: middle;
color: #fff;
background: #000;
}

@media only screen and (max-width: 767px) {

	.SearchBox .SearchTxt {
	height: 3em;
	border: 1px solid #bbb;
	border-radius: 5px 0 0 5px;
	}
	
	.SearchBox .BtnSearch {
	height: 3em;
	box-sizing: border-box;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	}

}

@media print, screen and (min-width: 768px) {

	.SearchBox .SearchTxt {
	height: 2.4em;
	border-top: 1px solid #bbb;
	border-right: none;
	border-bottom: 1px solid #bbb;
	border-left: 1px solid #bbb;
	border-radius: 5px 0 0 5px;
	line-height: 2.4em;
	}
	
	.Win .SearchBox .SearchTxt {
	line-height: 2.2em;
	}
	
	.SearchBox .BtnSearch {
	height: 2.4em;
	line-height: 2.2em;
	}

}

@media print, screen and (min-width: 1090px) {

}



/* ■ フォーム ==================================================================================== */

/*
基本ユニット
リード・注釈等
エラーチップ
アクションボタン
入力欄のスタイル
入力欄のサイズ
セレクトボックス装飾
ラジオボタン・チェックボックス装飾
完了画面
*/


/* 基本ユニット --------------------------------------------------- */

/* 項目欄の背景色（カラー設定） */
.FormUnit dt {
background: #eee;
}

/* レイアウト設定 */
.FormUnit {
margin-bottom: 30px;
}

/* 必須アイコン */
.FormUnit .Required {
display: block;
position: relative;
}

.FormUnit .Required:before {
position: absolute;
right: 0;
padding: 5px 10px;
border-radius: 2px;
letter-spacing: 0.15em;
text-align: center;
color: #fff;
background: #e90000;
content: "必須";
}

@media only screen and (max-width: 767px) {

	/* 項目欄のborder色（カラー設定） */
	.FormUnit dt {
	border-top: 1px solid #bbb;
	}
	
	/* レイアウト設定 */
	.FormUnitWrap {
	}
	
	.FormUnit dt,
	.FormUnit dd {
	margin: 0;
	}
	
	.FormUnit dt {
	padding: 6px 15px;
	font-size: 93%;
	font-weight: bold;
	}
	
	.FormUnit dd  {
	padding: 12px 0 20px 0;
	}
	
	.FormUnit dd p {
	margin: 0 15px;
	}

	/* 必須アイコン */
	.FormUnit dt span:before {
	top: 1px;
	font-size: 93%;
	line-height: 1.1em;
	}

}

@media print, screen and (min-width: 768px) {
	
	/* border色（カラー設定） */
	.FormUnitWrap {
	border-left: solid 1px #ccc;
	border-top: solid 1px #ccc;
	}
	
	.FormUnit dt,
	.FormUnit dd {
	border-right: solid 1px #ccc;
	border-bottom: solid 1px #ccc;
	}
	
	/* レイアウト設定 */
	.FormUnit dl {
	display: table;
	width: 100%;
	}
	
	.FormUnit dt,
	.FormUnit dd {
	display: table-cell;
	padding: 15px;
	vertical-align: top;
	}
	
	.FormUnit dt {
	width: 30%;
	font-weight: bold;
	}
	
	.FormUnit dd {
	width: 70%;
	}

	/* 必須アイコン */	
	.FormUnit dt span:before {
	top: 0;
	font-size: 86%;
	line-height: 1.0em;
	}

}

@media print, screen and (min-width: 1090px) {

}

/* リード・注釈等  --------------------------------------------------- */

/* リード */
.FormUnit .Lead {
margin-bottom: 20px;
}

/* 単位 */
.FormUnit .NoteUnit {
margin-left: 6px;
vertical-align: middle;
}

/* 注釈 */
.FormUnit .NoteUpper {
margin-bottom: 5px;
font-size: 86%;
line-height: 1.5em;
}

.FormUnit .NoteMiddle {
margin-top: 10px;
margin-bottom: 10px;
font-size: 86%;
line-height: 1.5em;
}

.FormUnit .NoteLower {
font-size: 86%;
line-height: 1.0em;
color: #808080;
}
	
.FormUnit .NoteSide {
margin-left: 5px;
font-size: 86%;
color: #808080;
}

/* フッターNote  */
.FormUnit .FootNote li {
font-size: 86%;
line-height: 1.5em;
}

@media only screen and (max-width: 767px) {

	.FormUnit .LeadMain {
	margin: 0 15px 5px 15px;
	font-size: 86%;
	font-weight: bold;
	}
	
	/* サブリード  */
	.FormUnit .LeadSub {
	margin: 0 15px;
	font-size: 86%;
	}
	
	/* メッセージBOX：アラート */
	.FormUnit .MsgBoxAlert {
	margin: 0 15px 30px 15px;
	}
	
	.FormUnit .MsgBoxAlert .Mds {
	font-size: 108%;
	}
	
	.FormUnit .MsgBoxAlert .Msg {
	font-size: 100%;
	}

	.FormUnit .NoteLower {
	margin-top: 7px;
	}
	
	/* フッターNote  */
	.FormUnit .FootNote {
	margin: 0 15px 30px 15px;
	}

}

@media print, screen and (min-width: 768px) {
	
	/* リード */
	.FormUnit .Lead {
	margin-bottom: 20px;
	}
	
	.FormUnit .LeadMain {
	margin-bottom: 5px;
	font-weight: bold;
	}
	
	.FormUnit .LeadSub {
	}
	
	.FormUnit .NoteLower {
	margin-top: 8px;
	}
	
	/* フッターNote  */
	.FormUnit .FootNote {
	margin-top: 10px;
	margin-bottom: 30px;
	}

}

@media print, screen and (min-width: 1090px) {

}
		
/* エラーチップ（カラー設定）  --------------------------------------------------- */

.FormUnit .ErrTip  {
display: inline-block;
position: relative;
border-radius: 5px;
color: #ffffff;
background: #e90000;
}

.FormUnit .ErrTip:after {
position: absolute;
left: 25px;
width: 0;
height: 0;
border: 10px solid transparent;
border-top: 10px solid #e90000;
margin-left: -10px;
content: "";
}

@media only screen and (max-width: 767px) {

	.FormUnit .ErrTip  {
	margin-bottom: 15px;
	padding: 5px 10px 5px 15px;
	line-height: 1.5em !important;
	}
	
	.FormUnit .ErrTip:after {
	top: 96%;
	}

}

@media print, screen and (min-width: 768px) {
	
	.FormUnit .ErrTip  {
	margin-bottom: 20px;
	padding: 6px 10px 6px 15px;
	line-height: 1.6em !important;
	}
	
	.FormUnit .ErrTip:after {
	top: 92%;
	}
	
	.FormUnit .RadioCheckboxUnit .ErrTip {
	margin-bottom: 15px;
	}

}

@media print, screen and (min-width: 1090px) {

}
	
/* アクションボタン  --------------------------------------------------- */

.FormUnit .FormAction {
text-align: center;
}

.FormUnit .FormAction input {
border-style: none;
appearance: none;
-moz-appearance: none;
-webkit-appearance: none;
cursor: pointer;
}

@media only screen and (max-width: 767px) {

	.FormUnit .FormAction {
	margin: 0 15px;
	}
	
	.FormUnit .FormAction input {
	display: block;
	}
	
}

@media print, screen and (min-width: 768px) {
	
	.FormUnit .FormAction {
	margin: 30px auto 0 auto;
	}
	
	.FormUnit .FormAction input {
	margin: 0 10px;
	-webkit-transition: all 0.3s ease 0.1s;
	transition: all 0.3s ease 0.1s;
	}
	
	.FormUnit .FormAction input:hover {
	opacity: 0.9;
	-webkit-transition: all 0.05s cubic-bezier(.17,.67,.83,.67) 0s;
	transition: all 0.05s cubic-bezier(.17,.67,.83,.67) 0s;
	}
	
	.FormUnit .FormAction .BtnLeft {
	float: left;
	}
	
	.FormUnit .FormAction .BtnRight {
	float: right;
	}

}

@media print, screen and (min-width: 1090px) {

}
			
/* 入力欄のスタイル  --------------------------------------------------- */

/*  border色とシャドー（カラー設定） */
.FormUnit input[type=text],
.FormUnit input[type=email],
.FormUnit input[type=tel],
.FormUnit input[type=password],
.FormUnit textarea {
border: 1px solid #bbb;
box-shadow: inset 1px 1px 1px 0px #d5d5d5;
}

.FormUnit input[type=text],
.FormUnit input[type=email],
.FormUnit input[type=tel],
.FormUnit input[type=password],
.FormUnit textarea {
border-radius: 2px;
box-sizing: border-box;
vertical-align: middle;
background: #fff;
}

.FormUnit textarea {
padding: 8px;
line-height: 1.4em;
}
	
.FormUnit input[type=image] {
vertical-align: middle;
}

/* labelの余白 */
.FormUnit label {
margin: 0 20px 0 5px;
}

/* 住所入力 */
.FormUnit .AddressUnit label {
display: block;
line-height: 1.0em;
font-weight: bold;
}
	

@media only screen and (max-width: 767px) {

	/*  border色とシャドー（カラー設定） */
	.FormUnit input[type=text],
	.FormUnit input[type=email],
	.FormUnit input[type=tel],
	.FormUnit input[type=password],
	.FormUnit textarea {
	font-size: 115%;
	}
	
	.FormUnit input[type=text],
	.FormUnit input[type=email],
	.FormUnit input[type=tel],
	.FormUnit input[type=password],
	.FormUnit textarea {
	padding: 10px 10px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	}
	
	.FormUnit textarea {
	font-size: 115%;
	}
	
	/* 住所入力 */
	.FormUnit .AddressUnit .EachUnit {
	margin-bottom: 15px;
	}
	
	.FormUnit .AddressUnit .EachUnit:last-child {
	margin-bottom: 0;
	}
	
	.FormUnit .AddressUnit label {
	margin-left: 15px;
	margin-right: 10px;
	margin-bottom: 8px;
	}
	
	/* ラジオボタン・セレクトボックス */
	.FormUnit .RadioCheckboxUnit p {
	margin-bottom: 15px;
	}
	
	.FormUnit .RadioCheckboxUnit p:last-child {
	margin-bottom: 0;
	}

}

@media print, screen and (min-width: 768px) {
	
	/*  border色とシャドー（カラー設定） */
	.FormUnit input[type=text],
	.FormUnit input[type=email],
	.FormUnit input[type=tel],
	.FormUnit input[type=password],
	.FormUnit textarea {
	-webkit-transition: all 0.1s cubic-bezier(.17,.67,.83,.67) 0.1s;
	transition: all 0.1s cubic-bezier(.17,.67,.83,.67) 0.1s;
	}
	
	.FormUnit input[type=text],
	.FormUnit input[type=email],
	.FormUnit input[type=tel],
	.FormUnit input[type=password],
	.FormUnit textarea {
	height: 2.4em;
	padding: 0 10px;
	line-height: 2.4em;
	}
	
	/* フォーカス時のスタイル（カラー設定）  */
	.FormUnit input[type=text]:focus,
	.FormUnit textarea:focus {
	background: #f7f7f7;
	-webkit-transition: all 0.1s cubic-bezier(.17,.67,.83,.67) 0.1s;
	transition: all 0.1s cubic-bezier(.17,.67,.83,.67) 0.1s;
	}

	/* 住所入入力 */
	.FormUnit .AddressUnit .EachUnit {
	margin-bottom: 20px;
	}
	
	.FormUnit .AddressUnit .EachUnit:last-child {
	margin-bottom: 0;
	}
	
	.FormUnit .AddressUnit label {
	margin-left: 0;
	margin-bottom: 10px;
	}
	
	.FormUnit .AddressUnit p {
	line-height: 1.2em;
	}
	
	/* ラジオボタン・セレクトボックス */
	.FormUnit .RadioCheckboxUnit p {
	margin-bottom: 3px;
	}
	
	.FormUnit .RadioCheckboxUnit p:last-child {
	margin-bottom: 0;
	}

}

@media print, screen and (min-width: 1090px) {

}
	
/* 入力欄のサイズ --------------------------------------------------- */

@media only screen and (max-width: 767px) {

	.FormUnit .InputName {
	width: 100%;
	}
	
	.FormUnit .InputMail {
	width: 100%;
	}
	
	.FormUnit .InputZipCode {
	width: 150px;
	}
	
	.InputAddress1 {
	}
	
	.FormUnit .InputAddress2,
	.FormUnit .InputAddress3 {
	width: 100%;
	}
	
	.FormUnit .InputTel {
	width: 150px;
	}
	
	.FormUnit .InputAge {
	width: 60px;
	}
	
	.FormUnit .InputComment {
	width: 100%;
	height: 10em;
	}

}

@media print, screen and (min-width: 768px) {
	
	.FormUnit .InputName {
	width: 40%;
	}
	
	.FormUnit .InputMail {
	width: 70%;
	}
	
	.FormUnit .InputZipCode {
	width: 30%;
	}
	
	.InputAddress1 {
	}
	
	.FormUnit .InputAddress2,
	.FormUnit .InputAddress3 {
	width: 70%;
	}
	
	.FormUnit .InputTel {
	width: 40%;
	}
	
	.FormUnit .InputAge {
	width: 10%;
	}
	
	.FormUnit .InputComment {
	width: 80%;
	height: 10em;
	}

}

@media print, screen and (min-width: 1090px) {

}
	
/* セレクトボックス装飾 --------------------------------------------------- */

/* border色（カラー設定） */
.FormUnit select {
border: 1px solid #bbb;
}

.FormUnit select {
border-radius: 2px;
box-sizing: border-box;
background: #fff url(../img/common/form/Icon_SelectBox.png) no-repeat center right;
background-size: 25px 40px;
appearance: none;
-moz-appearance: none;
-webkit-appearance: none;
}

.SelectBoxS select {
height: 2.0em;
font-size: 93%;
}

@media only screen and (max-width: 767px) {
	
	.FormUnit select {
	height: 3.0em;
	padding-left: 10px;
	padding-right: 50px;
	}

}

@media print, screen and (min-width: 768px) {
	
	.FormUnit select {
	height: 2.4em;
	padding-left: 10px;
	padding-left: 6px\9; /* IE10以下調整 */
	padding-right: 40px;
	padding-right: 0\9; /* IE10以下調整 */
	background: #fff\9; /* IE10以下調整 */
	}

}

@media print, screen and (min-width: 1090px) {

}

/* Firefox用調整 */
@-moz-document url-prefix() {
	.FormUnit select {
	padding-left: 6px;	
	}
}

/* IE11用調整 */
@media all and (-ms-high-contrast:none){
	*::-ms-backdrop, .FormUnit select {
	padding-left: 6px;
	padding-right: 0;
	background: #fff;
	}
}


/* ラジオボタン・チェックボックス装飾 --------------------------------------------------- */

.FormUnit input[type=radio] + label,
.FormUnit input[type=checkbox] + label {
position: relative;
margin-right: 12px;
padding: 0 0 0 32px;
cursor: pointer;
}
	
.FormUnit input[type=radio] + label::before,
.FormUnit input[type=checkbox] + label::before {
display: block;
position: absolute;
top: 11px;
left: 0;
-moz-box-sizing: border-box;
box-sizing: border-box;
background: #fff;
content: "";
}

/* border色とシャドー（カラー設定） */
.FormUnit input[type=radio] + label::before,
.FormUnit input[type=checkbox] + label::before {
border: 1px solid #bbb;
box-shadow: inset 1px 1px 1px 0px #d5d5d5;
}

.FormUnit input[type=radio] + label::before {
border-radius: 30px;
}

.FormUnit input[type=checkbox] + label::before {
border-radius: 2px;
}

/* 選択時の背景色（カラー設定） */	
.FormUnit input[type=radio]:checked + label::before,
.FormUnit input[type=checkbox]:checked + label::before {
background: #777;
}

.FormUnit input[type=radio]:checked + label::before,
.FormUnit input[type=checkbox]:checked + label::before {
border: none;
box-shadow: none;
}

.FormUnit input[type=radio]:checked + label::after,
.FormUnit input[type=checkbox]:checked + label::after {
content: "";
display: block;
position: absolute;
top: 11px;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

/* ラジオボタン選択時の中央ドットの色 */
.FormUnit input[type=radio]:checked + label::after {
background: #fff;
}

/* チェックボックス選択時のチェックマークの色 */
.FormUnit input[type=checkbox]:checked + label::after {
border-left: 3px solid #fff;
border-bottom: 3px solid #fff;
-webkit-transform: rotate(-45deg);
-ms-transform: rotate(-45deg);
transform: rotate(-45deg);
}

@media only screen and (max-width: 767px) {

	.FormUnit input[type=radio],
	.FormUnit input[type=checkbox] {
	display: none;
	margin: 0 0 0 -10px;
	}
	
	.FormUnit input[type=radio] + label,
	.FormUnit input[type=checkbox] + label {
	display: inline-block;
	padding: 0 0 0 32px;
	line-height: 1.6em;
	}
	
	.FormUnit input[type=radio] + label::before,
	.FormUnit input[type=checkbox] + label::before {
	width: 24px;
	height: 24px;
	margin-top: -13px;
	}
	
	/* 選択時の背景色（カラー設定） */
	.FormUnit input[type=radio]:checked + label::after,
	.FormUnit input[type=checkbox]:checked + label::after {
	top: 11px;
	}
	
	/* ラジオボタン選択時の中央ドットのサイズ・位置 */
	.FormUnit input[type=radio]:checked + label::after {
	left: 6px;
	width: 12px;
	height: 12px;
	margin-top: -7px;
	border-radius: 8px;
	}
	
	/* チェックボックス選択時のチェックマークのサイズ・位置 */
	.FormUnit input[type=checkbox]:checked + label::after {
	left: 5px;
	width: 15px;
	height: 10px;
	margin-top: -8px;
	}

}

@media print, screen and (min-width: 768px) {
	
	.FormUnit input[type=radio],
	.FormUnit input[type=checkbox] {
	margin-right: 6px;
	-webkit-transition: all 0.1s cubic-bezier(.17,.67,.83,.67) 0.1s;
	transition: all 0.1s cubic-bezier(.17,.67,.83,.67) 0.1s;
	}
	
	.FormUnit input[type=radio] + label,
	.FormUnit input[type=checkbox] + label {
	font-size: 14px;
	line-height: 1.7em;
	}
	
	.FormUnit input[type=radio],
	.FormUnit input[type=checkbox] {
	display: none;
	margin: 0 0 0 -10px;
	}
	
	.FormUnit input[type=radio] + label,
	.FormUnit input[type=checkbox] + label {
	display: inline-block;
	padding: 0 0 0 24px;
	}
	
	.FormUnit input[type=radio] + label::before,
	.FormUnit input[type=checkbox] + label::before {
	width: 18px;
	height: 18px;
	margin-top: -9px;
	}

	/* border色とシャドー（カラー設定） */
	.FormUnit input[type=radio] + label::before,
	.FormUnit input[type=checkbox] + label::before {
	-webkit-transition: all 0.1s cubic-bezier(.17,.67,.83,.67) 0.1s;
	transition: all 0.1s cubic-bezier(.17,.67,.83,.67) 0.1s;
	}

	/* 選択時の背景色（カラー設定） */	
	.FormUnit input[type=radio]:checked + label::after,
	.FormUnit input[type=checkbox]:checked + label::after {
	top: 12px;
	}
	
	/* ラジオボタン選択時の中央ドットのサイズ・位置 */
	.FormUnit input[type=radio]:checked + label::after {
	left: 5px;
	width: 8px;
	height: 8px;
	margin-top: -5px;
	border-radius: 8px;
	}
	
	/* チェックボックス選択時のチェックマークのサイズ・位置 */
	.FormUnit input[type=checkbox]:checked + label::after {
	left: 4px;
	width: 12px;
	height: 7px;
	margin-top: -6px;
	}

}

@media print, screen and (min-width: 1090px) {

}

/* 完了画面 --------------------------------------------------- */

@media only screen and (max-width: 767px) {

	.FormUnit .BtnHome {
	margin: 0 10px;
	}
	
	/* ボタン：通常（他のページ、次のページに移動など） */
	.FormUnit .BtnNext {
	display: block;
	width: 100%;
	padding: 20px 0;
	text-align: center;
	}
	
	/* メッセージBOX：通常 */
	.FormUnit .MsgBoxNormal {
	margin: 30px 10px;
	}
	
	.FormUnit .MsgBoxNormal .Mds {
	font-size: 108%;
	}

	.FormUnit .BtnRight {
	margin-bottom: 20px;
	}

}

@media print, screen and (min-width: 768px) {

	.FormUnit .BtnHome {
	margin-top: 60px;
	text-align: center;
	}

	.FormUnit .MsgBox {
	text-align: center;
	}
	
	/* ボタン：通常（他のページ、次のページに移動など） */
	.FormUnit .BtnNext {
	padding: 16px 30px;
	}

}

@media print, screen and (min-width: 1090px) {

}



/* ■ 印刷用設定 ==================================================================================== */



