@charset "utf-8";

.wf-sawarabimincho { font-family: "Sawarabi Mincho", serif; }

html,body{
    width: 100%;
}
@font-face {
font-family: 'Open Sans';
font-style: normal;
font-weight: 400;
src: local('Open Sans'), local('OpenSans'),
url(https://themes.googleusercontent.com/static/fonts/opensans/v8/cJZKeOuBrn4kERxqtaUH3T8E0i7KZn-EPnyo3HZu7kw.woff)
format('woff');
}



img {
	max-width: 100%!important;
}

body{
color:#666;
	font-family:'Open Sans', "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", Verdana, sans-serif;
	font-size:95%;
	
}


a {
	color:#333;
	outline: none;
	text-decoration: none;
	
}

a:hover{
	color: #4eb890;
	text-decoration: underline;
}

img{
max-width: 100%;
height: auto;
width /***/:auto;
}


input, select, textarea {
    padding: 5px;
	border: 1px solid #ccc;

}

input,
textarea{
}
input[type=radio], input[type=checkbox] {
	margin:0 5px 0 0;
	width: auto;
}



.width100{
	width:100%;
}

.wrap{

}

.block{
	display: block;
}

.onlysp{
	display: none;
}
.none{
	display:none;
}

/*ヘッダー
------------------------------------------------*/

.header {
	max-width: 1000px;
	margin: 0 auto;
	padding: 25px 0;
}
.logo_sp {
	display: none;
}
.logo_sub {
	padding-left: 6%;
}

.info_box dd p {
	color: #ff5925;
	font-weight: bold;
	padding-left: 3%;
}

.nav_pc {
	position: fixed;
	right: 0;
	padding-top: 25px;
	text-align: right;
	z-index: 1000;
}

.nav_sp {
	display: none;
}

/*ナビゲーション
----------------------------------------------*/

.nav_pc {
	width: 20%;
	max-width: 217px;
}

.nav_pc li {
	margin-bottom: .5vw;
}

.nav_pc a {
	height: 0;
}


.menu-icon,
.menu-icon+.gnavi{
	display: none;
}

/*共通レイアウト
------------------------------------------------*/

section {
	padding: 60px 0;
}

.container {
	width: 90%;
	max-width: 1000px;
	margin: 0 auto;
}

/*コンテンツ
-------------------------------------------------*/

/**mainvisual**/
.mainvisual {
	background: #ccc;
	background-image: url(../img/mv_bg.png);
	background-size: cover;
	background-repeat: no-repeat;
	max-height: 781px;
	padding-top: 39.93%;
	position: relative;
}

.mv_txt {
	width: 90%;
	max-width: 1000px;
	padding-top: 1.847vw;
	margin: 0 auto;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
}

.mv_txt img {
	height: 25vw;
	max-height: 464px;
}

/**content01**/
.content01 {
	text-align: center;
}


/**content02**/
.content02 {
	background-image: url(../img/cont02_bg.png);
	background-size: cover;
	position: relative;
	z-index: -10;
}
.content02::after {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: linear-gradient(top,#fff 0%,transparent 15%,transparent 65%,#fff 100%);
	background: -webkit-linear-gradient(top,#fff 0%,transparent 15%,transparent 65%,#fff 100%);
	background: -moz-linear-gradient(top,#fff 0%,transparent 15%,transparent 65%,#fff 100%);
	background: -ms-linear-gradient(top,#fff 0%,transparent 15%,transparent 65%,#fff 100%);
	background: -o-linear-gradient(top,#fff 0%,transparent 15%,transparent 65%,#fff 100%);
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}

.content02 .container {
	z-index: 1;
	position: relative;
}

.content02 h1 {
	margin-bottom: 10px;
}

.tv_about {
	margin-left: -8%;
}
.tv_img {
	z-index: 10;
}


.tv_box:nth-of-type(2) .tv_about {
	margin-left: 0;
	margin-right: -9%;
}

.tv_box:nth-of-type(2) {
	margin-bottom: 1em;
}


.media_box {
	padding: 2em 8% 0;
}

.media_head {
	border-bottom: 1px solid #4d4d4d;
}

.media:first-of-type {
	width: 67%;
}
.media:nth-of-type(2) {
	width: 29%;
}

.media:first-of-type .media_cont dl:last-of-type {
	padding-left: 5%;
}

.media_head {
	padding: 0 5px;
	font-size: 120%;
}

.media_cont dt,
.media_cont dd {
	padding: 5px;
	font-size: 85%;
}
.media_cont h4 {
	font-weight: normal;
}
.media_cont dd {
	padding-top: 0;
	line-height: 1.6;
}
.media_cont dl> dd:first-of-type {
	margin-bottom: 1em;
}


/**content03**/
.works_head {
	margin-bottom: 3.5em;
}

.works_title {
	padding-left: 2%;
}
.works_title h1 {
	color: #ff5925;
	font-size: 270%;
}
.works_title p {
	margin-top: .5em;
	padding-left: 1em;
	line-height: 1.6;
}
.content03 section {
	padding-bottom: 0;
}

.content03 section {
	padding-top: 0;
	padding-bottom: 60px;
}


.works_midashi {
	background-image: url(../img/works_header.png);
	background-size: 100% auto;
	background-repeat: no-repeat;
	max-height: 109px;
	padding-top: 5.4%;
	text-align: center;
	color: #ffff7e;
	font-size: 200%;
	position: relative;
	margin-bottom: 1.5em;
}
.content03 section:nth-of-type(even) .works_midashi {
	background-image: url(../img/works_header02.png);
}

.works_midashi span {
	position: absolute;
	top: 1vw;
	left: 0;
	right: 0;
	margin: auto;
}

.works_contents {
	padding: 40px 0 20px;
}
.works_contents li {
	margin-bottom: 40px;
}
#works01 h2 {
	color: #ff5925;
	font-size: 150%;
}

.works_about {
  	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding: 1.6em 0 3em;
}

.works_txt {
	width: 65%;
	line-height: 1.6;
}

.works_txt p {
	margin-bottom: 1em;
}

.works_img {
	width: 33%;
	max-width: 321px;
}

.works_infoBox {
	padding: 40px 4%;
	background: #ffebe8;
	border-radius: 15px;
	-moz-border-radius: 15px;
	-webkit-border-radius: 15px;
	-o-border-radius: 15px;
	-ms-border-radius: 15px;	
}

.works_info {
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
  	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
}

.works_info dt {
	background-color: #ffbca8;
	width: 12%;
	text-align: center;
	padding: 1em;
}
.works_info dd {
	width: 88%;
	padding: 1em 0 1em 1em;
}

.works_info dt,.works_info dd {
	background-image: url(../img/dott.png);
	background-repeat: repeat-x;
	background-position: left bottom;
}

.works_info dt:first-of-type {
	border-radius: 6px 6px 0 0 ;
	-moz-border-radius: 6px 6px 0 0 ;
	-webkit-border-radius: 6px 6px 0 0 ;
	-o-border-radius: 6px 6px 0 0 ;
	-ms-border-radius: 6px 6px 0 0 ;	
}
.works_info dt:last-of-type {
	border-radius: 0 0 6px 6px;
	-moz-border-radius: 0 0 6px 6px;
	-webkit-border-radius: 0 0 6px 6px;
	-o-border-radius: 0 0 6px 6px;
	-ms-border-radius: 0 0 6px 6px;	
}

.works_info dt:last-of-type,
.works_info dd:last-of-type {
	background-image: none;
}

.works_info dt:nth-of-type(2) {
	padding-top: 1.5em;
}

.works_info dt:nth-of-type(3) {
	padding-top: 8%;
}
.works_info ol {
	list-style: none;
	padding: 0;
}

.works_info li:last-of-type {
	padding-bottom: 0;
}

#works02 .works_info dt:nth-of-type(3),
#works05 .works_info dt:nth-of-type(3) {
	padding-top: 9%;
}
#works03 .works_info dt:nth-of-type(3),
#works04 .works_info dt:nth-of-type(3) {
	padding-top: 6%;
}
#works05 .works_info dt:nth-of-type(2) {
	padding-top: 5%;
}
.price {
	font-weight: bold;
	color: #ff5925;
	font-size: 130%;
}

.works_infoL {
	width: 60%;
}
.works_infoR {
	width: 40%;
}

.works_infoBox+p,.banner {
	text-align: center;
	padding:3.3em 2% 1.3em;
}

.color_orange {
	color: #ff5925;
	font-weight: bold;
}


/**content04**/

.content04 {
	background-image: url(../img/voice_bg.png);
	background-size: 100% auto;
	background-repeat: no-repeat;
}
.cont_head {
	text-align: center;
	margin-bottom: 4em;
}
.voice_title {
	font-size: 250%;
	text-align: center;
	color: #ff5925;
}

.voice_box {
	padding: 3.3em 0 5.5em;
}

.voice_box::after {
	display: block;
	content: "";
	clear: both;
}
.cont_L {
	float: left;
	width: 48%;
}

.cont_R {
	float: right;
	width: 48%;
}

h2.voice_title {
	font-size: 150%;
	text-align: left;
	margin-bottom: 1em;
}

.voice_box dd {
	line-height: 1.8;
}

/**content05**/

.content05 {
	background-image: url(../img/merit_bg.png);
	background-size: cover;
	background-repeat: repeat-y;
}

.merit_box {
	padding: 1.6em 0;
}

.merit_box::after {
	display: block;
	content: "";
	clear: both;
}

.merit_img.cont_R {
	text-align: right;
}
.merit_cont {
	padding-right: 5%;
}
.cont_L.merit_cont {
	padding-right: 0;
	padding-left: 5%;
}

 .merit_num {
	margin-left: -1.7em;
}
.merit_cont dt {
	font-size: 160%;
	font-weight: bold;
}

.merit_cont dt strong {
	font-size: 180%;
	color: #ff5925;
}

.merit_contImg {
	padding-top: 1.6em;
	text-align: center;
}

.merit_contSp {
	display: none;
}

/**content06**/

.content06 {
	padding-bottom: 7.5em;
}

.content06 h1 {
	margin-bottom: 1em;
}

.form_wrap {
	border: 1px solid #5a5a5a;
	padding: 4em 0;
}

.form_box {
	width: 90%;
	max-width: 800px;
	margin: 0 auto;
	text-align: left;
}
.form_box h2 {
	margin-bottom: 1em;
}
.form_box h2+p {
	margin-bottom: 3em;
}

.form_box dt {
	color: #4d4d4d;
	font-weight: bold;
	margin-bottom: .5em;
}
.form_box dd {
	margin-bottom: 3em;
}

.form_box input,textarea {
	width: 100%;
	padding: 8px 1%;
}
textarea {
	height: 9em;
}
.form_box .clrred,.linkbtn01 {
	color: #fff;
	padding: 2px 1%;
	background: #ff801e;
	font-weight: bold;
	margin-left: 1em;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-o-border-radius: 5px;
	-ms-border-radius: 5px;	
}

.linkbtn01 {
	border: 2px solid #ff801e;
	cursor: pointer;
	outline: none;
	appearance: none;
	font-size: 120%;
	padding: .3em 3% .2em;
	margin-left: 0;
}
.linkbtn01:hover {
	background: #fff;
	color: #ff801e;
}

@media all and (-ms-high-contrast: none) {
	.tv_box{
		max-width: 100%;
	}

}
/*フッター
------------------------------------------------*/

.foot_wrap {
	border-top: 1px solid #999;
	border-bottom: 1px solid #999;
}

.footer {
	max-width: 1000px;
	margin: 0 auto;
	padding: 25px 0;
}

.gotop{
	max-width: 1100px;
	margin: 0 auto 1em;
	text-align: right;
}

.copyright{
    text-align: center;
    padding: 10px;
    font-size: 80%;
}



/*コンテンツ
------------------------------------------------*/


/*********************************/
/* PC用のスタイル記述ここから */
/*********************************/
/*@media print, screen and (min-width: 769px) {*/
@media print, screen and (min-width: 641px) {}

/*********************************/
/* タブレット用のスタイル記述 */
/*********************************/
@media screen and (max-width: 1100px) {
	.header {
		padding: 25px 5%;
	}
	.logo_box {
		display: none;
	}
	.logo_sp {
		display: block;
	}
	.info_box {
		text-align: right;
	}
	.info_box dd {
		display: block;
	}
	.works_midashi {
		font-size: 180%;
	}
	.works_midashi span {
		top: .1vw;
	}
}
@media screen and (max-width: 820px) {
	.works_midashi {	
	font-size: 150%;
	}
	}
/*********************************/
/* スマートフォン用のスタイル記述 */
/*********************************/
@media screen and (max-width: 640px) {


/*ヘッダー
------------------------------------------------*/
	
	header {
		position: fixed;
		top: 0;
		left: 0;
		background: rgba(250,250,250,1);
		z-index: 10000;
		width: 100%;
		padding: 10px 0 0;
	}
	.header {
		padding: 0;
	}
	.info_box {
		display: none;
	}
	.logo_sp {
		width: 100%;
		padding: 0 5% 10px;
	}
	
	
/*ナビゲーション
------------------------------------------------*/
	.nav_pc {
		display: none;
	}
	.menu-icon{
		display: block;
		position: absolute;
		top: 10px;
		right: 2vw;
		width: 13%;
		height: auto;
		max-width: 50px;

	}
	.menu-icon img {
		width: 100%;
		height: auto;
	}
	.gnavi {
	}
	.gnavi a {
		display: block;
		background-color: #ff801e;
		background-image: url(../img/dott.png);
		background-repeat: repeat-x;
		background-position: left bottom;
		padding: .6em 5% .5em;
		color: #fff;
		font-size: 120%;
		text-decoration: none;
		position: relative;
	}
	.gnavi li:last-of-type a {
		background-image: none;
	}
	
	.gnavi a::after {
		display: block;
		content:url(../img/nav_arrow.png);
		position: absolute;
		right: 5%;
		top: .6em;
	}
	.closebtn {
		background: #ff5925;
		color: #fff;
		text-align: center;
		padding: .7em 0;
	}
	.closebtn img {
		max-height: 15px;
	}
	
/*トップページ
------------------------------------------------*/
	section {
		padding: 5vw 0;
	}
	main {
		padding-top: 77px;
	}
	.mainvisual {
	padding-top: 45%;
	background: #ccc;
	background-image: url(../img/mv_bg02.png);
	background-size: cover;
	background-repeat: no-repeat;
	max-height: 781px;
	padding-top: 50.74%;
	position: relative;
}

	.mv_txt img {
		height: 40vw;
	}
	/**content01**/
	.content01 >div {
		width: 90%;
		margin: 0 auto;
	}
	
	/**content02**/
	.media_box {
		display: block;
		padding: 2em 0;
		padding-bottom: 0;
	}
	.media_box .media {
		width: 100%;
	}
	.media_cont {
		display: block;
	}
	.media:first-of-type .media_cont dl:last-of-type {
		padding-left: 0;
		margin-bottom: 5vw;
	}
	.tv_box {
		display: block;
	}
.tv_about {
	margin-left: 0;
}
.tv_box:nth-of-type(2) .tv_about {
	margin-right: 0;
}
	/**content03**/
	.works_head {
		display: block;
	}
	.works_title h1 {
		font-size: 6vw;
		margin: 5vw auto;
	}
	#works01 h2 {
		margin: 1em 0 .7em;
	}
	.works_title p {
		padding-left: 0;
	}
	.works_midashi {
		background-image: none;
		font-size: 180%;
		position: static;
		margin-bottom: 1.5em;
		background: #ff5925;
		border-bottom: 5px solid #ff9776;
		padding: .5em 5%;
	}
	.content03 section:nth-of-type(even) .works_midashi {
		background-image: none;
		background: #ff801e;
		border-bottom: 5px solid #ffa662;
	}
	.works_midashi span {
		position: static;
	}
	.works_about {
		display: block;
		padding-top: 0;
	}
	.works_about::after {
		display: block;
		content: "";
		clear: both;
	}
	.works_contents li:last-of-type {
		margin-bottom: 0;
	}
	.works_img {
		float: none;
		width: 100%;
		text-align: center;
		margin: 0 auto;
	}
	.works_txt {
		width: 100%;
	}
	.works_infoBox {
		padding: 2em 5%;
	}
	.works_info dt,
	.works_info dd {
		width: 100%;
		background-image: none;
	}
	.works_info dd {
		margin-bottom: 1em;
		display: block;
		padding: 1em;
	}
	.works_info dt:first-of-type,
	.works_info dt:last-of-type {
	border-radius: 0 ;
	-moz-border-radius: 0 ;
	-webkit-border-radius: 0 ;
	-o-border-radius: 0 ;
	-ms-border-radius: 0;	
	}
	.works_info dt:last-of-type,
	.works_info dd:last-of-type {
		background-image: none;
		margin-bottom: 0;
	}
	.works_infoR,
	.works_infoL {
		width: 100%;
	}
	.works_infoR a img{
		margin-top: 1em;
	}

	.works_info dt:nth-of-type(2),
	.works_info dt:nth-of-type(3),
	#works02 .works_info dt:nth-of-type(3),
	#works05 .works_info dt:nth-of-type(3),
	#works03 .works_info dt:nth-of-type(3),
	#works04 .works_info dt:nth-of-type(3),
	#works05 .works_info dt:nth-of-type(2) {
		padding-top: 1em;
	}
	.works_info li:last-of-type {
		padding-bottom: 8px;
	}

	/**content04**/
	.voice_title {
		font-size: 180%;
	}
	.cont_head {
		margin-bottom: 0;
	}
	.voice_box {
		padding: 3.3em 0 2em;
	}
	.cont_R,
	.cont_L {
		float: none;
		width: 100%;
	}
	
	/**content05**/
	.merit_cont .merit_num {
		margin-left: 0;
		width: 40%;
		margin-bottom: 1em;
	}
	.cont_L.merit_cont {
		padding-left: 0;
	}
	.merit_cont {
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		padding: 1em 0 0;
	}
	.merit_cont dd {
		width: 100%;
	}
	.merit_cont dt {
		font-size: 4.5vw;
		width: 60%;
	}
	.merit_cont dt:nth-of-type(2) {
		padding-left: 5%;
	}
	.merit_cont dt strong {
		font-size: 140%;
	}
	.merit_contPc {
		display: none;
	}
	.merit_contSp {
		display: block;
	}
	/**content06**/
	.content06 {
		padding-bottom: 12vw;
	}
	.form_wrap {
		padding: 10vw 5%;
	}
	.linkbtn01 {
		padding: .3em 10% .2em;
	}
	
	
	
	
/*フッター
------------------------------------------------*/
	.foot_spFixed {
		position: fixed;
		bottom: 0;
		left: 0;
		background: #ff801e;
		width: 100%;
		text-align: center;
		padding: 5px 0;
	}
	.foot_spFixed p {
		position: relative;
	}
	.contact_char {
		position: absolute;
		top: -70px;
		left: 6%;
		width: 90px;
		height: auto;
	}
	.gotop {
		width: 90%;
	}
	footer {
		padding-bottom: 40px;
	}
	
	footer .logo_sp {
		padding-bottom: 0;
		text-align: center;
	}

/*全体レイアウト
------------------------------------------------*/






.onlypc{
	display:none;
}
.onlysp{
	display: block;
}



.spblock{
	display: block;
}

}










