
#container { width: 1800px; margin: 100px auto; }
#container.none { display: none; }
li, input { font-size: 20px; }
h4 { background-color: gold; padding: 5px 20px; margin: 0; margin-bottom: 40px; }
h4 { padding: 5px 20px; font-size: 24px; }
label { padding: 5px 10px; border-radius: 10px 10px 0 0; background: blue; color: #FFF; }
.sp-only { display: none; }
.pc-only { display: inline-block; ; }
p.red { color: #F00; }
.flex-wrapper { display: flex; justify-content: flex-start; flex-wrap: wrap; gap: 40px; }
.flex-wrap { display: flex; justify-content: flex-start; flex-wrap: wrap; gap : 1em; }
.flex-wrap div { width : calc((100% - 1em) / 2); }
.flex-wrapper > div { width: calc( (100% - 120px) / 4 ); }
.iframe-wrapper { position: relative; padding-bottom: 56.25%; height:0; overflow: hidden; }
.iframe-wrapper iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%!important; }

li { display: flex; align-items: center; }
li img { margin-left: 1rem; }

/* スムーススクロール */
html { scroll-behavior: smooth; }
/* トップに戻るボタン */
a#to {
    background: #5ba9f7;
    width: 55px;
    height: 55px;
    position: fixed;
    right: 10px;
    bottom: 50px;
    z-index: 999;
    border-radius: 9999px;
    display: inline-block;
    transition: opacity 0.8s;
}
/* 上三角 */
a#to:before {
    display: inline-block;
    color: #FFF;
    line-height: 1;
    width: 0.8rem;
    height: 0.8em;
    border: 0.2em solid currentColor;
    border-left: 0;
    border-bottom: 0;
    box-sizing: border-box;
    content: "";
    z-index: 1000;
    opacity: 1;
    left: 50%;
    top: 55%;
    position: absolute;
    transform: translate(-50%, -50%) rotate(-45deg);
}
/* hover時 */
a#to:hover { opacity: 0.8 !important; }

/*タブ切り替え全体のスタイル*/
.tabs {
    margin-top: 50px;
    padding-bottom: 40px;
    background-color: #fff;
    width: 100%;
    margin: 0 auto;
}
/*タブのスタイル*/
.tab_item {
    width: calc(100% / 6);
    padding: 15px;
    border: 1px solid #FFF;
    border-bottom: 2px solid #3461ac;
    background-color: #d9d9d9;
    line-height: 1;
    font-size: 0.8rem;
    text-align: center;
    color: #565656;
    display: block;
    float: left;
    text-align: center;
    font-weight: bold;
    transition: all 0.2s ease;
}
/*選択されているタブのスタイルを変える*/
/* .tabs input:checked + .tab_item { background-color: #3461ac; color: #fff; } */
.tabs a.active .tab_item { background-color: #3461ac; color: #fff; }

.tab_item:hover {
    opacity: 0.5;
    cursor: pointer;
}
/*ラジオボタンを全て消す*/
input[name="tab_item"] { display: none; }
/*タブ切り替えの中身のスタイル*/
.tab_content {
    /* display: none; */
    clear: both;
    overflow: hidden;
    padding: 1rem 0;
}
/*選択されているタブのコンテンツのみを表示*/
/* #tab00:checked ~ #tab00_content,
#tab01:checked ~ #tab01_content,
#tab02:checked ~ #tab02_content,
#tab03:checked ~ #tab03_content,
#tab04:checked ~ #tab04_content,
#tab05:checked ~ #tab05_content {
    display: block;
} */

td input[type=number], td select {
    width: 70%;
    padding: 5px;
    margin: 0 5px 0 0;
}

@media screen and (max-width: 967px) {
#container { width: 100%; }
h1, h4, h4  { font-size: 1rem; }
h4 { margin: 0.5rem 0; }
li, input { font-size: 0.7rem; padding: 0.5rem; }
.tab_content { padding: 0; }
.flex-wrapper { 
    /* flex-direction: column; */
    gap: 1rem;
}
.tab_item {
    font-size: 10px;
    margin-left: 0;
    width: calc(100% / 5);
    height: 1.5rem;
    padding: 26px 3px;
    line-height: 1.3;
    display: flex;
    justify-content: center;
    flex-direction: column;
    border: 1px solid #FFF;
}
.flex-wrapper > div { width: calc((100% - 8px - 1rem) / 2 ); }
.sp-only { display: block; }
.pc-only { display: none; }
}