@charset "utf-8";
/* ========================================

	cmn.css

	--------------------
	・base
		- アイコンフォント読み込み
		- リセット
		- clearfix
		- アプリアイコンフォント読込
		- コンテナ
		- ヘッダ
		- フッタ
	・共通パーツ
		- ボタン
		- ページ送り
		- リスト矢印
		- 記事一覧
		- 詳細ページ
		- ソーシャル連携ボタン
		- スライドショー・カルーセル
		- ヘッダーメニュー
	・TOPページ共通パーツ
		- メイン画像
		- 新規会員登録・ログイン
		- マーキー
		- バナー
			- バナー下キャプション
		- カルーセルバナー
		- テキストバナー
		- アプリリスト
		- グローバルメニューデフォルト
	・サポートページ
		- プライバシーポリシー
		- 利用規約
		- 特定商取引法に関する表記
	・ログイン・登録遷移・MYページ
		- フォーム
		- メールマガジン設定画面用

	・MOVIE
	・歌詞検索
	・Q&A
	・デコメ
	-------------------

========================================== */

/* base
========================================== */


/* アイコンフォント読み込み
-------------------------------- */
@import url('iconfont.css');


/* リセット
-------------------------------- */
html, body, h1, h2, h3, h4, h5, h6, ul, ol, dl, li, dt, dd, p,
header, hgroup, section, article, aside, hgroup, footer, figure, figcaption, nav {
	margin: 0;
	padding: 0;
	font-size: 100%;
}
body {
	line-height: 1.0;
	-webkit-text-size-adjust: none;
	margin:0;
}
article,aside,canvas,details,figcaption,figure,
footer,header,hgroup,menu,nav,section,summary {
	display:block;
}
img {
	max-width: 100%;
	border: 0;
	vertical-align: bottom;
	-webkit-user-select:none;
	-khtml-user-select:none;
}
ul, ol, dir{
	list-style: none;
	display: block;
}
table {
	border-spacing: 0;
	empty-cells: show;
}
div, h2, h3, h4, h5, h6, p, li, dt, dd, pre, code, blockquote, th, td{
    word-break: break-all;
}


/* clearfix
-------------------------------- */
.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}


/* css animation テンプレート
-------------------------------- */

/* 点滅 */
@-webkit-keyframes blink {
	from { opacity: 1.0; }
	to { opacity: 0.0; }
}
.blink {
	-webkit-animation-name: blink;
	-webkit-animation-duration: 0.5s;
	-webkit-animation-iteration-count:infinite;
	-webkit-animation-timing-function:ease-in-out;
	-webkit-animation-direction: alternate;
	-webkit-animation-delay: 0s;
}


/* アプリアイコンフォント読込
-------------------------------- */
@font-face {
	font-family: 'svgfont_1regular';
	src: url('./font/appicon-webfont.eot');
	src: url('./font/appicon-webfont.eot?#iefix') format('embedded-opentype'),
		 url('./font/appicon-webfont.woff') format('woff'),
		 url('./font/appicon-webfont.ttf') format('truetype'),
		 url('./font/appicon-webfont.svg#svgfont_1regular') format('svg');
	font-weight: normal;
	font-style: normal;
}
.appicon:after {
	width: 40px;
	font-family: 'svgfont_1regular';
	font-size: 40px;
	line-height: 40px;
	position: absolute;
	padding: 0 0 0 1px;
}
/* 壁紙 */
.appicon.wp:after     { content: 'a'; color: #007FCC; }
/* ライブ壁紙 */
.appicon.livewp:after { content: 'b'; color: #E2007E; }
/* フォトフレーム */
.appicon.pf:after     { content: 'c'; color: #87CC03; }
/* カレンダー */
.appicon.cal:after    { content: 'd'; color: #EC6C00; }
/* 電卓 */
.appicon.den:after    { content: 'e'; color: #00ADFD; }
/* アラーム */
.appicon.alarm:after  { content: 'f'; color: #B6006F; }
/* フォトブック */
.appicon.pb:after     { content: 'g'; color: #C7161E; }
/* スクリーンメーカー */
.appicon.sm:after     { content: 'h'; color: #FF0099; }
/* 時計ウィジェット */
.appicon.tw:after     { content: 'i'; color: #FAC604; }
/* ツアーパンフ */
.appicon.tp:after     { content: 'j'; color: #E4135D; }
/* 音楽配信∞(iPhone) */
.appicon.mugen_i:after{ content: 'k'; color: #1E7ACD; }
/* 音楽配信∞(Android) */
.appicon.mugen_a:after{ content: 'l'; color: #1E7ACD; }



/* 余白 */
/*
.space3{-webkit-user-select: none;height:3px;}
.space5{-webkit-user-select: none;height:5px;}
.space10{-webkit-user-select: none;height:10px;}
.space15{-webkit-user-select: none;height:15px;}
.space20{-webkit-user-select: none;height:20px;}
.space25{-webkit-user-select: none;height:25px;}
.space30{-webkit-user-select: none;height:30px;}
.space40{-webkit-user-select: none;height:40px;}
*/
.space10{margin-bottom:10px!important;}
.space15{margin-bottom:15px!important;}
.space20{margin-bottom:20px!important;}
.space25{margin-bottom:25px!important;}
.space30{margin-bottom:30px!important;}
.space40{margin-bottom:40px!important;}


/* 注意色 */
.note{color:#ff3300;}

/* テキスト太字 */
.bold{font-weight:bold;}
.center{text-align:center;}
.right{text-align:right;}

/* リンク色 */
a,a:link, a:visited{color:#09F; text-decoration:none;}
a:webkit-any-link{coursor:auto;}

/* 文字サイズ */
.fs10{font-size:10px;}
.fs12{font-size:12px;}
.fs14{font-size:14px;}
.fs15{font-size:15px;}
.fs16{font-size:16px;}
.fs17{font-size:17px;}
.fs18{font-size:18px;}
.fs19{font-size:19px;}
.fs20{font-size:19px;}


/* コンテナ
-------------------------------- */
html {
	height:100%;
}

body {
	background:#FFFFFF;
	color: #333;
    font-family: "ヒラギノ角ゴ Pro W3 / W6","Hiragino Kaku Gothic Pro", Helvetica Neue,Helvetica,Arial,san-serif;
    font-size:14px;
	height:100%;
}
#wrap {
	height:auto;
	min-height:100%;
	position:relative;
}
#container {
	height:auto;
	padding-bottom: 60px;
}


/* ヘッダー
-------------------------------- */
#header {
	background: #333;
	position: relative;
}
#header li a{
	display:block;
	height:40px;
}
/* タイトル */
#header .tit {
	height: 40px;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	line-height: 40px;
	text-align: center;
	text-overflow: ellipsis;
	overflow: hidden;
	margin: 0 40px;
}
/* 戻る・メニューボタン */
#header .back,
#header .menu {
	width: 35px;
	height:35px;
	padding: 2px 2px 3px;
	position: absolute;
	top: 0;
}
#header .back {
	left: 0;
}
#header .menu {
	border-top: none;
	right: 0;
}
#header .menu:hover {
	background: none;
}
#header .menu a img{
	height: 35px;
	float: none;
	margin: 0;
}

/* フッタ
-------------------------------- */
#footer{
	width:100%;
	height:auto;
	position:absolute;
	left: 0;
	bottom:0;
	padding: 23px 0;
}
#footer .copyright small {
	display: block;
	color:#555;
	font-size: 10px;
	text-align: center;
	line-height: 1.3em;

}
#pageTop {
	width: 50px;
	height: 50px;
	background: rgba(0,0,0,0.5);
	border-radius: 50px;
	position: fixed;
	right: 5px;
/*	bottom: 5px; */
	bottom: -50px;
}
#pageTop a {
	display: block;
	height: 50px;
	color: #fff;
	font-size: 16px;
	text-align: center;
	line-height: 50px;
}
#pageTop a:after {
    font-family:'WebHostingHub-Glyphs';
	content: '\f48a';
}

/* =======================================

	共通パーツ

========================================== */

/* ボタン
-------------------------------- */
input[type="button"],input[type="submit"] {
   -webkit-appearance: none;
   border-radius: 0;
}
.btn a,
.btn input[type="submit"],
.btn input[type="button"] {
    display: block;
    width: 90%;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.4em;
    text-align: center;
    text-decoration: none;
    border: none;
    border-radius: 4px;
    padding: 10px 0;
    margin: 0 auto 10px;
}

/* メイン */
.btn .main,
.btn input[type="submit"].main {
    background: #00ABE1;
    color: #fff;
	text-shadow: 1px 1px 1px rgba(0,0,0,0.1);
}

/* サブ */
.btn .sub,
.btn input[type="submit"].sub {
    background: #B0B0B0;
    color: #fff;
	text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
}

/* 選択不可 */
.btn .unchecked {
	background: #eee;
	color: #aaa;
}


/* 小ボタン */
.subBtn a {
    display: block;
    width: 90%;
    background: #f5f5f5;
    color: #555;
    font-sizew: 13px;
    font-weight: bold;
    text-decoration: none;
    border: 1px solid #bbb;
    border-radius: 4px;
    padding: 5px 10px;
    margin: 0 auto 10px;
    position: relative;
}
.subBtn a:after {
    content:'\f488';
    font-family:'WebHostingHub-Glyphs';
    color: #bbb;
    font-size: 11px;
    font-weight: normal;
    margin: -9px 0 0;
    position: absolute;
    right: 5px;
    top: 50%;
}
.subBtn a.back {
    padding: 5px 10px 5px 20px;
}
.subBtn a.back:after{
    content:'\f489';
    position: absolute;
    left: 5px;
    top: 50%;
}


/* ページ送り
-------------------------------- */
.pageNav {
	padding: 10px;
}
.pageNav ul {
	background: #fff;
	border-radius: 4px;
	border: 1px solid #00ABE1;
}
.pageNav li {
	width: 30%;
	float: left;
	color: #00ABE1;
	line-height: 40px;
	text-align: center;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 0 5px;
}
.pageNav li:first-child {
	width: 35%;
	border-right: 1px solid #00ABE1;
	padding: 0;
}
.pageNav li:last-child {
	width: 35%;
	float: right;
	border-left: 1px solid #00ABE1;
	padding: 0;
}
.pageNav li a,
.pageNav li span {
	display: block;
	font-weight: bold;
}
.pageNav li a { color: #00ABE1; }
.pageNav li span { color: #ccc; }
.pageNav li:first-child a:before,
.pageNav li:first-child span:before {
	content:'\f489';
	font-size: 0.8em;
	font-family:'WebHostingHub-Glyphs';
	font-weight: normal;
	position: relative;
	left: -3px;
}
.pageNav li:last-child a:after,
.pageNav li:last-child span:after {
	content:'\f488';
	font-size: 0.8em;
	font-family:'WebHostingHub-Glyphs';
	font-weight: normal;
	position: relative;
	right: -3px;
}

/* リスト矢印
-------------------------------- */
.arrow li,
.contentsList li,
.childList li,
.supportList li,
.appList li,
.txtBnr li,
#headerNav li {
	position: relative;
}
.arrow li:after,
.contentsList li:after,
.childList li:after,
.supportList li:after,
.appList li:after,
.txtBnr li:after,
#headerNav li:after {
	content:'\f488';
	font-family:'WebHostingHub-Glyphs';
	color: #bbb;
	font-size: 11px;
	font-weight: normal;
	margin: -5.5px 0 0;
	position: absolute;
	right: 5px;
	top: 50%;
}


/* 記事一覧
-------------------------------- */
.contentsList li  {
	border-bottom: 1px solid #ccc;
}

.contentsList li:nth-child(even) {
	background: #f5f5f5;
}

.contentsList li.noData {
	padding: 30px 10px;
}
.contentsList li.noData:after {
	content: none;
}
.contentsList li.nolink:after {
	content: none;
}
.contentsList a {
	display: block;
	color: #333;
	text-decoration: none;
	padding: 13px 20px 13px 10px;
}
.contentsList a:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
/* タイトル大 */
.contentsList .parent {
	font-size: 16px;
	font-weight: bold;
	padding: 5px 0;
}
/* タイトル中 */
.contentsList .tit {
	font-size: 13px;
	font-weight: bold;
	line-height: 1.4em;
	margin: 0 0 1px;
}
/* 日付 */
.contentsList .date {
    color: #999;
    font-family: Helvetica Neue,Helvetica,Arial,san-serif;
    font-size: 10px;
    font-weight: bold;
	line-height:12px;
}
/* カテゴリ */
.contentsList .cat {
	display: inline-block;
	background: #666;
	color: #fff;
    font-family: Helvetica Neue,Helvetica,Arial,san-serif;
	font-size: 10px;
	font-weight: bold;
	border-radius: 2px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	padding: 2px 5px;
	margin-bottom: 3px;
}
/* 新着 */
.contentsList .SPnew,
.contentsList .new,
.detail .SPnew,
.detail .new {
	background: none;
	color: #E83232;
	font-size:10px;
	margin: 0 0 0 2px;
}
.contentsList .new,
.detail .new {
	-webkit-animation-name: blink;
	-webkit-animation-duration: 0.5s;
	-webkit-animation-iteration-count:infinite;
	-webkit-animation-timing-function:ease-in-out;
	-webkit-animation-direction: alternate;
	-webkit-animation-delay: 0s;
}

/* サムネイル */
.contentsList .thumb {
	width: 60px;
	float: left;
}
.contentsList .txtArea {
	padding: 0 0 0 68px;
}

/* DL不可 */
.thumb, .ph {
	position: relative;
}
.thumb img, .ph img {
	background: no-repeat center top;
	-moz-background-size: contain;
	-webkit-background-size: contain;
	background-size: contain;
}
.thumb .dummy, .ph .dummy {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
}


/* もっと見る */
.contentsList .more a {
	color: #333;
	font-size: 13px;
	font-weight: bold;
	text-align: right;
	padding: 16px 20px 18px 10px;
}
#autopager {
	text-align: center;
	padding: 10px;
}
#infscr-loading { padding: 10px; text-align:center; }
#infscr-loading em { display: none; }

/* プルダウンメニュー */
.pulldownBox{
	padding:3px 0px 3px 0px;
	text-align:center;
	border-bottom:1px solid #bbbbbb;
	background-color:#dddddd;
}
.pulldownBox form {
	margin: 0;
}
.pulldownBox select{
	width: 80%;
	font-size:14px;
	font-weight:bold;
	text-align:center;
	color:#333333;
}


/* 記事詳細
-------------------------------- */
.detail {
    font-size: 13px;
    line-height: 1.5em;
    padding: 10px;
/*  overflow:hidden; */
}
.detail .sectionTit {
	font-size: 18px;
	font-weight: bold;
	border-left: 4px solid #555;
	padding: 8px 0 8px 8px;
	margin: 0 0 15px;
}
/* タイトル */
.titArea {
	border-bottom: 1px solid #ccc;
	padding: 0 0 10px;
	margin: 0 0 15px;
}
.titArea .date {
	color: #666;
	font-size: 12px;
	margin: 0 0 5px;
}
.titArea .tit {
	font-size: 16px;
	font-weight: bold;
}
.titArea .txt {

}

/* 本文 */
.txtArea .tit {
	font-size: 14px;
	font-weight: bold;
}
.txtArea .txt {
	margin: 0 0 15px;
}
.txtArea .ph {
	text-align: center;
	margin: 0 0 15px;
}

/* 子記事一覧 */
.detail .childList {
	background:#f5f5f5;
	border: 1px solid #bbb;
    border-radius: 6px;
    -moz-border-radius: 6px;
    -webkit-border-radius: 6px;
    margin: 0 0 20px;
}
.detail .childList li { border-bottom: 1px solid #bbb; }
.detail .childList li:last-child { border-bottom: none; }
.detail .childList li a {
    display: block;
    color: #333;
    font-size: 13px;
    font-weight:bold;
    line-height: 1.3em;
    padding: 10px 19px 10px 8px;
}

/* トラックリスト */
.trackList { margin-bottom:15px; }
.trackList li {
	padding:5px 10px;
	background: #fff;
	border-left:1px solid #ccc;
	border-right:1px solid #ccc;
}
.trackList li:nth-child(odd){
	background-color:#EFEFEF;
}
.trackList li:first-child {
	-moz-border-radius: 5px 5px 0 0;
	-webkit-border-radius: 5px 5px 0 0;
	border-radius: 5px 5px 0 0;
}
.trackList li:last-child {
	-moz-border-radius: 0 0 5px 5px;
	-webkit-border-radius: 0 0 5px 5px;
	border-bottom: 1px solid #ccc;
	border-radius: 0 0 5px 5px;
}
.trackList li.discType{
	background-color:#333;
	color:#fff;
	font-size:12px;
	font-weight:bold;
	line-height:1.3em;
	border: none;
	padding:3px 10px;
}


/* 再生ボタン */
.audiojs {
	width: 23px;
	height: 23px;
	float: right;
	border-radius: 3px;
	box-shadow: none;
	position: relative;
	top: -2px;
}
.audiojs .play-pause,
.audiojs .play {
	width: 23px;
	height: 23px;
	background-position: -4px -3px;
	padding: 0;
}
.audiojs .pause {
	background-position: -3px -93px;
}
.audiojs .scrubber,
.audiojs .time {
	display: none;
}



/* 消費ポイント */
.pointList {
	font-weight: bold;
	border-radius: 4px;
	border: 1px solid #ccc;
	margin: 0 0 10px;
}
.pointList .necessary { color: #c00; }
.pointList .rest { color: #009FEA; }
.pointList dt {
	width: 100px;
	float: left;
	padding: 10px 0 10px 10px;
}
.pointList dd {
	padding: 10px 10px 10px 80px;
	border-bottom: 1px solid #ccc;
}
.pointList dd.rest { border: none; }

/* SNS */
.detail .social {
	padding: 20px 0 0;
	border-top: 1px solid #ccc;
}

/* ヘッダーメニュー
-------------------------------- */
#headerNavWrap {
	width: 100%;
	background: rgba(0,0,0,0.5);
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	padding: 10px 7px 20px;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	opacity: 0;
}
#headerNav {
    background: #fff;
    border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    overflow: hidden;
}
#headerNav .tit {
    background: #eee;
    color: #aaa;
    font-size: 10px;
    font-weight: bold;
    padding: 6px 10px;
}
#headerNav ul { padding: 0 10px; }
#headerNav li { border-bottom: 1px solid #ddd; }
#headerNav li:last-child { border: none; }
#headerNav li:after { right: 0; }
#headerNav li a {
    display: block;
    color: #333;
    font-size: 13px;
    font-weight: bold;
    padding: 10px 15px 10px 0;
}
#headerNav .course {
    display: inline-block;
    float: right;
    color: #fff;
    font-size: 11px;
    font-weight: bold;
    border-radius: 2px;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    padding: 2px 3px 3px;
    margin: 0 0 0 3px;
    position: relative;
    top: -1px;
}
#headerNav .light { background: #888; }
#headerNav .standard { background: #444; }
#headerNav .close {
    font-size: 15px;
    font-weight: bold;
    text-align: center;
    cursor: pointer;
    border-top: 1px solid #ddd;
    padding: 15px 0;
    margin: 0 10px;
}
#headerNav .close .icon-checkboxalt {
    margin: 0 3px 0 0;
    position: relative;
    top: 2px;
}
#headerNavWrap .topClose {
	color:#fff;
	font-size:20px;
	text-align:right;
	padding: 0 5px 5px 0;
}

/* サポートメニュー
---------------------------------------*/
.supportList li:first-child {
	border-top: 1px solid #999;
}
.supportList li a{
	display:block;
	background: #fff;
	color:#505050;
	font-size:13px;
	border-bottom: 1px solid #999;
	padding: 15px 10px;
}

/* ソーシャル連携ボタン
---------------------------------------*/
.social {
	text-align: center;
	padding: 20px 0;
}
.socialList {
	width: 210px;
	margin: 0 auto;
}
.socialList li{
	float:left;
	margin: 0 10px 0 0;
}
.socialList li:last-child {
	margin-right: none;
}
.socialList .twitter  { width: 71px; }
.socialList .facebook { width: 69px; }
.socialList .line { width: 36px; }
.socialList .hatebu { widt: 80px; clear: left; padding-left: 30px; }
.socialList .google { width: 50px; }


/* スライドショー・カルーセル
-------------------------------- */
.flexslider { position: relative; }
.slides > li {display: none; -webkit-backface-visibility: hidden;}
.slides img {
	width: 100%;
	display: block;
}

/* direction-nav */
.flex-direction-nav a {
	display: block;
	width: 20px;
	height: 20px;
	cursor: pointer;
	margin: -14px 0 0;
	position: absolute;
	top: 50%;
}
.flex-direction-nav .flex-next { right: 0.2%; }
.flex-direction-nav a:before {
	display: block;
	content: '\f489';
	color: #fff;
	font-family:'WebHostingHub-Glyphs';
	text-align: center;
	text-shadow: 0 0 3px rgba(0,0,0,0.5);
	opacity: 0.5;
}
.flex-direction-nav a.flex-next:before  { content: '\f488'; }

/* control-nav */
.flex-control-nav {
	width: 100%;
	text-align: center;
	position: absolute;
	bottom: 1px;
}
.flex-control-nav li {
	margin: 0 6px;
	display: inline-block;
}
.flex-control-paging li a {
	display: block;
	width: 7px;
	height: 7px;
	background: #666;
	text-indent: -9999px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	box-shadow: inset 0 0 2px rgba(0,0,0,0.3);
}
.flex-control-paging li a.flex-active {
	background: #aaa;
	box-shadow: inset 0 0 2px rgba(0,0,0,0.3);
}


/* =======================================

	TOPページ共通パーツ

========================================== */

/* メイン画像
-------------------------------- */
#keyVisual ul {
	position: relative;
}
#keyVisual .dummy {
	width: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 999;
}

/* 新規会員登録・ログイン
-------------------------------- */
.loginNav ul{
	background: #fff;
	border-bottom: 1px solid #ccc;
}
.loginNav li {
	width: 50%;
	float: left;
}
.loginNav li a {
	display: block;
	color: #333;
	font-size:15px;
	text-align:center;
	padding: 15px 0 18px;
}
.loginNav li a:before {
	font-size: 0.8em;
	padding: 0 3px 0 0;
}

/* マーキー
-------------------------------- */
.marqueeList {
	background: #fff;
	border-bottom: 1px solid #ccc;
	margin: 0 0 10px;
}
.marqueeList li a,
.marqueeList li span {
	display: block;
	text-align:center;
	padding: 10px 0;
}

/* バナーリスト
--------------------------------------- */
.bnrList {
	padding: 0 10px;
	margin: 0 0 10px;
}
.bnrList li {
	margin-bottom:10px;
}
.bnrList a {
	display: block;
	position: relative;
}
.bnrList img { width:100%; }
.bnrList .dummy {
	position: absolute;
	left: 0;
	top: 0;
}

/* バナー下キャプション */
.bnrList .bnrCap{
	color:#666;
	font-size:12px;
	font-weight:bold;
	line-height:1.2em;
	text-align:center;
	margin: 2px 0 0;
	text-decoration:none;
}
.bnrList .bnrCap .blink{
	-webkit-animation-name: blink;
	-webkit-animation-duration: 0.5s;
	-webkit-animation-iteration-count:infinite;
	-webkit-animation-timing-function:ease-in-out;
	-webkit-animation-direction: alternate;
	-webkit-animation-delay: 0s;
}

/* カルーセルバナー
--------------------------------------- */
.bnrCarousel {
	padding: 0 10px;
	margin: 0 0 10px;
}
#carousel li a {
	display: block;
}
#carousel img {
	width:100%;
	padding:0 0 13px;
}
#carousel .dummy {
	position: absolute;
	left: 0;
	top: 0;
}

/* テキストバナー
-------------------------------- */
.txtBnr { padding: 0 10px; }
.txtBnr li {margin-bottom: 10px; }
.txtBnr li a {
	display: block;
	background: #fff;
	color: #333;
	font-size: 13px;
	line-height: 1.3em;
	padding: 13px 20px 13px 10px;
}

/* アプリリスト
---------------------------------------*/
.globalNav .appList li {
	background: #fff;
	border-bottom: 1px solid #ccc;
}
.globalNav .appList a {
	display: block;
	color: #333;
	padding: 13px 30px 13px 10px;
}
.globalNav .appList a:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
.globalNav .appList .appicon {
	float: left;
	width: 40px;
	height: 40px;
	background: #fff;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	border: 1px solid #ccc;
	margin: 0 8px 0 0;
	position: relative;
}
.globalNav .appList img {
	float: left;
	width: 40px;
	height: 40px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
}
.globalNav .appList .tit {
	font-weight: bold;
	line-height: 1.3em;
	margin: 0 0 3px;
}
.globalNav .appList .txt {
	font-size: 10px;
	line-height: 1.3em;
}

/* グローバルメニューデフォルト
-------------------------------- */
/* MEMBER'S MENU
------------------- */
.globalNav.members .menuList {
	background: #333;
	border-bottom: 1px solid #222;
}
.globalNav.members .menuList li {
	width: 50%;
	float: left;
}
.globalNav.members .menuList a {
	display: block;
	height: 45px;
	color: #fff;
	font-size: 13px;
	font-weight: bold;
	line-height: 45px;
	border-top: 1px solid #222;
	border-right: 1px solid #222;
	padding: 0 10px;
}
.globalNav.members .menuList li:nth-child(2n) a {
	border-right: none;
}

/* APPLI MENU
------------------- */
.globalNav .listTit {
	background: #444;
	color: #fff;
	font-size: 16px;
	border-bottom: 1px solid #222;
	padding: 5px 10px;
}

/* FREE MENU
------------------- */
.globalNav.free .menuList {
	background: #fff;
	border-bottom: 1px solid #ccc;
}
.globalNav.free .menuList li {
	width: 50%;
	float: left;
}
.globalNav.free .menuList li:nth-child(2n) a {
	border-right: none;
}
.globalNav.free .menuList a {
	display: block;
	height: 40px;
	color: #555;
	font-size: 12px;
	font-weight: bold;
	line-height: 40px;
	border-top: 1px solid #ccc;
	border-right: 1px solid #ccc;
	padding: 0 10px;
}

/* SOCIAL
-------------------------------- */
.top-social {
	overflow: hidden;
}

/* SUPPORT MENU
------------------- */
.sitetop .supportList h2 {
	font-size: 16px;
	padding: 0 0 5px;
}
.sitetop .supportList {
	padding: 0 10px 0
}
.sitetop .supportList li a{
	padding: 13px 0;
}
.sitetop .supportList li:after {
	right: 0;
}
.sitetop #contentsArea{
        padding: 0px;
}


/* ========================================

	サポートページ

========================================== */

/* プライバシーポリシー
-------------------------------- */
.privacyList {
	padding: 20px 10px 20px 30px;
}
.privacyList li {
	font-size: 13px;
	list-style: decimal;
	line-height: 1.5em;
	padding: 0px;
	margin: 0px 0px 15px;
}

/* 利用規約
-------------------------------- */
.tosList {
	font-size: 13px;
	line-height: 1.5em;
	padding: 20px 10px;
}
.tosList dt {
	background: #eee;
	font-weight: bold;
	padding: 5px;
	margin: 0 0 10px;
}
.tosList dd {
	margin: 0 0 20px;
}
.tosList dd ul {
	padding: 0 0px 10px 20px;
}
.tosList dd ul ul {
	padding-top: 10px;
}
.tosList dd .decimal li {
	list-style: decimal;
	padding: 0px;
	margin: 0px 0px 5px;
}
.tosList dd .disc li {
	list-style: disc;
	padding: 0px;
	margin: 0px 0px 5px;
}

/* 特定商取引法に関する表記
-------------------------------- */
.dealList {
	display: block;
	padding: 20px 10px;
}
.dealList th,
.dealList td {
	display: block;
	width: 100%;
	font-size: 13px;
	text-align: left;
	line-height: 1.5em;
}
.dealList th {
	background: #eee;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 5px;
	margin: 0 0 10px;
}
.dealList td {
	margin: 0 0 20px;
}

/* Q&A
-------------------------------- */
.qaList {

}
/* 検索BOX */
.searchBox {
	padding: 20px 10px 10px;
}
.searchBox ul {
	border-radius: 8px;
	border: 1px solid #999;
	margin-bottom: 20px;
}
.searchBox li {
    border-bottom: 1px solid #999;
    padding: 3px 5px;
    position: relative;
}
.searchBox .type:after {
	content:'\f48b';
	color: #999;
	font-family:'WebHostingHub-Glyphs';
	font-size: 16px;
	font-weight: normal;
	position: absolute;
	right: 10px;
	top: 13px;
}

.searchBox li:last-child { border-bottom: none; }
.searchBox li span {
	display: inline-block;
	width: 22%;
	color: #999;
	font-size: 10px;
	font-weight: bold;
	text-align: right;
	line-height: 37px;
	padding-right: 3%;
}
.searchBox select {
	width: 65%;
	height: 37px;
	color: #333;
	font-size: 15px;
	font-weight: bold;
	border:none;
	background:none;
	overflow: hidden
}
.searchBox select:after {
	font-family: ;
	content: '\f48b';
}
.searchBox .word input {
	width: 65%;
	height: 37px;
	color: #333;
	font-size: 15px;
	font-weight: bold;
	border:none;
	background:none;
	overflow: hidden;
}
/* Q&Aリスト */
.qaList {
	margin: 0 0 20px;
}
.qaList .qa {
	border-bottom: 1px solid #ccc;
}
.qaList dt {
	border-top: 1px solid #ccc;
	font-weight: bold;
	line-height: 1.3em;
}

.qaList dt a {
	display: block;
	padding: 10px 30px 10px 10px;
	position: relative;
}
.qaList dt a:after {
	content: '\f571';
	font-family: 'WebHostingHub-Glyphs';
	font-weight: normal;
	position: absolute;
	right: 5px;
	top: 50%;
	margin-top: -9px;
}
.qaList dt a.open:after {
	content: '\f572';
}
.qaList dd {
	font-size: 13px;
	line-height: 1.5em;
	padding: 0 10px 20px;
}
/* ========================================

	ログイン・登録繊維・MYページ

========================================== */
.note { color: #f00; }
.rule { color: #2a91b1; }
.gray { color: #999; }
.mypage .txtArea {
	margin: 0 0 20px;
}
.mypage .tit {
	font-size: 14px;
	font-weight: bold;
	margin: 0 0 5px;
}
.mypage .txtArea .txt {
	margin: 0 0 10px;
}
.subTxt {
	font-size: 0.8em;
	line-height: 1.2em;
	margin: 0 0 10px;
}
.sslTxt {
	color: #999;
	font-size: 10px;
	text-align: center;
	padding: 20px 0;
}
.mypage .mypageList {
    display: block;
    width: 107%;
    border-top: 1px solid #999;
    position: relative;
    left: -10px;
}
.mypage .mypageList li {
    background: #fff;
    color: #505050;
    font-size: 13px;
    border-bottom: 1px solid #999;
    padding: 15px 90px 15px 10px;
    position: relative;
}
.mypage .mypageList li form{
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 10px;
}
.mypage .mypageList li .btn input{
    margin: 0;
    font-size: 12px;
    line-height: 1;
    padding: 8px 20px;
    width: 100%;
}

/* フォーム
-------------------------------- */
.formArea {
}
.formArea .formTit {
	color:#888;
	font-size: 12px;
	font-weight: bold;
	margin: 0 0 3px;
}
.formList {
	background:#f5f5f5;
	border-radius: 5px;
	border: 1px solid #bbb;
	margin: 0 0 10px;
}
.formList li {
	border-bottom: 1px solid #bbb;
	padding: 0 5px;
}
.formList li:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
.formList li:last-child {
	border: none;
}
.formList li.error {
	background: #ffe9e9;
}
.formList.confirm li {
	line-height: 36px;
}
.formList .tit {
	display: inline-block;
	width: 40%;
	clear: both;
	float: left;
	color: #999;
	font-size: 12px;
	font-weight: bold;
	text-align: right;
	padding: 10px 5px 10px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.formList .tit .note {
	font-size: 0.8em;
	font-weight: normal;
}
.formList.confirm .tit {
	width: auto;
	float: none;
	font-weight: bold;
	padding: 0 5px;
}
.formList .subTxt {
	padding: 0 0 0 35%;
}
.formList input,
.formList textarea {
/*	width: 60%; */
	width: 100%;
	background: none;
	border: none;
	font-size: 18px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 8px 5px 10px;
	margin: 0
}
.formList .inline {
	width: 60%;
	float: right;
}
.formList .inline input,
.formList .inline textarea {
	max-width: 90%;
}

// 郵便番号用
.formList .zipCode { width: 60%; float: right; }
.formList .zipCode input,
.formList .zipCode textarea { max-width: 28%; }

.formList input[type="radio"] {
	width: auto;
	margin: 8px 5px 10px 0;
}

.formList #form_tds2PhoneType input[type="radio"]{
	margin:0 .3em 0 .7em;
	appearance:auto;
}

/* .formList #form_tds2PhoneType input[type="radio"]:nth-of-type(1){
	margin:0 .3em 0 0;
} */

.formList li:has(#form_tds2PhoneType){
	display:flex;
	align-items:center;
}

.formList select {
	margin: 8px 5px 10px;
	max-width:95%;
}
.formList textarea {
	width: 100%;
}
.formArea .btn {
	margin: 0 0 10px;
}



/* 注意事項リスト
-------------------------------- */
.attentionList li {
	font-size: 12px;
	text-indent: -1em;
	line-height: 1.2em;
	padding: 0 0 0 1em;
	margin: 0 0 8px;
	position: relative;
}
.attentionList li:before{
	content:'\2713';
	font-family:'WebHostingHub-Glyphs';
	color: #f60;
	font-size: 10px;
	margin: 0 3px 0 0;
}

/* チェックリスト
-------------------------------- */
.checkList li {
	font-size: 12px;
	text-indent: -1em;
	line-height: 1.3em;
	padding: 0 0 0 1em;
	margin: 0 0 8px;
	position: relative;
}
.checkList li:before{
	content:'\2713';
	font-family:'WebHostingHub-Glyphs';
	color: #aaa;
	font-size: 10px;
	margin: 0 3px 0 0;
}
.checkList li:last-child {
	margin-bottom: 0;
}
.stepList {
	padding: 0 0 0 20px;
}
.stepList li {
	font-size: 12px;
	line-height: 1.2em;
	list-style-type: decimal;
	margin: 0 0 8px;
	position: relative;
}


/* アラート
-------------------------------- */
.alertBox {
    background: #fcffc4;
    border-radius: 4px;
    padding: 10px;
    margin: 0 0 15px;
}
.alertBox .tit {
    font-size: 16px;
    font-weight: bold;
    margin: 0 0 5px;
}
.alertBox .tit.error {
    color: #c00;
}
.alertBox .error:before {
    content:'\f316';
    font-family:'WebHostingHub-Glyphs';
    color: #c00;
    font-weight: normal;
    margin: 0 5px 0 0;
}

.alertBox li{
	text-indent: -1em;
	padding-left: 1em;
	margin-bottom: 5px;
}

.alertBox li:before {
    content:'\f479';
    font-family:'WebHostingHub-Glyphs';
/*    color: #222; */
    font-weight: normal;
    margin: 0 5px 0 0;
}

/* ボックス
-------------------------------- */
.noteBox {
    background: #eee;
    border-radius: 4px;
    padding: 10px;
    margin: 0 0 15px;
}
.noteBox .tit {
    font-size: 14px;
    font-weight: bold;
    margin: 0 0 5px;
}

/* アコーディオン
------------------------------- */
.accordionList {
	border-radius: 4px;
	border: 1px solid #999;
	border-top: none;
	margin: 0 0 15px;
	overflow: hidden;
}
.accordionList dt {
	font-size: 14px;
	font-weight: bold;
	padding: 10px;
	position: relative;
	border-top: 1px solid #999;
}
.accordionList dt:after {
    content:'\f48b';
    color: #999;
    font-family:'WebHostingHub-Glyphs';
    font-weight: normal;
    position: absolute;
    right: 10px;
    top: 10px;
}
.accordionList dt.open:after {
	content: '\f48a';
    font-family:'WebHostingHub-Glyphs';
}
.accordionList dd {
	display: none;
	background: #eef8ff;
	padding: 10px 10px 1px;
}
.accordionList .txt {
	margin: 0 0 10px;
}


/*
メールマガジン設定画面用
-------------------------------- */
.mypage .mailmagCheck label {
	display: inline-block;
	width: 40%;
	line-height: 30px;

}

.ui-toggle-switch{
    display:inline-block;
    width:100px;
    height:30px;
    overflow:hidden;
    position:relative;
    -webkit-border-radius: 6px;
    float:right;
    margin-top:5px;
}
.ui-toggle-switch-inner{
    position:absolute;
    left:0px;
    width:200px;
    height:30px;
}
.ui-toggle-switch-inner.off{
    left:-50px;
}
.ui-toggle-switch span{
    display:block;
    float:left;
    width:60px;
    height:30px;
    line-height:30px;
    text-align:center;
    font-size:13px;
}
.ui-toggle-switch span.ui-toggle-switch-on{
    -webkit-box-shadow: inset 0px 1px 5px rgba(0,0,0,0.5);
    font-weight: bold;
    color: white;
    cursor: pointer;
    text-shadow: 0 -1px 1px #145072;
    background-image: -webkit-gradient(linear,left top,left bottom,color-stop(0,#85BAE4),color-stop(1,#5393C5));
    -webkit-border-top-left-radius: 5px;
    -webkit-border-bottom-left-radius: 5px;
    text-indent:-7px;
    visibility:visible;
}
.ui-toggle-switch .ui-toggle-switch-inner.off span.ui-toggle-switch-on{
    visibility:hidden;
}
.ui-toggle-switch span.ui-toggle-switch-separate{
    width:48px;
    height:28px;
    margin:0 -10px;
    border:1px solid #CCC;
    -webkit-border-radius: 5px;
    background-image: -webkit-gradient(linear,left top,left bottom,color-stop(0,#CCC),color-stop(1,#FFF));
    -webkit-box-shadow: inset 0px 0px 2px rgba(255,255,255,0.5);
    position:relative;
    z-index:10;
}
.ui-toggle-switch span.ui-toggle-switch-off{
    -webkit-box-shadow: inset 0px 1px 5px rgba(0,0,0,0.5);
    font-weight: bold;
    color: #aaa;
    cursor: pointer;
    background-image: white;
    -webkit-border-top-right-radius: 5px;
    -webkit-border-bottom-right-radius: 5px;
    text-indent:7px;
    visibility:hidden;

}
.ui-toggle-switch .ui-toggle-switch-inner.off span.ui-toggle-switch-off{
    visibility:visible;
}
li.ui-toggle-list{
    height:30px;
    padding:10px;
}


/* ========================================

   MOVIE（ULIZA APP）
   /movie/

========================================== */
#UlizaApp{
	margin-bottom:20px
}
#UlizaApp .stepbox {
	padding:10px 10px 5px;
	display: block;
	background: #eee;
	border-radius: 8px;
}

#UlizaApp .tit {
	line-height: 1.4em;
	margin: 0 0 10px;
}
#UlizaApp .steptit {
	display: block;
	background: #555;
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	border-radius: 2px;
	padding: 0 5px;
	margin: 0 0 5px;
}
#UlizaApp .steparrow {
	padding:10px 0;
	text-align:center;
}


/* =======================================

    歌詞検索

========================================== */

#lyrics .select_none {
user-select:none;

/*Firefox*/
-moz-user-select:none;

/*Safari*/
-webkit-user-select:none;
-khtml-user-select:none;
}
/* メインリード */
#lyrics .main_lead {
	color: #333;
	font-size: 14px;
	font-weight: bold;
	text-align:center;
	line-height: 1.3em;
	letter-spacing: 0.02em;
	padding: 10px;
}

/* 検索ボックス */
#lyrics #search {
    padding: 0 10px;
    margin: 0 0 20px;
}
#lyrics #searchBox {
	border-radius: 8px;
    border: 1px solid #999;
    margin-bottom: 20px;
}
#lyrics #searchBox li {
    border-bottom: 1px solid #999;
    padding: 3px 5px;
    position: relative;
}
#lyrics #searchBox .type:after {
	content:'\f48b';
	color: #999;
	font-family:'WebHostingHub-Glyphs';
	font-size: 16px;
	font-weight: normal;
	position: absolute;
	right: 10px;
	top: 13px;
}
#lyrics #searchBox li:last-child { border-bottom: none; }
#lyrics #searchBox li span {
	display: inline-block;
	width: 22%;
	color: #00ABE1;
	font-size: 10px;
	font-weight: bold;
	text-align: right;
	line-height: 37px;
	padding-right: 3%;
}
#lyrics #searchBox select {
	width: 65%;
	height: 37px;
	color: #333;
	font-size: 15px;
	font-weight: bold;
	border:none;
	background:none;
	overflow: hidden
}
#lyrics #searchBox select:after {
	font-family: ;
	content: '\f48b';
}
#lyrics #searchBox .word input {
	width: 65%;
	height: 37px;
	color: #333;
	font-size: 15px;
	font-weight: bold;
	border:none;
	background:none;
	overflow: hidden;
}

/* タブ */
#lyrics .tabs {
	padding: 5px 0 0 5px;
}

/* 一覧 */
#lyrics .song_name {
	color: #333;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.2em;
	margin-bottom: 6px;
}
#lyrics .album_name {
	color: #666;
	font-size: 13px;
	line-height: 1.2em;
	margin-bottom: 5px;
}
#lyrics .comment {
	color: #666;
	font-size: 11px;
	font-weight: bold;
	text-align: right;
}

#lyrics .not_found {
	color: #333;
	font-size: 14px;
	font-weight: bold;
	padding: 30px 10px;
}
#lyrics .song_list li:last-child {
	border-bottom: 1px solid #999;
	margin-bottom:1px;
}

/*  歌詞ページ  */
#lyrics .song_name{
	font-size: 16px;
	margin: 0 0 5px;
}
#lyrics .lyricBox {
    position: relative;
}

#lyrics .lyricBox .text {
	color: #555;
	font-size: 12px;
	font-weight: bold;
	line-height: 1.7em;
	letter-spacing: -0.02em;
	padding: 10px 10px 20px;
}
#lyrics .contentsList.discList li:first-child {
	border-top: none;
}
#lyrics .contentsList.discList li:last-child {
	border-bottom: none;
}

#lyrics .barTit{
	color: #fff;
	font-size: 13px;
	font-weight: bold;
	padding: 17px 4px 14px;
}

#lyrics .lyricsList{
	background: #f5f5f5;
	padding: 12px 8px 4px;
}
#lyrics .lyricsList li{
	background: #fff;
	box-shadow: 0px 1px 2px #666;
	-moz-box-shadow: 0px 1px 2px #666;
	-webkit-box-shadow: 0px 1px 2px #666;
	padding: 10px;
	margin: 0 auto 8px;
}

#lyrics .lyricsList .userName{
	color: #999;
	font-size: 12px;
	border-bottom: 1px solid #eee;
	margin-bottom: 8px;
	padding-bottom: 5px;
}

#lyrics .lyricsList .userName span{
	color: #333;
	font-size: 14px;
	font-weight: bold;
}

#lyrics .lyricsList .tit{
	color: #333;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.3em;
	margin: 0 0 5px;
}

#lyrics .lyricsList .text{
	font-size: 13px;
	line-height: 130%;
	margin: 0 0 5px;
}

#lyrics .lyricsList .date{
	text-align: right;
	font-size: 11px;
	color: #999;
}

#lyrics .cNone{
	text-align: center;
	font-weight: bold;
	margin: 30px auto;

}


/* =======================================

	Q&A

========================================== */
#qanda .mainLead {
	padding: 10px;

	border-bottom: 1px solid #999;
}
#qanda .mainLead .txt {
	font-weight: bold;
	line-height: 1.5em;
	margin: 0 0 10px;
}
#qanda .qandaList a {
	line-height: 1.3em;
}

#qanda .qandaList .tit {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}
#qanda .qandaList .subTxt {
	margin: 0;
}
#qanda.detail .name {
	font-size: 0.9em;
}
#qanda .qandaList a .tit:before,
#qanda.detail .titArea .txt:before {
	content: 'Q.';
	color: #E5007F;
	font-weight: bold;
	margin: 0 3px 0 0;
}
#qanda.detail .txtArea .txt:before {
	content: 'A.';
	color: #009FEA;
	font-weight: bold;
	margin: 0 3px 0 0;
}

/* =======================================

	デコメ

========================================== */

#deco{
	padding: 0;
}

#deco .catName{
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	padding: 20px 0 0;
	margin: 0 auto 10px;
}

#deco .contentsList {
	clear: both;
	overflow: hidden;
	padding: 10px 10px 0;
	margin: 0 auto 10px;
}



#deco .contentsList li {
	width: 32%;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	border-bottom: none;
	text-align: center;
	float: left;
	margin: 0px 2% 8px 0px;
}

#deco .contentsList li:nth-child(even) {
	background: #fff;
}

#deco .decoParts li{
	width: 100%;
}


#deco .contentsList li:after{
	display: none;
}

#deco .contentsList li a{
	text-align: center;
	display: box;
	display: -webkit-box;
	display: -moz-box;
	-webkit-box-pack: center;
	-moz-box-pack: center;
	box-pack: center;
	-webkit-box-align: center;
	-moz-box-align: center;
	box-align: center;
	border: 1px solid #cccccc;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	border-radius: 8px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	padding: 5px;
	margin: 0 auto;
}
#deco .contentsList li:nth-child(3n+3){
	margin:0px 0px 8px 0;
}


#deco .contentsList a{
	display: block;
	border: 1px solid #ccc;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	margin: 0 auto 10px;
	color: #333;
	padding: 15px;
}
#deco .contentsList .thumb{
	width: auto;
	float: none;
}

#deco .dummy{
	background-position: center;
}

#deco .detail .pict_box{
	text-align: center;
	padding: 35px 0 60px;
}


#deco .contentsList .name{
	font-size: 13px;
	font-weight: bold;
	line-height: 130%;
	border-left: 3px solid #222;
	padding: 5px 0 5px 7px;
	margin: 0 0 10px;
}

#deco .contentsList .cat{
	font-size: 13px;
	line-height: 130%;
	color: #888;
	margin: 0 0 5px;
}

#deco .sub_tit{
	color: #333;
	font-size: 13px;
}


/* form */
.extMdlFormGnrtrSP {
	padding: 10px;
}
.extMdlFormGnrtrSP select {
	width: 90%;
	height: 37px;
	color: #333;
	font-size: 15px;
	font-weight: bold;
	border:none;
	background:none;
	overflow: hidden
	-webkit-appearance:none;
}
.extMdlFormGnrtrSP select:after {
	font-family: ;
	content: '\f48b';
}


/* tableList
------------------------- */
.tableList {
    display: inline-block;
    margin: 0 0 30px;
    border: 1px solid #ddd;
}
.tableList th,
.tableList td {
	padding: 10px 15px;
	border-bottom: 1px solid #ddd;
}
.tableList th {
    border-right: 1px solid #ddd;
    background: #eee;
}
.tableList td {
    text-align: right;
    font-weight: bold;
    font-size: 1.25em;
    letter-spacing: .05em;
    min-width: 6em;
}
.tableList tr:last-child > *{border-bottom: none;}


/* 2022.05
------------------------- */
.formListStyleNormal .formTit{
	font-size: 16px;
	color: inherit;
	font-weight: bold;
	letter-spacing: 0.05em;
	margin-bottom: .5em;
}

.formConfirmNormalStyle{
  box-sizing: border-box;
	    padding: 0 10px;
}

.formConfirmNormalStyle dt{
  border-top: none !important;
  background: none !important;
  border: none;
  width: 100%;
  font-weight: bold !important;
  font-size: 16px !important;
  padding: 12px 0 0 !important;
  box-sizing: border-box;
}
.formConfirmNormalStyle dt::after{
	display: none !important;
}
.formConfirmNormalStyle dd{
  display: block !important;
  padding: 5px 0 20px !important;
  box-sizing: border-box;
	background: none !important;
}
.formConfirmNormalStyle dd:last-child{
  padding-bottom: 0;
}
.formConfirmNormalStyle dd a{
  text-decoration: underline;
  color: inherit;
}
.formConfirmNormalStyle .noteBox{
	background: none;
}


.detail__alignment{
	margin:0 0 3em;
}

.detail__alignment li.textbox {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5em 0;
    border-bottom: solid 1px #ddd;
}

.alignment__area {
	position:relative;
	width: 50%;
    text-align: right;
    margin-left: auto;
}

.alignment__area .ui-toggle-switch{
	position:absolute;
	transform:translate(0, -50%);
	top:50%;
	right:0;
	margin:0;
}

.alignment__area input[type="submit"]{
	margin: 0;
	background: none !important;
	text-indent: -9999px;
	position:relative;
	z-index:1;
	padding: 0 !important;
    line-height: 2.5em;
	width:100% !important;
}

.alignment__caution{
	padding:1.5em;
	background:#fcfcfc;
	font-size:.9em;
}

.page--changecredit #header {
    color:#444;
    box-shadow: 0px 0px 1px 1px rgb(0 0 0 / 10%);
    -moz-box-shadow: 0px 0px 1px 1px rgba(0,0,0,0.1);
    -webkit-box-shadow: 0px 0px 1px 1px rgb(0 0 0 / 10%);
}

.page--changecredit #header .tit{
    color:#000;
}

.page--changecredit #header .tit h1 {
    letter-spacing:0.1em;
	color: #aaa;
}
.page--changecredit .detail {
    padding:1.5em;
}

.page--changecredit .formList{
	border:none;
    background:none;
}

.page--changecredit .formArea .formTit{
	margin-bottom:1em;
}

.page--changecredit .formList input,
.page--changecredit .formList select {
	border: 1px solid #ccc;
	border-radius: 5px;
	margin:0.1em 0 0.2em;
    padding: 0.5em
}

.page--changecredit .formList dd{
	margin-bottom:1em;
}

.page--changecredit .formList .subTxt{
	padding:0;
}

.page--changecredit .formList.confirm {
	background:none;
}

.page--changecredit .formList.confirm dd,
.page--changecredit dd.statusConfirm{
	background:#f5f5f5;
	padding:1em;
	font-size:16px;
	border-radius:5px;
}

.page--changecredit .formList dt{
	color:#999;
	font-weight:bold;
}
.page--changecredit .formList.confirm .tit{
	width:auto;
}

.page--changecredit .blockTit{
	margin-bottom:0.3em;
}

/* reCAPTURE */

#alertBoxRecaptcha{
	background: #fff0ea;
    color: #f33;
    border: 1px solid #F32;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    padding: 1em;
    margin: 1.5em auto;
}

#alertBoxRecaptcha .error_txt{
  font-size:.9em;
  margin:1em 0;
}

#alertBoxRecaptcha ul li{
	position:relative;
	padding-left:1em;
}

#alertBoxRecaptcha ul li:before{
	content:'';
	margin-right:.3em;
	background:#f32;
	width:.5em;
	height:.5em;
	border-radius:50rem;
	position:absolute;
	transform:translate(0, -50%);
	top:50%;
	left:0;
}


/* loading aniamtion */

.loading {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(255, 255, 255, 0.5);
    z-index: 99;
}

.loading span {
    border-radius: 50%;
    width: 5em;
    height: 5em;
    display: block;
    font-size: 10px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -2.5em 0 0 -2.5em;
    text-indent: -9999em;
    border-top: 0.75em solid rgba(0, 0, 0, 0.15);
    border-right: 0.75em solid rgba(0, 0, 0, 0.15);
    border-bottom: 0.75em solid rgba(0, 0, 0, 0.15);
    border-left: 0.75em solid #222;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-animation: loading 1.1s infinite linear;
    animation: loading 1.1s infinite linear;
}

@keyframes loading {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

.page--billing details{
	margin-bottom:1em;
}

.page--billing details > .formArea{
	max-height:0;
	transition:max-height .5s, opacity .3s;
	opacity:0;
	background:#fafafa;
	padding:1.5em;
}

.page--billing details[open] > .formArea{
	max-height:1000px;
	transition:max-height .5s, opacity .3s;
	opacity:1;
}

.page--billing .formArea .formList{
	padding:1.5em;
	background:none;
	padding:1em 0 0 !important;
	margin:0;
	border:none;
}

.page--billing details summary {
	display: block;
	list-style: none;
  }

.page--billing details summary::-webkit-details-marker{
	display:none;
}

.page--billing .blockTit{
	color: #666;
    padding: .5em;
    font-weight: bold;
    background: none;
    border-bottom: solid 1px #ccc;
    text-align: left;
	position:relative;
	cursor:pointer;
}

.page--billing details .blockTit:after{
	content:'';
	width:.5em;
	height:.5em;
	border-right:solid 1px;
	border-bottom:solid 1px;
	rotate:45deg;
	position:absolute;
	transform:translate(0, -50%);
	top:50%;
	right:1em;
}

.page--billing .section.regist > .blockTit{
	opacity:.4;
	pointer-events: none;
	margin-bottom:0;
}

.page--billing .caution{
	color:#c22;
	font-size:.85em;
}

.page--billing .btn .main{
	margin:0 auto;
}

.page--billing .formArea .formList select{
	width:100%;
	padding:.5em;
	font-size:14px;
}

.page--billing .section.regist > .btn,
.page--billing .detail.mypage > .btn{
	margin-top:2.5em;
}

.page--billing .item_txt{
	margin-bottom:2em;
	text-align:center;
	font-size:.85em;
}

.page--billing .item_txt strong{
	font-size:1.3em;
	font-weight:bold;
	margin:0 .5em;
}

.page--billing .item_txt span{
	display:block;
}

.page--billing.archive .txtArea{
	text-align:center;
}

.page--billing.archive .spmode{
	text-align:center;
	margin-top:2em;
}

.page--billing.confirm #header h1{
	background:none;
}

.page--billing.confirm h1 img{
	height:min(20vh, 300px);
	object-fit: contain;
}



