@charset "utf-8";

*{
	margin: 0;
	padding: 0;
}

/* ▼ common*/

body{
	font-family: 'Helvetica','Arial','Candara','Lato','Noto Sans JP','Hiragino Sans','Hiragino Kaku Gothic ProN','sans-serif','Open Sans';
	width: 100%;
	letter-spacing: 0.1em;
    line-height: 1.5em;
	height: auto;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	font-size: 14px;
	color: #00000;
	font-weight: lighter;
    background-color: #f4f4f4;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
}

h1,h2,h3{
    text-decoration: none;
    font-size: normal;
}

h2{
    margin-bottom: 1em;
}

li{
    list-style: none;
}

a {
	text-decoration: none;
	color: #000;
	font-weight: bold;
}
a:hover {
    transition:all 0.6s;
    opacity: 0.7;
}

main i{
    padding-left: 0.5em;
}

/* ▲ common*/

/* ▼ header*/

header{
    z-index: 1500;
    position: absolute;
    top:0;
}
.header_nav{
    display: block !important;
    width: 100%;
    height: 80px;
    box-sizing: border-box;
    background-color: rgba(255,255,255, 0.8);
    position: fixed;
    box-shadow: 0 25px 30px -30px rgba(49, 49, 49, 0.8);
}
.header_nav li:nth-of-type(n+2){
    padding: 0 3em;
}
.header_nav li:nth-of-type(2){
    padding-left: 10em;
}
.header_menu{
    display:flex;
    align-items: center;
}
.header_nav a:hover{
    opacity: 0.7;
}
.header_nav i{
    padding-left: 0.5em;
}
.header_nav img{
    max-height: 80px;
}

.sp_menu{
    display: none !important;
}

/* ▲ header*/

/* ▼ mainvisual*/

.main_visual{
    width: 100%;
    height: 100vh;
    overflow: hidden;
    max-height: 1080px;
    position: relative;
    margin-bottom: 10em;
}

.main_visual img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.main_visual span{
    font-family: 'Yu Mincho Light','YuMincho','Yu Mincho','游明朝体','ヒラギノ明朝 ProN','Hiragino Mincho ProN','Cambria','Georgia',sans-serif;
    position: absolute;
    top:50%;
    left: 50%;
    transform: translate(-0%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    color: #fff;
    text-align: center;
}
.main_visual p:first-of-type{
    font-size: 220%;
    margin-bottom: 0.5em;
    font-weight: bold;
}

/* ▲ mainvisual*/

/* ▼ top_about*/
.top_about{
    position: relative;
    margin-bottom: 10em;
}
.top_about picture img{
    max-width: 70%;
}
.top_about span{
    display: inline-block;
    background-color: rgba(255,255,255,0.8);
    padding: 5em 3.5em;
    width: 55%;
    box-sizing: border-box;
    position: absolute;
    right: 0;
    top:20%;
}

.top_about p{
    margin-bottom: 2em;
}

/* ▲ top_about*/

/* ▼ top_products*/

.top_products{
    text-align: center;
    margin-bottom: 6em;
}
.top_products p{
    margin-bottom: 2em;
}
.top_products_details{
    display: flex;
    justify-content: space-between;
    width: 80%;
    margin: 0 auto 3em auto;
}
.top_products_details span{
    display: inline-block;
    width:32%;
    background-color: #fff;
}
.top_products_details span img{
    width: 100%;
    height: auto;
}
.top_products_details span h4{
    font-size: 120%;
    padding: 0.8em 0;
}
.top_products_details span p{
    padding: 0 1em;
}

/* ▲ top_products*/

/* ▼ top_online_shop*/

.top_online_shop{
    width: 90%;
    background-color: rgba(105, 61, 255, 0.3);
    margin: 0 auto 10em auto;
    padding: 5em 5em;
    box-sizing: border-box;
    text-align: center;
    color: #fff;
}
.top_online_shop p{
    margin-bottom: 3em;
}
.top_online_shop a{
    border: 2px solid #6849d3;;
    padding: 1em 3em;
    border-radius: 0.3em;
    color: #6849d3;;
}
.top_online_shop a:hover{
    color: #fff;
    background-color: #6849d3;
}






/* ▲ top_online_shop*/

top_about
.fadein{
    opacity : 0;
    transform : translate(0, 100px);
    transition:all 1.2s;
	display: block;
}
.fadein.scrollin {
    opacity : 1;
    transform : translate(0, 0);
}

.fadein_about{
    opacity : 0;
    transform : translate(0, 60px);
    transition:all 1.2s;
	display: block;
}
.fadein_about.about_scrollin {
    opacity : 1;
    transform : translate(0, 0);
}


.fadein_works{
    opacity : 0;
    transform : translate(0, 60px);
    transition:all 1.7s;
	display: block;
}
.fadein_works.works_scrollin {
    opacity : 1;
    transform : translate(0, 0);
}


.fadein_gallery{
    opacity : 0;
    transform : translate(0, 60px);
    transition:all 2.2s;
	display: block;
}
.fadein_gallery.gallery_scrollin {
    opacity : 1;
    transform : translate(0, 0);
}
/* ▲ fadein animation */





/* ▼ footer*/
footer {
	box-sizing: border-box;
    width: 100%;
	background-color: #FFF;
	padding: 10vw;
	color: #000;
	text-align: right;
    border-top: 1px solid #cfcfcf;
}

.footer_cap{
	margin-bottom: 3em;
}


/* ▼ ready.html*/

.ready{
    width: 80%;
    background-color: #fff;
    margin: 20em auto;
    padding: 10em 2em;
}

.ready h1{
    margin-bottom: 2em;
}

.ready p:first-of-type{
    margin-bottom: 2em;
}