@charset "utf-8";

/*=====================================================================================
	
	Document    : basic.css
	Description : ブラウザスタイルのリセットと基本設定 
 
=====================================================================================*/

/*---------------------------------------------------------------------------

   Reset

---------------------------------------------------------------------------*/

* { margin:0; padding:0; }

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

body {
    line-height:1;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
	display:block;
}

nav ul {
    list-style:none;
}

blockquote, q {
    quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
	outline:none;
}

ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

mark {
    background-color:#ff9;
    color:#000; 
    font-style:italic;
    font-weight:bold;
}

del {
    text-decoration: line-through;
}

abbr[title], dfn[title] {
    border-bottom:1px dotted inherit;
    cursor:help;
}

address {
	font-style:normal;
}

/*
table {
    border-collapse:collapse;
    border-spacing:0;
}
*/

th,td {
	empty-cells:show;
}

hr {
    display:none;
}

input, select {
    vertical-align:middle;
}

img {
	vertical-align:top;
}

img.fitimg {
	max-width:100%;
	height:auto;
}


/*---------------------------------------------------------------------------

   Default

---------------------------------------------------------------------------*/

body {
	text-align:center;
	color:#3b3b3b;
	line-height:120%;
}

body,input,textarea,select,option,
th,td,
.fsize-n {
	font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
	font-size:15px;
}

@media screen and (max-width:640px) {
	body,input,textarea,select,option,
	th,td,
	.fsize-n {
		font-size:14px;
	}
}

.cl:after {
	content:"";
	display:block;
	height:0;
	clear:both;
}

.line0 {
	line-height:0;
	font-size:0;
}

.line120 { line-height:120%; }
.line140 { line-height:140%; }
.line160 { line-height:160%; }
.line180 { line-height:180%; }
.line200 { line-height:200%; }

.blk {
	display:-moz-inline-box;
	display:inline-block;
	/display:inline;
	/zoom:1;
}

.un:hover {
	text-decoration:underline;
}

.at-list {
	list-style:none;
}
.at-list li {
	margin-left:1em;
	text-indent:-1em;
}

#lineup-font-size-sampler {
	line-height:0;
	font-size:0;
}


/*-------------------------------------------------------
   Font color + Link
-------------------------------------------------------*/

.fc-yellow { color:#decb6b; }
.fc-red { color:#e5686c; }
.fc-pink { color:#e4afc0; }
.fc-rgreen { color:#a9ca6c; }
.fc-green { color:#81b587; }
.fc-orange { color:#deb36b; }
.fc-rblue { color:#7ab9d8; }
.fc-blue { color:#87a0ca; }
.fc-rgray { color:#a0a0a0; }
.fc-gray { color:#878787; }
.fc-normal { color:#3c3c3c; }
.fc-white { color:#fff; }

a:link { color:#87a0ca; }
a:visited { color:#87a0ca; }
.linkBox:hover a,
a:hover { color:#7ab9d8; text-decoration:none; }

.efc,
.efc a,
.efc img
.efc-img img,
.efc-img .imgLiquid,
.linkBox .efc {
	filter:alpha(opacity=100);
	opacity:1;
	-moz-opacity:1;

    -webkit-transition:opacity 0.2s linear;
       -moz-transition:opacity 0.2s linear;
         -o-transition:opacity 0.2s linear;
            transition:opacity 0.2s linear;
}

.efc:hover,
.efc a:hover,
.efc:hover img,
.efc-img:hover img,
.efc-img:hover .imgLiquid,
.linkBox:hover .efc {
	filter:alpha(opacity=75);
	opacity:0.75;
	-moz-opacity:0.75;
}

.zoom {
	background-color:#000;
	position:relative;
}

.zoom-ic {
	width:24px;
	height:24px;
	position:absolute;
	right:5px;
	bottom:5px;
	background:url(../image/ic-zoom.png) no-repeat right bottom;
	z-index:1;
}

.zoom a {
	display:block;
	filter:alpha(opacity=100);
	opacity:1;
	-moz-opacity:1;

    -webkit-transition:opacity 0.2s linear;
       -moz-transition:opacity 0.2s linear;
         -o-transition:opacity 0.2s linear;
            transition:opacity 0.2s linear;
}

.zoom:hover a {
	filter:alpha(opacity=50);
	opacity:0.5;
	-moz-opacity:0.5;
}

.fc-normal a,
.fc-normal a:visited,
.fc-normal,
.fc-normal:visited,
.fc-normal a:hover,
.fc-normal:hover { color:#3c3c3c !important; }

.fc-white a,
.fc-white a:visited,
.fc-white a:hover,
.fc-white,
.fc-white:visited,
.fc-white:hover { color:#fff !important; }

.fc-rblue a,
.fc-rblue a:visited,
.fc-rblue a:hover,
.fc-rblue,
.fc-rblue:visited,
.fc-rblue:hover { color:#7ab9d8 !important; }

.hover-tx,
.hoverbox-tx {
	white-space:nowrap;
	position:relative;
	height:1em;
	line-height:1;
	overflow:hidden;

	display:-moz-inline-box;
	display:inline-block;
	/display:inline;
	/zoom:1;
}

.hoverbox-tx {
	width:100%;
}

.hover-tx a,
.hoverbox-inner {
	display:block;
}

.hover-tx-on,
.hoverbox-tx-on {
	width:100%;
	display:block;
	position:absolute;
	left:auto;
	top:1.5em;
}


/*-------------------------------------------------------
   button
-------------------------------------------------------*/

.hbt {
	font-weight:bold;
	display:-moz-inline-box;
	display:inline-block;
	/display:inline;
	/zoom:1;
}

.hbt span {
	display:block;
	padding:10px 0;
}

.hbt a {
	text-decoration:none !important;
	padding-left:20px;
	margin:0 25px;
}


.hbt-blue {
	background-color:#87a0ca;
}
.hbt-blue span {
	border-bottom-width:4px;
	border-bottom-style:solid;
	border-bottom-color:rgba(0,0,0,0.1);
}
.hbt-blue:hover span,
.hbt-blue span.hover {
	background-color:#5a5a5a;
	border-bottom-color:#5a5a5a;
}
.hbt-blue a {
	background:url(../image/lm-white.png) no-repeat center left;
}


.hbt-rblue {
	background-color:#7ab9d8;
}
.hbt-rblue span {
	border-bottom-width:4px;
	border-bottom-style:solid;
	border-bottom-color:rgba(0,0,0,0.1);
}
.hbt-rblue:hover span,
.hbt-rblue span.hover {
	background-color:#5a5a5a;
	border-bottom-color:#5a5a5a;
}
.hbt-rblue a {
	background:url(../image/lm-white.png) no-repeat center left;
}


.hbt-white {
	background-color:#fff;
}
.hbt-white span {
	border-bottom-width:4px;
	border-bottom-style:solid;
	border-bottom-color:#c4dfec;
}
.hbt-white:hover span,
.hbt-white span.hover {
	background-color:#5a5a5a;
	border-bottom-color:#5a5a5a;
}
.hbt-white a {
	background:url(../image/lm-rblue.png) no-repeat center left;
}
.hbt-white:hover a {
	background:url(../image/lm-white.png) no-repeat center left;
}


.hbt-black {
	background-color:#5a5a5a;
}
.hbt-black span {
	border-bottom-width:4px;
	border-bottom-style:solid;
	border-bottom-color:rgba(0,0,0,0.2);
}
.hbt-black:hover span,
.hbt-black span.hover {
	background-color:#7ab9d8;
	border-bottom-color:#7ab9d8;
}
.hbt-black a {
	background:url(../image/lm-white.png) no-repeat center left;
}


/*-------------------------------------------------------
   Font size
-------------------------------------------------------*/

.fsize-min { font-size:10px; }
.fsize-ss { font-size:11px; }
.fsize-s { font-size:12px; }
.fsize-m { font-size:18px; }
.fsize-l { font-size:21px; }
.fsize-xl { font-size:25px; }
.fsize-2l { font-size:29px; }
.fsize-3l { font-size:33px; }
.fsize-max { font-size:38px; }

@media screen and (max-width:420px) {
	.fsize-m { font-size:15px; }
	.fsize-l { font-size:18px; }
	.fsize-xl { font-size:21px; }
	.fsize-2l { font-size:25px; }
	.fsize-3l { font-size:29px; }
	.fsize-max { font-size:33px; }
}


/*-------------------------------------------------------
   Float
-------------------------------------------------------*/

.fl {
    float: left;
    margin-right: 20px;
}

.fr {
    float: right;
    margin-left: 20px;
}


/*-------------------------------------------------------
   Margin + Padding
-------------------------------------------------------*/

.ake-pd10 { padding:10px !important; }
.ake-pd15 { padding:15px !important; }
.ake-pd20 { padding:20px !important; }
.ake-pd30 { padding:30px !important; }

.ake-pd-t10 { padding-top:10px !important; }
.ake-pd-t20 { padding-top:20px !important; }
.ake-pd-t30 { padding-top:30px !important; }
.ake-pd-t40 { padding-top:40px !important; }
.ake-pd-t50 { padding-top:50px !important; }

.ake-pd-b10 { padding-bottom:10px !important; }
.ake-pd-b20 { padding-bottom:20px !important; }
.ake-pd-b30 { padding-bottom:30px !important; }
.ake-pd-b40 { padding-bottom:40px !important; }
.ake-pd-b50 { padding-bottom:50px !important; }

.ake-mg-t10 { margin-top:10px !important; }
.ake-mg-t20 { margin-top:20px !important; }
.ake-mg-t30 { margin-top:30px !important; }
.ake-mg-t40 { margin-top:40px !important; }
.ake-mg-t50 { margin-top:50px !important; }

.ake-mg-b10 { margin-bottom:10px !important; }
.ake-mg-b20 { margin-bottom:20px !important; }
.ake-mg-b30 { margin-bottom:30px !important; }
.ake-mg-b40 { margin-bottom:40px !important; }
.ake-mg-b50 { margin-bottom:50px !important; }


@media screen and (max-width:640px) {
	.ake-pd10 { padding:2% !important; }
	.ake-pd15 { padding:2.5% !important; }
	.ake-pd20 { padding:3% !important; }
	.ake-pd30 { padding:4% !important; }
	
	.ake-pd-t10 { padding-top:3% !important; }
	.ake-pd-t20 { padding-top:4% !important; }
	.ake-pd-t30 { padding-top:5% !important; }
	.ake-pd-t40 { padding-top:6% !important; }
	.ake-pd-t50 { padding-top:7% !important; }

	.ake-pd-b10 { padding-bottom:3% !important; }
	.ake-pd-b20 { padding-bottom:4% !important; }
	.ake-pd-b30 { padding-bottom:5% !important; }
	.ake-pd-b40 { padding-bottom:6% !important; }
	.ake-pd-b50 { padding-bottom:7% !important; }

	.ake-mg-t10 { margin-top:3% !important; }
	.ake-mg-t20 { margin-top:4% !important; }
	.ake-mg-t30 { margin-top:5% !important; }
	.ake-mg-t40 { margin-top:6% !important; }
	.ake-mg-t50 { margin-top:7% !important; }

	.ake-mg-b10 { margin-bottom:3% !important; }
	.ake-mg-b20 { margin-bottom:4% !important; }
	.ake-mg-b30 { margin-bottom:5% !important; }
	.ake-mg-b40 { margin-bottom:6% !important; }
	.ake-mg-b50 { margin-bottom:7% !important; }
}

@media screen and (max-width:420px) {
	.ake-pd10 { padding:3% !important; }
	.ake-pd15 { padding:3.5% !important; }
	.ake-pd20 { padding:4% !important; }
	.ake-pd30 { padding:5% !important; }
	
	.ake-pd-t10 { padding-top:5% !important; }
	.ake-pd-t20 { padding-top:6% !important; }
	.ake-pd-t30 { padding-top:7% !important; }
	.ake-pd-t40 { padding-top:8% !important; }
	.ake-pd-t50 { padding-top:9% !important; }

	.ake-pd-b10 { padding-bottom:5% !important; }
	.ake-pd-b20 { padding-bottom:6% !important; }
	.ake-pd-b30 { padding-bottom:7% !important; }
	.ake-pd-b40 { padding-bottom:8% !important; }
	.ake-pd-b50 { padding-bottom:9% !important; }

	.ake-mg-t10 { margin-top:5% !important; }
	.ake-mg-t20 { margin-top:6% !important; }
	.ake-mg-t30 { margin-top:7% !important; }
	.ake-mg-t40 { margin-top:8% !important; }
	.ake-mg-t50 { margin-top:9% !important; }

	.ake-mg-b10 { margin-bottom:5% !important; }
	.ake-mg-b20 { margin-bottom:6% !important; }
	.ake-mg-b30 { margin-bottom:7% !important; }
	.ake-mg-b40 { margin-bottom:8% !important; }
	.ake-mg-b50 { margin-bottom:9% !important; }
}

