@charset "utf-8";

/* ------------------------------------------
グリーンのある生活
------------------------------------------ */

/* vol背景のサボテン */
.green-vol01 .main-img::before {
  background: url(../images/index/vol01_number.png) no-repeat 0 0;
  background-size: 100%;
}
.green-vol02 .main-img::before {
  background: url(../images/index/vol02_number.png) no-repeat 0 0;
  background-size: 100%;
}
.green-vol03 .main-img::before {
  background: url(../images/index/vol03_number.png) no-repeat 0 0;
  background-size: 100%;
}
.green-vol04 .main-img::before {
  background: url(../images/index/vol04_number.png) no-repeat 0 0;
  background-size: 100%;
}

@media screen and (min-width: 668px) {
  #lifeGreen {
    min-width: 1200px;
  }
}

@media screen and (min-width: 668px) {
  .green-mainvisual {
    text-align: center;
  }
}

.green-new {
  line-height: 1;
}
@media screen and (max-width: 667px) {
  .green-new {
    height: 69px;
    background: #fff;
  }
}
@media screen and (min-width: 668px) {
	.green-new {
    margin: auto;
    padding: 36px 0 0;
    width: 1200px;
	}
}

.green-new--label {
  margin: 20px 0 0;
  padding: 8px 12px 0 0;
  height: 45px;
  color: #000;
  text-align: right;
}
@media screen and (max-width: 667px) {
  .green-new--label {
    position: relative;
    z-index: 2;
    background: url(../images/index/new_ribbon.png) no-repeat 0 0;
    background-size: 100%;
    width: 110.06vw;
    height: 80px;
    left: 3.8vw;
    padding: 3.06vw 0 0 0;
    display: inline-block;
}
}

@media screen and (min-width: 668px) {
	.green-new--label {
    margin: 0 0 16px;
    padding: 12px 112px 11px 0;
    height: 65px;
    background: url(../images/index/new_ribbon_pc_2l.png) no-repeat 74.4% 0;
    background-size: 71%;
	}
}

.green-new--date {
  margin: -1.3vw 17vw 1.5vw 0;
  font-size: 13px;
  line-height: 1;
}
@media screen and (min-width: 668px) {
  .green-new--date {
    margin: 10px 0 0;
    font-size: 14px;
  }
}

.green-new--lead {
  display: inline-block;
  margin: -10.3vw 17vw 0 0;
  font-size: 16px;
  line-height: 1.2;
}
@media screen and (min-width: 668px) {
  .green-new--lead {
    margin: -35px -7px 0;
    font-size: 22px;
    
  }
  .green-new--lead br {
    display: none;
  }
}

.green-new--lead-small {
  font-size: 14px;
}
@media screen and (min-width: 668px) {
  .green-new--lead-small {
    font-size: 18px;
  }
}

.green-new--lead::before {
  content: "";
  background: url(../images/index/new.png) no-repeat 0 0;
  background-size: 100%;
  position: relative;
  top: 5.6vw;
  margin: 0 .1em 0;
  display: block;
  left: -13vw;
  width: 17vw;
  height: 11vw;
}
@media screen and (min-width: 668px) {
  .green-new--lead::before {
    content: "";
    background: url(../images/index/new_pc.png) no-repeat 0 0;
    background-size: 100%;
    position: relative;
    top: 31px;
    margin: 0 .1em 0;
    display: block;
    left: -94px;
    width: 81.5px;
    height: 43px;
  }
}

.green-mainvisual--inner {
  position: relative;
  margin: -11px 0 0;
}
@media screen and (min-width: 668px) {
  .green-mainvisual--inner {
    margin: auto;
    max-width: 1200px;
  }
}

.green-mainvisual--inner img {
  height: auto;
}
@media screen and (max-width: 667px) {
  .green-mainvisual--inner {
	  margin-top: -41px;
	}
  .green-mainvisual--inner img {
    max-width: 100%;
  }
}

.green-mainvisual--inner h1 {
  position: relative;
  margin: -16.2% 5% 0;
  margin: -15.4vw 5% 0;
}
@media screen and (min-width: 668px) {
  .green-mainvisual--inner h1 {
    position: absolute;
    top: 215px;
    right: 0;
    margin: 0;
  }
}

@media screen and (min-width: 668px) {
  .green-mainvisual--inner h1 img {
    width: 580px;
  }
}

.green-mainvisual--lead {
  position: relative;
  padding: 20px 0 45px;
}
@media screen and (min-width: 668px) {
  .green-mainvisual--lead {
    margin: auto;
    padding: 60px 0 65px 180px;
    width: 1020px;
  }
}

.green-mainvisual--lead::after {
  content: "";
  position: absolute;
  left: 5%;
  bottom: -22px;
  display: block;
  width: 1px;
  height: 40px;
  background: url(../images/dot.gif) repeat-y;
}
@media screen and (min-width: 668px) {
  .green-mainvisual--lead::after {
    left: 121px;
    bottom: -30px;
    height: 227px;
  }
}

.green-mainvisual--lead p {
  text-align: justify;
  text-justify: inter-ideograph;
  font-size: 14px;
  line-height: 2;
}
@media screen and (max-width: 667px) {
  .green-mainvisual--lead p {
    padding: 0 5%;
  }
}
@media screen and (min-width: 668px) {
  .green-mainvisual--lead p {
    width: 647px;
    font-size: 18px;
  }
}

.green-contents {
  padding: 38px 0 0;
}
@media screen and (min-width: 668px) {
  .green-contents {
    margin: auto;
    padding: 50px 0 0;
    width: 1200px;
  }
}

.green-content {
  position: relative;
  padding: 8% 0 19.2%;
}
@media screen and (min-width: 668px) {
  .green-content {
    padding: 60px 0 120px;
  }
}

.green-content.trailer {
  padding-bottom: 26%;
}
@media screen and (min-width: 668px) {
  .green-content.trailer {
    padding-bottom: 180px;
  }
}

.green-content::before {
  content: "";
  display: block;
  position: absolute;
	left: 43%;
  bottom: 3%;
  width: 14%;
  height: 1px;
  background: url(../images/dot_side.gif) repeat-x;
  -webkit-transform: rotateZ(44deg);
  transform: rotateZ(44deg);
}
@media screen and (min-width: 668px) {
  .green-content::before {
    left: 110px;
    bottom: 182px;
    width: 67px;
  }
}

.green-content.trailer::before {
  bottom: 6%;
}
@media screen and (min-width: 668px) {
  .green-content.trailer::before {
    display: none;
  }
}

@media screen and (max-width: 667px) {
  .green-content:nth-child(even)::before {
    -webkit-transform: rotateZ(-44deg);
    transform: rotateZ(-44deg);
  }
}

@media screen and (min-width: 668px) {
  .green-content::after {
    content: "";
    display: block;
    position: absolute;
    right: 102px;
    bottom: 72px;
    width: 233px;
    height: 1px;
    background: url(../images/dot_side.gif) repeat-x;
    -webkit-transform: rotateZ(-31deg);
    transform: rotateZ(-31deg);
  }
}

.green-content.trailer::after {
  display: none;
}

@media screen and (min-width: 668px) {
  .green-vol01 {
    background: url(../images/index/vol01_cuctus.png) no-repeat;
    background-position: left 48px bottom 157px;
  }
}
@media screen and (min-width: 668px) {
  .green-vol02 {
    background: url(../images/index/vol02_cuctus.png) no-repeat;
    background-position: left 31px bottom 157px;
  }
}
@media screen and (min-width: 668px) {
  .green-vol03 {
    background: url(../images/index/vol03_cuctus.png) no-repeat;
    background-position: left 0 bottom 157px;
  }
}
@media screen and (min-width: 668px) {
  .green-vol04 {
    background: url(../images/index/vol04_cuctus.png) no-repeat;
    background-position: left 48px bottom 157px;
  }
}
@media screen and (min-width: 668px) {
  .green-content.trailer {
    background: none;
  }
}

@media screen and (min-width: 668px) {
  .green-content .inner {
    margin: auto;
    width: 858px;
  }
}

.green-content .main-img {
  position: relative;
}
@media screen and (max-width: 667px) {
  .green-content .main-img {
    margin: auto;
    width: 92%;
  }
}

.green-content .main-img::before {
  content: "";
  position: absolute;
  top: -13%;
  display: block;
  width: 24%;
  height: 50%;
}
@media screen and (min-width: 668px) {
  .green-content .main-img::before {
    top: -60px;
    width: 170px;
    height: 150px;
  }
}

.green-content:nth-child(odd) .main-img::before {
  left: -1.5%;
  z-index: 10;
}
@media screen and (min-width: 668px) {
  .green-content:nth-child(odd) .main-img::before {
    left: -50px;
    z-index: 10;
  }
}

.green-content:nth-child(even) .main-img::before {
  right: -1.5%;
  z-index: 10;
}
@media screen and (min-width: 668px) {
  .green-content:nth-child(even) .main-img::before {
    right: -50px;
    z-index: 10;
  }
}

.green-content .main-img::after {
  content: "";
  position: absolute;
	top: 36%;
  display: block;
	width: 89.9%;
	height: 95.6%;
	background-size: 16px 16px;
  z-index: -1;
}
@media screen and (min-width: 668px) {
  .green-content .main-img::after {
		top: 137px;
    width: 858px;
    height: 560px;
    background-size: 22px 22px;
  }
}

.green-content.trailer .main-img::after {
  top: 18%;
}
@media screen and (min-width: 668px) {
  .green-content.trailer .main-img::after {
    top: 70px;
	}
}

.green-content:nth-child(odd) .main-img::after {
  right: -4%;
}
@media screen and (min-width: 668px) {
  .green-content:nth-child(odd) .main-img::after {
    left: 171px;
  }
}
.green-content:nth-child(even) .main-img::after {
  left: -4%;
}
@media screen and (min-width: 668px) {
  .green-content:nth-child(even) .main-img::after {
    left: -171px;
  }
}

.green-content .main-img img {
  max-width: 100%;
  height: auto;
}

.green-content h2 {
	margin: 1% 0 0 8%;
  font-size: 18px;
	font-size: 5vw;
	font-weight: normal;
	line-height: 1.4;
  color: #000;
	text-align: left;
}
@media screen and (min-width: 668px) {
  .green-content h2 {
    margin: 18px 0 0;
    padding: 0 0 0 34px;
    font-size: 36px;
  }
}

.green-content h2 .green-edge {
  font-size: 22.5px;
	font-size: 6vw;
}
@media screen and (min-width: 668px) {
  .green-content h2 .green-edge {
    font-size: 45px;
  }
}

.green-content h2 .green-edge .green-edge-small {
	font-size: 5.6vw;
}
@media screen and (min-width: 668px) {
  .green-content h2 .green-edge .green-edge-small {
    font-size: 35px;
  }
}

.green-content.trailer h2 {
  display: none;
}

.green-content .lead {
	margin: 7% 4% 0 8%;
	font-size: 13px;
  line-height: 2;
  color: #000;
  text-align: justify;
	text-justify: inter-ideograph;
}
@media screen and (min-width: 668px) {
  .green-content .lead {
    margin: 28px 0 0;
    padding: 0 0 0 34px;
    font-size: 16px;
  }
}

.green-content.trailer .lead {
  display: none;
}

.green-btn--next {
  position: relative;
  display: block;
  margin: 8% auto 0;
  padding: 16px 0;
  width: 80%;
  font-size: 16px;
  line-height: 1;
  font-weight: bold;
  text-decoration: none!important;
  text-align: center;
  border: 1px solid #000;
  -webkit-border-radius: 24px;
  border-radius: 24px;
  box-shadow: 0 3px 0 0 #000;
  background: linear-gradient(to right, #d6effc, #d6fce6);
}
@media screen and (min-width: 668px) {
  .green-btn--next {
    margin: 50px auto 0;
    padding: 19px 0;
    width: 276px;
    font-size: 18px;
    border: 2px solid #000;
    -webkit-border-radius: 28px;
    border-radius: 28px;
		transition: opacity .4s;
  }
}

.green-content.trailer .green-btn--next {
  display: none;
}

.green-btn--next::after {
	content: "";
	position: absolute;
  top: 17px;
	right: 19px;
	display: block;
  width: 0;
  height: 0;
  border: 7px solid transparent;
  border-left: 10px solid #000;
}
@media screen and (min-width: 668px) {
  .green-btn--next::after {
		top: 21px;
		right: 21px;
  }
}
@media screen and (min-width: 668px) {
  .green-btn--next:hover {
		opacity: .7;
  }
}

.green-btn--next:link,
.green-btn--next:visited {
  color: #000;
}

@media screen and (min-width: 668px) {
  .headerA,#breadcrumbs,#footerWrapper,#footerBottom {
    min-width: 1200px;
  }
}


/* New!ラベル */
.new-label--left,.new-label--right {
  position: relative;
}
.new-label--left::before {
  content: "";
  top: 0;
  left: 0;
  border-bottom: 12.93vw solid transparent;
  border-left: 19.96vw solid #e91860;
  position: absolute;
}
.new-label--left::after {
  content: "NEW";
  display: block;
  top: 2.4vw;
  transform: rotate(-36deg);
  color: #fff;
  left: 1.2vw;
  position: absolute;
  font-size: 4.56vw;
}

.new-label--right::before {
content: "";
top: 0;
right: 0;
border-bottom: 12.93vw solid transparent;
border-right: 19.06vw solid #e91860; /* ラベルの色 */
position: absolute;
}
.new-label--right::after {
content: "NEW";
display: block;
top: 2.4vw;
transform: rotate(36deg);
color: #fff; /* 文字色*/
right: 1.2vw;
position: absolute;
font-size: 4.56vw;
}

@media screen and (min-width: 668px) {
  .new-label--left::before {
    border-bottom: 120px solid transparent;
    border-left: 177px solid #e91860; /* ラベルの色 */
}
  .new-label--left::after {
    top: 36px;
    transform: rotate(-36deg);
    color: #fff; /* 文字色*/
    left: 10px;
    font-size: 42px;
}

.new-label--right::before {
  border-bottom: 120px solid transparent;
  border-right: 177px solid #e91860; /* ラベルの色 */
}
.new-label--right::after {
  top: 36px;
  transform: rotate(36deg);
  color: #fff; /* 文字色*/
  right: 10px;
  font-size: 42px;
}
}