@charset "utf-8";

html {
    font-size: 62.5%;
}

body {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 1.5;
    color: #282828;
    background-color: #F4F6F5;
    box-sizing: border-box;
    overflow-x: hidden;
}

a {
    text-decoration: none;
    color: #FFF;
    cursor: pointer;
}

a:hover {
    opacity: 0.8;
}

li {
    list-style: none;
}

img {
    max-width: 100%;
    height: auto;
}

/* common
------------------------------------------------------------*/
.flex {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

::placeholder {
    color: #D4D6D6;
}

/* 旧Edge対応 */
::-ms-input-placeholder {
    color: #D4D6D6;
}

/* IE対応 */
:-ms-input-placeholder {
    color: #D4D6D6;
}

form button:hover {
    opacity: .8;
}

.columns2 {
    width: 100vw;
    min-height: 100vh;
    display: flex;
}

select option {
    color: #282828;
}

.hidden {
    display: none;
}

/* サイドバー */
.side-bar {
    width: 20rem;
    background-color: #01CED1;
    font-size: 1.3rem;
    color: #FFF;
}

.side-bar p,
.accordion-title,
.side-bar li {
    width: 100%;
    height: 4.5rem;
    border-bottom: 1px solid #FFF;
}

.side-bar p {
    padding: 1.3rem 2.8rem;
}

.side-bar p:first-of-type {
    padding: 1rem;
    text-align: center;
    color: rgba(255, 255, 255, .5);
}

.accordion-title {
    padding: 1.3rem 2.8rem;
    width: 100%;
    cursor: pointer;
    position: relative;
}

.accordion-title::after {
    content: "＋";
    position: absolute;
    top: 50%;
    right: 1.6rem;
    transform: translateY(-50%);
}

.side-bar ul {
    display: none;
}

.side-bar .accordion-open {
    display: block;
}

.side-bar li {
    background-color: #3EE0D0;
    position: relative;
}

.side-bar a {
    display: block;
    padding: 1.2rem 0 1rem 4.6rem;
}

.side-bar p a {
    padding: 0;
}

.point-arrow::before {
    content: "";
    display: inline-block;
    border-style: solid;
    border-color: transparent;
    border-width: 0.375em 0.64952em;
    border-left-color: currentColor;
    position: absolute;
    left: 3.5rem;
    top: 50%;
    transform: translateY(-50%);
}

main {
    padding: .9rem 3rem 3.5rem 2rem;
    width: calc(100% - 20rem);
}

/* login AD-1
------------------------------------------------------------*/
.login {
    width: 100%;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
}

.login-box {
    padding: 3rem 2.6rem;
    width: 25rem;
    height: 33rem;
    background-color: #3EE0D0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    text-align: center;
    color: #FFF;
}

.login h1 img {
    width: 12rem;
}

.login form {
    padding-bottom: 2rem;
}

.login input {
    margin-bottom: 1rem;
    padding-left: 1rem;
    width: 100%;
    height: 3rem;
    background-color: #FCFCFC;
    border-radius: 3px;
}

.login form button {
    display: block;
    width: 100%;
    padding: .6rem;
    background-color: #05C7F2;
}

.login-box a {
    color: #3EE0D0;
    background-color: #FFF;
    width: 100%;
    height: 3.3rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

input[type="checkbox"] {
    width: initial;
    vertical-align: top;
}

/* AD-2
------------------------------------------------------------*/
/* header */
.select-form {
    justify-content: flex-start;
    gap: 1rem;
    flex-wrap: wrap;
}

.form-wrap {
    position: relative;
}

.form-wrap::after {
    border-left: 4.5px solid transparent;
    border-right: 4.5px solid transparent;
    border-top: 5.5px solid #000;
    content: "";
    position: absolute;
    right: 6px;
    bottom: 11px;
    width: 0;
}

.select-form label {
    margin-bottom: .2rem;
    display: block;
    font-size: 1.3rem;
    font-weight: 700;
    color: #009999;
}

.select-form input,
.select-form textarea,
.select-form select {
    padding-left: .8rem;
    width: 13rem;
    height: 3rem;
    border: solid 1px #ccc;
    border-radius: 3px;
    background-color: #fff;
    color: #D4D6D6;
}

/* yamamin 追加 */
.loading {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    margin: 0 auto;
    z-index: 2;
}

.select-form .select-form-errmsg {
    color: red;
    padding-left: 17rem;
}
.login-box .select-form-errmsg {
    color: red;
    text-align: left;
    padding-bottom: 1rem;
}
.ad-10 .select-form .select-form-errmsg {
    color: red;
    padding-left: 0rem;
}

.ad-11 .select-form .select-form-errmsg {
    color: red;
    padding-left: 15rem;
}

.ad-16 .select-form .select-form-errmsg {
    color: red;
    padding-left: 14rem;
}

.ad-19 .select-form .select-form-errmsg {
    color: red;
    padding-left: 11rem;
}

.ad-21 .select-form .select-form-errmsg {
    color: red;
    padding-left: 10rem;
}

.ad-24 .select-form .select-form-errmsg {
    color: red;
    padding-left: 2rem;
}

/* yamamin 追加ここまで */

.selectbox-long select {
    width: 27rem;
}

.select-form input {
    width: 22.5rem;
}

.select-form input,
.select-form textarea {
    color: #282828;
}

/* header-menu */
.header-menu {
    flex-direction: column;
    align-items: flex-end;
    gap: 1.1rem;
    font-weight: 700;
}

.form-header .header-menu {
    margin-bottom: 1.1rem;
}

.user-name {
    display: flex;
    gap: 1rem;
}

.user-name li {
    display: flex;
    align-items: center;
}

.user-name img {
    width: 1.5rem;
}

.user-name a {
    color: #282828;
}

.user-name p {
    display: inline-block;
    margin-left: 1rem;
}

.menu-button {
    color: #FFF;
    display: flex;
    gap: .7rem;
}

.menu-button button,
.menu-button a {
    width: 13rem;
    height: 3rem;
    border-radius: 2px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.search-button {
    background-color: #00CBCC;
}

.detail-button {
    background-color: #5DEAD9;
}


.register-button {
    background-color: #00BFFE;
}

.delete-button {
    background-color: #003333;
}

.score-button {
    background-color: #138808;
}

.select-form2 {
    display: none;
    margin-top: 1rem;
}

.select-form2.open {
    display: flex;
}

/* table */
table {
    margin-top: 1.9rem;
    width: 100%;
    border-collapse: collapse;
    font-weight: 700;
}

.ad-2-2 table,
.ad-10-2 table,
.ad-14-2 table {
    margin-top: 2.4rem;
}

th,
td {
    padding: .9rem 0;
    text-align: center;
}

td {
    padding: .95rem 0;
    height: 3.8rem;
}

th:nth-of-type(3),
th:nth-of-type(4),
th:nth-of-type(5),
th:nth-of-type(9),
td:nth-of-type(3),
td:nth-of-type(4),
td:nth-of-type(5),
td:nth-of-type(9) {
    text-align: left;
}

th {
    color: #003333;
    border-top: 2px solid #003333;
    border-bottom: 2px solid #003333;
}

td {
    border-bottom: 1px solid #282828;
}

th:nth-of-type(1) {
    width: 4.5%;
}

th:nth-of-type(2) {
    width: 6.3%;
}

th:nth-of-type(3) {
    width: 15.6%;
}

th:nth-of-type(3),
td:nth-of-type(3) {
    padding-left: 2rem;
}

th:nth-of-type(4) {
    width: 16.3%;
}

td a {
    color: #277FFF;
}

th:nth-of-type(5) {
    width: 18.7%;
}

th:nth-of-type(6),
th:nth-of-type(7),
th:nth-of-type(8) {
    width: 9%;
}

th:nth-of-type(9),
td:nth-of-type(9) {
    padding-left: 3.9rem;
}

input[type="checkbox"] {
    cursor: pointer;
}

/* footer-nav */
.nav-arrow {
    margin-top: 1.6rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2.3rem;
}

.arrow-bottom {
    display: flex;
    gap: .1rem;
}

/* yamamin */
/* .arrow-bottom a { */
.arrow-bottom button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3.7rem;
    height: 3.7rem;
    color: #00BFFE;
    border: 1px solid #00BFFE;
    border-radius: 3px;
    background-color: #FFF;
}

.nav-arrow p {
    padding-right: 1.5rem;
    font-size: 1.4rem;
}

.ad-2-2 .nav-arrow,
.ad-10-2 .nav-arrow,
.ad-14-2 .nav-arrow,
.ad-18-2 .nav-arrow {
    margin-top: 2.6rem;
}

/* AD-3
------------------------------------------------------------*/
.ad-3 th:nth-of-type(3),
.ad-3 td:nth-of-type(3) {
    padding-left: 3.2rem;
}

.ad-3 th:nth-of-type(5),
.ad-3 td:nth-of-type(5) {
    text-align: center;
}

/* AD-4
------------------------------------------------------------*/
.form-header p {
    font-weight: 700;
    color: #003333;
}

.saveButton {
    background-color: #00CBCC;
}

.deleteButton {
    background-color: #003333;
}

.main-form {
    margin-top: .9rem;
    width: 100%;
    border-top: 1px solid #282828;
}

.main-form ul {
    margin-top: 1.8rem;
}

.main-form li {
    width: 100%;
    margin-top: .8rem;
}

.main-form li:nth-of-type(2),
.ad-4 .main-form li:nth-of-type(9),
.ad-4 .main-form li:nth-of-type(10),
.ad-5 .main-form li:nth-of-type(5),
.ad-5 .main-form li:nth-of-type(6),
.ad-6 .main-form li:nth-of-type(9),
.ad-6 .main-form li:nth-of-type(10),
.ad-7 .main-form li:nth-of-type(5),
.ad-7 .main-form li:nth-of-type(6) {
    margin-top: 1.4rem;
}

.main-form label,
.main-form dt {
    padding-right: 1.5rem;
    display: inline-block;
    width: 15.2rem;
    text-align: right;
    font-size: 1.2rem;
    font-weight: 700;
    white-space: nowrap;
    color: #003333;
}

.ad-11 .main-form label {
    white-space: normal;
}

.main-form dd {
    padding-left: 1rem;
    display: inline-block;
}

.main-form li dl label {
    width: initial;
    padding-right: .2rem;
}

.main-form input[name="name"] {
    width: 42.7rem;
}

.main-form li:nth-of-type(4) dd,
.main-form li:nth-of-type(3) dd {
    padding-left: .2rem;
}

.main-form input[name="post-code"] {
    width: 10.1rem;
    margin-right: .3rem;
}

.main-form select[name="school-board"],
.main-form input[name="address"],
.main-form input[name="email"],
.main-form input[name="confirmation"],
.main-form input[name="memo"] {
    width: 30.2rem;
}

.main-form select,
.main-form input[name="tel"],
.main-form input[name="manager-name"] {
    width: 13.3rem;
}

.main-form li:nth-of-type(10) dd,
.main-form li:nth-of-type(6) dd {
    padding-left: 0;
}

.main-form li:nth-of-type(10) label,
.ad-5 .main-form li:nth-of-type(6) label {
    padding-left: .7rem;
}

.main-form input[name="manager-kana"] {
    width: 13rem;
}

.notice-url {
    width: 13rem;
    height: 3rem;
    border-radius: 2px;
    display: inline-block;
    background-color: #00BFFE;
    color: #FFF;
}

/* AD-5
------------------------------------------------------------*/
.ad-5 .main-form li>label,
.ad-5 .select-wrap>label,
.ad-5 .main-form dt {
    width: 15.5rem;
}

.ad-5 input[type="checkbox"],
.ad-7 input[type="checkbox"],
.ad-19 input[type="checkbox"] {
    width: initial;
    margin: 0 .5rem 0 1rem;
    vertical-align: top;
}

/* AD-6
------------------------------------------------------------*/
.ad-6 .deleteButton,
.ad-7 .deleteButton {
    opacity: .3;
    cursor: default;
}

/* AD-7
------------------------------------------------------------*/
.ad-7 .main-form li>label,
.ad-7 .select-wrap>label,
.ad-7 .main-form dt {
    width: 15.5rem;
}

/* AD-8
------------------------------------------------------------*/
.ad-8 .form-header .header-menu {
    margin-bottom: 5.2rem;
}

.ad-8 .main-form dt {
    padding-right: 1.4rem;
    width: 12.8rem;
}

.ad-8 .main-form ul,
.ad-8 .main-form li:nth-of-type(3) {
    margin-top: 1.4rem;
}

.ad-8 .main-form dd,
.ad-8 .main-form li:nth-of-type(3) dd {
    padding-left: 0;
}

.select-button {
    /* yamamin #select-button { */
    background-color: #00CBCC;
}

.ad-8 label>input {
    display: none
}

.ad-8 .main-form li dl label {
    width: 13rem;
    height: 3rem;
    border-radius: 2px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #FFF;
    background-color: #00CBCC;
    cursor: pointer;
}

.ad-8 .main-form li dl label:hover {
    opacity: .7;
}

.execute-button {
    background-color: #00BFFE;
}

/* yamamin 追加 */
.ad-8 .upload-errmsg {
    color: red;
}

.ad-8 .insert-errmsg {
    padding-left: 10rem;
}

/* AD-9
------------------------------------------------------------*/
.user-list-button {
    background-color: #00CBCC;
}

.ad-9 .header {
    padding-bottom: .9rem;
    border-bottom: 1px solid #282828;
}

.capture-info {
    margin: 0 auto;
    margin-top: 17.4rem;
    width: 50rem;
    text-align: center;
}

.capture-info>div {
    margin-left: 3rem;
    padding: 3.4rem 0 3.8rem;
    border: 1px solid #003333;
}

.info-wrap {
    display: inline-block;
    text-align: left;
}

.info-wrap p:nth-of-type(2) {
    margin-top: .8rem;
}

/* AD-10
------------------------------------------------------------*/
.ad-10 .form-wrap {
    margin-right: .7rem;
}

.ad-10 .select-form input,
.ad-10 .select-form select {
    margin-right: .5rem;
    width: 7rem;
    vertical-align: text-bottom;
}

.ad-10 .select-form .select-wrap-status select {
    margin-left: .5rem;
    width: 12rem;
    position: relative;
    vertical-align: text-bottom;
}

.ad-10 .form-wrap::after {
    display: none;
}

.select-wrap {
    display: inline-block;
    position: relative;
}

.select-wrap::after {
    border-left: 4.5px solid transparent;
    border-right: 4.5px solid transparent;
    border-top: 5.5px solid #000;
    content: "";
    position: absolute;
    right: 9px;
    bottom: 11px;
    width: 0;
}

.ad-10 .select-form form:nth-of-type(3) select {
    margin-left: 0;
    width: 13.2rem;
}

.ad-10 .register-button {
    background-color: #003333;
}

.ad-10 th:nth-of-type(1),
.ad-10 td:nth-of-type(1) {
    width: 11.7%;
    text-align: left;
    padding-left: 1.9rem;
}

.ad-10 th:nth-of-type(2),
.ad-10 td:nth-of-type(2) {
    width: 12.3%;
    text-align: left;
    padding-left: 2rem;
}

.ad-10 th:nth-of-type(3),
.ad-10 td:nth-of-type(3) {
    padding-left: 2rem;
    width: 13.5%;
}

.ad-10 th:nth-of-type(4) {
    width: 4.3%;
}

.ad-10 th:nth-of-type(5) {
    width: 5.7%;
    padding-left: .5rem;
}

.ad-10 th:nth-of-type(6) {
    width: 4%;
}

.ad-10 th:nth-of-type(7) {
    width: 7%;
}

.ad-10 th:nth-of-type(8) {
    width: 10%;
}

.ad-10 th:nth-of-type(9),
.ad-10 td:nth-of-type(9) {
    width: 11.5%;
    text-align: left;
    padding-left: 0;
}

.ad-10 th:nth-of-type(10),
.ad-10 td:nth-of-type(10) {
    width: 5%;
    text-align: center;
    padding-left: 0;
}

.ad-10 th:nth-of-type(11),
.ad-10 td:nth-of-type(11) {
    width: 5%;
    text-align: center;
    padding-left: 0;
}

.ad-10 th:nth-of-type(12),
.ad-10 td:nth-of-type(12) {
    width: 5%;
    text-align: center;
    padding-left: 0;
}

.ad-10 th:nth-of-type(12),
.ad-10 td:nth-of-type(12) {
    width: 5%;
    text-align: center;
    padding-left: 0;
}

.ad-10 th:last-of-type {
    width: 5%;
}

.ad-10 .select-form2 {
    gap: .1rem;
}

.ad-10 .select-form2 input{
    margin-right: .5rem;
    width: 27rem;
    vertical-align: text-bottom;
}

.ad-10 .select-form2 select {
    width: 13.2rem;
    margin: 0;
}

.dl-saveButton {
    background-color: #0598ee;
}


/* AD-11
------------------------------------------------------------*/
.disable-button {
    background-color: rgba(0, 51, 51, 0.5);
    cursor: default;
}

.disable-button:hover {
    opacity: 1;
}

.enable-button {
    background-color: #003333;
}

.es-edit ul {
    margin: 0;
}

.es-edit li:nth-of-type(6),
.es-edit li:nth-of-type(7),
.es-edit li:nth-of-type(9),
.es-edit li:last-of-type {
    margin-top: 1.4rem;
}

.es-edit li:nth-of-type(10),
.es-edit li:nth-of-type(11) {
    margin-top: 2rem;
}

.es-edit label,
.es-edit dt {
    padding-right: 1.6rem;
    width: 14.6rem;
}

.es-edit dd {
    padding: 0;
}

.es-edit input[name="year"] {
    margin-right: .5rem;
    width: 7rem;
}

.es-edit input[name="year"] {
    margin-right: .5rem;
    width: 7rem;
}

.es-edit input[name="es-name"] {
    width: 30rem;
}

.es-edit select[name="month"],
.es-edit select[name="day"] {
    width: 5.1rem;
    margin-left: .6rem;
    margin-right: .3rem;
}

.es-edit .menu-button {
    align-items: center;
}

.es-edit .menu-button p {
    margin-left: .5rem;
    color: #003333;
    font-weight: 700;
}

.ad-11 .es-edit .menu-button p {
    opacity: .5;
}

.main-form input[name="school-number"] {
    margin-right: .5rem;
    width: 7rem;
}

#language,
#automatic-email,
#step-email,
#also-english,
#output-flag {
    color: #282828;
}

/* AD-12
------------------------------------------------------------*/
.mask {
    background: rgba(0, 0, 0, 0.7);
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 1;
}

.message-window-info,
.message-window,
.message-window-2,
.message-window-3 {
    width: 30rem;
    padding: .5rem 1.5rem 3rem;
    font-weight: 700;
    border-radius: 5px;
    background-color: #F4F6F5;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    margin: 0 auto;
    z-index: 2;
}

.message-window-info .flex {
    align-items: center;
}

.message-window .flex {
    align-items: center;
}

.message-window-2 .flex {
    align-items: center;
}

.message-window-3 .flex {
    align-items: center;
}


.confirmation {
    font-size: 1.4rem;
}

.bi-x {
    font-size: 2rem;
    cursor: pointer;
}

.warning {
    margin-top: 1.5rem;
    padding: 0 1rem;
    align-items: center;
    justify-content: center;
    gap: 1.5rem;
}

.bi-exclamation-circle {
    font-size: 5rem;
    color: #078C8C;
}

.question {
    margin-top: 3rem;
    text-align: center;
}

.warning-check {
    margin-top: 1.8rem;
    text-align: center;
}

.warning-check ul {
    display: inline-block;
    text-align: left;
}

.warning-check li {
    margin-top: .5rem;
}

.warning-check input {
    margin-right: .5rem;
    vertical-align: middle;
}

.yesno-button {
    margin-top: 2rem;
    justify-content: center;
    gap: 1rem;
}

.yesno-button button {
    padding: .5rem 0;
    width: 10rem;
    color: #FFF;
    border-radius: 3px;
}

.close-button-info,
.yes-button {
    background-color: #008CFF;
}

.no-button,
.no-button-2,
.no-button-3 {
    background-color: #919191;
}

.ad-12 .es-edit li:nth-of-type(3),
.ad-12 .es-edit li:nth-of-type(8),
.ad-12 .es-edit li:nth-of-type(11) {
    margin-top: 1.4rem;
}

.ad-12 .es-edit li:nth-of-type(4),
.ad-12 .es-edit li:nth-of-type(5),
.ad-12 .es-edit li:nth-of-type(9) {
    margin-top: 2rem;
}

.ad-12 .es-edit li:nth-of-type(7) {
    margin-top: .8rem;
}

/* AD-13
------------------------------------------------------------*/
.ad-13 .menu-button p {
    opacity: .5;
}

/* AD-14
------------------------------------------------------------*/
.ad-14 th,
.ad-14 td {
    padding-left: 1.4rem;
    text-align: left;
}

.ad-14 th:nth-of-type(1) {
    width: 13%;
}

.ad-14 th:nth-of-type(2) {
    width: 17%;
}

.ad-14 th:nth-of-type(3) {
    width: 17%;
}

.ad-14 th:nth-of-type(4) {
    width: 5.8%;
}

.ad-14 th:nth-of-type(5),
.ad-14 th:nth-of-type(6) {
    width: 6.5%;
}

.ad-14 th:nth-of-type(7) {
    width: 9%;
}

.ad-14 th:nth-of-type(8) {
    width: 17%;
    text-align: left;
}

.ad-14 th:last-of-type {
    width: 17%;
}

/* AD-15
------------------------------------------------------------*/


/* AD-16
------------------------------------------------------------*/
.ad-16 .header-menu {
    margin-top: 3rem;
}

.ad-16 .main-form {
    margin-top: 1rem;
    border-top: 1px solid #282828;
}

.ad-16 .main-form:first-of-type,
.ad-16 .main-form:nth-of-type(2),
.ad-16 .main-form:nth-of-type(3) {
    margin-top: .7rem;
}

    .ad-16 .main-form label {
        width: 13.8rem;
        vertical-align: top;
    }

.ad-16 textarea {
    padding-top: .5rem;
    width: 30rem;
    height: 7.2rem;
}

.ad-16 input {
    width: 30rem;
    height: 3.1rem;
}

.ad-16 .main-form ul {
    margin-top: 1.35rem;
}

.ad-16 .main-form:first-of-type ul,
.ad-16 .main-form:nth-of-type(2) ul,
.ad-16 .main-form:nth-of-type(3) ul {
    margin-top: .8rem;
}

.ad-16 .main-form li {
    margin-top: .68rem;
}

.ad-16 .main-form li:nth-of-type(2) {
    margin-top: .2rem;
}

.ad-16 .main-form:first-of-type li {
    margin-top: .8rem;
}

.ad-16 .main-form li:first-of-type label:not(.ad-16, .main-form:first-of-type, li:first-of-type, label) {
    margin-top: .6rem;
    vertical-align: top;
}

#burnout, #quit-intention {
    color: #282828;
}

/* AD-17
------------------------------------------------------------*/
.select-portfolio {
    margin: 0 auto;
    margin-top: 11rem;
    text-align: center;
    color: #01CED1;
}

.select-portfolio ul {
    margin-top: 4rem;
}

.select-portfolio li {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
}

.select-portfolio a {
    display: inline-block;
    padding: 1.5rem;
    width: 20rem;
    border: 1px solid #01CED1;
    border-radius: 5px;
    color: #01CED1
}

/* AD-18
------------------------------------------------------------*/
.cancel-button {
    background-color: rgba(94, 234, 217, .5);
}

.ad-18 th:nth-of-type(1) {
    width: 7.5%;
}

.ad-18 th:nth-of-type(2) {
    width: 13%;
}

.ad-18 th:nth-of-type(3) {
    width: 19%;
}

.ad-18 th:nth-of-type(3),
.ad-18 td:nth-of-type(3) {
    padding-left: 3rem;
}

.ad-18 th:nth-of-type(4) {
    width: 16.8%;
}

.ad-18 th:nth-of-type(5) {
    width: 7%;
}

.ad-18 th:nth-of-type(6),
.ad-18 th:nth-of-type(7),
.ad-18 th:nth-of-type(8) {
    width: 11%;
}

.ad-18-2 table {
    margin-top: 2.4rem;
}

.ad-18 tr td:last-child,
.ad-20 td:last-child {
    color: #277FFF;
    cursor: pointer;
}

button.link-style-btn {
    cursor: pointer;
    border: none;
    background: none;
    color: #277FFF;
}

    button.link-style-btn:hover {
        text-decoration: underline;
        color: #277FFF;
    }

/* AD-19
------------------------------------------------------------*/
.load-button {
    background-color: #00CBCC;
}

.output-button {
    background-color: #009899;
}

.display-button {
    margin: .7rem 0 0 8.7rem;
    background-color: #00CBCC;
}

.ad-19 input[type="checkbox"] {
    vertical-align: middle;
}

.ad-19 .main-form input[type="checkbox"]+.menu-button button {
    width: 10rem;
}

.ad-19 .main-form ul {
    margin-top: .7rem;
}

.ad-19 .main-form li {
    margin-top: 1.4rem;
}

.ad-19 .main-form li:first-of-type {
    margin-top: .7rem;
}

.ad-19 .main-form li:nth-of-type(3) {
    margin-top: 2rem;
}

.ad-19 .main-form li>label,
.ad-19 .select-wrap>label,
.ad-19 .main-form dt {
    padding-right: 1.7rem;
    width: 8.4rem;
}

.ad-19 .main-form input[type=text] {
    width: 7rem;
    margin-right: .5rem;
}

.ad-19 .select-wrap select[name="month"],
.ad-19 .select-wrap select[name="day"] {
    margin: 0 .4rem 0 .5rem;
    width: 5.2rem;
}

.ad-19 .main-form li:first-of-type input[type="checkbox"] {
    margin-left: 3.5rem;
}

.ad-19 .main-form li:nth-of-type(5) input {
    margin: 0 .5rem 0 0;
}

.ad-19 .main-form li:nth-of-type(5) input:not(:first-of-type, :nth-of-type(5)) {
    margin-left: 2rem;
}

.ad-19 .main-form li:nth-of-type(4) .select-wrap:nth-of-type(2) {
    margin-left: 2.5rem;
}

.disabled-label {
    opacity: 0.3;
}

input[type="radio"] {
    accent-color: #003333;
}

.ad-19 fieldset {
    margin: 1.4rem 0 0 8.5rem;
    padding: .7rem 0 2rem 2rem;
    width: 42rem;
    border: 1px solid #003333;
    font-size: 100%;
    font-weight: 700;
    color: #003333;
}

fieldset dl {
    margin-top: .8rem;
}

.ad-19 .main-form fieldset input+label {
    width: initial;
    margin-right: 3rem;
}

fieldset input[type="radio"] {
    width: initial;
    vertical-align: middle;
}

.save-settings-button {
    margin: 1.5rem 0 0 8.7rem;
    background-color: #00CBCC;
}

#comparison-method {
    color: #282828;
}

/* AD-20
------------------------------------------------------------*/
.ad-20 th,
.ad-20 td {
    padding-left: 2.5rem;
    text-align: left;
}

.ad-20 th:nth-of-type(1) {
    width: 7%;
}

.ad-20 th:nth-of-type(2) {
    width: 10.5%;
}

    .ad-20 th:nth-of-type(3) {
        /* yamamin width: 11.5%;*/
        width: 25.5%
    }

.ad-20 th:nth-of-type(4) {
    width: 21%;
}

.ad-20 td:nth-of-type(3) {
    padding-left: 5rem;
}

/* AD-21
------------------------------------------------------------*/
.main-form dd span {
    margin-left: 1.2rem;
}

.ad-21 .main-form li>label,
.ad-21 .select-wrap>label,
.ad-21 .main-form dt {
    padding-right: 1.7rem;
    width: 9.6rem;
}

.ad-21 .main-form li:first-of-type {
    margin-top: 1.4rem;
}

.ad-21 .main-form li:nth-of-type(3),
.ad-21 .main-form li:nth-of-type(4) {
    margin-top: .7rem;
}

.ad-21 .main-form dt {
    vertical-align: top;
}

.ad-21 .main-form dd {
    padding-left: 0;
}

.ad-21 .main-form li:nth-of-type(5) dt {
    margin-top: .4rem;
}

.ad-21 fieldset {
    margin: 1.2rem 0 0 9.8rem;
    padding: 0 0 1.3rem 1.4rem;
}

.ad-21 .main-form fieldset dt {
    padding-right: 2rem;
    width: 9.2rem;
    vertical-align: baseline;
}

.ad-21 .main-form fieldset input+label {
    width: initial;
    margin-right: 2rem;
}

.ad-21 .save-settings-button {
    margin: 1.2rem 0 0 9.9rem;
}

/* AD-22
------------------------------------------------------------*/
.ad-22 .output-button {
    background-color: #00CBCC;
}

.ad-22 .main-form ul,
.ad-22 .main-form li {
    margin-top: .7rem;
}

.ad-22 .main-form li:nth-of-type(3) {
    margin-top: .7rem;
}

.ad-22 .main-form li:nth-of-type(5) {
    margin-top: 1.2rem;
    margin-bottom: 1.5rem;
}

.ad-22 .main-form li:nth-of-type(5) dt {
    vertical-align: top;
    margin-top: .3rem;
}

.ad-22 .main-form li:nth-of-type(5) dd {
    padding-left: 0;
}

.ad-22 fieldset {
    padding: .5rem 1.5rem;
    width: 25.7rem;
}


.ad-22 .main-form fieldset label {
    width: 8rem;
    padding-right: 1rem;
}

.ad-22 .main-form fieldset select {
    width: 13rem;
}

.ad-22 .main-form fieldset li:first-of-type select {
    margin: 0;
    width: 13rem;
}

#free-answer {
    color: #282828;
}

/* AD-23
------------------------------------------------------------*/
.ad-23 .header {
    align-items: flex-start;
}

.ad-23 .header p {
    margin-top: 3.4rem;
}

.ad-23 table {
    margin-top: 2.3rem;
}

.ad-23 th,
.ad-23 td,
.ad-25 th,
.ad-25 td {
    text-align: left;
}

.ad-23 th:nth-of-type(1),
.ad-23 td:nth-of-type(1),
.ad-23 th:nth-of-type(5),
.ad-23 td:nth-of-type(5) {
    text-align: center;
}

.ad-23 th:nth-of-type(1) {
    width: 4.3%;
}

.ad-23 th:nth-of-type(3) {
    width: 11%;
}

.ad-23 th:nth-of-type(4) {
    width: 24%;
}

.ad-23 th:nth-of-type(5) {
    width: 5%;
}

.ad-23 th:nth-of-type(6) {
    width: 2.8%;
}

.ad-23 .nav-arrow,
.ad-25 .nav-arrow {
    margin-top: 4.3rem;
}

/* AD-24
------------------------------------------------------------*/
.ad-24 .main-form ul {
    margin-top: 0.8rem;
}

.ad-24 .main-form dt {
    padding-right: 1.9rem;
    width: 11.1rem;
}

.ad-24 .main-form dd {
    padding-left: 0;
}

.ad-24 .main-form li:not(:first-of-type) {
    margin-top: 2rem;
}

.ad-24 .main-form li:nth-of-type(4) {
    margin-top: 1.4rem;
}

.ad-24 .main-form li>label {
    padding-top: .6rem;
    padding-right: 1.6rem;
    width: 10.7rem;
    vertical-align: top;
}

.ad-24 textarea {
    width: 45rem;
    height: 6.8rem;
    padding-top: .5rem;
}

.ad-24 .main-form li:last-of-type {
    margin-top: 1rem;
}

/* AD-25
------------------------------------------------------------*/
.ad-25 .side-bar p:last-of-type,
.ad-26 .side-bar p:last-of-type {
    background-color: #3EE0D0;
}

.ad-25 .header p {
    margin-bottom: .7rem;
}

.ad-25 .register-button {
    background-color: #00CBCC;
}

.ad-25 table {
    margin-top: 1.5rem;
}

.ad-25 td span {
    display: inline-block;
    margin-left: 2.5rem;
}

.ad-25 th:nth-of-type(1),
.ad-25 td:nth-of-type(1) {
    width: 10.2%;
    padding-left: 2rem;
}

.ad-25 th:nth-of-type(2) {
    width: 3.5%;
}

.ad-25 th:nth-of-type(3) {
    width: 6.6%;
}

.ad-25 th:nth-of-type(4) {
    width: 23.3%;
}

.ad-25 td:nth-of-type(3) {
    padding-left: 3rem;
}

/* AD-26
------------------------------------------------------------*/
.ad-26 .es-edit label,
.ad-26 .es-edit dt {
    width: 16.6rem;
}

.ad-26 .main-form li:first-of-type {
    margin-top: 1.4rem;
}

.ad-26 .main-form li:nth-of-type(2),
.ad-26 .main-form li:last-of-type {
    margin-top: .8rem;
}

.ad-26 .select-form input {
    width: 30rem;
}

.ad-26 #status {
    color: #282828;
}

/* AD-27
------------------------------------------------------------*/
.ad-27 .header {
    align-items: flex-start;
}

    .ad-27 .header p {
        margin-top: 3.4rem;
    }

.ad-27 table {
    margin-top: 2.3rem;
}

.ad-27 th,
.ad-27 td {
    text-align: left;
}

    .ad-27 th:nth-of-type(1),
    .ad-27 td:nth-of-type(1),
    .ad-27 th:nth-of-type(2),
    .ad-27 td:nth-of-type(2),
    .ad-27 th:nth-of-type(5),
    .ad-27 td:nth-of-type(5) {
        text-align: center;
    }

    .ad-27 th:nth-of-type(1) {
        width: 8%;
    }

    .ad-27 th:nth-of-type(2),
    .ad-27 th:nth-of-type(3) {
        width: 8%;
    }

    .ad-27 th:nth-of-type(4) {
        width: 68%;
    }

    .ad-27 th:nth-of-type(5) {
        width: 8%;
    }

    .ad-27 th:nth-of-type(6) {
        width: 8%;
    }

.ad-27 .nav-arrow {
    margin-top: 4.3rem;
}

/* AD-28
------------------------------------------------------------*/
.ad-28 .main-form {
    white-space: normal;
}

.ad-28 .select-wrap > label,
.ad-28 .main-form dt {
    padding-right: 1.7rem;
    width: 11.1rem;
}

.ad-28 .main-form ul {
    margin-top: 0.8rem;
}

    .ad-28 .main-form dt {
        padding-right: 1.9rem;
        width: 11.1rem;
    }

    .ad-28 .main-form dd {
        padding-left: 0;
        width: 80.1rem;
        white-space: normal;
    }

.ad-28 .answer-method {
    vertical-align: top;
}

.ad-28 .select-wrap::after {
    left: 235px;
}

.ad-28 .main-form li:not(:first-of-type) {
    margin-top: 2rem;
}

.ad-28 .main-form li:nth-of-type(4) {
    margin-top: 1.4rem;
}

.ad-28 .main-form li > label {
    padding-top: .6rem;
    padding-right: 1.6rem;
    width: 10.7rem;
    vertical-align: top;
}

.ad-28 .main-form li:last-of-type {
    margin-top: 1rem;
}

/* AD-29
------------------------------------------------------------*/

.ad-29 th:nth-of-type(1) {
    width: 7.5%;
}

.ad-29 th:nth-of-type(2) {
    width: 13%;
}

.ad-29 th:nth-of-type(3) {
    width: 19%;
}

.ad-29 th:nth-of-type(3),
.ad-29 td:nth-of-type(3) {
    padding-left: 3rem;
}

.ad-29 th:nth-of-type(4) {
    width: 16.8%;
}

.ad-29 th:nth-of-type(5) {
    width: 7%;
}

.ad-30 .main-form li > label,
.ad-30 .select-wrap > label,
.ad-30 .main-form dt {
    padding-right: 1.7rem;
    width: 10.4rem;
}

.ad-29 th:nth-of-type(6),
.ad-29 th:nth-of-type(7),
.ad-29 th:nth-of-type(8) {
    width: 8%;
}

.ad-29 tr td:last-child {
    color: #277FFF;
    cursor: pointer;
}


