
	
    .t24 { font-size: 20px; }
	
    .t24 { font-size: 20px; }
	
    .t24 { font-size: 20px; }@charset "UTF-8";
/* CSS Document */
	
/*Fonts*/
.thin { font-weight: 100; }
.light { font-weight: 300; }
.regular { font-weight: 400; }
.medium { font-weight: 500; }
.bold { font-weight: 700; }
.extrabold { font-weight: 800; }
.black { font-weight: 900; }

.font-oswald {
	font-family: 'Open Sans', sans-serif;
	font-family: 'Oswald', sans-serif;
}
.yu-min {
	font-family: "Yu Mincho Medium", "游明朝 Medium", "YuMincho", "游明朝体", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}
.yu-gt {
	font-family: "Yu Gothic Medium", "游ゴシック Medium", "YuGothic", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

/*----- 全体 -----*/
body {
	margin: 0;
	padding: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	background-color: #fff;
}
img {
	vertical-align: bottom;
	max-width: 100%;
	width /***/:auto; /*IE8用ハック*/
	border: 0;
}


/*---------------------
　ヘッダー
---------------------*/

.hd {
	display: table;
	position: relative;
	width: 100%;
	top: 0;
	height: 30px;
	margin: 0 auto;
	text-align: center;
	background-color: #000;
}
.hd:before {
	vertical-align: bottom;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(images/filter-dot_w.png);
	filter: alpha(opacity=30);
	-moz-opacity: 0.3;
	opacity: 0.3;
	background-size: auto;
}
.obi-rd {
	display: table;
	position: relative;
	width: 100%;
	top: 0;
	margin: 0 auto;
	text-align: center;
	background-color: #b41e28;
	box-shadow: 0 2px 2px rgba(54,46,43,0.6);
	height: 2px;
	z-index: -1;
}
.hdtxt {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-size: 11px;
	letter-spacing: 1px;
	font-weight: 500;
	color: #fff;
	font-feature-settings: "palt";
	clear: both;
	text-shadow: 1px 1px 4px #222;
	position: relative;
	width: 100%;
	margin: 0 auto;
	max-width: 1050px;
}
.hd-cnt {
	font-size: 10px;
	letter-spacing: 1.2px;
	vertical-align: middle;
	text-align: center;
	padding: 0.5em 0;
	display: none;
}
.hd-lft {
	position: absolute;
	left: 0;
	vertical-align: middle;
	text-align: left;
	padding: 0.5em 0 0.5em 0.2em;
	display: block;
}
.hd-rit {
	position: absolute;
	right: 0;
	vertical-align: middle;
	text-align: right;
	border-left: 1px solid #a0a0a0;
	border-right: 1px solid #a0a0a0;
	padding: 0.5em 1.25em 0.5em 1em;
	display: block;
}

.red {
	color: #b41e28;
	font-weight: bold;
}

a.hdlnk:link {
	text-decoration: none;
	color: #fff;
}

a.hdlnk:visited {
	color: #fff;
}

a.hdlnk:hover {
	text-decoration: underline;
}


/*---------------------
　メニュー
---------------------*/

.menu {
	width: 100%;
	height: auto;
	margin: 0 auto;
	position: relative;
	background: url(images/menu/menu1.jpg) center center repeat-x;
	background-size: auto;
	z-index: 1;
	max-width: 1050px;
	display: flex;
	justify-content: center;
}

.menu-obi {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	width: 100%;
	max-width: 1050px;
	top: 0;
	height: auto;
	margin: 0 auto;
	text-align: center;
	background-color: #000;
	box-shadow: 0 2px 6px rgba(54,46,43,0.6);
	z-index: 1;
}
.menu-non {
	display: table;
	position: relative;
	width: 100%;
	max-width: 1050px;
	top: 0;
	height: 18px;
	margin: 0 auto;
	text-align: center;
	background-color: #000;
	box-shadow: 0 2px 6px rgba(54,46,43,0.6);
	z-index: 3;
}
.menu-obi:before,.menu-non:before,.ft-menu-non:before {
	vertical-align: bottom;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(images/filter-dot_w.png);
	filter: alpha(opacity=30);
	-moz-opacity: 0.3;
	opacity: 0.3;
	background-size: auto;
	z-index: -1;
}
.menu-rd {
	position: relative;
	width: 100%;
	max-width: 1050px;
	top: 0;
	height: 2px;
	margin: 0 auto;
	text-align: center;
	background-color: #b41e28;
	z-index: 1;
}.obi-rd {
	display: table;
	position: relative;
	width: 100%;
	top: 0;
	margin: 0 auto;
	text-align: center;
	background-color: #b41e28;
	box-shadow: 0 2px 2px rgba(54,46,43,0.6);
	height: 2px;
	z-index: -1;
}

.menu-tag {
	width: 100%;
}

[class^="menu-flex-"] {
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	justify-content: center;
	align-items: flex-end;
	position: relative;
	width: 100%;
	max-width: 1050px;
	margin: 0 auto;
	background-color: #000;
	box-shadow: 0 2px 6px rgba(54,46,43,0.6);
	z-index: 1;
}
.menu-flex-4:before,.ft-menu:before {
	vertical-align: bottom;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(images/filter-dot_w.png);
	filter: alpha(opacity=30);
	-moz-opacity: 0.3;
	opacity: 0.3;
	background-size: auto;
	z-index: -1;
}

.menu-flex-4 > img,
.menu-flex-4 a { width: calc( auto / 4 ); height: calc( 100% / 4 ); border: none; }

/*---------------------
　コンテンツ
---------------------*/

.contents {
	display: table;
	position: relative;
	width: 100%;
	top: 0;
	margin: 0 auto;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	background-color: #fff;
	font-size: 16px;
	color: #666;
	line-height: 200%;
	letter-spacing: 1.8px;
	font-feature-settings: "palt";
	background: url(images/bg.jpg) center center repeat-y;
}
.center {
	width: 90%;
	height: auto;
	max-width: 950px;
	margin: 0 auto;
	text-align: center;
	position: relative;
	z-index: 100;
}

.txt {
	text-align: left;
}

.aisatsu-T {
	position: relative;
	margin: 1.75em auto;
	max-width: 950px;
	padding: 10px;
	text-align: left;
	background-color: #d9d9d9;
	z-index: -2;
}
.aisatsu-T:before,.infom:before,.infom-ft:before {
	vertical-align: bottom;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(images/filter-dot_w.png);
	background-size: auto;
	z-index: -1;
}
.aisatsu-lft {
	width: 20%;
	float: left;
	left: 0;
	top: 0;
	text-align: left;
}
.aisatsu-rit {
	margin-left: 22%;
	text-align: left;
}
.clearblock { clear: both; }

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

/*---------------------
　映像
---------------------*/

.eizou {
	display: inline-block;
	width: 640px;
	height: 360px;
	max-width: 100%;
	margin: 0 auto;
	box-shadow: 2px 1px 6px rgba(0,0,0,0.7);
	margin-bottom: 1em;
}

.ami {
	display: inline-block;
	position: relative;
	z-index: -10;
}
.ami:after {
	position: absolute;
	display: block;
	content: '';
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(images/filter-dot_w.png);
	background-size: auto;
	z-index: -9;
}

.youtube-box iframe {
	border: none;
}


/*---------------------
　ステップ
---------------------*/

.steps-waku {
	max-width: 950px;
	margin: 3em 0 6em;
	padding: 0.6em;
	background: url(images/filter-ami6x6_w.png);
	background-color: #d9d9d9;
	position: relative;
}
.inner {
	background: #fff;
	padding: 2em 0.75em;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
}
.inner-form {
	background: #fff;
	padding: 2em 0.75em;
}
.number {
	width: 18%;
	text-align: center;
}
.steps-T { margin-top: -0.5em; }
.steps-txt {
	width: 67%;
	text-align: left;
	font-size: 15px;
	line-height: 1.7;
	letter-spacing: 1.5px;
	font-feature-settings: "palt";
	padding: 0 1.5em;
}
.steps-3 {
	width: auto;
	padding: 0 0 0 0.7em;
}
.name {
	width: 15%;
	text-align: center;
	align-self: flex-end;
	margin-bottom: -1em;
	z-index: 2;
}
.coment {
	position: absolute;
	top: -3em;
	right: 4.5em;
}
.staff {
	margin: -6.5em -1em;
	z-index: 1;
}
.contact {
	background: url(images/step01-contact.png) center left no-repeat;
	margin-top: 1em;
	margin-bottom: -6em;
	margin-left: -0.6em;
	padding: 1em 3em;
	font-size: 14px;
	line-height: 1.5;
	letter-spacing: 1px;
	font-weight: bold;
}
.sample {
	width: 30%;
	text-align: center;
	margin: -5em 0 -1em 0;
	z-index: 1;
}
.steps-img { align-self:center; margin: -1em 0; }

.pc-space1 { margin-top: 7em; }
.pc-space2 { margin-top: -2em; }


/*---------------------
　フォーム
---------------------*/


.infom {
	position: relative;
	margin: 0 auto;
	max-width: 950px;
	height: auto;
	background-color: #d9d9d9;
	z-index: 0;
}
.infom-ft {
	display: table;
	position: relative;
	margin: 0 auto;
	max-width: 950px;
	background-color: #d9d9d9;
	z-index: 0;
    margin-bottom: 3em;
}
.infom-tel {
	display: table;
	position: relative;
	margin: 0 auto;
	max-width: 950px;
}
.infom-tel p {
    margin: -0.5em 0 0;
    padding-bottom: 1em;
    font-size: 0.95rem;
    letter-spacing: 1.2px;
    line-height: 1.7;
    text-shadow: 1px 1px 2px #ECECEC,-1px 1px 2px #ECECEC,1px -1px 2px #ECECEC,-1px -1px 2px #ECECEC;
}
.craftman {
	position: absolute;
	bottom: 0;
    margin-bottom: -3em;
}
.order {
	display: table;
	position: relative;
	margin: 0 auto;
	font-family: "Yu Gothic Medium", "游ゴシック Medium", "YuGothic", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	background-color: #fff;
	font-size: 16px;
	color: #000;
	line-height: 170%;
	letter-spacing: 1px;
	font-feature-settings: "palt";
	padding: 1em;
}
.tx14 {
	display: block;
	font-size: 14px;
	line-height: 140%;
	letter-spacing: 1px;
}
.bd {
	padding: 7px 0;
	background: url(images/bd.jpg) center repeat-x;
}
#content_order {
	display: table;
	table-layout: fixed;
	vertical-align: middle;
	width: 100%;
	margin: 0 auto;
	text-align: center;
	line-height: 160%;
}
.order-txtlft {
	text-align: left;
}
order-label {
	float: left;
	width: 24%;
	text-align: left;
	padding: 15px 10px;
}
order-input {
	display: table-cell;
	text-align: left;
	padding: 15px 0;
}


/*---------------------
　フッター
---------------------*/

.ft-gy {
	position: relative;
	width: 100%;
	max-width: 1050px;
	top: 0;
	height: 2px;
	margin: 0 auto 2px;
	text-align: center;
	background-color: #4d4d4d;
	z-index: 100;
}

.ft-menu {
	position: relative;
	width: 100%;
	max-width: 1050px;
	margin: 0 auto;
	background-color: #000;
	z-index: 1;
}
.ft-menu-non {
	display: table;
	position: relative;
	width: 100%;
	max-width: 1050px;
	top: 0;
	height: 16px;
	margin: 0 auto;
	text-align: center;
	background-color: #000;
	z-index: 3;
	margin-bottom: 0.25em;
}
.ft-child {
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	justify-content: flex-start;
	width: 100%;
	height: auto;
	max-width: 950px;
	margin: 0 auto;
	text-align: left;
	position: relative;
}
.ft-zip {
	width: 100%;
	height: auto;
	max-width: 950px;
	margin: 0 auto;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	flex-wrap: wrap;
    align-items: flex-end;
}

.zip-txt {
	flex-grow: auto;
	margin: 1em 0.8em;
	text-align: left;
	font-size: 14px;
	letter-spacing: 1px;
	line-height: 1.7;
}
.zip-txt p { font-size: 12px; margin: 1em 0 0 0; letter-spacing: 0.25px; }
.grow2 { flex-grow: 0; }
.grow3 { flex-grow: 4; }
.grow4 { flex-grow: 3; text-align: right; }

/*Other*/
.rd { color: #be141e; }/*赤*/
.underline { text-decoration: underline; }
.ind { padding-left:1em; text-indent: -0.75em; }

.bk13 { font-size: 13px;color: #000000;}
.gy13 { font-size: 13px;color: #666666;}
.rd13 { font-size: 13px;color: #be141e;}

.t20 { font-size: 20px; }
.t13 { font-size:13px; line-height:1.7; letter-spacing:1px; }

.br-pc { display: block; }
.br-sp { display: none; }

.fr { float: right; }

a img.css-hover{
opacity:1.0;
filter: alpha(opacity=100);
}
a:hover img.css-hover{
opacity:0.6;/*半透明度60%に設定*/
filter: alpha(opacity=60);/*半透明度60%に設定*/
}
a img{
border:none;
}

.none { display: none !important; }
.block { display: block !important; }
.inline { display: inline !important; }
.ib { display: inline-block !important; }


/*---------------------
　レスポンシブ
---------------------*/

@media only screen and (min-width:376px) and (max-width:960px) {
/*tablet用のcssを記述*/
	.hd-cnt {display: none!important;}
	.hdtxt {
		font-size: 10px;
		padding-top: 0.2em;
	}
	.hd-lft {
		padding-left: 1em;
		letter-spacing: 0.25px;
	}
	.hd-rit {
		border-right: none;
		padding-left: 0.5em;
		padding-right: 0.75em;
	}
	.menu-flex-4 > img,
	.menu-flex-4 a { width: calc( 100%/ 4 ); height: calc( 100% / 4 ); border: none; }
	.staff { position: absolute; width: 15%; right: 0}
	.coment { right: 3.25em; }
	.name { align-self: center; }
	.contact {
		background: none;
		margin: 1em 0 -1.5em;
		padding: 0.8em 1.5em;
		font-size: 14px;
		line-height: 1.7;
		letter-spacing: 1px;
		font-weight: bold;
		position: relative;
	}
	.contact::after {
		position: absolute;
		top: 0.5em;
		left: 0.1em;
		content: '';
		width: 7px;
		height: -webkit-calc(100% - 1em);
		height: calc(100% - 1em);
		background-color: #b41e28;
	}
	.sample { align-self:flex-end; margin-left:-1em; }
	.steps-img { align-self:flex-end; margin-bottom:0;}
    .steps-3 { padding: 0; }
	.pc-space1 { margin-top: -1.25em; }
	.pc-space2 { margin-top: -2em; }
	order-label {
    	float: none;
    	width: 100%;
		box-sizing: border-box;
		display: block;
		padding: 0;
		margin-top: 10px;
	}
	order-input {
		padding-bottom: 10px;
		margin-top: 10px;
		margin: 0 auto;
		display: block;
	}
	input[type="text"] {
		padding: 6px!important;
		margin: 0 !important;
		font-size: inherit !important;
	}
	#Userkana,#Usermail,#Usertel,#Userzip,#Userfree8,#Userfree11,#Userfree12 {
		width: auto;
		max-width: 90%;
	}
	#Userfree1,#Userfree14,#Userfree3,#Userfree4,#Userfree5,#Userfree6,#Userfree7,#Userfree9,#Userfree10 {
		font-size: 14px !important;
	}
	.ft-child { width:100%; height:auto; }
	.zip-txt, .infom-tel p { font-size: 11px; letter-spacing: 0.8px; }
	.zip-txt p { font-size: 9px; letter-spacing: 0.25px; }
	.zip-txt p { margin: 1em 0 0 0; }
	.menu-non { height: 12px; }
	.ft-menu-non { height: 10px; margin-bottom: 0; }
    
    .infom-ft { margin-bottom: 1.5em;}
    .craftman { margin-bottom: -1.5em;}
    
    .tb-ib { display: inline-block !important; }
    .tb-none { display: none !important; }
}

@media screen and (max-width:570px) {
	.contents,.order,.tx14,.bk13,.rd13,.gy13 {
		font-size: 85%;
		letter-spacing: 1.2px;
		line-height: 1.8;
	}
	.aisatsu-T {
		margin: 0.75em auto;
		padding: 6px;
	}
	.aisatsu-lft {
		width: 36%;
		float: left;
		left: 0;
		top: 0;
		text-align: left;
	}
	.aisatsu-rit {
		margin-left: 43%;
		width: 48%;
		text-align: left;
	}
	.sp-clear {
		clear: both;
		width: 100%!important;
		margin: 0!important;
		margin-left: 0!important;
		padding: 1em 0;
	}
	.img-resize img {
		width: 38%;
	}
	.menu-flex-4 > img,
	.menu-flex-4 a { width: calc( 100%/ 4 ); height: calc( 100% / 4 ); border: none; }
	.name,.coment,.staff,.steps-img { display: none; }
	.inner {
		display: inline-block;
		padding: 2em 0.25em;
	}
	.number {
        display: block;
        padding:0 1.2em;
    }
	.steps-waku {
		margin: 0.5em 0 1.5em;
	}
    .steps-T { display: block; }
	.steps-txt { width:auto; font-size:100%; padding: 0 0.8em; }
	.contact {
		background: none;
		margin: 1em 0 -1.5em;
		padding: 0.8em 1.5em;
		font-size: 14px;
		line-height: 1.7;
		letter-spacing: 1px;
		font-weight: bold;
		position: relative;
	}
	.contact::after {
		position: absolute;
		top: 0.5em;
		left: 0.1em;
		content: '';
		width: 7px;
		height: -webkit-calc(100% - 1em);
		height: calc(100% - 1em);
		background-color: #b41e28;
	}
	.sample {
		position: absolute;
		top: 0;
		right: 1em;
		margin-top: -3em;
	}
	order-label {
    	float: none;
    	width: 100%;
		box-sizing: border-box;
		display: block;
		padding: 0;
		margin-top: 10px;
	}
	order-input {
		padding: 0;
		margin-top: 10px;
		display: block;
	}
	input[type="text"] {
		padding: 6px!important;
		margin: 0 !important;
		font-size: inherit !important;
	}
	#Userkana,#Usermail,#Usertel,#Userzip,#Userfree8,#Userfree11,#Userfree12 {
		width: auto;
		max-width: 90%;
	}
	#Userfree1,#Userfree14,#Userfree3,#Userfree4,#Userfree5,#Userfree6,#Userfree7,#Userfree9,#Userfree10 {
		font-size: 12px !important;
	}
	.submit input {
		width: 60%;
		margin: -1em 0 1em;
	}
	.ft-child { width:100%; height:auto; }
	.zip-txt,.zip-txt p, .infom-tel p { font-size: 9px; letter-spacing: 0.8px; }
	.zip-txt p { margin: 0.5em 0 0 0; }
    .zip-txt.grow4 { display: block!important; }
	.ft-zip img { max-width: 40%;}
	.menu-non { height: 8px; }
	.ft-gy { height: 1px; }
	.ft-menu-non { height: 8px; margin-bottom: 0; }
    .infom-tel p { line-height: 1.5;}
	
	.t20 { font-size: 100%; }
    
    .tbs-ib { display: inline-block !important; }
    .tbs-none { display: none !important; }
}


@media screen and (max-width:375px) {
/*スマホ用のcssを記述*/
	.hd { height: 26px; }
	.hdtxt {
		font-size: 10px;
		letter-spacing: 0.25px;
	}
	.hd-cnt { display: block!important; }
	.hd-lft { display: none!important; }
	.hd-rit { display: none!important; }
	.menu-flex-4 {
		margin-top: -1%;
	}
	.front {
		position: relative;
		z-index: 2;
	}
	.eizou {
		width: 100%;
		max-height: 360px;
		height: auto;
	}
	.sample { margin-top: -2em; }
	.br-pc { display: none; }
	.br-sp { display: block; }
	.zip-txt p,.zip-txt.grow4 { display: block!important; text-align: center; margin: 0.5em; letter-spacing:0.25px;}
    
    .smt-ib { display: inline-block !important; }
    .smt-none { display: none !important; }
    
    .bnr-link img { width: 90%; }
}