@charset "UTF-8";
@import url("reset.css");

/*

.inter-<uniquifier> {
  font-family: "Inter", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}

.noto-sans-jp-<uniquifier> {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}
*/

body {
  font-family: "Noto Sans JP", sans-serif;
}





.wrapper {
  overflow:  hidden;

}

.linkposition {
  position: relative;
  top: -100px;
  display: block;
}

@media screen and (max-width: 768px) {
  .linkposition {
    position: relative;
    top: -50px;
    display: block;
  }
}

/*=======================================================
 header
 =======================================================*/

header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: fixed;
  width: 100%;
  top: 0;
  background: transparent;
  z-index: 9999999;
  height: 74px;
  position: fixed;
  width: 100%;
  top: 25px;
}

header .header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  margin: 0 auto;
  padding: 0 50px;
  text-align: center;
}

header .logo {
  width: 290px;
  border-radius: 30px;
  background: #fff;
  height: 70px;
  line-height: 70px;
  padding: 0 25px;
}

header .logo img {
  height: auto;
  width: 100%;
}
nav ul a:hover {
opacity: 0.8;
}

#gloval-nav {display: flex;flex: 1;justify-content: center;padding: 0 20px;}

nav ul {
    margin: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #fff;
    border-radius: 50px;
    width: 100%;
    /* max-width: 460px; */
    height: 70px;
    padding: 0 30px;
}
nav li {
  margin: 0 0 0 20px;
  list-style-type: none;
}



nav ul {
  margin: 0;
  display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 10px;
}


nav li {
  margin: 0 0 0 25px;
  list-style-type: none;
}

nav li a {
  font-size: 20px;
  font-family: "Lato", sans-serif;
  font-weight: 900;
  font-style: italic;
  color: #25448e;
}

nav li:first-child {
  margin: 0;
}
nav li:nth-child(8) {
  margin: 0 0 0 15px;

}

nav li img {
  vertical-align: middle;
}




nav ul a:hover {
opacity: 0.8;
}

.entry {display: flex;}
.entry ul.entrylist {
  display: flex;
  align-items: center;
}

.entry ul.entrylist li.entryarea img {
  width: 100px;
  height: auto;
}

.entry ul.entrylist li img {
  width: 100%;
  height: auto;
}

.entry ul.entrylist li .mail {
  width: 56px;
  border-radius: 50px;
  background: #fff;
  height: 56px;
  line-height: 56px;
  text-align: center;
  margin: 0 20px 0 30px;
}

.entry ul.entrylist li .mail img {
  width: 29px;
  height: 20px;
vertical-align: text-top;
}
.entry ul.entrylist li .instagram {
  width: 56px;
  border-radius: 50px;
  background: #fff;
    height: 56px;
  line-height: 56px;
text-align: center;
}
.entry ul.entrylist li .instagram img {
  width: 27px;
  height: 27px;
vertical-align: text-bottom;

}

@media screen and (max-width:1240px) {
header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}





nav ul {
  margin: 0;
  display: flex;
    justify-content: center;
    align-items: center;
}
nav li {
  margin: 0 0 0 20px;
  list-style-type: none;
}
}


@media screen and (max-width: 1024px) {
header .header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    margin: 0 auto;
    padding: 0 20px;
    text-align: center;
}
header .logo {padding: 0 20px;height: 60px;display: flex;align-items: center;}
header .logo img {
  width: 100%;
  height: auto;
}
nav ul {
    margin: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #fff;
    border-radius: 50px;
    width: 100%;
    /* max-width: 460px; */
    height: 60px;
    padding: 0 30px;
}
nav li a {
    font-size: 18px;
    font-family: "Lato", sans-serif;
    font-weight: 900;
    font-style: italic;
    color: #25448e;
}
.entry ul.entrylist li .mail {
    width: 40px;
    border-radius: 50px;
    background: #fff;
    height: 40px;
    line-height: 40px;
    text-align: center;
    margin: 0 10px 0 10px;
}
.entry ul.entrylist li .instagram {
    width: 40px;
    border-radius: 50px;
    background: #fff;
    height: 40px;
    line-height: 40px;
    text-align: center;
}
.entry ul.entrylist li .instagram img {
    width: 20px;
    height: 20px;
    vertical-align: text-bottom;
}
.entry ul.entrylist li .mail img {
    width: 24px;
    height: 16px;
    vertical-align: middle;
}
}


@media screen and (max-width: 768px) {
nav li {
  margin: 0;
  list-style-type: none;
}
nav li:nth-child(8) {
  margin: 0;

}
#nav-toggle {
  padding-right: 74px;
  cursor: pointer;
  width: 220px;
  height: 36px;
}

#nav-toggle .instagram:after {
  position: absolute;
  content: url(../img/icon_instagram.svg);
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  display: block;
  top: 34%;
}

.open #nav-toggle .instagram:after {
  position: absolute;
  content: url(../img/icon_instagram_w.svg);
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  display: block;
  top: 34%;
}


#nav-toggle > div {
  position: relative;
  }
#nav-toggle span {
  width: 90%;
  height: 1px;
  right: 0;
  display: block;
  background: #333;
  position: absolute;
  -webkit-transition: top .5s ease, -webkit-transform .6s ease-in-out;
  transition: top .5s ease, -webkit-transform .6s ease-in-out;
  transition: transform .6s ease-in-out, top .5s ease;
  transition: transform .6s ease-in-out, top .5s ease, -webkit-transform .6s ease-in-out;
}
#nav-toggle span:nth-child(1) {
  top: 0;
  width: 74px
}
#nav-toggle span:nth-child(2) {
  top: 14px;
  width: 34px;
}
#nav-toggle span:nth-child(3) {
  top: 28px;
  width: 74px
}
#nav-toggle:hover span:nth-child(1) {
  top: 0;
}
#nav-toggle:hover span:nth-child(3) {
  top: 28px;
}

.open #nav-toggle span {
  background: #fff;
}
.open #nav-toggle span:nth-child(1) {
  top: 15px;
  -webkit-transform: rotate(30deg);
          transform: rotate(30deg);
}
.open #nav-toggle span:nth-child(2) {
  top: 15px;
  width: 0;
  left: 50%;
}
.open #nav-toggle span:nth-child(3) {
  top: 15px;
  -webkit-transform: rotate(-30deg);
          transform: rotate(-30deg);
}

/* z-index */
#nav-toggle {
  z-index: 1000;
}

#container {
  z-index: 900;
}

#gloval-nav {
  background: #4C4B69;
  color: #000;
  position: fixed;
  width: 500px;
  height:100%;
  max-height: 800px;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 990;
  text-align: center;
  display: -webkit-box;
  display: flex;
  visibility: hidden;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  font-size: 29px;
  opacity: 0;
  -webkit-transition: opacity .6s ease, visibility .6s ease;
  transition: opacity .6s ease, visibility .6s ease;
}

#gloval-nav a {
  display: block;
  color: #fff;
  text-decoration: none;
  padding: 10px 0;
  -webkit-transition: color .6s ease;
  transition: color .6s ease;
}
#gloval-nav a:hover {
  color: #fff;
}

nav {
  width: 100%;
}

nav ul {
  margin: 0;
  display: block;

}
nav ul li {
width: 100%;
padding: 0 30px;
text-align: left;
}

nav ul.sns {
    display: inline-flex;
}
nav ul.sns li {
    margin: 0 20px;
}



nav ul .menu_jp {
font-size: 12px;
}
#gloval-nav ul {
  list-style: none;
  background: none;
}
#gloval-nav ul li {
  opacity: 0;
  -webkit-transform: translateX(200px);
          transform: translateX(200px);
  -webkit-transition: opacity .2s ease, -webkit-transform .6s ease;
  transition: opacity .2s ease, -webkit-transform .6s ease;
  transition: transform .6s ease, opacity .2s ease;
  transition: transform .6s ease, opacity .2s ease, -webkit-transform .6s ease;
}

/* open */
.open {
  overflow: hidden;
}
.open #gloval-nav {
  visibility: visible;
  opacity: 1;
}

#gloval-nav {
  background: #ff6369;
  color: #fff;
  position: fixed;
  width: 500px;
  height: 100%;
  max-height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 990;
  text-align: center;
  display: -webkit-box;
  display: flex;
  visibility: hidden;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  font-size: 29px;
  opacity: 0;
  -webkit-transition: opacity .6s ease, visibility .6s ease;
  transition: opacity .6s ease, visibility .6s ease;
}
.open #gloval-nav li {
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition: opacity .9s ease, -webkit-transform 1s ease;
  transition: opacity .9s ease, -webkit-transform 1s ease;
  transition: transform 1s ease, opacity .9s ease;
  transition: transform 1s ease, opacity .9s ease, -webkit-transform 1s ease;
}}
/* humberger */

.wpb_button, .wpb_content_element, ul.wpb_thumbnails-fluid>li {
    margin-bottom: 0!important;
}



@media screen and (max-width: 768px) {
  header {
    height: 56px;
    top: 10px;
}
header .logo img {
  height: 46px;
  padding: 5px 0;
}
  #nav-toggle {
    padding-right: 0;
    cursor: pointer;
    margin-top: 0;
    width: 50px;
    height: 50px;
    position: absolute;
    right: 5px;
    background: #fff;
    border-radius: 50%;
}

.open #nav-toggle {
  background: none;
}

#nav-toggle .instagram:after {
  position: absolute;
  content: url(../img/icon_insta_l.svg);
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  display: block;
  top: 20%;
  right: 104px;
}
.open #nav-toggle .instagram:after {
  position: absolute;
  content: url(../img/icon_insta_w.svg);
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  display: block;
  top: 20%;
}

#nav-toggle .line:after {
  position: absolute;
  content: url(../img/icon_line_l.svg);
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  display: block;
  top: 20%;
  right: 64px;
}
.open #nav-toggle .line:after {
  position: absolute;
  content: url(../img/icon_line_l.svg);
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  display: block;
  top: 20%;
}
  #nav-toggle > div {
    position: relative;
    margin: 0 auto;
  }
  #nav-toggle span {
    width: 90%;
    height: 2px;
    right: 0;
    display: block;
    background: #333;
    position: absolute;
    -webkit-transition: top .5s ease, -webkit-transform .6s ease-in-out;
    transition: top .5s ease, -webkit-transform .6s ease-in-out;
    transition: transform .6s ease-in-out, top .5s ease;
    transition: transform .6s ease-in-out, top .5s ease, -webkit-transform .6s ease-in-out;
  }
  #nav-toggle span:nth-child(1) {
    top: 15px;
    width: 30px;
    right: 10px;
  }
  #nav-toggle span:nth-child(2) {
    top: 25px;
    width: 30px;
    right: 10px;
  }
  #nav-toggle span:nth-child(3) {
    top: 35px;
    width: 30px;
    right: 10px;
  }
  #nav-toggle:hover span:nth-child(1) {
    top: 15px;
  }
  #nav-toggle:hover span:nth-child(3) {
    top: 35px;
  }

  .open #nav-toggle span {
    background: #fff;
  }
  .open #nav-toggle span:nth-child(1) {
    top: 25px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .open #nav-toggle span:nth-child(2) {
    /* top: 25px; */
    width: 0;
    left: 50%;
  }
  .open #nav-toggle span:nth-child(3) {
    top: 25px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }

#gloval-nav {
  width: 100%;
  height: 100%;
}
  #gloval-nav a {
    padding: 18px 0;
  }
  nav ul .menu_en {
    font-size: 16px;
    }
.entry ul.entrylist {
    display: flex;
    align-items: center;
    margin-right: 52px;
}

.entry ul.entrylist li .mail {
    width: 50px;
    border-radius: 50px;
    background: #fff;
    height: 50px;
    line-height: 50px;
    text-align: center;
    margin: 0;
}
.entry ul.entrylist li .instagram {
    width: 50px;
    border-radius: 50px;
    background: #fff;
    height: 50px;
    line-height: 50px;
    text-align: center;
}
.entry ul.entrylist li .instagram img {
    width: 27px;
    height: 27px;
    vertical-align: text-bottom;
}
.entry ul.entrylist li .mail img {
    width: 29px;
    height: 20px;
    vertical-align: text-top;
}
    header .header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        width: 100%;
        margin: 0 auto;
        padding: 0 5px;
        text-align: center;
    }
    header .logo {
        padding: 0 5px;
        height: 40px;
        display: flex;
        align-items: center;
    }
}



/*_______________________________

firstview
_______________________________*/
.fv {
    width: 100%;
    height: auto;
    background-color: #fff;
    background-image: url(../img/bg_check.png);
    background-repeat: repeat;
    background-size: cover;
    padding: 15vh 0 0 0;
    font-size: 0;
    position: relative;
    overflow: hidden;
}

.fv ul.fvlist {
  width: 100%;
  display: flex;
  align-items: center;
  margin: 0;
  padding: 0 70px;
  justify-content: space-between;
  z-index: 1;
  position: relative;
}
.fv ul.fvlist li.left {
  width:36%;
  padding: 0 0 0 
}
.fv ul.fvlist li.right {
  width:56%;
}
.fv img {
  width: 100%;
  height: auto;
}
.fv ul.menu {
  width: 100%;
  display: flex;
justify-content: space-between;
margin-top: 30px;
}
.fv ul.menu li {
  width: 45%;
}
.fv .btm {
  position: absolute;
  bottom: -10px;
  z-index: 1;
}


@media screen and (max-width: 1590px) {
.fv ul.fvlist {
    width: 100%;
    display: flex;
    align-items: center;
    margin: 0;
    padding: 0 30px;
    justify-content: space-between;
    z-index: 1;
    position: relative;
}
}

@media screen and (max-width: 1024px) {
.fv ul.fvlist {
  width: 100%;
  display: flex;
  align-items: flex-start;
  margin: 0;
  padding: 0 30px;
  justify-content: space-between;
  z-index: 1;
  position: relative;
}
.fv ul.fvlist li.left {
  width:46%;
  padding: 0 0 0 
}
.fv ul.fvlist li.right {
  width:50%;
}
}


@media screen and (max-width: 768px) {
.fv {
    width: 100%;
    height: auto;
    background-color: #fff;
    background-image: url(../img/bg_check.png);
    background-repeat: repeat;
    background-size: cover;
    padding: 24vh 0 0 0;
    font-size: 0;
    position: relative;
    overflow: hidden;
}
.fv ul.fvlist {
        width: 100%;
        padding: 0 0 0 20px;
}
.fv ul.fvlist li.right {
    width: 100%;
}
.fv .catch {
position: absolute;
top: 100px;
left: 20px;
z-index: 1;
}
.fv .catch img {
  width: 60%;
}
.fv ul.menu_sp {
  display:flex;
  width: 100%;
  justify-content: space-between;
  position: absolute;
  bottom: 30px;
  z-index: 1;
  padding: 0 15px;
}
.fv ul.menu_sp li {
  width: 48%;
}
.fv ul.menu_sp li img {
  width: 100%;
  height: auto;
}
}


.or1 {
  position: absolute;
  left: -20VW;
  top: 8vh;
}
.or1 img {
  width: 34vw;
  height: auto
}
.or2 {
  position: absolute;
  left: 43vw;
  top: -12vh;
  right: 43vw;
}
.or2 img {
  width: 26vw;
  height: auto
}
.or3 {
  position: absolute;
  bottom: 10vh;
  right: -2vh;
  z-index: 2;
}
.or3 img {
  width: 14vw;
  height: auto
}
.or4 {
  position: absolute;
  bottom: 18vh;
  right: 36vw;
  z-index: 2;
}
.or4 img {
  width: 10vw;
  height: auto
}
.or5 {
    position: absolute;
    top: 23vw;
    left: 34vw;
    z-index: 0;
}
.or5 img {
  width: 2vw;
  height: auto
}
.or6 {
    position: absolute;
    top: 10vw;
    left: 38vw;
}
.or6 img {
  width: 30vw;
  height: auto
}
.or7 {
  position: absolute;
  left: 23vw;
  top: -12vh;
  right: 43vw;
}
.or7 img {
  width: 22vw;
  height: auto
}
.or8 {
  position: absolute;
  position: absolute;
  left: 1vw;
  bottom: 35vh;
}
.or8 img {
  width: 5vw;
  height: auto
}
.or9 {
  position: absolute;
  top: 23vh;
  right: 10vw;
}
.or9 img {
  width: 40vw;
  height: auto
}
.or10 {
  position: absolute;
  top: -10vh;
  right: -5vw;
}
.or10 img {
  width: 120vw;
  height: auto
}
.or11 {
  position: absolute;
  bottom: 20vh;
  right: -2vw;
}
.or11 img {
  width: 20vw;
  height: auto
}
.or12 {
  position: absolute;
bottom: 3vh;
    left: 12vw;
    z-index: 0;
}
.or12 img {
  width: 20vw;
  height: auto
}
.or13 {
    position: absolute;
    bottom: -15vh;
    left: -12vw;
}
.or13 img {
  width: 30vw;
  height: auto
}

@media screen and (max-width: 1024px) {
  .or4 {
    position: absolute;
    bottom: 18vh;
    right: -10vw;
    z-index: 0;
}
}
@media screen and (max-width: 768px) {
.or2 {
display: none;
}
.or4 {
display: none;
}
.or5 {
display: none;
}

.or6 {
    position: absolute;
    top: 30vh;
    left: -16vw;
}
.or6 img {
  width: 200px;
  height: auto
}
.or7 {
display: none;
}
.or8 {
display: none;
}
.or9 {
  position: absolute;
  top: 33vh;
  right: -10vw;
}
.or9 img {
  width: 202px;
  height: auto
}
.or10 {
  position: absolute;
  top: -10vh;
  right: -70vw;
}
.or10 img {
  width: 1500px;
  height: auto
}
.or11 {
display: none;
}
.or12 {
display: none;
}
.or13 {
display: none;
}
}
/*_______________________________

makeyou
_______________________________*/
.makeyou {
    width: 100%;
    height: auto;
    background-color: #fffe79;
    padding: 101px 0;
    font-size: 0;
    position: relative;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}



.makeyou ul.makeyoulist {
  display: flex;
  width: 100%;
  max-width: 1560px;
  justify-content: space-between;
  align-items: flex-start;
  margin: 0 auto;
}

.makeyou ul.makeyoulist li {
  width: 48%;
  color: #25448e;
}
.makeyou ul.makeyoulist img {
  width: 100%;
  height: auto;
}
.makeyou ul.makeyoulist li.right img {
  width: 100%;
  max-width: 648px;
  height: auto;
}

.makeyou .about {
  margin-left: auto;
  display: table;
  width: 100%;
  max-width: 500px;
  margin-top: 30px;
}

.makeyou .about .title {
    font-size: 30px;
  font-family: "Lato", sans-serif;
  font-weight: 900;
  font-style: italic;
  margin-bottom: 20px;
}

.makeyou .about ul.aboutlist {
border-top: 1px solid #25448e;
}
.makeyou .about ul.aboutlist li {
  border-bottom: 1px solid #25448e;
  position: relative;padding-left: 20px;
  font-size: 36px;
  width: 100%;
  line-height: 80px;
  font-style: italic;
font-size: clamp(24px, 3vw, 36px);
}

.makeyou .about ul.aboutlist li:after {content: url(../img/arrow.svg);position: absolute;top: 10px;bottom: 0;right: 5%;margin: auto;}



@media screen and (max-width: 1590px) {
.makeyou ul.makeyoulist {
padding: 0 30px;
}
}

@media screen and (max-width: 768px) {
.makeyou {
    width: 100%;
    height: auto;
    background-color: #fffe79;
    padding: 40px 0;
    font-size: 0;
    position: relative;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}
.makeyou ul.makeyoulist {
flex-wrap: wrap;
width: 100%;
padding: 0 10px;
}
.makeyou ul.makeyoulist li {
  width: 100%;
}
.makeyou .about {
    margin-left: auto;
    display: table;
    width: 100%;
    max-width: 55%;
    margin-top: -8vh;
}
}


.or14 {
  position: absolute;
  left: -5VW;
  top: 15vh;
}
.or14 img {
  width: 14vw;
  height: auto
}
.or15 {
  position: absolute;
  bottom: -10vh;
  left: 14vw;
  z-index: 99999999;
}
.or15 img {
  width: 30vw;
  height: auto
}
.or16 {
    position: absolute;
    top: 2vw;
    left: 38vw;
    z-index: -1;
}
.or16 img {
  width: 30vw;
  height: auto
}
.or17 {
    position: absolute;
    top: -14vh;
    right: -15vw;
    z-index: -1;
}
.or17 img {
  width: 30vw;
  height: auto
}
.or18 {
    position: absolute;
    top: 48vh;
    right: -15vw;
    z-index: -1;
}
.or18 img {
  width: 180vw;
  height: auto
}


/*_______________________________

makeyou bottom
_______________________________*/

.makeyou_btm {
  width: 100%;
  z-index: -1;
  position: relative;
}
.makeyou_btm img {
  width: 100%;
  height: auto;
}

/*_______________________________

pickup 
_______________________________*/

.pickup {
    width: 100%;
    height: auto;
    padding: 0;
    font-size: 0;
    position: relative;
    overflow: hidden;
    margin: 0 auto;
}

.pickup .inner {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 100px 0;
  z-index: 1;
  position: relative;
}

.pickup .pickupbox {
    position: relative;
    margin: 2em 0;
    padding: 300px 10% 80px;
    border: solid 3px #95ccff;
    border-radius: 8px;
    background-color: #fff;
    background-image: url(../img/bg_check.png);
    background-repeat: repeat;
    background-size: cover;
  }
.pickup .pickupbox .box-title {
    position: absolute;
    display: inline-block;
    top: -44px;
    left: calc( 50% - 11vw );
    right: calc( 50% - 11vw );
    padding: 0;
}
.pickup .pickupbox .box-title img {
  height: auto;
  max-width: 334px;
  width: 100%;
}
.pickup .pickupbox .pickupimg {
    position: absolute;
    display: inline-block;
    top: -90px;
    left: 30px;
    padding: 0;
    margin-right: 60%;
}
.pickup .pickupbox .pickupimg img {
  width: 100%;
  max-width: 460px;
  height: auto;
}
.pickup .pickupbox .title {
  font-size: 35px;
  color: #25448e;
  font-weight: bold;
  position: absolute;
  /* left: 40%; */
  top: 80px;
  margin-left: 30%;
  font-size: clamp(24px, 2.7vw, 35px);
}
.pickup .pickupbox .title .underline {
    background:linear-gradient(transparent 60%, #fffe79 60%);
}
.pickup .pickupbox p {
    margin: 0; 
    padding: 0;
    font-size: 15px;
}


.pickup .pickupbox ul.pickuplist {
  display: flex;
  width:100%;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}

.pickup .pickupbox ul.pickuplist li {
  width: 40%;
  text-align: center;
  margin-bottom: 60px;
}

.pickup .pickupbox ul.pickuplist img.pic  {
  width:100%;
  height: auto;
  margin-bottom: 20px;
}

.pickup .pickupbox ul.pickuplist img.text {
  width:auto;
  height: 80px;
  margin-bottom: 20px;
  text-align: center;
  display: -webkit-box;
  margin: 0 auto 20px;
}

.pickup .pickupbox ul.pickuplist img.more  {
  width: auto;
  height: 26px;
  text-align: center;
}
.pickup .btm {
position: absolute;
top: 0;
z-index: 1;
}

.pickup .btm img {
  width: 100%;
}
@media screen and (max-width: 1590px) {
.pickup .inner {padding:100px 30px;z-index: 1;position: relative;}
}



@media screen and (max-width: 1200px) {
.pickup .pickupbox ul.pickuplist img.text {
  width:auto;
  height: 60px;
  margin-bottom: 20px;
  text-align: center;
  display: -webkit-box;
  margin: 0 auto 20px;
}}



@media screen and (max-width: 768px) {

.pickup .inner {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 40px 5px 0;
  z-index: 1;
  position: relative;
}

.pickup .pickupbox {
    position: relative;
    margin: 2em 0;
    padding: 80px 5% 0;
    border: solid 3px #95ccff;
    border-radius: 8px;
    background-color: #fff;
    background-image: url(../img/bg_check.png);
    background-repeat: repeat;
    background-size: cover;
  }
.pickup .pickupbox .box-title {
    position: absolute;
    display: inline-block;
    top: -24px;
    left: 30%;
    right: 30%;
    padding: 0;
}
.pickup .pickupbox .box-title img {
  height: auto;
  max-width: 100%;
  width: 100%;
}
.pickup .pickupbox .pickupimg {
    position: absolute;
    display: inline-block;
    top: -30px;
    left: 0;
    padding: 0;
    margin-right: 70%;
}
.pickup .pickupbox .pickupimg img {
  width: 100%;
  max-width: 460px;
  height: auto;
}
.pickup .pickupbox .title {
  font-size: 35px;
  color: #25448e;
  font-weight: bold;
  position: absolute;
  /* left: 40%; */
  top: 31px;
  margin-left: 26%;
  font-size: 14px;
}
.pickup .pickupbox .title .underline {
    background:linear-gradient(transparent 60%, #fffe79 60%);
}
.pickup .pickupbox p {
    margin: 0; 
    padding: 0;
    font-size: 15px;
}


.pickup .pickupbox ul.pickuplist {
  display: flex;
  width:100%;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}

.pickup .pickupbox ul.pickuplist li {
  width: 47%;
  text-align: center;
  margin-bottom: 60px;
}

.pickup .pickupbox ul.pickuplist img.pic  {
  width:100%;
  height: auto;
  margin-bottom: 20px;
}

.pickup .pickupbox ul.pickuplist img.text {
  width: auto;
  height: 4vh;
  margin-bottom: 20px;
  text-align: center;
  display: -webkit-box;
  margin: 0 auto 20px;
}

.pickup .pickupbox ul.pickuplist img.more  {
  width: auto;
  height: 26px;
  text-align: center;
}
.pickup .btm {
position: absolute;
top: 0;
z-index: 1;
}

.pickup .btm img {
  width: 100%;
}
}

.scroll-infinity {
  margin-top: 40px;
  z-index: 1;
  position: relative;
}

@keyframes infinity-scroll-left {
  from {
    transform: translateX(0);
  }
    to {
    transform: translateX(-100%);
  }
  }
  .scroll-infinity__wrap {
    display: flex;
    overflow: hidden;
  }
  .scroll-infinity__list {
    display: flex;
    list-style: none;
    padding: 0
  }
  .scroll-infinity__list--left {
    animation: infinity-scroll-left 200s infinite linear 0.5s both;
  }
  .scroll-infinity__item {
    width: 100%;
  }
  .scroll-infinity__item>img {
    width: auto;
    height: 130px;
    max-width: unset;
  }
  @media screen and (max-width:768px) {
    .scroll-infinity__item>img {
      width: auto;
      height: 60px;
    }
  }
.or19 {
    position: absolute;
    top: 50vh;
    left: 1vw;
    z-index: 1;
}
.or19 img {
  width: 5vw;
  height: auto
}
.or20 {
  position: absolute;
  left: -5vw;
  top: 64vh;
  z-index: 2;
}
.or20 img {
  width: 16vw;
  height: auto
}
.or21 {
  position: absolute;
  right: 1vw;
  top: 25vh;
}
.or21 img {
  width: 18vw;
  height: auto
}
.or22 {
  position: absolute;
  right: -3vw;
  bottom: 90vh;
  z-index: 2;
}
.or22 img {
  width: 15vw;
  height: auto
}
.or23 {
  position: absolute;
  left: 1vw;
  bottom: 35vh;
}
.or23 img {
  width: 15vw;
  height: auto
}
.or24 {
  position: absolute;
  right: 1vw;
  bottom: 55vh;
}
.or24 img {
  width: 5vw;
  height: auto
}
/*_______________________________

Staff Voice
_______________________________*/

.staff {
  margin: 0 auto;
  font-size: 0;
  overflow: hidden;
  position: relative;
}

.staff h2 {
  text-align: center;
  font-size: 30px;
  margin-bottom: 30px;
  font-family: "Lato", sans-serif;
  font-weight: 900;
  font-style: italic;
}
.staff h3 {
  text-align: center;
  font-size: 36px;
  margin-bottom: 40px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
}

.staff .inner {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
}

.staff .stafflist {display: flex;width: 100%;justify-content: space-between;align-items: flex-start;flex-wrap: wrap;z-index: 1;position: relative;}

.staff .stafflist li {
  width: 32%;
  position: relative;
  margin-bottom: 30px;
}

.staff .stafflist li .detail {
  position: absolute;
  bottom: 10px;
  left: 10px;
  margin-right: 20%;;
}

.staff .stafflist li .catch {
  position: absolute;
font-size: clamp(14px, 1.3vw, 20px);
  -ms-writing-mode: tb-rl;
	-webkit-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
  white-space: nowrap;
  right: 10px;
  top: 20px;
}
.staff .stafflist li img {
  width: 100%;
  height: auto;
}

.staff .btm {
  width: 100%;
}
.staff .btm img {
  width: 100%;
  height: auto;
}

@media screen and (max-width: 1590px) {
.staff .inner {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 30px;
}
}


@media screen and (max-width: 1024px) {
.staff .stafflist li .catch {
    position: absolute;
    font-size: clamp(1.1vw, 1.3vw, 20px);
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    white-space: nowrap;
    right: 10px;
    top: 20px;
}}

@media screen and (max-width: 768px) {
.staff h2 {
    text-align: center;
    font-size: 20px;
    margin-bottom: 10px;
    font-family: "Lato", sans-serif;
    font-weight: 900;
    font-style: italic;
}
.staff h3 {
    text-align: center;
    font-size: 24px;
    margin-bottom: 20px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-weight: 700;
}
.staff .inner {width: 100%;max-width: 1400px;margin: 0 auto;padding: 40px 10px 0;}
.staff .stafflist {
  display: flex;
  width: 100%;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  z-index: 1;
  position: relative;
}

.staff .stafflist li {
  width: 49%;
  position: relative;
  margin-bottom: 30px;
}

.staff .stafflist li .detail {
  position: absolute;
  bottom: 10px;
  left: 10px;
  margin-right: 20%;;
}
.staff .stafflist li .detail img {
  width: 85%;
  height: auto;
}

.staff .stafflist li .catch {
  position: absolute;
font-size:11px;
  -ms-writing-mode: tb-rl;
	-webkit-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
  white-space: nowrap;
  right: 10px;
  top: 20px;
}
.staff .stafflist li img {
  width: 100%;
  height: auto;
}
}




.or25 {
    position: absolute;
    top: 20vh;
    left: 3vw;
}
.or25 img {
  width: 15vw;
  height: auto
}
.or26 {
  position: absolute;
  left: -5vw;
  top: 55vh;
}
.or26 img {
  width: 10vw;
  height: auto
}
.or27 {
  position: absolute;
  right: 1vw;
  top: 22vh;
}
.or27 img {
  width: 18vw;
  height: auto
}
.or28 {
  position: absolute;
  right: 1vw;
  bottom: 35vh;
}
.or28 img {
  width: 15vw;
  height: auto
}
.or29 {
  position: absolute;
  left: 1vw;
  bottom: 35vh;
}
.or29 img {
  width: 5vw;
  height: auto
}
.or30 {
    position: absolute;
    top: 50vh;
    right: 1vw;
    z-index: 1;
}
.or30 img {
  width: 5vw;
  height: auto
}
.or31 {
    position: absolute;
    top: 18vh;
    right: -15vw;
    z-index: -1;
}
.or31 img {
  width: 180vw;
  height: auto
}

/*_______________________________

company outline
_______________________________*/

.company {
  width: 100%;
  margin: 0 auto;
  background: #f9d7eb;
  font-size: 0;

}
.company .inner {
  width: 100%;
  margin: 0 auto;
  padding: 0 70px;
}
.company ul.companylist {
 display: flex;
 align-items: center;
border: 5px solid #25448e;
    background-color: #fff;
    background-image: url(../img/bg_check.png);
    background-repeat: repeat;
    background-size: cover;
    border-radius: 50px;
    padding: 30px;
justify-content: space-between;
}
.company ul.companylist img {
  width: 100%;
  height: auto;
}
.company ul.companylist li:first-child {
  width: 26%;
}
.company ul.companylist li:nth-child(2) {
  width: 72%;
}


.company .text {
  color: #25448e;
  font-size: 26px;
  font-weight: bold;
  margin: 40px 0;
}
.company .download img {
  width: 100%;
  max-width: 320px;
}
.company ul.companylist ul.company_titlelist {
  display: flex;
  width:100%;
justify-content: space-between;
flex-wrap: wrap;
}
.company ul.companylist ul.company_titlelist li.pic {
width: 100%
}
.company ul.companylist ul.company_titlelist li.details {
width: 100%
}

@media screen and (max-width: 1590px) {
.company .inner {
    width: 100%;
    margin: 0 auto;
    padding: 20px 30px;
}
}



@media screen and (max-width: 1024px) {
.company ul.companylist {
 display: flex;
 align-items: center;
border: 5px solid #25448e;
    background-color: #fff;
    background-image: url(../img/bg_check.png);
    background-repeat: repeat;
    background-size: cover;
    border-radius: 50px;
    padding: 30px;
}
.company ul.companylist img {
  width: 100%;
  height: auto;
}
.company ul.companylist li:first-child {
  width: 32%;
}
.company ul.companylist li:nth-child(2) {
  width: 64%;
}


.company .text {
    color: #25448e;
    font-size: 2.4vw;
    font-weight: bold;
    margin: 20px 0;
}
.company .download img {
  width: 100%;
  max-width: 320px;
}}

@media screen and (max-width: 768px) {
.company .inner {
        width: 100%;
        margin: 0 auto;
        padding: 10px;
}
.company ul.companylist {
 display: flex;
 align-items: center;
border: 2px solid #25448e;
    background-color: #fff;
    background-image: url(../img/bg_check.png);
    background-repeat: repeat;
    background-size: cover;
    border-radius: 20px;
    padding:  10px;
flex-wrap: wrap;
flex-direction: column-reverse;
}
.company ul.companylist img {
  width: 100%;
  height: auto;
}
.company ul.companylist li:first-child {
  width: 100%;
}
.company ul.companylist li:nth-child(2) {
  width: 100%;
}


.company .text {
    color: #25448e;
    font-size: 2.4vw;
    font-weight: bold;
    margin: 20px 0;
}
.company .download {
  text-align: right;
  margin-left: auto;
  margin-top: -20px;
  margin-right: 8px;
}
.company .download img {
  width: 100%;
  max-width: 180px;
}
.company ul.companylist ul.company_titlelist {
  display: flex;
  width:100%;
justify-content: space-between;
}
.company ul.companylist ul.company_titlelist li.pic {
width: 35%
}
.company ul.companylist ul.company_titlelist li.details {
width: 60%
}
}
/*_______________________________

gallery

_______________________________*/

.gallery {
  background: #f7f7f7;
  overflow: hidden;
  padding-bottom: 80px
}

.gallery h2 {
  text-align: center;
  font-size: 30px;
  margin-bottom: 30px;
  font-family: "Lato", sans-serif;
  font-weight: 900;
  font-style: italic;
}
.gallery .tag {
  margin: 0 auto 40px;
  text-align: center;
}


.gallery .tag a {
  text-align: center;
  font-size: 36px;

  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  background: #fff;
  color: #f15a24;
  border-radius: 30px;
  padding: 5px 20px;
  font-size: 28px ;
}

.gallery .btm {
  width: 100%;
  padding-bottom: 80px;
}
.gallery .btm img {
  width: 100%;
  height: auto;
}


@media screen and (max-width: 768px) {
.gallery {
    padding-bottom: 40px;
}
.gallery h2 {
text-align: center;
        font-size: 20px;
        margin-bottom: 10px;
        font-family: "Lato", sans-serif;
        font-weight: 900;
        font-style: italic;
}
.gallery .tag a {
    text-align: center;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-weight: 700;
    background: #fff;
    color: #f15a24;
    border-radius: 30px;
    padding: 5px 20px;
    font-size: 18px;
}
.gallery .btm {
    width: 100%;
    padding-bottom: 40px;
}
}

/*_______________________________

brand
_______________________________*/
.brand {
  width: 100%;
  margin: 0 auto 100px;
  overflow: hidden;
}

.brand .inner {
  padding: 0 70px;
}
.brand h2 {
  text-align: center;
  font-size: 30px;
  margin-bottom: 30px;
  font-family: "Lato", sans-serif;
  font-weight: 900;
  font-style: italic;
}
.brand h3 {
  text-align: center;
  font-size: 36px;
  margin-bottom: 40px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: clamp(24px, 2.5vw, 36px);
}
.brand ul.brandlist {
  display: flex;
  width: 100%;
  justify-content: space-between;
  margin-bottom: 60px;
}
.brand ul.brandlist li.pic {
  width: 340px;

}
.brand ul.brandlist li.pic img {
  width: 285px;
  height: aut0;
}

.brand ul.brandlist li.detail {
  width: calc( 100% - 340px);
}
.brand ul.brandlist ul.brandtitle {
  display: flex;
  justify-content: space-between;
  margin-bottom: 40px;
  width: 100%;
}

.brand ul.brandlist ul.brandtitle li.logo {
  width: 40%;
}

.brand ul.brandlist ul.brandtitle li.logo img {
width: 100%;
height: auto;
}
.brand ul.brandlist ul.brandtitle li.logo img {
  padding: 0 0 30px 0;
}

.brand ul.brandlist ul.brandtitle li.details {
  width: 60%;
}
.brand ul.brandlist ul.brandtitle li .title {
  font-size: 42px;
  font-weight: bold;
  font-size: clamp(24px, 2.6vw, 48px);
}
.brand ul.brandlist .text {
  font-size: 32px;
  font-size: clamp(20px, 2.2vw, 32px);
}
.brand .more_btn {
  text-align: center;
  margin: 0 auto;
}

.brand .more_btn a img {
width: 137px;
height: auto;
}


.brand .btm {
  width: 100%;
  padding-bottom: 80px;
}
.brand .btm img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 1590px) {
.brand .inner {
    padding: 0 30px;
}
}


@media screen and (max-width: 768px) {
.brand {
    width: 100%;
    margin: 0 auto 40px;
    overflow: hidden;
}
.brand .inner {
        padding: 0 15px;
    }
.brand .btm {
    width: 100%;
    padding-bottom: 40px;
}
.brand h2 {
text-align: center;
        font-size: 20px;
        margin-bottom: 10px;
        font-family: "Lato", sans-serif;
        font-weight: 900;
        font-style: italic;

}
.brand h3 {
        text-align: center;
        font-size: 24px;
        margin-bottom: 20px;
        font-family: "Zen Kaku Gothic New", sans-serif;
        font-weight: 700;
}

.brand ul.brandlist {
  display: flex;
  width: 100%;
  justify-content: space-between;
  margin-bottom: 30px;
  flex-wrap: wrap;
}
.brand ul.brandlist li.pic {
  width: 100%;
  text-align: center;
}
.brand ul.brandlist li.pic img {
  width: 140px;
  height: auto;
  aspect-ratio: 1/1;
  object-fit: cover;
  border-radius: 20px;
}

.brand ul.brandlist li.detail {
  width: 100%;
  text-align: center;
}
.brand ul.brandlist ul.brandtitle {
  display: flex;
  justify-content: space-between;
  margin-bottom: 20px;
  width: 100%;
  flex-wrap: wrap;
}

.brand ul.brandlist ul.brandtitle li.logo {
  width: 100%;
}

.brand ul.brandlist ul.brandtitle li.logo img {
width: 100%;
height: auto;
}
.brand ul.brandlist ul.brandtitle li.logo img {
  padding: 10px 0;
  width: auto;
  height: 50px;
}

.brand ul.brandlist ul.brandtitle li.details {
  width: 100%;
}
.brand ul.brandlist ul.brandtitle li .title {
  font-size: 42px;
  font-weight: bold;
  font-size: 16px;
}
.brand ul.brandlist .text {
  font-size: 32px;
  font-size: 14px;
}
.brand .more_btn {
  text-align: center;
  margin: 0 auto;
}

.brand .more_btn a img {
width: 137px;
height: auto;
}


.brand .btm {
  width: 100%;
  padding-bottom: 40px;
}
.brand .btm img {
  width: 100%;
  height: auto;
}
}
/*_______________________________

job
_______________________________*/
.job {
  width: 100%;
  margin: 0 auto 100px;
  overflow: hidden;
}

.job .inner {
  padding: 0 70px;
}
.job h2 {
  text-align: center;
  font-size: 30px;
  margin-bottom: 30px;
  font-family: "Lato", sans-serif;
  font-weight: 900;
  font-style: italic;
}
.job h3 {
  text-align: center;
  font-size: 36px;
  margin-bottom: 40px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
font-size: clamp(24px, 2.5vw, 36px);
}
.job ul.joblist {
  display: flex;
  width: 100%;
  justify-content: space-between;
}
.job img {
width: 100%;
height: auto;
}
.job ul.joblist .pic {
  width: 30%;
}

.job ul.joblist .detail {
  width: 65%;
}
.job ul.tab {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.job ul.tab li {
  border: 1px solid #FF6369;
  color: #FF6369;
  padding: 3px 5px;
  margin-right: 5px;
  border-radius: 30px;
  font-size: 20px;
}
.job .brands {
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 20px;
}

.job .position {
  font-size:32px;
  font-weight: bold;
  margin-bottom: 20px;
}

.job .position span {
  font-size:32px;
  font-weight: normal;
font-size: clamp(22px, 2.2vw, 32px);
}
.job .text {
  font-size: 32px;
  margin-bottom: 40px;

font-size: clamp(20px, 2.3vw, 28px);
}
.job .btn {
  margin-left: auto;
  width: 300px;
}
.job .btn a img {
width: 100%;
height: auto;
}

.job .categorylist {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 40px;
}
.job .categorylist li {
text-align: center;
}
.job .categorylist li .cat {
  background: none;
  color: #000;
font-size: 28px;
border-radius: 40px;
border: 0;
line-height: 2em;
padding: 0 20px;
font-size: clamp(20px, 2.4vw, 28px);

}
.job .categorylist li.active .cat {
  background: #898989;
  color: #fff;
}

.job .joblist .statusbox {
display: inline;
    border: 1px solid #ff6369;
    color: #ff6369;
    background: #fff;
    font-size: 20px;
    border-radius: 20px;
    padding: 4px 10px;
    vertical-align: bottom;
    margin-left: 5px;
}
@media screen and (max-width: 768px) {
.job {
    width: 100%;
    margin: 0 auto 40px;
    overflow: hidden;
}
.job .inner {
  padding: 0 15px;
}
.job h2 {
  text-align: center;
  font-size: 20px;
  margin-bottom: 10px;
  font-family: "Lato", sans-serif;
  font-weight: 900;
  font-style: italic;
}
.job h3 {
  text-align: center;
  font-size: 24px;
  margin-bottom: 20px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
}
.job ul.joblist {
  display: flex;
  width: 100%;
  justify-content: center;
  flex-wrap: wrap;
}
.job img {
width: 100%;
height: auto;
}
.job ul.joblist .pic {
  width: 100%;
}

.job ul.joblist .detail {
  width: 100%;
}
.job ul.tab {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.job ul.tab li {
  border: 1px solid #FF6369;
  color: #FF6369;
  padding: 3px 5px;
  margin-right: 5px;
  border-radius: 30px;
  font-size: 14px;
}
.job .brands {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 10px;
}

.job .position {
  font-size: 22px;
  font-weight: bold;
  margin-bottom: 10px;
}

.job .position span {
  font-size:32px;
  font-weight: normal;
  font-size: 16px;
}
.job .text {
  font-size: 32px;
  margin-bottom: 10px;
  font-size: 16px;
}
.job .btn {
  margin-left: auto;
  width: 200px;
}
.job .btn a img {
width: 100%;
height: auto;
}

.job .categorylist {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 20px;
}
.job .categorylist li {
text-align: center;
}
.job .categorylist li .cat {
  background: none;
  color: #000;
  font-size: 28px;
  border-radius: 20px;
  border: 0;
  line-height: 2em;
  padding: 0 10px;
  font-size: 16px;
}
.job .categorylist li.active .cat {
  background: #898989;
  color: #fff;
}
.job .joblist .statusbox {
    display: inline;
    border: 1px solid #ff6369;
    color: #ff6369;
    background: #fff;
    font-size: 14px;
    border-radius: 20px;
    padding: 1px 5px;
    vertical-align: bottom;
    margin-left: 5px;
}
}

/* brain */
#brain {
	position:relative;
  font-size: 0;
}

#brain #banner {
	background: none;
	z-index: 0;
	display: block;
	padding: 0;
}
#brain img {
  width: 100%;
  height: auto;
}

#brain .right_txt {
position: absolute;
    writing-mode: vertical-rl;
    color: #fff;
    font-size: 3.4vw;
    right: 8%;
    top: 20%;
    line-height: 1.4em;
  
}

#brain .left_txt {
position: absolute;
    color: #fff;
    font-size: 2.6vw;
    left: 4%;
    bottom: 130px;
    font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 400;
}
#brain .link {
    width: 400px;
    height: auto;
    display: flex;
    align-items: center;
    padding: 0 30px;
    border-radius: 40px;
    background-color: #fff;
    position: absolute;
    right: 2%;
    bottom: 150px;
    height: 70px;
    line-height: 70px;
    font-size: 28px;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 400;
}
#brain .link a::after {
    content: "";
    background-image: url(../img/arrow_gray.svg);
    width: 35px;
    height: 35px;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
  
}
@media only screen and (max-width:1024px) {

#brain .left_txt {
    bottom: 50px;
}
#brain>.link {
    bottom: 50px;
	}
}
@media only screen and (max-width:768px) {
#brain .link {
    width: 40%;
    height: auto;
    display: flex;
    align-items: center;
    padding: 0 5px 0 10px;
    border-radius: 40px;
    background-color: #fff;
    position: absolute;
    right: 2%;
    bottom: 16%;
    line-height: 30px;
}
#brain .link a {
    font-size: 14px;
    position: relative;
    display: block;
    width: 100%;
}
#brain .left_txt {
    position: absolute;
    color: #fff;
    font-size: 4vw;
    left: 2%;
    bottom: 30%;
}
#brain .right_txt {
    position: absolute;
    writing-mode: vertical-rl;
    color: #fff;
    font-size: 5vw;
    right: 6%;
    top: 10%;
    line-height: 1.4em;
}
#brain .link a::after {
    content: "";
    background-image: url(../img/arrow_gray_sp.svg);
    width: 15px;
    height: 15px;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    /* transform: scale(0.8); */
    /* transform-origin: left top; */
}

}
/*_______________________________

entry area
_______________________________*/
.entry_area {
	overflow: hidden;

}
.entry_area img {
  width: 90px;
  height: auto;
}

.entry_area .slidein {
	/* 装飾に関わるスタイルは省略 */
	margin: 50px auto;
	transition: 1s cubic-bezier(0.75, 0, 0.25, 1);
}

.entry_area .slide_right{
	transform: translateX(calc(50vw + 50%));
}
.entry_area .show{
	transform: translateX(0);
	position: fixed;
	top: 10%;
	right: -20px;
	z-index: 3;
}
/*footerまでスクロールしたら消す*/
.entry_area .show.is-hidden {
  transform: translateX(calc(50vw + 50%));
}


/*_______________________________

トップページ　footer
_______________________________*/



footer {
background-color: var(--color-gray);
    border-radius: 40px 40px 0 0;
    z-index: 99;
    padding: 50px;
    margin-top: -32px;
    background: #f6f6f6;
    color:#898989;
    position: relative;
}

footer a {
  color:#898989;
}

footer a:hover {
  opacity: 0.8;
}

footer ul.footer_list {
  display: flex;
  width:100%;
  margin: 0 auto;
  justify-content: space-between;
}

footer ul.footer_list li.logo_area {
width: 22%;
}
footer ul.footer_list li.menu_area {
width: 34%;
}
footer ul.footer_list li.contact_area {
width: 20%;
}
footer ul.footer_list li.sns_area {
width: 16%;
}


footer .logo {
  margin-bottom: 40px;
}
footer .logo img {
  width: 100%;
  height: auto;
}

footer .company {
  font-size:14px;
  background: none;
  margin-bottom: 20px;;
}
footer .company .large {
  font-size: 21px;
}
footer .number {
  font-size:14px;
}
footer ul.menulist {
  display: flex;
  font-size: 24px;
  justify-content: flex-start;
  margin-left: 0;
}
footer ul.menulist li {
  font-size: 1.2vw;
  margin-right: 20px;
  width: auto;
}

footer .phone {
  font-size: 19px;
  font-size: 1.4vw;
}
footer .hours {
  font-size: 14px;
  font-size: 1vw;
}
footer .tel {
  font-size: 35px;
    font-size: 2.4vw;
}
footer .tel .small {
  font-size: 18px;
    font-size: 1.4vw;
}
footer .caution {
  font-size: 14px;
    font-size: 1.2vw;
}

footer ul.snslist {
  display: flex;
}
footer ul.snslist li {
  margin-right: 10px;
}
footer ul.snslist li img {
  width: 70px;
  height: 70px
}

footer .copy {
  width: 100%;
  margin: 0 auto;
  text-align: right;
  font-size: 10px;
}
footer .privacy {
  width: 100%;
  margin: 0 auto;
  text-align: right;
  font-size: 10px;
  padding-right: 105px;
  margin-bottom: 20px;
}
footer .love {
  color:#FF6369;
  text-align: center;
  font-size: 21px;
}
    footer .linelink img {
        width: 100%;
        height: auto;
    }
@media screen and (max-width:1500px){
  footer {
    padding: 50px;
  }
}

@media screen and (max-width:1260px){
  footer ul.snslist li img {
    width: 60px;
    height: 60px;
}


  footer .linelink img {
    width: auto;
    height: 60px;
  }
footer ul.menulist li {
    font-size: 1.1vw;
    margin-right: 10px;
    width: auto;
}
footer .company .large {
    font-size: 1.5vw;
}
footer .company {
    font-size: 12px;
    background: none;
    margin-bottom: 20px;
}
footer .number {
    font-size: 12px;
}
}

 /*641px～PC　PC上では見えないようにする*/
 @media screen and (max-width:769px){
  footer {
    padding: 110px 30px;
    position:  relative;

  }


}

/*スマホ～641pxの幅サイズまで*/
@media screen and (max-width:768px){
.footer_area {
position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        z-index: 10000;
        margin: 0 auto;
        text-align: center;
        padding: 15px 0;
        background: #00ca42;
        height: 80px;
}
.footer_area img {
  height: 50px;
  width: auto;
}

footer {
  padding: 15px 15px 120px;
  position: relative;
}
footer ul.footer_list {
  flex-wrap: wrap;
}
footer ul.footer_list li.menu_area {
width: 100%;
text-align: center;
}
footer ul.footer_list li.contact_area {
width: 100%;
text-align: center;
}
footer ul.footer_list li.sns_area {
width: 100%;
}
footer ul.menulist {
    display: flex;
    justify-content: center;
    margin-bottom: 5px;
}
    footer ul.menulist li {
        font-size: 14px;
        margin-right: 10px;
        width: auto;
    }
footer .privacy {
    width: 100%;
    margin: 0 auto;
    text-align: center;
    font-size: 14px;
    padding-right: 0;
    margin-bottom: 20px;
    margin-top: 20px;
}
footer .logo {
    margin-bottom: 20px;
}
footer .logo img {
    width: 80%;
    height: auto;
}
footer ul.snslist {
    display: flex;
    justify-content: center;
}
footer .linelink {
  text-align: center;
}
footer .phone {
  font-size: 14px;
}
footer .hours {
  font-size: 14px;

}
footer .tel {
  font-size: 20px;
}
footer .tel .small {
  font-size: 14px;
}
footer .caution {
  font-size: 14px;
    font-size: 1.2vw;
}
footer ul.snslist li img {
        width: 50px;
        height: 50px;
}
footer .linelink img {
        width: auto;
        height: 50px;
}
footer .copy {
    width: 100%;
    margin: 0 auto;
    text-align: center;
    font-size: 10px;
}
.makeyou .about .title {
    font-size: 4vw;
    margin-bottom: 10px;
}
.makeyou .about ul.aboutlist li {
    padding-left: 0;
    font-size: 3.9vw;
    width: 100%;
    line-height: 50px;
    font-style: italic;
}
.makeyou .about ul.aboutlist li:after {
    content: url(../img/arrow.svg);
    position: absolute;
    top: 0.8vh;
    bottom: 0;
    right: 0;
    margin: auto;
    transform: scale(0.8);
    transform-origin: left top;
}
}


/*==================================================
about
===================================*/
.about_progress {
	padding: 130px 0 100px;
	background-color: #fff;
	background-image: url(../img/bg_check.png);
	background-repeat: repeat;
	background-size: cover;
	font-size: 0;
	position: relative;
	overflow: hidden;
	/* height: 100vh; */
}

.about_progress h2 {text-align: center;z-index: 1;position: relative;}

.about_progress h2 img {
	width: 100%;
	height: auto;
	max-width: 324px;
}
.about_plist {
	display: flex;
	width: 100%;
	justify-content: space-around;
	align-items: flex-start;
	z-index: 1;
	position: relative;
	margin-top: 120px;
}
.about_plist li:first-child {
	width: 44%;
}
.about_plist li:nth-child(2) {
	width: 36%;
}

.about_plist li img {
	width: 100%;
	height: auto;
}

ul.about_progress_d {
    display: flex;
    width: 100%;
    margin-left: 40px;
    background: #fffe79;
    color: #25448e;
    justify-content: left;
    align-items: center;
    font-size: clamp(20px, 2vw, 28px);
    min-height: 300px;
    border-radius: 60px 0 0 60px;
    line-height: 2em;
    margin-top: -100px;
}
ul.about_progress_d li:first-child {
  width: 40%;
}
ul.about_progress_d li:nth-child(2) {
  width: 60%;
}

@media screen and (max-width: 768px) {
.about_progress {
    padding: 80px 0 0;
    background-color: #fff;
    background-image: url(../img/bg_check.png);
    background-repeat: repeat;
    background-size: cover;
    font-size: 0;
    position: relative;
    overflow: hidden;
}
.about_progress h2 img {
	width: 100%;
	height: auto;
	max-width: 200px;
}
.about_plist {flex-wrap: wrap;padding : 15px;margin-top: 30px;}
.about_plist li {
width: 100%;
}
.about_plist li:first-child {
    width: 100%;
}
.about_plist li:nth-child(2) {
  display: none;
}
ul.about_progress_d {
    display: flex;
    width: 100%;
    margin-left: 20px;
    justify-content: left;
    align-items: center;
    font-size: 16px;
    min-height: auto;
    border-radius: 40px 0 0 40px;
    line-height: 1.6em;
    margin-top: -50px;
    padding: 40px 20px 20px 20px;
}
ul.about_progress_d li:first-child {
  display: none;
}
ul.about_progress_d li:nth-child(2) {
  width: 100%;
}
}


.about1 {
  position: absolute;
  left: 4vw;
  top: 38vh;
}
.about1 img {
  width: 8vw;
  height: auto
}
.about2 {
  position: absolute;
  left: 13vw;
  top: 35vh;
  left: 12vw;
}
.about2 img {
  width: 20vw;
  height: auto
}
.about3 {
  position: absolute;
  top: 24vh;
  left: 40vh;
  z-index: 0;
}
.about3 img {
  width: 14vw;
  height: auto
}
.about4 {
  position: absolute;
  top: 38vh;
  right: 30vw;
  z-index: 0;
}
.about4 img {
  width: 20vw;
  height: auto
}
.about5 {
    position: absolute;
    top: 23vw;
    right: 16vw;
    z-index: 0;
}
.about5 img {
  width: 18vw;
  height: auto
}
.about6 {
    position: absolute;
    top: 38vw;
    right: 2vw;
}
.about6 img {
  width: 18vw;
  height: auto
}
.about7 {
  position: absolute;
  left: 13vw;
  bottom: 8vh;
  left: 4vw;
}
.about7 img {
  width: 9vw;
  height: auto
}
.about8 {
  position: absolute;
  left: 20vw;
  bottom: 4vh;
}
.about8 img {
  width: 10vw;
  height: auto
}
.about9 {
  position: absolute;
  bottom: 5vh;
  left: 36vw;
  z-index: revert-layer;
}
.about9 img {
  width: 4vw;
  height: auto
}

@media screen and (max-width: 768px) {

.about1 {
  position: absolute;
  left: 4vw;
  top: 34vh;
}
.about1 img {
  width: 8vw;
  height: auto
}
.about2 {
  position: absolute;
  top: 35vh;
  left: 16vw;
}
.about2 img {
  width: 130px;
  height: auto
}
.about3 {
  position: absolute;
  top: 29vh;
  left: 18vh;
  z-index: 0;
}
.about3 img {
  width: 100px;
  height: auto
}
.about4 {
  position: absolute;
  top: 45vh;
  right: 26vw;
  z-index: 0;
}
.about4 img {
  width: 20vw;
  height: auto
}
.about5 {
    position: absolute;
    top: 93vw;
    right: 6vw;
    z-index: 0;
}
.about5 img {
  width: 80px;
  height: auto
}
.about6 {position: absolute;bottom: -3vh;right: 0;top: auto;}
.about6 img {
  width: 80px;
  height: auto
}
.about7 {
  position: absolute;
  left: 13vw;
  bottom: -10vh;
  left: 4vw;
  top: auto;
}
.about7 img {
  width: 60px;
  height: auto
}
.about8 {
display: none;
}
.about8 img {
  width: 100px;
  height: auto
}
.about9 {
display: none;
}
.about9 img {
  width: 4vw;
  height: auto
}
}
/*==================================================
profile
===================================*/


.profile  {
    width: 100%;
    height: auto;
    padding: 0;
    font-size: 0;
    position: relative;
    overflow: hidden;
    margin: 0 auto;
    color: #25448e;
}

.profile .inner {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 100px 0;
  z-index: 1;
  position: relative;
}

.profile .profilebox {
    margin: 2em auto;
    padding: 80px 0 80px;
    border: solid 3px #95ccff;
    border-radius: 8px;
    background-color: #fff;
position: relative;
  background:url(../img/bg_check.png) left top / 0 0 repeat,
             url(../img/bg_white.png) left top / 50px 50px repeat;
             position: relative;
    box-shadow: 30px 30px 0 #fff42e;
  }
.profile .profilebox#history {
    margin: 2em auto;
    padding: 80px 0 80px;
    border: solid 3px #95ccff;
    border-radius: 8px;
    background-color: #fff;
position: relative;
  background:url(../img/bg_check.png) left top / 0 0 repeat,
             url(../img/bg_white.png) left top / 50px 50px repeat;
             position: relative;
    box-shadow: 30px 30px 0 #9dedbc;
  }
.profile .profilebox#message {
    margin: 2em auto;
    padding: 80px 50px 80px;
    border: solid 3px #95ccff;
    border-radius: 8px;
    background-color: #fff;
    position: relative;
    background-image: url(../img/bg_check.png);
    background-repeat: repeat;
    background-size: cover;
    box-shadow: none;
  }

/*
.profile .profilebox::after {
  position: absolute;
      background-image: url(../img/bg_check.png);
    background-repeat: repeat;
    background-size: cover;
    left: 50px;
    top: 40px;
      position: absolute;
    top: -15px;
    right: -15px;
    width: 100px;
    height: 100px;
      background-image: url(../img/bg_check.png);
    content: '';
    z-index: -1;
}

*/



  
.profile .profilebox .box-title {
    position: absolute;
    display: inline-block;
    top: -44px;
    left: calc( 50% - 167px );
    right: calc( 50% - 167px );
    padding: 0;
}
.profile .profilebox .box-title img {
  height: auto;
  max-width: 334px;
  width: 100%;
}

.profile .profilebox .title {
  font-size: 35px;
  color: #25448e;
  font-weight: bold;
  font-size: clamp(24px, 2.7vw, 35px);
  margin-bottom: 0;
  margin: 0;
}
.profile .profilebox .title .underline {
    background: linear-gradient(to right, #79f9c4 0%, #f2e950 100%);
    background-repeat: no-repeat;
    background-position: left bottom;
    background-size: 100% 50%;
}
.profile .profilebox .details {
    margin: 0 0 30px 0;
    padding: 0;
    font-size: clamp(18px, 1.8vw, 24px);
    margin-right: 36%;
    line-height: 1.8em;
}


.profile .profilebox ul.pickuplist {
  display: flex;
  width:100%;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}

.profile .profilebox ul.pickuplist li {
  width: 40%;
  text-align: center;
  margin-bottom: 60px;
}

.profile .profilebox ul.pickuplist img.pic  {
  width:100%;
  height: auto;
  margin-bottom: 20px;
}

.profile .profilebox ul.pickuplist img.text {
  width:auto;
  height: 80px;
  margin-bottom: 20px;
  text-align: center;
  display: -webkit-box;
  margin: 0 auto 20px;
}

.profile .profilebox ul.pickuplist img.more  {
  width: auto;
  height: 26px;
  text-align: center;

}
.profile .profilebox .profilelist {
  display: flex;
  width: 100%;
  flex-wrap: wrap;
  max-width: 80%;
  margin: 0 auto;
}
.profile .profilebox .profilelist li {
font-size: clamp(20px, 2vw, 28px);
margin-bottom: 20px;
}
.profile .profilebox .profilelist li:nth-child(odd) {
width: 200px;
}
.profile .profilebox .profilelist li:nth-child(even) {
width: calc( 100% - 200px );
}

.profile .profilebox#history .profilelist li:nth-child(odd) {
width: 80px;
}
.profile .profilebox#history .profilelist li:nth-child(even) {
width: calc( 100% - 80px );
}

.profile .profilebox .picture {
  position: absolute;
  bottom: 0;
  right: 0;
}
.profile .profilebox .picture img {
  width: 100%;
  height: auto;
  max-width: 60vw;
  border-radius: 0 0 7px 0;
}

.profile .name {
font-size: clamp(22px, 2.3vw, 28px);
  position: absolute;
  bottom: 50px;
  right: 20vw;
}
.profile .name span {
font-size: clamp(18px, 1.8vw, 24px);
}

@media screen and (max-width: 1460px) {
.profile .inner {
  padding: 80px 30px;
  z-index: 1;
  position: relative;
  }
}



@media screen and (max-width: 1200px) {
.profile .profilebox ul.pickuplist img.text {
  width:auto;
  height: 60px;
  margin-bottom: 20px;
  text-align: center;
  display: -webkit-box;
  margin: 0 auto 20px;
}

.profile .profilebox .profilelist {
  display: flex;
  width: 100%;
  flex-wrap: wrap;
  max-width: 80vw;
  margin: 0 auto;
}
}



@media screen and (max-width: 768px) {

.profile .inner {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 40px 15px 0;
  z-index: 1;
  position: relative;
}

.profile .profilebox {
    position: relative;
    margin: 1em 0;
    padding: 30px 21px 0;
    border: solid 3px #95ccff;
    border-radius: 8px;
    background-color: #fff;
  }
.profile .profilebox .box-title {
    position: absolute;
    display: inline-block;
    top: -24px;
    left: 30%;
    right: 30%;
    padding: 0;
}
.profile .profilebox .box-title img {
  height: auto;
  max-width: 100%;
  width: 100%;
}

.profile .profilebox .title {
  font-size: 35px;
  color: #25448e;
  font-weight: bold;
  position: static;
  /* left: 40%; */
  top: 31px;
  margin-left: 0;
  font-size: 16px;
  margin-bottom: 10px;
}
.profile .profilebox .title .underline {
    background:linear-gradient(transparent 60%, #fffe79 60%);
}
.profile .name {
    font-size: 18px;
    position:static;

}
.profile span {
    font-size: 14px;
}
.profile .profilebox {
    margin: 2em auto;
    padding: 50px 0 30px;
    border: solid 3px #95ccff;
    border-radius: 8px;
    background-color: #fff;
    position: relative;
    background: url(../img/bg_check.png) left top / 0 0 repeat, url(../img/bg_white.png) left top / 50px 50px repeat;
    position: relative;
    box-shadow: 15px 15px 0 #fff42e;
}
.profile .profilebox#history {
    margin: 2em auto;
    padding: 50px 0 30px;
    border: solid 3px #95ccff;
    border-radius: 8px;
    background-color: #fff;
    position: relative;
    background: url(../img/bg_check.png) left top / 0 0 repeat, url(../img/bg_white.png) left top / 50px 50px repeat;
    position: relative;
    box-shadow: 15px 15px 0 #9dedbc;
}

.profile .profilebox#message {
    margin: 2em auto;
    padding: 50px 15px 70px;
    border: solid 3px #95ccff;
    border-radius: 8px;
    background-color: #fff;
    position: relative;
    background: url(../img/bg_check.png) left top / 0 0 repeat, url(../img/bg_white.png) left top / 50px 50px repeat;
    position: relative;
    box-shadow: none;
}

.profile .profilebox .profilelist {
  display: flex;
  width: 100%;
  flex-wrap: wrap;
  max-width: 80vw;
  margin: 0 auto;
}
.profile .profilebox .profilelist li {
font-size: 14px;
margin-bottom: 20px;
}
.profile .profilebox .profilelist li:nth-child(odd) {
width: 80px;
}
.profile .profilebox .profilelist li:nth-child(even) {
width: calc( 100% - 80px );
}
.profile .profilebox#history .profilelist li:nth-child(odd) {
width: 50px;
}
.profile .profilebox#history .profilelist li:nth-child(even) {
width: calc( 100% - 50px );
}
.profile .profilebox .details {
    margin: 0 0 30px 0;
    padding: 0;
    font-size: 14px;
    margin-right: 0;
    line-height: 1.8em;
}
.profile .name span {
    font-size:14px;
}
}

.about10 {
  position: absolute;
  bottom: 40vh;
  left: 0;
  z-index: revert-layer;
}
.about10 img {
  width: 20vw;
  height: auto
}

.about11 {
  position: absolute;
  bottom: 50vw;
  right: 0;
  z-index: 0;
}
.about11 img {
  width: 20vw;
  height: auto
}

.about12 {
  position: absolute;
  bottom: 0;
  right: -4vw;
  z-index: revert-layer;
}
.about12 img {
  width: 26vw;
  height: auto
}


/*==================================================
happy
===================================*/

#happy {
        padding: 200px 0;
        background-color: #fff;
        background-image: url(../img/bg_happy.png);
        background-repeat: repeat;
        background-size: cover;
        font-size: 0;
        position: relative;
        overflow: hidden;
}

.happy{
padding: 0 30px;
} 

.happy h2 {
  margin: 0 auto;
  text-align: center;
}
.happy h2 img {
    width: 100%;
    height: auto;
    max-width: 324px;
}

.happy .picture {
  margin: 0 auto;
  text-align: center;
}
.happy .picture img {
    width: 100%;
    height: auto;
    max-width: 640px;
}
.happy .text {
  text-align: center;
  font-size: 30px;
  color: #000;
  line-height: 2em;
  font-size: clamp(24px, 2.4vw, 28px);
}

@media screen and (max-width: 1024px) {
  #happy {
    padding: 120px 0 160px;
  }
}

@media screen and (max-width: 768px) {

#happy {
        padding: 50px 0;
        background-color: #fff;
        background-image: url(../img/bg_happy.png);
        background-repeat: repeat;
        background-size: cover;
        font-size: 0;
        position: relative;
        overflow: hidden;
}

.happy h2 {
  margin: 0 auto;
  text-align: center;
}
.happy h2 img {
    width: 100%;
    height: auto;
    max-width: 158px;
}

.happy .picture {
  margin: 0 auto;
  text-align: center;
}
.happy .picture img {
    width: 100%;
    height: auto;
    max-width: 80%;
    margin-bottom: 20px;
}
.happy .text {
  text-align: center;
  font-size: 16px;
  color: #000;
  line-height: 1.6em;
}

}

.about13 {
  position: absolute;
  top: 2vh;
  left: 2vw;
  z-index: revert-layer;
}
.about13 img {
  width: 12vw;
  height: auto
}

.about14 {
  position: absolute;
  top: 5vh;
  left: 8vw;
  z-index: 0;
}
.about14 img {
  width: 20vw;
  height: auto
}

.about15 {
  position: absolute;
  bottom: 2vh;
  right: -4vw;
  z-index: revert-layer;
}
.about15 img {
  width: 16vw;
  height: auto
}

.about16 {
  position: absolute;
  top: 2vh;
  right: 0;
  z-index: revert-layer;
}
.about16 img {
  width: 20vw;
  height: auto
}

.about17 {
  position: absolute;
  top: 36vh;
  right: 0;
  z-index: 0;
}
.about17 img {
  width: 20vw;
  height: auto
}

.about18 {
  position: absolute;
  bottom: 0;
  left: -4vw;
  z-index: revert-layer;
}
.about18 img {
  width: 18vw;
  height: auto
}
.about19 {
  position: absolute;
  top: 30vh;
  left: -5vw;
  z-index: revert-layer;
}
.about19 img {
  width: 20vw;
  height: auto
}


/*_______________________________

ourbrain
_______________________________*/

.ourbrain {
    width: 100%;
    height: auto;
    padding: 0;
    font-size: 0;
    position: relative;
    overflow: hidden;
    margin: 0 auto;
}

.ourbrain .inner {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 100px 0;
  z-index: 1;
  position: relative;
}

.ourbrain .ourbrainbox {
    position: relative;
    margin: 2em 0;
    padding: 80px 60px 30px;
    border: solid 3px #95ccff;
    border-radius: 8px;
    background-color: #fff;
    background-image: url(../img/bg_check.png);
    background-repeat: repeat;
    background-size: cover;
  }
.ourbrain .ourbrainbox .box-title {
    position: absolute;
    display: inline-block;
    top: -44px;
    left: calc( 50% - 11vw );
    right: calc( 50% - 11vw );
    padding: 0;
}
.ourbrain .ourbrainbox .box-title img {
  height: auto;
  max-width: 334px;
  width: 100%;
}
.ourbrain .ourbrainbox .pickupimg {
    position: absolute;
    display: inline-block;
    top: -90px;
    left: 30px;
    padding: 0;
    margin-right: 60%;
}
.ourbrain .ourbrainbox .pickupimg img {
  width: 100%;
  max-width: 460px;
  height: auto;
}
.ourbrain .ourbrainbox .title {
  font-size: 35px;
  color: #25448e;
  font-weight: bold;
  font-size: clamp(24px, 2.7vw, 35px);
  text-align: center;
  margin-bottom: 50px;
}
.ourbrain .ourbrainbox .title .underline {
    background:linear-gradient(transparent 60%, #fffe79 60%);
}

.ourbrain .ourbrainbox .position {font-size: 24px;font-size: clamp(16px, 2vw, 20px);}
.ourbrain .ourbrainbox .name {
font-size: 32px;
font-size: clamp(24px, 2.7vw, 32px);
font-weight: bold;
}
.ourbrain .ourbrainbox .en {
color: #25448e;
font-size: 18px;
font-size: clamp(14px, 1.7vw, 18px);
}

.ourbrain .ourbrainbox ul.ourbrainlist {
  display: flex;
  width:100%;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}

.ourbrain .ourbrainbox ul.ourbrainlist li {
  width: 30%;
  text-align: center;
  margin-bottom: 60px;
}

.ourbrain .ourbrainbox ul.ourbrainlist img  {
  width:100%;
  height: auto;
  margin-bottom: 20px;
}

.ourbrain .ourbrainbox ul.ourbrainlist img.text {
  width:auto;
  height: 80px;
  margin-bottom: 20px;
  text-align: center;
  display: -webkit-box;
  margin: 0 auto 20px;
}

.ourbrain .ourbrainbox ul.ourbrainlist img.more  {
  width: auto;
  height: 26px;
  text-align: center;
}

@media screen and (max-width: 1590px) {
.ourbrain .inner {padding:100px 30px;z-index: 1;position: relative;}
}



@media screen and (max-width: 1024px) {
.ourbrain .ourbrainbox .position {
        font-size: 14px;
}
.ourbrain .ourbrainbox .name {
    font-size: 32px;
    font-size: 18px;
    font-weight: bold;
}
.ourbrain .ourbrainbox .en {
    color: #25448e;
    font-size: 18px;
    font-size: 12px;
}
}



@media screen and (max-width: 768px) {

.ourbrain .inner {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 40px 5px 0;
  z-index: 1;
  position: relative;
}

.ourbrain .ourbrainbox {
    position: relative;
    margin: 2em 0;
    padding: 40px 15px 0;
    border: solid 3px #95ccff;
    border-radius: 8px;
    background-color: #fff;
    background-image: url(../img/bg_check.png);
    background-repeat: repeat;
    background-size: cover;
  }
.ourbrain .ourbrainbox .box-title {
    position: absolute;
    display: inline-block;
    top: -24px;
    left: 30%;
    right: 30%;
    padding: 0;
}
.ourbrain .ourbrainbox .box-title img {
  height: auto;
  max-width: 100%;
  width: 100%;
}

.ourbrain .ourbrainbox .title {
  font-size: 35px;
  color: #25448e;
  font-weight: bold;
  position: static;
  left: 40%;
  top: 31px;
  margin-left: 0;
  font-size: 14px;
  text-align: center;
  margin: 0 auto 20px;
}
.ourbrain .ourbrainbox .title .underline {
    background:linear-gradient(transparent 60%, #fffe79 60%);
}
.ourbrain .ourbrainbox p {
    margin: 0; 
    padding: 0;
    font-size: 15px;
}


.ourbrain .ourbrainbox ul.ourbrainlist {
  display: flex;
  width:100%;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}

.ourbrain .ourbrainbox ul.ourbrainlist li {
  width: 47%;
  text-align: center;
  margin-bottom: 60px;
}

.ourbrain .ourbrainbox ul.ourbrainlist img.pic  {
  width:100%;
  height: auto;
  margin-bottom: 20px;
}

.ourbrain .ourbrainbox ul.ourbrainlist img.text {
  width: auto;
  height: 4vh;
  margin-bottom: 20px;
  text-align: center;
  display: -webkit-box;
  margin: 0 auto 20px;
}

.ourbrain .ourbrainbox ul.ourbrainlist img.more  {
  width: auto;
  height: 26px;
  text-align: center;
}
}


/*==================================================
newjob
===================================*/
.about_newjob {
	padding: 130px 0 80px;
	background-color: #fff;
	background-image: url(../img/bg_check.png);
	background-repeat: repeat;
	background-size: cover;
	font-size: 0;
	position: relative;
}

.about_newjob h2 {
  text-align: left;
  z-index: 1;
  position: relative;
  padding: 0 50px;
}

.about_newjob h2 img {
	width: 100%;
	height: auto;
	max-width: 324px;
}
.newjob_plist {
	display: flex;
	width: 100%;
	justify-content: space-around;
	align-items: flex-start;
  z-index: 1;
  position: relative;
	
}
.newjob_plist li:first-child {
	width: 44%;
}
.newjob_plist li:nth-child(2) {
	width: 36%;
}

.newjob_plist li img {
	width: 100%;
	height: auto;
}

.newjob_plist .message {
font-size: clamp(20px, 2vw, 28px);
text-align: left;
margin-top: 50px;
line-height: 2.2em;

}
.newjob_plist .reserve {
  text-align: right;
  margin-top: 20px;
}

.newjob_plist .reserve img {
width: 100%;
max-width: 320px;
height: auto;
}

.about_newjob .job_list {
  display: flex;
  width: calc( 100% - 60px );
  margin: 0 auto;
  justify-content: space-between;
  align-items: center;
  position: absolute;
  bottom: -60px;
  left: 50%;
  transform: translate(-50%, -50%);
}
.about_newjob .job_list img {
  width: 100%;
  height: auto;
}
.about_newjob .job_list li {
margin-right:20px;
width: auto;
}
.about_newjob .job_list li:last-child {
  margin-right: 0;
}

@media screen and (max-width: 1024px) {

.about_newjob .job_list {
  display: flex;
  width: calc( 100% - 60px );
  margin: 0 auto;
  justify-content: center;
  align-items: flex-start;
  position: relative;
  bottom: 0;
  left: auto;
  transform: none;
  flex-wrap: wrap;
  margin-top: 40px;
}
.about_newjob .job_list img {
  width: 100%;
  height: auto;
  max-height: 50px;
}
.about_newjob .job_list li {
margin-right:20px;
width: auto;
margin-bottom:10px;
}



.about_newjob .job_list li:last-child {
  margin-right: 0;
  margin-bottom: 0;
}

}


@media screen and (max-width: 768px) {
.about_newjob {
    padding: 80px 0 0;
    background-color: #fff;
    background-image: url(../img/bg_check.png);
    background-repeat: repeat;
    background-size: cover;
    font-size: 0;
    position: relative;
    overflow: hidden;
}
.about_newjob h2 img {
	width: 100%;
	height: auto;
	max-width: 200px;
}
.newjob_plist {
flex-wrap: wrap;
padding : 15px;
}
.newjob_plist li {
width: 100%;
}
.newjob_plist li:first-child {
    width: 100%;
}
.newjob_plist li:nth-child(2) {
    width: 100%;
}
.newjob_plist .message {
margin-top: 20px;
line-height: 1.6em;
font-size: 16px;
}
.newjob_plist .reserve {
    text-align: center;
    margin-top: 20px;
}
.newjob_plist .reserve img {
width: 100%;
height: auto;
max-width: 200px;
}

.about_newjob .job_list {
  width: calc( 100% - 30px );
  margin-top: 20px;
}
.about_newjob .job_list img {
  width: 100%;
  height: auto;
  max-height: 100%;
  margin:  0 auto;
}
.about_newjob .job_list li {margin-right: 0;width: 100%;margin-bottom:10px;text-align: center;}



.about_newjob .job_list li:last-child {
  margin-right: 0;
  margin-bottom: 0;
}

}


.newjob1 {
  position: absolute;
  left: 4vw;
  top: 8vh;
}
.newjob1 img {
  width: 8vw;
  height: auto
}
.newjob2 {
  position: absolute;
  left: 34vw;
  top: 16vh;
  right: 43vw;
}
.newjob2 img {
  width: 20vw;
  height: auto
}
.newjob3 {
  position: absolute;
  top: 6vh;
  left: 52vh;
  z-index: 0;
}
.newjob3 img {
  width: 30vw;
  height: auto
}
.newjob4 {
  position: absolute;
  top: 18vh;
  right: 24vw;
  z-index: 0;
}
.newjob4 img {
  width: 20vw;
  height: auto
}
.newjob5 {
    position: absolute;
    top: 3vw;
    right: 12vw;
    z-index: 0;
}
.newjob5 img {
  width: 18vw;
  height: auto
}
.newjob6 {
    position: absolute;
    bottom: 17vw;
    right: 3vw;
}
.newjob6 img {
  width: 18vw;
  height: auto
}
.newjob7 {
  position: absolute;
  bottom: 4vh;
  right: 22vw;
}
.newjob7 img {
  width: 25vw;
  height: auto
}
.newjob8 {
  position: absolute;
  left: 20vw;
  bottom: 4vh;
}
.newjob8 img {
  width: 10vw;
  height: auto
}
.newjob9 {
  position: absolute;
  bottom: 12vh;
  left: 50vw;
  z-index: revert-layer;
}
.newjob9 img {
  width: 4vw;
  height: auto
}

@media screen and (max-width: 768px) {

.newjob1 {
  position: absolute;
  left: 4vw;
  top: 22vh;
}
.newjob1 img {
  width: 8vw;
  height: auto
}
.newjob2 {
  position: absolute;
  left: 34vw;
  top: 16vh;
  right: 43vw;
}
.newjob2 img {
  width: 180px;
  height: auto
}
.newjob3 {
  position: absolute;
  top: 22vh;
  left: 40vw;
  z-index: 0;
}
.newjob3 img {
  width: 150px;
  height: auto
}
.newjob4 {
  position: absolute;
  top: 36vh;
  right: 10vw;
  z-index: 0;
}
.newjob4 img {
  width: 100px;
  height: auto
}
.newjob5 {
    position: absolute;
    top: 3vw;
    right: 12vw;
    z-index: 0;
}
.newjob5 img {
  width: 18vw;
  height: auto
}
.newjob6 {
    position: absolute;
    bottom: 0;
    right: 2vw;
}
.newjob6 img {
  width: 130px;
  height: auto
}
.newjob7 {
  position: absolute;
  bottom: 4vh;
  right: 22vw;
}
.newjob7 img {
  width: 119px;
  height: auto
}
.newjob8 {
display: none;
}
.newjob8 img {
  width: 10vw;
  height: auto
}
.newjob9 {
  position: absolute;
  bottom: 2vh;
  left: 10vw;
  z-index: revert-layer;
}
.newjob9 img {
  width: 50px;
  height: auto
}
}
/*==================================================
newjob
===================================*/


.newjob_recruit {
    width: 100%;
    height: auto;
    padding: 0;
    font-size: 0;
    position: relative;
    overflow: hidden;
    margin: 0 auto;
    color: #25448e;
}

.newjob_recruit .inner {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 180px 0 200px;
  z-index: 1;
  position: relative;
}

.newjob_recruit .newjobbox {
    margin: 2em auto;
    padding: 80px 0 80px;
    border: solid 3px #95ccff;
    border-radius: 8px;
    background-color: #fff;
position: relative;
  background:url(../img/bg_check.png) left top / 0 0 repeat,
             url(../img/bg_white.png) left top / 50px 50px repeat;
             position: relative;
    box-shadow: 30px 30px 0 #1bd6f0;
  }
.newjob_recruit .newjobbox#history {
    margin: 2em auto;
    padding: 80px 0 80px;
    border: solid 3px #95ccff;
    border-radius: 8px;
    background-color: #fff;
position: relative;
  background:url(../img/bg_check.png) left top / 0 0 repeat,
             url(../img/bg_white.png) left top / 50px 50px repeat;
             position: relative;
    box-shadow: 30px 30px 0 #9dedbc;
  }
.newjob_recruit .newjobbox#message {
    margin: 2em auto;
    padding: 80px 50px 80px;
    border: solid 3px #95ccff;
    border-radius: 8px;
    background-color: #fff;
    position: relative;
    background-image: url(../img/bg_check.png);
    background-repeat: repeat;
    background-size: cover;
    box-shadow: none;
  }




  
.newjob_recruit .newjobbox .box-title {
    position: absolute;
    display: inline-block;
    top: -44px;
    left: calc( 50% - 167px );
    right: calc( 50% - 167px );
    padding: 0;
}
.newjob_recruit .newjobbox .box-title img {
  height: auto;
  max-width: 334px;
  width: 100%;
}

.newjob_recruit .newjobbox .title {
  font-size: 35px;
  color: #25448e;
  font-size: clamp(24px, 2.7vw, 35px);
  margin: 0 auto 20px;
  text-align: center;
}
.newjob_recruit .newjobbox .title .underline {
    background: linear-gradient(to right, #79f9c4 0%, #f2e950 100%);
    background-repeat: no-repeat;
    background-position: left bottom;
    background-size: 100% 50%;
}
.newjob_recruit .newjobbox .details {
    margin: 0 0 30px 0;
    padding: 0;
    font-size: clamp(18px, 1.8vw, 24px);
    margin-right: 36%;
    line-height: 1.8em;
}

.newjob_recruit .newjobbox .newjoblist {
  display: flex;
  width: 100%;
  flex-wrap: wrap;
  max-width: 80%;
  margin: 0 auto;
}
.newjob_recruit .newjobbox .newjoblist#mb {
  margin-bottom: 30px;
}

.newjob_recruit .newjobbox .newjoblist li {
font-size: clamp(20px, 2vw, 28px);
margin-bottom: 20px;
}
.newjob_recruit .newjobbox .newjoblist li:nth-child(odd) {
width: 200px;
}
.newjob_recruit .newjobbox .newjoblist li:nth-child(even) {
width: calc( 100% - 200px );
}



@media screen and (max-width: 1460px) {
.newjob_recruit .inner {
  padding: 160px 30px 200px;
  z-index: 1;
  position: relative;
  }
}



@media screen and (max-width: 1200px) {
.newjob_recruit .newjobbox ul.pickuplist img.text {
  width:auto;
  height: 60px;
  margin-bottom: 20px;
  text-align: center;
  display: -webkit-box;
  margin: 0 auto 20px;
}

.newjob_recruit .newjobbox .newjoblist {
  display: flex;
  width: 100%;
  flex-wrap: wrap;
  max-width: 80vw;
  margin: 0 auto;
}
}



@media screen and (max-width: 768px) {

.newjob_recruit .inner {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 40px 15px 80px;
  z-index: 1;
  position: relative;
}

.newjob_recruit .newjobbox {
    position: relative;
    margin: 1em 0;
    padding: 30px 21px 0;
    border: solid 3px #95ccff;
    border-radius: 8px;
    background-color: #fff;
  }
.newjob_recruit .newjobbox .box-title {
    position: absolute;
    display: inline-block;
    top: -24px;
    left: 30%;
    right: 30%;
    padding: 0;
}
.newjob_recruit .newjobbox .box-title img {
  height: auto;
  max-width: 100%;
  width: 100%;
}

.newjob_recruit .newjobbox .title {
  font-size: 18px;
  color: #25448e;
  text-align: center;
  margin-bottom: 10px;
}
.newjob_recruit .newjobbox {
    margin: 2em auto;
    padding: 50px 0 30px;
    border: solid 3px #95ccff;
    border-radius: 8px;
    background-color: #fff;
    position: relative;
    background: url(../img/bg_check.png) left top / 0 0 repeat, url(../img/bg_white.png) left top / 50px 50px repeat;
    position: relative;
    box-shadow: 15px 15px 0 #fff42e;
}
.newjob_recruit .newjobbox#history {
    margin: 2em auto;
    padding: 50px 0 30px;
    border: solid 3px #95ccff;
    border-radius: 8px;
    background-color: #fff;
    position: relative;
    background: url(../img/bg_check.png) left top / 0 0 repeat, url(../img/bg_white.png) left top / 50px 50px repeat;
    position: relative;
    box-shadow: 15px 15px 0 #9dedbc;
}

.newjob_recruit .newjobbox#message {
    margin: 2em auto;
    padding: 50px 15px 70px;
    border: solid 3px #95ccff;
    border-radius: 8px;
    background-color: #fff;
    position: relative;
    background: url(../img/bg_check.png) left top / 0 0 repeat, url(../img/bg_white.png) left top / 50px 50px repeat;
    position: relative;
    box-shadow: none;
}

.newjob_recruit .newjobbox .newjoblist {
  display: flex;
  width: 100%;
  flex-wrap: wrap;
  max-width: 80vw;
  margin: 0 auto;
}
.newjob_recruit .newjobbox .newjoblist li {
font-size: 14px;
margin-bottom: 20px;
}
.newjob_recruit .newjobbox .newjoblist li:nth-child(odd) {
width: 80px;
}
.newjob_recruit .newjobbox .newjoblist li:nth-child(even) {
width: calc( 100% - 80px );
}
.newjob_recruit .newjobbox#history .newjoblist li:nth-child(odd) {
width: 50px;
}
.newjob_recruit .newjobbox#history .newjoblist li:nth-child(even) {
width: calc( 100% - 50px );
}
.newjob_recruit .newjobbox .details {
    margin: 0 0 30px 0;
    padding: 0;
    font-size: 14px;
    margin-right: 0;
    line-height: 1.8em;
}
.newjob_recruit.name span {
    font-size:14px;
}
}

/*==================================================
pickupprogress
===================================*/

.pickupprogress {
  width: 100%;
position: relative;
}

.progressbox .background {
  width: 100%;

}
.progressbox .background img {
  width: 100%;
  height: auto;
  padding: 0 30px;
}

.pickupprogress_slider {
  width: 100%;
  position: absolute;
  top: 30%;
}

.pickupprogress_slider .swiper-slide img {
  height: auto;
  width: 100%;
}

.pickupprogress_slider .swiper-wrapper {
  transition-timing-function: linear;
}

.pickupprogress_slider .swiper-slide:nth-child(odd) {
margin-top: 0;
text-align: center;
}

.pickupprogress .pickupprogress_slider  img.pic  {
  width:100%;
  height: auto;
  margin-bottom: 20px;
}

.pickupprogress .pickupprogress_slider  img.text {
  width:auto;
  height: 80px;
  margin-bottom: 20px;
  text-align: center;
  display: -webkit-box;
  margin: 0 auto 20px;
}

.pickupprogress .pickupprogress_slider  img.more  {
  width: auto;
  height: 26px;
  text-align: center;
}

.pickupprogress .swiper-slide {
    text-align: center;
}


.pickupprogress .title {
    font-size: 35px;
    color: #25448e;
    font-weight: bold;
    top: 22%;
    font-size: clamp(24px, 2.7vw, 35px);
    position: absolute;
    left: 50%;
    transform: translate(-50%, -50%);
}
.pickupprogress .title .underline {
    background: linear-gradient(transparent 60%, #fffe79 60%);
}
@media screen and (max-width:1600px) {
  
  .pickupprogress_slider {
    width: 100%;
    margin-top: 0;
  }}

  @media screen and (max-width:1200px) {
.pickupprogress .pickupprogress_slider  img.pic  {
  width:100%;
  height: auto;
  margin-bottom: 20px;
}

.pickupprogress .pickupprogress_slider  img.text {
  width:auto;
  height: 40px;
  margin-bottom: 20px;
  text-align: center;
  display: -webkit-box;
  margin: 0 auto 20px;
}

.pickupprogress .pickupprogress_slider  img.more  {
  width: auto;
  height: 16px;
  text-align: center;
}
  .pickupprogress_slider {
    width: 100%;
    margin-top: 0;
  }
  .pickupprogress .rightcorner {
    position: absolute;
    bottom: 0;
    right: 0;
    border-left: 20vw solid transparent;
    border-bottom: 10vh solid #fff;
  
}
}


@media screen and (max-width:768px) {
 .progressbox .background img {
    width: 100%;
    height: auto;
    padding: 0 5px;
}
    .pickupprogress_slider {
      width: 100%;
      margin-top: 5%;
    }
    
    .pickupprogress_slider .swiper-slide img {
      height: auto;
      width: 100%;
    }
    
    .pickupprogress_slider .swiper-wrapper {
      transition-timing-function: linear;
    }
    
    .pickupprogress_slider .swiper-slide:nth-child(odd) {
    margin-top: 40px;
    }
.pickupprogress .title {
    font-size: 18px;
    color: #25448e;
    font-weight: bold;
    top: 18%;
    margin-left: 0;
    position: absolute;
    text-align: center;
    white-space: nowrap;

}
.pickupprogress .pickupprogress_slider img.pic  {
  width:100%;
  height: auto;
  margin-bottom: 10px;
}

.pickupprogress .pickupprogress_slider img.text {
  width: auto;
  height: 3vh;
  margin-bottom: 20px;
  text-align: center;
  display: -webkit-box;
  margin: 0 auto 10px;
}

.pickupprogress .pickupprogress_slider img.more  {
  width: auto;
  height: 18px;
  text-align: center;
}
  }
/*=======================================================
contact form
 =======================================================*/


#plain {
	position: relative;
    width: 100%;
    padding: 0 20px;
}

#plain img {
	width: 100%;
	height: auto;
	min-height: 150px;
}
#plain .breadcrumb {
	position: absolute;
	left: 68px;
	top: 122px;
	color: #ff6369;
	font-size: 19px;
}

#plain .title {
    position: absolute;
    left: 68px;
    bottom: 3vh;
    font-size: 4vw;
    line-height: 1.2em;
}
#plain .title span {
	display: block;
	font-size: 2vw;
    line-height: 0.7em;
    margin-bottom: 20px;
	text-transform:capitalize;
}
#main {
	position: relative;
    width: 100%;
    padding: 14px 20px 80px;
}
#main .bg_white {
    padding: 48px;
    width: 100%;
    max-width: 1300px;
    margin: 0 auto;
    background-color: var(--color-white);
    padding-bottom: 32px;
    border-radius: 24px;
    margin-top: 24px;
}



@media screen and (max-width: 1024px) {
#main {
	position: relative;
    width: 100%;
    padding: 24px 30px;
}
#main .bg_white {
        padding: 30px;
        margin: 0 auto;
        background-color: var(--color-white);
        border-radius: 24px;
        margin-top: 0;
}
#plain .breadcrumb {
position: absolute;
left: 20px;
top: 3vh;
color: #ff6369;
font-size: 2vw;
}

#plain .title {
        position: absolute;
        left: 20px;
        bottom: 2vh;
        font-size: 5vw;
        line-height: 1.2em;
}
#plain .title span {
	display: block;
        font-size: 3vw;
    line-height: 0.7em;
	text-transform:capitalize;
}}



#main .title {
	position: relative;
        left: 80px;
        font-size: 1.8vw;
        line-height: 1.4em;
}
#message .lead {
	position: relative;
        left: 80px;
        font-size: 1.2vw;
        line-height: 1.4em;
}

@media screen and (max-width: 768px) {
#main {
	position: relative;
    width: 100%;
    padding: 24px 10px;
}
#main .bg_white {
        padding: 15px;
        margin: 0 auto;
        background-color: var(--color-white);
        border-radius: 24px;
}
#main .bg_white p {
	font-size: 16px;
}

#plain .breadcrumb {
position: absolute;
left: 10px;
top: 6vh;
color: #ff6369;
font-size: 3vw;
line-height: 1.4em;
}

#plain .title {
position: absolute;
left: 10px;
bottom: 1vh;
font-size: 5vw;
line-height: 1.4em;
right: 10px;
}
#plain .title span {
	display: block;
        font-size: 3.6vw;
    line-height: 0.7em;
	text-transform:capitalize;
	        margin-bottom: 0;
}}

/*_______________________________

contact
_______________________________*/

#contact {
    padding: 200px 0 100px;
    background-color: #fff;
    background-image: url(../img/contact_bg.png);
    background-repeat: repeat;
    background-size: cover;
    font-size: 0;
    position: relative;
    margin-top: 40px;
}

#contact h2 {
  margin-top: -160px;
}
#contact h2 img {
  width: 100%;
  height: auto;
  padding: 0 50px;
}

.contact {
    width: 100%;
    height: auto;
    padding: 0;
    font-size: 0;
    position: relative;
    overflow: hidden;
    margin: 0 auto;
}

.contact .inner {
  width: 100%;
  max-width: 1300px;
  margin: 0 auto;
  padding: 100px 0;
  z-index: 1;
  position: relative;
}

.contact .contactbox {
    position: relative;
    margin: 2em 0;
    padding: 100px 60px 80px 0;
    border: solid 3px #95ccff;
    border-radius: 8px;
    background-color: #fff;
    background-image: url(../img/bg_check.png);
    background-repeat: repeat;
    background-size: cover;
  }
.contact .contactbox .box-title {
    position: absolute;
    display: inline-block;
    top: -44px;
    left: calc( 50% - 11vw );
    right: calc( 50% - 11vw );
    padding: 0;
}
.contact .contactbox .box-title img {
  height: auto;
  /* max-width: 334px; */
  width: 100%;
}
.contact .contactbox .pickupimg {
    position: absolute;
    display: inline-block;
    top: -90px;
    left: 30px;
    padding: 0;
    margin-right: 60%;
}
.contact .contactbox .pickupimg img {
  width: 100%;
  max-width: 460px;
  height: auto;
}
.contact .contactbox .title {
  font-size: 35px;
  color: #25448e;
  font-weight: bold;
  position: absolute;
  /* left: 40%; */
  top: 80px;
  margin-left: 30%;
  font-size: clamp(24px, 2.7vw, 35px);
}
.contact .contactbox .title .underline {
    background:linear-gradient(transparent 60%, #fffe79 60%);
}
.contact .contactbox p {
    margin: 0; 
    padding: 0;
    font-size: 15px;
}


.contact .contactbox ul.contactlist {
  display: flex;
  width: calc( 100% + 100px );
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  margin-left: -100px;
}

.contact .contactbox ul.contactlist li:first-child {
  width: 40%;
}
.contact .contactbox ul.contactlist li:last-child {width: 56%;text-align: center;}

.contact .contactbox ul.contactlist img  {
  width:100%;
  height: auto;
}

.contact .contactbox ul.contactlist img.text {
  width:auto;
  height: 80px;
  margin-bottom: 20px;
  text-align: center;
  display: -webkit-box;
  margin: 0 auto 20px;
}

.contact .contactbox ul.contactlist img.more  {
  width: auto;
  height: 26px;
  text-align: center;
}
.contact .contactbox .text {
    color: #25448e;
    font-size: clamp(18px, 1.8vw, 28px);
    margin-bottom: 30px;
    line-height: 1.8em;
}
.contact .contactbox .text .underline {
  text-decoration: underline;
}
.contact .contactbox .picture {
  margin: 0 auto;
}
.contact .contactbox .picture img {
  width: 100%;
  height: auto;
}

input[type=submit] {
    cursor: pointer;
    text-decoration: none;
    font-weight: bold;
    background: #ff6369;
    color: #fff !important;
    padding: 0;
    text-align: center;
    position: relative;
    transition: .3s;
    font-size: 16px;
    font-weight: 100;
    width: 308px;
    line-height: 77px;
    margin: 0 auto;
    border-radius: 0;
    height: 77px;
    cursor: pointer;
    border: none;
    margin-top: 40px;
}
.wpcf7 form.sent .wpcf7-response-output {
    border-color: transparent;
	text-align: center;
    font-size: 18px;
    font-weight: bold;
}

.wpcf7 input[type="tel"] {
    padding: 5px 8px;
    background-color: #f6f6f6 !important;
    border: none !important;
    font-size: 14px;
    box-shadow: none;
    border: none;
    font-family: YakuHanJP, "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体";
    padding: 10px;
    height: 80px;
}
span.wpcf7-list-item {
    display: block;
}
@media screen and (max-width: 1590px) {
.contact .inner {
        padding: 100px 120px 0;
        z-index: 1;
        position: relative;
}
}



@media screen and (max-width: 1200px) {
.contact .contactbox ul.contactlist img.text {
  width:auto;
  height: 60px;
  margin-bottom: 20px;
  text-align: center;
  display: -webkit-box;
  margin: 0 auto 20px;
}}



@media screen and (max-width: 768px) {
#contact {
    padding: 150px 0 40px;
    background-color: #fff;
    background-image: url(../img/contact_bg.png);
    background-repeat: repeat;
    background-size: cover;
    font-size: 0;
    position: relative;
    margin-top: 40px;
}
.contact .inner {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 40px 5px 0;
  z-index: 1;
  position: relative;
}
#contact h2 img {
    width: 100%;
    height: auto;
    padding: 0 15px;
}
.contact .contactbox {
    position: relative;
    margin: 2em 0;
    padding: 60px 5% 0;
    border: solid 3px #95ccff;
    border-radius: 8px;
    background-color: #fff;
  }
.contact .contactbox .box-title {
    position: absolute;
    display: inline-block;
    top: -24px;
    left: 30%;
    right: 30%;
    padding: 0;
}
.contact .contactbox .box-title img {
  height: auto;
  max-width: 100%;
  width: 100%;
}

.contact .contactbox .title {
  font-size: 35px;
  color: #25448e;
  font-weight: bold;
  position: absolute;
  /* left: 40%; */
  top: 31px;
  margin-left: 26%;
  font-size: 14px;
}
.contact .contactbox .title .underline {
    background:linear-gradient(transparent 60%, #fffe79 60%);
}
.contact .contactbox .text {
    color: #25448e;
    font-size: 14px;
    margin-bottom: 10px;
    line-height: 1.8em;
}

.contact .contactbox ul.contactlist {
  display: flex;
  width:100%;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  margin-left: 0;
}

.contact .contactbox ul.contactlist li:first-child {
  width: 30%;
}
.contact .contactbox ul.contactlist li:last-child {
width: 66%;text-align: center;
}

.contact .contactbox ul.contactlist img  {
  width:100%;
  height: auto;
}


.contact .contactbox ul.contactlist img.pic  {
  width:100%;
  height: auto;
  margin-bottom: 20px;
}

.contact .contactbox ul.contactlist img.text {
  width: auto;
  height: 4vh;
  margin-bottom: 20px;
  text-align: center;
  display: -webkit-box;
  margin: 0 auto 20px;
}

.contact .contactbox ul.contactlist img.more  {
  width: auto;
  height: 26px;
  text-align: center;
}
}

/* contact */

.contactmailform {
	padding: 60px 48px 0;
	width: 100%;
	max-width: 1300px;
	margin: 0 auto;
background-color: var(--color-white);
    padding-bottom: 32px;
    border-radius: 24px;
    margin-top: 24px;
}

.contactmailform .caution {
	font-size: 16px;
	line-height: 1.4em;
}

.mw_wp_form .error {
    font-size: 93%;
    color: #B70000;
    display: inline;
}

.cform th {
  font-size: 16px;
  width: 250px; /*変なところで改行される場合はここの数字を変更します。*/
  padding: 10px 25px 25px 15px;
  font-weight: bold;
  text-align: left;
  margin-bottom: 35px;
  font-weight: 400;
  vertical-align: top;

}

.cform td {
  font-size: 14px;
  line-height: 38px;
  padding: 10px 5px;
  width: calc(100% - 250px);
  margin-bottom: 35px;

}

.cform td#first {

    padding: 0 5px 10px;
}

.cform {
  width: 100%;
  margin: auto;
}

.cform [type=submit] {
  display: inline-block;
  font-size: 20px;
  padding: 10px 30px;
  text-decoration: none;
  background: #ff8f00;
  color: #FFF;
  border-bottom: solid 4px #B17C00;
font-family: YakuHanJP, "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体";

}
.agreement {
  text-align: center!important;
  margin-top: 10px;
}

.cform input {
background-color: #f6f6f6!important;
border: none!important;
border-radius: 0!important;
border: none;
box-shadow: none; 
/*height: 40px;*/
    font-size: 18px;
    font-weight: 600;
    vertical-align: middle;

}
.cform input[type=email], .cform input[type=text], .cform textarea {
padding: 5px 8px;
background-color: #f6f6f6!important;
border: none!important;
font-size: 14px;
box-shadow: none;
border: none;
font-family: YakuHanJP, "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体";
padding:  10px;
height: 80px;
}

.cform .textheight textarea {
	height: 320px;
}


.cform input#zip {
  padding:  10px;

}

.cform input::placeholder {
	font-size: 14px;
}

.cform textarea {
background-color: #f1f1f1;
box-shadow: none; 
border: none;
font-size: 14px;


}

.cform option,
.cform textarea,
.cform input[type=text],
.cform input[type=email],
.cform input[type=search],
.cform input[type=url] {
  width: 100%;
}



.required-srt {
  padding: 3px 12px;
  font-size: 14px;
  background: #ff6369;
  color: #fff;
  float: right;
  vertical-align: middle;



}
.non-required-srt {
  font-size: 14px;
  padding: 3px 15px;
  background: #f1efe6;

  float: right;
  vertical-align: middle;



}

.contact_btn {
  display: flex;
  flex-wrap: wrap;
    align-items: baseline;
    justify-content: center;
  width: 100%;
  margin: 0 auto;



}

.submit-btn {
  position: relative;
  margin-top: 40px;
}
.return-btn{
  position: relative;
  padding-right: 2%;
}
.submit-btn input {
    text-decoration:none;
    font-weight:bold;
    background:#ff6369;
    color:#fff !important;
    padding: 0;
    text-align: center;
    position: relative;
    transition:.3s;
    font-size: 16px;
    font-weight: 100;
    width: 308px;
    line-height: 77px;
    margin: 0 auto;
border-radius: 0;
height:  77px;
cursor: pointer;
border: none;
}



.submit-btn input:hover {
  opacity: 0.7;
}

.return-btn input {
    text-decoration:none;
    font-weight:bold;
    background:#ff6369;
    color:#fff !important;
    padding: 0;
    text-align: center;
    position: relative;
    transition:.3s;
    font-size: 16px;
    font-weight: 100;
    width: 308px;
    line-height: 77px;
    margin: 0 auto;
border-radius: 0;
height:  77px;
cursor: pointer;
border: none;
}

::-webkit-input-placeholder {
    color: #b6b6b6;
}
:-ms-input-placeholder {
   color: #b6b6b6;
}
::placeholder{
    color: #b6b6b6;
}
.agreement a {
    text-decoration: underline;
}

.mwform-radio-field label {
    font-weight: normal;
    margin-bottom: 0;
	font-size: 16px;
}
@media (max-width: 1024px) {
.submit-btn input,
.return-btn input {
width: 235px;
min-width: unset;
}
.contactmailform {
padding: 30px;
    margin: 0 auto;
    background-color: var(--color-white);
    padding-bottom: 32px;
    border-radius: 24px;
    margin-top: 0;
}
}

@media only screen and (max-width:768px) {
	section.contactmailform {
		margin: 0 auto!important;
	}
	
  .cform th,
  .cform td {
    width: 100%;
    display: block;
    border-top: none;
  }
.cform th {
  font-size: 14px;
  width: 100%; /*変なところで改行される場合はここの数字を変更します。*/
  padding: 0;
  font-weight: normal;
  text-align: left;
  margin-bottom: 0;
}

.cform td {
  font-size: 12px;
  line-height: 28px;
  padding: 10px 0;
  width: 100%;
  margin-bottom: 0;
}


.mw_wp_form .horizontal-item + .horizontal-item:nth-child(3) {
    margin-left: 0;
}

.cform [type=submit] {
  display: inline-block;
  font-size: 13px;
  padding: 10px 30px;
  text-decoration: none;
  background: #ff8f00;
  color: #FFF;
  border-bottom: solid 4px #B17C00;
}

.cform input {
background-color: #f1f1f1;
border: none;
box-shadow: none; 
/*height: 40px;*/

}
.cform input[type=email],
.cform input[type=text]{
padding: 5px 8px;
background-color: #f1f1f1;
font-size: 12px;
box-shadow: none;
border: none;
}

.cform textarea {
background-color: #f1f1f1;
box-shadow: none; 
border: none;
font-size: 12px;
}

.cform option,
.cform textarea,
.cform input[type=text],
.cform input[type=email],
.cform input[type=search],
.cform input[type=url] {
  width: 100%;
}


.required-srt {
  float: none;
  padding: 3px 10px;
  background: #ff6369;
  color: #fff;
  margin-left: 10px;
  vertical-align: middle;
}
.non-required-srt {
  float: none;
  padding: 0px 10px;
  background: #f1efe6;
  margin-left: 10px;
  vertical-align: middle;
}

.contact_btn {
 /*display: block;
  flex-wrap: nowrap;*/
display: flex;
flex-wrap: wrap;
	align-items: center;
    justify-content: center;
  width:80%;
  margin: 0 auto;
  font-size: 13px;
    margin: 0 auto;
    border-radius: 0;
}


.submit-btn input ,
.return-btn input {
  width:100%;
    display: block;
    border-top: none;
    padding-right: 0;
    line-height: 45px;
    margin: 0 auto;
    border-radius: 0;
    height: 45px;
}
.submit-btn input {
     width: 100%;
}
.mwform-checkbox-field{
  position: relative;
}

  .submit-btn ,
  .return-btn {
	width: 100%;
	padding: 0;

  }
.submit-btn {
    position: relative;
    margin-top: 10px;
}
.agreement {
  font-size: 14px;
}

.return-btn input:hover {
  opacity: 0.7;
}

/* contact */
#contactmailform{
  background: #fff;
}


.cform select {
    width: 100%;
    min-height: 40px;
    border-radius: 0;
}
.contactmailform {

  padding-bottom:0;
  width: 100%;
  max-width: 1100px;
}


.selectform select {overflow: hidden;
  width: 90%;
  margin: 0 auto;
  text-align: center;
}
.selectform select{
  width: 100%;
  padding-right: 1em;
  cursor: pointer;
  text-indent: 0.01px;
  text-overflow: ellipsis;
  border: none;
  outline: none;
  background: transparent;
  background-image: none;
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none;
}
.selectform select::-ms-expand {
    display: none;
}
.selectform.cp_sl01 {
  position: relative;
  border: 1px solid #bbbbbb;
  border-radius: 2px;
  background: #ffffff;
}
.selectform.cp_sl01::before {
  position: absolute;
  top: 0.8em;
  right: 0.9em;
  width: 0;
  height: 0;
  padding: 0;
  content: '';
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #666666;
  pointer-events: none;
}
.selectform.cp_sl01 select {
  padding: 8px 38px 8px 8px;
  color: #666666;
}
}
@media only screen and (max-width:768px) {
  #contactmailform {
  background: #fff;
  padding-bottom: 80px;

}
.contactmailform {

  padding:15px 15px 30px;
  width: 100%;
  max-width: 1100px;

}
	.mwform-radio-field label {
    font-weight: normal;
		margin-top: 5px;
    margin-bottom: 0;
	font-size: 16px;
	line-height:24px;
	display:block;
}
.mw_wp_form .horizontal-item + .horizontal-item {
 margin-left: 0; 

}}

