@charset "utf-8";
@import url(http://fonts.googleapis.com/css?family=Montserrat+Alternates:700);

/* CSS Document */
/* =Reset default browser CSS. Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */

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, font, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	border: 0;
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
}
:focus {/* remember to define focus styles! */
	outline: 0;
}
body {
	line-height: 1;
}
ul {
	list-style: none;
}

ol{
	list-style:decimal;
}
table {/* tables still need 'cellspacing="0"' in the markup */
	border-collapse: separate;
	border-spacing: 0;
}
caption, th, td {
	font-weight: normal;
	text-align: left;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: "";
}
blockquote, q {
	quotes: "" "";
}
a img {
	border: 0;
}
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}

/*Structure----------------------------------------------------
*/
body, input, textarea {
	color: #333;
    font-size:18px;
	font-weight: 500;
	line-height: 1.625;
	word-wrap: break-word;
}

section{
	margin-bottom:20px;
}
img{
    display:block;
}
p{
	margin-bottom:20px;
}


a{
	color:#6699AA;
    text-decoration:none;
}

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

.clearfix > *{
	float:left;
	display:block;
}
ul.clearfix > li{
	list-style-type:none;
}

input[type=text]{
	background:#FFF;
	font-size:14px;
    border:1px solid #AAA;
	border-radius:2px;
	color:#333;
    background:#FFF;
}

.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}
* html .clearfix             { zoom: 1; } /* IE6 */
*:first-child+html .clearfix { zoom: 1; } /* IE7 */

textarea{
	display:block;
	background-color:#ccc;
	color:#000;
	font-size:15px;
	width:80%;
}

.inline{
    display:inline;
}

.aside{
	font-size:13px;
}


.error{
	color:#F00;
	font-size:12px;
}



/* structure
=======================================================================================*/
body{
    background-color:#FFFDD2;
    font-family:"メイリオ",Meiryo,"Hiragino Maru Gothic Pro", "ヒラギノ角ゴW4",Osaka,"ＭＳ Ｐゴシック", "MS PGothic", verdana ,arial ,sans-serif;

}


.siteFooter > div{
    margin:0 auto;
}

.main{
    min-height:500px;
}

.mainContent{
    /*font-family:"メイリオ",Meiryo,"Hiragino Maru Gothic Pro", "ヒラギノ丸ゴW4",Osaka,"ＭＳ Ｐゴシック", "MS PGothic", verdana ,arial ,sans-serif;
    */
    
    /*font-family: "Times New Roman", "游明朝", YuMincho, "Hiragino Mincho ProN", "HG明朝B", "メイリオ", Meiryo, serif;
    */
    color:#333;
    margin:0 auto;
}

.mainContentWrapper{
    width: calc(100vw - 100px);
}



/*Header
=======================================================================================*/
.topBackground{
    display:block;
    width:100%;
    text-indent:-9999px;
    height:12px;
    background-image:url(../media/common/bgtop.png);
}

.siteHeader{
    padding-bottom:20px;
}
    
.home a{
	display:block;
    width:40px;
    height:230px;
    text-indent:-9999px;
    background-image:url(../media/common/header.png);
}

.home{
    margin:10px 20px 20px 20px;
}

.siteHeader .railsMembership{
    float:right;
    margin-top:10px;
    
}

.siteHeader .railsMembership img{
    width:80px;
}

/* nav
=======================================================================================*/
.siteNavi{
    padding-top:10px;
}


.siteNavi li{
    margin-right:20px;
}

.siteNavi a{
    height:25px;
    display:block;
    text-indent:-9989px;
    background-image:url(../media/common/sprite.png);

    /*font-family: "Times New Roman", "游明朝", YuMincho, "Hiragino Mincho ProN", "HG明朝B", "メイリオ", Meiryo, serif;
    */
}

.siteNavi .navMember a{
    width:98px;
    background-position:-120px 0;
}
.siteNavi .navMember a:hover, .siteNavi .navMember.current a{
    background-position:-120px -25px;
}


.siteNavi .navAbout a{
    width:184px;
    background-position:-218px 0;
}
.siteNavi .navAbout a:hover, .siteNavi .navAbout.current a{
    background-position:-218px -25px;
}

.siteNavi .navBpoint a{
    width:158px;
    background-position:-501px 0;
}

.siteNavi .navBpoint a:hover, .siteNavi .navBpoint.current a{
    background-position:-501px -25px;
}

.siteNavi .navSecretariat a{
    width:163px;
    background-position:-659px 0;
}
.siteNavi .navSecretariat a:hover, .siteNavi .navBpoint.current a{
    background-position:-659px -25px;
}

/*Footer
=======================================================================================*/
.siteFooter > .container{
	background-color:#2e2e2e;
	color:#FFF;
	font-size:14px;
	padding:10px;
}
 
.siteFooter a{
    color:#FFF;
}

.siteFooter a:hover{
	text-decoration:underline;
}

.siteFooter h1, .siteFooter li{
	margin-right:10px;
}


/* members
=======================================================================================*/

.membersList li{
    margin:0 15px 15px 0;
    position:relative;
    padding:3px;
}

.membersList li a{
    display:block;
}

.membersList .selectedCircle{
    position:absolute;
    top:0;
    left:0;
    text-indent:-9999px;
    width:166px;
    height:166px;
}

.membersList .selectedCircle:hover{
    background-image:url(../media/member/circle.png);
    background-position:0 0;
}

.membersList li a img{
    width:160px;
}

.membersList .name a{
    font-size:20px;
    color:#333;
    text-decoration:none;
    line-height:1.2;
}

.membersList .job{
    font-size:12px;
    line-height:1.0;
}

.membersList .name a:hover{
    color:#FF6700;
}

/*purchase buttons*/
.buttons a{
    display:block;
    color:#333;
    background-color:#FF9966;
    border-radius:2px;
    text-align:right;
    text-decoration:none;
    padding:3px 10px;
    margin-top:5px;
    font-weight:bold;
    font-size:16px;
}

.buttons a:hover{
    background-color:#FFAABB;
    color:#111;
 }
 


/* content
=======================================================================================*/
.content{
    margin-left:10px;
    width:300px;
}
.content h2{
    font-weight:bold;
    font-size:25px;
    color:#3A4F3B;
}

.content .price{
    color:#C16D1A;
    font-size:20px;
    font-weight:bold;
}

.content .description{
    font-size:16px;
}

.content .period{
    font-size:14px;
    margin-top:10px;
}

.content .period span{
    font-size:15px;
    font-weight:bold;
    color:#2E7041;
}

.content .contentHeadline a{
    
}

.content .buttons a{
    text-align:center;
    margin:0;
}