@charset "utf-8";
/* CSS Document */


@font-face{
	font-family: 'Noto Sans CJK JP';
	font-style:normal;
	font-weight:400;
	src:
	local("Noto Sans CJK JP"),
	url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.woff2) format('woff2'),
	url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.woff) format('woff'),
	url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.otf) format('opentype');
}

html{
	font-size:62.5%;
}

body{
	font-family:'Montserrat','Noto Sans CJK JP', sans-serif;
	font-size:1.6rem;
	font-color:#181818;
	z-index: 50;
	font-feature-settings: "palt";
	letter-spacing: 0.05em;
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing:grayscale;
}
a{
	text-decoration: none;
	color:#181818;
}
img{
	max-width:100%;
	height:auto;
}

/*--------------------
utlity
--------------------*/
.br_sp{
	display: none;
}
.img_sp{
	display: none;
}
.text_sp{
	display: none;
}
.wrapper{
	max-width: 1140px;
	margin: 0 auto;
	padding: 0;
}
.capital{
	text-transform: uppercase;
}

/*--------------------
navigation
--------------------*/
.navigation{
	position:fixed;
	top:20px;
	z-index: 100;
	padding: 20px 0 100px 20px;
}
.nav_contents{
	position: absolute;
	display: flex;
	background: rgba(255,255,255,0.00);
	
}
.nav_list{
	cursor: pointer;
	padding: 0 50px;
}
.nav_list:hover{
	font-color: #fff;
	background-color: #d77a26;
	transition:0.2s;
}
.boreder{
	border-right:solid 1px #181818;
	
}
/*--------------------
header
--------------------*/	
.title{
	padding: 0px 60px 120px;
}
.title_main{
	font-size:7.2rem;
	font-weight:600;
	padding:100px 0 60px;
}
.title_sub{
	font-size:1.8rem;
	color: #d77a26;
}

/*--------------------
section
--------------------*/
.section{
	padding-top: 40px;
	padding-bottom: 80px;
}
.section_title{
	font-size:3rem;
	font-weight:600;
	padding-bottom: 40px;
}

/*--------------------
works
--------------------*/
.works{
	display:flex;
	flex-wrap:wrap;
	overflow:hidden;
	justify-content: space-between;
}
.works_item{
	position:relative;
	width:30%;
	height:auto;
	margin-bottom: 30px;
}
.works_item_b{
	
	position:relative;
	width: 30%;
	height:auto;
	background-color: #181818;
	margin-bottom: 30px;
}
.works_item_center{
	position:absolute;
	top: 50%;
	left: 33%;
	color:#fff;
}
.works_text{
	opacity:0;
	position:absolute;
	left:20px;	
	bottom: 20px;
}
.works_title{
	display: block;
	font-size:2rem;
}
.cover{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity:0;
	background-color: #d77a26;
}
.works_item:hover .works_text{
	opacity:1;
	transition:0.2s;
}
.works_item:hover .cover{
	opacity:0.5;
	transition:0.2s;
}

/*--------------------
profile
--------------------*/
.profile_bg{
	display: block;
	background-color: #e3e2df;
}
.date_item{
	display:flex;
	padding-bottom: 15px;
	align-items: center;
}
.profile_item{
	display:flex;
	margin-bottom: 30px;
	align-items: center;
}
.profile_title{
	font-size:1.8rem;
	width: 98px;
	text-align:left;
	padding-left: 98px;
}
.date{
	margin: 30px 0 15px 0;
}

/*--------------------
sample
--------------------*/
.sample_wrapper{
	display: none;
	position: fixed;
	top: 0;
	bottom: 0;
	left: 50%;
	transform: translate(-50%,0);
	width: 80%;
	height: auto;
	z-index: 110;
	overflow-y: auto;
	background-color: #e3e2df;
	-ms-overflow-style: none;    /* IE, Edge 対応 */
        scrollbar-width: none;       /* Firefox 対応 */
    }
.sample_wrapper::-webkit-scrollbar {  /* Chrome, Safari 対応 */
        display:none;
}
.sample_contents{
	display: none;
	margin: 0 60px;
	
}
.sample_title{
	display: block;
	font-size:4rem;
	font-weight:600;
	padding: 80px 0 20px;
}
.sample_category{
	display: block;
	font-size:2rem;
	padding-bottom: 20px;
}
.sample_text{
	font-size:1.4rem;
	padding-bottom: 40px;
	line-height: 2.4rem;
}

.close{
	display: block;
	cursor: pointer;
	margin: 20px 0 0 auto;
	width: 20px;
}

/*--kashiwaya--*/
.kashiwaya_column{
	display:flex;
	flex-wrap:wrap;
	overflow:hidden;
	justify-content: space-between;
	max-height: 1700px;
	padding-bottom: 80px;
}
.ka_inner{
	flex-direction: column;
	flex-wrap: nowrap;
	align-content: stretch;
	width: 48%;	
}
.kashiwaya_info_pc{
	font-size:1.4rem;
	padding-bottom: 80px;
}
.kashiwaya_img_new{
	width: 48%;
}
/*--bridal--*/
.bridal_img{
	width: 80%;
	height: auto;
	margin: 0 auto 80px;
}

/*--sns--*/
.sns_flex{
	display:flex;
	flex-wrap:wrap;
	overflow:hidden;
	margin: 0 auto;
	justify-content: space-around;
	width: 80%;
}
.sns_imgA{
	margin-bottom: 20px;
}
.sns_imgB{
	margin-bottom: 20px;
}

.sns_info{
	text-align: center;
	margin-bottom: 40px;
}
.sns_img{
	max-width: 80%;
	height: auto;
	text-align: center;
	margin: 0 auto 20px;
}
.sns_info2{
	text-align: center;
	margin-bottom: 80px;
}

/*--logo--*/
.logo_column{
	display:flex;
	flex-wrap:wrap;
	overflow:hidden;
	max-height: 690px;
	justify-content: flex-end;
}
.logo_img_w{
	width:65%;
	padding-right: 5%;
	padding-bottom: 5%;
}
.logo_inner{
	flex-direction: column;
	flex-wrap: nowrap;
	align-content: stretch;
	width: 30%;
}
.logo_img_sub:first-of-type{
}

.logo_img_wide{
	width: 100%;
	text-align: right;
	clear: left;
	padding-bottom: 80px;
}
/*--------------------
footer
--------------------*/
.footer{
	background-color: #181818;
	height:auto;
	width: 100%;
}
.copy{
	display: block;
	padding: 20px 0 20px 98px;
	color:#fff;
	font-size:1.4rem;
}



@media screen and (max-width:640px){
body{
	font-size:1.3rem;
}
.wrapper{
	widt: 100%;
	margin: 0 auto;
	padding: 0 20px;
}
.br_sp{
	display: block;
}
.img_sp{
	display: block;
}
.text_sp{
	display: block;
	}
.img_pc{
	display: none;
}
.text_pc{
	display: none;
}
/*--------------------
navigation
--------------------*/
.navigation{
	width: 100%;
	top:0px;
	margin: 0 auto;
	height: 44px;
	padding: 0;
	background-color: #d77a26;
}
.nav_contents{
	align-items: center;
	width: 100%;
}
.nav_list{
	font-size:1.1rem;
	color: #fff;
	margin: auto;
}
.boreder{
	display: block;
	height: 44px;
}

/*--------------------
header
--------------------*/	
.title{
	padding: 60px 0;
}
.title_main{
	font-size:5rem;
	font-weight:600;
	padding:60px 0 30px;
}
.title_sub{
	font-size:1.8rem;
	color: #d77a26;
	padding-bottom: 30px;
}
	
/*--------------------
profile
--------------------*/
.profile_bg{
	display: block;
	background-color: #e3e2df;
}
.date_item{
	display:flex;
	padding-bottom: 15px;
	align-items: baseline;
	height: 1.8rem;
}
.profile_item{
	display:flex;
	align-items: baseline;
	height: 1.8rem;
}
.profile_title{
	font-size:1.3rem;
	text-align:left;
	padding: 0;
}
.date{
	margin: 20px 0;
}

/*--------------------
section
--------------------*/
.section{
	padding-top: 50px;
	padding-bottom: 60px;
}
.section_title{
	text-align: center;
	font-size:2.5rem;
	font-weight:600;
	padding-bottom: 30px;
}

/*--------------------
works
--------------------*/
.works{
	display: block;
	margin: 0 auto;
}
.works_item{
	width: 70%;
	position:relative;
	margin:0 auto 20px;
}
.works_text{
	position:absolute;
	left:10px;	
	bottom: 10px;
	opacity: 1;
	color:#fff;
}
.works_title{
	display: block;
	font-size:1.6rem;
}
.works_info{
	font-size:1.1rem;
	font-weight: 600;
}
.cover{
	position: absolute;
	top: auto;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 25%;
	background-color: #d77a26;
	opacity: 1;
}

/*--------------------
sample
--------------------*/
.sample_wrapper{
	top: 10px;
	width: 90%;
    }
.sample_contents{
	margin: 0 20px;
}
.sample_title{
	padding: 20px 0 5px;
}
.sample_category{
	font-size: 1.8rem;
	padding-bottom: 20px;
}
.sample_text{
	font-size:1.1rem;
	padding-bottom: 20px;
	line-height: 2rem;
}

.close{
	display: block;
	cursor: pointer;
	margin: 0px 0 0 auto;
	width: 44px;
}
	.sample_info{
		padding: 0 0 20px;
		text-align: center;
	}
/*--kashiwaya--*/
.kashiwaya_column{
	display:block;
	max-height: auto;
	padding-bottom: 20px;
}
.ka_inner{
	width: 100%;	
	margin: 0 auto;
}
.kashiwaya_img{
	padding-bottom: 20px;
}
.kashiwaya_img_new{
	width: 100%;
}/*--bridal--*/
.bridal_img{
	width: 100%;
	margin: 0 auto 20px;
}
/*--sns--*/
.sns_flex{
	display:block;
	margin: 0 auto;
	width: 80%;
}
.sns_imgA{
	display: block;
	margin: 0 auto 20px;
	width: 80%;
}
.sns_imgB{
	display: block;
	margin: 0 auto 20px;
	width: 80%;
}

.sns_info{
	margin: 0;
}
.sns_info2{
	margin: 0;
}

/*--logo--*/
.logo_column{
	height: 100%;
}
.logo_img_w{
	padding-right: 10%;
	padding-bottom: 10%;
}
.logo_img_wide{
	padding-bottom: 20px;
}
/*--------------------
footer
--------------------*/
	.footer{
		height: auto;
	}
.copy{
	width: 100%;
	padding:10px 0 10px 20px;
	font-size:1.1rem;
}
}
