@charset "UTF-8";
body {
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Noto Sans JP", sans-serif;
    font-weight: normal;
    font-size: clamp(16px, 18/1290*100vw, 18px);
    letter-spacing: 0;
    line-height: 1.6;
    letter-spacing: 0.05em;
    max-width: 100%;
    color: #515151;
    background: #fff;
    font-feature-settings: "palt";
}

*,
*:before,
*:after {
    box-sizing: border-box;
}

img {
    height: auto;
    width: 100%;
    vertical-align: middle;
}

a {
    text-decoration: none;
}

a img {
    display: block;
    vertical-align: middle;
}

ul li {
    list-style: none;
}

h2 {
    font-size: 2.316em;
    line-height: calc(57/44);
    letter-spacing: 0.02em;
    font-weight: bold;
    text-align: center;
}

h3 {
    font-size: 1.58em;
    line-height: calc(33/30);
    font-weight: bold;
    text-align: center;
}

h4 {
    font-size: 1.4em;
    font-weight: bold;
    text-align: center;
}

p {
    text-align: left;
}

@media screen and (max-width: 767px) {
    body {
        font-size: clamp(11px, 26/750*100vw, 26px);
    }

}

.content {
    background-color: #fff;
}

h4 {
    margin-bottom: 2em;
}

.br_sp {
    display: none;
}

/*==========================================
資料のDL
==========================================*/

#resource {
    padding: min(90/1290*100vw, 90px) 0 min(100/1290*100vw, 100px);
    width: 100% !important;
}

.form_item {
    margin: auto;
}

.resource_wrap {
    width: 100%;
    max-width: 1290px;
    padding: 0 20px;
    margin: 0 auto;
    overflow: hidden;
}

#resource h3 {
    margin-bottom: 0.8em;
}

.resource_wrap_text {
    margin-bottom: 5em;
    text-align: center;
}

.small{
    font-size: small;
}

.sp_br {
    display: none;
}

.wpcf7-text,
.wpcf7-textarea {
    width: 100%;
    padding: 12px 10px 10px !important;
    border: #12a8a8 1px solid;
    background-color: rgba(0, 164, 192, 0.03);
    font-size: 1em;
    border-radius: 0;
}

.wpcf7-text::placeholder,
.wpcf7-textarea::placeholder {
    color: #838383;
    font-size: 1em;
}

.form_item tr {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 2em;
    margin-bottom: 2em;
}

.form_item th span {
    background-color: #12a8a8;
    color: #fff;
    line-height: 1;
    padding: 5px 10px 6px;
    margin-right: 0.5em;
    display: inline-block;
}

.form_item th {
    font-size: 1.2em;
    font-weight: 600;
    width: 40%;
    text-align: left;
}

.form_item td {
    font-size: 1em;
    width: 60%;
}

.kinds .wpcf7-checkbox {
    display: flex;
    flex-direction: row;
    justify-content: left;
    align-items: center;
    flex-wrap: wrap;
    row-gap: 0.5em;
    column-gap: 1em;
}

.kinds .wpcf7-list-item {
    width: 47%;
    margin: 0 !important;
}

.wpcf7-list-item {
    margin: 0 !important;
}

.wpcf7-list-item input[type="checkbox"] {
    position: relative;
    width: 1.3em;
    height: 1.3em;
    border: 1px solid #12a8a8;
    vertical-align: text-bottom;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin-left: 0;
    border-radius: 0;
}

.form_item tr:nth-last-child(1) th,
.form_item tr:nth-last-child(2) th {
    align-self: flex-start;
}

.wpcf7-list-item-label {
    font-size: 1.1em;
}

input[type="checkbox"] {
    position: relative;
    width: 1.3em;
    height: 1.3em;
    border: 1px solid #12a8a8;
    vertical-align: bottom;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin-left: 0;
    border-radius: 0;
}

.wpcf7-acceptance label:hover,
input[type="checkbox"]:hover {
    cursor: pointer;
}

input[type="checkbox"]:checked:before {
    content: '';
    border-right: 2px solid #12a8a8;
    border-bottom: 2px solid #12a8a8;
    width: 6px;
    height: 10px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(50deg);
}

.acceptance_box {
    margin-bottom: 2em;
    font-size: small;
}

.acceptance_box input[type="checkbox"] {
    display: inline-block;
}

.acceptance_box .wpcf7-list-item-label a {
    display: inline-block;
    color: #12a8a8;
    border-bottom: 1px solid #12a8a8;
    margin: 0 0.5em;
    font-size: 1.3em;
    font-weight: bold;
    transition: ease-in-out 0.3s;
}

.acceptance_box .wpcf7-list-item-label a:hover {
    color: #a81212;
    border-color: #a81212;
    transition: ease-in-out 0.3s;
}

.acceptance_box label {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 0.5em;
}

.acceptance_box p {
	text-align: center;
	}

.wpcf7-submit {
    display: block;
    width: 30%;
    font-size: 1.1em;
    padding: 1em;
    border: 1px solid #12a8a8;
    margin: auto;
    background-color: rgba(0, 164, 192, 0.2);
}

.wpcf7-submit:hover {
    background-color: #12a8a8;
    color: #fff;
    transition: ease 0.3s;
    cursor: pointer;
}

.wpcf7 form.sent .wpcf7-response-output {
    font-size: 1em;
    margin: 1em 0;
    padding: 0.2em 1em;
    border: 2px solid green;
}

input[type="submit"] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 0;
    color: #515151;
}

#page_ttl.nobg.resource {
        background: url(../images/resource/ttl_dl.jpg) center top / cover no-repeat;
}

#page_ttl.nobg {
	height: 200px;
	padding-top: 70px;
}

/* ==============================
  download-area（送信後DL）
============================== */
#download-area{
  margin: 2.5em auto 0;
  max-width: 720px;
  padding: 2em 1.5em;
  text-align: center;
  border: 2px solid #12a8a8;
  background: rgba(0, 164, 192, 0.06);
}

#download-area p{
  margin: 0 0 1em;
  text-align: center;
  font-size: 1.1em;
  font-weight: 800;
  letter-spacing: 0.04em;
}

#download-area a{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1em 1.6em;
  font-size: 1.2em;
  font-weight: 800;
  color: #fff;
  background: #12a8a8;
  border: 2px solid #12a8a8;
}

#download-area a:hover{
  background: #fff;
  color: #12a8a8;
  transition: ease 0.2s;
}

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

    .form_item, .tab_panel_sub .form_item {
        width: 100%;
    }
    
    .kinds .wpcf7-checkbox {
        flex-direction: column;
    }

    .kinds .wpcf7-list-item {
        width: 100%;
    }

    #resource {
        padding: min(90/1024*100vw, 90px) 0 min(100/1024*100vw, 100px);
    }
    
    .acceptance_box{
        font-size: 0.9em;
    }

}

@media screen and (max-width: 767px) {
    #resource {
        padding: min(90/750*100vw, 90px) 0 min(100/750*100vw, 100px);
    }

    .resource_wrap {
        padding: 0 calc(50/750*100vw);
    }

    .resource_wrap_text {
        margin-bottom: 3em;
    }

    .br_sp {
        display: block;
    }

    .tab_list {
        align-items: stretch;
    }

    .tab_item {
        line-height: 1.6;
        padding: 0.5em 0;
    }

    .form_item tr {
        flex-direction: column;
        gap: 0.3em;
    }

    .form_item th,
    .form_item td {
        width: 100%;
    }

    .wpcf7-submit {
        width: 40%;
    }

    .sp_br {
        display: block;
    }

    .wpcf7-list-item-label {
        font-size: 1em;
    }

    .acceptance_box .wpcf7-list-item-label a {
        font-size: 1em;
    }
    
    #page_ttl.nobg {
	padding-top: 0;
	height: 0;
    }
    #page_ttl.nobg.resource {
            background: url(../images/resource/ttl_dl.jpg) center center / cover no-repeat;
    }

    #download-area{
        padding: 1.6em 1.2em;
    }
    #download-area p{
        font-size: 1.2em;
    }
    #download-area a{
        width: 100%;
        font-size: 1.1em;
    }

     .acceptance_box{
        font-size: 1.1em;
    }
}

