/*------------------------------------*\
	TYPOGRAPHY
\*------------------------------------*/
@font-face {
    font-family: 'NotoSansR';
    src: url('css/NotoSansCJKjp-Regular.otf');
}
@font-face {
    font-family: 'NotoSanM';
    src: url('css/NotoSansCJKjp-Medium.otf');
}
@font-face {
    font-family: 'NotoSans';
    src: url('css/NotoSansCJKjp-Black.otf');
}
.mincho{
	font-family:'Noto Serif Japanese',"游明朝 Medium", "Yu Mincho Medium", YuMincho, "游明朝体", 'ヒラギノ明朝 Pro W3','Hiragino Mincho Pro','HGS明朝E','ＭＳ Ｐ明朝', serif;
}
.gothic{
	font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体",'Lucida Grande','Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
}

 /* ふんわりアルファオーバー */
.alpha a img{
	transition:all 0.5s ease-in-out;
}

.alpha a:hover img{
	opacity:0.7;
}

/* link color */
.red {
    color: #cc0000;
}
.red a:link {
    color: #cc0000;
    text-decoration: none;
}
.red a:visited {
    color: #cc0000;
    text-decoration: none;
}
.red a:hover {
    color: #FF0000;
    text-decoration: underline;
}
.red a:active {
    color: #cc0000;
    text-decoration: none;
}
.pink {
    color: #F894B1;
}
.green {
    color: #8CC63F;
}
.orange {
    color: #f15a24;
}
.blue {
    color: #3FA9F5;
}
.bg_pink {
    background-color: #F894B1 !important;
}
.bg_green {
    background-color: #8CC63F !important;
}
.bg_orange {
    background-color: #f15a24 !important;
}
.bg_blue {
    background-color: #3fa9f5a3 !important;
}
.bg_red {
    background-color: #3FA9F5 !important;
    color: #fff;
}
.blk {
    color: #000000;
}
.blk a:link {
    color: #000000;
    text-decoration: underline;
}
.blk a:visited {
    color: #323232;
    text-decoration: underline;
}
.blk a:hover {
    color: #000000;
    text-decoration: underline;
}
.blk a:active {
    color: #000000;
    text-decoration: underline;
}
.white {
    color: #ffffff;
}
.white a:link {
    color: #ffffff;
    text-decoration: underline;
}
.white a:visited {
    color: #ffffff;
    text-decoration: underline;
}
.white a:hover {
    color: #ffffff;
    text-decoration: underline;
}
.white a:active {
    color: #ffffff;
    text-decoration: underline;
}
/* ===============================================
   clearfix
=============================================== */
.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
    overflow: hidden;
    font-size: 0.1em;
    line-height: 0;
}
.clearfix {
    min-height: 1px;
}
* html .clearfix {
    height: 1px;
    /*\*/ /*/
  height: auto;
  overflow: hidden;
  /**/
}
.clearfix {
    display: block;
}
/* ===============================================
	padding
=============================================== */
/* top */
.pt5 {
    padding-top: 5px !important;
}
.pt10 {
    padding-top: 10px !important;
}
.pt15 {
    padding-top: 15px !important;
}
.pt20 {
    padding-top: 20px !important;
}
.pt25 {
    padding-top: 25px !important;
}
.pt30 {
    padding-top: 30px !important;
}
.pt35 {
    padding-top: 35px !important;
}
.pt40 {
    padding-top: 40px !important;
}
.pt50 {
    padding-top: 50px !important;
}
/* left */
.pl5 {
    padding-left: 5px !important;
}
.pl10 {
    padding-left: 10px !important;
}
.pl15 {
    padding-left: 15px !important;
}
.pl20 {
    padding-left: 20px !important;
}
.pl25 {
    padding-left: 25px !important;
}
.pl30 {
    padding-left: 30px !important;
}
.pl35 {
    padding-left: 35px !important;
}
.pl40 {
    padding-left: 40px !important;
}
.pl50 {
    padding-left: 50px !important;
}
.pl150 {
    padding-left: 150px !important;
}
/* right */
.pr5 {
    padding-right: 5px !important;
}
.pr10 {
    padding-right: 10px !important;
}
.pr15 {
    padding-right: 15px !important;
}
.pr20 {
    padding-right: 20px !important;
}
.pr25 {
    padding-right: 25px !important;
}
.pr30 {
    padding-right: 30px !important;
}
.pr35 {
    padding-right: 35px !important;
}
.pr40 {
    padding-right: 40px !important;
}
.pr100 {
    padding-right: 100px !important;
}
.pr150 {
    padding-right: 150px !important;
}
/* bottom */
.pb0 {
    padding-bottom: 0px !important;
}
.pb5 {
    padding-bottom: 5px !important;
}
.pb10 {
    padding-bottom: 10px !important;
}
.pb15 {
    padding-bottom: 15px !important;
}
.pb20 {
    padding-bottom: 20px !important;
}
.pb25 {
    padding-bottom: 25px !important;
}
.pb30 {
    padding-bottom: 30px !important;
}
.pb35 {
    padding-bottom: 35px !important;
}
.pb40 {
    padding-bottom: 40px !important;
}
.pb50 {
    padding-bottom: 50px !important;
}
.pb60 {
    padding-bottom: 60px !important;
}
.pb70 {
    padding-bottom: 70px !important;
}
.pb80 {
    padding-bottom: 80px !important;
}
/* all */
.pad5 {
    padding: 5px !important;
}
.pad10 {
    padding: 10px !important;
}
.pad15 {
    padding: 15px !important;
}
.pad20 {
    padding: 20px !important;
}
.pad25 {
    padding: 25px !important;
}
.pad30 {
    padding: 30px !important;
}
/* no */
.no_pad {
    padding: 0;
}
/* ===============================================
	padding sp
=============================================== */
@media screen and (max-width: 767px) {
    /* top */
    .pt5_sp {
        padding-top: 5px !important;
    }
    .pt10_sp {
        padding-top: 10px !important;
    }
    .pt15_sp {
        padding-top: 15px !important;
    }
    .pt20_sp {
        padding-top: 20px !important;
    }
    .pt25_sp {
        padding-top: 25px !important;
    }
    .pt30_sp {
        padding-top: 30px !important;
    }
    .pt35_sp {
        padding-top: 35px !important;
    }
    .pt40_sp {
        padding-top: 40px !important;
    }
    .pt50_sp {
        padding-top: 50px !important;
    }
    /* left */
    .lsp5_sp {
        padding-left: 5px !important;
    }
    .lsp10_sp {
        padding-left: 10px !important;
    }
    .lsp15_sp {
        padding-left: 15px !important;
    }
    .lsp20_sp {
        padding-left: 20px !important;
    }
    .lsp25_sp {
        padding-left: 25px !important;
    }
    .lsp30_sp {
        padding-left: 30px !important;
    }
    .lsp35_sp {
        padding-left: 35px !important;
    }
    .lsp40_sp {
        padding-left: 40px !important;
    }
    .lsp50_sp {
        padding-left: 50px !important;
    }
    .lsp150_sp {
        padding-left: 150px !important;
    }
    /* right */
    .pr5_sp {
        padding-right: 5px !important;
    }
    .pr10_sp {
        padding-right: 10px !important;
    }
    .pr15_sp {
        padding-right: 15px !important;
    }
    .pr20_sp {
        padding-right: 20px !important;
    }
    .pr25_sp {
        padding-right: 25px !important;
    }
    .pr30_sp {
        padding-right: 30px !important;
    }
    .pr35_sp {
        padding-right: 35px !important;
    }
    .pr40_sp {
        padding-right: 40px !important;
    }
    .pr100_sp {
        padding-right: 100px !important;
    }
    .pr150_sp {
        padding-right: 150px !important;
    }
    /* bottom */
    .pb0_sp {
        padding-bottom: 0px !important;
    }
    .pb5_sp {
        padding-bottom: 5px !important;
    }
    .pb10_sp {
        padding-bottom: 10px !important;
    }
    .pb15_sp {
        padding-bottom: 15px !important;
    }
    .pb20_sp {
        padding-bottom: 20px !important;
    }
    .pb25_sp {
        padding-bottom: 25px !important;
    }
    .pb30_sp {
        padding-bottom: 30px !important;
    }
    .pb35_sp {
        padding-bottom: 35px !important;
    }
    .pb40_sp {
        padding-bottom: 40px !important;
    }
    .pb50_sp {
        padding-bottom: 50px !important;
    }
    .pb60_sp {
        padding-bottom: 60px !important;
    }
    .pb70_sp {
        padding-bottom: 70px !important;
    }
    .pb80_sp {
        padding-bottom: 80px !important;
    }
    /* all */
    .pad5_sp {
        padding: 5px !important;
    }
    .pad10_sp {
        padding: 10px !important;
    }
    .pad15_sp {
        padding: 15px !important;
    }
    .pad20_sp {
        padding: 20px !important;
    }
    .pad25_sp {
        padding: 25px !important;
    }
    .pad30_sp {
        padding: 30px !important;
    }
    /* no */
    .no_pad_sp {
        padding: 0;
    }
}
/* ===============================================
	margin
=============================================== */
/* top */
.mt5 {
    margin-top: 5px !important;
}
.mt10 {
    margin-top: 10px !important;
}
.mt15 {
    margin-top: 15px !important;
}
.mt20 {
    margin-top: 20px !important;
}
.mt25 {
    margin-top: 25px !important;
}
.mt30 {
    margin-top: 30px !important;
}
.mt35 {
    margin-top: 35px !important;
}
.mt40 {
    margin-top: 40px !important;
}
.mt50 {
    margin-top: 50px !important;
}
/* left */
.ml5 {
    margin-left: 5px !important;
}
.ml10 {
    margin-left: 10px !important;
}
.ml15 {
    margin-left: 15px !important;
}
.ml20 {
    margin-left: 20px !important;
}
.ml25 {
    margin-left: 25px !important;
}
.ml30 {
    margin-left: 30px !important;
}
.ml35 {
    margin-left: 35px !important;
}
.ml40 {
    margin-left: 40px !important;
}
.ml50 {
    margin-left: 50px !important;
}
.ml150 {
    margin-left: 150px !important;
}
/* right */
.mr5 {
    margin-right: 5px !important;
}
.mr10 {
    margin-right: 10px !important;
}
.mr15 {
    margin-right: 15px !important;
}
.mr20 {
    margin-right: 20px !important;
}
.mr25 {
    margin-right: 25px !important;
}
.mr30 {
    margin-right: 30px !important;
}
.mr35 {
    margin-right: 35px !important;
}
.mr40 {
    margin-right: 40px !important;
}
.mr100 {
    margin-right: 100px !important;
}
.mr150 {
    margin-right: 150px !important;
}
/* bottom */
.mb0 {
    margin-bottom: 0px !important;
}
.mb5 {
    margin-bottom: 5px !important;
}
.mb10 {
    margin-bottom: 10px !important;
}
.mb15 {
    margin-bottom: 15px !important;
}
.mb20 {
    margin-bottom: 20px !important;
}
.mb25 {
    margin-bottom: 25px !important;
}
.mb30 {
    margin-bottom: 30px !important;
}
.mb35 {
    margin-bottom: 35px !important;
}
.mb40 {
    margin-bottom: 40px !important;
}
.mb50 {
    margin-bottom: 50px !important;
}
.mb60 {
    margin-bottom: 60px !important;
}
.mb70 {
    margin-bottom: 70px !important;
}
.mb80 {
    margin-bottom: 80px !important;
}
.mb90 {
    margin-bottom: 90px !important;
}
.mb100 {
    margin-bottom: 100px !important;
}
.mb110 {
    margin-bottom: 110px !important;
}
.mb120 {
    margin-bottom: 120px !important;
}
.mb130 {
    margin-bottom: 130px !important;
}
/* ===============================================
	margin sp
=============================================== */
@media screen and (max-width: 767px) {
    /* top */
    .mt5_sp {
        margin-top: 5px !important;
    }
    .mt10_sp {
        margin-top: 10px !important;
    }
    .mt15_sp {
        margin-top: 15px !important;
    }
    .mt20_sp {
        margin-top: 20px !important;
    }
    .mt25_sp {
        margin-top: 25px !important;
    }
    .mt30_sp {
        margin-top: 30px !important;
    }
    .mt35_sp {
        margin-top: 35px !important;
    }
    .mt40_sp {
        margin-top: 40px !important;
    }
    .mt50_sp {
        margin-top: 50px !important;
    }
    /* left */
    .ml5_sp {
        margin-left: 5px !important;
    }
    .ml10_sp {
        margin-left: 10px !important;
    }
    .ml15_sp {
        margin-left: 15px !important;
    }
    .ml20_sp {
        margin-left: 20px !important;
    }
    .ml25_sp {
        margin-left: 25px !important;
    }
    .ml30_sp {
        margin-left: 30px !important;
    }
    .ml35_sp {
        margin-left: 35px !important;
    }
    .ml40_sp {
        margin-left: 40px !important;
    }
    .ml50_sp {
        margin-left: 50px !important;
    }
    .ml150_sp {
        margin-left: 150px !important;
    }
    /* right */
    .mr5_sp {
        margin-right: 5px !important;
    }
    .mr10_sp {
        margin-right: 10px !important;
    }
    .mr15_sp {
        margin-right: 15px !important;
    }
    .mr20_sp {
        margin-right: 20px !important;
    }
    .mr25_sp {
        margin-right: 25px !important;
    }
    .mr30_sp {
        margin-right: 30px !important;
    }
    .mr35_sp {
        margin-right: 35px !important;
    }
    .mr40_sp {
        margin-right: 40px !important;
    }
    .mr100_sp {
        margin-right: 100px !important;
    }
    .mr150_sp {
        margin-right: 150px !important;
    }
    /* bottom */
    .mb0_sp {
        margin-bottom: 0px !important;
    }
    .mb5_sp {
        margin-bottom: 5px !important;
    }
    .mb10_sp {
        margin-bottom: 10px !important;
    }
    .mb15_sp {
        margin-bottom: 15px !important;
    }
    .mb20_sp {
        margin-bottom: 20px !important;
    }
    .mb25_sp {
        margin-bottom: 25px !important;
    }
    .mb30_sp {
        margin-bottom: 30px !important;
    }
    .mb35_sp {
        margin-bottom: 35px !important;
    }
    .mb40_sp {
        margin-bottom: 40px !important;
    }
    .mb50_sp {
        margin-bottom: 50px !important;
    }
    .mb60_sp {
        margin-bottom: 60px !important;
    }
    .mb70_sp {
        margin-bottom: 70px !important;
    }
    .mb80_sp {
        margin-bottom: 80px !important;
    }
}
/* ===============================================
	wide
=============================================== */
.w10 {
    width: 10% !important;
}
.w20 {
    width: 20% !important;
}
.w30 {
    width: 30% !important;
}
.w40 {
    width: 40% !important;
}
.w45 {
    width: 45% !important;
}
.w50 {
    width: 50% !important;
}
.w60 {
    width: 60% !important;
}
.w70 {
    width: 70% !important;
}
.w80 {
    width: 80% !important;
}
.w90 {
    width: 90% !important;
}
.w100 {
    width: 100% !important;
}
/* ===============================================
	wide
=============================================== */
@media screen and (max-width: 767px) {
    .w10_sp {
        width: 10% !important;
    }
    .w20_sp {
        width: 20% !important;
    }
    .w30_sp {
        width: 30% !important;
    }
    .w40_sp {
        width: 40% !important;
    }
    .w45_sp {
        width: 45% !important;
    }
    .w50_sp {
        width: 50% !important;
    }
    .w60_sp {
        width: 60% !important;
    }
    .w70_sp {
        width: 70% !important;
    }
    .w80_sp {
        width: 80% !important;
    }
    .w90_sp {
        width: 90% !important;
    }
    .w100_sp {
        width: 100% !important;
    }
}
/* ===============================================
	etc
=============================================== */
/* font */
.small {
    font-size: 12px;
    font-weight: normal;
}
.f16 {
    font-size: 16px;
}
.big {
    font-size: 140%;
}
.big2 {
    font-size: 200%;
}
.bold {
    font-weight: bold;
}
/* line-height */
.line2 {
    line-height: 2;
}
/* text-align */
.center {
    text-align: center;
}
.right {
    text-align: right;
}
@media screen and (max-width: 767px) {
.big {
    font-size: 110%;
}
.big2 {
    font-size: 130%;
}
	
}
/* ===============================================
	img
=============================================== */
img.midlle {
    vertical-align: middle;
}
.imageright {
    float: right;
    padding-left: 20px;
    padding-bottom: 20px;
}
.imageleft {
    float: left;
    padding-right: 20px;
    padding-bottom: 20px;
}
@media screen and (max-width: 767px) {
    .imageright {
        float: none;
        padding: 0 0 20px;
        text-align: center;
        width: 100%;
        margin: 0 auto;
    }
    .imageleft {
        float: none;
        padding: 0 0 20px;
        text-align: center;
        width: 100%;
        margin: 0 auto;
    }
}
/* ===============================================
	ALIGN
=============================================== */
.ta_c { text-align:center; }
.ta_r { text-align:right; }
.ta_l { text-align:left; }


/* ===============================================
	br
=============================================== */
/* sp only */
.sp-br {
    display: none;
}
@media screen and (max-width:894px) {
    .sp-br {
        display: block;
    }
}
/* PC only */
.pc-br {
    display: block;
}
@media screen and (max-width:894px) {
    .pc-br {
        display: none;
    }
}
/* sumaho
------------------------------------------------------------*/
.vpc {
    display: inherit;
}
.vpc894 {
    display: inherit;
}
.vsp {
    display: none;
}
.vsp894 {
    display: none;
}
@media screen and (max-width: 767px) {
    .vpc {
        display: none;
    }
    .vsp {
        display: inherit;
    }
}
@media screen and (max-width: 894px) {
    .vpc894 {
        display: none;
    }
    .vsp894 {
        display: inherit;
    }
}