@charset "utf-8";

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	outline: 0;
	font-size: 1em;
	font-weight: normal;
}

html {
  box-sizing: border-box;
}

*,*:before,*:after {
  box-sizing: inherit;
}

body {
	font-family: Avenir, Helvetica, Arial, Verdana, "游ゴシック", Yu Gothic, YuGothic, "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	line-height: 1;
	font-size: 13px;
}

article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
	display: block;
}

ul {
	list-style: none;
}

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

img {
	font-size: 0;
	line-height: 0;
	vertical-align: top;
}

em {
	font-style: normal;
	font-weight: bold;
}

.f_right {
	float: right;
}
.f_left {
	float: left;
}

.w100 {
	width: 100%;
}

.bold {
	font-weight: bold;
}

.clearfix:after {
	content: '';
	clear: both;
	display: block;
}

.t_right {
	text-align: right;
}

.t_left {
	text-align: left;
}

a {
	background: transparent;
	font-size: 100%;
	margin: 0;
	padding: 0;
	text-decoration: none;
	vertical-align: baseline;
}

a.under {
	text-decoration: underline;
}

/* ===================================
	ヘッダー
------------------------------------*/
.header_logo {
	margin: 7px auto;
	width: 42px;
}

.header_nav {
}

.header_nav li {
	float: left;
	width: 25%;
	text-align: center;
	border-right: 1px solid #6c6c6c;
}

.header_nav li:last-child {
	border-right: none;
}

.header_nav li a {
	display: block;
	padding: 18px 0;
	width: 100%;
	background: #292929;
	color: #fff;
	font-family: 'Cormorant', serif;
}

/* ===================================
	メイン画像
------------------------------------*/
.main_img_wrap {
	position: relative;
	width: 100%;
	height: 100%;
	padding: 81% 0 0;
	overflow: hidden;
}

.main_img_wrap_underpage {
	position: relative;
	width: 100%;
	height: 100%;
	padding: 52% 0 0;
	overflow: hidden;
}

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

.main_img_wrap img,
.main_img_wrap_underpage img {
	position: absolute;
	top:0;
	left: 0;
	width: 100%;
	animation: scale 1.5s ease-in-out 0s 1 normal;
}

@-webkit-keyframes scale {
    0% {-webkit-transform:scale(1.05); opacity: 0;}
    100% {-webkit-transform:scale(1); opacity: 1}
}

@keyframes scale {
    0% {transform:scale(1.05); opacity: 0}
    100% {transform:scale(1); opacity: 1}
}


/* ===================================
	コンテンツ
------------------------------------*/
.life_like_img {
	margin: 28px 0 27px;
}

.life_like_txt {
	margin: 20px;
	line-height: 1.8em;
}

.service_wrap {
	margin: 57px 0 0;
	padding: 10px 0;
	background: url(../img/atelier/service_back.jpg) center center no-repeat;
	background-size: cover;
}

.service_inner {
	position: relative;
	display: block;
	margin: 10px 0;
	background: #fff;
	color: #000;
}

.service_inner_img {
	width: 50%;
}

.service_inner_txt {
	position: absolute;
	width: 50%;
	text-align: center;
}

.service_inner_right {
	top: 50%;
	right: 0;
	-webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.service_inner_left {
	top: 50%;
	left: 0;
	-webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.service_inner_txt h2 {
	margin-bottom: 10px;
	font-size: 10px;
}

.service_inner_txt h2 span {
	display: block;
	margin-bottom: 4px;
	font-size: 24px;
	font-family: 'Cormorant', serif;
}

.service_inner_txt > img {
	width: 60px;
}

/* ===================================
	下層ページ
------------------------------------*/
.page_title {
	margin: 38px 0;
	text-align: center;
	font-size: 11px;
}

.page_title span {
	display: block;
	margin-bottom: 8px;
	font-family: 'Cormorant', serif;
	font-size: 30px;
}

.visagist_wrap {
	padding: 0 20px 63px;
}

.visagist_inner {
	display: flex;
}
.visagist_wrap:nth-child(even) .visagist_inner  {
	flex-direction: row-reverse;
}
.visagist_wrap:nth-child(even) .visagist_detail {
	text-align: right;
}

.visagist_detail {
	display: table-cell;
	width: 50%;
	padding: 5px;
	vertical-align: bottom;
}

.visagist_detail h3 {
	margin: 0 0 6px;
	padding: 0 0 6px;
	font-size: 22px;
	border-bottom: 1px solid #b8b8b8;
}

.visagist_detail h3 span {
	display: block;
	margin-bottom: 4px;
	font-size: 11px;
}
.roma {
	font-family: 'Cormorant', serif;
	font-size: 11px;
	color: #979797;
	letter-spacing: 0.1em;
}

.visagist_instagram {
	display: inline-block;
	margin: 30px 0 0 0;
	padding: 8px 0 8px 28px;
	background: url(../img/atelier/visagist/instagram_mark.png) left center no-repeat;
	background-size: 25px 25px;
	color: #000;
	font-size: 10px;
	text-decoration: underline;
}

.visagist_ph {
	display: table-cell;
	width: 50%;
}

.visagist_txt {
	margin: 28px 0 0;
	line-height: 2;
	text-align: justify;
}

.menu_area {
	padding: 0 20px;
}

.menu_area h3 {
	margin: 0 0 20px;
	padding: 9px 0;
	border-top: 3px double #b8b8b8;
	border-bottom: 3px double #b8b8b8;
	text-align: center;
	font-size: 13px;
	font-weight: normal;
	line-height: 1;
}

.menu_area h3 span {
	display: block;
	margin-top: 4px;
	font-size: 11px;
}

.menu_area dl {
	margin-bottom: 60px;
	line-height: 1.8;
}

.menu_area dt {
	padding-left: 1em;
	text-indent: -1em;
}

.menu_area dd {
	margin-bottom: 10px;
	text-align: right;
}

.map_area {
	width: 100%;
	height: 330px;
}

.map_txt {
	margin: 20px 20px 60px;
	line-height: 2;
}


/* ===================================
	ドロワーメニュー
------------------------------------*/
.drawermenu_logo {
	display: block;
	padding: 36px 0;
	width: 100%;
}

.drawermenu li a {
	position: relative;
	display: block;
	padding: 20px 10px;
	border-top: 1px solid #e5e5e5;
	color: #fff;
	background: #343434;
}

.drawermenu li a.imp {
	color: #879f61;
}

.drawermenu li ul li a {
	padding: 20px 10px 20px 40px;
	color: #585858;
	border-top: 1px dotted #e5e5e5;
	background: #fff;
}

.drawermenu li a:after {
	position: absolute;
  top: 50%;
  right: 5.3%;
  width: 8px;
  height: 8px;
  content: '';
  margin-top: -4px;
  border-top: solid 1px #aeaeae;
  border-right: solid 1px #aeaeae;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

footer {
	position: relative;
	display: block;
	padding: 0 0 70px;
}

.footer_logo_area {
	margin: 48px 0 23px;
	text-align: center;
	font-size: 11px;
}

.footer_logo_area dt img {
	display: block;
	width: 77%;
	margin: 0 auto 18px;
}

.sns_btn_area {
	margin: 0 auto 48px;
	text-align: center;
}

	.sns_btn_area li {
		display: inline-block;
		width: 55px;
		margin: 0 6px;
	}

#topback {
	background: #353535;
	text-align: center;
}

#topback img {
	padding: 20px 0;
	width: 25px;
}

.footer_nav {
	background: #fff;
	border-top: 1px solid #c5c5c5;
	font-family: 'Roboto', sans-serif;
}

.footer_nav li {
	float: left;
	width: 50%;
	border-right: 1px solid #c5c5c5;
	border-bottom: 1px solid #c5c5c5;
}

.footer_nav li:nth-child(2n) {
	border-right: none;
}

.footer_nav li a {
	display: block;
	width: 100%;
	padding: 24px 10px;
	color: #000;
	font-size: 13px;
}

.shoplist_area {
	padding: 10px 5px 0;
	background: #f8f8f8;
}

.shoplist_area li {
	float: left;
	width: 50%;
	padding: 0 5px 10px;
}

.shoplist_area li img {
	width: 100%;
}

small {
	display: block;
	padding: 12px 0;
	text-align: center;
	font-size: 10px;
	color: #535c5c;
	font-family: 'Roboto', sans-serif;
}


/* ===================================
	フッター固定
------------------------------------*/
.footer_btn {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 61px;
	z-index: 300;
	background: #d3b894;
	box-shadow: 0 0 8px 4px rgba(0,0,0,0.2);
}

.footer_btn li {
	float: left;
}

.footer_btn li a {
	display: block;
	padding: 13px 0;
	text-align: center;
}

.footer_btn li img {
	height: 35px;
}

.footer_btn_tel {
	width: 16%;
}

.footer_btn_menu {
	width: 16%;
}

.footer_btn_menu button {
	width: 100%;
	height: 100%;
	border: none;
	cursor: pointer;
	background: none;
	padding: 13px 0;
	background: #e8dac6;
}

button {
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	-webkit-box-shadow: none;
	box-shadow: none;
	outline: none;
}

.footer_res {
	width: 33%;
	border-left: 1px solid #e8dac6;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
}
.footer_res a {
	color: #fff;
}
.footer_online {
	width: 16%;
	background: #000;
}
.pc-only {
	display: none;
}
.pc-nav {
	display: none;
}
.atelier-bot-nav {
	display: none;
}

@media (min-width:1024px){
	.footer_btn {
		display: none;
	}
	.pc-none {
		display: none;
	}
	.pc-only {
		display: block;
	}
	.header_nav {
		display: flex;
		justify-content: center;
	}
	.header_nav li {
		width: auto;
		border: none;
	}
	.header_nav li a {
		display: inline-block;
		padding: 0 2em;
		background-color: transparent;
		color: #000;

	}
	.header_logo {
		width: 84px;
		margin: 22px auto;
	}
	nav {
		padding: 15px 0;
	}
	.main_img_wrap {
		height: 590px;
		padding: 0;
	}
	.main_img_inner {
		top: 50%;
		transform: translateY(-50%);
	}
	.main_img_wrap img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.life_like_img {
		max-width: 700px;
		margin: 5vw auto;
	}
	.life_like_txt {
		display: none;
	}
	.footer_logo_area dt img {
		max-width: 350px;
	}
	.footer_nav, #topback, .shoplist_area {
		display: none;
	}
	.service_wrap {
		background: none;
	}
	.service_inner {
		margin: 26px 0;
		position: relative;
	}
	.service_inner:first-child::before {
		position: absolute;
		top: 58%;
		left: 58%;
		content: '';
		width: 42%;
		height: 1px;
		background-color: #b8b7b7;
	}
	.service_inner:last-child::before {
		position: absolute;
		top: 58%;
		right: 58%;
		content: '';
		width: 42%;
		height: 1px;
		background-color: #b8b7b7;
	}
	.service_inner .service_inner_img {
		width: 53%;
	}
	.service_inner_txt {
		width: 42%;
		text-align: left;
	}
	.service_inner_txt > img {
		display: none;
	}
	.service_inner_txt h2 {
		display: inline-block;
		text-align: center;
		font-size: 13px;
	}
	.service_inner_txt h2 span {
		display: block;
		width: auto;
		margin-bottom: 8px;
		font-family: 'Cormorant', serif;
		font-weight: 500;
		font-size: 38px;
	}
	.service_inner:last-child .service_inner_txt {
		text-align: right;
	}
	footer {
		margin-top: 10vw;
	}
	.footer_link {
		padding: 72px 0;
		background: url(../img//atelier/header_back.jpg) center center;
		background-size: cover;
	}
	
	.footer_link ul {
		width: 1000px;
		margin: auto;
	}
	
	.footer_link li {
		float: left;
		margin-right: 35px;
		background: #fff;
	}
	
	.footer_link li a:hover {
		opacity: 0.6;
	}
	
	.footer_link li:last-child {
		margin-right: 0;
	}
	
	.atelier-bot-nav {
		margin: 15px 0;
		text-align: center;
		font-size: 12px;
		display: block;
	}
	
	.atelier-bot-nav li {
		display: inline-block;
		border-right: 1px solid #e9e9e9;
	}
	
	.atelier-bot-nav li:last-child {
		border-right: none;
	}
	
	.atelier-bot-nav li a {
		margin: 0 10px;
		padding: 0 10px;
		color: #000;
	}
	
	.atelier-bot-nav li span {
		display: block;
		margin: 0 10px;
		padding: 0 10px;
		color: #000;
	}
	
	.atelier-bot-nav li a:hover {
		opacity: 0.6;
	}
	.sns_btn_area {
		margin-bottom: 5vw;
	}
	.main_img_wrap_underpage {
		height: 440px;
		padding: 0;
	}
	.main_img_wrap_underpage img {
		height: 100%;
		width: 100%;
		object-fit: cover;
	}
	.visagist_wrap {
		width: 1000px;
		margin: 4vw auto;
		padding: 0;
		position: relative;
	}
	.page_title {
		margin: 70px 0;
		text-align: center;
		font-size: 13px;
		font-weight: normal;
	}
	.page_title span {
		display: block;
		margin-bottom: 8px;
		font-family: 'Cormorant', serif;
		font-weight: 500;
		font-size: 42px;
	}
	.visagist_ph {
		width: 33%;
		height: 450px;
	}
	.visagist_ph img { 
		height: 100%;
		object-fit: cover;
	}
	.visagist_detail {
		width: 450px;
		margin: 134px 46px 0;
	}
	.visagist_detail .visagist_name_right {
		margin: 0 0 20px -72px;
		padding: 0 0 8px 72px;
	}
	.visagist_detail h3 {
		display: inline-block;
		font-size: 24px;
		font-weight: 500;
		border-bottom: 1px solid #b8b8b8;
	}
	.visagist_txt {
		position: absolute;
		right: 12%;
		bottom: 0;
		width: 50%;
	}
	.visagist_wrap:nth-child(even) .visagist_txt {
		position: absolute;
		left: 12%;
		bottom: 0;
		width: 50%;
	}
	.menu_area {
		max-width: 600px;
		margin: auto;
	}
	.menu_area dl {
		display: flex;
		flex-wrap: wrap;
	}
	.menu_area dt {
		width: 50%;
		margin-top: 1em;
	}
	.menu_area dd {
		width: 50%;
		margin-top: 1em;
		flex-shrink: 0;
	}
	.menu_area h3 {
		padding: 23px 0;
		font-size: 16px;
		line-height: 1em;
	}
	.map-wrap {
		display: flex;
		justify-content: space-between;
		max-width: 1000px;
		margin: 0 auto 140px;
	}
	.map_area {
		width: 65%;
		height: 430px;
	}
	.map_txt {
		width: 31%;
		margin: 14px 0 0;
	}
}
	
