@charset "UTF-8";
/* CSS Document */
*{
	box-sizing: border-box;
}
html{
	-webkit-text-size-adjust: 100%;
	font-size: 62.5%;
	scroll-behavior: smooth;
	scroll-padding-top: 54px;
	background-color: #ffffff;
}
body{
	line-height: 2;
	font-family: 'Shippori Mincho',"游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
	color: #071232;
	overflow-x: hidden;
}
img{
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}
/*リンク*/
#pagetop{
	scroll-margin-top: 100px;
}
a{
	transition: opacity 0.3s;
}
a:hover{
	opacity: 0.7;
}
/*インデント*/
.indent01{
	text-indent: -3.3em;
	padding-left: 3.3em;
}
/*ヘッダー_PC*/
.header-inner{
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
	width: 100%;
}
.header-contents{
	max-width: 1440px;
	padding: 5px 60px 12px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
	background-image: linear-gradient(90deg, #071232, #0b1d50 50%, #071232);
}
.header-ic>img{
	width: 34px;
	margin-left: 20px;
}
h1{
	color: #ffffff;
	font-size: 2.8rem;
}
/*メニュー_PC*/
.menu-contents{
	background-color: #ffffff;
	padding: 5px 100px;
	border-bottom: solid 1px #071232;
}
.menu-contents>ul{
	display: flex;
	justify-content: space-between;
}
.menu-contents>ul>li{
	font-size: 2.2rem;
}
.menu01{
	padding-left: 20px;
}
.menu-ic{
	position: relative;
}
.menu-ic::before{
	position: absolute;
    top: 7px;
    left: -20px;
    width: 20px;
    height: 20px;
    content: "";
    background: url("../img/index_ic02.webp") no-repeat;
    background-size: contain;
}
/*メイン_PC*/
.main-contents{
	max-width: 960px;
	margin: 0 auto 80px;
}
/*スライダー_PC*/
/*スライダー全体の枠*/
.slider-inner{
max-width: 700px;/*最大横幅*/
max-height: 525px;/*最大縦幅*/
margin: 160px auto 0;
overflow: hidden;/*枠からはみ出した画像を切る*/
}
.slider-im picture{
display: flex;
justify-content: center;
align-items: center;
width: 100%;
height: 100%;
}
.slider-im img{
width: 100%;
height: 100%;
object-fit: contain;
}
/*画像を横に並べる中身 */
.slider-contents{
display: flex;
width: 900%;/*画像数（実質8枚+ループ用1枚）×100% */
list-style: none;
padding: 0;
margin: 0;
animation: slide-anim 52.00s infinite;/*合計時間：（5秒+1.5秒）×8枚 = 52秒*/
}
.slider-contents>li{
width: 11.111%;/*100% ÷ 全画像数（ループ用含め9枚） */
}
.slider-contents>li>picture{
width: 100%;
height: auto;
display: block;
}
/*スライドの動きを指定（静止時間を作るための記述） */
@keyframes slide-anim {
  0%, 9.09% {
    transform: translateX(0);
  }
  11.11%, 20.20% {
    transform: translateX(-11.111%);
  }
  22.22%, 31.31% {
    transform: translateX(-22.222%);
  }
  33.33%, 42.42% {
    transform: translateX(-33.333%);
  }
  44.44%, 53.53% {
    transform: translateX(-44.444%);
  }
  55.55%, 64.64% {
    transform: translateX(-55.555%);
  }
  66.66%, 75.75% {
    transform: translateX(-66.666%);
  }
  77.77%, 86.86% {
    transform: translateX(-77.777%);
  }
  88.88%, 97.97% {
    transform: translateX(-88.888%);
  }
  100% {
    transform: translateX(-88.888%);
  }
}
/*マウスを乗せたときに止める設定 */
/*.slider-inner:hover .slider-contents{
animation-play-state: paused;
}*/
h2{
	font-size: 2.4rem;
	text-align: center;
	line-height: 2;
	max-width: 280px;
	margin: 0 auto;
	font-weight: bold;
}
/*コンセプト_PC*/
.concept-inner{
	background-image: linear-gradient(90deg, #071232, #0b1d50 50%, #071232);	
}
.concept-contents{
	padding: 60px 0 70px;
	max-width: 800px;
	margin: 40px auto 0;
}
.concept-contents>section>h2{
	color: #ffffff;
	border-bottom: solid 1px #ffffff;
}
.concept-tx,.profile-tx,.works-tx,.news-tx{
	font-size: 1.6rem;
	margin: 20px 0 0;
}
.concept-tx{
	line-height: 2.4;
	color: #ffffff;
	position: relative;
}
/*プロフィール_PC*/
.profile-contents{
	margin: 70px auto 0;
	max-width: 800px;
}
.profile-contents>section>h2,.works-contents>section>h2,.news-contents>section>h2,.contact-contents>section>h2{
	color: #071232;
	border-bottom: solid 1px #071232;
}
.profile-box{
	display: flex;
	justify-content: space-between;
	margin: 40px 0 0;
}
.profile-img{
	max-width: 250px;
}
h3{
	font-size: 2.0rem;
	font-weight: bold;
}
.profile-contents>section>section>h3{
	margin: 60px 0 0;	
	}
h4{
	font-size: 1.8rem;
	margin: 40px 0 0;
}
/*WORKS_PC*/
.works-inner,.news-inner{
	margin: 170px 0 0;
}
.works-contents,.news-contents,.contact-contents{
	max-width: 800px;
	margin: 0 auto;
}
.works-box>section>h3,.news-box>section>h3,.news-box>section>h3{
	text-align: center;
	margin: 40px 0 0;
}
.works-box:nth-of-type(n+2),.news-box:nth-of-type(n+2){
  border-top: solid 1px #071232;
	margin: 60px 0 0;
}
/*カルーセル_PC*/
.carousel-box img{
	width: 100%;
	height: auto;
}
/* ↓カルーセルの外枠 */
.carousel-inner{
	width: 100%;
	max-height: 420px;
	margin: 30px auto 0;
	position: relative;
	overflow: hidden; /* はみ出した画像を隠す */
}
.carousel-contents{ /*カルーセル全体 */
	width: 300%;
	height: 100%;
	display: flex;
	transition: all 2s;
}
.carousel-box{ /*カルーセル画像*/
	width: 33.33%;
	height: 100%;
	margin: 0 auto;
	display: flex;
	text-align: center;
	justify-content: center;
	align-items: center;
}
.carousel1{ /* スライドさせるために必要なクラス */
	transform: translateX(0);
}
.carousel2{ /* スライドさせるために必要なクラス */
	transform: translateX(-33.33%);
}
.carousel3{ /* スライドさせるために必要なクラス */
	transform: translateX(-66.66%);
}
/* ↓ 左右のボタン */
.next {
	position: absolute;
	width: 15px;
	height: 15px;
	right: 10px;
	bottom: 50%;
	z-index: 10;
	cursor: pointer;
	border-top: solid 2px #071232;
	border-right: solid 2px #071232;
	-webkit-transform: rotate(45deg) translateY(50%);
	transform: rotate(45deg) translateY(50%);
}
.prev{
	position: absolute;
	width: 15px;
	height: 15px;
	left: 25px;
	bottom: 50%;
	z-index: 10;
	cursor: pointer;
	border-top: solid 2px #071232;
	border-right: solid 2px #071232;
	-webkit-transform: rotate(-135deg) translateY(-50%);
	transform: rotate(-135deg) translateY(-50%);
}
/*NEWS_PC*/
.news-contents>section>section>h3{
	text-align: center;
}
.news-img{
	max-width: 360px;
	margin: 20px auto 0;
}
.news-tx>a,.contact-tx>a{
	border-bottom: solid 1px #071232;
}
/*CONTACT_PC*/
.contact-inner{
	margin: 170px 0 420px;
}
.contact-tx{
	font-size: 2.0rem;
}
.contact-box{
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 60px 0 0;
}
.contact-item{
	margin: 0 0 0 10px;
}
/*フッター_PC*/
.footer-inner{
	background-image: linear-gradient(90deg, #071232, #0b1d50 50%, #071232);
	margin-top: 120px;
}
.footer-contents{
	padding: 49px 0 60px;
}
.footer-copy{
	color: #ffffff;
	text-align: center;
	font-size: 1.4rem;
}
/*768px以上の場合に適用（PC）*/
@media screen and (min-width: 768px),print{
	.view-sp{
		display: none;
	}
}
/*以降SP*/
/*767px以下の場合に適用（SP）*/
@media screen and (max-width: 767px){
	.view-pc{
		display: none;
	}
/*ヘッダー_SP*/
	.header-contents{
		width: 100%;
		padding: 2vw 5.3vw;
	}
	.header-ic>img{
		width: 6vw;
		margin-left: 3vw;
	}
h1{
	color: #ffffff;
	font-size: 5vw;
}
/*メニュー_SP*/
.menu-contents{
	padding: 1vw 5.3vw;
	border-bottom: solid 0.26vw #071232;
}
.menu-contents>ul>li{
	font-size: 4vw;
}
.menu01{
	padding-left: 5.5vw;
}
.menu-ic::before{
    top: 1.2vw;
    left: -4.5vw;
    width: 4vw;
    height: 4vw;
}
/*メイン_SP*/
.main-contents{
	width: 89.33vw;
	padding: 0;
	margin: 0 auto 14.67vw;
}	
/*スライダー_SP*/
/*スライダー全体の枠*/
.slider-inner{
	width: 100%;
	height: 74vw;
	margin: 34vw auto 0;
}
h2{
	font-size: 4.75vw;
	line-height: 2;
	max-width: 42vw;
}
/*コンセプト_SP*/
.concept-contents{
	padding: 10vw 0;
	width: 89.33vw;
	margin: 11vw auto 0;
}
.concept-contents>section>h2{
	border-bottom: solid 0.26vw #ffffff;
}
.concept-tx,.profile-tx,.works-tx,.news-tx{
	font-size: 3.5vw;
	margin: 5vw 0 0;
}
.concept-tx{
	line-height: 1.8;
}
/*プロフィール_SP*/
.profile-contents{
	margin: 10vw auto 0;
	width: 89.33vw;
}
.profile-contents>section>h2,.works-contents>section>h2,.news-contents>section>h2,.contact-contents>section>h2{
	border-bottom: solid 0.26vw #071232;
}
.profile-box{
	flex-direction: column-reverse;
	margin: 8vw 0 0;
}
.profile-img{
	width: 45vw;
	margin: 0 auto;
}
h3{
	font-size: 4.5vw;
}
.profile-item:nth-of-type(1){
	margin: 7vw 0 0;	
	}
.profile-contents>section>section>h3{
	margin: 8vw 0 0;	
	}
h4{
	font-size: 4vw;
	margin: 6vw 0 0;
}
/*NEWS_SP*/
.news-img{
	width: 70vw;
	margin: 4vw auto 0;
}
/*WORKS_SP*/
.works-inner,.news-inner{
	margin: 32vw 0 0;
}
.works-contents,.news-contents,.contact-contents{
	width: 89.33vw;
}
.works-box>section>h3,.news-box>section>h3,.news-box>section>h3{
	margin: 8vw 0 0;
}
.works-box:nth-of-type(n+2),.news-box:nth-of-type(n+2){
  	border-top: solid 1px #071232;
	margin: 10vw 0 0;
}
/*カルーセル_SP*/
.carousel-contents{
	height: 78%;
}
.carousel-box img{
	width: 78%;
}
/* ↓カルーセルの外枠 */
.carousel-inner{
	width: 100%;
	margin: 4vw auto 0;
}
/* ↓ 左右のボタン */
.next {
	width: 4vw;
	height: 4vw;
	right: 0;
	border-top: solid 0.53vw #071232;
	border-right: solid 0.53vw #071232;
}
.prev{
	width: 4vw;
	height: 4vw;
	left: 2.6vw;
	border-top: solid 0.53vw #071232;
	border-right: solid 0.53vw #071232;
}	
/*CONTACT_SP*/
.contact-inner{
	margin: 32vw 0 90vw;
}
.contact-tx{
	font-size: 4.26vw;
}
.contact-box{
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 10vw 0 0;
}
.contact-item{
	margin: 0 0 0 1.3vw;
}
.contact-mb{
	margin: 0 0 1.3vw 1.3vw;
}
.contact-item>img{
	width: 5.3vw;	
}
/*フッター_SP*/
.footer-inner{
	margin: 32vw 0 0;
}
.footer-contents{
	padding: 12vw 0;
}
.footer-copy{
	font-size: 3.2vw;
}
}
