@charset "utf-8";

#greenfit {
  line-height: 1.6;
  word-break: break-all;
}
#greenfit a {
  color: #00a0ea;
  text-decoration: underline;
}
#greenfit img {
	width: auto;
	max-width: 100%;
  height: auto;
}
#greenfit .fs-xxsmall {font-size:70%;}
#greenfit .fs-xsmall {font-size:80%;}
#greenfit .fs-small {font-size:90%;}
#greenfit .fs-large {font-size:110%;}
#greenfit .fs-xlarge {font-size:120%;}
#greenfit .red {color:#f00;}
#greenfit .blue {color:#12438F;}
#greenfit .txt_right {text-align: right;}
#greenfit .txt_center {text-align: center;}
#greenfit .container {
  width: 94%;
  max-width: 960px;
  margin: auto;
}
#greenfit .container.wide {
  max-width: 1160px;
}

/* list style */
#greenfit .list > li {
  position: relative;
  padding-left: 1.3em;
}
#greenfit .list > li::before {
  position: absolute;
  top: 0;
  left: 0;
}
#greenfit .list.smldot > li::before {
  content: "・";
}
#greenfit .list.circle > li::before {
  content: "○";
}
#greenfit .list.wcircle > li::before {
  content: "◎";
}
#greenfit .list.dia > li::before {
  content: "◆";
  color: #005BAB;
}
#greenfit .list.kome > li::before {
  content: "※";
}
#greenfit .list.komenum > li {
  padding-left: 2.3em;
}
#greenfit .list.atte > li {
  padding-left: 3em;
}
#greenfit .list.komenum > li > .num,
#greenfit .list.marunum > li > .num,
#greenfit .list.atte > li > .num {
  position: absolute;
  top: 0;
  left: 0;
}

/* table style */
#greenfit .table_d {
  display: table;
  width: 100%;
  table-layout: auto;
  border-collapse: collapse;
}
#greenfit .table_d tr > * {
  border: 1px solid #878787;
  font-weight: normal;
  line-height: 1.4;
  text-align: center;
  vertical-align: middle;
  background: #fff;
}
#greenfit .table_d thead tr > * {
  padding: 0;
}

/* btn-link */
#greenfit a.btn-link {
  text-decoration: none;
  border-radius: 8px;
  text-align: center;
  font-weight: bold;
}

/* mainimg */
#greenfit .mainimg {
  background-image: url("../images/bg_house.png"), url("../images/bg_sun.png"), url("../images/bg_cloud.png"), url("../images/bg_sky.png");
  background-repeat: repeat-x, no-repeat, repeat-x, repeat-x;
  text-align: center;
}
#greenfit .mainimg h1 {
  width: 70%;
  margin: auto;
}
#greenfit nav {
  border-top: 12px solid #C09D67;
  background: #7BB52B;
  position: relative;
}
#greenfit nav::before {
  content: "";
  display: block;
  width: 100%;
  background: url("../images/bg_people.png") repeat-x center center / auto 100%;
  position: absolute;
  left: 0;
}
#greenfit nav ul {
  display: table;
  table-layout: fixed;
}
#greenfit nav ul li {
  display: table-cell;
  vertical-align: top;
}
  
/* section */
#greenfit > section h2 {
  text-align: center;
}
#greenfit > section h2::after {
  content: "";
  display: block;
  background: #2CA338;
  width: 35%;
  max-width: 200px;
}
#greenfit > section h3 {
  font-weight: bold;
  position: relative;
  padding-left: 1.3em;
}
#greenfit > section h3::before {
  content: "■";
  color: #2CA338;
  position: absolute;
  top: 0;
  left: 0;
}
#greenfit > section > .container > * + * {
  margin-top: 1em;
}

/* about */
#greenfit #about {
  background: url("../images/lightpaperfibers.png") repeat 0 0;
}
#greenfit #about .logo {
  width: 60%;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
#greenfit .border-box.red {
  border: 2px solid #f00;
  border-radius: 6px;
  background: #fff;
	padding: 15px 25px;
}
#greenfit .border-box.red a {
  color: #f00;
}
#greenfit .border-box.red a:hover {
  text-decoration: none;
}
#greenfit #about .border-box.red {
  font-size: 120%;
}
#greenfit #plan .border-box.red {
	color: #231815;
}
#greenfit #plan .border-box.red > * {
	display: inline-block;
}
#greenfit #plan-waon .border-box.red {
	margin-top: 2em;
}

/* plan */
#greenfit #plan {
  background: url("../images/bg_slash.png") repeat 0 0;
}
#greenfit #plan h2::after {
  background: #1E96D5;
}
#greenfit #plan h3::before {
  color: #1E96D5;
}
#greenfit #plan .table_d thead tr > th a {
  display: block;
  width: 100%;
  height: 100%;
  color: #fff;
  text-decoration: none;
  font-weight: bold;
	position: relative;
}
#greenfit #plan .table_d thead tr > th a::before,
#greenfit #plan .table_d thead tr > th a::after {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
}
#greenfit #plan .table_d thead tr > th:nth-child(2) a::before {
  border-color: #ED8076;
}
#greenfit #plan .table_d thead tr > th:nth-child(3) a::before {
  border-color: #0094E9;
}
#greenfit #plan .table_d thead tr > th:nth-child(2) a::after {
}
#greenfit #plan .table_d thead tr > th:nth-child(2) a {
  background: #F39E95;
}
#greenfit #plan .table_d thead tr > th:nth-child(3) a {
  background: #00B0F0;
}
#greenfit #plan .table_d thead tr > th:nth-child(4) a {
  background: #FFC000;
}
#greenfit #plan .table_d thead tr > th:nth-child(5) a {
  background: #FFC000;
}
#greenfit #plan .table_d tfoot tr > * {
  font-weight: bold;
}
#greenfit #plan .txt_right > .fs-xsmall {
  display: inline-block;
}
#greenfit #plan .box > .container {
  background: #fff;
  border-radius: 10px;
  position: relative;
}
#greenfit #plan .box > .container .bubble {
  position: absolute;
  margin: auto;
  left: 0;
  right: 0;
}
#greenfit #plan .box {
  background: rgba(255,192,0,.5);
}
#greenfit #plan .box#plan-kaitori {
  background: rgba(243,158,149,.5);
}
#greenfit #plan .box#plan-oazukari {
  background: rgba(0,176,240,.5);
}
#greenfit #plan .box#plan-waon {
  border-top: 1px solid #fff;
}

#greenfit #plan .box .heading > div p {
  text-decoration: underline;
}
#greenfit #plan .box .body .l_row.modelcase {
  margin-bottom: 10px;
}
#greenfit #plan .box .body .l_row.modelcase .plus::before {
  background-image: url("../images/plus_red.png");
}
#greenfit #plan .box .body h6 {
  font-weight: normal;
}
#greenfit #plan .box .body .pricetit {
  margin-bottom: 5px;
}
#greenfit #plan .box .body .pricetit > span {
  display: block;
}
#greenfit #plan .box#plan-youmeca .body .pricetit img {
  height: 46px;
}
#greenfit #plan .box#plan-waon .body .pricetit img {
  height: 72px;
}
#greenfit #plan .box .body .price {
  text-align: center;
  margin-top: 10px;
}
#greenfit #plan .box .body .plus .price {
  margin-top: 0;
}
#greenfit #plan .box .body .plus {
  position: relative;
}
#greenfit #plan .box .body .plus::before {
  content: "";
  display: block;
  margin: auto;
  height: 56px;
  background: url("../images/plus.png") no-repeat center center / 100% auto;
  position: absolute;
  left: 0;
  right: 0;
}
#greenfit #plan .box .body .plus.bottom::before {
  background-position: center bottom;
}
#greenfit #plan .box .body .equal {
  position: relative;
}
#greenfit #plan .box .body .equal::before {
  content: "";
  display: block;
  height: 56px;
  background: url("../images/equal.png") no-repeat center center / 100% auto;
  position: absolute;
}
#greenfit #plan .box .body .pricetxt {
  color: #f00;
  font-weight: bold;
  margin-top: -5px;
}
#greenfit #plan .box .body .pricetxt > strong {
  margin-left: .5em;
}
#greenfit #plan .box a.btn-link {
  border: 2px solid #FFC000;
  color: #000;
  background: url("../images/bg_btn-link01.png") repeat-x 0 0 / auto 100%;
}
#greenfit #plan .box#plan-kaitori a.btn-link {
  border: 2px solid #F39E95;
  background-image: url("../images/bg_btn-link02.png");
}
#greenfit #plan .box#plan-oazukari a.btn-link {
  border: 2px solid #00B0F0;
  background-image: url("../images/bg_btn-link03.png");
}
#greenfit #plan .box .body .table_d th {
  background: #eee;
}
#greenfit #plan .box .body .table_d tr.premium > * {
  font-weight: bold;
}
#greenfit #plan .box .body .table_d tr.premium th {
  background: rgba(255,192,0,.20);
}
#greenfit #plan .box#plan-oazukari .body .table_d tr.premium th {
  background: rgba(0,176,240,.20);
}
#greenfit #plan #hikaku {
  margin: 10px 0;
  table-layout: fixed;
}
#greenfit #plan #hikaku tr> * {
  border-color: #333;
}
#greenfit #plan #hikaku tbody tr > td > span {
  display: block;
}
#greenfit #plan #hikaku tbody tr:nth-child(3) > th,
#greenfit #plan #hikaku tbody tr:nth-child(3) > td:nth-child(2) {
  background: #FDF1EF;
}
#greenfit #plan #hikaku tbody tr:nth-child(4) > th,
#greenfit #plan #hikaku tbody tr:nth-child(4) > td:nth-child(2) {
  background: #FBE2DF;
}
#greenfit #plan #hikaku tfoot th,
#greenfit #plan #hikaku tfoot tr > td:nth-child(2) {
  background: #FAD3CF;
}
#greenfit #plan #hikaku tbody tr:nth-child(3) > td:nth-child(3) {
  background: #D9F3FD;
}
#greenfit #plan #hikaku tbody tr:nth-child(4) > td:nth-child(3) {
  background: #B2E7FA;
}
#greenfit #plan #hikaku tfoot tr > td:nth-child(3) {
  background: #8CDBF8;
}
#greenfit #plan #hikaku tbody tr:nth-child(3) > td:nth-child(4),
#greenfit #plan #hikaku tbody tr:nth-child(3) > td:nth-child(5) {
  background: #FFF6D9;
}
#greenfit #plan #hikaku tbody tr:nth-child(4) > td:nth-child(4),
#greenfit #plan #hikaku tbody tr:nth-child(4) > td:nth-child(5) {
  background: #FFECB2;
}
#greenfit #plan #hikaku tfoot tr > td:nth-child(4),
#greenfit #plan #hikaku tfoot tr > td:nth-child(5) {
  background: #FFE38C;
}

/* ess */
#greenfit #ess h2 {
  border: 1px solid #12438F;
  color: #12438F;
  background: #E9F7FF;
  font-weight: bold;
}
#greenfit #ess h2::after {
  content: none;
}
#greenfit #ess p.img {
  text-align: center;
}
#greenfit #ess .blue {
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 5px;
}
#greenfit #ess .logo {
  margin: 0 auto;
  width: 100%;
  max-width: 800px;
}
#greenfit #ess a.btn-link {
  border: 2px solid #12438F;
  color: #fff;
  background: #12438F;
}

/* faq */
#greenfit #faq {
  background: url("../images/lightpaperfibers.png") repeat 0 0;
}
#greenfit #faq dl dt {
  background: #fff;
  border: 2px solid #2CA338;
  border-radius: 10px;
  position: relative;
  cursor: pointer;
}
#greenfit #faq dl dt::after {
  content: "";
  display: block;
  background: url("../images/plus.png") no-repeat 0 0 / auto 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
}
#greenfit #faq dl dt.active::after {
  background-image: url("../images/minus.png");
}
#greenfit #faq dl dd {
  background: #fff;
  border: 2px solid #2CA338;
  border-top: none;
  border-radius: 0 0 10px 10px;
  margin-top: -10px;
  position: relative;
}
#greenfit #faq dl dd > *:first-child {
  border-top: 1px solid #878787;
  padding-top: 15px;
}
#greenfit .campaign {
	margin-top: 2em;
	border: 1px solid #E8340C;
}
#greenfit .campaign h3 {
	padding-left: 0;
	text-align: center;
	color: #E8340C;
	line-height: 1.3;
	margin-bottom: .2em;
}
#greenfit .campaign h3::before {
	content: none;
}
#greenfit .campaign .date {
	font-weight: bold;
	background: #E8340C;
	color: #fff;
	text-align: center;
	margin-top: .5em;
}
#greenfit .campaign .date > span {
	font-weight: normal;
	border: 1px solid #fff;
	white-space: nowrap;
}
#greenfit #about .l_row > * .list,
#greenfit #plan #hikaku tbody tr > td .list {
	text-align: left;
}
#greenfit #plan .border-box.red > .info_block {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}
#greenfit .info_block dt {
	width: 7em;
}
#greenfit .info_block dd {
	width: calc(100% - 7em);
}
#greenfit .info_block > *:nth-child(n+3) {
	margin-top: .25em;
}



/* /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_
  Media Queries による切り替え
@media only screen and (max-width: 960px) {
/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/
/* スマホ向けのスタイル：960px */
@media only screen and (max-width: 768px) {  
  .l_row > * + * {
    margin-top: 15px;
  }
  footer {
    margin-bottom: 0;
    padding-bottom: 15px;
  }
  
  #greenfit {
    font-size: 14px;
    padding-bottom: 40px;
  }
  #greenfit > section {
    padding-bottom: 40px;
  }
  
  /* table style */
  #greenfit .table_d tr > * {
    padding: 5px;
    font-size: 12px;
  }
  /* btn-link */
  #greenfit a.btn-link {
    display: block;
    padding: 10px;
  }
  
  /* mainimg */
  #greenfit .mainimg {
    background-position: center bottom, -25% 10%, center top, left top;
    background-size: auto 15vh, auto 25vh, auto 30vh, auto 100%;
    padding: 15px 0 90px;
  }
  #greenfit .mainimg .hcopy {
    padding: 10px 0;
  }
  #greenfit .mainimg .hcopy img {
    display: block;
    margin: auto;
    height: 32px;
  }
  #greenfit .mainimg .hcopy img + img {
    margin-top: 3px;
  }
  #greenfit nav {
    padding: 10px 0 5px;
  }
  #greenfit nav::before {
    height: 5vh;
    top: -6vh;
  }
  
  /* section */
  #greenfit > section {
    padding: 30px 0;
  }
  #greenfit > section h2 {
    padding-bottom: 20px;
  }
  #greenfit > section h2::after {
    height: 3px;
    margin: 15px auto 0;
  }
  #greenfit > section h2 img {
    display: block;
    margin: auto;
    height: 26px;
  }
  #greenfit > section h2 img + img {
    margin-top: 8px;
  }
  #greenfit > section h3 {
    font-size: 18px;
  }

  /* about */
  #greenfit #about .l_row {
    overflow: hidden;
  }
  #greenfit #about .l_row > li {
    float: left;
    width: 50%;
    margin: 0;
    text-align: center;
  }
  #greenfit #about .l_row > li:nth-child(odd) {
    padding: 0 5px 10px 0;
  }
  #greenfit #about .l_row > li:nth-child(even) {
    padding: 0 0 10px 5px;
  }
  #greenfit .border-box.red {
    padding: 10px 4%;
		text-align: left;
  }
  
  /* plan */
  #greenfit #plan {
    background-size: 10px 10px;
  }
  #greenfit #plan > .container {
    padding-bottom: 30px;
  }
  #greenfit #plan .table_d thead tr > th a {
    padding: 10px 0 25px;
    font-size: 14px;
  }
	#greenfit #plan .table_d thead tr > th a::before,
	#greenfit #plan .table_d thead tr > th a::after {
		width: 10px;
		height: 10px;
	}
	#greenfit #plan .table_d thead tr > th a::before {
		border-right: 4px solid #FFA800;
		border-bottom: 4px solid #FFA800;
		bottom: 9px;
	}
	#greenfit #plan .table_d thead tr > th a::after {
		border-right: 2px solid #fff;
		border-bottom: 2px solid #fff;
		bottom: 10px;
	}
  #greenfit #plan #hikaku thead img {
    height: 32px;
  }
  #greenfit #plan #hikaku tfoot th {
    font-size: 14px;
  }
  #greenfit #plan #hikaku tfoot td {
    font-size: 16px;
  }
  #greenfit #plan #hikaku tfoot td > span {
    display: block;
  }
  #greenfit #plan .box {
    padding: 2.5em 0 20px;
  }
  #greenfit #plan .box#plan-kaitori {
    padding-top: 20px;
  }
  #greenfit #plan .box > .container {
    padding: 30px 15px 15px;
  }
  #greenfit #plan .box#plan-kaitori > .container {
    padding-top: 15px;
  }
  #greenfit #plan .box > .container .bubble {
    top: -1em;
    width: 90%;
  }
  #greenfit #plan .box .heading > h4 {
    width: 30%;
    float: left;
  }
  #greenfit #plan .box .heading > div {
    line-height: 1.3;
  }
  #greenfit #plan .box .heading > div h5 {
    width: 66%;
    float: right;
    font-size: 5vw;
  }
  #greenfit #plan .box#plan-kaitori .heading > div h5 {
    padding-top: 1em;
  }
  #greenfit #plan .box#plan-oazukari .heading > div h5 {
    padding-top: .5em;
  }
  #greenfit #plan .box .heading > div p {
    clear: both;
    font-size: 14px;
    padding: 10px 0 15px;
  }
  #greenfit #plan .box .body {
    text-align: center;
  }
  #greenfit #plan .box .body .l_row + h6 {
    margin-top: 20px;
  }
  #greenfit #plan .box .body h6 > span {
    display: block;
  }
  #greenfit #plan .box .body .pricetxt {
    font-size: 16px;
  }
  #greenfit #plan .box .body .pricetxt > strong {
    font-size: 24px;
  }
  #greenfit #plan .box .body .plus {
    margin-top: 42px;
  }
  #greenfit #plan .box .body .plus::before {
    width: 24px;
    top: -50px;
  }
  #greenfit #plan .box .body .price.h01 img {
    height: 40px;
  }
  #greenfit #plan .box .body .price.h02 img {
    height: 78px;
  }
  #greenfit #plan .box .body .price.h03 img {
    height: auto;
    max-height: 80px;
  }
  #greenfit #plan .box .body .price.h04 img {
    height: 80px;
  }
  #greenfit #plan .box .body .equal {
    margin-top: 45px;
  }
  #greenfit #plan .box .body .equal::before {
    width: 25px;
    top: -52px;
    left: calc(50% - 12.5px);
    transform: rotate(90deg);
  }
  #greenfit #plan .box .body .table_d tr > * {
    font-size: 14px;
  }
  #greenfit #plan .box a.btn-link {
    margin-top: 20px;
  }
  #greenfit #plan #attention {
    padding: 10px 0 0;
  }
  /* ess */
  #greenfit #ess h2 {
    font-size: 16px;
    border-radius: 10px;
    margin-bottom: 10px;
    padding: 10px;
  }
  #greenfit #ess p.img {
    padding: 10px 0;
  }
  
  /* faq */
  #greenfit #faq dl dt {
    padding: 10px 40px 10px 15px;
  }
  #greenfit #faq dl dt::after {
    width: 25px;
    height: 25px;
    right: 5px;
  }
  #greenfit #faq dl dd + dt {
    margin-top: 10px;
  }
  #greenfit #faq dl dd {
    padding: 10px 15px;
  }
  #greenfit .campaign {
		padding: 15px 3%;
	}
	#greenfit .campaign h3 {
		font-size: 22px;
	}
	#greenfit .campaign .l_row > *:nth-child(2) {
		text-align: left;
		margin-top: 10px;
	}
	#greenfit .campaign .date {
		font-size: 120%;
		padding: 10px 4%;
		border-radius: 6px;
	}
	#greenfit .campaign .date > span {
		font-size: 80%;
		display: block;
		margin-bottom: .5em;
	}
	
	
	

}

/* タブレット＆PCのスタイル：769px */
@media only screen and (min-width: 769px) {
  .l_row {
    display: table;
    width: 100%;
    table-layout: fixed;
  }
  .l_row > * {
    display: table-cell;
    vertical-align: top;
  }
  
  #greenfit {
    font-size: 16px;
    padding-bottom: 80px;
  }
  #greenfit a, #greenfit a img {
    transition: .5s;
  }
  #greenfit a:hover img {
    opacity: .7;
  }
  #greenfit > section {
    padding-bottom: 60px;
  }
  
  /* table style */
  #greenfit .table_d tr > * {
    padding: 10px 15px;
  }
  
  /* btn-link */
  #greenfit a.btn-link {
    display: inline-block;
    font-size: 18px;
    padding: 10px 30px;
  }
  
  /* mainimg */
  #greenfit .mainimg {
    background-position: center bottom, -10px -100px, center top, left top;
    background-size: auto auto, auto auto, auto auto, auto 100%;
    padding: 20px 0 160px;
  }
  #greenfit .mainimg .hcopy {
    padding: 20px 0;
  }
  #greenfit nav {
    padding: 15px 0 10px;
  }
  #greenfit nav::before {
    height: 56px;
    top: -60px;
  }
  
  /* section */
  #greenfit > section {
    padding: 80px 0 100px;
  }
  #greenfit > section h2 {
    padding-bottom: 40px;
  }
  #greenfit > section h2::after {
    height: 4px;
    margin: 25px auto 0;
  }
  #greenfit > section h3 {
    font-size: 24px;
  }
  
  /* about */
  #greenfit #about {
    text-align: center;
  }
  #greenfit #about .l_row {
    border-spacing: 15px;
  }
  
  /* plan */
  #greenfit #plan > .container {
    padding-bottom: 80px;
  }
  #greenfit #plan .table_d thead tr > th a {
    font-size: 20px;
    padding: 15px 0 35px;
  }
  #greenfit #plan .table_d thead tr > th a:hover {
    opacity: .7;
  }
	#greenfit #plan .table_d thead tr > th a::before,
	#greenfit #plan .table_d thead tr > th a::after {
		width: 12px;
		height: 12px;
	}
	#greenfit #plan .table_d thead tr > th a::before {
		border-right: 7px solid #FFA800;
		border-bottom: 7px solid #FFA800;
		bottom: 13px;
	}
	#greenfit #plan .table_d thead tr > th a::after {
		border-right: 3px solid #fff;
		border-bottom: 3px solid #fff;
		bottom: 15px;
	}
  #greenfit #plan #hikaku tr > *:nth-child(1) {
    width: 12%;
  }
  #greenfit #plan #hikaku tr > *:nth-child(2) {
    width: 15%;
  }
  #greenfit #plan #hikaku tr > *:nth-child(3) {
    width: 21%;
  }
  #greenfit #plan #hikaku tr > *:nth-child(4) {
    width: 21%;
  }
  #greenfit #plan #hikaku tr > *:nth-child(5) {
    width: 21%;
  }
  #greenfit #plan #hikaku thead img {
    height: 52px;
  }
  #greenfit #plan #hikaku tbody tr > th {
    white-space: nowrap;
  }
  #greenfit #plan #hikaku tbody tr:nth-child(1) > td {
    font-size: 90%;
  }
  #greenfit #plan #hikaku tbody tr > *,
  #greenfit #plan #hikaku tfoot tr > * {
    padding: 10px 5px;
    height: 63px;
  }
  #greenfit #plan #hikaku tfoot th {
    font-size: 24px;
  }
  #greenfit #plan #hikaku tfoot td {
    font-size: 30px;
  }
  #greenfit #plan .box {
    padding: 74px 0 50px;
  }
  #greenfit #plan .box#plan-kaitori {
    padding-top: 50px;
  }
  #greenfit #plan .box#plan-waon {
    border-top-width: 2px;
  }
  #greenfit #plan .box > .container {
    padding: 40px 30px 30px;
  }
  #greenfit #plan .box#plan-kaitori > .container {
    padding-top: 30px;
  }
  #greenfit #plan .box > .container .bubble {
    width: 480px;
    top: -24px;
  }
  #greenfit #plan .box .heading {
    display: table;
    table-layout: fixed;
    width: 100%;
    padding-bottom: 20px;
  }
  #greenfit #plan .box .heading > * {
    display: table-cell;
    vertical-align: middle;
  }
  #greenfit #plan .box .heading > h4 {
    width: 30%;
    padding-right: 30px;
  }
  #greenfit #plan .box .heading > div {
    width: 70%;
  }
  #greenfit #plan .box .heading > div h5 {
    font-size: 24px;
    margin-bottom: 5px;
  }
  #greenfit #plan .box .body .l_row > div {
    vertical-align: middle;
  }
  #greenfit #plan .box .body .l_row > div:nth-child(1) {
    width: 40%;
  }
  #greenfit #plan .box .body .l_row > div:nth-child(2) {
    width: 60%;
  }
  #greenfit #plan .box#plan-kaitori .body .l_row > div:nth-child(1) {
    width: 45%;
  }
  #greenfit #plan .box#plan-kaitori .body .l_row > div:nth-child(2) {
    width: 55%;
  }
  #greenfit #plan .box#plan-youmeca .body .l_row > div:nth-child(1) {
    width: 45%;
  }
  #greenfit #plan .box#plan-youmeca .body .l_row > div:nth-child(2) {
    width: 55%;
  }
  #greenfit #plan .box#plan-waon .body .l_row > div:nth-child(1) {
    width: 50%;
  }
  #greenfit #plan .box#plan-waon .body .l_row > div:nth-child(2) {
    width: 50%;
  }
  #greenfit #plan .box .body .l_row + h6 {
    margin-top: 30px;
  }
  #greenfit #plan .box .body .l_row.modelcase {
    width: auto;
    margin-left: auto;
    margin-right: auto;
  }
  #greenfit #plan .box .body .l_row.modelcase > div {
    vertical-align: bottom;
    width: auto !important;
  }
  #greenfit #plan .box .body .l_row.modelcase > div:nth-child(1) {
    padding-right: 20px;
  }
  #greenfit #plan .box .body .l_row.modelcase .plus {
    margin-top: 0;
    padding-left: 50px;
  }
  #greenfit #plan .box .body .l_row.modelcase .plus::before {
    top: auto;
    right: auto;
    bottom: 0;
  }
  #greenfit #plan .box .body h6 > span {
    display: inline-block;
    vertical-align: text-top;
  }
  #greenfit #plan .box .body .plus {
    margin-top: 60px;
  }
  #greenfit #plan .box .body .plus::before {
    width: 29px;
    top: -56px;
  }
  #greenfit #plan .box#plan-waon .body .pricetit img {
    margin-right: 5px;
  }
  #greenfit #plan .box .body .pricetxt {
    font-size: 24px;
  }
  #greenfit #plan .box .body .pricetxt > strong {
    font-size: 32px;
  }
  #greenfit #plan .box .body .equal {
    padding-left: 40px;
  }
  #greenfit #plan .box .body .equal::before {
    width: 29px;
    left: 0;
  }
  #greenfit #plan .box#plan-oazukari .body .equal::before {
    top: 110px;
  }
  #greenfit #plan .box#plan-youmeca .body .equal::before {
    top: 82px;
  }
  #greenfit #plan .box#plan-waon .body .equal::before {
    top: 88px;
  }
  #greenfit #plan .box a.btn-link {
    margin-top: 30px;
  }
  #greenfit #plan .box a.btn-link:hover {
    background: #FFA700;
    color: #fff;
  }
  #greenfit #plan .box#plan-kaitori a.btn-link:hover {
    background: #EC7F77;
  }
  #greenfit #plan .box#plan-oazukari a.btn-link:hover {
    background: #0093E9;
  }
  #greenfit #plan .box .body .table_d tr.premium > * {
    padding: 25px 15px;
  }
  #greenfit #plan #attention {
    padding: 20px 0 0;
  }
  
  /* ess */
  #greenfit #ess h2 {
    text-align: center;
    padding: 0;
    font-size: 24px;
    line-height: 50px;
    border-radius: 25px;
    margin-bottom: 10px;
  }
  #greenfit #ess p.img {
    padding: 20px 0;
  }
  #greenfit #ess .blue {
    font-size: 19px;
  }
  #greenfit #ess a.btn-link:hover {
    background: #5AA5CD;
    border-color: #5AA5CD;
  }
  
  /* faq */
  #greenfit #faq dl dt {
    font-size: 18px;
    padding: 10px 60px 10px 20px;
  }
  #greenfit #faq dl dt::after {
    width: 30px;
    height: 30px;
    right: 10px;
  }
  #greenfit #faq dl dd + dt {
    margin-top: 25px;
  }
  #greenfit #faq dl dd {
    padding: 10px 20px 20px;
  }
	
  #greenfit .campaign {
		padding: 20px 30px;
	}
	#greenfit .campaign h3 {
		font-size: 30px;
	}
	#greenfit .campaign .l_row > * {
		vertical-align: middle;
	}
	#greenfit .campaign .l_row > *:nth-child(1) {
		width: 18%;
	}
	#greenfit .campaign .l_row > *:nth-child(2) {
		width: 82%;
		font-size: 110%;
	}
	#greenfit .campaign .date {
		font-size: 130%;
		line-height: 1;
		padding: .5em 1em;
		border-radius: 21px;
	}
	#greenfit .campaign .date > span {
		font-size: 70%;
		display: inline-block;
		vertical-align: .1em;
		padding: .2em .5em;
		margin-right: 1em;
	}
	
	
	
	

}

  
