/*---------------
reset
---------------*/
*:where(:not(html,iframe,canvas,img,svg,video,audio):not(svg*,symbol*)){all:unset;display:revert}*,*::before,*::after{box-sizing:border-box}
*{margin: 0; padding: 0; text-rendering: optimizeLegibility;}
html{-moz-text-size-adjust:none;-webkit-text-size-adjust:none;text-size-adjust:none;scroll-behavior: smooth;}
a{transition: .3s; text-decoration:none;}
ol,ul,menu,summary{list-style:none}
img{display: block;}
table{border-collapse:collapse;}
input,textarea{-webkit-user-select:auto}
textarea{white-space:revert}
meter{-webkit-appearance:revert;appearance:revert}:where(pre){all:revert;box-sizing:border-box}::placeholder{color:unset}:where([hidden]){display:none}:where([contenteditable]:not([contenteditable="false"])){-moz-user-modify:read-write;-webkit-user-modify:read-write;overflow-wrap:break-word;-webkit-line-break:after-white-space;-webkit-user-select:auto}:where([draggable="true"]){-webkit-user-drag:element}:where(dialog:modal){all:revert;box-sizing:border-box}
:root{--black: #010101;--orange: #FF6D3B;--green: #3CB4B0;--white: #fff;}
a *{
  transition: .25s;
}
a:hover{
  opacity:0.5;
  cursor: pointer!important;
}

/*---------------
Cookie
---------------*/
.p-confirmCookie__inner p{
  font-size:16px;
}
.js-disable{
  font-size:16px;
}
.js-able{
  font-size:16px;
}

/*---------------
body
---------------*/
body{
  background: #F2FFFD;
  font: 400 normal 1.6em dnp-shuei-gothic-kin-std, sans-serif;
}

section h2{
  text-align:center;
  font-size: 44px;
  line-height: 1em;
}
section h2 span{
  display:block;
  font-size: 20px;
}
@media (max-width: 640px) {
  section h2{
    font-size: 34px;
  }
}

/*---------------
header
---------------*/
header{
  width:92vw;
  margin: 24px auto 80px auto;
}
header nav{
  max-width:1280px;
  margin:0 auto;
  display:flex;
  justify-content: space-between;
  align-items: center;
  background:#fff;
  border-radius: 20px;
}
header nav li a{
  font-size: 18px;
  line-height:1em;
}
header nav > div:nth-child(1){
  width:280px;
  padding:10px 10px 10px 20px;
}
header nav > div:nth-child(1) img{
  width:88%;
}
header nav > div:nth-child(2){
  display:flex;
}
header nav > div:nth-child(2) ul{
  display:flex;
  margin:0 0 0 20px;
}
header nav > div:nth-child(2) ul:nth-child(1) li a{
  color:#000;
  padding:10px 20px 10px 20px;
}
header nav > div:nth-child(2) ul:nth-child(2) li a{
  background:var(--orange);
  padding:18px 25px 18px 25px;
  color: #fff;
  border-radius:10px;
  font-weight: 600;
}
@media (max-width: 980px) {
  header nav > div:nth-child(2) ul:nth-child(1){
    display:none;
  }
}
@media (max-width: 640px) {
  header nav{
    background:none;
    border-radius: none;
  }
  header nav > div:nth-child(1){
    width:60vw;
    padding: 0;
    margin:0 auto;
  }
  header nav > div:nth-child(2){
    display:none;
  }
}

header > div{
  max-width:1180px;
  margin:0 auto;
  display:flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap:wrap;
  padding:70px 0 40px 0;
}
header > div > div:nth-child(1){
  width:640px;
}
header > div > div:nth-child(2){
  width: calc(96% - 640px);
}
header > div > div img{
  width:100%;
}
header > div > div:nth-child(1) h1{
  font-size:44px;
  line-height:1.3em;
}
header > div > div:nth-child(1) h1 b{
  display:block;
  font-size:32px;
  padding:0 0 10px 0;
}
header > div > div:nth-child(1) h1 span{
  font-size:13px;
  color:var(--orange);
  vertical-align:50%;
  padding:0 0 0 10px;
  line-height:1.3em;
}
header > div > div:nth-child(1) p{
  font-size: 23px;
  text-align:justify;
  padding:20px 0 0 0;
}
header > p{
  text-align:center;
}
header > p a{
  color:var(--white);
  display:inline-block;
  border-radius:15px;
  transform: scale(1);
  line-height:1em;
  font-size:24px;
  font-weight: 600;
  background:var(--orange);
  padding:18px 80px 18px 80px;
  text-align:center;
}
header > p a:hover{
  transform: scale(1.1);
  border-radius:5px;
}

@media (max-width: 980px) {
  header > div > div:nth-child(1){
    width:100%;
    order:2;
  }
  header > div > div:nth-child(2){
    width: 100%;
    order:1;
  }
  header > div > div:nth-child(2) img{
    width: 80%;
    max-width:420px;
    margin: 0 auto;
  }
  header > div > div:nth-child(1) h1 span{
    display:block;
    text-align: center;
    padding:10px 0 0 0;
  }
}
@media (max-width: 640px) {
  header > div > div:nth-child(1) p{
    font-size: 18px;
  }
  header > div > div:nth-child(1) h1{
    font-size:36px;
    line-height:1.3em;
  }
  header > div > div:nth-child(1) h1 b{
    display:block;
    font-size:28px;
    padding:40px 0 10px 0;
    text-align:center;
  }
}


/*---------------
link-contact
---------------*/
.link-contact{
  display:flex;
  justify-content: center;
}
.link-contact ul{
  display:flex;
  justify-content: center;
  padding:0 0 60px 0;
  flex-wrap: wrap;
}
.link-contact ul li{
  margin:0 15px 0 15px;
  display:flex;
  align-items: stretch;
}
.link-contact ul li a{
  color:var(--white);
  display:inline-block;
  border-radius:15px;
  transform: scale(1);
  line-height:1em;
  font-size:24px;
  font-weight: 600;
  background:var(--orange);
  padding:18px 80px 18px 80px;
  text-align:center;
}
.link-contact ul a:hover{
  transform: scale(1.1);
  border-radius:5px;
}

/*---------------
achievement
---------------*/
#achievement{
  padding: 40px 0 40px 0;
  background:#fff;
}
#achievement > div{
  width:92vw;
  max-width:1280px;
  margin: 0 auto;
}
#achievement > div > p:nth-child(1){
  text-align: center;
  font-size:19px;
  font-weight: 600;
}
#achievement > div > p:nth-child(2){
  text-align: center;
  font-size:30px;
  font-weight: 600;
}
#achievement > div > p:nth-child(2) span{
  color:var(--green);
  font-size:60px;
  vertical-align:-2px;
  padding:0 4px 0 2px;
  letter-spacing:-2px;
}
#achievement > div ul{
  display:grid;
  grid-template-columns: auto auto auto auto auto auto auto;
  padding:10px 0 0 0;
}
#achievement > div ul li{
  display:flex;
  align-items: center;
  padding:20px;
}
#achievement > div ul li img{
  width: 100%;
}
@media (max-width: 640px) {
  #achievement > div > p:nth-child(2){
    font-size:28px;
    font-weight: 600;
    line-height: 1.4em;
  }
  #achievement > div > p:nth-child(2) b{
    display:block;
    margin:30px 0 10px 0;
  }
  #achievement > div > p:nth-child(2) span{
    color:var(--green);
    font-size:56px;
  }
  #achievement > div ul{
    display:flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding:40px 0 0 0;
  }
  #achievement > div ul li{
    width:30%;
  }
}

/*---------------
ourstance
---------------*/
#ourstance{
  margin:0 auto;
  padding:40px 0 40px 0;
}
#ourstance > div{
  width:92vw;
  max-width: 1280px;
  margin: 0 auto;
}
#ourstance > div > div{
  display:flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items:center;
  padding: 40px 0 0 0;
}
#ourstance > div > div > div{
  width: 48%;
}
#ourstance > div > div > div > img{
  width: 100%;
}
#ourstance > div > div > div > div{
  display:flex;
  align-items: center;
  font-size:28px;
  font-weight:600;
  line-height:1.2em;
}
#ourstance > div > div > div > div img{
  width:80px;
  margin:0 20px 0 0 ;
}
#ourstance > div > div > div p{
  font-size:18px;
  padding:20px 0 0 0;
  text-align: justify;
}
@media (max-width: 640px) {
  #ourstance > div{
    width:100vw;
    max-width: 1280px;
    margin: 0 auto;
  }
  #ourstance > div > div > div > div br{
    display:none;
  }
  #ourstance > div > div > div > img{
    width: 92vw;
    margin:0 0 40px 0;
  }
  #ourstance > div > div > div:nth-child(2){
    width: 92vw;
    margin: 0 auto;
  }
}


/*---------------
reason
---------------*/
#reason{
  margin:0 auto;
  padding:60px 0 60px 0;
}
#reason > div{
  width:92vw;
  max-width: 1280px;
  margin: 0 auto;
}
#reason > div > div > div{
  display:flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items:center;
  padding: 40px 0 0 0;
}
#reason > div > div > div:nth-child(1) > div:nth-child(1){
  order:2;
}
#reason > div > div > div:nth-child(1) > div:nth-child(2){
  order:1;
}
#reason > div > div > div:nth-child(3) > div:nth-child(1){
  order:2;
}
#reason > div > div > div:nth-child(3) > div:nth-child(2){
  order:1;
}
#reason > div > div > div > div{
  width: 48%;
}
#reason > div > div > div > div > img{
  width: 100%;
}
#reason > div h3{
  font-size:32px;
  font-weight:600;
  line-height:1.2em;
}
#reason > div h3 span{
  display:block;
  font-size:24px;
}
#reason > div > div > div p{
  font-size:18px;
  padding:20px 0 0 0;
  text-align: justify;
}
#reason ul li img{
  width: 60%;
  max-width:480px;
  margin:20px 0 0 0;
}

@media (max-width: 640px) {
  #reason > div{
    width:100vw;
    max-width: 1280px;
    margin: 0 auto;
  }
  #reason > div h3{
    font-size:26px;
  }
  #reason > div h3 span{
    display:block;
    padding:0 0 5px 0;
    font-size:20px;
  }
  #reason > div > div > div > div{
    width: 100vw;
    margin:0 0 20px 0;
  }
   #reason > div > div > div > div:nth-child(2){
    width: 92vw;
    margin: 0 auto;
   }
  #reason > div > div > div:nth-child(1) > div > img{
    width: 96%;
    margin:20px 0 0 4%;
  }
  #reason > div > div > div:nth-child(2) > div > img{
    width: 96%;
    margin:20px 0 0 0%;
  }
  #reason > div > div > div:nth-child(3) > div > img{
    width: 96%;
    margin:20px 0 0 4%;
  }
  #reason > div > div > div:nth-child(4) > div > img{
    width: 96%;
    margin:20px 0 0 0%;
  }
  #reason > div > div > div:nth-child(1) > div:nth-child(1){
    order:1;
  }
  #reason > div > div > div:nth-child(1) > div:nth-child(2){
    order:2;
  }
  #reason > div > div > div:nth-child(3) > div:nth-child(1){
    order:1;
  }
  #reason > div > div > div:nth-child(3) > div:nth-child(2){
    order:2;
  }
  #reason ul li img{
    width: 70%;
    max-width:480px;
    margin:20px auto 0 auto;
  }
}

/*---------------
measurecontents
---------------*/
#measurecontents{
  margin:0 auto;
  padding:40px 0 40px 0;
}
#measurecontents > div{
  width:92vw;
  max-width:1280px;
  margin: 0 auto;
}
#measurecontents > div > ul{
  display:flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding:60px 0 0 0;
}
#measurecontents > div > ul > li{
  width: 48%;
}
#measurecontents > div > ul > li h3{
  color: #fff;
  text-align:center;
  padding:15px 0 15px 0;
}
#measurecontents > div > ul > li:nth-child(1) h3{
  background:var(--green);
}
#measurecontents > div > ul > li:nth-child(2) h3{
  background:var(--black);
}
#measurecontents > div > ul > li:nth-child(1) ul > li{
    color:var(--green);
  }
  #measurecontents > div > ul > li:nth-child(2) ul > li{
    color:var(--black);
  }
#measurecontents > div > ul > li > ul > li{
  background:#fff;
  padding:15px 20px 15px 20px;
  border-bottom: 1px solid #f0f0f0;
  font-size:22px;
  font-weight:600;
  display:flex;
  align-items: center;
}
#measurecontents > div > ul > li > ul > li img{
  width:35px;
  margin:0 15px 0 5px;
}
#measurecontents > div > p{
  font-size:14px;
  text-align:right;
  padding:20px 0 0 0;
}
@media (max-width: 640px) {
  #measurecontents > div > ul{
    padding:30px 0 0 0;
  }
  #measurecontents > div > ul > li h3{
    font-size:24px;
  }
  #measurecontents > div > ul > li{
    width: 100%;
  }
  #measurecontents > div > ul > li:nth-child(2) {
    margin:30px 0 0 0;
  }
  #measurecontents > div > ul > li > ul > li{
    background:#fff;
    padding:20px 10px 20px 10px;
    font-size:16px;
  }
  #measurecontents > div > ul > li > ul > li img{
    width:30px;
    margin:0 10px 0 5px;
  }
  #measurecontents > div > p{
    text-align:center;
  }
}

/*---------------
trackrecord
---------------*/
#trackrecord{
  margin:0 auto;
  padding:60px 0 60px 0;
}
#trackrecord > div{
  width:92vw;
  max-width:1280px;
  margin: 0 auto;
}
#trackrecord > div > div{
  display:flex;
  align-items:center;
  flex-wrap: wrap;
  justify-content: space-between;
  background:#fff;
  border-radius:5px;
  margin:40px 0 0 0;
  padding:40px;
}
#trackrecord > div > div > div{
  width: 48%;
}
#trackrecord > div > div > div img{
  width: 100%;
}
#trackrecord > div > div > div p{
  text-align: justify;
  font-size: 18px;
  margin:15px 0 0 0;
}
#trackrecord > div > div > div h3 span{
  background:var(--green);
  color:#fff;
  border-radius:100%;
  padding:5px 10px 5px 10px;
  margin:0 10px 0 0;
}
#trackrecord > div > div > div ul{
  display:flex;
  justify-content: space-between;
  flex-wrap:wrap;
  margin:20px 0 0 0;
}
#trackrecord > div > div > div ul li{
  width: 31%;
  border:1px solid #cdcdcd;
  text-align:center;
  padding:10px 20px 10px 20px;
  font-size:18px;
}
#trackrecord > div > div > div ul li b{
  color:#f10834;
  font-size:22px;
  margin: 0 5px 0 0;
}

@media (max-width: 980px) {
  #trackrecord > div > div{
    padding: 40px 20px 40px 20px;
  }
  #trackrecord > div > div > div{
    width: 100%;
  }
  #trackrecord > div > div > div ul li{
    width: 100%;
    margin: 0 0 20px 0;
  }
}






/*---------------
works
---------------*/
#works{
  margin:0 auto;
  background:#fff;
  padding:60px 0 60px 0;
}
#works > div{
  width:92vw;
  max-width:1080px;
  margin: 0 auto;
}
#works > div ul{
  display:flex;
  justify-content: space-between;
}
#works > div ul li{
  width:12%;
}
#works > div ul li img{
  width:100%;
}
@media (max-width: 834px) {
  #works{
    margin:0 auto;
    background:#fff;
    padding:20px 0 60px 0;
  }
  #works > div{
    width:92vw;
    max-width:1080px;
    margin: 0 auto;
  }
  #works > div ul{
    display:flex;
    justify-content: space-between;
    flex-wrap:wrap;
  }
  #works > div ul li{
    width:28%;
    margin:40px 0 0 0;
  }
}









/*---------------
menu
---------------*/
#menu{
  margin:0 auto;
  background:#fff;
  padding:80px 0 80px 0;
  position:relative;
}
#menu > div{
  width:92vw;
  max-width: 1080px;
  margin: 0 auto;
}
#menu:before{
  content:"";
  position: absolute;
  top: 180px;
  left: 9vw;
  border-right: 41vw solid transparent;
  border-left: 41vw solid transparent;
  border-top: 380px solid #f9e9d8;
  z-index:0;
}
#menu > div h2{
  text-align:center;
  font-size:30px;
}
#menu > div h2 img{
  width:360px;
  margin:0 auto;
}

#menu > div > div > div:nth-child(1) ul{
  display:flex;
  justify-content: space-between;
  z-index:1;
  position:relative;
  flex-wrap: wrap;
  margin:60px 0 0 0;
}
#menu > div > div > div:nth-child(1) ul li{
  width:23%;
  background:var(--orange);
  border-radius:20px;
  text-align:center;
  color:#fff;
  padding:18px;
  margin:20px 0 0 0;
  font-weight:600;
}
#menu > div > div > div:nth-child(1) p{
  color: var(--orange);
  text-align:center;
  position:relative;
  font-size:36px;
  margin:30px 0 0 0;
  font-weight:600;
}
#menu > div > div > div:nth-child(1) p br{
  display:none;
}
@media (max-width: 1180px) {
  #menu:before{
    content:"";
    position: absolute;
    top: 180px;
    left: 9vw;
    border-right: 41vw solid transparent;
    border-left: 41vw solid transparent;
    border-top: 580px solid #f9e9d8;
    z-index:0;
  }
  #menu > div > div > div:nth-child(1) ul li{
    width:46%;
    padding:13px 0 13px 0;
  }
  #menu > div > div > div:nth-child(1) p br{
    display:block;
  }
}
@media (max-width: 640px) {
  #menu > div > div > div:nth-child(1) ul li{
    width:48%;
    background:var(--orange);
    border-radius:16px;
    text-align:center;
    color:#fff;
    padding:13px 0 13px 0;
    margin:20px 0 0 0;
    font-weight:600;
    font-size:18px;
  }
}
#menu > div > div > div:nth-child(2){
  margin:40px 0 0 0;
  position:relative;
}
#menu > div > div > div:nth-child(2) > div{
  position:absolute;
  top: 50%;
  left: 50%;
  margin:-115px 0 0 -100px;
  border:2px solid var(--orange);
  width:200px;
  height:200px;
  border-radius:100%;
  display:flex;
  justify-content: center;
  align-items: center;
  background:#fff;
}
#menu > div > div > div:nth-child(2) > div > img{
  width:140px;
}
#menu > div > div > div:nth-child(2) ul{
  display:flex;
  justify-content: space-between;
  flex-wrap:wrap;
}
#menu > div > div > div:nth-child(2) ul li{
  width: 48%;
  border:2px solid var(--orange);
  border-radius:20px;
  margin:20px 0 20px 0;
  padding:60px 40px 60px 40px;
}
@media (max-width: 1080px) {
  #menu > div > div > div:nth-child(2) ul li{
    width: 100%;
    border:2px solid var(--orange);
    border-radius:20px;
    margin:10px 0 10px 0;
    padding:30px 40px 30px 40px;
  }
  #menu > div > div > div:nth-child(2) > div{
    display:none;
  }
}
#menu > div > div > div:nth-child(2) ul li div{
  display:flex;
  align-items: center;
}
#menu > div > div > div:nth-child(2) ul li div h3{
  padding:0 0 0 20px;
  color:var(--orange);
}
#menu > div > div > div:nth-child(2) ul li div img{
  width:60px;
}
#menu > div > div > div:nth-child(2) ul li p{
  font-size:20px;
  text-align:justify;
  line-height:1.6em;
  padding:20px 0 0 0;
}
@media (max-width: 1080px) {
  #menu > div > div > div:nth-child(2) ul li{
    width: 100%;
    border:2px solid var(--orange);
    border-radius:20px;
    margin:10px 0 10px 0;
    padding:30px 40px 30px 40px;
  }
  #menu > div > div > div:nth-child(2) > div{
    display:none;
  }
  #menu > div > div > div:nth-child(2) ul li:last-child div h3{
    padding:0 0 0 0;
  }
  #menu > div > div > div:nth-child(2) ul li p{
    padding:5px 0 0 0;
  }
}
@media (max-width: 540px) {
  #menu > div > div > div:nth-child(2) ul li div{
    flex-wrap: wrap;
  }
  #menu > div > div > div:nth-child(2) ul li div h3{
    width:100%;
    padding:0 0 0 0;
    color:var(--orange);
    text-align:center;
    font-size:24px;
  }
  #menu > div > div > div:nth-child(2) ul li div img{
    width:80px;
    margin: 0 auto;
  }
  #menu > div > div > div:nth-child(1) p{
    color: var(--orange);
    text-align:center;
    position:relative;
    font-size:26px;
    margin:30px 0 0 0;
    font-weight:600;
    line-height: 1.4em;
  }
  #menu:before{
    content:"";
    position: absolute;
    top: 180px;
    left: 9vw;
    border-right: 41vw solid transparent;
    border-left: 41vw solid transparent;
    border-top: 480px solid #f9e9d8;
    z-index:0;
  }
}



/*---------------
problems
---------------*/
#problems{
  margin:0 auto;
  background:#fff;
  padding:80px 0 0 0;
}
#problems > div{
  width:92vw;
  max-width:1080px;
  margin: 0 auto;
}
#problems > div h2{
  text-align:center;
  font-size:30px;
  line-height:1.4em;
}
#problems > div h2 br{
  display:none;
}
#problems > div h2 img{
  width:360px;
  margin:0 auto;
}
#problems > div > p{
  text-align:center;
  font-size:26px;
  line-height:1.6em;
  padding:10px 0 0 0;
}
#problems > div ul{
  display:flex;
  justify-content: space-between;
  padding:60px 0 40px 0;
  flex-wrap: wrap;
}
#problems > div ul li{
  display: flex;
  align-items: center;
  width: 32%;
  padding:40px 60px 40px 60px;
  border-radius:100px;
  border:2px solid #FFDC78;
  line-height:1.4em;
  font-size: 20px;
  text-align:justify;
}
#problems > div img{
  width:70%;
  margin: 0 auto;
}
@media (max-width: 834px) {
  #problems > div h2 br{
    display:block;
  }
  #problems > div ul{
    width:90%;
    margin: 0 auto;
    padding:40px 0 40px 0;
  }
  #problems > div ul li{
    display: flex;
    align-items: center;
    width: 100%;
    padding:30px 30px 30px 30px;
    border-radius:100px;
    border:2px solid #FFDC78;
    line-height:1.4em;
    font-size: 18px;
    text-align:justify;
    margin:10px auto 10px auto;
  }
}

/*---------------
about
---------------*/
#about{
  margin:0 auto;
  background:#fff;
  padding:80px 0 80px 0;
}
#about > div{
  width:92vw;
  max-width:1440px;
  margin: 0 auto;
}
#about > div h2{
  text-align:center;
  font-size:30px;
}
#about > div h2 img{
  width:360px;
  margin:0 auto;
}
#about > div > p{
  text-align:center;
  font-size:26px;
  line-height:1.6em;
  padding:10px 0 0 0;
}
#about > div > p br{
  display:none;
}
#about > div > p span{
  color:var(--green);
  font-weight: 600;
}
.movie-wrap{
  margin:40px 0 0 0;
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
  background: #f0f0f0;
}
.movie-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.about-image{
  display:flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin:40px 0 0 0;
}
.about-image div:nth-child(1){
  width:55%;
}
.about-image div:nth-child(2){
  width:42%;
}
.about-image img{
  width: 100%;
}
@media (max-width: 834px) {
  #about > div > p br{
    display:block;
  }
  #about > div h2 img{
    width:70%;
    width:280px;
    margin:0 auto;
  }
  .about-image{
    width:90%;
    margin: 0 auto;
  }
  .about-image div:nth-child(1){
    width:100%;
    margin:40px 0 0 0;
  }
  .about-image div:nth-child(2){
    width:100%;
    margin:40px 0 0 0;
  }
}

/*---------------
background
---------------*/
#background{
  margin:0 auto;
  background:#fff;
  padding:80px 0 80px 0;
}
#background > div{
  width:100vw;
  max-width:1440px;
  margin: 0 auto;
}
#background > div h2{
  text-align:center;
  font-size:30px;
}
#background > div h2 img{
  width:360px;
  margin:0 auto;
}
#background > div > p{
  text-align:center;
  font-size:26px;
  line-height:1.6em;
  padding:10px 0 0 0;
}
#background > div > div > div{
  display:flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center;
}
#background > div > div > div > div:nth-child(1){
  width:43%;
}
#background > div > div > div > div:nth-child(2){
  width:53%;
}
#background > div > div > div:nth-child(2) > div:nth-child(1){
  order:2;
}
#background > div > div > div:nth-child(2) > div:nth-child(2){
  order:1;
}
#background > div > div div img{
  width:100%;
}
#background > div > div div h3{
  color:var(--orange);
  line-height:1.4em;
}
#background > div > div div p{
  padding:20px 50px 0 0;
  text-align:justify;
  font-size:24px;
  line-height:1.6em;
}
#background > div > div > div:nth-child(2) > div h3{
  padding:0 0 0 50px;
}
#background > div > div > div:nth-child(2) > div p{
  padding:20px 0 0 50px;
  text-align:justify;
  font-size:24px;
  line-height:1.6em;
}

@media (max-width: 834px) {
  #background > div h2 img{
    width:70%;
    width:280px;
    margin:0 auto;
  }
  #background{
    margin:0 auto;
    background:#fff;
    padding:80px 0 0 0;
  }
  #background > div > div > div{
    margin:40px 0 0 0;
  }
  #background > div > div > div > div:nth-child(1){
    width:100%;
  }
  #background > div > div > div > div:nth-child(2){
    width:100%;
  }
  #background > div > div > div:nth-child(1) > div:nth-child(1){
    width:96%;
  }
  #background > div > div > div:nth-child(2) > div:nth-child(1){
    order:1;
    width:96%;
    margin:0 0 0 4%;
  }
  #background > div > div > div:nth-child(2) > div:nth-child(2){
    order:2;
  }
  #background > div > div div p{
    padding: 0 50px 30px 50px;
  }
  #background > div > div > div:nth-child(1) > div h3{
    padding:50px 50px 20px 50px;
    text-align:justify;
  }
  #background > div > div > div:nth-child(2) > div h3{
    padding:50px 50px 20px 50px;
    text-align:justify;
  }
  #background > div > div > div:nth-child(1) > div h3 br{
    display:none;
  }
  #background > div > div > div:nth-child(2) > div h3 br{
    display:none;
  }
  #background > div > div > div:nth-child(2) > div p{
    padding: 0 50px 30px 50px;
  }
}

/*---------------
plan
---------------*/
#plan{
  margin:0 auto;
  padding:40px 0 40px 0;
}
#plan > div{
  width:92vw;
  max-width: 1280px;
  margin: 0 auto;
}
#plan > div > p{
  text-align:right;
  font-size:14px;
  line-height:1.6em;
}
#plan > div ul{
  display:flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 0 0 20px 0;
}
#plan > div ul li{
  width: 48%;
  margin: 40px 0 0 0;
  border-bottom:1px solid #f0f0f0;
  background:#fff;
  display:flex;
  justify-content: center;
  flex-wrap: wrap;
}
#plan > div ul li h3{
  width: 100%;
  text-align: center;
  padding:15px;
  color:#fff;
}
#plan > div ul li:nth-child(1) h3{
  background:#3CB4B0;
}
#plan > div ul li:nth-child(2) h3{
  background:#eaa83b;
}
#plan > div ul li:nth-child(3) h3{
  background:#105B91;
}
#plan > div ul li:nth-child(4) h3{
  background:#150576;
}
#plan > div ul li > div{
  width: 100%;

  padding:10px 0 15px 0;
}
#plan > div ul li div p:nth-child(1){
  width:100%;
  font-weight:600;
  text-align:center;
  font-size:18px;
}
#plan > div ul li div p:nth-child(2){
  width:100%;
  font-weight:600;
  text-align:center;
  font-size:40px;
}
#plan > div ul li div p:nth-child(2) span{
  font-size:24px;
}

@media (max-width: 834px) {
  #plan > div > p{
    text-align:center;
    font-size:14px;
    line-height:1.6em;
    padding:10px 0 0 0;
  }
  #plan > div ul li{
    width: 100%;
    margin: 40px 0 0 0;
  }
}

/*---------------
form-contact
---------------*/
#form-contact-main{
  margin:0 auto;
  background:#FFF8E4;
  padding:80px 0 80px 0;
}
#form-contact-main > div{
  width:92vw;
  max-width:1080px;
  margin: 0 auto;
}
#form-contact-main > div h2{
  text-align:center;
  font-size:30px;
  line-height:1.4em;

  color:var(--orange);
}
#form-contact-main > div h2 span{
  font-size:36px;
  color:var(--green);
  display:block;
  padding: 0 0 20px 0;
}
#form-contact-main > div > p{
  text-align:center;
  font-size:26px;
  line-height:1.6em;
  padding:10px 0 0 0;
}


/*---------------
form-contact
---------------*/
#form-contact{
  margin:0 auto;
  padding:80px 0 80px 0;
}
#form-contact > div{
  width:92vw;
  max-width:1280px;
  margin: 0 auto;
}
#form-contact > div h2{
  text-align:center;
  font-size:30px;
}
#form-contact > div > p{
  text-align:center;
  font-size:26px;
  line-height:1.6em;
  padding:10px 0 0 0;
}

/*---------------
footer
---------------*/
footer{
  background:#fff;
}
.lp_footer > div{
  width:92vw;
  max-width:1280px;
  margin: 0 auto;
  padding:20px 0 10px 0;
}
.lp_footer > div > div:nth-child(1){
  display:flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap:wrap;
}
.lp_footer > div > div:nth-child(1) div{
  width:220px;
}
.lp_footer > div > div:nth-child(1) div img{
  width:100%;
}
.lp_footer > div > div:nth-child(1) ul{
  display:flex;
  justify-content: space-between;
  flex-wrap:wrap;
}
.lp_footer > div > div:nth-child(1) ul li:nth-child(1){
  margin:0;
}
.lp_footer > div > div:nth-child(1) ul li{
  margin:0 0 0 50px;
}
.lp_footer > div > div:nth-child(1) ul li a{
  color:#000;
  font-size: 17px;
}
.lp_footer > div > div:nth-child(2){
  text-align:right;
  padding:40px 0 0 0;
}
.lp_footer > div > div:nth-child(2) small{
  color:#fff;
  font-size:10px;
  letter-spacing:1px;
}
@media (max-width: 880px) {
  .lp_footer > div > div:nth-child(2){
    text-align:center;
  }
  .lp_footer > div > div:nth-child(1) div{
    width:100%;
  }
  .lp_footer > div > div:nth-child(1) div img{
    width:50%;
    max-width:240px;
    margin:0 auto;
  }
  .lp_footer > div > div:nth-child(1) ul li:nth-child(1){
    display:none;
  }
  .lp_footer > div > div:nth-child(1) ul{
    width:100%;
    display:flex;
    justify-content: space-between;
    flex-wrap:wrap;
    margin:30px 0 0 0;
  }
  .lp_footer > div > div:nth-child(1) li{
    width:100%;
    text-align:center;
    margin:0 0 0 0!important;
  }
}

.sample-form{
  margin:40px 0 0 0;
}

/*---------------
Cookie
---------------*/
#cookieBanner {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: #5e5c5c;
  padding: 20px;
  text-align: center;
  z-index:99;
}
#cookieBanner > div{
  display:flex;
  align-items: center;
  justify-content: center;
  flex-wrap:wrap;
}
#cookieBanner > div p{
  font-size:15px;
  color:#fff;
  padding:20px;
}
#cookieBanner > div p a{
  color:#fff;
  padding:0 0 5px 0;
  border-bottom:1px dotted #fff;
}
#cookieBanner > div p a:hover{
  color:#f0f0f0;
  padding:0 0 5px 0;
  border-bottom:1px dotted #5e5c5c;
  cursor: pointer;
}
#declineBtn{
  margin: 0 5px 0 5px;
  cursor: pointer;
  border-top:none;
  border-right:none;
  border-bottom:none;
  border-left:none;
  background:#999;
  color:#fff;
  vertical-align:6px;
  padding:8px 25px 8px 25px;
  font-size:15px;
  border-radius:5px;
  transition: .3s;
}
#declineBtn:hover{
  background:#cdcdcd;
  border-radius:2px;
}
#acceptBtn{
  margin: 0 5px 0 5px;
  cursor: pointer;
  border-top:none;
  border-right:none;
  border-bottom:none;
  border-left:none;
  background:#f16c3a;
  color:#fff;
  vertical-align:6px;
  padding:8px 25px 8px 25px;
  font-size:15px;
  border-radius:5px;
  transition: .3s;
}
#acceptBtn:hover{
  background:#1492a0;
  border-radius:2px;
}
@media (max-width: 834px) {
  #declineBtn{
    padding:20px 25px 20px 25px;
  }
  #acceptBtn{
    padding:20px 25px 20px 25px;
  }
}

.gmoGroupSecurity_corpLogo {
    height: 36px;
}
.footerGmoEmbed {
    border-top: 1px solid #D8D8D8;
}