@charset "utf-8";
/*リボンデザイン01*/
.ribbond01 {
    font-size: 24px!important;/*文字の大きさ*/
    display: inline-block;
    position: relative;
    height: 60px;/*リボンの高さ*/
    line-height: 60px!important;/*リボンの高さ*/
    vertical-align: middle;
    text-align: center;
    padding: 0 30px;/*横の大きさ*/
    margin-top: 30px!important;
	  margin-bottom: 30px!important;
    background: #f57a78;/*塗りつぶし色*/
    color: #FFF;/*文字色*/
    box-sizing: border-box;
}
.ribbond01:before,
.ribbond01:after {
    position: absolute;
    content: '';
    width: 0px;
    height: 0px;
    z-index: 1;
}
.ribbond01:before {
    top: 0;
    left: 0;
    border-width: 30px 0px 30px 15px;
    border-color: transparent transparent transparent #fff;
    border-style: solid;
}
.ribbond01:after {
    top: 0;
    right: 0;
    border-width: 30px 15px 30px 0px;
    border-color: transparent #fff transparent transparent;
    border-style: solid;
}

/*リボンデザイン02*/
div.ribbond02 {
    display: inline-block;
    position: relative;
    height: 60px;
    line-height: 60px;
    vertical-align: middle;
    text-align: center;
    padding: 7px 0;
    margin-top: 30px!important;
	  margin-bottom: 30px!important;
    background: #78d0f5;/*背景色*/
    color: #FFF;/*文字色*/
    box-sizing: border-box;
}
.ribbond02 p {
	  font-size: 24px!important;
    vertical-align: middle;
    margin: 0!important;
    padding: 0 30px;
    border-top: dashed 1px #FFF;/*上の破線*/
    border-bottom: dashed 1px #FFF;/*下の破線*/
    line-height: 44px!important;
}
.ribbond02:before,
.ribbond02:after {
    position: absolute;
    content: '';
    width: 0px;
    height: 0px;
    z-index: 1;
}
.ribbond02:before {/*左端の山形*/
    top: 0;
    left: 0;
    border-width: 30px 0px 30px 15px;
    border-color: transparent transparent transparent #fff;
    border-style: solid;
}
.ribbond02:after {/*右端の山形*/
    top: 0;
    right: 0;
    border-width: 30px 15px 30px 0px;
    border-color: transparent #fff transparent transparent;
    border-style: solid;
}

/*リボンデザイン03*/
div.ribbond03 {
    display: inline-block;
    position: relative;
    height: 60px;
    line-height: 60px;
    vertical-align: middle;
    text-align: center;
    padding: 7px 0;
    margin-top: 30px!important;
	  margin-bottom: 30px!important;
    font-size: 18px;
    background: #acd879;
    color: #FFF;
    box-sizing: border-box;
}
.ribbond03 p {
	  font-size: 24px!important;
    vertical-align: middle;
    margin: 0!important;
    padding: 0 30px;
    border-top: dashed 2px rgba(255, 255, 255, 0.5);
    border-bottom: dashed 2px rgba(255, 255, 255, 0.5);
    line-height: 42px!important;
}
.ribbond03:before,
.ribbond03:after {
    position: absolute;
    content: '';
    width: 0px;
    height: 0px;
    z-index: 1;
}
.ribbond03:before {/*左の山形*/
    top: 0;
    left: 0;
    border-width: 30px 0px 30px 15px;
    border-color: transparent transparent transparent #fff;
    border-style: solid;
}
.ribbond03:after {/*右の山形*/
    top: 0;
    right: 0;
    border-width: 30px 15px 30px 0px;
    border-color: transparent #fff transparent transparent;
    border-style: solid;
}

/*リボンデザイン04*/
.ribbond04 {
    display: inline-block;
    position: relative;
    height: 60px;/*高さ*/
    line-height: 60px!important;/*高さ*/
    vertical-align: middle;
    text-align: center;
    padding: 0 40px 0 18px;/*文字の左右の余白*/
    font-size: 24px!important;/*文字サイズ*/
    background: #ffc668;/*背景色*/
    color: #FFF;/*文字色*/
    box-sizing: border-box;
    margin-top: 30px!important;
	  margin-bottom: 30px!important;
}
.ribbond04:after {
    position: absolute;
    content: '';
    width: 0px;
    height: 0px;
    z-index: 1;
}
.ribbond04:after {
    top: 0;
    right: 0;
    border-width: 30px 15px 30px 0px;
    border-color: transparent #fff transparent transparent;
    border-style: solid;
}

/*リボンデザイン05*/
div.ribbond05 {
    display: inline-block;
    position: relative;
    height: 60px;
    line-height: 60px;
    vertical-align: middle;
    text-align: center;
    padding: 7px 0;
    margin-top: 30px!important;
	  margin-bottom: 30px!important;
    font-size: 18px;/*文字サイズ*/
    background: #7f9dfb;/*背景色*/
    color: #FFF;/*文字色*/
    box-sizing: border-box;
}
.ribbond05 p {
	  font-size: 24px!important;
    vertical-align: middle;
    margin: 0!important;
    padding: 0 30px 0 15px;
    border-top: dashed 1px #FFF;
    border-bottom: dashed 1px #FFF;
    line-height: 44px!important;
}
.ribbond05:after {
    position: absolute;
    content: '';
    z-index: 1;
    top: 0;
    right: 0;
    width: 0px;
    height: 0px;
    border-width: 30px 15px 30px 0px;
    border-color: transparent #fff transparent transparent;
    border-style: solid;
}

/*リボンデザイン06*/
div.ribbond06 {
    display: inline-block;
    position: relative;
    height: 60px;
    line-height: 60px;
    vertical-align: middle;
    text-align: center;
    padding: 7px 0;
    margin-top: 30px!important;
	  margin-bottom: 30px!important;
    font-size: 18px;
    background: #acd879;
    color: #FFF;
    box-sizing: border-box;
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.25);
}
.ribbond06 p {
	  font-size: 24px!important;
    vertical-align: middle;
    margin: 0!important;
    padding: 0 30px;
    border-top: dashed 2px rgba(255, 255, 255, 0.5);
    border-bottom: dashed 2px rgba(255, 255, 255, 0.5);
    line-height: 44px!important;
}
.ribbond06:before,
.ribbond06:after {
  position: absolute;
  content: '';
  width: 0px;
  height: 0px;
  z-index: 1;
}
.ribbond06:before {
    top: -2px;
    left: -2px;
    border-width: 32px 0px 32px 15px;
    border-color: transparent transparent transparent #fff;
    border-style: solid;
}
.ribbond06:after {
    top: -2px;
    right: -2px;
    border-width: 32px 15px 32px 0px;
    border-color: transparent #fff transparent transparent;
    border-style: solid;
}

/*リボンデザイン07*/
.ribbond07 {
    display: inline-block;
    position: relative;
    padding: 15px 20px;
	  margin-top: 30px!important;
	  margin-bottom: 40px!important;
    font-size: 24px!important;/*フォントサイズ*/
    color: #FFF;/*フォントカラー*/
    background: #a6d3c8;/*リボンの色*/
}
.ribbond07:before {
	position: absolute;
	content: '';
	top: 100%;
	left: 0;
	border: none;
	border-bottom: solid 15px transparent;
	border-right: solid 20px rgb(149, 158, 155);/*折り返し部分*/
}

/*リボンデザイン08*/
.ribbond08 {
    display: inline-block;
    position: relative;
    padding: 15px 20px;
	    margin-top: 30px!important;
	  margin-bottom: 40px!important;
    font-size: 24px!important;/*フォントサイズ*/
    color: #FFF;/*フォントカラー*/
    background: #a6d3c8;/*背景色*/
}
.ribbond08:before {
    position: absolute;
    content: '';
    top: 100%;
    left: 0;
    border: none;
    border-bottom: solid 15px transparent;
    border-right: solid 20px rgb(149, 158, 155);/*折り返し部分*/
}
.ribbond08:after {
    position: absolute;
    content: '';
    top: 100%;
    right: 0;
    border: none;
    border-bottom: solid 15px transparent;
    border-left: solid 20px rgb(149, 158, 155);/*折り返し部分*/
}

/*リボンデザイン10*/
.ribbon_box01 {    
    display: block;
    position: relative;
    margin: 30px 0 30px 20px;
    padding: 10px 0;
    background: #f1f1f1;
  }
.ribbon_box01 p {
	padding: 10px 20px 0; 
}
p.ribbond10 {
    display: inline-block;
    position: relative;
    box-sizing: border-box;
    padding: 10px 15px;
    margin: 0 0 0 -20px!important;
    width: calc(100% + 20px);
    font-size: 24px!important;
    color: white;
    background: #70c7ff;
}
p.ribbond10:before {
    position: absolute;
    content: '';
    top: 100%;
    left: 0;
    border: none;
    border-bottom: solid 15px transparent;
    border-right: solid 20px #6eb3e0;
}

/*リボンデザイン11*/
.ribbon_box02 {    
    display: block;
    margin: 30px 0 30px 20px;
    padding: 10px 0;
    background: #f1f1f1;
  }
.ribbon_box02 p {
	padding: 10px 20px 0; 
}
p.ribbond11 {
    display: inline-block;
    position: relative;
    box-sizing: border-box;
    padding: 10px 15px;
    margin: 0 0 0 -20px!important;
    width: calc(100% + 20px);
    font-size: 24px!important;
    color: white;
    background: #70a6ff;
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
}
p.ribbond11:before {
    position: absolute;
    content: '';
    top: 100%;
    left: 0;
    border: none;
    border-bottom: solid 15px transparent;
    border-right: solid 20px #6081b7;
}

/*リボンデザイン12*/
.ribbon_box03 {    
    display: block;
    position: relative;
    margin: 30px 0 30px 20px;
    padding: 10px 0;
    background: #f1f1f1;
  }
.ribbon_box03 p {
	padding: 10px 20px 0; 
}
div.ribbond12 {
    display: inline-block;
    position: relative;
    box-sizing: border-box;
    padding: 5px 0;
    margin: 0 0 0 -20px;
    width: calc(100% + 20px);
    color: white;
    background: #70a6ff;
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
}
.ribbond12 p {
    vertical-align: middle;
    margin: 0!important;
    padding: 0 30px 0 15px;
    border-top: dashed 1px #FFF;
    border-bottom: dashed 1px #FFF;
    font-size: 24px!important;
    line-height: 46px!important;
}
div.ribbond12:after {
    position: absolute;
    content: '';
    z-index: 1;
    top: 0;
    right: 0;
    width: 0px;
    height: 0px;
    border-width: 30px 15px 30px 0px;
    border-color: transparent #f1f1f1 transparent transparent;
    border-style: solid;
}
div.ribbond12:before {
    position: absolute;
    content: '';
    top: 100%;
    left: 0;
    border: none;
    border-bottom: solid 15px transparent;
    border-right: solid 20px #6081b7;
}

/*リボンデザイン13*/
.ribbon_box04 {    
    display: block;
    position: relative;
    margin: 30px auto;
    padding: 10px 0;
    width: 100%;
    background: #f1f1f1;
    box-sizing: border-box;
}
.ribbon_box04 p {
	  margin: 10px 40px 10px 20px!important
}
.ribbond13 {    
    display: inline-block;
    position: absolute;
    top: 0;
    right: 10px;
    margin: 0;
    padding: 10px 0;
    z-index: 2;
    width: 40px;
    text-align: center;
    font-size: 17px;
    color: white;
    background: #ff785b;
}
.ribbond13:after {
    content: '';
    position: absolute;
    left: 0;
    top: 100%;
    height: 0;
    width: 0;
    border-left: 20px solid #ff785b;
    border-right: 20px solid #ff785b;
    border-bottom: 10px solid transparent;
}

/*リボンデザイン14*/
.ribbon_box05 {    
    display: block;
    position: relative;
    margin: 30px auto;
    padding: 10px 0;
    width: 100%;
    background: #f1f1f1;
    box-sizing: border-box;
}
.ribbon_box05 p {    
	padding: 0 40px 0 20px;
}
.ribbond14 {    
    display: inline-block;
    position: absolute;
    top: -6px;
    right: 10px;
    margin: 0;
    padding: 10px 0;
    z-index: 2;
    width: 40px;
    text-align: center;
    color: white;
    font-size: 17px;
    background: linear-gradient(#ff785b 0%, #e95738 100%);
    border-radius: 2px 0 0 0;
  }
.ribbond14:before {
	position: absolute;
    content: '';
    top: 0;
    right: -6px;
    border: none;
    border-bottom: solid 6px #cf4a2d;
    border-right: solid 6px transparent;
}
.ribbond14:after {
    content: '';
    position: absolute;
    left: 0;
    top: 100%;
    height: 0;
    width: 0;
    border-left: 20px solid #e95738;
    border-right: 20px solid #e95738;
    border-bottom: 10px solid transparent;
}

/*リボンデザイン15*/
.ribbon_box06 {    
    display: block;
    position: relative;
    margin: 30px auto;
    padding: 10px 0;
    width: 100%;
    background: #f1f1f1;
    box-sizing: border-box;
  }
.ribbon_box06 p {    
	padding: 0 40px 0 20px;
}
.ribbond15 {    
    display: inline-block;
    position: absolute;
    top: -6px;
    right: 10px;
    padding: 10px 0 7px;
    margin: 0;
    z-index: 2;
    width: 40px;
    text-align: center;
    color: white;
    font-size: 13px;
    background: #fa8383;
    border-radius: 2px 0 0 0;
  }
.ribbond15:before {
    position: absolute;
    content: '';
    top: 0;
    right: -5px;
    border: none;
    border-bottom: solid 6px #d07676;
    border-right: solid 5px transparent;
}
.ribbond15:after {
    content: '';
    position: absolute;
    left: 0;
    top: 100%;
    height: 0;
    width: 0;
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    border-top: 10px solid #fa8383;
}

/*リボンデザイン16*/
.ribbon_box07 {
    display: block;
    position: relative;
    margin: 30px 0;
    padding: 15px 0;
    height: 150px;
    background: #f1f1f1;
    box-shadow: 0 3px 5px rgba(0, 0, 0, 0.14);
    box-sizing: border-box;
}
.ribbon_box07 p {
	padding: 0 40px 0 20px;
}
.ribbon_area01 {
    position: absolute;
    top: -6px;
    right: -6px;
    width: 89px;
    height: 91px;
    overflow: hidden;
  }
.ribbond16 {
    display: inline-block;
    position: absolute;
    padding: 7px 0;
    left: -23px;
    top: 22px;
    width: 160px;
    text-align: center;
    font-size: 18px;
    line-height: 16px;
    background: #ffa520;
    color: #fff;
    letter-spacing: 0.05em;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}
.ribbond16:before,
.ribbond16:after {
    position: absolute;
    content: "";
    border-top: 4px solid #b2751b;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    bottom: -4px;
}
.ribbond16:before {
    left: 14px;
}
.ribbond16:after {
  	right: 18px;
}

/*リボンデザイン17*/
.ribbon_box08 {
    display: block;
    position: relative;
    margin: 30px 0;
    padding: 10px 0;
    height: 150px;
    background: #f1f1f1;
    box-shadow: 0 3px 5px rgba(0, 0, 0, 0.14);
    box-sizing: border-box;
}
.ribbon_box08 p {
	padding: 0 40px 0 20px;
}
.ribbon_area02 {
    position: absolute;
    top: -6px;
    right: -6px;
    width: 89px;
    height: 91px;
    overflow: hidden;
  }
.ribbond17 {
    display: inline-block;
    position: absolute;
    padding: 7px 0;
    left: -23px;
    top: 22px;
    width: 160px;
    text-align: center;
    font-size: 18px;
    line-height: 16px;
    background: linear-gradient(to right, #4298fa 0%,#8fcdff 100%);
    color: #fff;
    text-shadow: 0 2px 2px #56a1f3;
    letter-spacing: 0.05em;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}
.ribbond17:before,
.ribbond17:after {
    position: absolute;
    content: "";
    border-top: 4px solid #3672b6;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    bottom: -4px;
}
.ribbond17:before {
    left: 14px;
}
.ribbond17:after {
    right: 18px;
}

/*リボンデザイン18*/
.ribbon_box09 {
    display: block;
    position: relative;
    margin: 30px 2px;
    padding: 10px 0;
    height: 150px;
    background: #f1f1f1;
    box-shadow: 0 3px 5px rgba(0, 0, 0, 0.14);
    box-sizing: border-box;
}
.ribbon_box09 p {
	padding: 0 40px 0 20px;
}
.ribbon_area03 {
    position: absolute;
    top: 0;
    right: 0;
    width: 85px;
    height: 85px;
    overflow: hidden;
  }
.ribbond18 {
    display: inline-block;
    position: absolute;
    padding: 5px 0;
    left: -24px;
    top: 20px;
    width: 160px;
    text-align: center;
    font-size: 18px;
    line-height: 16px;
    background: #39c3d4;
    color: #fff;
    letter-spacing: 0.05em;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    box-shadow: 0 0 0 2px rgb(57, 195, 212);
    border-top: dashed 1px rgba(255, 255, 255, 0.65);
    border-bottom: dashed 1px rgba(255, 255, 255, 0.65);
}

/*リボンデザイン19*/
.ribbon_box10 {    
    display: block;
    position: relative;
    margin: 30px 0;
    padding: 20px 0;
    background: #f1f1f1;
}
p.ribbond19-1 {
	  padding: 0 20px;
    margin: 25px 0 10px!important;
}
.ribbond19 {
    display: inline-block;
    position: absolute;
    left: 0;
    top: 5px;
    box-sizing: border-box;
    padding: 0 12px;
    margin: 0!important;
    height: 30px;
    line-height: 30px;
    font-size: 18px;
    letter-spacing: 0.1em;
    color: white;
    background: #70c7ff;
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.12);
}
.ribbond19:before {
    position: absolute;
    content: '';
    top: 0;
    left: -7px;
    border: none;
    height: 38px;
    width: 7px;
    background: #70c7ff;
    border-radius: 5px 0 0 5px;
}
.ribbond19:after {
    position: absolute;
    content: '';
    bottom: -7px;
    left: -5px;
    border: none;
    height: 7px;
    width: 5px;
    background: #4d99ca;
    border-radius: 5px 0 0 5px;
}

/*リボンデザイン20*/
.ribbon_box11 {    
    display: block;
    position: relative;
    margin: 30px 0;
    padding: 20px 0;
    background: #f1f1f1;
}
p.ribbond20-1 {
	padding: 0 20px;
    margin: 30px 0 10px!important;
}
.ribbond20 {
    display: inline-block;
    position: absolute;
    left: 0;
    top: 10px;
    box-sizing: border-box;
    padding: 0 10px;
    margin: 0!important;
    height: 30px;
    line-height: 30px;
    font-size: 18px;
    letter-spacing: 0.1em;
    color: white;
    background: #ff7470;
    box-shadow: 1px -1px 1px rgba(0, 0, 0, 0.1);
}
.ribbond20:before {
    position: absolute;
    content: '';
    top: -8px;
    left: -7px;
    border: none;
    height: 38px;
    width: 7px;
    background: #ff7470;
    border-radius: 5px 0 0 5px;
}
.ribbond20:after {
    position: absolute;
    content: '';
    top: -7px;
    left: -5px;
    border: none;
    height: 7px;
    width: 5px;
    background: #b25552;
    border-radius: 5px 0 0 5px;
}


.ribbon20 {
    display: inline-block;
    position: relative;
    height: 45px;
    vertical-align: middle;
    text-align: center;
    box-sizing: border-box;
    -ms-transform: rotate(-10deg) skew(-17deg,4deg);
    -webkit-transform: rotate(-10deg) skew(-17deg,4deg);
    transform: rotate(-10deg) skew(-17deg,4deg);
}
.ribbon20:before{
    content: '';
    position: absolute;
    width: 40px;
    height: 40px;
    background: #eb9920;
    bottom: -7px;
    left: -15px;
    z-index: -2;
}

.ribbon20:after{
    content: '';
    position: absolute;
    width: 40px;
    height: 40px;
    background: #eb9920;
    bottom: -10px;
    right: -25px;
    z-index: -2;
}

.ribbon20 h3 {
    display: inline-block;
    position: relative;
    margin: 0;
    padding: 0 20px;
    line-height: 45px;
    font-size: 18px;
    color: white;
    background: #f8aa37;
}
.ribbon20 h3:before {
    position: absolute;
    content: '';
    top: 100%;
    left: 0;
    border: none;
    border-bottom: solid 7px transparent;
    border-right: solid 25px #c6821e;
}
.ribbon20 h3:after {
    position: absolute;
    content: '';
    top: 100%;
    right: 0;
    border: none;
    border-bottom: solid 10px transparent;
    border-left: solid 15px #c6821e;
}