@charset "UTF-8";
/*********************
color 色設定
*********************/
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

/*********************
PC
*********************/
/*********************
SP
*********************/
body,
header,
main,
section,
footer,
h1,
h2,
h3,
h4,
ul,
li,
dl,
dt,
dd,
p,
strong,
images {
  margin: 0;
  padding: 0; }

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

img {
  vertical-align: bottom;
  display: block; }
  @media only screen and (min-width: 769px) {
    img.common {
      width: 100%; } }
  @media only screen and (max-width: 768px) {
    img {
      width: 100%;
      max-width: 100%;
      height: auto; } }

body {
  width: 100%;
  font-family: Helvetica, "メイリオ", "游ゴシック", "Yu Gothic", sans-serif;
  line-height: 1.8;
  text-align: center;
  color: #000; }
  @media only screen and (min-width: 769px) {
    body {
      font-size: 16px; } }
  @media only screen and (max-width: 768px) {
    body {
      font-size: 3.73333vw; } }

main {
  width: 100%;
  margin: 0 auto;
  display: block; }

@media only screen and (min-width: 769px) {
  article.contents {
    padding: 60px 0; } }

@media only screen and (max-width: 768px) {
  article.contents {
    padding: 8vw 0; } }

article.contents h2 {
  line-height: 1.2; }
  @media only screen and (min-width: 769px) {
    article.contents h2 {
      font-size: 36px; 
      text-align: center;
      padding: 50px 0;} }
  @media only screen and (max-width: 768px) {
    article.contents h2 {
      font-size: 9.4vw;
    padding: 30px 0;} }

a {
  text-decoration: none; }
  a:link, a:hover, a:visited {
    color: #000; }
  a:hover {
    opacity: .7; }

/*********************
共通設定
*********************/
@media only screen and (min-width: 769px) {
  .wrap {
    width: 1024px;
    margin: 0 auto; } }

@media only screen and (max-width: 768px) {
  .wrap {
    width: 93.33333vw;
    margin: 0 auto; } }

.txt {
  text-align: justify;
  text-justify: inter-ideograph; }

.box {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

.por {
  position: relative; }

.poa {
  position: absolute; }

@media only screen and (max-width: 768px) {
  .pc {
    display: none; } }

@media only screen and (min-width: 769px) {
  .sp {
    display: none; } }

.btn a {
  margin: 0 auto;
  display: block;
  -webkit-transition: .5s;
  -o-transition: .5s;
  transition: .5s;
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }
  @media only screen and (min-width: 769px) {
    .btn a {
      width: 240px;
      line-height: 3;
      font-size: 15px;
      border: solid 1px #fff;
      border-radius: 2px; } }
  @media only screen and (max-width: 768px) {
    .btn a {
      width: 80vw;
      line-height: 4;
      font-size: 4.53333vw;
      border: solid 2px #fff;
      border-radius: 4px; } }
  .btn a:link, .btn a:visited {
    color: #fff;
    text-decoration: none; }
  .btn a:hover {
    background: #fff;
    color: #000; }
    .btn a:hover:after {
      border-color: transparent #000 #000 transparent; }
  .btn a:after {
    content: '';
    border-color: transparent #fff #fff transparent;
    border-width: 1px;
    border-style: solid;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transition: .5s;
    -o-transition: .5s;
    transition: .5s;
    display: inline-block;
    position: absolute; }
    @media only screen and (min-width: 769px) {
      .btn a:after {
        width: 7px;
        height: 7px;
        top: 18px;
        right: 10px; } }
    @media only screen and (max-width: 768px) {
      .btn a:after {
        width: 1.86667vw;
        height: 1.86667vw;
        top: 7.73333vw;
        right: 4vw; } }

.bgBlue {
  background-color: #13c1c1;
  color: #fff; }
  @media only screen and (min-width: 769px) {
    .bgBlue.shine {
      background-image: url(../images/pc/bg_blue.jpg);
      background-position: center center;
      background-size: auto 100%; } }
  @media only screen and (max-width: 768px) {
    .bgBlue.shine {
      background-image: url(../images/sp/bg_blue.jpg);
      background-size: 100% auto; } }

@media only screen and (min-width: 769px) {
  .colTwo {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; } }

.catch {
  font-weight: bold; }
  @media only screen and (min-width: 769px) {
    .catch {
      padding-bottom: 20px;
      font-size: 22px; } }
  @media only screen and (max-width: 768px) {
    .catch {
      padding-bottom: 5.33333vw;
      font-size: 4vw; } }

/*********************
header
*********************/
header {
  background: #fff; 
  font-weight: bold;}
  @media only screen and (min-width: 769px) {
    header {
      padding: 20px 0; } }
  @media only screen and (max-width: 768px) {
    header {
      padding: 2.26667vw 0 2.93333vw 0.26667vw; }
      header p {
        width: 28.13333vw; }
      header a {
        display: block;
        width: 33.33333vw; } }
  header .wrap {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }

/*********************
fv
*********************/
.fv {
  background-size: cover;
  background-position: center center;
  background-image: url(../images/fv_bg01.jpg);
  color: #fff; }
  @media only screen and (min-width: 769px) {
    .fv {
      height: 540px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center; } }
  @media only screen and (max-width: 768px) {
    .fv {
      height: 122.66667vw; } }
  .fv h1 {
    vertical-align: middle; }
    @media only screen and (min-width: 769px) {
      .fv h1 {
        font-size: 48px;
        line-height: 1.5;
        font-weight: bold; } }
    @media only screen and (max-width: 768px) {
      .fv h1 {
        padding: 22.66667vw 0 6.66667vw;
        font-size: 5.66667vw;
        line-height: 1.8;
        font-weight: bold; } }
    .fv h1 img {
      display: inline-block;
      vertical-align: middle;
      position: relative; }
      @media only screen and (min-width: 769px) {
        .fv h1 img {
          top: 47px; } }
      @media only screen and (max-width: 768px) {
        .fv h1 img {
          width: 66.66667vw; } }
    p.logo {
    margin: 0 0 0 130px;
    color: #2cbdc0;
    text-align: right;
    }
    .black-t{
    color: #333333;
    }
    .orange-t{
    color: #ff7e00;
    }
    p.snslogo{
    text-align: left;
    position: absolute;
    top:400px;
    }
    p.snslogo2{
    text-align: left;
    position: absolute;
    top:533px;
    width:80px;
    max-height: 100%;
    }
    p.snslogo3{
    text-align: left;
    position: absolute;
    top:173px;
    left: 150px;
    width:80px;
    max-height: 100%;
    }
    @media only screen and (max-width: 768px){
    p.snslogo {
        width: 47.66667vw;
        margin: 380px 0 0 0;
    }
    p.snslogo2 {
        width: 150px;
    }
        p.logo {
    margin: 0 0 0 61px;
    }}
    div#headcontent {
    width: 440px;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    }
    p.headtell {
    padding-left: 10px;
    font-weight: bold;
    color: #333333;
    }


@media only screen and (max-width: 768px){
    p.headtell {
        display: none;}
    div#headcontent {
        width: auto;
        display: none;
    }
    .spcvcontent{
        display: block;
    }
}
@media only screen and (min-width: 769px) {
    .spcvcontent{
        display: none;
    }
}
.spcvcontent {
    margin: 0px 25px;
}
.cvbox {
    background-color: #ff7e00;
    color: white;
    height: 60px;
    line-height: 60px;
    font-size: 5.66667vw;
    font-weight: bold;
}
.tellbox {
    background-color: #2cbdc0;
    color: white;
    height: 60px;
    line-height: 60px;
    font-size: 5.66667vw;
    font-weight: bold;
    margin-bottom: 20px;
}
.spcvcontent p {
    font-size: 4.66667vw;
    line-height: 1.8;
    font-weight: bold;
    padding: 20px 20px 0px;
}

/*********************
sec01
*********************/
.sec01 {
  background-color: #f2f5f7;
  position: relative; }
  .sec01::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-color: #f2f5f7 transparent transparent transparent;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%); }
    @media only screen and (min-width: 769px) {
      .sec01::after {
        border-width: 50px 123.5px 0 123.5px;
        bottom: -50px; } }
    @media only screen and (max-width: 768px) {
      .sec01::after {
        border-width: 6.66667vw 16.46667vw 0 16.46667vw;
        bottom: -6.66667vw; } }
  .sec01 .img {
    margin: 3em auto; }
    @media only screen and (min-width: 769px) {
      .sec01 .img {
        width: 1022px; } }
    @media only screen and (max-width: 768px) {
      .sec01 .img {
        width: 90.66667vw; } }

/*********************
sec02
*********************/

.sec02 {
  background-color: #313131;
  color: #fff; }
  @media only screen and (min-width: 769px) {
    .sec02 h2 {
      font-size: 50px; } }
  @media only screen and (max-width: 768px) {
    .sec02 h2 {
      font-size: 6.93333vw; } }
  .sec02 p tac{
    /*display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;*/
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; }
    @media only screen and (min-width: 769px) {
      .sec02 p {
        font-size: 30px;
        line-height: 1.5em;} 
        span.tac00_text {
            font-size: 22px;
        }}
    @media only screen and (max-width: 768px) {
      .sec02 p {
                font-size: 5.26667vw;
                line-height: 35px;
                font-weight: bold;} }
    .sec02 p.tac::after {
      content: '';
      padding: 14px 31px;
      display: inline-block;
      margin: 2em auto;
      background-size: cover;
      background-repeat: no-repeat;
      background-image: url(../images/sec02_arw.png); }
      @media only screen and (min-width: 769px) {
        .sec02 p .tac::after {
          width: 70px;
          height: 32px; } }
      @media only screen and (max-width: 768px) {
        .sec02 p .tac::after {
          width: 9.33333vw;
          height: 4.26667vw; } }
  .sec02Cont {
    margin: 0 auto;
    position: relative;
    z-index: 2; }
    @media only screen and (min-width: 769px) {
      .sec02Cont {
        width: 893px; } }
    @media only screen and (max-width: 768px) {
      .sec02Cont {
        width: 93.33333vw; } }
    .sec02Cont::before, .sec02Cont::after {
      content: '';
      display: block;
      background-size: cover;
      background-repeat: no-repeat;
      position: absolute;
      z-index: -1; }
      @media only screen and (min-width: 769px) {
        .sec02Cont::before, .sec02Cont::after {
          top: -132px; } }
      @media only screen and (max-width: 768px) {
        .sec02Cont::before, .sec02Cont::after {
          top: -17.6vw; } }
    .sec02Cont::before {
      background-image: url(../images/sec02_img01.png); }
      @media only screen and (min-width: 769px) {
        .sec02Cont::before {
          width: 168px;
          height: 224px;
          left: 50px; } }
      @media only screen and (max-width: 768px) {
        .sec02Cont::before {
          width: 22.4vw;
          height: 29.86667vw;
          left: 6.66667vw; } }
    .sec02Cont::after {
      background-image: url(../images/sec02_img02.png); }
      @media only screen and (min-width: 769px) {
        .sec02Cont::after {
          width: 168px;
          height: 224px;
          right: 50px; } }
      @media only screen and (max-width: 768px) {
        .sec02Cont::after {
          width: 21.6vw;
          height: 28.53333vw;
          right: 6.66667vw; } }
    .sec02Cont .box {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      background-color: #fff;
      border: solid 5px #ff7e00; }
      @media only screen and (min-width: 769px) {
        .sec02Cont .box {
          padding: 2em 2em 2em 2em; } }
      @media only screen and (max-width: 768px) {
        .sec02Cont .box {
          -webkit-box-orient: vertical;
          -webkit-box-direction: normal;
          -ms-flex-direction: column;
          flex-direction: column;
          padding: 1em; } }
    .sec02Cont .medi {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center; }
      @media only screen and (min-width: 769px) {
        .sec02Cont .medi {
          position: relative;
          top: -1em; } }
      @media only screen and (max-width: 768px) {
        .sec02Cont .medi {
          -webkit-box-orient: vertical;
          -webkit-box-direction: normal;
          -ms-flex-direction: column;
          flex-direction: column;
          width: 66.66667vw; } }
      .sec02Cont .medi::after {
        content: '';
        display: block;
        background-size: cover;
        background-repeat: no-repeat;
        background-image: url(../images/sec02_cross.png); }
        @media only screen and (min-width: 769px) {
          .sec02Cont .medi::after {
            width: 52px;
            height: 52px;
            margin: 1em 1em 0 .5em; } }
        @media only screen and (max-width: 768px) {
          .sec02Cont .medi::after {
            width: 5.33333vw;
            height: 5.33333vw;
            margin-bottom: 1em; } }
    @media only screen and (max-width: 768px) {
      .sec02Cont .ad {
        width: 53.33333vw; } }
.star_small{
    font-size: 16px;
    display: inline;
    color:#ffb20c;
}
.tac00{
    text-align: left;
    padding: 0 30px;
    margin: 0 auto;
}
@media only screen and (min-width: 769px){
.tac00 {
    width: 860px;
}}
.sec02 h2 {
color:#ffb20c;
}

      @media only screen and (max-width: 768px) {
          .pcview{
              display: none;
          }
          .spview{
              display: block
          }}

      @media only screen and (min-width: 769px) {
          .spview{
              display: none;
          }
          .pcview{
              display: block
          }}

/*********************
sec03
*********************/
.sec03 h2 {
  margin-bottom: 1em; }

.sec03Cont {
  margin: 0 auto;
  background-color: #ffb20c;
  -webkit-box-shadow: 5px 5px 20px rgba(13, 115, 115, 0.2);
  box-shadow: 5px 5px 20px rgba(13, 115, 115, 0.2); }
  @media only screen and (min-width: 769px) {
    .sec03Cont {
      width: 893px;
      padding-bottom: 35px; } }
  @media only screen and (max-width: 768px) {
    .sec03Cont {
      width: 93.33333vw;
      padding-bottom: 4vw; } }
  .sec03Cont .box {
    margin: 0 auto; }
    @media only screen and (min-width: 769px) {
      .sec03Cont .box {
        width: 823px; } }
    @media only screen and (max-width: 768px) {
      .sec03Cont .box {
        width: 86.66667vw; } }
    .sec03Cont .box h3 {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      padding: 1.2em 0;
      font-weight: normal;
      line-height: 1.4;
      text-align: justify;
      text-justify: inter-ideograph; }
      @media only screen and (min-width: 769px) {
        .sec03Cont .box h3 {
          font-size: 24px; } }
      @media only screen and (max-width: 768px) {
        .sec03Cont .box h3 {
          font-size: 4.26667vw; } }
      .sec03Cont .box h3::before {
        content: '';
        display: inline-block;
        background-size: cover;
        background-repeat: no-repeat;
        background-image: url(../images/roope.png); }
        @media only screen and (min-width: 769px) {
          .sec03Cont .box h3::before {
            width: 76px;
            height: 76px; } }
        @media only screen and (max-width: 768px) {
          .sec03Cont .box h3::before {
            width: 13.33333vw;
            height: 13.33333vw; } }
      .sec03Cont .box h3 span {
        -ms-flex-negative: 9999;
        flex-shrink: 9999;
        padding-left: .5em; }

/*********************
sec04
*********************/
.sec04 h2 {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: justify;
  text-justify: inter-ideograph; }

/*  .sec04 h2::before {
    content: '';
    display: inline-block;
    background-size: cover;
    background-repeat: no-repeat;*/

    //*background-image: url(../images/speaker.png);*//
    margin-right: .5em; }
    @media only screen and (min-width: 769px) {
      .sec04 h2::before {
        height: 128px; } }
    @media only screen and (max-width: 768px) {
      .sec04 h2::before {
        width: 14.53333vw;
        height: 14.4vw; } }

.sec04 .lead {
  margin: 1em auto; }
  @media only screen and (min-width: 769px) {
    .sec04 .lead {
      width: 893px;
      font-size: 32px; } }
  @media only screen and (max-width: 768px) {
    .sec04 .lead {
      width: 93.33333vw;
      font-size: 4.53333vw; } }

.sec04 .img {
  margin: 0 auto; }
  @media only screen and (min-width: 769px) {
    .sec04 .img {
      width: 893px; } }
  @media only screen and (max-width: 768px) {
    .sec04 .img {
      width: 93.33333vw; } }

 .solution {
    width: 820px;
    margin: 0 auto;
    display: -webkit-flex;
    display: flex;
    padding:15px 0;
 }

 .solution dl dt{
    width: 600px;
    height: 70px;
    background-color:#ff7e00;
    font-size:23px;
    line-height:70px;
    font-weight:bold;
 }
 .solution dl dd{
    padding:25px 36px;
    width: 600px;
    height: 159px;
    background-color:#ffdbb8;
    font-size:20px;
    line-height:28px;
    text-align:left;
    color:#333333;
 }
 .solution .images_sec04 {
    margin: 0 auto;
    width: 370px;
    height: 230px;
    text-align: center;
    background-color: #ffffff;
    position: relative;
 }

  .solution .images_sec04 img{
    margin: 0 auto;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
 }



.sec04 {
  position: relative; }
  .sec04::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-color: #13c1c1 transparent transparent transparent;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%); }
    @media only screen and (min-width: 769px) {
      .sec04::after {
        border-width: 50px 123.5px 0 123.5px;
        bottom: -50px; } }
    @media only screen and (max-width: 768px) {
      .sec04::after {
        border-width: 6.66667vw 16.46667vw 0 16.46667vw;
        bottom: -6.66667vw; } }

 @media only screen and (min-width: 769px) {
    .solution {
    display: -webkit-flex;
    display: flex;
     } 
    .solution_sp {
        display:none;
     }}
  @media only screen and (max-width: 768px) {
    .solution_sp {
        display: block;
     } 
    .solution {
        display:none;
     } }
.solution_sp dl dt {
    width: auto;
    height: auto;
    background-color: #ff7e00;
    font-size: 18px;
    line-height: 25px;
    padding: 10px;
    font-weight: bold;
}
.solution_sp dl dd {
    padding: 20px 30px;
    width: auto;
    height: auto;
    background-color: #ffdbb8;
    font-size: 16px;
    line-height: 30px;
    text-align: left;
    color: #333333;
}
.solution_sp .images_sec04 img {
    margin: 0px auto;
    padding: 10px 110px;
    background-color: #FFFFFF;
}
    @media only screen and (max-width: 768px) {
    .sec04 span{
        text-align: center;
    }
    .sec04 h2{
        padding-bottom: 20px;
    }}
.solution_sp {
    padding: 10px 25px;   
}
.sec04 a img{
    margin: 0 auto;
    padding-left: 6px;
}
/*********************
sec05
*********************/
.sec05.contents {
  padding: 0; }
  .sec05.contents h2 {
    padding: 1em 0;
    background-color: #313131;
    color: #fff;
    position: relative; }
    @media only screen and (min-width: 769px) {
      .sec05.contents h2 {
        font-size: 24px; } }
    @media only screen and (max-width: 768px) {
      .sec05.contents h2 {
        font-size: 4vw; } }
    .sec05.contents h2::after {
      content: '';
      display: block;
      width: 0;
      height: 0;
      border-style: solid;
      border-color: #313131 transparent transparent transparent;
      position: absolute;
      left: 50%;
      -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
      transform: translateX(-50%); }
      @media only screen and (min-width: 769px) {
        .sec05.contents h2::after {
          border-width: 36px 74px 0 74px;
          bottom: -36px; } }
      @media only screen and (max-width: 768px) {
        .sec05.contents h2::after {
          border-width: 4.8vw 9.86667vw 0 9.86667vw;
          bottom: -4.8vw; } }

@media only screen and (min-width: 769px) {
  .sec05Cont01 {
    margin: 5em auto 2em;
    width: 1022px; } }

@media only screen and (max-width: 768px) {
  .sec05Cont01 {
    margin: 2em auto;
    width: 97.33333vw; } }

.sec05Cont02 {
  background-color: #f2f5f7; }
  @media only screen and (min-width: 769px) {
    .sec05Cont02 {
      padding-bottom: 30px; } }
  @media only screen and (max-width: 768px) {
    .sec05Cont02 {
      padding-bottom: 4vw; } }
  .sec05Cont02 .ttl {
    padding: 1em 0;
    background-color: #ffb20c;
    color: #fff;
    line-height: 1.2;
    position: relative; }
    @media only screen and (min-width: 769px) {
      .sec05Cont02 .ttl {
        font-size: 24px; } }
    @media only screen and (max-width: 768px) {
      .sec05Cont02 .ttl {
        font-size: 4vw; } }
    .sec05Cont02 .ttl::after {
      content: '';
      display: block;
      width: 0;
      height: 0;
      border-style: solid;
      border-color: #ffb20c transparent transparent transparent;
      position: absolute;
      left: 50%;
      -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
      transform: translateX(-50%); }
      @media only screen and (min-width: 769px) {
        .sec05Cont02 .ttl::after {
          border-width: 36px 74px 0 74px;
          bottom: -36px; } }
      @media only screen and (max-width: 768px) {
        .sec05Cont02 .ttl::after {
          border-width: 4.8vw 9.86667vw 0 9.86667vw;
          bottom: -4.8vw; } }
  @media only screen and (min-width: 769px) {
    .sec05Cont02 .img {
      margin: 5em auto 2em;
      width: 891px; } }
  @media only screen and (max-width: 768px) {
    .sec05Cont02 .img {
      margin: 2em auto; } }

/*********************
sec06
*********************/
.sec06Cont {
  margin: 0 auto;
  background-color: #fff; }
  @media only screen and (min-width: 769px) {
    .sec06Cont {
      width: 1024px; } }
  @media only screen and (max-width: 768px) {
    .sec06Cont {
      width: 93.33333vw; } }
  .sec06Cont .ttl {
    margin: 0 auto; }
    @media only screen and (min-width: 769px) {
      .sec06Cont .ttl {
        width: 198px; } }
    @media only screen and (max-width: 768px) {
      .sec06Cont .ttl {
        width: 26.4vw; } }
  .sec06Cont ul {
    margin: 0 auto;
    padding-bottom: 2em; }
    @media only screen and (min-width: 769px) {
      .sec06Cont ul {
        width: 894px; } }
    @media only screen and (max-width: 768px) {
      .sec06Cont ul {
        width: 86.66667vw; } }
    .sec06Cont ul li {
      margin-top: 2em;
      color: #000; }
      @media only screen and (min-width: 769px) {
        .sec06Cont ul li {
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
          -ms-flex-align: center;
          align-items: center; } }
      .sec06Cont ul li:nth-child(2n-1) {
        border: solid 5px #13c1c1; }
      .sec06Cont ul li:nth-child(2n) {
        border: solid 5px #ffb20c; }
      @media only screen and (min-width: 769px) {
        .sec06Cont ul li .img {
          margin-right: 10px; } }
      @media only screen and (max-width: 768px) {
        .sec06Cont ul li .img {
          width: 40vw;
          margin: 0 auto 2em; } }
      .sec06Cont ul li .txt {
        padding: 2em; }
        .sec06Cont ul li .txt dl {
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex; }
          .sec06Cont ul li .txt dl dt {
            width: 6em;
            position: relative;
            text-align: center; }
            .sec06Cont ul li .txt dl dt::after {
              content: '：';
              display: inline-block;
              position: absolute;
              right: 0; }
          .sec06Cont ul li .txt dl dd {
            -ms-flex-negative: 9999;
            flex-shrink: 9999; }
            .sec06Cont ul li .txt dl dd span {
                color: #ff3939; }
        .Bgorange{
            background-color: #ffb20c;}
      @media only screen and (max-width: 768px) {
          .pcbr{
            display:none;} }

/*********************
sec07
*********************/

@media only screen and (min-width: 769px) {
  .sec07 {
    width: 1024px;
    margin: 0 auto; } }

.sec07 h2 {
  line-height: 1.5; }
  .sec07 h2 strong {
    color: #ffb20c; }
    @media only screen and (min-width: 769px) {
      .sec07 h2 strong {
        font-weight: normal; } }

@media only screen and (min-width: 769px) {
  .sec07 .colTwo {
    padding-top: 40px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; } }

@media only screen and (max-width: 768px) {
  .sec07 .colTwo {
    padding: 8vw 2.66667vw 4vw 2.66667vw; } }

.sec07 .colTwo .colL {
  position: relative; }
  @media only screen and (min-width: 769px) {
    .sec07 .colTwo .colL {
      width: 470px;
      height: 350px;
      margin-right: 10px; } }
  @media only screen and (max-width: 768px) {
    .sec07 .colTwo .colL {
      width: 100%;
      height: 71.73333vw;
      margin: 0 auto;
      padding-bottom: 8vw; } }
  .sec07 .colTwo .colL .square {
    position: absolute;
    background: #76dbdb;
    opacity: 0;
    -webkit-animation-name: sq01;
    animation-name: sq01;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-direction: normal;
    animation-direction: normal;
    -webkit-animation-duration: 3s;
    animation-duration: 3s;
    -webkit-animation-timing-function: ease;
    animation-timing-function: ease; }
    @media only screen and (min-width: 769px) {
      .sec07 .colTwo .colL .square {
        width: 130px;
        height: 130px;
        top: 145px;
        left: 175px; } }
    @media only screen and (max-width: 768px) {
      .sec07 .colTwo .colL .square {
        width: 26.66667vw;
        height: 26.66667vw;
        top: 31.33333vw;
        left: 36vw; } }
    .sec07 .colTwo .colL .square.sq01 {
      -webkit-animation-delay: 1s;
      animation-delay: 1s; }
    .sec07 .colTwo .colL .square.sq02 {
      -webkit-animation-delay: 2s;
      animation-delay: 2s; }
    .sec07 .colTwo .colL .square.sq03 {
      -webkit-animation-delay: 3s;
      animation-delay: 3s; }
  .sec07 .colTwo .colL .human {
    position: absolute;
    -webkit-transition: 1s;
    -o-transition: 1s;
    transition: 1s; }
    .sec07 .colTwo .colL .human.move {
      opacity: 0; }
    @media only screen and (min-width: 769px) {
      .sec07 .colTwo .colL .human.man01 {
        width: 37px;
        top: 20px;
        left: 220px; } }
    @media only screen and (max-width: 768px) {
      .sec07 .colTwo .colL .human.man01 {
        width: 7.6vw;
        top: 6vw;
        left: 46vw; } }
    @media only screen and (min-width: 769px) {
      .sec07 .colTwo .colL .human.man01.move {
        -webkit-transform: translateY(70px);
        -ms-transform: translateY(70px);
        transform: translateY(70px); } }
    @media only screen and (max-width: 768px) {
      .sec07 .colTwo .colL .human.man01.move {
        -webkit-transform: translateY(12vw);
        -ms-transform: translateY(12vw);
        transform: translateY(12vw); } }
    @media only screen and (min-width: 769px) {
      .sec07 .colTwo .colL .human.man02 {
        width: 56px;
        top: 90px;
        left: 320px; } }
    @media only screen and (max-width: 768px) {
      .sec07 .colTwo .colL .human.man02 {
        width: 11.46667vw;
        top: 18.5vw;
        left: 64vw; } }
    @media only screen and (min-width: 769px) {
      .sec07 .colTwo .colL .human.man02.move {
        -webkit-transform: translateX(-100px);
        -ms-transform: translateX(-100px);
        transform: translateX(-100px); } }
    @media only screen and (max-width: 768px) {
      .sec07 .colTwo .colL .human.man02.move {
        -webkit-transform: translateX(-19vw);
        -ms-transform: translateX(-19vw);
        transform: translateX(-19vw); } }
    @media only screen and (min-width: 769px) {
      .sec07 .colTwo .colL .human.man03 {
        width: 37px;
        top: 165px;
        left: 225px; } }
    @media only screen and (max-width: 768px) {
      .sec07 .colTwo .colL .human.man03 {
        width: 7.6vw;
        top: 34vw;
        left: 45.2vw; } }
    @media only screen and (min-width: 769px) {
      .sec07 .colTwo .colL .human.man03.move {
        -webkit-transform: translateY(-75px) translateX(-5px);
        -ms-transform: translateY(-75px) translateX(-5px);
        transform: translateY(-75px) translateX(-5px); } }
    @media only screen and (max-width: 768px) {
      .sec07 .colTwo .colL .human.man03.move {
        -webkit-transform: translateY(-16vw);
        -ms-transform: translateY(-16vw);
        transform: translateY(-16vw); } }
    @media only screen and (min-width: 769px) {
      .sec07 .colTwo .colL .human.man04 {
        width: 38px;
        top: 85px;
        left: 125px; } }
    @media only screen and (max-width: 768px) {
      .sec07 .colTwo .colL .human.man04 {
        width: 7.86667vw;
        top: 17.5vw;
        left: 25.5vw; } }
    @media only screen and (min-width: 769px) {
      .sec07 .colTwo .colL .human.man04.move {
        -webkit-transform: translateX(95px) translateY(5px);
        -ms-transform: translateX(95px) translateY(5px);
        transform: translateX(95px) translateY(5px); } }
    @media only screen and (max-width: 768px) {
      .sec07 .colTwo .colL .human.man04.move {
        -webkit-transform: translateX(19vw);
        -ms-transform: translateX(19vw);
        transform: translateX(19vw); } }
  .sec07 .colTwo .colL .text {
    position: absolute;
    -webkit-transition: .5s;
    -o-transition: .5s;
    transition: .5s;
    line-height: 1.5; }
    @media only screen and (min-width: 769px) {
      .sec07 .colTwo .colL .text {
        font-size: 14px; } }
    @media only screen and (max-width: 768px) {
      .sec07 .colTwo .colL .text {
        font-size: 2.93333vw; } }
    .sec07 .colTwo .colL .text.move {
      opacity: 0; }
    .sec07 .colTwo .colL .text.txt01 {
      top: 0; }
      @media only screen and (min-width: 769px) {
        .sec07 .colTwo .colL .text.txt01 {
          left: 163px; } }
      @media only screen and (max-width: 768px) {
        .sec07 .colTwo .colL .text.txt01 {
          left: 34vw; } }
    @media only screen and (min-width: 769px) {
      .sec07 .colTwo .colL .text.txt02 {
        top: 140px;
        left: 370px; } }
    @media only screen and (max-width: 768px) {
      .sec07 .colTwo .colL .text.txt02 {
        top: 30vw;
        left: 74vw; } }
    @media only screen and (min-width: 769px) {
      .sec07 .colTwo .colL .text.txt03 {
        top: 316px;
        left: 137px; } }
    @media only screen and (max-width: 768px) {
      .sec07 .colTwo .colL .text.txt03 {
        top: 66vw;
        left: 29vw; } }
    .sec07 .colTwo .colL .text.txt04 {
      left: 0; }
      @media only screen and (min-width: 769px) {
        .sec07 .colTwo .colL .text.txt04 {
          top: 137px; } }
      @media only screen and (max-width: 768px) {
        .sec07 .colTwo .colL .text.txt04 {
          top: 29vw; } }

@media only screen and (min-width: 769px) {
  .sec07 .colTwo .colR {
    width: 430px; } }

@-webkit-keyframes sq01 {
  0% {
    -webkit-transform: rotate(45deg) skewX(-10deg) skewY(-10deg) scale(0);
    transform: rotate(45deg) skewX(-10deg) skewY(-10deg) scale(0);
    opacity: 0; }
  30% {
    -webkit-transform: rotate(45deg) skewX(-10deg) skewY(-10deg) scale(0.6);
    transform: rotate(45deg) skewX(-10deg) skewY(-10deg) scale(0.6);
    opacity: .3; }
  60% {
    -webkit-transform: rotate(45deg) skewX(-10deg) skewY(-10deg) scale(0.8);
    transform: rotate(45deg) skewX(-10deg) skewY(-10deg) scale(0.8);
    opacity: .3; }
  90% {
    -webkit-transform: rotate(45deg) skewX(-10deg) skewY(-10deg) scale(1);
    transform: rotate(45deg) skewX(-10deg) skewY(-10deg) scale(1);
    opacity: .1; }
  100% {
    -webkit-transform: rotate(45deg) skewX(-10deg) skewY(-10deg) scale(1);
    transform: rotate(45deg) skewX(-10deg) skewY(-10deg) scale(1);
    opacity: 0; } }

@keyframes sq01 {
  0% {
    -webkit-transform: rotate(45deg) skewX(-10deg) skewY(-10deg) scale(0);
    transform: rotate(45deg) skewX(-10deg) skewY(-10deg) scale(0);
    opacity: 0; }
  30% {
    -webkit-transform: rotate(45deg) skewX(-10deg) skewY(-10deg) scale(0.6);
    transform: rotate(45deg) skewX(-10deg) skewY(-10deg) scale(0.6);
    opacity: .3; }
  60% {
    -webkit-transform: rotate(45deg) skewX(-10deg) skewY(-10deg) scale(0.8);
    transform: rotate(45deg) skewX(-10deg) skewY(-10deg) scale(0.8);
    opacity: .3; }
  90% {
    -webkit-transform: rotate(45deg) skewX(-10deg) skewY(-10deg) scale(1);
    transform: rotate(45deg) skewX(-10deg) skewY(-10deg) scale(1);
    opacity: .1; }
  100% {
    -webkit-transform: rotate(45deg) skewX(-10deg) skewY(-10deg) scale(1);
    transform: rotate(45deg) skewX(-10deg) skewY(-10deg) scale(1);
    opacity: 0; } }

    .question_box{
        border: solid;
        margin: 30px;
    }
    .question_box dt{
        background-color: black;
        color: aliceblue;
        font-size:20px ;
        font-weight: bold; 
        padding: 25px 0;
    }
    .question_box dd{
        padding: 10px 0;
    }
    .subtitle{
        font-size: 32px;
        font-weight: bold; 
    }
    .subtitle span{
        font-size: 50px;
        font-weight: bold; 
    }

  @media only screen and (max-width: 768px) {
        .question_box{
        border: solid;
        margin: 30px;
    }
          .question_box dt{
        font-size:16px ;
        font-weight: bold; 
        padding: 25px 10px;
    }
    .question_box dd{
        padding: 10px;
    }
    .subtitle{
        font-size: 20px;
        font-weight: bold; 
    }
    .subtitle span{
        font-size: 30px;
        font-weight: bold; 
    }
}

/*********************
formArea
*********************/
.formArea {
  padding: 2em 0; }
  .formArea form {
    margin: 1.5em auto; }
    @media only screen and (min-width: 769px) {
      .formArea form {
        width: 800px; } }
    @media only screen and (max-width: 768px) {
      .formArea form {
        width: 90.66667vw; } }
    .formArea form dl {
      margin-bottom: .5em; }
      @media only screen and (min-width: 769px) {
        .formArea form dl {
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex; } }
      .formArea form dl dt {
        padding: .5em;
        background-color: #13c1c1;
        color: #fff;
        font-weight: bold; }
        @media only screen and (min-width: 769px) {
          .formArea form dl dt {
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-align: center;
            -ms-flex-align: center;
            align-items: center;
            -webkit-box-pack: center;
            -ms-flex-pack: center;
            justify-content: center;
            width: 300px; } }
        @media only screen and (max-width: 768px) {
          .formArea form dl dt {
            width: 100%; } }
        .formArea form dl.required dt::after {
          content: '※必須';
          padding-left: 1em; }
      .formArea form dl dd {
        width: 100%;
        padding: .5em; }
        @media only screen and (min-width: 769px) {
          .formArea form dl dd {
            -ms-flex-negative: 9999;
            flex-shrink: 9999; } }
        .formArea form dl dd input[type="text"], .formArea form dl dd input[type="tel"], .formArea form dl dd input[type="email"] {
          width: 100%;
          padding: .5em;
          border: solid 1px #ccc;
          border-radius: 3px; }
          .formArea form dl.required.err dd input[type="text"], .formArea form dl.required.err dd input[type="tel"], .formArea form dl.required.err dd input[type="email"] {
            border: solid 1px red; }
        .formArea form dl dd select {
          width: 100%;
          padding: .5em;
          border: solid 1px #ccc;
          border-radius: 3px; }
          .formArea form dl.required.err dd select {
            border: solid 1px red; }
        .formArea form dl dd textarea {
          width: 100%;
          padding: .5em;
          border: solid 1px #ccc;
          border-radius: 3px; }
          .formArea form dl.required.err dd textarea {
            border: solid 1px red; }
        .formArea form dl dd .privacy {
          width: 100%;
          height: 10em;
          padding: .5em;
          overflow-y: scroll;
          border: solid 1px #ccc;
          border-radius: 3px; }
    .formArea form .btnSubmit {
      margin: 1em auto;
      cursor: pointer; }
      @media only screen and (min-width: 769px) {
        .formArea form .btnSubmit {
          width: 350px; } }
      @media only screen and (max-width: 768px) {
        .formArea form .btnSubmit {
          width: 91.2vw; } }
    .formArea form .check.err {
      color: red; }
  .formArea .errMsg {
    display: none;
    padding: 1em 0;
    color: red; }

.thanks {
  padding: 5em 0; }

/*********************
cvArea
*********************/
@media only screen and (min-width: 769px) {
  .cvArea {
    padding: 40px 0 40px; } }

@media only screen and (max-width: 768px) {
  .cvArea {
    padding: 5.33333vw 0 5.33333vw; } }

.cvArea h2 {
  line-height: 2; }
  @media only screen and (min-width: 769px) {
    .cvArea h2 {
      font-size: 28px; } }

.cvArea .cvBtn {
  margin: 0 auto;
  padding: 2em 0 0; }
  @media only screen and (min-width: 769px) {
    .cvArea .cvBtn {
      width: 684px; } }
  @media only screen and (max-width: 768px) {
    .cvArea .cvBtn {
      width: 91.2vw; } }
  .cvArea .cvBtn a {
    display: block; }

.cvArea .lead {
  margin-bottom: .5em;
  font-weight: bold; }
  @media only screen and (min-width: 769px) {
    .cvArea .lead {
      font-size: 26px; } }
  @media only screen and (max-width: 768px) {
    .cvArea .lead {
      font-size: 5.06667vw; } }

@media only screen and (min-width: 769px) {
  .cvArea .tel {
    font-size: 38px;
    font-weight: bold;
    } }

.tellbox2 {
    background-color: white;
    color: #2cbdc0;
    height: 60px;
    line-height: 60px;
    font-size: 5.66667vw;
    font-weight: bold;
    width: 80%;
    margin: 0 auto;
    border: solid;
}

.tel p{
    font-weight: bold;
    font-size:28px;
}

@media only screen and (max-width: 768px) {
  .cvArea .tel {
    font-size: 6.4vw; }
    .cvArea .tel a:link, .cvArea .tel a:hover, .cvArea .tel a:visited {
      color: #fff; }
    .cvArea .tel a:hover {
      opacity: .7; } }

.cvArea .chat {
  margin-top: 1em;
  line-height: 1.2; }
  @media only screen and (min-width: 769px) {
    .cvArea .chat {
      font-size: 22px; } }
  @media only screen and (max-width: 768px) {
    .cvArea .chat {
      font-size: 4vw; } }



/*********************
me
*********************/
#me{
	background-color : #ff7e00;
	color : #fff;
}
#me h2{
	text-align : center;
    
}
#me a{
	color : #fff;
}
#me .datalists dl > div{
	display : flex;
	align-items : flex-start;
    text-align: left;
}
#me dt{
	flex-shrink : 0;
}
#me .contacts a{
	display : flex;
	align-items : center;
	justify-content : center;
	text-align : center;
	background-color : #fff;
	font-weight : 700;
	color : #ff7e00;
	width : 100%;
	height : 100%;
}
#me .contacts li:nth-child(1) a:before{
	content : "";
	display : block;
	background : url("../images/ui/icon/tel.png") 0 0 / contain no-repeat;
	background-repeat : no-repeat;
	flex-shrink : 0;
}
@media screen and (max-width: 768px){
	#me .wrap{
		padding-top : calc( 50 * 100vw / 750 );
		padding-bottom : calc( 36 * 100vw / 750 );
	}
	/*#me h2 img{
		height : calc( 99 * 100vw / 750 );
	}*/
	#me .datalists{
		margin-top : calc( ( 51 - 8 ) * 100vw / 750 );
		padding-left : calc( 20 * 100% / 710 );
	}
	#me .datalists > div > dl > div > dt{
		width : 6em;
	}
	#me .datalists dl dl dd{
		position : relative;
		/*left : -2em;
		text-indent : 2.25em;*/
	}
	#me dt , #me dd , #me .box li{
		font-size : calc( 24 * 100vw / 750 );
		line-height : 1.67;
	}
	#me .contacts{
		margin-top : calc( ( 61 - 8 ) * 100vw / 750 );
	}
	#me .contacts li{
		width : calc( 368 * 100% / 710 );
		height : calc( 81 * 100vw / 750 );
		margin-left : auto;
		margin-right : auto;
	}
	#me .contacts li + li{
		margin-top : calc( 15 * 100vw / 750 );
	}
	#me .contacts li:nth-child(1) a:before{
		width : calc( 28 * 100vw / 750 );
		height : calc( 28 * 100vw / 750 );
	}
	#me .contacts a{
		border-radius : calc( 41 * 100vw / 750 );
		font-size : calc( 28 * 100vw / 750 );
	}
}
@media print,screen and (min-width: 769px){
	#me .datalists{
		display : flex;
		align-items : flex-start;
		justify-content : space-between;
	}
	#me .datalists > div:nth-of-type(1) > dl > div > dt{
		width : 4em;
	}
	/*#me .datalists > div:nth-of-type(1) dl dl dd{
		margin-left : 1em;
	}*/
	#me .datalists > div:nth-of-type(2) > dl > div > dt{
		width : 6em;
	}
	#me .contacts{
		display : flex;
		justify-content : center;
	}
}
@media screen and (min-width: 769px) and (max-width:1039px){
	#me .wrap{
		padding-top : calc( 76 * 100vw / 1040 );
		padding-bottom : calc( 76 * 100vw / 1040 );
	}
	#me h2 img{
		height : calc( 74 * 100vw / 1040 );
	}
	#me .datalists{
		margin-top : calc( ( 62 - 4 ) * 100vw / 1040 );
	}
	#me dt , #me dd , #me .box li{
		font-size : calc( 20 * 100vw / 1040 );
		line-height : 1.8;
	}
	#me .contacts{
		margin-top : calc( ( 42 - 4 ) * 100vw / 1040 );
	}
	#me .contacts li{
		width : calc( 368 * 100vw / 1040 );
		height : calc( 81 * 100vw / 1040 );
	}
	#me .contacts li + li{
		margin-left : calc( 100 * 100vw / 1040 );
	}
	#me .contacts li:nth-child(1) a:before{
		width : calc( 28 * 100vw / 1040 );
		height : calc( 28 * 100vw / 1040 );
	}
	#me .contacts a{
		border-radius : calc( 41 * 100vw / 1040 );
		font-size : calc( 28 * 100vw / 1040 );
	}
}
@media print,screen and (min-width: 1040px){
	#me .wrap{
		padding-top : 76px;
		padding-bottom : 76px;
	}
	#me h2 img{
		height : 74px;
	}
	#me .datalists{
		margin-top : calc( 62px - 4px );
	}
	#me dt , #me dd , #me .box li{
		font-size : 20px;
		line-height : 1.8;
	}
	#me .contacts{
		margin-top : calc( 42px - 4px );
	}
	#me .contacts li{
		width : 368px;
		height : 81px;
	}
	#me .contacts li + li{
		margin-left : 100px;
	}
	#me .contacts li:nth-child(1) a:before{
		width : 28px;
		height : 28px;
	}
	#me .contacts a{
		border-radius : 41px;
		font-size : 28px;
	}
}

@media only screen and (min-width: 769px){
    #me h2{
	font-size: 38px;
    
}
}

/*********************
footer
*********************/
@media only screen and (min-width: 769px) {
  footer {
    padding: 25px 0 50px;
    font-size: 14px; } }

@media only screen and (max-width: 768px) {
  footer {
    padding: 8vw 0 10vw; } }

@media only screen and (min-width: 769px) {
  footer nav {
    padding-bottom: 20px; } }

@media only screen and (max-width: 768px) {
  footer nav {
    padding-bottom: 8vw; } }

footer nav ul li {
  display: inline-block; }
  footer nav ul li:not(:last-child):after {
    content: '|';
    display: inline-block; }
    @media only screen and (min-width: 769px) {
      footer nav ul li:not(:last-child):after {
        padding: 0 10px 0 15px; } }
    @media only screen and (max-width: 768px) {
      footer nav ul li:not(:last-child):after {
        padding: 0 2.66667vw 0 4vw; } }


.pmark_rogo{
    width: 100px;
    height: auto;
    margin: 0 auto;
    padding-bottom: 20px;
}
label{
        border-top-left-radius: 10px;
    border-top-right-radius: 10px;

}



article.sec01.contents {
    border-top: solid 7px #2cbdc0;
}
article.sec01.contents._2 { 
    border-top: solid 7px #ff9342;
}

.tab_wrap {
    width: auto;
    margin: 80px auto;
}

.tab_area {
    padding-top: 30px;
    background-color: #CCCCCC;
}

..tab_wrap{width:500px; margin:80px auto;}
input[type="radio"]{display:none;}
.tab_area{font-size:0; margin:0 0px;}
.tab_area label{margin:0 5px; display:inline-block; padding:12px 0;text-align:center; font-size:13px; cursor:pointer; transition:ease 0.2s opacity;}
.tab_area label:hover{opacity:0.5;}
.panel_area{background:#2cbdc0;}
.tab_panel{width:100%; padding:0; display:none;}
.tab_panel p{font-size:14px; letter-spacing:1px; text-align:center;}

#tab1:checked ~ .tab_area .tab1_label{background:#2cbdc0; color:#fff;}
#tab1:checked ~ .panel_area #panel1{display:block;}
#tab2:checked ~ .tab_area .tab2_label{background:#ff9342; color:#fff;}
#tab2:checked ~ .panel_area #panel2{display:block;}

label.tab1_label {
    font-size: 20px;
    font-weight: bold;
    padding: 10px 10px;
}

label.tab2_label {
    font-size: 20px;
    font-weight: bold;
    padding: 10px 10px;
}

label.tab1_label {
    background-color: #2cbdc0;
    color: white;
}

label.tab2_label {
    background-color: #ff9342;
    color: white;
}

article.sec08.contents {
    background: #f2f5f7;
}

ipradio {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
ipradio:before,
ipradio:after {
	-webkit-box-sizing: inherit;
	        box-sizing: inherit;
}
ipradio .box {
	width: 90%;
	margin: 2em auto;
	text-align: left;
	border: 1px solid white;
	border-radius: 3px;
	background: #ffffff;
}
.cp_ipradio input[type=radio] {
	display: none;
}
.cp_ipradio label:focus,
.cp_ipradio label:hover,
.cp_ipradio label:active,
.cp_ipradio input:checked + label {
	color: #da3c41;
}
.cp_ipradio label:focus:before,
.cp_ipradio label:hover:before,
.cp_ipradio label:active:before,
.cp_ipradio input:checked + label:before {
	border-color: #da3c41;
	background: #ffffff;
}
.cp_ipradio label {
	font-size: 1em;
	font-weight: bold;
	line-height: 1;
	position: relative;
	overflow: hidden;
	padding: 1em 1em 1em 3em;
	cursor: pointer;
	-webkit-transition: all 0.15s ease;
	        transition: all 0.15s ease;
	white-space: nowrap;
	text-overflow: ellipsis;
}
.cp_ipradio label:before {
	position: absolute;
	top: 1em;
	left: 1em;
	width: 10px;
	height: 10px;
	content: '';
	border: 0.2em solid #cccccc;
	border-radius: 50%;
}
.cp_ipradio input:checked + label:before {
	border-color: #da3c41;
	background: #da3c41;
}
.cp_ipradio input:disabled + label {
	cursor: not-allowed;
	color: rgba(0, 0, 0, 0.5);
	background: #efefef;
}
.cp_ipradio input:disabled + label:hover {
	border-color: rgba(0, 0, 0, 0.1);
}
.cp_ipradio input:disabled + label:before {
	border-color: #ffffff;
	background: #ffffff;
}

/*********************
sec08
*********************/
.sec08 {
  position: relative;
}
@media only screen and (min-width: 769px) {
  .sec08 {
    margin: 0 auto;
  }
}
.sec08 h2 {
  line-height: 1.5;
  margin-bottom: 30px;
}
.sec08__contents {
  position: relative;
  display: flex;
  width: 900px;
  margin: 0 auto 100px;
  text-align: left;
}
@media only screen and (max-width: 768px) {
  .sec08__contents {
    flex-direction: column;
    width: 93.3333333333vw;
    margin: 0 auto;
    margin: 0 auto 16vw;
  }
}
.sec08__contents--left {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  background-color: #13c1c1;
  line-height: 1.5;
}
@media only screen and (min-width: 769px) {
  .sec08__contents--left {
    width: 350px;
    height: 150px;
    font-size: 24px;
  }
}
@media only screen and (max-width: 768px) {
  .sec08__contents--left {
    font-size: 20px;
  }
}
.sec08__contents--left span {
  font-weight: bold;
}
@media only screen and (min-width: 769px) {
  .sec08__contents--left span {
    margin: 0 24px;
    font-size: 80px;
  }
}
@media only screen and (max-width: 768px) {
  .sec08__contents--left span {
    margin: 0 24px;
    font-size: 64px;
  }
}
.sec08__contents--right {
  display: flex;
  align-items: center;
  box-sizing: border-box;
  font-size: 18px;
  line-height: 1.75;
  background-color: #d1f6f6;
}
@media only screen and (min-width: 769px) {
  .sec08__contents--right {
    padding: 30px 80px 30px 25px;
    width: 550px;
    height: 150px;
    border: 3px solid #13c1c1;
    border-left: 0;
  }
}
@media only screen and (max-width: 768px) {
  .sec08__contents--right {
    padding: 10px;
    border: 3px solid #13c1c1;
    border-top: 0;
  }
}
.sec08__contents::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: #000 transparent transparent transparent;
  position: absolute;
  left: 50%;
  z-index: 1;
  transform: translateX(-50%);
}
@media only screen and (min-width: 769px) {
  .sec08__contents::after {
    border-width: 40px 50px 0 50px;
    bottom: -70px;
  }
}
@media only screen and (max-width: 768px) {
  .sec08__contents::after {
    border-width: 5.3333333333vw 6.6666666667vw 0 6.6666666667vw;
    bottom: -10.6666666667vw;
  }
}
.sec08__contents:last-child::after {
  content: "";
  display: none;
}
.sec08::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
  position: absolute;
  left: 50%;
  z-index: 1;
  transform: translateX(-50%);
}
@media only screen and (min-width: 769px) {
  .sec08::after {
    border-width: 50px 123.5px 0 123.5px;
    bottom: -50px;
  }
}
@media only screen and (max-width: 768px) {
  .sec08::after {
    border-width: 6.6666666667vw 16.4666666667vw 0 16.4666666667vw;
    bottom: -6.6666666667vw;
  }
}

@media only screen and (max-device-width: 480px) {
    p.snslogo {
        margin: inherit
    }
    p.snslogo{
    text-align: left;
    position: inherit
    }
    label.tab2_label {
    width: 45%;
    }
    label.tab1_label {
    width: 45%;
    }
}

.Radio-Text {
    position: relative;
    display: flex;
    padding-top: 3%;
    align-items: center;
}

.Radio-Text::before {
    content: '';
    display: block;
    border-radius: 50%;
    border: 1px solid #ffb20c;
    width: 16px;
    height: 16px;
}

.Radio input:checked+.Radio-Text::after {
    content: '';
    position: absolute;
    left: calc(8px - 5px);
    display: block;
    border-radius: 50%;
    width: 10px;
    height: 10px;
    background-color: #ffb20c;
}
