﻿html {
    FONT-SIZE: 19px;
}

body {
    /*MARGIN-TOP: 0px;*/
    /*MARGIN-LEFT: 0px;*/
    -webkit-text-size-adjust: 100%;
    FONT-SIZE: 19px;
}

.copyfont {
    FONT-SIZE: x-small;
    WIDTH: 100%;
    COLOR: #666666;
    TEXT-ALIGN: right;
}

.SectionTitle {
    FONT-SIZE: 28px;
    WIDTH: 100%;
    COLOR: #FFFFFF;
    TEXT-ALIGN: center;
    background-color: #006666;
    line-height: 200%;
    word-break: keep-all;
    overflow-wrap: anywhere;
}

@media screen and (max-width: 600px) {
    /* 小さい画面用 */
    .SectionTitle {
        FONT-SIZE: 16px;
        line-height: 200%;
    }
}

.clsNW {
    white-space: noWrap;
}

.main {
    margin: 0 auto;
}

.tabmain {
    /*    border-style: double;
*/ border-width: thick;
    /*    border-color: #000099;
*/ border-spacing: 4px;
    width: 100%
}

/* テーブルボーダー */
.border {
    border-top: 1px solid #000;
}

.tabmain td {
    padding: 4px;
}

.tabbtn {
    background-color: #000080;
    border-spacing: 0px;
    width: 100%;
    border: 1px solid #000099;
}

.tabbtn tr {
    border-color: #006600;
}

.tabConstraction {
    background-color: #AAAACC;
    border-spacing: 0px;
    border: 1px solid #9999CC;
    width: 100%;
}

.tabConstraction tr {
    border-color: #9999CC;
}
/*.tabConstraction td {
    padding: 0px;
}*/

.padTr {
    padding: 5px 0px;
}

.right {
    text-align: right;
}

.left {
    text-align: left;
}

.center {
    text-align: center;
}

.notelno {
    pointer-events: none;
    text-decoration-line: none;
    color: inherit !important;
}

input[type=text] {
    font-size: 19px;
    box-sizing: border-box
}

input[type=password] {
    font-size: 19px;
    box-sizing: border-box
}

input[type=submit] {
    font-size: 19px;
    box-sizing: border-box
}

select {
    font-size: 19px;
    box-sizing: border-box
}

/*スマホ向け（100%固定）*/
.mainsize {
    width: 100%;
}

span.kaigyo {
    display: inline-block;
}

td.w35 {
    width: 35%;
}

td.w25 {
    width: 25%;
}

td.w3 {
    width: 3%;
}

/*
    ↓タブレット向け
*/
@media screen and (min-width: 600px) {
    .mainsize {
        width: 50%;
        min-width: 500px;
    }
}

/*	エラーページ用	*/
.tdback10 {
    background-color: #CABDE4;
    border: 2px solid #A791D2;
    font-size: medium;
    font-weight: bold;
    text-align: left;
    padding: 2px;
}

.errorsitei {
    font-size: x-small;
    color: #333333;
    background-color: #FF6666;
    font-weight: bold;
    width: 100%;
    margin: 0px;
    padding: 3px 3px 3px 10px;
    text-align: left;
}

.tbtblue {
    background-color: #CCCCFF;
    border: 1px solid #5757FF;
    font-size: medium;
    text-align: left;
    padding: 5px;
}

.fontbold {
    font-weight: bold;
}

.tdblueheader1 {
    background-color: #CCCCFF;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #999999;
    text-align: right;
}

.tdbluemeisai1 {
    background-color: #FFFFFF;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #999999;
}

/* 郵便番号の矢印を消す */
/* Chrome, Safari, Edge */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    margin: 0;
    -webkit-appearance: none;
}
/* Firefox */
input[type=number] {
    -moz-appearance: textfield;
}
/*
    2025/08/25 Add
*/
.inqdef {
    max-width: 1020px;
    margin: 0 auto;
}

.innerContents {
    width: 95%;
    margin-left: auto;
    margin-right: auto;
    text-align: left;
}

/* 必須アイコン */
.requredIcon {
    background-color: red;
    font-family: 'Times New Roman';
    color: white;
    display: inline-block;
    font-size: 14px;
    padding: 0 5px;
}

/* 全角・半角表示 */
.txt_width {
    display: inline-block;
}

/* 入力項目見出し */
.inputHeader {
    vertical-align: top;
    text-align: left;
    background-color: #DDFFDD;
}

.inputItem {
    vertical-align: top;
    text-align: left;
    padding-bottom: 20px;
}

input[type=email] {
    box-sizing: border-box;
}

textarea {
    box-sizing: border-box;
    FONT-SIZE: 19px;
    font-family: inherit;
}

/* body直下の定義 */
.baseDiv {
    border: 2px solid black;
    padding: 10px 15px;
    color: #000000;
    border-top: none;
    border-bottom: none;
    text-align: center;
}

@media screen and (max-width: 600px) {
    /* 小さい画面用 */
    .baseDiv {
        padding: 0;
    }
}

/* 修繕項目選択のチェックボックス */
#LstSyuzen td {
    display: flex;
    align-items: center;
}

ol.list li {
    position: relative;
    list-style-type: none;
}

ol.list li:before {
    position: absolute;
    right: calc(100% + 0.5rem); /* 0.5remは連番とテキストとの余白 */
    content: counter(list-item);
}

#LstDanti2 {
    width: 100%;
    height: 300px;
    box-sizing: border-box;
    padding-left: 0;
    list-style: none;
    border: 2px solid #000;
    overflow-y: scroll;
}

#LstDanti2 ul {
    padding-left: 0;
}

#LstDanti2 li {
    list-style: none;
}

#LstDanti2 input[type="radio"] {
    display: none;
}

#LstDanti2 label {
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0;
}

#LstDanti2 input[type="radio"]:checked + label {
    background: rgb(0, 109, 217);
    color: #fff;
    text-shadow: 0 0 1px rgba(0,0,0,.7);
}

.img-container {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.img-container img {
    max-width: 100%;
    height: auto;
    max-height: 40px;
    padding: 0 10px;
}
