.desktop{
	display: none !important;
}
body,
form input{
	font:16px/1.5 "メイリオ", "Meiryo", ryumin,Helvetica, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", sans-serif;
	-webkit-text-size-adjust: 100%;
}
/*header*/


div#hearWrapper {
	width:100%;
	background:#fff;
	position: fixed;
	top:0;
	box-shadow: 3px 3px 9px rgba(0,0,0,0.35);
	z-index: 2;
}
div#header{
	width:100%;
	height:var(--header-height);
	margin:auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
div.mobile_btn{
    display: flex;
    justify-content:center;
    gap:10px;
    align-items: center;
}
ul.nav{
	position: fixed;
    top:80px;
	right:0;
    width:100%;
	background:var(--frage-color);
	display: none;
}
ul.nav li{
	position: relative;
	width: 100%;
}
ul.nav a{
	color:#fff;
	display: block;
	width:100%;
	line-height: 45px;
	border-bottom:1px solid #fff;
	text-indent: 15px;
	background:url("../images/arrow_inquiry.svg") right 15px center no-repeat;
}
div#header h1{
	margin-left:10px;
}
div#header h1 img{
    width:55vw;
    height: auto;
}
a.inquiry{
	display: block;
	width:35px;
	height: 35px;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
	background-image:url("../images/icon_inquiry_mobile.svg");
	background-position:center;
	background-repeat: no-repeat;
    background-size:35px;
	color:#fff;
}
a.inquiry:hover{
	background-color:var(--frage-color);
}
.openbtn1{
    background:var(--blue-color);
    background:#fff;
    cursor: pointer;
    width: 50px;
    height:50px;
    /*position: absolute;
    top:0;
    bottom:0;*/
    margin:auto;
    right:10px;
    transform: scale(0.88) !important;
}

/*ボタン内側*/
.openbtn1 span{
    display: inline-block;
    transition: all .4s;/*アニメーションの設定*/
    position: absolute;
    left: 14px;
    height: 3px;
    background: var(--blue-color);
    width: 45%;
  }

.openbtn1 span:nth-of-type(1) {
    top:15px;	
}

.openbtn1 span:nth-of-type(2) {
    top:23px;
}

.openbtn1 span:nth-of-type(3) {
    top:31px;
}

/*activeクラスが付与されると線が回転して×に*/

.openbtn1.active span:nth-of-type(1) {
    top: 18px;
    left: 18px;
    transform: translateY(6px) rotate(-45deg);
    width: 30%;
}

.openbtn1.active span:nth-of-type(2) {
    opacity: 0;/*真ん中の線は透過*/
}

.openbtn1.active span:nth-of-type(3){
    top: 30px;
    left: 18px;
    transform: translateY(-6px) rotate(45deg);
    width: 30%;
}
/*main visual*/
div.mainVisualWrapper{
	width:100%;
	height: calc(100vh - var(--header-height) - 330px);
	height: 520px;
	position: relative;
}
div.mainVisualWrapper p.catch{
	position: absolute;
	top:30%;
	left:6%;
	right:0;
	margin:auto;
	/*margin-left:6%;*/
	margin-right: 12%;
	font-size:18px;
	font-weight: bold;
	color:var(--frage-color);
}
div.mainVisual{
	height: calc(100vh - var(--header-height) - 330px);
	height: 520px;
	width:93%;
	border-top-right-radius: 22px;
	border-bottom-right-radius: 22px;
	overflow: hidden;
}
div.mainVisual img{
	width:100%;
	height: calc(100vh - var(--header-height) - 330px);
	height: 520px;
	object-fit:cover !important;
	object-position: center !important;
	position: absolute;
}
/*slick*/
button.slick-arrow {
	text-indent: -9999px;
	position: absolute;
	width: 30px;
	height: 30px;
	z-index: 1;
	border: none;
	cursor: pointer;
	background-size: 30px;
	top:calc((100% / 2) - 80px);
	background-repeat: no-repeat;
}
button.slick-prev {
	background-image: url("../images/slick_prev2.svg");
	background-position:center top;
	left: 15px;
}
button.slick-prev:hover {
	background-image: url("../images/slick_prev2.svg");
	background-position:center bottom;
}
button.slick-next {
	background-image: url("../images/slick_next2.svg");
	background-position:center top;
	right: 15px;
}
button.slick-next:hover {
	background-image: url("../images/slick_next2.svg");
	background-position:center bottom ;
}
ul.slick-dots {
	width: 100%;
	height: 20px;
	text-align: center;
	overflow: hidden;
	position: absolute;
	bottom: 0;
}
ul.slick-dots li {
	text-indent: -9999px;
	display: inline-block;
	width: 10px;
	height: 10px;
	background-color: var(--gra7-color);
	border-radius: 10px;
	margin: 5px;
}
li.slick-active {
	background-color: var(--gra1-color) !important;
}
.slick-slide img{
	width:320px;
	height: auto;
	object-fit: cover;
}
/*end of slick*/
/*main*/
div.wrapper{
	width:100%;
	
	position: relative;
	overflow: hidden;
}
div.wrapper.blue::before{
	content:"";
	width:100%;
	height: calc(100% - 580px);
	background:rgba(225,239,245,0.42);
	position: absolute;
	z-index: 0;
	margin:auto;
	top:380px;
	left:0;
	right:0;
}
div.wrapper.blue2::before{
	content:"";
	width:100%;
	height: calc(100% - 650px);
	background:rgba(225,239,245,0.42);
	position: absolute;
	z-index: 0;
	margin:auto;
	top:335px;
	left:0;
	right:0;
}
div.wrapper.topmargin{
	margin-top:var(--header-height);
}
div.wrapper.works{
	background-image:url("../images/footer_img_mobile.jpg");
	background-size:cover;
}
div.wrapper.inquiry{
	padding:50px 0;
	margin-top:50px;
}
div.wrapper.inquiry::before{
	content: "";
	width:calc(93%);
	height: 100%;
	background:var(--blue-color);
	border-top-right-radius: 30px;

	border-bottom-right-radius: 30px;
	position: absolute;
	top:0;
	left:0;
	z-index: 0;
}
div.secondVisual{
	width:100%;
	height: 20vh;
	/*min-height: 150px;*/
	min-height: 520px;
}
div.secondVisual::before{
	content: "";
	width:calc(93%);
	height: 100%;
	border-top-right-radius: 30px;
	border-bottom-right-radius: 30px;
	position: absolute;
	top:0;
	left:0;
	z-index: 0;
}
div.secondVisual.company::before{
	background:url("../images/title1.jpg");
}
div.secondVisual.news::before{
	background:url("../images/title2.jpg");
}
div.secondVisual.biz::before{
	background:url("../images/title3.jpg");
	background-position: right center;
}
div.secondVisual.works::before{
	background:url("../images/title4.jpg");
}
div.secondVisual.privacy::before{
	background:url("../images/title5.jpg");
}
div.secondVisual.recruit::before{
	background:url("../images/title6.jpg");
}
div.contents{
	width:100%;
	max-width:var(--max-width);
	margin:auto;
	overflow: hidden;
}
div.contents.min-width{
	max-width: var(--min-width);
}
div.topMessage{
	width:100%;
	display: flex;
	align-items: center;
}
div.topMessage h1{
	font-size:18px;
	font-weight: bold;
	color:var(--frage-color);
    margin:15px;
}
div.topMessage span{
	font-weight: normal;
	display: block;
}
div.contents h2.general{
	font-size:18px;
	font-weight: bold;
	color:var(--frage-color);
	text-align: center;
	margin-top:60px;
	margin-bottom:40px;
}
div.business{
	width:100%;
	max-width:var(--min-width);
	margin:auto auto 120px;
	display: flex;
    flex-direction: column;
	justify-content: space-between;
	align-items: center;
	position: relative;
	z-index: 1;
	gap:80px;
}
div.business:nth-child(2){
    flex-direction: column-reverse;
}
div.business h3{
	font-weight: bold;
	font-size:18px;
	color:var(--frage-color);
	margin:10px;
    text-align: center;
}
div.business h3.line{
	border-bottom:3px solid var(--blue-color);
	padding-bottom: 15px;
	margin-bottom: 30px;
}
div.business p{
	color:var(--frage-color);
	margin:10px;
}
div.business > div{
    width:calc(100% - 20px);
}
div.business > div img{
	border-radius: 22px;
    width:100%;
    /*height: 100px;*/
    height: 570px;
    object-fit:cover;
    margin:auto;
}
div.business ul li{
	color:var(--frage-color);
	margin-left:30px;
}
div.business ul li{
	margin-bottom: 30px;
	position: relative;
	padding-left:10px;
	font-weight: bold;
}
div.business ul li::before{
	content: "";
	background:url("../images/arrow_list.svg");
	width:11px;
	height: 12px;
	position: absolute;
	left:-15px;
	top:5px;
}
a.more{
	display: inline-block;
	font-size:18px;
	color:#000;
	line-height: 40px;
	background:url("../images/arrow_right.svg") right center no-repeat;
	background-size:40px;
	font-weight: bold;
	margin-top:25px;
    padding-right: 50px;
    margin-right: 10px;
}
a.more:hover{
	background:url("../images/arrow_right_on.svg") right center no-repeat;
}
a.more.wide{
}
a.more.center{
	margin:50px auto 0;
	display: block;
	width:150px;
}
a.more.right{
	float: right
}
div.tickerWrapper{
	width:100%;
	overflow: hidden;
	margin-top:50px;
}
div.ticker{
	width:3600px;
	margin-top:60px;
	display: flex;
	gap:80px;
	height: 100px;
}
div.ticker img{
	width:1800px;
	height: auto;
	padding:10px;
}
div.ticker img:first-child {
  animation: loop 100s -50s linear infinite;
}

div.ticker img:last-child {
  animation: loop2 100s linear infinite;
}
@keyframes loop {
  0% {
    transform: translateX(100%);
  }
  to {
    transform: translateX(-100%);
  }
}

@keyframes loop2 {
  0% {
    transform: translateX(0);
  }
  to {
    transform: translateX(-200%);
  }
}
div.worksWrapper{
	box-sizing: border-box;
	border-radius: 18px;
	background:rgba(255,255,255,0.78);
	padding:20px 10px 10px;
	margin:70px 10px;
}
div.dummy{
	width:100%;
	height:150px;
}
div.worksWrapper h2{
	font-size:18px;
	font-weight: bold;
	text-align: center;
	margin-bottom:20px;
}
div.worksWrapper p{
	font-size:16px;
}
h2.arrow{
	margin:30px auto;
	font-size:22px;
	font-weight: bold;
	background:url("../images/arrow_h2.svg") bottom center no-repeat;
	background-size:20px;
	display: block;
	text-align: center;
	padding-bottom:30px;
}
h2.arrow.center{
	margin-left:auto;
	margin-right: auto;
	text-align: center;
	display: block;
}

ul.news{
	margin:10px;
}
ul.news li{
	border-bottom:0.5px solid #707070;
	padding-bottom:20px;
	margin-bottom:20px;
}
ul.news span{
	font-size:14px;
}
ul.news a{
	color:#000;
	margin-top:0.5em;
}
ul.news li span + a{
	display: block;
}
ul.news a:hover{
	color:var(--blue-color);
}
ul.news span.date{
	padding:2px 0;
}
ul.news span.category{
	background:red;
	padding:2px 12px;
	border-radius: 20px;
	color:#fff;
	margin-left:20px;
}
ul.news span.category.news{
	background:#34D9DB;
}
ul.news span.category.topics{
	background:#3570D9;
}
ul.news span.category.event{
	background:#005A86;
}

div.wrapper.inquiry div.contents{
	position: relative;
	width:var(--min-width);
	overflow: hidden;
}
div.inquiry h2{
	/*margin-right: 45px;*/
	font-size:30px;
	text-align: center;
	color:#fff;
}
div.inquiry h2 span{
	display: block;
	font-size:16px;
	font-weight: bold;
	margin-top:10px;
}
a.toInquiry{
	clear: both;
	width:240px;
	height: 50px;
	display: block;
	text-align: center;
	border:2px solid #fff;
	color:#fff;
	font-size:16px;
	line-height: 50px;
	border-radius: 50px;
	margin:30px auto 0;
	background:url("../images/arrow_inquiry.svg") right 20px center no-repeat;
}
a.toInquiry:hover{
	background-color:var(--frage-color);
}
a#totop{
	width:40px;
	height: 40px;
	position: fixed;
	bottom:50px;
	right:10px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	background-image:url("../images/totop.svg");
	background-repeat: no-repeat;
	background-size:40px;
	background-position: center top;
	z-index: 10;
	display: none;
}
a#totop:hover{
	background-position: center bottom;
}

div.footerContents {
	width:var(--min-width);
	display: flex;
	justify-content: space-between;
	margin:auto;
	margin-top:130px;
	align-items: center;
}
div.footerContents ul{
	margin-top:0;
}
footer h1 img{
	width:75%;
	display: block;
	margin:auto;
}
a.privacy{
	text-align: center;
	color:#707070;
	font-size:16px;
	display: block;
	width:100%;
	margin:auto;
	margin-top:20px
}
a.privacy:hover{
	color:var(--blue-color);
}
p.copy{
	font-size:12px;
	color:#707070;
	text-align: center;
	margin-bottom:25px;
}
dl.company{
	margin:auto 10px;
	overflow: hidden;
	margin-bottom: 30px !important;
}
dl.company dt,
dl.company dd{
	padding:10px;
	box-sizing: border-box;
	color:var(--frage-color);
}
dl.company dt{
	border-top:3px solid var(--blue-color);
	font-weight: bold;
}
dl.company dd{
	padding-left:30px;
}
div.contact{
	margin:auto 10px;
}
p.contact{
	background:#F2F8FB;
	padding:10px;
	color:var(--frage-color);
	border-radius: 16px;
}
p.contact strong{
	font-weight: bold;
	font-size:20px;
}
p.contact2,
p.norecruit{
	margin:20px 10px;
	color:var(--frage-color);
}
p.contact2 strong{
	display: block;
	margin-bottom:1em;
}
dl.inquiry{
	margin:20px 10px;
	overflow: hidden;
}
dl.inquiry dt,
dl.inquiry dd{
	padding:15px;
	box-sizing: border-box;
}
dl.inquiry dt{
	border-top:1px solid #C8C0C0;
	font-weight: bold;
	color:var(--frage-color);
	width:100%;
}
dl.inquiry dd div.two{
	display: flex;
	justify-content: space-between;
	gap:10px;
}
dl.inquiry dd{
}
dl.inquiry input,
dl.inquiry textarea{
	border:1px solid #BCBCBC;
	border-radius: 8px;
	background:#F2F8FB;
	padding:10px 10px;
	box-sizing: border-box;
	width:100%;
}
dl.inquiry input:focus::placeholder{
	color:#F2F8FB;
}
dl.inquiry textarea{
	height: 318px;
}
dl.inquiry dt.must::after{
	content: "必須";
	font-size:14px;
	background:red;
	color:#fff;
	padding:3px 10px;
	margin-left:10px;
}
input[type=submit]{
	width:343px;
	height: 60px;
	text-align: center;
	color:#fff;
	background:var(--blue-color);
	cursor: pointer;
	border-radius: 8px;
}
input[type=submit]:hover{
	background:var(--frage-color);
}
div.submit{
	margin:50px auto;
	display: flex;
	justify-content: center;
	gap:25px;
}
h3.mail{
	color:var(--frage-color);
	font-size:20px;
	font-weight: bold;
	margin-bottom:10px;
}
ul.mail{
	color:var(--frage-color);
	line-height: 2em;
}
ul.mail a{
	color:var(--blue-color);
}
div.privacy{
	width:980px;
	margin:auto;
}
div.privacy h3{
	border-bottom:3px solid var(--blue-color);
	width:390px;
	margin-bottom:30px;
	padding-bottom:10px;
	color:var(--frage-color);
	font-weight: bold;
}
div.privacy p{
	text-align: justify;
	margin-bottom:50px;
	color:var(--frage-color);
}
div.privacy p a{
	color:var(--blue-color);
}
ul.switch{
	display: flex;
	justify-content: center;
	flex-direction: column;
	align-items: center;
	gap:20px;
	margin:20px auto;
	width:100%;
}
ul.switch li{
}
ul.switch a{
	display: block;
	color:#707070;
	width:200px;
	height: 40px;
	line-height: 40px;
	text-align: center;
	border-radius: 68px;
	border:2px solid var(--frage-color);
	background:#F7F8FA;
	font-size:18px;
	font-weight: bold;
}
ul.switch li.active a,
ul.switch a:hover{
	background:#9CD7F1;
	color:var(--frage-color);
}
dl.recruit{
	margin:20px 10px;
}
dl.recruit dt,
dl.recruit dd{
	box-sizing: border-box;
	padding:20px 0;
}
dl.recruit dt{
	border-top:1px solid #C8C0C0;
	color:var(--frage-color);
}
dl.recruit dd{
}
dl.recruit dt span{
	border-left:4px solid var(--blue-color);
	line-height: 29px;
	font-weight: bold;
	padding-left:40px;
}
a.entry{
	display: block;
	width:320px;
	height: 50px;
	line-height: 50px;
	background-color:var(--blue-color);
	text-align: center;
	border-radius: 50px;
	color:#fff;
	background-image:url("../images/arrow_inquiry.svg");
	background-repeat:no-repeat;
	background-position: right 20px center;
	margin-top:30px;
}
h3.recruit{
	margin-left:10px;
	font-size:18px;
	font-weight: bold;
	color:var(--frage-color);
}
h3.works{
	font-size:18px;
	font-weight: bold;
	color:var(--frage-color);
	padding-bottom:10px;
	border-bottom:3px solid var(--blue-color);
	margin-bottom:20px;
	margin-left:10px;
	margin-right:10px;
}
h3.works:last-child{
	margin-top:25px;
}
dl.worksContents{
	overflow: hidden;
	padding:10px 0;
	margin:10px;
	border-bottom:1px solid #707070;
	color:var(--frage-color);
	font-weight: bold;
}
dl.worksContents:last-child{
	margin-bottom:20px;
}
dl.worksContents dt{
	background:url("../images/arrow_list.svg") left center no-repeat;
	padding-left:20px;
}
dl.worksContents dd.title{
	margin-left:20px;
}
dl.worksContents dd.contents{
	padding:10px 20px;
	background:#F2F8FB;
	margin-top:10px;
}
.anime{
	/*display: none !important;*/
	transition: all 0.5s;
}

h3.news{
	color:var(--frage-color);
	font-size:20px;
	font-weight: bold;
	border-bottom:3px solid var(--frage-color);
	margin:10px;
	margin-bottom:50px;
}
div.entryBody{
	margin:10px;
}
div.entryBody h1,
div.entryBody h2,
div.entryBody h3,
div.entryBody h4,
div.entryBody h5,
div.entryBody h6{
	font-weight: bold;
	margin-bottom:1em;
}
div.entryBody h1{
	font-size:36px;
}
div.entryBody h2{
	font-size:24px;
}
div.entryBody h3{
	font-size:22px;
}
div.entryBody h4{
	font-size:20px;
}
div.entryBody h5{
	font-size:18px;
}
div.entryBody h6{
	font-size:16px;
}
div.entryBody p{
	margin:1em;
}
div.entryBody ul,
div.entryBody ol{
	margin:1em 1em 1em 3em;
}
div.entryBody ul li{
	list-style: disc;
}
blockquote{
	padding:1em;
	background:#efefef;
}
