@charset "utf-8";


*{
	font-family: 'Noto Sans JP', sans-serif;
}

body {
	/*スマホで勝手に文字が大きくなる対策*/
	-webkit-text-size-adjust: 100%;
}
.article{
	background: #fff;
}
#contents{
	width: unset;
	padding: unset;
}
.header-top {
	z-index: 991;
} 
/*-----------------------------------------------------------

●●●●●●●●●●●●●●●●●

-----------------------------------------------------------*/


/*/////////////メイリオにする場合////////////////
#header * {
	font-family: Helvetica, "hiragino kaku gothic pro","メイリオ","ms pgothic",sans-serif;
}
*/
.h1_section{
	display: none;
}
/*////////////////////// お問い合わせはこちらから //////////////////////*/
.contact_wrap{
	padding-bottom: 100px;
}
.contact_ttl{
	color: #B60081;
    font-size: 32px;
	font-weight: bold;
	text-align: center;
	padding: 19px 0 24px;
}
.form_wrap{
	width: 950px;
	margin: 0 auto;
}
#orgFormTable {
	width: 950px;
	border: solid 1px #CCCCCC;
    border-collapse: collapse;
}
.required_mark {
    background-color: #F02727;
    border-radius: 4px;
    padding: 4px 0;
	margin-right: 10px;
    font-size: 12px;
    font-weight: bold;
    color: #ffffff;
    display: inline-block;
    width: 34px;
	float: right;
    text-align: center;
}
.optional_mark {
    background-color: #79B2D9;
    border-radius: 4px;
    padding: 4px 0;
	margin-right: 10px;
    font-size: 12px;
    font-weight: bold;
    color: #ffffff;
    display: inline-block;
    width: 34px;
    text-align: center;
	float: right;
}
.form_wrap tr {
	border-bottom: solid 1px #CCCCCC;
}
.form_wrap th {
	background-color: #eeeeee;
    width: 237px;
    text-align: right;
	font-size: 14px;
	font-weight: 600;
	padding-left: 20px;
}
.form_wrap th p{
    text-align: left;
}
.form_wrap td{
	font-size: 16px;
	padding: 10px 0 10px 10px;
}
.form_border.company_name {
	padding: 15px 0 15px 10px;
}
.form_border input {
    padding: 10px;
    width: 240px;
    border: solid 1px #CCCCCC;
	border-radius: 4px;
}
.input-table.plan .form_border input {
	width: 640px;
}
.input-table.plan .form_border select {
	width: 530px;
}
.choice_select {
	margin-top: 10px;
}
#article input[type="radio"] {
    height: 17px;
    width: 17px;
    box-shadow: none;
}
select {
    padding: 10px;
    width: 140px;
    border: solid 1px #CCCCCC;
    border-radius: 4px;
}
.property_list li {
	margin: 5px 0;
}
.property_list label {
	display: flex;
    align-items: center;
	font-size: 14px;
}
.plan_text {
	margin: 30px 0 14px;
}
.plan_site {
	font-size: 14px;
}
.agreement {
    text-align: center;
	margin-top: 30px;
}
.consent-text {
	display: block;
    text-align: center;
	margin-top: 10px;
}
.bt.center {
	text-align: center;
	padding: 10px 0 20px;
}



#contents td.form_border.bulidingplace {
    display: flex;
    gap: 8px 14px;
    flex-wrap: wrap;
	min-height: 41px;
	height: auto;
}
.bulidingplace label {
	display: flex;
	align-items: center;
	min-width: 108px;
}
.form_border textarea {
	width: 640px;
	height: 19px;
	padding: 10px;
	max-width: 640px;
	min-width: 640px;
}
select {
	-webkit-appearance: none;
	appearance: none; /* デフォルトの矢印を非表示 */
}
select::-ms-expand {
	display: none; /* デフォルトの矢印を非表示(IE用) */
}
select {
	background: url(/images/img_select-arrow.png) no-repeat center;
	background-size: 10px 9px;
	background-position: 118px 15px;
}
.status_select select {
	background-position: 508px 15px;
}

.center 
{
	text-align: center;
    padding: 10px 0 20px;
}


.constructionCheckbox {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 5px;
}

.constructionCheckbox label {min-width: 115px;}

.constructionCheckttl {
	min-width: 75px;
	font-weight: 500;
}
#contents .article .form_border_side label {
    min-width: 80px;
}

.catalog{
	position: relative;

}

.required {
    position: absolute;
    top: -20px;
    left: 170px;
    background: rgba(238,1,1,0.75); /* ✅ ここを修正 */
    color: #fff;
    font-size: 12px;
    padding: 6px 10px;
    border-radius: 5px;
    min-width: 120px;
    width: fit-content;
    z-index: 10;
    transition: opacity 0.3s ease-in-out;
}

.required::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 20px;
    margin-left: -5px;
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 6px solid rgba(238,1,1,0.75); /* ✅ ここも修正 */
}


.formError {
    z-index:1;
}