/* common */
html {
  color: #777777;
}
a:link,
a:visited {
  color: #0456c6;
}
a:hover {
   opacity: 0.70;
   filter: alpha(opacity=70);
   -moz-opacity: 0.70;
   -ms-filter: "alpha(opacity=70)";
}
.wrap {
  width: 100%;
}
.wrap * {
  font-family: YuGothic,'游ゴシック',"メイリオ", meiryo,sans-serif;
}
.inner {
  width: 750px; 
  margin: 0 auto;
  position: relative;
}
.contents img {
  max-width: 100%;
  vertical-align: bottom;
}
.contents a:link,
.contents a:visited {
  color: #cd4376;
}
.sp {
  display: none;
}
#top {
  padding-top: 120px;
}

/* .cv */
.cv {
  padding: 0 0 80px;
}
.cv .inner {
  /* background: url("../img/cv_bg01.png") center top no-repeat; */
  background-size: 108vw auto;
}
.cv h2,
.cv p {
  width: 93.33%;
  margin: 0 auto;
}
.cv p.cpt {
  width: 94.66%;
  margin: 5.33vw auto ;
}
.cv p.link a {
  color: #596470;
  text-decoration: underline;
}
.cv .inner p.link + ul.atte {
  margin: 2vw 8% 2.66vw;
}
.cv dl.btn {
  position: relative;
  width: 100%;
}
.cv dl.btn + dl.btn {
  margin-top: 4.53vw;
}
.cv dl.btn01 dt {
  margin: 0 auto;
  width: 89.33%;
}
.cv dl.btn dd {
  color: #888c91;
  text-align: center;
  margin-top: -1.33vw;
  font-size: 2vw;
  line-height: 1;
}
.cv .inner .atte {
  margin: 0 8%;
}
.cv ul.atte li {
  padding-left: 1.2em;
  position: relative;
}
.cv ul.atte li.no {
  padding-left: 0;
  position: relative;
}
.cv ul.atte li::before {
  content: "※";
  position: absolute;
  left: 0;
  top: 0;
}
.cv ul.atte li.no::before {
  content: "";
}
.cv ul.atte li.no a {
  display: inline;
  color: #888c91;
}
@media screen and (min-width: 751px) {
  .cv .cover {
    /* background: url("../img/cv_bg02.png") center bottom no-repeat; */
    background-size: 810px auto;
    padding: 0 0 50px;
  }
  .cv .inner {
    width: 810px;
    box-sizing: border-box;
    padding: 0 30px;
    background-size: 810px auto;
  }
  .cv dl.btn01 dt,
  .cv h2,
  .cv p {
    width: 100%;
    text-align: center;
  }
.cv dl.btn01 dd {
  padding-bottom: 20px;
}
.cv p.btn02 {
  display: block;
  background: url("../img/cv_bg03.png") center top no-repeat;
  padding-top: 108px;
  margin-top: -40px;
}
.cv p.btn02 a {
  display: block;
  margin: 0 auto;
  width: 670px;
  padding: 0 0 13px;
}
  .cv p.cpt {
    width: 100%;
    margin: 40px 0 30px;
  }
  .cv p.link {
    font-size: 24px;
    line-height: 1;
    text-align: center;
  }
  .cv .atte {
    font-size: 15px;
    line-height: 20px;
    color: #888c91;
    text-align: left;
    position: relative;
    margin: 0 2.66%;
  }
  .cv .cpt + .atte,
  .cv .link + .atte {
    font-size: 13px;
    line-height: 18px;
  }
  .cv dl.btn dd {
    margin-top: -10px;
    font-size: 14px;
  }
  .cv dl.btn + dl.btn {
    margin-top: 34px;
  }
  .cv .inner ul.atte {
    margin: 0 8% 20px;
  }
  .cv .inner p.link + ul.atte {
    margin: 15px 8% 20px;
  }
  .cv .cover + .atte {
    width: 710px;
    margin-left: auto;
    margin-right: auto;
    margin-top: -14px;
  }
  .cv .btn01 a {
    position: relative;
    display: block;
  }
  .cv .btn01 .shiny {
    position: absolute;
    left: 61px;
    top: 0px;
    display: block;
    overflow: hidden;
    border-radius: 10px;
    width: 630px;
    height: 120px;
  }
  .cv .shiny::before {
    position: absolute;
    content: '';
    display: inline-block;
    top: -180px;
    left: 0;
    width: 30px;
    height: 100%;
    background-color: #fff;
    animation: shiny 3s ease-in-out infinite;
  }
}
@keyframes shiny {
  0% { transform: scale(0) rotate(45deg); opacity: 0; }
  80% { transform: scale(0) rotate(45deg); opacity: 0.5; }
  81% { transform: scale(4) rotate(45deg); opacity: 1; }
  100% { transform: scale(50) rotate(45deg); opacity: 0; }
}

/* .cv02 */
.cv02 {
  padding: 40px 0;
  text-align: center;
}

/* .header */
.header {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 119px;
  border-bottom: #dddddd solid 1px;
  z-index: 1000;
  background: #fff;
}
.header .inner {
  width: 100%;
  min-width: 1140px;
}
.header h1 {
  font-size: 17px;
  line-height: 1;
  font-weight: bold;
  color: #000;
  padding: 54px 0 0 60px;
}
.header ul {
  position: absolute;
  right: 60px;
  top: 35px;
  font-size: 0;
  display: inline-block;
}
.header ul li {
  display: inline-block;
  font-size: 17px;
  line-height: 51px;
  vertical-align: top;
}
.header ul li.txt + li.txt {
  margin-left: 50px;
  padding: 0 66px;
  border-left: #b2b2b2 solid 1px;
}
.header ul li.btn {
  line-height: 0.1;
}
.header ul li.btn a {
  line-height: 51px;
  color: #fff;
  display: inline-block;
  width: 220px;
  text-align: center;
  background: rgb(195,54,94);
  background: linear-gradient(90deg, rgba(195,54,94,1) 0%, rgba(214,78,138,1) 50%, rgba(195,54,95,1) 100%);
  margin-right: 40px;
}

.header a,
.header a:link,
.header a:visited { color:#000; text-decoration:none; }
.header a:hover,
.header a:active  { color:#000; text-decoration:underline; }

/* .instaLink */
.instaLink {
  background: url("../img/instaLink_bg.jpg") center top no-repeat;
}

/* .top */


/* .sec01 */
.sec01 {
  background: url("../img/sec01_bg.jpg") center top no-repeat;
}
.sec01 .slide {
  background: url("../img/sec01_02.jpg") center top no-repeat;
  height: 700px;
  position: relative;
}
.sec01 .swiper-container {
  position: relative;
  width: 590px;
  margin: 0 auto;
  box-sizing: border-box;
}
.sec01 .swiper-slide {
  width: 590px;
  box-sizing: border-box;
}
.sec01 .swiper-pagination {
  margin-top: 30px;
}
.sec01 .swiper-pagination-bullet {
  background-color: #fff;
  width: 14px;
  height: 14px;
  opacity: 1;
  margin: 0 12px;
}
.sec01 .swiper-pagination-bullet-active {
  background-color: #454c53;
}
.swiper-button-prev,
.swiper-button-next {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
}
.sec01 .swiper-button-prev {
  background: url("../img/sec01_prev.png") left top no-repeat;
  width: 70px;
  height: 70px;
  top: 163px;
  left: 40px;
}
.sec01 .swiper-button-next {
  background: url("../img/sec01_next.png") left top no-repeat;
  width: 70px;
  height: 70px;
  top: 163px;
  right: 40px;
}

/* .sec02 */
.sec02 {
  background: url("../img/sec02_bg.png") center bottom no-repeat;
}

/* .sec03 */
.sec03 {
  background: url("../img/sec02_bg.png") center bottom no-repeat;
}
.sec03 dl {
  position: relative;
}
.sec03 dl dd {
  position: absolute;
  left: 60px;
  top: 0;
}

/* .sec04 */
.sec04 {
  /* background: url("../img/sec04_bg.jpg") center bottom no-repeat; */
}
.sec04 dl {
  position: relative;
}
.sec04 dl dd {
  position: absolute;
  left: 60px;
  top: 0;
}

/* .sec05 */
.sec05 {
  /* background: url("../img/sec05_bg.jpg") center top no-repeat; */
}

/* .sec06 */
.sec06 {
  background: url("../img/sec06_bg.png") center top no-repeat;
}

/* .sec07 */
.sec07 {
  background: url("../img/sec07_bg.jpg") center top no-repeat;
}

/* .sec08 */
.sec08 {
  background: url("../img/sec08_bg.jpg") center top no-repeat;
}

/* .sec09 */
.sec09 {
}
.sec09 .slide {
  height: 610px;
  position: relative;
}
.sec09 .swiper-container {
  position: relative;
  width: 750px;
  margin: 0 auto;
  box-sizing: border-box;
}
.sec09 .swiper-slide {
  width: 750px;
  box-sizing: border-box;
}
.sec09 .swiper-pagination {
  margin-top: 34px;
}
.sec09 .swiper-pagination-bullet {
  background-color: #8e9cad;
  width: 14px;
  height: 14px; 
  opacity: 1;
  margin: 0 12px;
}
.sec09 .swiper-pagination-bullet-active {
  background-color: #cd4376;
}
.sec09 .swiper-button-next {
  background: url("../img/sec09_next.png") left top no-repeat;
  width: 130px;
  height: 130px;
  top: 150px;
  right: 0px;
}

/* .sec10 */
.sec10 {
  background: url("../img/sec10_bg.jpg") center top no-repeat;
}

/* .sec11 */
.sec11 {
  background: url("../img/sec11_bg.jpg") center top no-repeat;
}
.sec11 dl {
  position: relative;
}
.sec11 dl dd.cv {
  position: absolute;
  left: 0;
  top: 0;
  width: 750px;
}
.sec11 dl dd.cv ul.atte {
  font-size: 15px;
  line-height: 1.33;
}

/* .sec12 */
.sec12 {
  background: url("../img/sec12_bg.jpg") center top no-repeat;
}

/* .sec13 */
.sec13 {
  padding: -50px 0 0;
}
.sec13 .inner .cnt {
  width: 702px;
  margin: 0 auto;
  box-sizing: border-box;
  padding: 34px;
  border: #e6f1f3 solid 4px;
  font-size: 15px;
  line-height: 21px;
  color: #565656;
}
.sec13 dl dt {
  font-weight: bold;
}
.sec13 .mt_20 {
  margin-top: 20px;
}

/* .sec14 */
.sec14 {
  background: url("../img/sec14_bg.jpg") center top no-repeat;
}
.sec14 p.btn {
  position: absolute;
  bottom: 82px;
  left: 88px;
}

/* .sec15 */
.sec15 {
  background: url("../img/sec15_bg.png") center top no-repeat;
}

/* .popup */
.popup {
  display: none;
  height: 100vh;
  width: 100%;
  background: rgba(0, 0, 0, 0.5);
  position: fixed;
  top: 0;
  left: 0;
  box-sizing: border-box;
  z-index: 2000;
}
.popup .bg {
  height: 100vh;
  width: calc( 100% - 24px );
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2010;
  cursor: pointer;
}
.popup .cnt {
  position: relative;
  z-index: 2020;
  width: 700px;
  margin: -298px auto 0;
  padding: 0 0;
  box-sizing: border-box;
  top: 50%;
}
.popup .cnt dl {
  position: relative;
}
.popup .cnt dd {
  position: absolute;
  left: 0px;
  top: 400px;
}
.popup .cnt dd ul.atte {
  font-size: 11px;
  margin: 0 4%;
}
.popup .cnt .popup-close {
  width: 35px;
  position: absolute;
  right: 30px;
  top: -20px;
}

/* .popup02 */
.popup02 {
  padding-top: 0;
  overflow-y: auto;
}
.popup02 .cnt {
  width: 750px;
  height: 1304px;
  box-sizing: border-box;
  overflow: visible;
  top: auto;
  padding-top: 20px;
  margin: 0 auto;
}
.popup02 .cnt dd.btn01 {
  width: 624px;
  position: absolute;
  left: 64px;
  top: 192px;
}
.popup02 .cnt dd.btn02 {
  width: 538px;
  position: absolute;
  left: 106px;
  top: 434px;
}
.popup02 .cnt .popup-close {
  width: 50px;
  position: absolute;
  right: 40px;
  top: 76px;
}

/* footer */
.mb_10 {
  margin-bottom: 2.66vw; }
  @media screen and (min-width: 751px) {
    .mb_10 {
    margin-bottom: 20px; }
  }

.mb_30 {
  margin-bottom: 4%; }

.mb_50 {
  margin-bottom: 6.66vw; }
  @media screen and (min-width: 751px) {
    .mb_50 {
    margin-bottom: 50px; }
  }
footer .inner {
  width: 684px;
  padding-top: 25px; }
footer .cfx {
  overflow: hidden; }
  footer .cfx .jadma {
    width: 22.9333333333%;
    float: left; }
  footer .cfx .ssl {
    width: 32.6666666667%;
    float: left; }
  footer .cfx .norton {
    padding-top: 2%;
    float: right; }

.company {
  background: #8e9cad;
}
.company .inner {
  padding: 25px 0;
  text-align: center;
  font-size: 20px;
  line-height: 30px;
  color: #ffffff;
}
.company .inner p + p {
  display: inline-block;
  border-top: #a9b3c0 solid 2px;
  margin-top: 20px;
  padding-top: 20px;
}
.footer-sns { max-width: 1100px; margin: 0px auto; padding: 50px 0px; }
.footer-sns > ul { display: flex; justify-content: center; margin-left: -30px; }
.footer-sns > ul > li { margin-left: 30px; }
.footer-sns > ul > li a { display: flex; justify-content: center; align-items: center; width: 50px; height: 50px; font-size: 30px; text-decoration: none; border-radius: 50%; overflow: visible; }
.footer-sns > ul > li a:hover { opacity: 0.6; }
.footer-sns > ul > li a .rn-f-icon-insta, .footer-sns > ul > li a .rn-f-icon-fb { font-size: 30px; }
.footer-sns > ul > li a .rn-f-icon-tw { font-size: 25px; }
.footer-sns > ul > li a img { width: 100%; }
