@charset "utf-8";
/*
Theme Name: sankakuya_skelton
Description: original theme
Author:yuya matsuo
Version: 1.0.0
*/

/* reset */

html{
	scroll-behavior:smooth;
}

body{
	margin:0;
	width:100%;
	overflow-x:hidden;
	overflow-y: scroll;
        -ms-overflow-style: none;
        scrollbar-width: none;
        text-rendering:optimizeSpeed;
}

*{
	-moz-appearance: none;
	-webkit-appearance: none;
	-ms-appearance: none;
	appearance: none;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

*::before,
*::after{
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

h1,h2,h3,h4,h5,h6{
	font-size:1rem;
	font-weight:400;
	margin:0;
	padding:0;
	line-height:1;
}

p{
	margin:0;
	padding:0;
}

ul,
ol{
	list-style:none;
	padding:0;
	margin:0;
}

figure,
blockquote,
dl,
dd{
	margin:0;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

table th{
	font-weight:400;
	text-align:left;
}

a:not([class]){
	text-decoration-skip-ink:auto;
}

::-webkit-scrollbar {
	display: none;
	-webkit-appearance: none;
}

@media(prefers-reduced-motion:reduce){
	*{
		animation-duration:.01ms !important;
		animation-iteration-count:1 !important;
		transition-duration:.01ms !important;
		scroll-behavior:auto !important;
	}
}

/* common */

html,
body{
	font-size: 62.5%;
}

body{
	background:#fff;
	font-family: 'Noto Sans JP', sans-serif;
	color:#222;
	font-weight:400;
	line-height:1.8;
	margin:0;
}

a{
	color:#222;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-o-transition: 0.5s;
	-ms-transition: 0.5s;
	transition: 0.5s;
	text-decoration:none;
}

a:hover{
	text-decoration:none;
	opacity:0.8;
}

/* layout */

main{
	display:block;
	margin:200px auto;
}

.home main{
	margin:0 auto;
}

.container{
	width:1000px;
	margin:0 auto;
}

.container-min{
	width:800px;
	margin:0 auto;
}

.flex-wrap{
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
}

/* parts */

.kosugi{
	font-family: 'Kosugi Maru', sans-serif;
}

.text-center{
	text-align:center;
}

.text-right{
	text-align:right;
}

.img-fluid{
	display:block;
	max-width:100%;
	height:auto;
}

.img-trim{
	position: relative;
	overflow: hidden;
	padding-top: 100%;
}

.img-trim img{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.img-trim.img-trim16x9{
	padding-top: 56.25%;
}

.img-trim.img-trim5x3{
	padding-top: 60%;
}

.img-trim.img-trim3x2{
	padding-top: 66%;
}

.img-trim.img-trim4x3{
	padding-top: 75%;
}

.img-trim.img-trim5x5{
	padding-top: 100%;
}

.img-trim.img-trim4x5{
	padding-top: 125%;
}

.shadow{
	box-shadow: 0 .125rem .25rem rgba(0,0,0,.075)!important;
}

/* header */

header{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	z-index:999;
	background:rgba(255,255,255,0.5);
}

.header-wrap{
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding:10px 20px;
}

.header-wrap .logo{
	width:200px;
	
}

.header-wrap .contact-wrap{
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.header-wrap .contact-wrap > a{
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.header-wrap .contact-wrap > a i{
	font-size:3rem;
}

.header-wrap .contact-wrap > a span{
	margin-left:0.75rem;
	font-size:1.5rem;
}

.header-wrap .contact-wrap > a.mail{
	margin-left:2rem;
}

/* footer */

footer{
	font-size:1.5rem;
	background:#222;
	color:#fff;
	padding:50px 0;
}

/* home */

.mv img{
	width:100%;
}

.home-content{
	padding:100px 0;
	font-size:1.5rem;
}

.home-content h2{
	font-size:3rem;
	margin-bottom:50px;
}

.h-section00{
	padding:100px 0 0;
}

.h-section00 h2{
	margin-bottom:25px;
}

.h-section01 .intro{
	margin-bottom:150px;
	position:relative;
}

.h-section01 .intro:last-child{
	margin-bottom:0;
}

.h-section01 .intro .img{
	width:70%;
}

.h-section01 .intro .txt{
	position:absolute;
	right:0;
	bottom:30px;
	width:45%;
	background:rgba(255,255,255,0.9);
	padding:30px 0 30px 30px;
}

.h-section01 .intro:nth-child(even) .img{
	margin-left:auto;
	margin-right:0;
}

.h-section01 .intro:nth-child(even) .txt{
	right:auto;
	left:0;
	padding:30px 30px 30px 0;
}

.h-section01 .intro .txt h3{
	font-size:2.5rem;
	line-height:1.6;
	margin-bottom:15px;
}

.h-section01 .intro .txt .btn{
	display:block;
	width:100%;
	line-height:1;
	border:1px solid #222;
	text-align:center;
	padding:10px 0;
	margin-top:15px;
	background:#fff;

}

.h-section02{
	background:#fafafa;
}

.h-section02 .about{
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.h-section02 .about > div{
	width:48%;
}

.h-section02 .about .company table{
	width:100%;
	line-height:1.2;
}

.h-section02 .about .company table th,
.h-section02 .about .company table td{
	padding-bottom:15px;
}

.h-section03 table{
	width:80%;
	margin:0 auto 15px;
}

.h-section03 table th,
.h-section03 table td{
	padding-bottom:15px;
}

.h-section03 table th span{
	color:#b22222;
}

/* parts */

.gmap {
	height: 0;
	overflow: hidden;
	padding-bottom: 100%;
	position: relative;
}

.gmap iframe {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
}

input[type="text"],
input[type="tel"],
input[type="email"],
textarea{
	border:1px solid #aaa;
	background:#fff;
	padding:15px;
	width:100%;
	border-radius:0;
	font-size:1.5rem;
	line-height:1;
}

input[type="text"]:focus,
input[type="tel"]:focus,
input[type="email"]:focus,
textarea:focus{
	outline:none;
	outline-offset:0;
	border:1px solid #222;
	background:#fefefe;
}

.btn-wrap{
	text-align:center;
}

input[type="submit"]{
	font-size:1.5rem;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-o-transition: 0.5s;
	-ms-transition: 0.5s;
	transition: 0.5s;
	line-height:1.1;
	border:1px solid #222;
	padding:15px 45px;
	background:#222;
	color:#fff;
}

input[type="submit"]:hover{
	opacity:0.8;
}

/* archive */

/* single */

/* page */

.page-header{
	margin-bottom:50px;
}

.page-header h1{
	font-size:5rem;
	font-weight:700;
	color:#ccc;
	line-height:1.4;
}

.page-header h1 span{
	display:block;
	color:#222;
	font-size:2rem;
}

.page-content h2{
	margin:200px  0 50px;
	font-size: 2rem;
	font-weight:700;
}

/* gallery */

.gallery .img{
	width:calc(100% / 5);
	padding:5px;
	
}

.gallery .img a img{
	transition:1s;
}

.gallery .img a:hover img{
	opacity:0.8;
}

.page-btn{
	display:inline-block;
	width:20%;
	line-height:1;
	border:1px solid #222;
	text-align:center;
	padding:10px 0;
	margin-top:50px;
	background:#fff;
}

/* 404 */

.error404 p{
	font-size:3rem;
	font-weight:700;
}

/* lightbox */

.lb-nav a.lb-prev{
	opacity:1;
	position:absolute;
	width:100px;
	left: -100px;
}

.lb-nav a.lb-next{
	opacity:1;
	position:absolute;
	width:100px;
	right: -100px;
}

@media (max-width: 960px) {}

@media (max-width: 560px) {

	/* layout */
	
	main{
		width:90%;
		margin:150px 5%;
	}
	
	.home main{
		width:100%;
		margin:0 auto;
	}
	
	.container,
	.container-min{
		width:100%;
	}

	/* header */
	
	header{
		background:rgba(255,255,255,0.3);
	}
	
	.header-wrap{
		padding:10px;
	}
	
	.header-wrap .logo{
		width:140px;
	}
	
	.header-wrap .contact-wrap > a.mail{
		margin-left:10px;
	}
	
	.header-wrap .contact-wrap > a span{
		display:none;
	}
	
	/* footer */
	
	footer{
		padding:25px 0;
	}
	
	footer p{
		font-size:0.8rem;
	}
	
	/* home */
	
	.home-content{
		padding:50px 0;
	}
	
	.home-content h2{
		font-size:2rem;
		margin-bottom:15px;
	}
	
	.h-section00{
		width:90%;
		margin:0 auto;
	}
	
	.h-section01 .intro{
		margin-bottom:50px;
		display:-webkit-box;
	  	display:-ms-flexbox;
	  	display:flex;
	  	-ms-flex-wrap: wrap;
	  	flex-wrap: wrap;
	  	-webkit-box-orient: vertical;
	  	-webkit-box-direction: reverse;
	  	-ms-flex-direction: column-reverse;
	  	flex-direction: column-reverse;
	}
	
	.h-section01 .intro .img{
		width:100%;
	}
	
	.h-section01 .intro .txt{
		position:relative;
		right:auto;
		bottom:auto;
		width:100%;
		padding:0 15px;
		margin-bottom:15px;
		background:transparent;
	}
	
	.h-section01 .intro:nth-child(even) .txt{
		left:auto;
		padding:0 15px;
	}
	
	.h-section01 .intro .txt h3{
		font-size:2rem;
		margin-bottom:0;
	}
	
	.h-section02 .about{
		-webkit-box-orient: vertical;
	  	-webkit-box-direction: normal;
	  	-ms-flex-direction: column;
	  	flex-direction: column;
	}
	
	.h-section02 .about > div{
		width:100%;
	}
	
	.h-section02 .about .company{
		padding:0 15px;
		margin-bottom:15px;
	}
	
	.h-section02 .about .company table th,
	.h-section02 .about .company table td{
		display:block;
		width:100%;
	}
	
	.h-section02 .about .company table th{
		padding-bottom:5px;
		font-weight:700;
	}
	
	.h-section03{
		padding:50px 15px;
	}
	
	.h-section03 table{
		width:100%;
		margin:0 auto;
	}
	
	.h-section03 table th,
	.h-section03 table td{
		display:block;
		width:100%;
	}
	
	.h-section03 table th{
		padding-bottom:5px;
	}
	
	/* gallery */

	.gallery .img{
		width:calc(100% / 3);
	}
	
	/* lightbox */
	
	.lightbox{
		width:90vw;
		left:5vw !important;
	}
	
	.lb-outerContainer{
		width:100% !important;
	}
	
	.lightbox .lb-image{
		max-width:100%;
		height:auto;
	}
	
	.lb-nav a.lb-prev{
		left:-6vw;
		width:5vw;
		background-size:contain;
	}
	
	.lb-nav a.lb-next{
		width:5vw;
		right:-6vw;
		background-size:contain;
	}

}

@media (max-width: 375px) {}

@media (max-width: 320px) {}