@charset "utf-8";

:root{
	--font-family-shippori: 'Shippori Mincho B1', serif;
}

/*-----------------------------------------------------*/
/* PC版 基本スタイル
/*-----------------------------------------------------*/

.clearfix {
	display: block;
}

.sp {
	display:none;
}

#container_f{
	width:100%;
	margin:0 auto;
	text-align:left;
}

.inner{
	width: 1260px;
	margin: 0 auto;
	font-family: var(--font-family-shippori);
	
}


ul#gnavi.menu6 li{width:15%;}

p{font-size:1.0rem; line-height: 1.6;}


#footer.clearfix:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
}


#footer_link {
    min-width: auto;}

	.under980 {
		display: none;
	}
/*-----------------------------------------------------*/
/* パンくずエリアのスタイル
/*-----------------------------------------------------*/

div#breadSns{
	width:980px;
	margin:5px auto 0;
	padding:0;
	height:32px;
}

/*     パンくず
------------------------------------------*/

div#bread{
	float:left;
	margin:6px 0 0 5px;
}

div#bread p.crumbs{
	font-size:10px;
}


/*--------------------------------------------------------------------*/
/* G-Naviのスタイル
/*--------------------------------------------------------------------*/

ul#gnavi{
	display:block;
	margin:15px auto;
	border-right:1px solid #E4E4E4;
}

ul#gnavi li{
	float:left;
	padding:5px 0.7% 0 0.7%;
	text-align:left;
	border-right:1px solid #E4E4E4;
}

ul#gnavi li:first-child{
	border-left:1px solid #E4E4E4;
}

ul#gnavi li:last-child{
	border-right:none;
}

ul#gnavi.menu6 li{width:15%;}
ul#gnavi.menu5 li{width:18.4%;}
ul#gnavi.menu4 li{width:23.4%;}
ul#gnavi.menu3 li{width:31.7%;}
ul#gnavi.menu2 li{width:48.4%;}

ul#gnavi li a{
	display:block;
	width:100%;
	padding-bottom:10px;
	border-bottom:3px solid #CCCCCC;
	text-decoration:none;
}

ul#gnavi li a:link{color:#454545;}
ul#gnavi li a:visited{color:#454545;}
ul#gnavi li a:hover{color:#DD0000;}

ul#gnavi li.selected a{
	border-bottom:5px solid #0086CD;
	color:#0086CD;
}

ul#gnavi li strong{
	display:block;
	margin-top:3px;
	font-size:140%;
}
#formWrap {
	width:800px;
	margin:0 auto;
	color:#555;
	line-height:120%;
	font-size:90%;
	text-align: left;
}
	
table.formTable{
	width:100%;
	margin:0 auto;
	border-collapse:collapse;
	
}
table.formTable td,table.formTable th{
	border:1px solid #ccc;
	padding:10px;
	font-size:18px;
}
table.formTable th{
	width:30%;
	font-weight:normal;
	background:#efefef;
	text-align:left;
	
}
.item-indent {
  /* リストマーク（・や1.など）の幅に合わせて調整 */
  padding-left: 1em; 
  /* 最初の行だけ左に1文字分ずらす */
  text-indent: -1em; 
  /* 必要に応じて、リストマークのスタイルを調整 */
  list-style-position: inside; /* リストマークを内側に配置 */
}
.com{ font-color: red; 
	font-size: 0.9rem;
}
	.red{ background: #b22222; /*背景色*/
  padding: 0.55em;/*文字周りの余白*/
  color: white;/*文字を白に*/
  border-radius: 0.4em;/*角の丸み*/ 
	font-size:12px;}
	
	.grey{ background: #d3d3d3; /*背景色*/
  padding: 0.55em;/*文字周りの余白*/
  color:#696969 ;/*文字/
  border-radius: 0.4em;/*角の丸み*/ 
	font-size:12px; margin-left: 2%;}
table.syosai{ padding: 5px 0; margin: 15px 0; border-collapse: collapse;
	width:100%;
  border: 2px solid #9ddfde; font-size: 18px; line-height: 120%;}
table.syosai td.bg{ background: #ebe5d7;}
table.syosai th{  padding: 10px 5px;
	width: 30%;
	border: 3px solid  white;
	background:#ebe5d7;
	font-weight: normal;
	white-space: nowrap;}
table.syosai td{padding: 10px 5px;border: 3px solid  white; background: #f2efe8;}	

 .section { margin: 20px 0; padding: 15px; border: 1px solid #ccc; border-radius: 8px; }	
form input[type="submit"], form input[type="reset"], form input[type="button"] {
width:100px;
	height:40px; background: #e8358e; border: #e8358e; color: white;
}	


form td label {
  display: inline-block;   /* 横に並べる */
  margin-right: 15px;      /* ラベル同士の余白 */
  cursor: pointer;         /* クリックしやすく */
  font-size: 1.5rem;         /* 文字サイズ調整 */
}

form td input[type="radio"] {
	 vertical-align: middle;
  margin-right: 35px;       /* ボタンと文字の間隔 */
}
form input[type="text"]{
	width:40%;
	padding:5px;
	font-size:110%;
	display:block;
	height: 38px;
	margin-top: 10px;
}
form input[type="text1"], form input[type="email"] {
	width:95%;
	padding:5px;
	font-size:110%;
	display:block;
	height: 38px;
	margin-top: 10px;
}	
	
form input[type="number"]{
		width: 20%;
	font-size:1.3rem;
		padding:5px;
	height: 38px;

	margin: 10px 0;
		}
form input.hour{width: 40%;}
form input.p-postal-code {
	width: 8em;
	display: inline-block;
	vertical-align: middle;
}	
	select.time{
		width: 18%;
		height: 49px;
		margin-right: 5px; 
		margin-left: 1px;
		 font-size: 110%; 
	}	
form textarea {
	height: 240px;	width: 95%;
	}	
	
div td label.red{
  display: inline-block;  	
	}
	form input[type="tel"]{
		width:40%;
	padding:5px;
	height: 38px;

}	
.unit-flex {
  display: flex;
  align-items: center;
  gap: 4px;
  flex-wrap: nowrap;
  width: auto;
}

.unit-flex input {
 display: inline-block; /* ← block を無効化 */
}

.unit-flex .unit {
  white-space: nowrap;
}
.radio-group {
  display: flex;         /* 横並びにする */
  gap: 2em; /* 項目の間にスペース */
margin-left:40%;
}

.radio-group label {
  display: flex;         /* ボタンと文字をそろえる */
  align-items: center;
}

/*--------------------------------------------------------------------*/
/* 注意事項
/*--------------------------------------------------------------------*/
.agree {width: 100%;margin: 18px auto 0;padding: 20px 8px 20px 16px;background-color: #F6F6F6;border: 1px solid #DDDDDD;font-size: 108%;font-weight: bold;text-align: left;display: -webkit-flex;display: -moz-flex;display: flex;-webkit-box-align: center;-ms-flex-align: center;align-items: center;box-sizing: border-box;}
li.agree_button {margin-top: 10px;text-align: left !important;margin: 0;pointer-events: none;}
.agree input {width: 25px;height: 25px;margin: 0 5px 0 0;border: 1px solid #999;cursor: pointer;}
.agree label{font-size:1.0rem;}
div.scr{
  width: 97%;
font-size: 1.0rem;
	line-height: 1.3;
  height: auto;
  overflow: auto;
	margin-bottom: 20px;
  background-color: #edf0f5;
	padding: 30px;
}
p.big{font-size: 20px; font-weight: bold; text-align: center; margin: 3% auto;}
p.adress{text-align: center; margin: 2% auto;}





@media screen and (max-width:1260px){
	.inner{
	width: auto;
	}
} 

@media screen and (max-width:1050px){


}

@media screen and (max-width:980px) {
  #container_f{
    margin: 18px auto 0;
  }

  
  .inner{
    width: auto;
    margin: 0 3vw;
  }


}

	


@media screen and (max-width:640px) {
	
  .sp {
    display: block;
  }
  .pc {
    display: none;
  }


  #footer {
    display: none;
  }

  header.common .logo {
    float: left;
    width: 275px;
  }
  header.common .navi li {
    float: right;
    padding-top: 15px;
  }

  #container_f{
    width:100% !important;
    position:relative;
    margin: 0;
  }
	#formWrap {
	width:95%;
	margin:0 auto;
}
table.formTable th, table.formTable td {
	width:auto;
	display:block;
	line-height: 120%;
}
table.formTable th {
	margin-top:5px;
	border-bottom:0;

}
form input[type="tel"] {
	width:85%;
	padding:5px;
	display:block;
	margin: 10px 0;
}
form input[type="date"]{
		height: 40px;
	}	

form input[type="text"],  form textarea {
	width:95%;
	padding:5px;
	font-size:1.3rem;
	display:block;
	margin: 10px 0;
}

form input[type="number"]{
		width: 30%;
	font-size:1.3rem;
		padding:5px;

	margin: 10px 0;
		}
	form input[type="submit"], form input[type="reset"], form input[type="button"]{
	display:block;
	width:85%;
	height:55px;
}
	 form td input.mail  {
	display:block;
	width:95%;
	height:40px;
}
	form input[type="email"]{
		height: 40px;
	}
	input.height{margin-top:5%;}
	
	input.height{margin-top:5%;}

form select{
		width: 21%;
		height: 48px;
		margin-right: 1px; 
		margin-left: 1px;
		 font-size: 90%; 
	}		
	table.syosai th{  width: 25%;
}

  .unit-flex input {
    flex: 1 1 auto;
    min-width: 0;
    width: auto;
    display: inline-block; /* ← 最重要 */
  }

	.radio-group {
  display: flex;         /* 横並びにする */
  gap: 1em; /* 項目の間にスペース */
margin-left:20%;
}

/*--------------------------------------------------------------------*/
/* 注意事項
/*--------------------------------------------------------------------*/
p.big{font-size: 15px; font-weight: bold; text-align: center; margin: 5% auto; line-height: 130%;}
p.adress{text-align: center; margin: 2% auto;}

}
