@charset "utf-8";

@import "normalize.css";

* {
	box-sizing: border-box;
}
body {
	margin: 0;
	padding: 0;
	height: 100%;
	font-family: 'Noto Serif JP', serif!important;
	letter-spacing : 0.2em;
}
header {
	z-index: 9999;
	padding: 20px 4% 10px;
	position: fixed;
	top: 0;
	width: 100%;
	background-color: transparent;
	display: flex;
	align-items: center;
	transition: all .2s ease-out;
}
header.top_header{
	color: #fff;
}
header.min-header {
	padding: 10px 4%;
	background-color: #fff!important;
	color: #000000;
}
header {margin-top: 0px !important; }
@media screen and ( max-width: 782px ) {
    header { margin-top: 0px !important; }
}
h1 {
	margin: 0; padding: 0;
	font-size: 1rem;
}
a {	
	text-decoration: none;
}
p {
	line-height: 2;
}
nav {
	margin: 0 0 0 auto;
}
ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
li {
	margin-bottom: 7px;
}
li.headmenu {
	margin-top: 10px;
	margin-left: 20px;
	font-family: sans-serif;
	font-weight: 500;
	font-size: 1rem;
}
.main-visual {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 50vh;
	background: url('top_image01.jpg') top center / cover no-repeat;
}
.main-visual h2 {
	margin: 50px 0 40px 0;
	font-size: 2rem;
	font-weight: normal;
	color: #fff;
	text-shadow: 2px 2px 4px gray;
	line-height: 3rem;
}
.main-visual a {
	color: #fff;
}
header.overlay{
	background: linear-gradient(to bottom,  rgba(0,0,0,0.02) 0%,rgba(0,0,0,0.2) 100%); /* W3C */
	height: auto;
	background-attachment: fixed;
}
.sp-nav {
	display: none;
}

/*リンクボタン*/
a.button {
	display: block;
	width: 250px;
	margin: 20px auto;
	padding: 15px 30px;
	text-align: center;
	border: 1px solid #fff;
	transition: all .3s ease-out;
}
a.button:hover {
	color: #505050;
	background-color: #fff;
}
/* section */
.flex {
	display: flex;
}
section {
	overflow: hidden;
	text-align: center;
	padding: 80px 0;
}
section h2 {
	margin: 0 0 3px 0;
	color: #293f4d;
	text-align: center;
}
section p {
	color: #293f4d;
}
.photo {
	width: 55%;
	height: 500px;
	background: #fff url(section-bg.jpg) center/ cover no-repeat;
}
.photo + div {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 45%;
}
#service {
	background-color: #f7f7f7;
}
#service .icon_list {
    display: block;
    margin: 0 auto;
    max-width: 800px;
}
#service ul {
	margin: 0;padding: 0;
    flex-direction: row;
    justify-content: space-between;
    flex-wrap: wrap;
}
#service ul li {
    width: 25%;
    margin: 0;
    text-align: center;
}
#service ul li:nth-of-type(2){
	transition-delay: .2s;
}
#service ul li:nth-of-type(3){
	transition-delay: .4s;
}
#service ul li:nth-of-type(4){
	transition-delay: .6s;
}
#service ul li img {
    max-width: 116px;
}
#service ul li p {
    font-size: 14px;
    color: #f73f6f;
}
#service p {
	margin: 0 0 40px 0;
}
#service a.button,#philosophy a.button,#contents a.button-s,#access a.button,.workarea a.button {
	color: #293f4d;
	border: 1px solid #293f4d;
}
#service a.button:hover,#philosophy a.button:hover,#contents a.button-s:hover,#access a.button:hover,.workarea a.button:hover {
	color: #fff;
	background-color: #293f4d;
}

#information,#contact {
	background-color: #f7f7f7;
}


/* footer */
footer {
	padding: 50px 0 20px;
	text-align: center;
}



table {
	margin: 0 auto;
	border-collapse:collapse;
}

.tablepad {
	margin: 0px;
}

/* フェードイン用のCSS */

/* 上からフェードイン */
.slide-top {
	opacity: 0;
	transform: translate(0, -20px);
	transition: all 1s ease-out;
 }

/* 下からフェードイン */
.slide-bottom {
	opacity: 0;
	transform: translate(0, 20px);
	transition: all 1s ease-out;
 }

 /* 左からフェードイン */
.slide-left {
	opacity: 0;
	transform: translate(-20px, 0);
	transition: all 1s ease-out;
 }

/* 右からフェードイン */
.slide-right {
	opacity: 0;
	transform: translate(20px, 0);
	transition: all 1s ease-out;
 }

/* add */

/* contents */
.contleft, .contright {
	padding: 0!important;
}
.contlr {
	padding-bottom: 10%;
}
.cltext h2,.cltext h3,.cltext h4 {
	text-align: left!important;
	margin: 40px 0;
}
.cltext {
	margin: 0 5% 0 15%;
}
.cltext p{
	text-align: left;
	line-height: 2.7rem;
	padding-bottom: 50px;
}
.leftcap,.t_leftcap {
	color: #999;
	text-align: left;
}
.centercap {
	color: #999;
	text-align: center;
}
.textleft {
	text-align: left;
}
.contentsarea {
	padding: 50px 3%;
	width: 100%;
}
.singlearea {
	width: 100%;
	padding: 50px 3%;
	text-align: left;
}
.singlearea h2 {
	text-align: left;
	font-size: 1.3rem;
	padding-bottom: 20px;
}
/*** Blog info ***/
div.blog_info{
	background: rgba(0, 0, 0, 0.1);
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#20000000,endColorstr=#20000000); /* IE */
	zoom: 1; /* IE */
	color: #666;
	font-size:85%;
	padding: 5px;
	margin: 0 0 20px;
	}
	div.blog_info ul{margin:0;}
		div.blog_info li{
			float: left;
			padding-left:20px;
			margin:0 15px 0 5px !important;
			list-style: none !important
			}
			div.blog_info li a{color: #666}
				div.blog_info li a:hover{color: #333}
	div.blog_info li.cal{background: url(img/icon_cal.png) no-repeat 0 2px;}
	div.blog_info li.cat{background: url(img/icon_cat.png) no-repeat 0 2px;}
	div.blog_info li.tag{background: url(img/icon_tag.png) no-repeat 0 2px;}
/*** Bottom Navigation, Comment Navigation ***/
div.nav-below{margin: 40px 0 0;overflow:auto;}
div.navigation{overflow:auto;}
	div.navigation a{margin-bottom:10px}

	.nav-previous a, .nav-next a,
	div.navigation .alignleft a, div.navigation .alignright a{
		color:#333;
		font-size:85%;
		text-decoration:none;
		}
		.nav-previous a:hover, .nav-next a:hover,
		div.navigation .alignleft a:hover, div.navigation .alignright a:hover{
			color: #999
			}
			
	.nav-previous a, div.navigation .alignleft a{
		float:left;
		padding:2px 10px 2px 20px;
		background:url("img/arrow_prev.png") no-repeat left top;
		}
	.nav-next a, div.navigation .alignright a{
		float:right;
		text-align:right;
		padding:2px 20px 2px 10px;
		background:url("img/arrow_next.png") no-repeat right top;
		}

.titlecap {
	font-size: .9rem;
	color: #be8c46;
	padding-bottom: 15px;
}
.toptitle {
	text-align: center;
	line-height: 3.3rem;
	font-size: 1.3rem;
	padding-bottom: 0px;
	font-weight: 300;
}
.imagetitle {
	text-align: center;
	line-height: 3.3rem;
	font-size: 1.3rem;
	padding-bottom: 30px;
	font-weight: 300;
}

/* header */
#header ul {
	display: flex!important;
	list-style: none;
}

h3.menu_title_head {
	text-align: center;
	font-size: 1rem;
	padding: 10px 15px;
	margin: 10px 0 20px 0;
}

/* philosophy */
.phitoptext {
	text-align: left;
	line-height: 2.5rem;
	font-size: 1rem;
	font-weight: 300;
	display: inline-block;
}
.phiarea {
	margin: 50px 40px;
	padding-top: 20px;
	border-top: 1px solid #000;
}
.phiarea ul {
	text-align: left;
}

.phiarea li {
	display: inline;
	line-height: 1.7rem;
}
.phiarea li:not(:last-child)::after {
	content: ' / ';
}
.phibtn {
	padding-top: 30px;
}
.phiul {
	padding-bottom: 20px;
}
h3.phititle {
	font-size: 1.4rem;
	line-height: 2rem;
	padding: 30px 0 7px;
}
.phitext {
	margin-bottom: 0;
	text-align: center;
	line-height: 1.7rem;
}

/* information */
#information ul.news li{
	border-bottom: dotted 1px #ccc;
	padding: 20px 0;
	text-align: left;
}
#information ul.news li:first-child{
	border-top: dotted 1px #ccc;
}
#information ul.news li.date{
	
}

/* concept */
#concept{
	background: url(img/main_image01.jpg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	color: #cfcfcf;
	padding: 0;
}
#concept .overlay{
	background: -moz-linear-gradient(top,  rgba(0,0,0,0.8) 0%, rgba(0,0,0,0.73) 17%, rgba(0,0,0,0.66) 35%, rgba(0,0,0,0.55) 62%, rgba(0,0,0,0.4) 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,0,0,0.8)), color-stop(17%,rgba(0,0,0,0.73)), color-stop(35%,rgba(0,0,0,0.66)), color-stop(62%,rgba(0,0,0,0.55)), color-stop(100%,rgba(0,0,0,0.4))); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  rgba(0,0,0,0.8) 0%,rgba(0,0,0,0.73) 17%,rgba(0,0,0,0.66) 35%,rgba(0,0,0,0.55) 62%,rgba(0,0,0,0.4) 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  rgba(0,0,0,0.8) 0%,rgba(0,0,0,0.73) 17%,rgba(0,0,0,0.66) 35%,rgba(0,0,0,0.55) 62%,rgba(0,0,0,0.4) 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  rgba(0,0,0,0.8) 0%,rgba(0,0,0,0.73) 17%,rgba(0,0,0,0.66) 35%,rgba(0,0,0,0.55) 62%,rgba(0,0,0,0.4) 100%); /* IE10+ */
	background: linear-gradient(to bottom,  rgba(0,0,0,0.8) 0%,rgba(0,0,0,0.73) 17%,rgba(0,0,0,0.66) 35%,rgba(0,0,0,0.55) 62%,rgba(0,0,0,0.4) 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cc000000', endColorstr='#66000000',GradientType=0 ); /* IE6-9 */
	height: auto;
	background-attachment: fixed;
}
.concepttext {
	padding: 10% 0 10% 0;
	text-align: center;
}
#concept h2{
	color: #fff;
}
#concept a{
	color: #fff;
}
#concept a:hover{
	color: #000;
}

/* nbc */
#nbc{
	background: url(img/main_image02.jpg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	color: #cfcfcf;
	padding: 0;
}
#nbc .overlay{
	background: -moz-linear-gradient(top,  rgba(0,0,0,0.8) 0%, rgba(0,0,0,0.73) 17%, rgba(0,0,0,0.66) 35%, rgba(0,0,0,0.55) 62%, rgba(0,0,0,0.4) 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,0,0,0.8)), color-stop(17%,rgba(0,0,0,0.73)), color-stop(35%,rgba(0,0,0,0.66)), color-stop(62%,rgba(0,0,0,0.55)), color-stop(100%,rgba(0,0,0,0.4))); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  rgba(0,0,0,0.8) 0%,rgba(0,0,0,0.73) 17%,rgba(0,0,0,0.66) 35%,rgba(0,0,0,0.55) 62%,rgba(0,0,0,0.4) 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  rgba(0,0,0,0.8) 0%,rgba(0,0,0,0.73) 17%,rgba(0,0,0,0.66) 35%,rgba(0,0,0,0.55) 62%,rgba(0,0,0,0.4) 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  rgba(0,0,0,0.8) 0%,rgba(0,0,0,0.73) 17%,rgba(0,0,0,0.66) 35%,rgba(0,0,0,0.55) 62%,rgba(0,0,0,0.4) 100%); /* IE10+ */
	background: linear-gradient(to bottom,  rgba(0,0,0,0.8) 0%,rgba(0,0,0,0.73) 17%,rgba(0,0,0,0.66) 35%,rgba(0,0,0,0.55) 62%,rgba(0,0,0,0.4) 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cc000000', endColorstr='#66000000',GradientType=0 ); /* IE6-9 */
	height: auto;
	background-attachment: fixed;
}
.nbctext {
	padding: 10% 0 10% 0;
	text-align: center;
}
#nbc h2{
	color: #fff;
}
#nbc a{
	color: #fff;
}
#nbc a:hover{
	color: #000;
}

/* access */
h3.accesstitle{
	font-size: 1.1rem;
	text-align: left;
	padding-top: 10px;
}
.accesstext {
	text-align: left;
}
.accessarea h4{
	text-align: left;
	font-size: 1rem;
	padding-top: 7px;
	padding: .15em 0 .15em .65em;
	border-left: 4px solid #ccc;
}

/* footer */
#footer ul{
	display: block;
	list-style: none;
	padding: 0;
}
#footer li.menu{
	padding-bottom: 10px;
	display: inline;
}
#footer li.menuadd{
	padding-bottom: 7px;
	line-height: 1.5rem;
}
.footinfoarea {
	padding: 20px 0;
	text-align: center;
}
.footinfoarea p{
	text-align: left;
}
#footer .copy{
	text-align: center;
	font-size: .9rem;
}
.footertitle {
	padding-bottom: 20px;
}

/* contentsadd */
.contarea {
	margin: 50px 10px;
	padding: 100px 0 0 0;
	text-align: left;
	border-top: 1px solid #000;
	width: 100%;
}
.contarea h2{
	text-align: left;
}
.c_title {
	text-align: left;
}
h3.ct01 {
	text-align: left;
	font-size: 1.3rem;
	padding-top: 20px;
	padding-bottom: 10px;
}
h3.ct01 .color {
	background: linear-gradient(transparent 70%, #a7d6ff 70%);
}
.c_span01 {
	padding-bottom: 22px;
}
.c_span02 {
	padding-bottom: 60px;
	padding-top: 30px;
}
.c_span03 {
	padding-bottom: 70px;
	padding-top: 10px;
}
h3.name {
	font-size: 1.5rem;
	padding: 1px 0 0 0;
}
h3.name_e {
	font-size: 0.7rem;
	padding: 1px 0 0 0;
}
h4.i_title {
	background: #eee;/*背景色*/
  	padding: 0.5em;/*文字まわり（上下左右）の余白*/
  	margin-top: 25px;
}
.introarea img {
	padding-bottom: 15px;
}
.introarea ul {
	padding-left: 7px;
}
.introarea li {
	padding-top: 4px;
}
.inttoptext {
	text-align: left;
	line-height: 2.5rem;
	font-size: 1rem;
	font-weight: 300;
	display: inline-block;
}
.introspace {
	padding-bottom: 60px;
}
#intro01,#intro02,#intro03,#intro04,#intro05,#intro06,#intro07,#intro08,#intro09,#intro10 {
	margin-top:-150px;
	padding-top:150px;
}
ul.paperli li{
	list-style-type: disc;
	margin-left: 20px;
}
.feearea {
	margin: 50px 0px;
	padding: 20px 0;
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
}
h3.feetitle {
	font-size: 1.2rem;
	line-height: 2rem;
	padding: 7px 0 7px;
}
.feetext {
	margin-bottom: 0;
	line-height: 1.7rem;
	font-size: .8rem;
}
.feearea li {
	display: inline;
}
.feearea li:not(:last-child)::after {
	content: ' / ';
}
a.button-s {
	display: block;
	width: 100%;
	margin: 30px auto 0 auto;
	padding: 7px 10px;
	text-align: center;
	border: 1px solid #fff;
	transition: all .3s ease-out;
	font-size: .9rem;
	border-radius: 50px;
}
a.button-s:hover {
	color: #505050;
	background-color: #fff;
}
h3.ct02 {
	font-size: 1.3rem;
	padding: 0.25em 0.9em;/*上下 左右の余白*/
	color: #494949;/*文字色*/
	background: transparent;/*背景透明に*/
	border-left: solid 5px #7db4e6;/*左線*/
	margin-top: 30px;
}
h4.ct03 {
	font-size: 1.1rem;
	padding: 40px 0 20px 0;
	color: #293f4d;/*文字色*/
	/*線の種類（点線）2px 線色*/
	border-bottom: dashed 1px #293f4d;
	margin-bottom: 20px;
	line-height: 1.8rem;
}
h3.ct04 {
	font-size: 1.3rem;
	padding: 1rem 0;/*上下 左右の余白*/
	color: #494949;/*文字色*/
	background: transparent;/*背景透明に*/
	border-bottom: dotted 1px #eee;/*点線*/
	margin-top: 0px;
	margin-bottom: 10px;
}
.feetable_l {
	width: 20%;
	background-color: #eee
}
.feetable_r {
	width: 80%;
}

.feetable_l2 {
	width: 40%;
	background-color: #eee
}
.feetable_r2 {
	width: 60%;
}

.feetable_r p,.feetable_r2 p{
	margin: 0;
}
.feetable td.firsttd {
	width: 60%
}
.feetable td.secondtd {
	width: 40%
}
.feetable td.firsttd_s {
	width: 40%
}
.feetable td.secondtd_s {
	width: 60%
}
.feetable td.firsttd_s2 {
	width: 50%
}
.feetable td.secondtd_s2 {
	width: 50%
}
.feetable td.firsttd_a {
	width: 70%
}
.feetable td.secondtd_a {
	width: 30%
}
.feecap {
	font-size: .75rem;
}
.feebox {
	text-align: left;
}
#fee01,#fee02,#fee03,#fee04,#fee05,#fee06,#fee07,#fee08 {
	margin-top:-100px;
	padding-top:100px;
}
h5.feeremarks {
	font-size: .8rem;
	padding: 30px 0 10px 0;
	margin-bottom: 20px;
	border-bottom: 1px solid #eee;
}
.feeremarksarea ul,.workarea ul {
	padding-left: 37px;
}
ul.feeremarks_li01,ul.workarea_li01 {
	list-style-type: decimal;
}
ul.feeremarks_li02 {
	list-style-type: katakana-iroha;
}
.feerem_sub01 {
	border-bottom: 1px dotted #eee;
	padding-bottom: 7px;
}
table.feetable td{
	border: 0;
	padding: 5px 2px;
}
.serarea {
	margin: 50px 0px;
	padding: 20px 0;
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
}
h3.sertitle {
	font-size: 1.2rem;
	line-height: 2rem;
	padding: 7px 0 7px;
}
.sertext {
	margin-bottom: 0;
	line-height: 1.7rem;
	font-size: .8rem;
}
.serarea li {
	display: inline;
}
.serarea li:not(:last-child)::after {
	content: ' / ';
}
.serad01 {
	background-color: #eee;
	padding: 20px 30px 10px 30px;
	margin-top: 30px;
}
#legal01_01,#legal01_02,#legal01_03,#legal01_04,#legal01_05,#legal01_06 {
	margin-top:-150px;
	padding-top:150px;
}
#legal02_01,#legal02_02,#legal02_03,#legal02_04,#legal02_05,#legal02_06,#legal02_07,#legal02_08,#legal02_09,#legal02_10,#legal02_11,#legal02_012,#legal02_13 {
	margin-top:-150px;
	padding-top:150px;
}

.contactarea {
	padding: 15px 20px;
	margin-top: 40px;
}
.contactarea img{
	padding-top: 20px;
}
h2.contact  {
	font-size: 1.5rem;
	position: relative;
	display: inline-block;
	padding: 0 55px;
}
h2.contact:before, h2.contact:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 45px;
  height: 1px;
  background-color: black;
}
h2.contact:before {
  left:0;
}
h2.contact:after {
  right: 0;
}
.contactcap {
	padding-top: 20px;
}
h3.contact_title {
	text-align: center;
	font-size: 1.7rem;
	color: #fff;/*文字色*/
	border: solid 3px #293f4d;/*線色*/
	background-color: #293f4d;
	padding: .8em .5em;/*文字周りの余白*/
	border-radius: 3em;/*角丸*/
	margin-top: 7px;
}
.telic::before{
    font-family: "Font Awesome 5 Free";
    content: '\f095';
    font-size: 27px;
    font-weight: 400;
    margin-right: 15px;
    color: lightgray;
}
h4.contact_cap {
	text-align: center;
	font-size: 1.2rem;
	padding-top: 0px;
}
.contact_title_u {
	font-size: 1.2rem;
	font-weight: 500;
	padding-top: 20px;
}

.works_menuhead {
	border: 1px solid #ccc;
	padding: 7px;
	margin: 0 15px;
}
.workarea .button {
	margin: 0 17px 0 auto!important;
}
h4.worksspan01 {
	margin-bottom: 7px;
	border-bottom: 1px solid #ddd;
}

.introli li,.worksli li {
	display: inline;
	font-size: 1.2rem;
}
.introli li:not(:last-child)::after,.worksli li:not(:last-child)::after {
	content: ' / ';
}
.member {
	line-height: 2rem;
}
ul.news_page {

}
ul.news_page li.np_li{
	border-bottom: dotted 1px #ccc;
	padding: 20px 15px;
	text-align: left;
}
ul.news_page li.np_li .date{
	padding-right: 20px;
}
.pastnews {
	text-align: right;
	padding-top: 12px;
}
.pagenumber {
	text-align: center;
}
/*Contact Form 7カスタマイズ*/
/*スマホContact Form 7カスタマイズ*/
@media(max-width:800px){
	.inquiry th,.inquiry td {
		 display:block!important;
		 width:100%!important;
		 border-top:none!important;
		 -webkit-box-sizing:border-box!important;
		 -moz-box-sizing:border-box!important;
		 box-sizing:border-box!important;
	}
	.inquiry tr:first-child th{
	 	border-top:1px solid #d7d7d7!important;
	}
	/* 必須・任意のサイズ調整 */	
	.inquiry .haveto,.inquiry .any {	
		font-size:10px;
	}
}
/*見出し欄*/
.inquiry th{
	 text-align:left;
	 font-size:14px;
	 color:#444;
	 padding:12px;
	 width:30%;
	 background:#f7f7f7;
	 border:solid 1px #d7d7d7;
}
/*通常欄*/
.inquiry td{
	 font-size:13px;
	 border:solid 1px #d7d7d7;	
	 padding: 10px;
	 text-align: left;
}
/*横の行とテーブル全体*/
.entry-content .inquiry tr,.entry-content table{
 	border:solid 1px #d7d7d7;	
}
/*必須の調整*/
.haveto{
	 font-size:7px;
	 padding:5px;
	 background:#ff9393;
	 color:#fff;
	 border-radius:2px;
	 margin-right:5px;
	 position:relative;
	 bottom:1px;
}
/*任意の調整*/
.any{
	 font-size:7px;
	 padding:5px;
	 background:#93c9ff;
	 color:#fff;
	 border-radius:2px;
	 margin-right:5px;
	 position:relative;
	 bottom:1px;
}
/*ラジオボタンを縦並び指定*/
.verticallist .wpcf7-list-item{
 	display:block;
}
/*送信ボタンのデザイン変更*/
#formbtn{
	 display: block;
	 padding:1em 0;
	 margin-top:30px;
	 width:100%;
	 background:#ffaa56;
	 color:#fff;
	 font-size:18px;
	 font-weight:bold;	 
	 border-radius:2px;
	 border: none;
}
/*送信ボタンマウスホバー時*/
#formbtn:hover{
	 background:#fff;
	 color:#ffaa56;
	 border: 1px #ffaa56 solid;
}

.contacttable textarea,input.textsp,input.tel,input.mailsp{
width: 100%;
}

@media screen and (max-width: 640px) {
	/*ハンバーガーメニュー*/
	.pc-nav {
		display: none;
	}
	.sp-nav {
		z-index: 1;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		display: block;
		width: 100%;
		background: rgba(0, 0, 0, .8);
		opacity: 0;
		transform: translateY(-100%);
		transition: all .2s ease-in-out;
	}
	#hamburger {
		position: relative;
		display: block;
		width: 35px;
		height: 30px;
		margin: 0 0 0 auto;
		background: rgba(255, 255, 255, .5);
		border-radius: 10%;
	}
	#hamburger span {
		position: absolute;
		top: 50%;
		left: 10%;
		display: block;
		width: 80%;
		height: 2px;
		background-color: #000;
		transform: translateY(-50%);
	}
	#hamburger::before {
		content: '';
		display: block;
		position: absolute;
		top: 15%;
		left: 10%;
		width: 80%;
		height: 2px;
		background-color: #000;
	}
	#hamburger::after {
		content: '';
		display: block;
		position: absolute;
		bottom: 15%;
		left: 10%;
		width: 60%;
		height: 2px;
		background-color: #000;
	}
	/*スマホメニュー*/
	.sp-nav ul {
		padding: 0;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		height: 100%;
	}
	.sp-nav li {
		margin: 0;
		padding: 0;
	}
	.sp-nav li span {
		font-size: 15px;
		color: #fff;
	}
	.sp-nav li a, .sp-nav li span {
		display: block;
		padding: 20px 0;
		color: #fff;
	}
	/*-閉じるアイコンー*/
	.sp-nav .close {
		position: relative;
		padding-left: 20px;
	}
	.sp-nav .close::before {
		content: '';
		position: absolute;
		top: 50%;
		left: 0;
		display: block;
		width: 16px;
		height: 1px;
		background: #fff;
		transform: rotate( 45deg );
	}
	.sp-nav .close::after {
		content: '';
		position: absolute;
		top: 50%;
		left: 0;
		display: block;
		width: 16px;
		height: 1px;
		background: #fff;
		transform: rotate( -45deg );
	}
	.toggle {
		transform: translateY( 0 );
		opacity: 1;
	}
	.main-visual {
		padding: 0 4%;
	}
	h2 {
		line-height: 1.6;
		text-align: center;
	}
	/* section */
	#service ul li {
		width: 50%;
	}
	.reservearea {
		margin-top: 0px!important;
	}
	.cont-img-pc {
		display: none;
	}
	.br-pc {
		display:none;
	}
	.workarea .button {
		margin: 0 0px 20px auto!important;
	}
	.cont-pc {
		display: none;
	}
}
@media screen and (min-width: 640px) {
	.conti-float-img-sp {
		display: none;
	}
	.br-sp {
		display:none;
	}
	.cont-img-sp {
		display: none;
	}
	.cont-sp {
		display: none;
	}
}