@charset "UTF-8";
.d-block{
	display:block;
}
.d-table{
	display:table;
	margin:auto;
}
.d-table-child{
	display:table-cell;
	vertical-align:middle;
}
.va-top{
	vertical-align:top;
}
.relative{
	position:relative;
}
.absolute{
	position:absolute;
}
.ab-txt{
	position:absolute;
	top:20px;
	left:20px;
}
.w100{
	width:100%;
}
.font-meiryo{
	font-family: 'メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック',sans-serif;
}
.font-arial{
	font-family: Arial,sans-serif;
}
.font-yugo{
	font-family: "Yu Gothic","游ゴシック","游ゴシック体",'メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック',sans-serif;
}
@media all and (-ms-high-contrast:none) {
	.font-yugo {
		font-family: "メイリオ",Meiryo,"游ゴシック",YuGothic,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	}
}
.font-weight{
	font-weight: normal;
}
.font-bold{
	font-weight:bold;
}
.lh08{
	line-height:0.8!important;
}
.lh12{
	line-height:1.2;
}
.lh20{
	line-height:2.0;
}
.ex-small{
	font-size:0.5em;
}
.smaller{
	font-size:0.7em;
}
.small{
	font-size:0.9em;
}
.large{
	font-size:1.2em;
}
.ex-large{
	font-size:1.6em;
}
.ultra-large{
	font-size:2.2em;
}
.left{
	float: left!important;
}
.right,.ab-right{
	float: right!important;
}
.txt-center{
	text-align:center!important;
}
.txt-right{
	text-align:right!important;
}
.h110-130{
	height:90px;
}
.before_d {
	background: linear-gradient(transparent 80%, #F5E829 80%);
	display: inline;
}
.bg-white{
	background-color:#ffffff!important;
}
.bg-black{
	background-color:#000000!important;
}
.bg-darkgray{
	background-color:#646464!important;
}
.bg-gray{
	background-color:#efefef!important;
}
.bg-lightgray{
	background-color:#F2F2F2!important;
}
.bg-lightgray2{
	background-color:#F7F4ED!important;
}
.bg-red{
	background-color:#C1272D!important;
}
.bg-blue{
	background-color:#19638e!important;
}
.color-red{
	color:#C1272D!important;
}
.color-black{
	color:#000000!important;
}
.color-lightblack{
	color:#323232!important;
}
.color-gray{
	color:#999!important;
}
.color-white{
	color:#ffffff!important;
}
.color-blue{
	color:#19638e!important;
}
.mlr-auto{
	margin-left:auto!important;
	margin-right:auto!important
}
.mt-0{
	margin-top:0px!important;
}
.mt-5{
	margin-top:5px!important;
}
.mt-10{
	margin-top:10px!important;
}
.mt-20{
	margin-top:20px!important;
}
.mt-30{
	margin-top:30px!important;
}
.mt-50{
	margin-top:50px!important;
}
.mt-70{
	margin-top:70px!important;
}
.mt-100{
	margin-top:100px!important;
}
.mt-nega40{
	margin-top:-40px!important;
}
.mb-0{
	margin-bottom:0!important;
}
.mb-5{
	margin-bottom:5px!important;
}
.mb-10{
	margin-bottom:10px!important;
}
.mb-20{
	margin-bottom:20px!important;
}
.mb-30{
	margin-bottom:30px!important;
}
.mb-50{
	margin-bottom:50px!important;
}
.mb-70{
	margin-bottom:70px!important;
}
.ml-0{
	margin-left:0px!important;
}
.ml-20{
	margin-left:20px!important;
}
.mr-0{
	margin-right:0px!important;
}
.mr-10{
	margin-right:10px!important;
}
.pt-20{
	padding-top:20px!important;
}
.pt-30{
	padding-top:30px!important;
}
.pt-50{
	padding-top:50px!important;
}
.pt-100{
	padding-top:100px!important;
}
.pb-30{
	padding-bottom:30px!important;
}
.pb-20{
	padding-bottom:20px!important;
}
.pb-10{
	padding-bottom:10px!important;
}
.pb-0{
	padding-bottom:0px!important;
}
.pl-0{
	padding-left:0!important;
}
.pr-10{
	padding-right:10px!important;
}
.pr-30{
	padding-right:30px!important;
}
.p-5{
	padding:5px!important;
}
.p-10{
	padding:10px!important;
}
.p-20{
	padding:20px!important;
}
.p-30{
	padding:30px!important;
}
.p-20-10{
	padding:20px 10px;
}
.plr-20{
	padding-left:20px;
	padding-right:20px;
}
.ptpb-5{
	padding-top:5px;
	padding-bottom:5px;
}
.ab-0{
	bottom:0;
}
span.blue-box{
	padding:5px 15px;
}
.indent{
	padding-left:1em;
	text-indent:-1em;
}
.aligncenter{
	margin: auto;
    display: block;
}
a.txtimage:hover .ab-txt{
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}
a.def-ul{
	text-decoration:underline!important;
}
a.def-nonul:hover{
	text-decoration:none;
}
img.truelycircle-img{
	background-color:#FFFFFF;
	text-align:center;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
}
.b-gray{
	border:1px solid #323232;
}
.bdr-none{
	border:0!important;
}
.bb-red{
	border-bottom:2px solid #C1272D;
}
.bb-gray{
	border-bottom:1px solid #323232;
}
.bbdot-gray{
	border-bottom:1px dotted #323232;
}

.br-gray{
	border-right:1px solid #323232;
}
.bl-gray{
	border-left:1px solid #323232;
}
.inline-block{
	display:inline-block;
}

/* リボン */
.ribbon_box {
    display: block;
    position: relative;
    width: 100%;
    box-sizing: border-box;
    padding: 60px 30px 30px 40px;
    background-color:#e4eef0;
  }

.ribbon-elem {
    display: inline-block;
    position: absolute;
    text-align: center;
    color: white;
    background: #1453AF;
    border-radius: 2px 0 0 0;
	top: -10px;
    left: 25px;
    margin: 0;
    padding: 25px 0 10px;
    z-index: 2;
    width: 120px;
  }

.ribbon-elem:before{
    position: absolute;
    content: '';
    top: 0;
    right: -10px;
    border: none;
    border-bottom: solid 10px #323230;
    border-right: solid 10px transparent;
}

.ribbon-elem:after{
    content: '';
    position: absolute;
    left: 0;
    top: 100%;
    height: 0;
    width: 0;
    border-left: 60px solid transparent;
    border-right: 60px solid transparent;
    border-top: 12px solid #1453AF;
}

/* 右向き三角ボタン */
.right-tri-btn{
  display: block;
  width:155px;
  position:relative;
  margin: 15px auto;
  height: 26px;
}
.right-tri-btn a{
  display:block;
  position: absolute;
  width:155px;
  color: #fff;
  font-size: 0.8rem;
  text-align: center;
  z-index: 5;
  line-height:26px;
}
.right-tri-btn a:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 155px;
  height: 24px;
  background: #4b9e01;
  z-index: -1;
}
.right-tri-btn a:after {
  content: "";
  display: block;
  position: absolute;
  left: 155px;
  top: 0;
  width: 17px;
  height: 17px;
  -webkit-transform-origin: left top;
  -webkit-transform: rotate(45deg);
  -moz-transform-origin: left top;
  -moz-transform: rotate(45deg);
  transform-origin: left top;
  transform: rotate(45deg);
  background: #4b9e01;
  z-index: -2;
}
.right-tri-btn a:hover,.right-tri-btn a:focus{
	text-decoration:none;
	color:#fff;
}
