/* common */
html {
	color: #777777;
}
a:link,
a:visited {
	color: #0456c6;
}
.wrap * {
	font-family: YuGothic,'游ゴシック',"メイリオ", meiryo,sans-serif;
}
.inner {
  margin: 0 auto;
  position: relative;
}
.contents img {
	width: 100%;
	vertical-align: bottom;
}
.contents a:link,
.contents a:visited {
	color: #cd4376;
}
.pc {
	display: none;
}
#top {
	padding-top: 20vw;
}

/* .cv */
.cv {
	padding: 0 0 10vw;
}
.cv .cover {
	background: url("../img/cv_bg02.png") center bottom no-repeat;
	background-size: 108vw auto;
	padding: 0 0 6.66vw;
}
.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 5vw;
}
.cv p.link {
	font-size: 3.2vw;
	line-height: 1;
	text-align: center;
}
.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.btn01 dd {
  padding-bottom: 2.66vw;
}
.cv p.btn02 {
  display: block;
  width: 100%;
  background: url("../img/cv_bg03.png") center top / 108vw auto no-repeat;
  padding-top: 14.4vw;
  margin-top: -5.33vw;
}
.cv p.btn02 a {
  display: block;
  margin: 0 auto;
  width: 89.33%;
  padding: 0 0 1.73vw;
}
.cv dl.btn dd {
	color: #888c91;
	text-align: center;
	margin-top: -1.33vw;
	font-size: 2vw;
	line-height: 1;
}
.cv .atte {
  font-size: 2vw;
  line-height: 2.66vw;
  color: #888c91;
  text-align: left;
  position: relative;
  margin: 0 2.66%;
}
.cv .cpt + .atte,
.cv .link + .atte {
	font-size: 1.73vw;
	line-height: 1.38;
}
.cv .inner .atte {
	margin: 0 8% 2.66vw;
}
.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: "";
}
.cv .cover + .atte {
  margin-top: -1.86vw;
}

@media screen and (min-width: 751px) {
	.cv .inner {
		max-width: 810px;
		box-sizing: border-box;
		padding: 0 30px;
		background-size: 810px auto;
	}
	.cv p.cpt {
		width: 100%;
		margin: 40px 0;
	}
	.cv dl.btn dd {
		margin-top: -10px;
		font-size: 14px;
	}
	.cv dl.btn + dl.btn {
		margin-top: 34px;
	}
	.cv .inner p.link + ul.atte {
		margin: 15px 8% 20px;
	}
}
.cv .btn01 a {
  position: relative;
  display: block;
}
.cv .btn01 .shiny {
  position: absolute;
  left: 2.8vw;
  top: 1.5vw;
  display: block;
  overflow: hidden;
  border-radius: 1.33vw;
  width: 85vw;
  height: 17vw;
}
.cv .shiny::before {
  position: absolute;
  content: '';
  display: inline-block;
  top: -24vw;
  left: 0;
  width: 4vw;
  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: 5.33vw 0;
	text-align: center;
}
.cv02 .inner {
	width: 88.8vw;
	margin: 0 auto;
}

/* .header */
.header {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 20vw;
	border-bottom: #dddddd solid 1px;
	z-index: 1000;
	background: #fff;
}
.header .inner img,
.header .inner {
	width: 100%;
}
.header h1 {
	width: 24vw;
	padding: 4vw 0 0 3.46vw;
}
.header p.btn {
	position: absolute;
	right: 1.33vw;
	top: 4vw;
	width: 64.53vw;
}

/* .top */
.top {
	background: url("../img/top_bg.jpg") center top no-repeat;
}

/* .sec01 */
.sec01 .slide {
	background: url("../img/sec01_02.jpg") center top no-repeat;
	background-size: 100% auto;
	height: 93.33vw;
	position: relative;
}
.sec01 .swiper-container {
	position: relative;
	width: 78.66vw;
	margin: 0 auto;
	box-sizing: border-box;
}
.sec01 .swiper-slide {
	width: 78.66vw;
	box-sizing: border-box;
}
.sec01 .swiper-pagination {
	margin-top: 4vw;
}
.sec01 .swiper-pagination-bullet {
	background-color: #fff;
	width: 1.86vw;
	height: 1.86vw;
	opacity: 1;
	margin: 0 1.6vw;
}
.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;
	background-size: 100% auto;
	width: 9.33vw;
	height: 9.33vw;
	top: 24vw;
	left: 5.33vw;
}
.sec01 .swiper-button-next {
	background: url("../img/sec01_next.png") left top no-repeat;
	background-size: 100% auto;
	width: 9.33vw;
	height: 9.33vw;
	top: 24vw;
	right: 5.33vw;
}

/* .sec03 */
.sec03 dl {
	position: relative;
}
.sec03 dl dd {
	position: absolute;
	left: 8vw;
	top: 0;
	width: 84vw;
}

/* .sec04 */
.sec04 dl {
	position: relative;
}
.sec04 dl dd {
	position: absolute;
	left: 8vw;
	top: 0;
	width: 84vw;
}

/* .sec09 */
.sec09 {
}
.sec09 .slide {
	height: 81.33vw;
	position: relative;
	transform: scale(0.9);
}
.sec09 .swiper-container {
	position: relative;
	width: 100vw;
	margin: 0 auto;
	box-sizing: border-box;
}
.sec09 .swiper-slide {
	width: 100vw;
	box-sizing: border-box;
}
.sec09 .swiper-pagination {
	margin-top: 4.53vw;
}
.sec09 .swiper-pagination-bullet {
	background-color: #8e9cad;
	width: 1.86vw;
	height: 1.86vw;
	opacity: 1;
	margin: 0 1.6vw;
}
.sec09 .swiper-pagination-bullet-active {
	background-color: #cd4376;
}
.sec09 .swiper-button-next {
	background: url("../img/sec09_next.png") left top no-repeat;
	background-size: 100% auto;
	width: 17.33vw;
	height: 17.33vw;
	top: 26vw;
	right: 0px;
}

/* .sec11 */
.sec11 dl {
	position: relative;
}
.sec11 dl dd.cv {
	position: absolute;
	left: 0;
	top: 0;
	width: 100vw;
}
.sec11 dl dd.cv ul.atte {
	font-size: 2vw;
	line-height: 1.33;
}

/* .sec13 */
.sec13 {
	padding: -3.33vw 0 0;
}
.sec13 .inner .cnt {
	margin: 0 2.66vw 0;
	box-sizing: border-box;
	padding: 4.66vw;
	border: #e6f1f3 solid 0.53vw;
	font-size: 2.26vw;
	line-height: 3.06vw;
	color: #565656;
}
.sec13 dl dt {
	font-weight: bold;
}
.sec13 .mt_20 {
	margin-top: 3.06vw;
}

/* .sec14 */
.sec14 p.btn {
	position: absolute;
	bottom: 10.93vw;
  left: 11.73vw;
  width: 75.46vw;
}

/* .popup */
.popup {
  display: none;
  height: 100vh;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  padding-top: 4vw;
  box-sizing: border-box;
  z-index: 2000;
}
.popup .bg {
  height: 100vh;
  width: 100%;
  background: rgba(0, 0, 0, 0.5);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2010;
}
.popup .cnt {
  position: relative;
  z-index: 2020;
  overflow: auto;
  width: 93.33vw;
  margin: -39.73vw auto 0;
  padding: 0 0;
  box-sizing: border-box;
  top: 50%;
}
.popup .cnt dl {
  position: relative;
}
.popup .cnt dd {
  position: absolute;
  left: 0px;
  top: 78vw;
}
.popup .cnt dd ul.atte {
  font-size: 2vw;
  margin: 0 4%;
}
.popup .cnt .popup-close {
  width: 6.66vw;
  position: absolute;
  right: 6vw;
  top: 0vw;
}

/* .popup02 */
.popup02 {
  padding-top: 0;
  overflow-y: auto;
}
.popup02 .cnt {
  width: calc( 750 / 750 * 100vw );
  height: calc( 1304 / 750 * 100vw );
  box-sizing: border-box;
  overflow: visible;
  top: auto;
  padding-top: calc( 20 / 750 * 100vw );
  margin: 0 auto;
}
.popup02 .cnt dd.btn01 {
  width: calc( 624 / 750 * 100vw );
  position: absolute;
  left: calc( 64 / 750 * 100vw );
  top: calc( 192 / 750 * 100vw );
}
.popup02 .cnt dd.btn02 {
  width: calc( 538 / 750 * 100vw );
  position: absolute;
  left: calc( 106 / 750 * 100vw );
  top: calc( 434 / 750 * 100vw );
}
.popup02 .cnt .popup-close {
  width: calc( 50 / 750 * 100vw );
  position: absolute;
  right: calc( 40 / 750 * 100vw );
  top: calc( 76 / 750 * 100vw );
}

/* 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: 91.2vw;
	padding-top: 4vw;
	font-size: 2.26vw;
	line-height: 3.06vw;
}
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: 6.26vw 0;
	text-align: center;
	font-size: 2.66vw;
	line-height: 4vw;
	color: #ffffff;
}
.company .inner p {
	display: inline-block;
	margin: 0 auto;
}
.company .inner p + p {
	border-top: #a9b3c0 solid 1px;
	margin-top: 1.73vw;
	padding-top: 1.73vw;
}
.footer-sns {
	margin: 0 auto;
	padding: 6.25vw 0;
}

.footer-sns > ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	justify-content: center;
	margin-left: -4.6875vw;
}

.footer-sns > ul > li {
	margin-left: 4.6875vw;
}

.footer-sns > ul > li a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	justify-content: center;
	align-items: center;
	width: 9.375vw;
	height: 9.375vw;
	font-size: 4.6875vw;
	text-decoration: none;
	-webkit-border-radius: 50%;
	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: 3.125vw;
}

.footer-sns > ul > li a .rn-f-icon-tw {
	font-size: 2.34375vw;
}

.footer-sns > ul > li a img {
    width: 100%;
}