@charset "UTF-8";
/*------------------------
スタイルの初期化
------------------------*/
html{
	font-size:62.5%;
}
body,div,pre,p,blockquote,b,img
form,fieldset,input,textarea,select,option,
dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,
table,th,td,embed,object,figure { margin:0; padding:0; }
body{
	width:100%;

	font-family:'Noto Sans JP','メイリオ','Meiryo','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック',sans-serif;
	font-size: 1.4rem;
	line-height: 1.65;
	color: var(--txtcolor);
	text-autospace:ideograph-alpha;
	background:#f8f6f6;
	font-weight:normal;
	font-feature-settings: 'palt';
	letter-spacing: .05em;
	position: relative;
}
.wf-l{
	font-family: 'Lato', sans-serif;
}
* {
	box-sizing: border-box;
}
a {
	text-decoration: none;
	color: var(--txtcolor);
	transition: all .3s ease 0s;
}
a img {
	border:0;
}
img{
	vertical-align:top;
	width: 100%;
	height: auto;
}
ul, ol { list-style-type:none; }
sup { position: relative; vertical-align: baseline; top: -0.9em; font-size: 0.5em; }
hr { display: none; }
h1,h2,h3,h4,h5,h6 { font-size: 100%;}
th, caption{ text-align: left; font-weight: normal; }
th,td { empty-cells:show; }
input[type="text"] , 
input[type="email"] , 
input[type="tel"] , 
input[type="password"] { padding:0 2px; margin-right:0.4em; }
input[type="submit"] { display:inline; margin:0; }
input[type="radio"] { margin-right:0.4em; }
textarea { padding:2px; }
optgroup { font-style:normal; }
option { padding-right:10px; }
*:focus {
outline: none;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section,main{
	display:block;
}
/*ボタンデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"],button {
	border-radius: 0;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
	font-family: 'Noto Sans JP','メイリオ','Meiryo','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック',sans-serif;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
	display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
	outline-offset: -2px;
}
input[type="text"] , 
input[type="email"] , 
input[type="tel"] , 
input[type="password"] ,
textarea {
	-webkit-appearance : none;
	appearance: none;
	border-radius:0;
	padding:8px;
	border:1px solid #dadada;
	width: 90%;
	box-sizing: border-box;
}
select {
	padding: 10px 16px 10px 10px;
	border: 1px solid #dadada;
	appearance: none;
	border-radius: 0;
	background: #fff url(/img/common/arrow_select.png) no-repeat right 6px center;
	background-size: auto 5px;
}

.flex-box {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
}

:root {
	--txtcolor: #000 ;
	--btncolor: #b58585 ;
}

table {
	width: 100%;
	border-collapse: collapse;
}
.submit input {
	width: 100%;
	display: block;
	background: var(--btncolor);
	text-align: center;
	font-weight: bold;
	line-height: 1;
}
.btn a {
	background: var(--btncolor);
	border: none;
	position: relative;
	border-radius: 0;
	color: #fff;
}


/*--PC--*/
@media screen and (min-width:768px) {
	.pc {
		display: block;
	}
	.sp {
		display: none!important;
	}
.btn a:hover{
		opacity:.7;
	}
	.box{
		width: 1200px;
		margin: 0 auto;
	}
}
/*--SP--*/
@media screen and (max-width:767px) {
	.pc {
		display: none;
	}

	.sp {
		display: block;
	}
	img{
		max-width: 100%;	
	}
}

/*--ヘッダー--*/
header {
	background: #fff;
}

header .logo a {
	color: #000;
	font-weight: 900;
}

header .logo a span {
	color: #2facca
}

header .corporate a {
	background: #333;
	color: #fff;
	font-weight: bold;
}

header .contact .text {
	font-weight: bold;
}

/*--PC--*/
@media screen and (min-width:768px) {
	header {
		min-width: 1200px;
		padding: 15px 2% 12px;
		margin: 0 auto;
		display: flex;
		justify-content: space-between;
	}

	header .left {
		display: flex;
		align-items: center;
	}

	header .logo {
		margin-right: 20px;
	}

	header .logo a {
		font-size: 20px;
	}

	header .corporate a {
		border-radius: 30px;
		padding: 6px 30px;
	}

	header .right {
		display: flex;
		align-items: center;
	}

	header .contact a {
		display: block;
		text-align: center;
	}

	header .contact img {
		width: 36px;
		height: auto;
		margin-bottom: 3px;
	}

	header .contact .text {
		display: block;
	}
}

/*--SP--*/
@media screen and (max-width:767px) {
header {
		padding: 10px 4vw 10px;
		margin: 0 auto;
		display: flex;
		justify-content: space-between;
	}

	header .left {
		display: flex;
		align-items: center;
	}

	header .logo {
		margin-right: 10px;
	}

	header .logo a {
		font-size: 15px;
	}

	header .corporate a {
		font-size: 12px;
		border-radius: 30px;
		padding: 4px 10px;
	}

	header .right {
		display: flex;
		align-items: center;
	}

	header .contact a {
		display: block;
		text-align: center;
	}

	header .contact img {
		width: 30px;
		height: auto;
		margin-bottom: 3px;
	}

	header .contact .text {
		display: block;
		font-size: 10px;
	}
}


/*--------------------
topimg
--------------------*/
.topimg {
	position: relative;
	width: 100%;
}
@media screen and (min-width:768px) {
	.topimg {
		min-width: 1200px;
	}
	.topimg::before {
		content: "";
		display: block;
		padding-top:52%;
		background: url(/pc/img/bg_topimg.jpg) no-repeat left top;
			background-size: cover;
		/* 比率を指定 */
	}

	/* 中の要素 */
	.topimg .inner {
		position: absolute;
		z-index: 20;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		padding: 2.5% 4% 5%;
	}
	.topimg .subinner {
		position: relative;
		height: 100%;
	}
	.topimg .main-catch {
		top: 0;
		left: 0;
		position: absolute;
		width: 52.5%;
	}
	.topimg .right {
		right: 0;
		top: 11%;
		position: absolute;
		width: 36.5%;
	}
	/*ボタン*/
	.to-contact.pc {
		display: flex;
		justify-content: space-between;
		width: 44%;
		background: rgba(255, 255, 255, .6);
		padding: 1%;
		position: absolute;
		bottom: 1.5%;
		border-radius: 1.2vw;
	}

	.to-contact.pc div {
		width: calc((100% - 1.2%) / 2);
		background:#fff ;
		border-radius: 0.8vw;
	}
	.to-contact.pc a {
		font-size: max(1.25vw, 16px);
		font-weight: bold;
		display: block;
		padding: 7.2% 3% 7.2% 7%;
		border-radius: 0.8vw;
		position: relative;
		background-size: 4% auto;
	}
	.to-contact.pc .form a{
		color: #000;
		background: #f9ba0d;
	}
	.to-contact.pc a:hover {
		filter: opacity(75%);
	}
	.to-contact.pc a:after{
		content: '';
		width: 0.65vw;
		height: 0.65vw;
		position: absolute;
		right: 7%;
	}
	.to-contact.pc .form a:after{
		border-top: solid 2px #000;
		border-right: solid 2px #000;
		top: calc(50% - 0.5vw);
		transform: rotate(135deg);
	}
	.to-contact.pc .sample a:after{
		border-top: solid 2px #fff;
		border-right: solid 2px #fff;
		top: calc(50% - 0.3vw);
		transform: rotate(45deg);
	}
	}
	.to-contact.pc .sample a {
		color: #fff;
		background: #333;
	}

@media screen and (max-width:767px) {
/*ボタン*/
	.to-contact.sp{
		background: #fff;
		padding: 4vw;
	}
	.to-contact.sp a{
		font-size: 4.2vw;
		font-weight: bold;
		display: block;
		text-align: center;
		padding: 4vw;
		border-radius: 1.2vw;
		position: relative;
	}
	.to-contact.sp .form a{
		text-align: center;
		color: #000;
		background: #f9ba0d;
		margin-bottom: 2.67vw;
	}
	.to-contact.sp .form a::after {
		content: '';
		width: 1.6vw;
		height: 1.6vw;
		border-bottom: 2px solid #000;
		border-right: 2px solid #000;
		transform: translateY(-50%) rotate(45deg);
		position: absolute;
		right: 4vw;
		top: calc(50% - .26vw);
		margin: auto;
	}
	.to-contact.sp .sample a{
		text-align: center;
		color: #fff;
		background: #333;
	}
	.to-contact.sp .sample a::after {
		content: '';
		width: 1.6vw;
		height: 1.6vw;
		border-bottom: 2px solid #fff;
		border-right: 2px solid #fff;
		transform: translateY(-50%) rotate(-45deg);
		position: absolute;
		right: 4vw;
		top: calc(50% - .26vw);
		margin: auto;
	}
}

/*創業支援パッケージとは*/
main .about {
	background: #cfe9ed;
}
@media screen and (min-width:768px) {
	main .about {
		padding-bottom: 4%;
	}
	main .about .box {
		margin-top: -4.5%;
		z-index: 20;
		position: relative;
	}
}

@media screen and (max-width:767px) {
	main .about {
		padding:4vw 4vw;
	}

}

/*必要な理由*/
main .reason {
	background: url(/pc/img/bg_reason.png) no-repeat left top;
	background-size: cover;
}
@media screen and (min-width:768px) {
	main .reason {
			padding: 4% 0;
	}
	main .reason .box {
		display: flex;
		justify-content: space-between;
	}
	main .reason .box .left {
		width: 405px;
	}

	main .reason .box .right {
		width: 762px;
	}
}

@media screen and (max-width:767px) {
	main .reason {
			padding:10vw 4vw;
		}
}

/*マーケティングに関するご質問なども…*/
main .qa {
	background: #f7f0df;
}
@media screen and (min-width:768px) {
	main .qa {
			padding-top: 3%;
	}
main .qa .box .inner {
	display: flex;
	justify-content: space-between;
}

main .qa .box h2 {
	margin-bottom: 2.5%;
}

main .qa .box .left {
	width: 65%;
}

main .qa .box .left .que {
	margin-bottom: 2%;
}

main .qa .box .right {
	width: 33%;
}

}

main .qa .box .left .contact_mod {
	width: 105%;
	margin-bottom: 1%;
}
main .qa .box .left .contact_madoguchi {
	width: 77%;
}
@media screen and (max-width:767px) {
	main .qa {
		padding:0 0 12vw;
	}
}

main .flow {
	background: #2FABC8;
}
@media screen and (min-width:768px) {
	main .flow {
		padding: 1.5% 0 4%;
	}
	main .flow h2 {
		text-align: center;
		margin-bottom: 2.5%;
	}
	main .flow h2 span{
		width: 47%;
		position: relative;
		display: inline-block;
	}
	main .flow h2 span:before {
		content: '';
		display: block;
		position: absolute;
		left: -70px;
		width: 90px;
		height: 90px;
		background: url(/pc/img/img_binder.png) no-repeat left top;
		background-size: contain;
		bottom: -40px;
	}
	main .flow h2 span:after {
		content: '';
		display: block;
		position: absolute;
		right: -110px;
		width: 180px;
		height: 170px;
		background: url(/pc/img/img_laptop.png) no-repeat left top;
		background-size: contain;
		top: -32px;
	}
	main .flow ul {
		display: flex;
		gap: 0 4%;
	}
	main .flow ul li{
		display: flex;
	}
}
@media screen and (max-width:767px) {
	main .flow{
		padding-bottom: 8vw;
	}
	main .flow h2 .sp img {
		margin-top: -8vw;
	}
	main .flow .flowimg {
		padding: 0 4vw;
	}
}


/*お問い合わせ*/
.form-area .message .must {
	line-height: 1.41;
}
.form-area table {
	width: 100%;
	border-collapse: collapse;
	border-top: 1px solid #e1e1e1;
}
.form-area table tr {
	border-bottom: 1px solid #e1e1e1;
}
.ex {
	color: #888;
}

/*郵便・住所*/
span.code-wrap {
	display: block;
}
input[name="code"] {
	display: inline-block;
	width: 10em!important;
}
input.setbtn {
	background: #282828;
	color: #fff;
	width: 10em;
	display: inline-block;
}
input[name="address"] {
	width: 90%;
}
.submit-btn input[type="submit"] {
	display: block;
	border-color: #cc0029;
	border-style: solid;
	height: 100%;
	width: 100%;
	text-align: center;
	background: #fff;
	color: #cc0029;
}
/*必須*/
.must {
	display: inline-block;
	color: #fff;
	background: #cc0029;
	text-align: center;
	vertical-align: middle;
}
/*任意*/
.any {
	display: inline-block;
	background: #555;
	color: #fff;
	text-align: center;
	vertical-align: middle;
}
/*フォームスタイル*/
input[type="text"],
input[type="tel"],
input[type="email"],
input[type="url"],
textarea {
	border: none;
	background: #fff;
}

@media screen and (min-width:768px) {
	.form-area{
		padding: 4% 0;
		font-size: 1.5rem;
	}
	.form-area .box{
		width: 900px;
	}
	.form-area .title{
		text-align: center;
		margin-bottom: 3%;
		border-radius: 50px;
	}
	.form-area .title h2{
		font-size: 34px;
		line-height: 1.3;
		margin-bottom: .5%;
	}
	.form-area .title .en {
		font-weight: bold;
		font-size:1.8rem;
		color: #2fabc8;
		letter-spacing: 0.1em;
	}
	.form-area .title .agency {
		margin-top: 8px;
	}
	.form-area .title .agency span{
		display: inline-block;
		border: 1px solid;
		padding: 2px 10px;
		font-size: 1.3rem;
	}
	.form-area table {
		border-top: 1px solid #e1e1e1;
		margin-bottom: 50px;
	}
	.form-area th {
		width: 280px;
		overflow: hidden;
		padding: 12px 20px 12px 0;
	}
	.form-area th p {
		display: flex;
		align-items: center;
	}
	.form-area td {
		padding: 12px 10px;
	}
	.ex {
		font-size: 12px;
		padding-top: 5px;
	}
	/*必須*/
	.must {
		font-size: 1.2rem;
		padding: 3px 5px;
		width: 43px;
		margin-right: 10px;
	}
	.any {
		font-size: 1.2rem;
		padding: 3px 5px;
		width: 43px;
		margin-right: 10px;
	}

	/*郵便・住所*/
	span.code-wrap {
		margin-bottom: 7px;
	}

	input.setbtn {
		background: #282828;
		color: #fff;
		font-size: 11px;
		width: 10em;
		margin-left: 5px;
		vertical-align: 1px;
		display: inline-block;
		padding: 7px 6px 8px !important;
		border-radius: 5px;
	}

	/*送信ボタン*/
	.submit-btn {
		width: 380px;
		margin: 0 auto;
		height: 70px;
	}

	.submit-btn input[type="submit"] {
		display: block;
		border-width: 2px;
		font-size: 1.6rem;
		line-height: 68px;
		transition: color .2s linear, background-color .2s linear;
	}

	.submit-btn input[type="submit"]:hover {
		color: #fff;
		background: #c02;
	}

	/*電話問い合わせ*/
	.tel-wrap{
		display: flex;
		height: 98px;
		border: 1px solid #333;
		margin-bottom: 40px;
	}
	.tel-wrap .head{
		font-size: 2.0rem;
		display: flex;
		flex-direction: column;
		flex-wrap: wrap;
		background: #333;
		justify-content: center;
		color: #fff;
		padding: 16px 40px 16px 30px;
	}
	.tel-wrap .head p{
		font-size: 1.4rem;
	}
	.tel-wrap .tel {
		display: flex;
		flex: 1;
		background: #fff;
		padding: 16px 40px;
		justify-content: center;
		flex-direction: column;
	}
	.tel-wrap .tel a {
		color: #333;
		font-weight: bold;
		font-size: 4.2rem;
		background: url(/pc/img/icon_freedial.svg) no-repeat left 63%;
		background-size: 42px auto;
		padding-left: 52px;
		line-height: 1.2;
	}


	/*フォームスタイル*/
	input[type="text"],
	input[type="tel"],
	input[type="email"],
	input[type="url"],
	textarea {
		padding: 12px 10px;
		font-size: 1.6rem;
		border-radius: 12px;
	}

	input[type="text"] {
		width: 60%;
	}
}

@media screen and (max-width:767px) {
	/*SPformエリア*/
	.form-area {
		font-size: 1.4rem;
		padding:8vw 4vw;
	}
	.form-area .title {
		text-align: center;
		margin-bottom: 4vw;
	}
	.form-area h2 {
		font-size: 2.4rem;
		text-align: center;
		margin-bottom:.8vw;
	}

	.form-area .title .en {
		font-weight: bold;
		color: #2fabc8;
		letter-spacing: 0.1em;
		margin-bottom: 4px;
	}

	.form-area .title .agency {
		margin-top: 2.13vw;
	}
	.form-area .title .agency span {
		display: inline-block;
		border: 1px solid;
		padding: .533vw 2.67vw .8vw;
		font-size: 2.93vw;
	}

	.form-area .message {
		font-size: 1.3rem;
	}

	.form-area table tr {
		padding: 15px 0;
	}

	.form-area th,
	.form-area td {
		display: block;
		width: 100%;
		padding-right: 0;
		padding-left: 0;
		overflow: inherit;
	}
	.form-area th {
		font-size: 3.74vw;
		padding-top: 4.26vw;
		padding-bottom: 2.667vw;
	}
	.form-area td {
		padding: 0 0 3.2vw;
	}
	.form-area table .ex {
		font-size: 3.2vw;
		padding-top: 1.33vw;
	}
	/*郵便・住所*/
	span.code-wrap {
		margin-bottom: 7px;
	}
 	input.setbtn {
		background: #282828;
		color: #fff;
		font-size: 2.93vw;
		width: 10em;
		margin-left: 1.33vw;
		vertical-align: 1px;
		display: inline-block;
		padding: 1.6vw 1.6vw 2.13vw !important;
		border-radius: .8vw;
	}

		/*電話問い合わせ*/
		.tel-wrap {
			border: 1px solid #333;
			margin-bottom: 40px;
		}
	
		.tel-wrap .head {
			font-size: 2.0rem;
			display: flex;
			flex-direction: column;
			flex-wrap: wrap;
			background: #333;
			text-align: center;
			justify-content: center;
			color: #fff;
			padding: 2vw 4vw;
		}
		.tel-wrap .head p {
			font-size: 1.4rem;
			text-align: center;
		}
		.tel-wrap .tel {
			background: #fff;
			padding:2.6vw 4vw;
			text-align: center;
		}
	
		.tel-wrap .tel a {
			text-align: center;
			color: #333;
			font-weight: bold;
			font-size: 8vw;
			background: url(/pc/img/icon_freedial.svg) no-repeat left 63%;
			background-size: 11.2vw auto;
			padding-left: 13.86vw;
			line-height: 1.2;
		}
		.tel-wrap .time {
			display: block;
			font-size: 3.2vw;

		}

	input[type="text"],
	input[type="tel"],
	input[type="email"],
	input[type="url"],
	textarea {
		font-size: 4vw;
		padding: 2.667vw;
		width: 100%;
	}
	.wpcf7-list-item {
		font-size: 3.74vw;
	}
	/*送信ボタン*/
	.submit-btn {
		width: 100%;
		height: 16vw;
		font-weight: bold;
	}
	.submit-btn input[type="submit"] {
		font-size: 4.26vw;
		display: flex;
		justify-content: center;
		align-items: center;
		line-height: 1;
	}
	/*必須・thテキスト*/
	.must,
	.any {
		display: inline-block;
		font-size: 2.6vw;
		text-align: center;
		vertical-align: middle;
		padding: .8vw 1.33vw;
		margin-right: 2.66vw;
	}

	th .text {
		display: inline-block;
		vertical-align: middle;
		padding-top: 0;
	}
}
/*フッター*/
footer{
	background: #fff;
}
#copyright {
	text-align: center;
	background: #000;
	color: #fff;
}
@media screen and (min-width:768px) {
	footer {
		padding: 40px 0 0;
	}
	footer .box{
		padding-bottom: 40px;
	}
	footer .company {
		width: 400px;
	}
	footer .company h3{
		width: 300px;
		margin-bottom: 1cap;
	}
	#copyright {
		padding: 10px;
	}
}
@media screen and (max-width:767px) {
	footer {
		padding: 12vw 0 0;
	}
	footer .box {
		
		padding:0 4vw 8vw;
	}
	footer .company h3 {
		width: 70%;
	}
		#copyright {
			padding:3.2vw 4vw;
		}
}