/*共通
---------------------------------------------------------------------------*/
html, body { min-height: 100%; }
body {
	margin: 0px;
	padding: 0px;
	color: #303030;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 18px;
	-webkit-text-size-adjust: none;
	background:#FFF;
}

img {border: none;max-width: 100%;height: auto;vertical-align: middle;}

a       {color: #666;}
a:hover {color: #db1010;}

.box           {max-width:950px;margin:0 auto;}
.box2          {max-width:800px;margin:0 auto;}
.box2 h2       { margin:0; padding:0;}
.box2 p        { margin:0; padding:0;}
.txc           {text-align:center;}
.sb-container  {width:85%;margin: 0 auto;}

.container {width: 90%; max-width: 950px; margin: 0 auto;}
header     {height:80px;
background: #ba1532;
background: -moz-linear-gradient(top,  #ba1532 0%, #ba1532 4%, #fcfcfc 4%, #d7dcd9 100%);
background: -webkit-linear-gradient(top,  #ba1532 0%,#ba1532 4%,#fcfcfc 4%,#d7dcd9 100%);
background: linear-gradient(to bottom,  #ba1532 0%,#ba1532 4%,#fcfcfc 4%,#d7dcd9 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ba1532', endColorstr='#d7dcd9',GradientType=0 );
}

#logo     {float:left;}
#logo img {width:200px; padding-top:26px; padding-left:20px;}
#okge     {float:right;}
#okge img {width: 88px;padding-top:20px; padding-right:20px;}

.contents p { padding: 0px 20px 14px;	/*上、左右、下への余白*/ }
.pstn-rl { position: relative; }

.clm_2-1 {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
}

.txtC { text-align: center;}
.txtR { text-align: right;}
.txtL { text-align: left;}
.txtB { font-weight: bold;}
.txt-rd { color: #AF1D31;}
.txt-grn { color: #009764;}
.txt-blk { color: #333;}
.txt-ofw { color: #f2e2e2;}
.txt-w { color: white;}

.txt-S {font-size: 0.8rem; line-height: 1.2;}
.txt-M {font-size: 1.2rem; line-height: 1.5;}
.txt-L {font-size: 2rem; line-height: 1.3;}

@media (min-width: 768px) {
	.clm_2-1 {
		flex-direction: row;
	}
	.clm_2-1 > div {
		width: 47%;
	}
}

/*メイン
---------------------------------------------------------------------------*/
.hero_wrap {
    font-family: source-han-sans-japanese, sans-serif;
    font-style: normal;
    letter-spacing: -2px;
    padding-top: 2em;
	background: url(/sp/images/dmbg.png) top repeat-x;
}
.hero_wrap > .container {
    padding: 0 1.5em 1.5em;
}
.hero_wrap h1 {
    font-size: 2.8em;
    color: #333;
    font-weight: 900;
    letter-spacing: -1.5px;
    margin-top: 10px;
    line-height: 1;
}
.hero_wrap h1.copy_s {
    font-size: 1.3em;
    line-height: 1.1;
    font-weight: 500;
    letter-spacing: -0.5px;
}
.wrap-bnr_cmp {
	margin-top: 2em;
}
.wrap-bnr_cmp a {
    display: block;
    text-decoration: none;
}
.con-num-dsclmr {
    font-size: 14px;
	letter-spacing: 0.1px;
	line-height: 1.3;
}
.obi {
	border-bottom: 20px solid #ba1532;
	padding: 0 0 2em;

}

@media (min-width:768px) {
    .hero_wrap h1 {
        font-size: 80px;
    }
    .hero_wrap h1.copy_s {
        font-size: 30px;
    }
    .wrap-percentage {
        margin: 2.5em 0 1em;
        position: relative;
        width: 100%;
    }
    .inner-percentage {
        margin-top: 0;
     }
     .wrap-bnr_cmp {
        width: 40%;
        bottom: 2em;
        display: inline-block;
        position: absolute;
        margin-top: 0em;
		left: 30px;
    }
    .wrap-btn-entry {
        flex-direction: row;
        justify-content: center;
    }
}

/*フッター
---------------------------------------------------------------------------*/
footer        {clear: both;text-align: left;font-size:12px;line-height:1.3em;}
footer .box   {padding: 20px 10px;}

.foot-gray    {width:100%;background:#333;color:#FFF;}
footer a      {text-decoration: none;	border: none;}
.copyr        {padding:10px;}


/*マージン
---------------------------------------------------------------------------*/
.mt01    {margin-top:1rem;}
.mt02    {margin-top:2rem;}
.mt03    {margin-top:3rem;}
.mt04    {margin-top:4rem;}
.mt05    {margin-top:5rem;}
.mt06    {margin-top:6rem;}

.mb01    {margin-bottom:1rem;}
.mb02    {margin-bottom:2rem;}
.mb03    {margin-bottom:3rem;}
.mb04    {margin-bottom:4rem;}
.mb05    {margin-bottom:5rem;}
.mb06    {margin-bottom:6rem;}


.w30-40  {width:30%}
.w30-50  {width:30%}
.w40-50  {width:40%}
.w50-60  {width:50%}
.w50-70  {width:50%}
.w60-70  {width:60%}
.w70-80  {width:70%}

.w50p    {width:50%}
.w60p    {width:60%}
.w70p    {width:70%}
.w80p    {width:80%}



/*　上へ戻るボタン
---------------------------------------------------------------------------*/
.pagetop {
    display: none;
    position: fixed;
    bottom: 30px;
    right: 15px;
}
.pagetop a {
    display: block;
    background-color: #ccc;
    text-align: center;
    color: #222;
    font-size: 12px;
    text-decoration: none;
    padding: 5px 10px;
	filter:alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5;
}
.pagetop a:hover {
    display: block;
    background-color: #b2d1fb;
    text-align: center;
    color: #fff;
    font-size: 12px;
    text-decoration: none;
    padding:5px 10px;
	filter:alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5;
}

.sankaku{
	width: 0;
	height: 0;
	border: 60px solid transparent;
	border-top: 50px solid #ba1532;
	margin: 0 auto -60px auto;
}

.sankaku2{
	width: 0;
	height: 0;
	border: 30px solid transparent;
	border-top: 30px solid #eb6100;
	margin: 0 auto -25px auto;
}

.tbox {position:absolute; display:none; padding:14px 17px; z-index:900}
.tinner {padding:15px; -moz-border-radius:5px; border-radius:5px; background:#fff url(../img/preload.gif) no-repeat 50% 50%; border-right:1px solid #333; border-bottom:1px solid #333}
.tmask {position:absolute; display:none; top:0px; left:0px; height:100%; width:100%; background:#000; z-index:800}
.tclose {position:absolute; top:0px; right:0px; width:30px; height:30px; cursor:pointer; background:url(../img/close.png) no-repeat}
.tclose:hover {background-position:0 -30px}

.s-window{ font-size:12px; line-height:110%; margin:10px; padding:0;}

.box2 ul       {padding-left:1em; text-align:left; border:#c1c1c1 solid 1px; padding:0.5em 0.5em 0.5em 1.5em;}
.box2 ul li    {text-indent:-1em;list-style-type:none; font-size:0.9em;}

.box2 h3.int       {margin:3em 1em 0 1em;font-size:16px;border-bottom:solid 2px #ba1532; text-align:left; line-height:1.6em;}
p.cod1         {text-align:left;font-size: 1em;margin:1em 1.2em 0 1.4em;}

.cont-ttl {
    font-size: 40px;
    text-align: center;
    line-height: 1.2;
    font-size: 2.3em;
    letter-spacing: -1.5px;
}


/* 横並びボタン
---------------------------------------------------------------------------*/
ul.kdemo-bt    {display:-webkit-flex;display:flex;width:100%;list-style-type:none;margin:0;padding:0; border:none; background:none;}
ul.kdemo-bt li {width:50%;margin:0;padding:0; text-indent:0;}


/*画面サイズ480px以下
---------------------------------------------------------------------------*/
@media screen and (max-width:520px) {

body  {font-size: 16px;}
.box2 {font-size:12px;line-height:1.4em;}

.w30-40  {width:40%}
.w30-50  {width:50%}
.w40-50  {width:50%}
.w50-60  {width:60%}
.w50-70  {width:70%}
.w60-70  {width:70%}
.w70-80  {width:80%}

.w50p    {width:50%}
.w60p    {width:80%}
.w70p    {width:90%}
.w80p    {width:100%}

header     {height:50px;}

#menubar li a {padding: 15px 10px;}

#logo img {width:144px; padding-top:15px; padding-left:15px;}
#okge img {width:72px; padding-top:10px; padding-right:10px;}

.redarrow img {width:45px;}
.sb-container {width:100%;}

.bxslider .bx-pager-item a {width:8px;height:8px;}

.sankaku{
	width: 0;
	height: 0;
	border: 30px solid transparent;
	border-top: 25px solid #f3cfd5;
	margin: 0 auto -40px auto;
}
}