@charset "utf-8";
/* CSS Document */

/* ----------------------------------------------------
    reset
---------------------------------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video, main {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    vertical-align: baseline;
}


/* 全体レイアウト
-------------------------------- */

html {
	width:100%;
	background:#fff;
	color:#444;
}

ul,li { list-style-type: none;}


#wrapper {
	min-width:980px;
}
#contents {
    width: 980px;
	margin:0 auto;
	position:relative;
}

a {
	text-decoration: none;
}

audio, canvas, caption, embed, img, object, td, th, video {
    vertical-align: top;
}

/* ヘッダー
-------------------------------- */
header {
	width: 100%;
    background: url(../img/bg_header.png) no-repeat center center;
    padding: 27px 0 10px;
	border-top: 8px solid #f44040;
	height:145px;
}
header .h_inner {
	width:980px;
	margin:0 auto;
	position:relative;
}

header .Head_txt {
	position: absolute;
    top: 18px;
    left: 140px;
    font-size: 14px;
    color: #dc0000;
    font-weight: 700;
}
header .h_inner nav {
	position:absolute;
	top: 0;
    right: 30px;
}
header .h_inner nav ul {
	width:100px;
	height:40px;
}
header .h_inner nav ul li {
	display:inline-block;
}
header .h_inner nav ul li + li {
	margin-left:12px;
}

/* ぱんくず
-------------------------------- */

.breadcrumb {
	font-size:11px;
	text-align:left;
}
.breadcrumb ul {
	padding: 5px 0 15px;
}
.breadcrumb li {
	display:inline;
	list-style: none;
}

.breadcrumb li:after {
	content: '>';
	padding: 0 0 0 8px;
}

.breadcrumb li:last-child:after{
	content: '';
}

.breadcrumb li a {
    text-decoration: underline;
}

/* コンテンツ
-------------------------------- */


/* メイン
-------------------------------- */
.main_cont {
    float: left;
    margin-right: -250px;
    width: 100%;
}
.detail-detailHeader {
    padding-top: 10px;
	margin-right: 270px;
}
.detail-detailHeader h1 {
    padding-top: 10px;
    font-weight: 400;
	font-size:12px;
}

.detail-detailHeader h2 {
    font-size: 18px;
    padding-bottom: 10px;
	font-weight: 700;
}
.detail-detailHeader .pt02 {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid #ccc;
}
.detail-detailHeader .detailHead_txt {
	font-size:12px;
}
.detail-detailHeader .pt03 {
    padding-top: 30px;
}
.detail-detailHeader .pt03 img {
    max-width: 100%;
    height: auto;
}

.title {
    font-size: 18px;
	font-weight:700;
}
.title:before {
    width: 6px;
    height: 18px;
    margin: -4px 5px 0 0;
    background: #f44040;
}
.detail-detailHeader .pt01 li p span:before, .title:before {
    content: "";
    display: inline-block;
    vertical-align: middle;
}
.detail-detailHeader .award-Box {
	position: relative;
}
.head_ttl,.award-name,.lyrics,.comment {
	position: absolute;
}
.detail-detailHeader .head_ttl {
	font-size: 26px;
	font-weight: 700;
	top: 36px;
    left: 140px;
	color: #fff;
}
.detail-detailHeader .award-name {
	font-size: 12px;
	top: 110px;
    left: 60px;
}
.detail-detailHeader .award-name::before {
    content: "♪";
    color: #dc0000;
	font-size: 20px;
    vertical-align: middle;
}
.detail-detailHeader .lyrics {
	font-size: 14px;
	font-weight: 700;
	top: 135px;
    left: 78px;
    line-height: 1.8;
}
.detail-detailHeader .comment {
	width: 275px;
	height: 85px;
	font-size: 12px;
	top: 275px;
    left: 66px;
	line-height: 1.8;
}

/* 概要
-------------------------------- */
.detail-basicInfo {
    padding-top: 20px;
	margin-right: 270px;
	font-size:12px;
}
.detail-basicInfo .txt_red {
	color:#f44040;
	margin-top:10px;
}

.detail-basicInfo .txt_black {
    color: #141414 !important;
}

.detail-basicInfo .pt01 {
    padding-top: 10px;
    display: table;
    table-layout: fixed;
    width: 100%;
}
.detail-basicInfo .pt01a .bg01 {
    border: 1px solid #ccc;
    border-radius: 4px;
    overflow: hidden;
}

.detail-basicInfo .pt01a {
    width: 100%;
    display: table-cell;
    vertical-align: top;
}
.detail-basicInfo .pt01b {
    display: table-cell;
    width: 250px;
    padding-left: 15px;
    vertical-align: top;
}
.detail-basicInfo .pt01a .bg01>dl>dt {
    padding: 8px 5px 5px;
    display: table-cell;
    width: 65px;
    vertical-align: middle;
    text-align: center;
    font-weight: 700;
    background: #f2f2f2;
}

.detail-basicInfo .pt01a .bg01>dl>dd .ul01+p, .detail-basicInfo .pt01a .bg01>dl>dd>div ul, .detail-basicInfo .pt01a .bg01>dl>dd>ul {
    padding-top: 10px;
    clear: both;
}
.detail-basicInfo .pt01a .bg01>dl>dd>ul:first-child {
    padding-top: 0;
}
.detail-basicInfo .pt01a .bg01>dl>dd span {
    color: #f44040;
}
.detail-basicInfo .pt01a .bg01>dl>dd {
    display: table-cell;
    padding: 10px;
    overflow: hidden;
    color: #141414;
}
.detail-basicInfo .pt01a .bg01>dl {
    border-top: 1px solid #ccc;
    display: table;
    width: 100%;
}
.detail-basicInfo .pt01a .bg01>dl:first-child {
    border-top: none;
    border-radius: 4px 0 0;
}

.detail-basicInfo .pt01a .bg01>dl>dt span {
    display: block;
    position: relative;
    padding-top: 35px;
	font-size:10px;
}

.detail-basicInfo .pt01a .bg01>dl>dd .ul01 li {
    padding-top: 0;
    float: left;
    border: 1px solid #ffbb69;
    margin: 0 3px 3px 0;
    border-radius: 4px;
}
.detail-basicInfo .pt01a .bg01>dl>dd .ul01 li span {
    display: block;
    padding: 2px 3px 0;
    font-size: 11px;
    color: #9e734c;
}

.detail-basicInfo .pt01a .bg01>dl>dt span:before {
    content: "";
    width: 30px;
    height: 30px;
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -15px;
    background: url(../img/icon.png) no-repeat;
    -moz-background-size: 100% auto;
    -webkit-background-size: 100% auto;
    background-size: 100% auto;
}

.detail-basicInfo .pt01a .bg01>.dl02>dt span:before {
    background-position: 0 -40px;
}

.detail-basicInfo .pt01a .bg01>.dl03>dt span:before {
    background-position: 0 -80px;
}
.detail-basicInfo .pt01b {
    display: table-cell;
    width: 250px;
    padding-left: 15px;
    vertical-align: top;
}
.detail-basicInfo .pt01b li {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.detail-basicInfo .pt01b .on p,.detail-basicInfo .pt01b li>p {
    background: #fff;
    border: 1px solid #ddd;
}
.detail-basicInfo .pt01b li>p {
    border: 1px solid #ddd;
    padding: 2px;
}
.detail-basicInfo .pt01b li li>p {
    border: 1px solid #fff;
    padding: 2px;
}
.detail-basicInfo .pt01b>ul img {
    width: 100%;
    height: auto;
}
.detail-basicInfo .pt01b li>p+span {
    display: block;
    text-align: center;
    padding-top: 5px;
    font-size: 11px;
}
.detail-basicInfo .pt01b ul ul {
    padding-top: 5px;
    clear: both;
}
.detail-basicInfo .pt01b .ul01 li li {
    float: left;
    width: 33.3333%;
}
.detail-basicInfo .pt01b li li>p a {
    display: inline-block;
    height: 100%;
}
.detail-basicInfo .pt01b li ul:after {
    clear: both;
}


/* 応募リンク
-------------------------------- */
.detail-entryLink {
    padding-top: 30px;
	margin-right: 270px;
}
.detail-entryLink .bg01 {
    border: 1px solid #ccc;
    border-radius: 4px;
    background: #ffefd6;
}
.detail-entryLink .pt01 {
    padding: 10px;
    background: #fff;
    border-radius: 4px 4px 0 0;
}
.detail-entryLink .pt01a {
    float: left;
}
.detail-entryLink .pt01a li dd, .detail-entryLink .pt01a li dl {
    padding-top: 5px;
}
.detail-entryLink .pt01a li dt {
    font-size: 14px;
    padding-left: 25px;
    position: relative;
    vertical-align: middle;
}
.detail-entryLink .pt01a li dt span {
    padding-right: 20px;
    color: #b4b4b5;
}
.detail-entryLink .pt01a li dt:before {
    content: "";
    height: 21px;
    left: 0;
    margin-top: -11px;
    position: absolute;
    top: 50%;
    width: 16px;
    background: url(../img/icon_parody.png) no-repeat;
    -moz-background-size: 16px auto;
    -webkit-background-size: 16px auto;
    background-size: 16px auto;
}
.detail-entryLink .pt01a li dt em {
    margin-left: 5px;
}
.detail-entryLink .pt01a li dd, .detail-entryLink .pt01a li dl {
    padding-top: 5px;
}
.detail-entryLink .pt01a li dd ul {
    float: left;
    border: 1px solid #ddd;
    border-radius: 2px;
    font-size: 0;
    line-height: 25px;
    padding: 2px;
    width: 180px;
    margin-right: 10px;
}
.detail-entryLink .pt01a li dd li {
    display: inline-block;
    width: 20%;
    padding-left: 2px;
    vertical-align: middle;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.detail-entryLink .pt01a li dd li:first-child {
    padding-left: 0;
}
.detail-entryLink .pt01a li dd li:first-child span, .detail-entryLink .pt01a li dd li:first-child span img {
    border-radius: 3px 0 0 3px;
}
.detail-entryLink .pt01a li dd li:last-child span, .detail-entryLink .pt01a li dd li:last-child span img {
    border-radius: 0 3px 3px 0;
}
.detail-entryLink .pt01a li dd li.on span {
    display: block;
    background: #ffba69;
}
.detail-entryLink .pt01a li dd li span {
    display: block;
    background: #eaeaea;
}
.detail-entryLink .pt01a li dd li:first-child span img {
    border-radius: 3px 0 0 3px;
}
.detail-entryLink .pt01a li dd li:last-child span img {
    border-radius: 0 3px 3px 0;
}
.detail-entryLink .pt01a li p {
    float: left;
    text-align: center;
}
.detail-entryLink .pt01a li p em {
    display: block;
    position: relative;
    padding: 5px 21px;
    background: #aaa;
    color: #fff;
    border-radius: 4px;
    font-size: 11px;
    width: 105px;
}
.detail-entryLink .pt01 li p em:before {
    content: "";
    position: absolute;
    top: 50%;
    left: -6px;
    margin-top: -5px;
    border-top: solid 5px transparent;
    border-bottom: solid 5px transparent;
    border-right: solid 8px #aaa;
}

.detail-entryLink .pt01b {
    float: right;
    width: 325px;
}
.detail-entryLink .pt01b a {
    display: block;
    padding: 12px 10px;
    font-size: 18px;
    color: #543535;
	text-align: center;
}
.detail-entryLink .pt01b a:before {
    background: url(../img/star.png) 0 0/100% auto no-repeat;
    content: "";
    display: inline-block;
    height: 26px;
    margin-right: 5px;
    margin-top: -5px;
    vertical-align: middle;
    width: 26px;
}
.detail-entryLink .pt02 {
    padding: 10px;
	position:relative;
}
.detail-entryLink .pt02 ul {
    font-size: 0;
    text-align: center;
}
.detail-entryLink .pt02 li {
    display: inline-table;
    width: 50%;
    padding-top: 10px;
    font-size: 12px;
    -moz-box-sizing: border-box;
    -sebkit-box-sizing: border-box;
    box-sizing: border-box;
    vertical-align: middle;
}
.detail-entryLink .pt02 .li02 {
    display: inline-block;
    padding-left: 5px;
}
.detail-entryLink .pt02 .li02>div {
    display: table;
    width: 100%;
	font-weight: 700;
}
.detail-entryLink .pt02 .li02 a {
    /*padding: 15px 10px;*/
    font-size: 20px;
    margin-left: 5px;
}
.detail-entryLink .pt02 li a.color01, .detail-entryLink .pt02 li a.color05 {
    display: table-cell;
    vertical-align: middle;
    height: 58px;
    background-color:#b6b6b6;
    border-radius:6px;
    font-size:16px
}

.detail-entryLink .pt02>.p03 {
    padding-top: 10px;
}
.detail-entryLink .pt02>.p03 .span01 {
    /*float: left;*/
    text-align: left;
}
.detail-entryLink .pt02>.p03 span {
    display: block;
    /*width: 50%;*/
    font-size: 11px;
    color: #666;
}

.detail-entryLink img.btn_icon {
    position:absolute;
	background: url(../img/btn_icon.png) no-repeat;
	top: -5px;
    left: 105px;
}
.detail-entryLink img.cyu_1 {
    position:absolute;
	background: url(../img/cyuichi_01.png) no-repeat;
	right: -18px;
    bottom: -6px;
}

/* 動画
-------------------------------- */

.detail-movie {
	margin-bottom: 20px;
	padding-top: 30px;
	margin-right: 270px;
}
.detail-movie .movie {
	margin: 0 auto;
    width: 672px !important;
    height: 378px !important;
    border: #444 2px solid;
}


/* 編集部注目ワード
-------------------------------- */
.detail-attention-word {
	margin-right: 270px;
	padding-top: 20px;
}


.detail-attention-word .pt02 dd ul {
    padding: 5px 0 0 15px;
}
.detail-attention-word .pt02 dd li {
    display: inline-block;
    font-size: 11px;
    letter-spacing: normal;
}
.detail-attention-word .pt02 dd li span {
	color: #9E734C;
    border: 1px solid #ffbb69;
    display: block;
    text-align: center;
    margin: 0 2px 1px 0;
    padding: 3px;
    line-height: 1;
    border-radius: 4px;
    width: 132px;
    box-sizing: border-box;
}


/* 当選者の替え歌発表
-------------------------------- */
.parody-winners {
	margin-right: 270px;
	padding: 20px 0 60px 0;
}

.parody-winners .grad-wrap {
	position: relative;
}
.parody-winners .grad-trigger {
	z-index: 2;
	position: absolute;
	right: 0;
	bottom: -70px;
	left: 0;
	width: 60%;
	margin: auto;
	background: #fff;
	background: -moz-linear-gradient(top,#fff 0,#e5e5e5 100%);
	background: -webkit-linear-gradient(top,#fff 0,#e5e5e5 100%);
	background: linear-gradient(to bottom,#fff 0,#e5e5e5 100%);
	border: 1px solid #c7c7c7;
	-moz-box-shadow: 0 0 0 #c7c7c7,0 -2px 0 #c7c7c7 inset;
	-webkit-box-shadow: 0 0 0 #c7c7c7, 0 -2px 0 #c7c7c7 inset;
	box-shadow: 0 0 0 #c7c7c7, 0 -2px 0 #c7c7c7 inset;
	border-radius: 6px;
	color: #444;
	font-size: 18px;
	font-weight:700;
	text-align: center;
	cursor: pointer;
	transition: .2s ease;
	height: 58px;
	line-height: 58px;
	box-sizing: border-box;
}
.parody-winners .down::before {
    content: "";
    width: 16px;
    height: 10px;
    background: url(../img/g-btm-arrow.png) no-repeat;
    -moz-background-size: 16px auto;
    -webkit-background-size: 16px auto;
    background-size: 16px auto;
    position: absolute;
    right: 15px;
    bottom: 23px;
}
.parody-winners .grad-trigger::after {
    content: "もっと表示する";
}
.parody-winners .grad-item {
	position: relative;
	overflow: hidden;
}
.parody-winners .grad-item.is-hide {
	height: 570px;
}
.parody-winners .grad-item::before {
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
    content: "";
    width: 100%;
    height: 60px; /*グラデーションで隠す高さ*/
    background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
	background: linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
	z-index:2;
}
.parody-winners .grad-trigger.is-show {
	bottom: -72px;
}
.parody-winners .grad-trigger.is-show::after {
    content: "閉じる";
}
.parody-winners .grad-trigger.is-show.down::before {
    transform: rotate(180deg);
}
.parody-winners .grad-trigger.is-show + .grad-item::before {
    display: none;
}
.parody-winners-Box {
	text-align:center;
}
.parody-winners-Box ul.f_left {
	width:650px;
	margin:0 auto;
}
.parody-winners-Box ul.f_left li {
	float:left;
	margin:25px 28px 0 0;
}
.parody-winners-Box ul.f_left li:nth-child(2n) {
    margin-right: 0;
}
.parody-winners-Box .award-Box {
	position: relative;
	text-align:left;
}
.parody-winners-Box .head_ttl {
	font-size: 26px;
	font-weight: 700;
	top: 37px;
    left: 140px;
	color: #fff;
}
.parody-winners-Box .award-name {
	font-size: 12px;
	top: 105px;
    left: 60px;
}
.parody-winners-Box .award-name::before {
    content: "♪";
    color: #dc0000;
	font-size: 20px;
    vertical-align: middle;
}
.parody-winners-Box .lyrics {
	font-size: 14px;
	font-weight: 700;
	top: 135px;
    left: 78px;
    line-height: 1.8;
}
.parody-winners-Box .comment {
	width: 275px;
	height: 85px;
	font-size: 12px;
	top: 275px;
    left: 66px;
	line-height: 1.8;
}
.parody-winners-Box .pt02 .head_ttl {
	font-size: 16px;
	font-weight: 700;
	top: 25px;
    left: 70px;
	color: #fff;
}
.parody-winners-Box .pt02 .award-name {
	font-size: 12px;
	top: 160px;
    left: 15px;
}
.parody-winners-Box .pt02 .lyrics {
	font-size: 14px;
	font-weight: 700;
	top: 75px;
    left: 30px;
    line-height: 1.8;
}
.parody-winners-Box .pt02 .award-name::before {
    content: "♪";
    color: #dc0000;
	font-size: 20px;
    vertical-align: middle;
}
.parody-winners .grad-trigger.is-show + .grad-item::before {
	display: none;
}

/* 募集情報
-------------------------------- */
.detail-recruitInfo {
	margin-right: 270px;
	padding-top: 20px;
	font-size: 12px;
}
.detail-recruitInfo .pt02 {
    padding-top: 10px;
}
.detail-recruitInfo .bg01 {
    border: 1px solid #ccc;
    border-radius: 4px;
    overflow: hidden;
}
.detail-recruitInfo .pt02 .bg01>dl:first-child {
    border-top: none;
    border-radius: 4px 0 0;
}
.detail-recruitInfo .pt02 .bg01>dl {
    border-top: 1px solid #ccc;
    display: table;
    width: 100%;
	position:relative;
}
.detail-recruitInfo .pt02 .bg01>dl>dt {
    padding: 8px 10px 5px;
    display: table-cell;
    width: 115px;
    vertical-align: middle;
    text-align: center;
    background: #f2f2f2;
}
.detail-recruitInfo .pt02 .bg01>dl>dt span {
    display: block;
    position: relative;
    padding-top: 35px;
	font-size:10px;
}
.detail-recruitInfo .pt02 .bg01>dl>dt span:before {
    content: "";
    width: 30px;
    height: 30px;
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -15px;
    background: url(../img/icon.png) no-repeat;
    -moz-background-size: 100% auto;
    -webkit-background-size: 100% auto;
    background-size: 100% auto;
}
.detail-recruitInfo .pt02 .bg01>dl>dt {
    padding: 8px 10px 5px;
    display: table-cell;
    width: 115px;
    vertical-align: middle;
    text-align: center;
    background: #f2f2f2;
	font-weight: 700;
}
.detail-recruitInfo .pt02 .bg01>dl>dd {
    display: table-cell;
    padding: 10px;
    vertical-align: middle;
    color: #141414;
}
.detail-recruitInfo .pt02 .bg01>.dl02>dt span:before {
    background-position: 0 -40px;
}
.detail-recruitInfo .pt02 .bg01>.dl03>dt span:before {
    background-position: 0 -80px;
}
.detail-recruitInfo .pt02 .bg01>.dl04>dt span:before {
    background-position: 0 -120px;
}
.detail-recruitInfo .pt02 dd .ul01 li {
    padding-top: 0;
    float: left;
    border: 1px solid #ffbb69;
    margin: 0 3px 3px 0;
    border-radius: 4px;
}
.detail-recruitInfo .pt02 dd .ul01 li span {
    display: block;
    padding: 2px 3px 0;
    font-size: 11px;
    color: #9e734c;
}

.detail-recruitInfo .pt02 .attention_post {
	margin:15px 0 20px;
}
.detail-recruitInfo .attention_post_Box {
	width:540px;
	display:none; /* キャンペーンスタートまで非表示   */
}
.detail-recruitInfo .attention_post_Box ul {
    font-size:0;
}
.detail-recruitInfo .attention_post_Box ul li {
    display:inline-block;
}
.detail-recruitInfo .attention_post_Box ul li img {
    width: 170px;
	margin:0 0 15px;
}
.attention_post_Box ul li + li {
	margin-left:15px;
}
section.deco { position:relative;}
.deco_01,.deco_02,.deco_03 { position:absolute;}
.deco_01 { left: -111px;bottom: -8px;}
.deco_02 { left:105px;bottom:255px;}
.deco_03 { right:250px;bottom:0;}

/* 利用規約
-------------------------------- */
.terms {
	margin-right: 270px;
	padding-top: 20px;
	font-size:11px;
}
.terms .bg01 {
    margin-top: 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
    overflow: hidden;
	background: #f2f2f2;
}
.terms h1 {
	margin:25px 0 25px 15px;
}
.terms .terms_Box {
	margin:10px;
	padding:10px;
	border: 1px solid #ccc;
    border-radius: 4px;
	background: #fff;
	color:#000;
	height:320px;
	box-sizing:border-box;
	overflow-y:scroll;
}
.terms .terms_Box p + ol {
	margin-top:20px;
}
.terms ol li + li {
	margin-top:20px;
}


/* サイド
-------------------------------- */
.side_cont {
    float: right;
    width: 250px;
}
.side_cm {
	margin-top:30px;
}
.side_cm,.side_post {
	padding: 5px;
    border: 1px solid #dcdcdc;
    border-radius: 4px;
    background: #fff;
}
.side_cm h2,.side_post h2 {
    padding: 5px 0;
    text-align: center;
    line-height: 16px;
	font-weight: 700;
}
.side_cm h2 {
	color:#e50000;
	background: #ffefd9;
	font-size:16px;
}
.side_cm p.side_cm_txt {
    padding: 10px 5px;
    font-size: 10px;
}
.side_cm p.side_cm_txt em {
    font-size: 11px;
    display: block;
    margin-bottom: 5px;
	font-weight: 700;
}
.side_post{
	margin-top: 20px;
	padding-bottom: 0;	
}
.side_post h2 {
	color:#444;
	background:#f2f2f2;
	font-size:12px;
}
.side_post p.side_post_txt {
    padding: 5px;
    font-size: 10px;
}
.side_post p.side_post_txt em {
    font-size: 11px;
    margin-bottom: 5px;
	font-weight: 700;
}
.side_post p.side_post_txt span {
    font-size: 8px;
	font-weight:normal;
}
.side_post_txt::before {
	content:"♪";
	color:#dc0000;
	font-size:13px;
}
.side_post .post-Box img {
	border:#dc0000 2px solid;
	width:64px;
	box-sizing:border-box;
	float:left;
	margin-left:5px;
}
.side_post .post-Box p {
	width: 158px;
    margin: 0 0 38px 78px;
    font-size: 10px;
}
.side_post p.m-btm54 { margin-bottom:54px;}

ul.post_inner li + li {
	border-top: #c6c6c6 1px solid;
    margin-top: 10px;
}

/* ボタン
-------------------------------- */

.o_btn,.w_btn {
    display: inline-block;
    text-decoration: none;
    border-radius: 5px;
	font-weight: 700;
	box-sizing:border-box;
	font-size: 18px;
    line-height: 1.4;
}
.o_btn {
    background: #ffa233;
    border-bottom: solid 2px #f28400;
    color: #FFF;
	text-shadow: 0 1px 2px rgba(0,0,0,.3);
    padding: 16px 0 0 12px;
	width: 280px;
	height: 80px;
}

.w_btn {
    background: #FFF;
    border: solid 2px #ffa233;
    color: #ffa233;
    padding: 14px 0 0 12px;
	box-shadow: 0 2px rgba(242,132,0);
	width: 248px;
	height:78px;
}

.o_btn:hover,.w_btn:hover,.st_btn a:hover,.st_btn_large a:hover,nav ul li a:hover,.contact_box a:hover,#top-btn a:hover,.b_txt a:hover,.b_btn a:hover,.accordion a:hover {
	opacity: 0.8;
    filter: alpha( opacity=80 );
    -ms-filter: "alpha( opacity=80 )";
}



/* common
-------------------------------- */


em, strong { font-weight: 700;}
/*.color01 {
    position: relative;
    background: #66cf5a;
    background: -moz-linear-gradient(top,#66cf5a 0,#48ae3a 100%);
    background: -webkit-linear-gradient(top,#66cf5a 0,#48ae3a 100%);
    background: linear-gradient(to bottom,#66cf5a 0,#48ae3a 100%);
    border: 1px solid #4ba82f;
    border-radius: 6px;
    -moz-box-shadow: 0 -1px 0 #478d36 inset;
    -webkit-box-shadow: 0 -1px 0 #478d36 inset;
    box-shadow: 0 -1px 0 #478d36 inset;
}*/
.color01, a.color01 {
    color: #fff;
}
.color03 {
    border: 1px solid #ccc;
    background: -moz-linear-gradient(top,#fff 0,#f1f1f1 100%);
    background: -webkit-linear-gradient(top,#fff 0,#f1f1f1 100%);
    background: linear-gradient(to bottom,#fff 0,#f1f1f1 100%);
    padding: 7px;
    text-shadow: 1px 1px 0 #fff;
    box-shadow: 0 -1px 0 #ccc inset;
	border-radius:6px;
}
.color01:after, .color02:after, .color05:after, .color07:after {
    content: "";
    display: block;
}
.color01:after, .color02:after, .color05:after {
    width: 10px;
    height: 16px;
    top: 50%;
    right: 3px;
    margin-top: -7px;
}
.color01:after {
    position: absolute;
    background: url(../img/w-arrow.png) 0 no-repeat;
    -moz-background-size: 8px auto;
    -webki-background-size: 8px auto;
    background-size: 8px auto;
}
.f_20 { font-size:20px;}




.m-btm { margin-bottom:20px;}
.m-top { margin-top:20px;}
.m-top15 { margin-top:15px;}
.m-top55 { margin-top:55px;}
.center { text-align: center;}

/* トップボタン
-------------------------------- */
#top-btn {
    display: block;
    position: fixed;
    right: 10px;
    bottom: 10px;
	z-index:100;

}
#top-btn a {
    display: block;
    width: 38px;
    height: 38px;
    border-radius: 4px;
    background: #dc0000;
    z-index: 2;
    text-align: center;
}
.totop {
    width: 36px;
    height: auto;
}



/* フッター
-------------------------------- */
footer {
	margin:60px auto 0;
	width:100%;
	background: url(../img/bg_footer.png) no-repeat center center;
	height:172px;
}

.simple-ftr {
    font-size: 10px;
    text-align: center;
    color: #444;
    width: 980px;
    border-top: 1px dotted #888;
    padding: 20px 0 0!important;
	margin:0 auto;
}

/* clearfix
-------------------------------- */
.clearfix {
	zoom: 1; /* IE5.5～E7 */
}
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
	font-size: 0;
	line-height: 0;
}






