@charset "UTF-8";
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}
html {
	line-height: 1;
}
body {
	color: #434343;
	font-size: 32px;
	line-height: 1.6;
	font-family: "Segoe UI", "Helvetica Neue", sans-serif;
	background: #f7f7f7;
}
img {
	vertical-align: bottom;
}
a img {
  border: none;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
sup, sub {
	font-size: 0.5em;
}
#wrapper {
	width: 750px;
	margin: 0 auto;
	overflow: hidden;
	-webkit-text-size-adjust: 100%;
	position: relative;
}
.inner {
	width: 750px;
	margin: 0 auto;
	background: #FFF;
}
.invisible {
    visibility: hidden; /*アニメ―ションする要素を非表示*/
}

img.lazyload {
    opacity: 0;
    -webkit-transition: opacity 1.5s;
    transition: opacity 1.5s;
}
img.lazyloaded {
    opacity: 1;
}


/* animate.css */
.animated.fadeInLeft,
.animated.fadeInRight,
.animated.fadeInDown,
.animated.fadeInUp {
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
}


/* #fv */
.fv-first {
	width: 100vw;
	height: 100dvh;
	transition: all 1s;
	background-color: #FFF;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	opacity: 1;
	visibility: visible;
}
.fv-first-logo {
	max-width: 180px;
}
.fv-first.is-active {
	opacity: 0;
	visibility: hidden;
}
.fv-first-animation {
	width: 100vw;
	height: 100dvh;
	transition: all 1s;
	background: url(../img/fv-first-bg.jpg) no-repeat;
	background-size: cover;
	z-index: 9999;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	visibility: hidden;
}
@media (max-width: 767px) {
	.fv-first-animation {
		background: url(../img/fv-first-bg_sp.jpg) no-repeat;
		background-size: cover;
	}
}
.fv-first-animation.is-active {
	opacity: 1;
	visibility: visible;
}
.fv {
	background: url(../img/fv-bg.jpg) no-repeat top center;
}

/* .modal */
.modal {
    display: none;
    width: 750px;
    height: 100vh;
    position: fixed;
    top: 0;
    z-index: 999;
}
.modal__bg {
	width: 100%;
	height: 100vh;
	position: absolute;
	background: rgba(0,0,0,0.9);
	cursor: pointer;
}
.modal__content {
	width: 650px;
	color: #FFF;
    background: #333;
    position: absolute;
    top: 50%;
	left: 50%;
    transform: translate(-50%,-50%);
}
.modal__content__inner {
	position: relative;
}
.modal__content__inner .js-modal-close {
	position: absolute;
	bottom: 100px;
	left: 50%;
    transform: translate(-50%,-50%);
}

/* .swiper */
.swiper-pagination-bullet {
	width: 14px;
	height: 14px;
	border: 1px solid #414142;
	border-radius: 0;
	opacity: 1;
	background-color: #FFF;
}
.swiper-pagination-bullet-active {
	background: #414142;
}
.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 13px;
}
.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
	bottom: 112px;
	position: absolute;
}
.swiper-horizontal> .swiper_awards .swiper-pagination-bullets,
.swiper_awards .swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper_awards .swiper-pagination-custom,
.swiper_awards .swiper-pagination-fraction {
	top: 377px;
}
.swiper_projects {
	background: url(../img/project-bg.jpg) no-repeat top center;
}

.sec_service  {
	margin-bottom: 190px;
}
.sec_projects {
	padding-bottom: 170px;
	position: relative;
}
.sec_artist {
	background: #efefef;
}
.swiper_awards{
	position: relative;
}

/* .cv */
.cv {
	position: relative;
}
.cv .cv_btn_teiki {
    position: absolute;
    bottom: 240px;
    left: 70px;
}
.cv .cv_btn_tanpin {
	position: absolute;
	bottom: 175px;
	left: 190px;
}


/* footer */
.footer {
	position: relative;
	background: url(../img/footer-bg.jpg) no-repeat top center;
	background-color:#000000;
}
.footer-icon {
	text-align: center;
	margin-bottom: 200px;
	position: relative
}
.footer-icon::before {
    content: "";
    display: inline-block;
    width: 1px;
    height: 109px;
    background-image: url('../img/footer-icon-border.png');
	position: absolute;
	top: 0;
	left: 50%;
	margin-top: -54.5px;
}
.footer-icon-list {
	display: flex;
	justify-content: center;
}
.footer-icon-list li {
	margin: 0 40px;
}


