@charset "utf-8";

@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url(https://fonts.googleapis.com/css2?family=Shippori+Mincho+B1&display=swap);

* {
 padding             : 0;
 margin              : 0;
}
html{
 font-size           : 62.5%;
 height              : 100%;
}
img {
 image-rendering     : -webkit-optimize-contrast;
}
img {
 max-width           : 100%;
 border              : 0;
 vertical-align      : bottom;
}
p {
 padding             : 0 0 1em 0;
}
a img {
 border-top-style    : none;
 border-right-style  : none;
 border-bottom-style : none;
 border-left-style   : none;
}
a{
 text-decoration     : none;
 color               : #000000;
}
a:hover{
 text-decoration     : none;
 color               : #cccccc;
}
a:hover img{
 opacity             : 0.5;
 filter              : alpha(opacity=50);
 -moz-opacity        : 0.5;
 -ms-filter          : "alpha(opacity=50)";
 background-color    : rgba(255, 255, 255, 0);
}

.clear-both{
 clear               : both;
}

body {
 margin              : 0;
 padding             : 0;
 height              : 100%;
 font-family         : 'Noto Sans Japanese','Meiryo',Arial,sans-serif;
/* font-family         : "Shippori Mincho B1", "游明朝", YuMincho, serif;*/
 font-weight         : 400;
 font-style          : normal;
 letter-spacing      : 0.02em;
 color               : #595757; /*#3e3a39;*/
 -webkit-text-size-adjust: 100%;
 background          : #ffffff;
 font-size           : 1.3vw;
 line-height         : 180%;
 text-align          : justify;
}

.codepc{ display     : inline; }
.codesp{ display     : none; }

.red { color : #ff0000; }

h3{ font-weight : normal; }

.mds01{
 float               : left;
 display             : inline;
 width               : 100%;
 font-size           : 2vw;
 text-align          : center;
 padding             : 0 0 7vw 0;
 line-height         : 140%;
}
.mds01s{
 float               : left;
 display             : inline;
 width               : 100%;
 font-size           : 2vw;
 text-align          : center;
 padding             : 0 0 3vw 0;
 line-height         : 140%;
}
.mds02{
 float               : left;
 display             : inline;
 width               : 100%;
 font-size           : 3vw;
 text-align          : center;
 padding             : 0 0 7vw 0;
 line-height         : 140%;
}
.mds02s{
 float               : left;
 display             : inline;
 width               : 100%;
 font-size           : 3vw;
 text-align          : center;
 padding             : 0 0 3vw 0;
 line-height         : 140%;
}
.mds03{
 float               : left;
 display             : inline;
 width               : 100%;
 font-size           : 2vw;
 text-align          : center;
 padding             : 7vw 0 7vw 0;
 line-height         : 140%;
}
.mds03s{
 float               : left;
 display             : inline;
 width               : 100%;
 font-size           : 2vw;
 text-align          : center;
 padding             : 7vw 0 3vw 0;
 line-height         : 140%;
}
.mds03s span{
 font-size           : 1.6vw;
}




.wrap100{
 float               : left;
 display             : inline;
 width               : 100%;
 text-align          : center;
 padding             : 0 0 10vw 0;
}
.img100{
 width               : 100%;
 padding             : 0 0 10vw 0;
}
.wrap70{
 float               : left;
 display             : inline;
 width               : 70%;
 text-align          : center;
 padding             : 0 0 10vw 0;
 margin              : 0 15% 0 15%;
}



/*-------------------------------------------
ヘッダー
-------------------------------------------*/

header{
 float               : left;
 display             : inline;
 width               : 100%;
 position            : relative;
 margin              : 0 0 0 0;
}
header .logo{
 width               : 13vw;
 position            : absolute;
 top                 : 0;
 left                : 3vw;
 z-index             : 9999;
}
header .navi{
 float               : left;
 display             : inline;
 padding             : 1.5em 0 1.5em 18vw;
}
header .navi img{
 width               : 2.5vw;
}
header .navi a{
 padding             : 0 1.5em 0 1.5em;
}


/*-------------------------------------------
メインビジュアル
-------------------------------------------*/

.home_main{
 float               : left;
 display             : inline;
 width               : 100%;
 position            : relative;
 margin              : 0 0 10vw 0;
}
.home_main .mainvis{
 float               : left;
 display             : inline;
 width               : 100%;
}
.home_main .mainvis img{
 width               : 100%;
}
.home_main .copy{
 position            : absolute;
 top                 : 32%;
 right               : 3vw;
 z-index             : 9999;
 font-family         : "Shippori Mincho B1", "游明朝", YuMincho, serif;
 color               : #ffffff;
 font-size           : 2vw;
}
.home_main2{
 float               : left;
 display             : inline;
 width               : 100%;
 height              : 20vw;
 position            : relative;
 margin              : 0 0 0 0;
}



/*-------------------------------------------
リード
-------------------------------------------*/
.lead{
 margin              : 0 auto;
 width               : 78%;
 text-align          : justify;
 line-height         : 200%;
}
.lead100{
 margin              : 0 auto;
 width               : 100%;
 text-align          : justify;
 line-height         : 200%;
}
.lead101{
 margin              : 2em 0 2em 0;
 width               : 100%;
 text-align          : justify;
 line-height         : 160%;
 font-size           : 1.2vw;
}


/*-------------------------------------------
特徴
-------------------------------------------*/
.tokucho{
 margin              : 0 auto;
 width               : 78%;
 text-align          : justify;
 line-height         : 200%;
 padding             : 2em 0 0 0;
}
.tokubox{
 float               : left;
 display             : inline;
 width               : 46%;
 margin              : 0 2% 3em 2%;
}
.tokubox img{
 float               : left;
 display             : inline;
 width               : 100%;
 margin              : 0 0 1em 0;
}
.tokubox h3{
 float               : left;
 display             : inline;
 width               : 100%;
 margin              : 1em 0 1em 0;
 text-align          : center;
 font-size           : 1.8vw;
}



/*-------------------------------------------
サービス内容
-------------------------------------------*/
.cell00{
 float               : left;
 display             : inline;
 width               : 100%;
 padding             : 1em 0 1em 0;
 border-bottom       : 1px dotted #cccccc;
 text-align          : left;
}
.cell00 .cell01{
 float               : left;
 display             : inline;
 width               : 25%;
 padding             : 0 0 0 5%;
}
.cell00 .cell02{
 float               : left;
 display             : inline;
 padding             : 0 0 0 5%;
 width               : 65%;
}

.table01{
 width               : 100%;
 table-layout        : auto;
}
.table01 tr{
 width               : 100%;
 text-align          : center;
}
.table01 tr td{
 padding             : 1em 2.5% 1em 2.5%;
 border-bottom       : 1px dotted #cccccc;
}
.table01 tr td.yen{
 text-align          : right;
}
.table01 tr td span{
 font-size           : 1vw;
}


/*-------------------------------------------
ごあいさつ
-------------------------------------------*/
.grt_pic{
 float               : left;
 display             : inline;
 width               : 46%;
 padding             : 0 4% 0 0;
}
.grt_txt{
 float               : left;
 display             : inline;
 width               : 46%;
 padding             : 0 0 0 4%;
 text-align          : left;
}

.grt_glr{
 width               : 100%;
 display             : flex;
 justify-content: space-between;
 flex-wrap: wrap;
}
.grt_glr .item{
 width               : 30%;
 padding             : 3em 0 0 0;
}
.name{
 float               : left;
 display             : inline;
 width               : 100%;
 text-align          : center;
 padding             : 1em 0 0 0;
 font-size           : 1.8vw;
}
.name span{
 font-size           : 1.2vw;
}
.link{
 float               : left;
 display             : inline;
 margin              : 2em 0 4em 0;
 padding             : 0.5em 1em 0.5em 1em;
 border              : 1px solid #e69773;
 background          : #e69773;
 border-radius       : 6vw;
 color               : #ffffff;
}
.link:hover{
 border              : 1px solid #e69773;
 background          : #ffffff;
 color               : #e69773;
}


/*-------------------------------------------
ご案内
-------------------------------------------*/
.iframeWrapper {
 position            : relative;
 margin              : 0 0 10vw 0;
}

.iframeWrapper::before {
 content             : "";
 display             : block;
 padding-top         : calc(250 / 600 * 100%);
}

.iframeWrapper iframe {
 position            : absolute;
 top                 : 0;
 left                : 0;
 right               : 0;
 width               : 100%;
 height              : 100%;
}



.typecontact{
 float               : left;
 display             : inline;
 margin              : 5vw 0 0 0;
 width               : 100%;
 border-collapse     : collapse;
 border-spacing      : 0;
 padding             : 0;
 line-height         : 160%;
 text-align          : left;
}
.typecontact .cell10{
 float               : left;
 display             : inline;
 border-bottom       : 1px dotted #898989;
 width               : 100%;
}
.typecontact .cell10 .cell01{
 float               : left;
 display             : inline;
 padding             : 20px 0 20px 0;
 width               : 30%;
}
.typecontact .cell10 .cell02{
 float               : left;
 display             : inline;
 padding             : 20px 0 20px 0;
 width               : 70%;
}
.typecontact .cell10 .cell03{
 float               : left;
 display             : inline;
 padding             : 20px 0 20px 0;
 width               : 100%;
}
.typecontact .cell10 .btncell{
 text-align          : center;
}
.typecontact .cell10 .btncell a{
 color               : #3f3b3a;
}

.redfont{
 font-size           : 0.8em;
 color               : #ff0000;
}


.fs { width: 60px;  height:24px; background: #ffffff;border: solid 1px #A9A9A9; padding:2px;}
.fm { width: 120px; height:24px; background: #ffffff;border: solid 1px #A9A9A9; padding:2px;}
.fl { width: 400px; height:24px; background: #ffffff;border: solid 1px #A9A9A9; padding:2px;}
.fll{ width: 400px; background: #ffffff;border: solid 1px #A9A9A9; padding:10px;}

select   { width: 120px; height:24px; background: #ffffff;border: solid 1px #A9A9A9; padding:2px;}
textarea { width: 400px; height:10em; background: #ffffff;border: solid 1px #A9A9A9; padding:2px;}

.modoru  { width : 200px; height : 50px; background: #666666; color : #ffffff; border: solid 0px #B2B2B0; cursor:  "hand";}
.soushin { width : 200px; height : 50px; background: #e69773; color : #ffffff; border: solid 0px #B2B2B0; cursor:  "hand"; margin-top : 10px;}
.reset   { width : 60px; height : 25px; background: #F4F0F0;border: solid 0px #B2B2B0; cursor:  "hand";}


.sns{
 width               : 100%;
 text-align          : center;
 padding             : 0 0 5vw 0;
 line-height         : 120%;
 font-size           : 0.9vw;
}
.sns01{
 width               : 5vw;
 padding             : 0 0 0.5vw 0;
}
.sns a{
 display             : inline-block;
 padding             : 2vw 2vw 0 2vw;
 color               : #666666;
}



/*-------------------------------------------
フッター
-------------------------------------------*/
.foot{
 float               : right;
 display             : inline;
 margin              : 10vw 0 0 0;
 padding             : 10vw 0 2vw 0;
 width               : 100%;
 text-align          : center;
 line-height         : 200%;
 font-size           : 1vw;
 background          : #e69773;
 color               : #ffffff;
}
.foot .logo{
 margin              : 0 0 5vw 0;
 width               : 40vw;
}
.foot .sns{
 margin              : 1vw 1vw 2vw 1vw;
 width               : 3vw;
}



#page-top{
 position            : fixed;
 bottom              : 5vw;
 right               : 3vw;
 z-index             : 9998;
}
#page-top img{
 width               : 6vw;
}



/*確認画面*/
#formWrap {
	width:700px;
	margin:0 auto;
	color:#555;
	line-height:120%;
}
#formWrap h3{
	margin:0 0 0.8em 0;
}
table.formTable{
	width:100%;
	margin:0 0 30px 0;
	border-collapse:collapse;
}
table.formTable td,table.formTable th{
	border:1px solid #ccc;
	padding:10px;
}
table.formTable th{
	width:30%;
	font-weight:normal;
	background:#efefef;
	text-align:left;
}
table.formTable td{
	text-align:left;
}
p.error_messe{
	margin:5px 0;
	color:red;
}


/*-------------------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------------------*/

@media (max-width: 766px) {

	body {
	 font-size           : 3.5vw;
	 line-height         : 180%;
	 letter-spacing      : 0em;
	}

	.codepc{ display     : none; }
	.codesp{ display     : inline; }

	.red { color : #ff0000; }

	h3{ font-weight : normal; }

	.mds01{
	 font-size           : 6vw;
	 padding             : 0 0 7vw 0;
	}
	.mds01s{
	 font-size           : 6vw;
	 padding             : 0 0 3vw 0;
	 line-height         : 140%;
	}
	.mds02{
	 font-size           : 4.5vw;
	 padding             : 0 0 7vw 0;
	 line-height         : 140%;
	}
	.mds02s{
	 font-size           : 4.5vw;
	 padding             : 0 0 3vw 0;
	 line-height         : 140%;
	}
	.mds03{
	 font-size           : 4.5vw;
	 padding             : 7vw 0 7vw 0;
	 line-height         : 140%;
	}
	.mds03s{
		 font-size           : 4.5vw;
	 padding             : 7vw 0 3vw 0;
	 line-height         : 140%;
	}
	.mds03s span{
	 font-size           : 3vw;
	}



	.wrap100{
	 width               : 100%;
	 text-align          : center;
	 padding             : 0 0 30vw 0;
	}
	.img100{
	 width               : 100%;
	 padding             : 0 0 10vw 0;
	}
	.wrap70{
	 width               : 94%;
	 padding             : 0 0 10vw 0;
	 margin              : 0 3% 0 3%;
	}






	/*-------------------------------------------
	ヘッダー
	-------------------------------------------*/

	header{
	}
	header .logo{
	 width               : 20vw;
	 position            : absolute;
	 top                 : 0;
	 left                : 3vw;
	}
	header .navi{
	 display             : none;
	}
	header .navi a{
	}


/*-------------------------------------------
メインビジュアル
-------------------------------------------*/

.home_main{
 float               : left;
 display             : inline;
 width               : 100%;
 position            : relative;
 margin              : 0 0 10vw 0;
}
.home_main .mainvis{
 float               : left;
 display             : inline;
 width               : 100%;
}
.home_main .mainvis img{
 width               : auto;
 height              : 100vh;
 object-fit: cover;
}
.home_main .copy{
 position            : absolute;
 top                 : 10%;
 right               : 45%;
 z-index             : 9999;
 font-family         : "Shippori Mincho B1", "游明朝", YuMincho, serif;
 color               : #ffffff;
 font-size           : 5vw;
 writing-mode: vertical-rl;
}
.home_main2{
 height              : 30vw;
}



	/*-------------------------------------------
	リード
	-------------------------------------------*/
	.lead{
	 width               : 80%;
	}
	.lead100{
	 width               : 90%;
	}
	.lead101{
	 margin              : 2em 5% 2em 5%;
	 width               : 90%;
	 font-size           : 2.5vw;
	}



	/*-------------------------------------------
	特徴
	-------------------------------------------*/
	.tokucho{
	 width               : 80%;
	 padding             : 2em 0 0 0;
	}
	.tokubox{
	 width               : 100%;
	 margin              : 0 0% 3em 0%;
	}
	.tokubox img{
	}
	.tokubox h3{
	 font-size           : 4.5vw;
	}



	/*-------------------------------------------
	サービス内容
	-------------------------------------------*/
	.cell00{
	}
	.cell00 .cell01{
	 width               : 95%;
	 padding             : 0 0 0 5%;
	 font-weight         : bold;
	}
	.cell00 .cell02{
	 padding             : 0 0 0 10%;
	 width               : 90%;
	}

	.table-scroll {
	  position: relative;
	  overflow-x: auto;
	  white-space: nowrap;
	  margin-bottom      : 10vw;
	}

	.table01{
	 width               : 650px;
	 table-layout        : auto;
	 font-size           : 3vw;
	}
	.table01 tr{
	 width               : 100%;
	 text-align          : center;
	}
	.table01 tr td{
	 padding             : 1em 2.5% 1em 2.5%;
	 border-bottom       : 1px dotted #cccccc;
	}
	.table01 tr td.yen{
	 text-align          : right;
	}
	.table01 tr td span{
	 font-size           : 2.5vw;
	}



	/*-------------------------------------------
	ごあいさつ
	-------------------------------------------*/
	.grt_pic{
	 float               : left;
	 display             : inline;
	 width               : 100%;
	 padding             : 0 0 10vw 0;
	}
	.grt_pic img{
	 width               : 50%;
	 padding             : 0 25% 0 25%;
	}
	.grt_txt{
	 width               : 80%;
	 margin              : 0 10% 0 10%;
	}

	.grt_glr{
	 width               : 90%;
	 margin              : 0 5% 0 5%;
	 display             : flex;
	}
	.grt_glr .item{
	 width               : 48%;
	 padding             : 1em 0 0 0;
	}

	.name{
	 font-size           : 3.5vw;
	}
	.name span{
	 font-size           : 2.5vw;
	}

	.link{
	 font-size           : 3vw;
	}
	.link:hover{
	 font-size           : 3vw;
	}


	/*-------------------------------------------
	ご案内
	-------------------------------------------*/
	.iframeWrapper {
	 position            : relative;
	 margin              : 0 0 10vw 0;
	}

	.iframeWrapper::before {
	 content             : "";
	 display             : block;
	 padding-top         : calc(600 / 600 * 100%);
	}

	.iframeWrapper iframe {
	 position            : absolute;
	 top                 : 0;
	 left                : 0;
	 right               : 0;
	 width               : 100%;
	 height              : 100%;
	}



	.typecontact{
	 margin              : 5vw 5% 0 5%;
	 width               : 90%;
	}
	.typecontact .cell10{
	 border-bottom       : 1px dotted #898989;
	 width               : 90%;
	 padding               : 0 5% 0 5%;
	}
	.typecontact .cell10 .cell01{
	 padding             : 1em 0 0.5em 0;
	 width               : 100%;
	}
	.typecontact .cell10 .cell02{
	 padding             : 0 0 1em 0;
	 width               : 100%;
	}
	.typecontact .cell10 .cell03{
	 padding             : 1em 0 1em 0;
	 width               : 100%;
	}
	.typecontact .cell10 .btncell{
	 text-align          : center;
	}
	.typecontact .cell10 .btncell a{
	 color               : #3f3b3a;
	}

	.redfont{
	 font-size           : 2vw;
	 color               : #ff0000;
	}


	.fs { width: 100%;  height:2em; background: #ffffff;border: solid 1px #A9A9A9; padding:2px;}
	.fm { width: 100%; height:2em; background: #ffffff;border: solid 1px #A9A9A9; padding:2px;}
	.fl { width: 100%; height:2em; background: #ffffff;border: solid 1px #A9A9A9; padding:2px;}
	.fll{ width: 100%; background: #ffffff;border: solid 1px #A9A9A9; padding:10px;}

	textarea { width: 100%; height:20em; background: #ffffff;border: solid 1px #A9A9A9; padding:2px;}

	.modoru  { width : 200px; height : 50px; background: #666666; color : #ffffff; border: solid 0px #B2B2B0; cursor:  "hand";}
	.soushin { width : 200px; height : 50px; background: #e69773; color : #ffffff; border: solid 0px #B2B2B0; cursor:  "hand"; margin-top : 10px;}
	.reset   { width : 60px; height : 25px; background: #F4F0F0;border: solid 0px #B2B2B0; cursor:  "hand";}



.sns{
 width               : 100%;
 text-align          : center;
 padding             : 0 0 5vw 0;
 line-height         : 120%;
 font-size           : 3vw;
}
.sns01{
 width               : 15vw;
 padding             : 0 0 2vw 0;
}
.sns a{
 display             : inline-block;
 padding             : 4vw 2vw 0 2vw;
}



	/*-------------------------------------------
	フッター
	-------------------------------------------*/
	.foot{
	 margin              : 10vw 0 0 0;
	 padding             : 10vw 0 2vw 0;
	 font-size           : 2.5vw;
	}
	.foot .logo{
	 margin              : 0 0 5vw 0;
	 width               : 60vw;
	}



	#page-top{
	 position            : fixed;
	 bottom              : 5vw;
	 right               : 3vw;
	 z-index             : 9998;
	}
	#page-top img{
	 width               : 12vw;
	}

	.foot .sns{
	 margin              : 1vw 1vw 2vw 1vw;
	 width               : 8vw;
	}


/*確認画面*/
	#formWrap {
		margin:15vw 0 0 0;
		width:100%;
	}
	#formWrap h3{
	}
	table.formTable{
		margin:0 0 30px 0;
	}
	table.formTable td,table.formTable th{
	}
	table.formTable th{
	}
	table.formTable td{
	}
	p.error_messe{
	}




}/*--*/
