@charset "utf-8";
/* CSS Document */

address, article, aside, figure, footer, header, hgroup, menu, nav, section {
  display: block
}

[hidden], command, datalist, menu[type=context], rp, source {
  display: none
}

* {
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box
}

html {
  font-size: 62.5%;
  height: 100%
}

body {
  font-size: 13px;
  font-size: 1.3rem;
  height: 100%;
  line-height: 1;
  text-align: left;
  background: #fff;
  padding: 0;
  margin: 0;
  color: #000;
  -webkit-text-size-adjust: none
}

h1, h2, h3, h4, h5 {
  margin: 0;
  padding: 0;
  font-weight: 400
}

dl, ol, ul {
  list-style: none;
  margin: 0;
  padding: 0
}

li {
  list-style-type: none;
  list-style: none
}

dd, p {
  margin: 0
}

p {
  line-height: 1.8;
  padding: 0;
  font-size: 1.4rem
}

table {
  font-size: inherit;
  border-collapse: collapse;
  border-spacing: 0
}

table>caption {
  text-align: left
}

table th {
  text-align: left
}

table td, table th {
  margin: 0;
  padding: 0
}

img {
  border: none;
  vertical-align: bottom;
  max-width: 100%;
  height: auto;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

pre {
  border: 1px solid #bfbfbf;
  padding: 5px
}

a {
  text-decoration: none;
  outline: 0;
  color: #000
}

form {
  margin: 0;
  padding: 0
}

button, input[type=text], select, textarea {
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none
}

button:focus, input:focus, select:focus, textarea:focus {
  outline: 0
}


.button-overlay, .buttonFrame a:before {
  z-index: 0;
  content: "";
  position: absolute;
  display: block;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #006144;
  -webkit-transform-origin: right top;
  transform-origin: right top;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  transition: -webkit-transform .3s cubic-bezier(.165, .84, .44, 1);
  transition: transform .3s cubic-bezier(.165, .84, .44, 1);
  transition: transform .3s cubic-bezier(.165, .84, .44, 1), -webkit-transform .3s cubic-bezier(.165, .84, .44, 1)
}

.buttonFrame a {
  display: block;
  text-align: center;
  color: #006144;
  font-size: 1.4rem;
  border: 3px solid #006144;
  padding: 8px 28px;
  letter-spacing: .1em;
  position: relative;
  cursor: pointer;
  font-family: futura-pt-bold, sans-serif;
  font-weight: 700;
  font-style: normal
}
	
.button-overlay, .buttonFrame01 a:before {
  z-index: 0;
  content: "";
  position: absolute;
  display: block;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #e81d75;
  -webkit-transform-origin: right top;
  transform-origin: right top;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  transition: -webkit-transform .3s cubic-bezier(.165, .84, .44, 1);
  transition: transform .3s cubic-bezier(.165, .84, .44, 1);
  transition: transform .3s cubic-bezier(.165, .84, .44, 1), -webkit-transform .3s cubic-bezier(.165, .84, .44, 1)
}

.buttonFrame01 a {
  display: block;
  text-align: center;
  color: #e81d75;
  font-size: 1.4rem;
  border: 3px solid #e81d75;
  padding: 8px 28px;
  letter-spacing: .1em;
  position: relative;
  cursor: pointer;
  font-family: futura-pt-bold, sans-serif;
  font-weight: 700;
  font-style: normal
}
	
.button-overlay, .buttonFrame02 a:before {
  z-index: 0;
  content: "";
  position: absolute;
  display: block;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #c69f00;
  -webkit-transform-origin: right top;
  transform-origin: right top;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  transition: -webkit-transform .3s cubic-bezier(.165, .84, .44, 1);
  transition: transform .3s cubic-bezier(.165, .84, .44, 1);
  transition: transform .3s cubic-bezier(.165, .84, .44, 1), -webkit-transform .3s cubic-bezier(.165, .84, .44, 1)
}

.buttonFrame02 a {
  display: block;
  text-align: center;
  color: #c69f00;
  font-size: 1.4rem;
  border: 3px solid #c69f00;
  padding: 8px 28px;
  letter-spacing: .1em;
  position: relative;
  cursor: pointer;
  font-family: futura-pt-bold, sans-serif;
  font-weight: 700;
  font-style: normal
}

.buttonFrame a span {
  position: relative;
  z-index: 1
}

@media only screen and (min-width:960px) {
  .buttonFrame a {
    transition: .4s cubic-bezier(.165, .84, .44, 1) 0s
  }
  .buttonFrame a:hover {
    color: #fff
  }
  .buttonFrame a:hover:before {
    -webkit-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scale(1);
    transform: scale(1)
  }
}
	
.buttonFrame01 a span {
  position: relative;
  z-index: 1
}

@media only screen and (min-width:960px) {
  .buttonFrame01 a {
    transition: .4s cubic-bezier(.165, .84, .44, 1) 0s
  }
  .buttonFrame01 a:hover {
    color: #fff
  }
  .buttonFrame01 a:hover:before {
    -webkit-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scale(1);
    transform: scale(1)
  }
}
	
.buttonFrame02 a span {
  position: relative;
  z-index: 1
}

@media only screen and (min-width:960px) {
  .buttonFrame02 a {
    transition: .4s cubic-bezier(.165, .84, .44, 1) 0s
  }
  .buttonFrame02 a:hover {
    color: #fff
  }
  .buttonFrame02 a:hover:before {
    -webkit-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scale(1);
    transform: scale(1)
  }
}
	
.detail {
  background-color: #f7f7f7;
  padding: 100px 0;
  margin-top: 0px
}

@media only screen and (max-width:960px) {
  .detail {
    padding: 80px 0 70px
  }
}

.detail_wrap {
  position: relative
}

@media only screen and (min-width:960px) {
  .detail_wrap {
    display: flex;
    justify-content: space-between;
    max-width: 1190px;
    padding-left: 50px;
    padding-right: 50px;
    margin-left: auto;
    margin-right: auto
  }
}

@media only screen and (min-width:960px) and (max-width:1090px) {
  .detail_wrap {
    max-width: none;
    padding-left: 4.58716%;
    padding-right: 4.58716%
  }
}

@media only screen and (min-width:960px) and (max-width:960px) {
  .detail_wrap {
    padding-left: 0;
    padding-right: 0
  }
}

@media only screen and (max-width:960px) and (max-width:960px) {
  .detail_wrap {
    width: calc(100% - 70px);
    margin-left: auto;
    margin-right: auto
  }
}

.detail_background {
  font-size: 11.4rem;
  color: #fff;
  position: absolute;
  z-index: 0;
  width: 100%;
  left: 0;
  top: -33px;
  text-align: center;
  font-family: futura-pt-bold, sans-serif;
  font-weight: 700;
  font-style: normal
}

@media only screen and (max-width:960px) {
  .detail_background {
    font-size: 5.4rem;
    top: -40px
  }
}

.detail_image {
  position: relative;
  z-index: 1
}

@media only screen and (min-width:960px) {
  .detail_image {
    width: 49.17431%
  }
}

@media only screen and (max-width:960px) {
  .detail_image {
    text-align: center
  }
}

.detail_content {
  position: relative;
  z-index: 1;
	text-align: left;
}

@media only screen and (min-width:960px) {
  .detail_content {
    width: 40.82569%
  }
}

.detail .headlineLv1 {
  margin: 25px 0 35px
}

@media only screen and (max-width:960px) {
  .detail .headlineLv1 {
    margin: 40px 0 30px
  }
}

.detail_lead {
  font-size: 1.8rem;
  line-height: 1.55556;
  margin-bottom: 5px;
  letter-spacing: .14em
}

.detail_title {
  font-size: 2.4rem;
  line-height: 1.41667;
  margin-bottom: 10px;
  letter-spacing: .16em
}

.detail_spec {
  font-size: 1.4rem;
  line-height: 1.71429;
  letter-spacing: .08em;
  margin-bottom: 25px
}

.detail_price {
  font-size: 2.4rem;
  color: #006144;
  margin-bottom: 10px;
  letter-spacing: .1em;
  font-family: futura-pt-bold, sans-serif;
  font-weight: 700;
  font-style: normal
}
	
.detail_price01 {
  font-size: 2.4rem;
  color: #e81d75;
  margin-bottom: 10px;
  letter-spacing: .1em;
  font-family: futura-pt-bold, sans-serif;
  font-weight: 700;
  font-style: normal
}
	
.detail_price02 {
  font-size: 2.4rem;
  color: #c69f00;
  margin-bottom: 10px;
  letter-spacing: .1em;
  font-family: futura-pt-bold, sans-serif;
  font-weight: 700;
  font-style: normal
}

.detail_price em {
  font-size: 1.4rem;
  font-style: normal;
  margin-left: 15px
}

.detail .buttonFrame {
  width: 168px;
  margin-bottom: 30px
}

.detail .buttonFrame a {
  font-size: 1.8rem;
  padding: 12px 28px
}
	
.detail .buttonFrame01 {
  width: 168px;
  margin-bottom: 30px
}

.detail .buttonFrame01 a {
  font-size: 1.8rem;
  padding: 12px 28px
}
	
.detail .buttonFrame02 {
  width: 168px;
  margin-bottom: 30px
}

.detail .buttonFrame02 a {
  font-size: 1.8rem;
  padding: 12px 28px
}

.detail_textLink {
  font-size: 1.6rem;
  color: #006144;
  margin-bottom: 65px;
  font-weight: 700
}

.detail_textLink a {
  color: #006144;
  letter-spacing: .16em;
  display: inline-block;
  position: relative
}

.detail_textLink a:after {
  content: "";
  height: 1px;
  width: 100%;
  background: #006144;
  position: absolute;
  left: 0;
  bottom: 2px;
  -webkit-transform: scale(1);
  transform: scale(1);
  -webkit-transform-origin: left top;
  transform-origin: left top;
  transition: -webkit-transform .8s;
  transition: transform .8s;
  transition: transform .8s, -webkit-transform .8s;
  transition-timing-function: cubic-bezier(.165, .84, .44, 1)
}

@media only screen and (min-width:960px) {
  .detail_textLink a {
    transition: .4s cubic-bezier(.165, .84, .44, 1) 0s
  }
  .detail_textLink a:hover:after {
    -webkit-transform-origin: right top;
    transform-origin: right top;
    -webkit-transform: scaleX(0);
    transform: scaleX(0)
  }
}
	
.detail_textLink01 {
  font-size: 1.6rem;
  color: #e81d75;
  margin-bottom: 65px;
  font-weight: 700
}

.detail_textLink01 a {
  color: #e81d75;
  letter-spacing: .16em;
  display: inline-block;
  position: relative
}

.detail_textLink01 a:after {
  content: "";
  height: 1px;
  width: 100%;
  background: #e81d75;
  position: absolute;
  left: 0;
  bottom: 2px;
  -webkit-transform: scale(1);
  transform: scale(1);
  -webkit-transform-origin: left top;
  transform-origin: left top;
  transition: -webkit-transform .8s;
  transition: transform .8s;
  transition: transform .8s, -webkit-transform .8s;
  transition-timing-function: cubic-bezier(.165, .84, .44, 1)
}

@media only screen and (min-width:960px) {
  .detail_textLink01 a {
    transition: .4s cubic-bezier(.165, .84, .44, 1) 0s
  }
  .detail_textLink01 a:hover:after {
    -webkit-transform-origin: right top;
    transform-origin: right top;
    -webkit-transform: scaleX(0);
    transform: scaleX(0)
  }
}
	
.detail_textLink02 {
  font-size: 1.6rem;
  color: #c69f00;
  margin-bottom: 65px;
  font-weight: 700
}

.detail_textLink02 a {
  color: #c69f00;
  letter-spacing: .16em;
  display: inline-block;
  position: relative
}

.detail_textLink02 a:after {
  content: "";
  height: 1px;
  width: 100%;
  background: #c69f00;
  position: absolute;
  left: 0;
  bottom: 2px;
  -webkit-transform: scale(1);
  transform: scale(1);
  -webkit-transform-origin: left top;
  transform-origin: left top;
  transition: -webkit-transform .8s;
  transition: transform .8s;
  transition: transform .8s, -webkit-transform .8s;
  transition-timing-function: cubic-bezier(.165, .84, .44, 1)
}

@media only screen and (min-width:960px) {
  .detail_textLink02 a {
    transition: .4s cubic-bezier(.165, .84, .44, 1) 0s
  }
  .detail_textLink a:hover:after {
    -webkit-transform-origin: right top;
    transform-origin: right top;
    -webkit-transform: scaleX(0);
    transform: scaleX(0)
  }
}

.detailInfo_title {
  font-size: 1.4rem;
  letter-spacing: .1em;
  color: #006144;
  margin-bottom: 35px;
  font-family: futura-pt-bold, sans-serif;
  font-weight: 700;
  font-style: normal
}

.detailInfo_title01 {
  font-size: 1.4rem;
  letter-spacing: .1em;
  color: #e81d75;
  margin-bottom: 35px;
  font-family: futura-pt-bold, sans-serif;
  font-weight: 700;
  font-style: normal
}

.detailInfo_title02 {
  font-size: 1.4rem;
  letter-spacing: .1em;
  color: #c69f00;
  margin-bottom: 35px;
  font-family: futura-pt-bold, sans-serif;
  font-weight: 700;
  font-style: normal
}

.detailInfo_list {
  border-top: 2px dotted #d5d5d5
}

.detailInfo_list li {
  border-bottom: 2px dotted #d5d5d5
}

.detailInfo_label {
  position: relative;
  padding: 22px 10px;
  cursor: pointer
}

.detailInfo_label span {
  font-size: 1.4rem;
  letter-spacing: .15em
}

@media only screen and (min-width:960px) {
  .detailInfo_label {
    transition: .4s cubic-bezier(.165, .84, .44, 1) 0s
  }
  .detailInfo_label:hover {
    color: #333333;
  }
}

.detailInfo_label i {
  width: 16px;
  height: 16px;
  position: absolute;
  right: 10px;
  top: calc(50% - 8px);
  transition: .9s cubic-bezier(.19, 1, .22, 1)
}

.is-opened .detailInfo_label i {
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg)
}

.detailInfo_label i:after, .detailInfo_label i:before {
  content: "";
  display: block;
  background-color: #333333;
  position: absolute
}

.detailInfo_label i:before {
  width: 2px;
  height: 100%;
  top: 0;
  left: calc(50% - 1px)
}

.detailInfo_label i:after {
  width: 100%;
  height: 2px;
  left: 0;
  top: calc(50% - 1px)
}

.detailInfo_body {
  display: none;
  margin-top: -10px;
  padding: 0 10px 18px
}

.detailInfo_body p {
  font-size: 1.2rem;
  line-height: 1.66667;
  letter-spacing: .05em
}