@charset "utf-8";

main {
	text-align: center;
}

.title_area {
	background: rgba(247, 203, 0, 0.95);
}

.title_area h1 {
	width:116vw;
	margin-left:-12vw;
	padding-top:4vw;
}

#lead .container,
#example .container,
#video_area .container,
#steps .container,
#cta_area {
	position: relative;
	padding:2em 0;
}

#lead .container > img {
	position: absolute;
	bottom:0;
	left:50%;
	width:56px;
	height:auto;
	margin-left:-164px;
}

#lead h2 {
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Sans", "ヒラギノ角ゴシック", "メイリオ", "Meiryo", "Osaka", "ＭＳ Ｐゴシック", "MS P Gothic", Helvetica, sans-serif;
	font-size:1.8em;
	font-weight:bold;
	line-height: 1.3;
}

#lead p {
	font-size:1.1em;
	margin-top:0.6em;
}

#example,
#steps {
	background: rgba(247, 203, 0, 0.8);
}

#example p.catch_copy {
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Sans", "ヒラギノ角ゴシック", "メイリオ", "Meiryo", "Osaka", "ＭＳ Ｐゴシック", "MS P Gothic", Helvetica, sans-serif;
	font-size: 1.15em;
    font-weight: bold;
    line-height: 1.4;
}

#example p.catch_copy strong {
	background: linear-gradient(transparent 30%, #ED9907 30%);
	font-weight: bold;
}

#example p.catch_copy + p {
	margin:0.8em 0;
}

#example p {
	font-size:1.1em;
}

#example p.note {
	font-size:1em;
	margin-top:1em;
}

#example ul {
	font-size: 0;
	text-align: center;
	max-width: 425px;
	margin: 0 auto;
}

#example ul li {
	display: inline-block;
	margin:10px;
}

#example ul li img {
	width:auto;
	max-width:100%;
	height:180px;
}

#example ul li:nth-child(3) img {
	width:405px;
	height:auto;
}

#example .container > img {
    position: absolute;
    bottom: 0;
    right: 50%;
    margin-right: -194px;
    width: 74px;
}

#video_area h2 {
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Sans", "ヒラギノ角ゴシック", "メイリオ", "Meiryo", "Osaka", "ＭＳ Ｐゴシック", "MS P Gothic", Helvetica, sans-serif;
	font-size: 1.4em;
    font-weight: bold;
    line-height: 1.3;
    margin-bottom:0.8em;
}

#video_area video {
	max-width: 100%;
	height:auto;
	margin:0 auto;
	pointer-events: auto;
}

.steps_title {
	position: relative;
}

.steps_title h2 {
	text-align: center;
	width:8em;
	margin:0 auto;
	padding-bottom:0.6em;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Sans", "ヒラギノ角ゴシック", "メイリオ", "Meiryo", "Osaka", "ＭＳ Ｐゴシック", "MS P Gothic", Helvetica, sans-serif;
	font-size: 2em;
    font-weight: bold;
    line-height: 1.2;
}

.steps_title h2 span {
	display: inline-block;
	position: relative;
	font-weight: bold;
	font-size:0.6em;
}

.steps_title h2 span:before {
	content:"";
	position:absolute;
	left:-1em;
	bottom:0;
	transform: rotate(-45deg);
	border-right:solid 2px #000;
	width:0;
	height:1em;
}

.steps_title h2 span:after {
	content:"";
	position:absolute;
	right:-1em;
	bottom:0;
	transform: rotate(45deg);
	border-left:solid 2px #000;
	width:0;
	height:1em;
}

.steps_title img {
	position: absolute;
	bottom:0;
	right:50%;
	margin-right: -166px;
    width: 54px;
}

#steps ul {
	display: inline-block;
}

#steps ul li {
	border-bottom:solid 2px #FFF;
	padding:1em 0;
	font-weight:bold;
	font-size:1.2em;
}

#steps ul li span {
	display: block;
	color:#FFF;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Sans", "ヒラギノ角ゴシック", "メイリオ", "Meiryo", "Osaka", "ＭＳ Ｐゴシック", "MS P Gothic", Helvetica, sans-serif;
	font-weight:bold;
	padding-bottom:0.55em;
	margin-bottom:0.2em;
	background: url('../images/3d_tofu/paint.svg') no-repeat center bottom;
	background-size:6em;
}

#steps ul li:first-child {
	border-top:solid 2px #FFF;
}

#cta_area p.cta_lead {
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Sans", "ヒラギノ角ゴシック", "メイリオ", "Meiryo", "Osaka", "ＭＳ Ｐゴシック", "MS P Gothic", Helvetica, sans-serif;
	font-weight:bold;
	font-size:1.4em;
	line-height: 1.3;
}

.cta {
	text-align: center;
	border:solid 4px #F7CB00;
	margin:1em auto 50px;
	width:90%;
	max-width: 480px;
	box-sizing: border-box;
}

.cta_l,
.cta_r {
	padding:1em;
}

.cta_l {
	background: #F7CB00;
}

.cta p.call {
	line-height: 1.0;
}

.cta p.tel_time {
	margin-bottom:1.5em;
}

.cta p.call a {
	color: #222;
	font-weight: bold;
	font-size: 1.8em;
	vertical-align: top;
}

.cta p.call a:hover {
	text-decoration:none;
}

.cta p.call a i {
	width: 1.2em;
	display: inline-block;
	vertical-align: top;
}

.cta p.call a i img {
	vertical-align: middle;
}

.cta p.btn {
	text-align: center;
	margin-top:0;
}

.cta p.btn a {
	display: inline-block;
	border:solid 2px #444;
	font-weight:bold;
	padding:0.5em 3em 0.5em 2em;
	position: relative;
	color:#FFF;
	letter-spacing: 0.08em;
	background: #444;
	border-radius:4px;
}

.cta p.btn a:hover {
	text-decoration: none;
}

.cta p.btn a:before {
	content:"";
	position: absolute;
	top:50%;
	right:16px;
	width:8px;
	height:8px;
	margin-top:-5px;
	border-right:solid 2px #FFF;
	border-top:solid 2px #FFF;
	transform: rotate(45deg);
}


@media screen and (min-width: 768px) {

.title_area h1 {
	width:120%;
	margin-left:-9%;
	padding-top:2em;
}

#lead .container > img {
	width:76px;
	margin-left:-364px;
}

#lead h2 {
	font-size:3.5em;
}

#lead .container,
#example .container,
#video_area .container,
#steps .container,
#cta_area {
	padding:4em 0;
}

#lead p {
	font-size:1.6em;
	font-weight:bold;
}

#example p.catch_copy {
	font-size: 2.3em;
}

#example p {
	font-size:1.5em;
	font-weight:bold;
}

#example ul {
	max-width: 580px;
}

#example ul li img {
	width:auto;
	max-width:none;
	height:170px;
}

#example ul li:nth-child(3) img {
	width:auto;
	height:170px;
}

#example p.note {
	font-size:1.1em;
	margin-top:2em;
}

#example .container > img {
	margin-right: -370px;
	width: 105px;
}

.steps_title h2 {
	font-size:3em;
}

.steps_title img {
	margin-right:-300px;
	width:97px;
}

#steps ul li {
	font-size:1.5em;
	padding:0.7em 0;
}

#cta_area p.cta_lead {
	font-size:2.4em;
}

.cta p.call a {
	font-size: 2.0;
}

.cta {
	max-width: 640px;
	padding:0;
	display: table;
	margin:1em auto 60px;
}

#business + .cta {
	margin:30px auto;
}

.cta_l {
	padding:0;
	display: table-cell;
	vertical-align: middle;
}

.cta_r {
	display: table-cell;
	vertical-align: middle;
	padding:3em 0;
}

}


@media screen and (min-width: 1000px) {

.title_area h1 {
	width:100%;
	max-width:1158px;
	height:360px;
	padding-top:0;
	margin-left:auto;
	position: relative;
}

.title_area h1 img {
	width:1158px;
	position: absolute;
	bottom:0;
	left:50%;
	margin-left:-579px;
}

#lead .container > img {
	margin-left:-490px;
	width:116px;
}

#lead p {
	font-size:2em;
}

#example p.catch_copy {
	font-size: 2.8em;
}

#example p {
	font-size:1.8em;
}

#example ul {
	max-width: none;
}

#example ul li img,
#example ul li:nth-child(3) img {
	width:auto;
	height:170px;
}

#example p.note {
	font-size:1.2em;
	margin-bottom:1em;
}

#video_area h2 {
	font-size:2em;
}

#steps ul li {
	font-size:1.8em;
}

}


@media screen and (min-width: 1200px) {

#example ul li img,
#example ul li:nth-child(3) img {
	width:auto;
	height:180px;
}

#example .container > img {
	margin-right: -400px;
}


}