@charset "UTF-8";
/* CSS Document */
/*--------------------------------------
	BUSINESS
----------------------------------------*/
#purchase .contents-area .msg {
  width: 96%;
  max-width: 1200px;
  display: grid;
  grid-template-columns: 450px 1fr;
  column-gap: 5%;
  padding: 0 2%;
  margin: 0 auto; }
  @media only screen and (max-width: 1199px) {
    #purchase .contents-area .msg {
      grid-template-columns: 1fr; } }
  #purchase .contents-area .msg img {
    width: 100%;
    max-width: 450px;
    height: 300px;
    object-fit: cover;
    margin: 0 auto; }
    @media only screen and (max-width: 1199px) {
      #purchase .contents-area .msg img {
        max-width: 600px; } }
  @media only screen and (max-width: 1199px) {
    #purchase .contents-area .msg div {
      padding: 0 2%; } }
  #purchase .contents-area .msg div h3 {
    color: #333;
    font-size: calc(clamp(1.6rem, 1vw + 0.75rem, 2rem));
    font-weight: normal;
    line-height: 2;
    margin: 5%; }
    @media only screen and (max-width: 1199px) {
      #purchase .contents-area .msg div h3 {
        text-align: center;
        margin: 5% 0 5% -2em; } }
    #purchase .contents-area .msg div h3 span {
      background: linear-gradient(transparent 60%, #f7b500 60%);
      padding: 0 .3em; }
  #purchase .contents-area .msg div p {
    color: #333;
    font-size: 1.8em;
    line-height: 2; }
    @media only screen and (max-width: 1199px) {
      #purchase .contents-area .msg div p {
        text-align: center;
        font-size: 1.4em; } }
#purchase .contents-area .cam {
  width: 96%;
  max-width: 1000px;
  padding: 0 2%;
  margin: 90px auto; }
  @media only screen and (max-width: 1199px) {
    #purchase .contents-area .cam {
      margin: 60px auto; } }
  #purchase .contents-area .cam h3 {
    color: #333;
    font-size: calc(clamp(2rem, 2vw + 0.75rem, 3rem));
    line-height: 1.5;
    margin-bottom: 30px; }
    #purchase .contents-area .cam h3 span {
      display: block;
      font-size: calc(clamp(1rem, 1vw + 0.5rem, 1.2rem));
      position: relative; }
      #purchase .contents-area .cam h3 span:before {
        content: '';
        display: block;
        width: 100%;
        height: 1px;
        background: #00a23f;
        position: absolute;
        top: -.5rem; }
  #purchase .contents-area .cam .cam-box {
    display: grid;
    grid-template-columns: 1fr 1fr; }
    @media only screen and (max-width: 799px) {
      #purchase .contents-area .cam .cam-box {
        grid-template-columns: 1fr;
        max-width: 500px;
        margin: 0 auto; } }
    #purchase .contents-area .cam .cam-box dl {
      padding: 40px 0; }
      #purchase .contents-area .cam .cam-box dl:first-child {
        background: #f7b500; }
      #purchase .contents-area .cam .cam-box dl:last-child {
        background: #00a23f; }
      #purchase .contents-area .cam .cam-box dl dt {
        text-align: center;
        color: #fff;
        font-size: calc(clamp(2rem, 5vw + 1rem, 6rem));
        margin-bottom: 30px; }
      #purchase .contents-area .cam .cam-box dl dd {
        width: 100%;
        max-width: 390px;
        color: #fff;
        font-size: 1.6em;
        font-weight: bold;
        line-height: 2;
        margin: 0 auto; }
        @media only screen and (max-width: 799px) {
          #purchase .contents-area .cam .cam-box dl dd {
            font-size: 1.4em;
            padding: 0 0 0 5%; } }
#purchase .contents-area .land {
  width: 96%;
  max-width: 1000px;
  padding: 0 2%;
  margin: 90px auto; }
  @media only screen and (max-width: 699px) {
    #purchase .contents-area .land {
      max-width: 500px;
      margin: 60px auto; } }
  #purchase .contents-area .land h3 {
    text-align: center;
    color: #00a23f;
    font-size: calc(clamp(1.4rem, 2vw + 0.75rem, 2rem));
    line-height: 1.5;
    margin-bottom: 30px; }
    #purchase .contents-area .land h3 span {
      background: linear-gradient(transparent 60%, #f7b500 60%);
      color: #333;
      padding: 0 .3em; }
  #purchase .contents-area .land ul {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 30px;
    background: #000;
    padding: 60px;
    position: relative; }
    @media only screen and (max-width: 699px) {
      #purchase .contents-area .land ul {
        grid-template-columns: 1fr 1fr;
        gap: 2vw;
        padding: 2vw; } }
    #purchase .contents-area .land ul:before {
      content: '';
      display: block;
      width: 100%;
      height: 100%;
      background: url("../../img/purchase/pixta_77847161.jpg") no-repeat center center/cover;
      position: absolute;
      top: 0;
      left: 0;
      opacity: .5; }
    #purchase .contents-area .land ul li {
      background: rgba(0, 0, 0, 0.5);
      text-align: center;
      color: #fff;
      font-size: 1.6em;
      font-weight: bold;
      line-height: 5;
      border: 1px solid #fff;
      padding: .5rem 1rem;
      position: relative;
      z-index: 1; }
      @media only screen and (max-width: 699px) {
        #purchase .contents-area .land ul li {
          font-size: 1.2em;
          padding: .5rem 0; } }
#purchase .contents-area .flow {
  width: 96%;
  max-width: 1000px;
  padding: 0 2%;
  margin: 90px auto; }
  @media only screen and (max-width: 699px) {
    #purchase .contents-area .flow {
      margin: 60px auto; } }
  #purchase .contents-area .flow h3 {
    color: #333;
    font-size: calc(clamp(2rem, 2vw + 0.75rem, 3rem));
    line-height: 1.5;
    margin-bottom: 30px; }
    #purchase .contents-area .flow h3 span {
      display: block;
      font-size: calc(clamp(1rem, 1vw + 0.5rem, 1.2rem));
      position: relative; }
      #purchase .contents-area .flow h3 span:before {
        content: '';
        display: block;
        width: 100%;
        height: 1px;
        background: #00a23f;
        position: absolute;
        top: -.5rem; }
  #purchase .contents-area .flow .flow-box {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    column-gap: 30px; }
    @media only screen and (max-width: 999px) {
      #purchase .contents-area .flow .flow-box {
        grid-template-columns: 1fr; } }
    #purchase .contents-area .flow .flow-box div.arrows {
      position: relative; }
      @media only screen and (max-width: 999px) {
        #purchase .contents-area .flow .flow-box div.arrows {
          margin: 90px 0; } }
      #purchase .contents-area .flow .flow-box div.arrows:before {
        content: '〉';
        color: #f7b500;
        font-size: 5em;
        position: absolute;
        top: 40%;
        left: -30px; }
        @media only screen and (max-width: 999px) {
          #purchase .contents-area .flow .flow-box div.arrows:before {
            content: '▼';
            font-size: 3em;
            top: -60px;
            left: calc(50% - 1rem); } }
      #purchase .contents-area .flow .flow-box div.arrows:after {
        content: '〉';
        color: #f7b500;
        font-size: 5em;
        position: absolute;
        top: 40%;
        right: -30px; }
        @media only screen and (max-width: 999px) {
          #purchase .contents-area .flow .flow-box div.arrows:after {
            content: '▼';
            font-size: 3em;
            top: auto;
            bottom: -60px;
            left: calc(50% - 1rem); } }
    #purchase .contents-area .flow .flow-box div h4 {
      text-align: center;
      color: #333;
      font-size: 1.4rem;
      line-height: 1.5; }
      #purchase .contents-area .flow .flow-box div h4 span {
        color: #f7b500;
        font-size: 1.8rem; }
      #purchase .contents-area .flow .flow-box div h4 i {
        color: #00a23f;
        font-size: 3em;
        margin: 30px 0; }
        @media only screen and (max-width: 999px) {
          #purchase .contents-area .flow .flow-box div h4 i {
            margin: 15px 0; } }
    #purchase .contents-area .flow .flow-box div p {
      text-align: center;
      font-size: 1.6em; }
#purchase .contents-area .faq {
  width: 96%;
  max-width: 1000px;
  padding: 0 2%;
  margin: 90px auto; }
  @media only screen and (max-width: 999px) {
    #purchase .contents-area .faq {
      margin: 60px auto; } }
  #purchase .contents-area .faq h3 {
    color: #333;
    font-size: calc(clamp(2rem, 2vw + 0.75rem, 3rem));
    line-height: 1.5;
    margin-bottom: 30px; }
    #purchase .contents-area .faq h3 span {
      display: block;
      font-size: calc(clamp(1rem, 1vw + 0.5rem, 1.2rem));
      position: relative; }
      #purchase .contents-area .faq h3 span:before {
        content: '';
        display: block;
        width: 100%;
        height: 1px;
        background: #00a23f;
        position: absolute;
        top: -.5rem; }
  #purchase .contents-area .faq dl {
    line-height: 1.5;
    margin-bottom: 2em; }
    #purchase .contents-area .faq dl dt {
      cursor: pointer;
      background: #f7b500;
      color: #fff;
      font-size: 2em;
      font-weight: bold;
      padding: .5em 1em;
      position: relative; }
      @media only screen and (max-width: 699px) {
        #purchase .contents-area .faq dl dt {
          font-size: 1.6em; } }
      #purchase .contents-area .faq dl dt span.grn {
        color: #00a23f;
        font-weight: bold; }
      #purchase .contents-area .faq dl dt span.cls {
        opacity: 1;
        color: #fff;
        position: absolute;
        right: 1em; }
      #purchase .contents-area .faq dl dt span.opn {
        opacity: 0;
        color: #fff;
        position: absolute;
        right: 1em; }
      #purchase .contents-area .faq dl dt.open span.cls {
        opacity: 0; }
      #purchase .contents-area .faq dl dt.open span.opn {
        opacity: 1; }
    #purchase .contents-area .faq dl dd {
      font-size: 1.8em;
      padding: .5em 1em; }
      @media only screen and (max-width: 699px) {
        #purchase .contents-area .faq dl dd {
          font-size: 1.4em; } }
      #purchase .contents-area .faq dl dd .ylw {
        color: #f7b500;
        font-weight: bold; }
#purchase .contents-area .cta {
  width: 96%;
  max-width: 800px;
  margin: 0 auto;
  background: #000;
  padding: 2%;
  position: relative; }
  @media only screen and (max-width: 1199px) {
    #purchase .contents-area .cta {
      padding: 30px 2%; } }
  #purchase .contents-area .cta:before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background: url("../../img/purchase/1-1.png") no-repeat center center/cover;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    opacity: .5; }
  #purchase .contents-area .cta h3 {
    text-align: center;
    color: #fff;
    font-size: calc(clamp(1.4rem, 2vw + 0.75rem, 2rem));
    font-weight: normal;
    line-height: 1.5;
    margin-bottom: 4%; }
    @media only screen and (max-width: 1199px) {
      #purchase .contents-area .cta h3 {
        margin-bottom: 20px; } }
  #purchase .contents-area .cta p {
    text-align: center;
    font-size: 2em; }
    @media only screen and (max-width: 599px) {
      #purchase .contents-area .cta p {
        font-size: 1.8em; } }
    #purchase .contents-area .cta p a {
      display: block;
      width: 100%;
      max-width: 400px;
      background: rgba(0, 162, 63, 0.3);
      color: #fff;
      line-height: 3;
      border: 3px solid #00a23f;
      box-sizing: border-box;
      margin: 0 auto; }
      @media only screen and (max-width: 599px) {
        #purchase .contents-area .cta p a {
          max-width: 300px; } }
      #purchase .contents-area .cta p a i {
        color: #fff;
        transition: .5s; }
      #purchase .contents-area .cta p a:hover {
        background: #00a23f; }
        #purchase .contents-area .cta p a:hover i {
          color: #f7b500; }
