@charset "UTF-8";
/* ロゴアニメーション */
#top .top_logo .ani_logo, #top .top_logo .txt_logo {
	opacity: 0;
}
#top .top_logo .fuwa {
	-webkit-animation: fuwa 1.0s ease-in-out forwards;
	animation: fuwa 1.0s ease-in-out forwards;
	opacity: 1;
}
@-webkit-keyframes fuwa {
 0% {
-webkit-transform: scale(0.0)
}
 50% {
-webkit-transform: scale(1.1)
}
 80% {
-webkit-transform: scale(0.95)
}
 100% {
-webkit-transform: scale(1.0)
}
}
 @-webkit-keyframes ani_1 {
 0% {
-webkit-transform: rotate(10deg)
}
 100% {
-webkit-transform: rotate(-20deg)
}
}
 @-webkit-keyframes ani_2 {
 0% {
-webkit-transform: rotate(-10deg)
}
 100% {
-webkit-transform: rotate(20deg)
}
}
 @-webkit-keyframes ani_3 {
 0% {
-webkit-transform: translateX(-10px)
}
 100% {
-webkit-transform: translateX(20px)
}
}
@-webkit-keyframes ani_4 {
 0% {
-webkit-transform: translateX(-30px)
}
 100% {
-webkit-transform: translateX(10px)
}
}
@-webkit-keyframes ani_5 {
 0% {
-webkit-transform: translateY(-10px)
}
 100% {
-webkit-transform: translateY(0px)
}
}
@keyframes fuwa {
 0% {
transform: scale(0.0)
}
 50% {
transform: scale(1.1)
}
 80% {
transform: scale(0.95)
}
 100% {
transform: scale(1.0)
}
}
/**/

#top .top_logo .logo1_ani {
	-webkit-animation: rotate-anime1 24s linear infinite;
	animation: rotate-anime1 24s linear infinite;
}
@-webkit-keyframes rotate-anime1 {
 0% {
-webkit-transform: rotate(0);
}
 100% {
-webkit-transform: rotate(360deg);
}
}
@keyframes rotate-anime1 {
 0% {
transform: rotate(0);
}
 100% {
transform: rotate(360deg);
}
}
#top .top_logo .logo2_ani {
	-webkit-animation: rotate-anime2 24s linear infinite;
	animation: rotate-anime2 24s linear infinite;
}
@-webkit-keyframes rotate-anime2 {
 0% {
-webkit-transform: rotate(0);
}
 100% {
-webkit-transform: rotate(-360deg);
}
}
@keyframes rotate-anime2 {
 0% {
transform: rotate(0);
}
 100% {
transform: rotate(-360deg);
}
}
#top .top_logo .logo3_ani {
	-webkit-animation: rotate-anime3 24s linear infinite;
	animation: rotate-anime3 24s linear infinite;
}
@-webkit-keyframes rotate-anime3 {
 0% {
-webkit-transform: rotate(0);
}
 100% {
-webkit-transform: rotate(360deg);
}
}
@keyframes rotate-anime3 {
 0% {
transform: rotate(0);
}
 100% {
transform: rotate(360deg);
}
}
#top .top_logo .logo4_ani {
	-webkit-animation: rotate-anime4 4s ease-in-out infinite;
	animation: rotate-anime4 4s ease-in-out infinite;
}
@-webkit-keyframes rotate-anime4 {
 0% {
-webkit-transform: scale(1)
}
 40% {
-webkit-transform: scale(1)
}
 46% {
-webkit-transform: scale(0.9)
}
 48% {
-webkit-transform: scale(1.1)
}
 50% {
-webkit-transform: scale(1)
}
 100% {
-webkit-transform: scale(1)
}
}
@keyframes rotate-anime4 {
 0% {
transform: scale(1)
}
 40% {
transform: scale(1)
}
 46% {
transform: scale(0.9)
}
 48% {
transform: scale(1.1)
}
 50% {
transform: scale(1)
}
 100% {
transform: scale(1)
}
}
/* スクロールアテンション */
#top .icon_scroll {
	position: absolute;
	left: 50%;
	bottom: 80px;
	margin-left: -11px;
}
#top .icon_scroll span {
	position: absolute;
	top: 0;
	left: 50%;
	width: 22px;
	height: 22px;
	margin-left: -11px;
	border-left: 3px solid #fdcc58;
	border-bottom: 3px solid #fdcc58;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	-webkit-animation: sdb 2s infinite;
	animation: sdb 2s infinite;
	box-sizing: border-box;
}
@-webkit-keyframes sdb {
 0% {
 -webkit-transform: rotate(-45deg) translate(0, 0);
}
 20% {
 -webkit-transform: rotate(-45deg) translate(-10px, 10px);
}
 40% {
 -webkit-transform: rotate(-45deg) translate(0, 0);
}
}
@keyframes sdb {
 0% {
 transform: rotate(-45deg) translate(0, 0);
}
 20% {
 transform: rotate(-45deg) translate(-10px, 10px);
}
 40% {
 transform: rotate(-45deg) translate(0, 0);
}
}










/* 750px以下 スマホ向け
--------------------------------------------------------------------------------- */
@media screen and (max-width: 750px) {
/* ------------------------------------------------------------------
01 top
------------------------------------------------------------------ */
#top {
	text-align: centere;
	position: relative;
	box-sizing: border-box;
}
#top .top_logo {
	position: absolute;
	left: 0%;
	top: 50%;
	transform: translate(0%, -50%);
}
#top .top_logo .box_ani {
	position: relative;
	margin: 0 auto;
	width: 50%;
	display: inline-block;
	left: 50%;
	transform: translateX(-50%);
}
#top .top_logo .ani_logo {
	position: absolute;
	left: 0;
	top: 0;
}
#top .top_logo .txt_logo {
	margin-top: 30px;
	box-sizing: border-box;
	padding: 0 20px;
}
/* ------------------------------------------------------------------
02 profile
------------------------------------------------------------------ */
#profile {
}
#profile .box_l {
	text-align: center;
	margin: 0 auto 40px;
}
#profile .box_l img {
	width: 50%;
}
#profile .box_r {
}
#profile .box_r div{
	margin-bottom:10px;
	line-height:1.4;
	}
#profile .box_r div br{
	display:none;
	}
#profile .box_r div strong{
	font-weight:bold;
	color:#f73e3e;
	}
/* ------------------------------------------------------------------
03 work
------------------------------------------------------------------ */
#work {
	padding: 10px 0 0;
}
#work .block {
	width: 100%;
	padding: 65px 0 60px;
	margin: 0;
	background-color: rgba(255,255,255,0.8);
}
#work .lead {
	margin: 0 20px 40px;
}
#work h2.h2{
	margin:0 20px 30px;
	text-align:center;
	font-size:16px;
	border:solid 1px #000000;
	padding:8px 0;
	}
#work .ul_work {
	margin: 0 20px 40px;
}
#work .ul_work li {
	float: left;
	display: inline;
	margin: 0 0 20px 0;
	width : -webkit-calc(50% - 10px) ;
	width : calc(50% - 10px) ;
	border: solid 1px #eee;
	box-sizing: border-box;
}
#work .ul_work li:nth-of-type(2n) {
	margin-right: 0;
	float: right;
}
#work .ul_work li a {
	display: block;
	position: relative;
}
#work .ul_work li a img {
	width: 100%;
	position: relative;
	z-index: 2;
}
#work .ul_work li {
}


#work .ul_work li .ph{
	position:relative;
	background-color:#ffffff;
	opacity:1!important;
	}
#work .ul_work li a .ph div{
	font-size:11px;
	line-height:1.4;
	position:absolute;
	left:0;
	right:0;
	bottom:8px;
	background-color:#f73e3e;
	border-radius:4px;
	padding:4px 0;
	margin:auto;
	text-align:center;
	z-index:5;
	color:#ffffff;
	width:60%;
	border:solid 2px #ffffff;
	}
/**/
#work .ul_logo{
	margin:0 20px;
	}
#work .ul_logo li{
	display:inline;
	float:left;
	width : -webkit-calc(50% - 10px) ;
	width : calc(50% - 10px) ;
	border:solid 1px #cccccc;
	margin:0 0 20px 0;
	box-sizing:border-box;
	}
#work .ul_logo li:nth-of-type(2n){
	float:right;	
}
#work .ul_logo li:nth-of-type(2n+1){
	clear:both;
}
/* ------------------------------------------------------------------
04 price
------------------------------------------------------------------ */
#price {
}
#price h2.h2{
	margin:0 0 30px;
	text-align:center;
	font-size:16px;
	border:solid 1px #000000;
	padding:8px 15px;
	}
#price .price_txt{
	margin-bottom:30px;
	}
#price .price_txt strong{
	color:#f73e3e;
	}
	
#price .price_div{
	text-align:center;	
	}
#price .box_need {
	margin-top: 30px;
	padding: 20px;
	background-color: #fff;
}
#price .box_need .h_need {
	font-weight: bold;
	margin-bottom: 30px;
}
#price .box_need table {
	border-collapse: collapse;
	font-size: 14px;
	box-sizing: border-box;
	width: 100%;
}
#price .box_need table th, #price .box_need table td {
	padding: 13px;
	font-size: 100%;
	border: solid 1px #222222;
	display: block;
}
#price .box_need table th {
	text-align: center;
}
/* ------------------------------------------------------------------
05 faq
------------------------------------------------------------------ */
#faq {
}
#faq .box_faq {
}
#faq .box_faq .box {
	margin: 0 0 30px 0;
	box-sizing: border-box;
	padding: 6px;
	background: url(../img/new/bg_faq.jpg) center;
	border-radius: 6px;
}
#faq .box_faq .box .box_bg {
	background-color: #fff;
	padding: 20px 20px 20px;
	border-radius: 6px;
}
#faq .box_faq .box .txt_q {
	font-weight: bold;
	margin-bottom: 20px;
	padding-bottom: 10px;
	border-bottom: solid 3px #fdcc58;
}
#faq .box_faq .box .txt_a {
}
/* ------------------------------------------------------------------
06 contact
------------------------------------------------------------------ */
#contact {
}
#contact .btn_contact {
	margin: 50px auto 0;
	border:solid 2px #fdcc58;
	border-radius: 6px;
	width:284px;
}
#contact .btn_contact a {
	text-align: center;
	background: url(../img/new/bg_faq.jpg) center top repeat-y;
	padding: 20px 0;
	width: 280px;
	margin: 0 auto;
	color: #222222;
	border-radius: 6px;
	text-shadow: 1px 1px #ffffff;
	display: block;
	text-decoration: none;
	border:solid 2px #ffffff;
	font-weight:bold;
}



}









/* 751px以上 PC向け
--------------------------------------------------------------------------------- */
@media print, screen and (min-width: 751px) {
/* ------------------------------------------------------------------
01 top
------------------------------------------------------------------ */
#top {
	text-align: centere;
	position: relative;
	box-sizing: border-box;
}
#top .top_logo {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
}
#top .top_logo .box_ani {
	position: relative;
	margin: 0 auto;
	display: inline-block;
	left: 50%;
	transform: translateX(-50%);
}
#top .top_logo .ani_logo {
	position: absolute;
	left: 0;
	top: 0;
}
#top .top_logo .txt_logo {
	margin-top: 40px;
	width: 470px;
}
#top .top_logo .txt_logo img {
	width: 100%;
	height: auto;
}
/* ------------------------------------------------------------------
02 profile
------------------------------------------------------------------ */
#profile {
}
#profile .box_l {
	text-align: center;
	width: 280px;
}
#profile .box_r {
	width: 650px;
}
#profile .box_r div{
	margin-bottom:23px;
	line-height:1.4;
	}
#profile .box_r div strong{
	font-weight:bold;
	color:#f73e3e;
	}
/* ------------------------------------------------------------------
03 work
------------------------------------------------------------------ */
#work {
	padding: 10px 0 0;
}
#work .block {
	width: 100%;
	padding: 110px 0 100px;
	background-color: rgba(255,255,255,0.8);
}
#work h2.h2{
	margin:0 auto 50px;
	text-align:center;
	font-size:24px;
	border:solid 1px #000000;
	padding:10px 15px;
	width:380px;
	}
#work .ul_work {
	width: 960px;
	margin: 0 auto 30px;
}
#work .ul_work li {
	float: left;
	display: inline;
	margin: 0 00px 60px 0;
	width: 450px;
	border: solid 1px #eee;
}
#work .ul_work li:nth-of-type(2n) {
	float: right;
}
	#work .ul_work li:nth-of-type(2n+1) {
	clear: both;
}
#work .ul_work li a {
	display: block;
	position: relative;
	
}
#work .ul_work li a:hover{
	opacity:1;
	}
#work .ul_work li a img {
	width: 100%;
	position: relative;
	z-index: 2;
	transition: .3s;
}
#work .ul_work li a:hover img{
	opacity:0.7;	
	}

#work .ul_work li .ph{
	position:relative;
	background-color:#ffffff;
	opacity:1!important;
	}
#work .ul_work li a .ph div{
	font-size:14px;
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	top:0;
	height:20px;
	background-color:#f73e3e;
	border-radius:4px;
	padding:7px 0;
	margin:auto;
	text-align:center;
	z-index:5;
	color:#ffffff;
	width:60%;
	transition: .3s;
	opacity:0;
	border:solid 2px #ffffff;
	}
#work .ul_work li a:hover .ph div{
	opacity:1;
	}
/*#work .ul_work li a::after {
	position: absolute;
	bottom: 20px;
	right: 55px;
	z-index: 0;
	content: '';
	width: 50%;
	height: 100px;
	box-shadow: 100px 0 10px 15px rgba(0,0,0,.3);
	-webkit-transform: skew(-40deg);
	transform: skew(-40deg);
}*/
/**/
#work .ul_logo{
	width:990px;
	width:960px;
	margin:0 auto;
	}
#work .ul_logo li{
	display:inline;
	float:left;
	width:217px;
	width:174px;
	width:168px;
	margin:0 30px 30px 0;
	}
#work .ul_logo li:nth-of-type(5n){
	margin-right:0;}
#work .ul_logo li:nth-of-type(5n+1){
	clear:both;
	}
#work .ul_logo li img{
	width:100%;
	height:auto;
	border:solid 1px #cccccc;
	border-radius:4px;
	}
#work .ul_logo li span{
	display:block;
	text-align:center;
	margin-top:10px;
	font-size:13px;
	}
/* ------------------------------------------------------------------
04 price
------------------------------------------------------------------ */
#price {
}
#price h2.h2{
	margin:0 auto 30px;
	text-align:center;
	font-size:24px;
	border:solid 1px #000000;
	padding:10px 15px;
	}
#price .price_txt{
	margin-bottom:30px;
	}
#price .price_txt strong{
	color:#f73e3e;
	}
#price .price_div{
	text-align:center;
	margin-bottom:30px;
	
	}
#price .box_need {
	margin-top: 40px;
	padding: 40px;
	/*background-color: rgba(255,255,255,0.8);*/
	background-color: #fff;
}
#price .box_need .h_need {
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 30px;
}
#price .box_need table {
	border-collapse: collapse;
	font-size: 14px;
	box-sizing: border-box;
	width: 100%;
}
#price .box_need table th, #price .box_need table td {
	padding: 14px;
	font-size: 100%;
	border: solid 1px #222222;
}
#price .box_need table th {
	text-align: left;
	vertical-align: middle;
	white-space: nowrap;
}
/* ------------------------------------------------------------------
05 faq
------------------------------------------------------------------ */
#faq {
}
#faq .box_faq {
}
#faq .box_faq .box {
	margin: 0 0 40px 0;
	box-sizing: border-box;
	padding: 6px;
	background: url(../img/new/bg_faq.jpg) center;
	border-radius: 6px;
}
#faq .box_faq .box .box_bg {
	background-color: #fff;
	padding: 30px;
	border-radius: 6px;
}
#faq .box_faq .box .txt_q {
	font-weight: bold;
	margin-bottom: 20px;
	padding-bottom: 10px;
	border-bottom: solid 3px #fdcc58;
}
#faq .box_faq .box .txt_a {
}
/* ------------------------------------------------------------------
06 contact
------------------------------------------------------------------ */
#contact {
}
#contact .btn_contact {
	margin: 50px auto 0;
	border:solid 2px #fdcc58;
	border-radius: 6px;
	width:324px;
}
#contact .btn_contact a {
	text-align: center;
	background: url(../img/new/bg_faq.jpg) center top repeat-y;
	padding: 20px 0;
	width: 320px;
	margin: 0 auto;
	color: #ffffff;
	color:#222222;
	border-radius: 6px;
	text-shadow: 1px 1px #ffffff;
	font-weight:bold;
	display: block;
	border:solid 2px #ffffff;
}
}
/* ------------------------------------------------------------------
制作の流れ
------------------------------------------------------------------ */
.flow {
	width: 960px;
	margin: 0 auto;
}
.flow .box {
	width: 960px;
	margin: 0 auto 30px;
	padding-bottom: 30px;
	border-bottom: dashed 1px #000000;
}
