/* 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.no a {
  display: inline;
  color: #888c91;
}

.cv ul.atte li::before {
  content: "※";
  position: absolute;
  left: 0;
  top: 0;
}

.cv ul.atte li.no::before {
  content: "";
}

@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%;
}