@charset "UTF-8";
/* sponsor */
.sponsor{
    width: calc((800 / 1280) * 100%);
    max-width: 800px;
    margin: 0 auto 50px;

    .sponsor_lead{
        margin: 0 0 10px 0;
        font-size: 26px;
        font-weight: 700;
        line-height: 1;
    }

    .sponsor_lead.marker-yellow{
        display: inline-block;
    }

    .sponsor_text{
        margin: 0 0 50px 0;
    }

    .sponsor_dl{
        margin: 0 0 50px 0;
        .dl_text{
            padding: 0 0 5px 0;
            margin: 0 0 15px 0;
            font-size: 18px;
            font-weight: 700;
            line-height: 1;
            border-bottom: dotted var(--color-gray-light) 3px;
        }
        .dl_item{
            width: 100%
        }
        .dl_item a{
            padding: 15px 20px;
            color: var(--text-color);
            line-height: 1;
            font-weight: 500;
            background: var(--color-gray-light);
            display: block;
            position: relative;
            transition: background cubic-bezier(0.455, 0.03, 0.515, 0.955) 0.3s;
        }

        .dl_item a:hover{
            background: var(--color-white);
        }

        .dl_item a::after{
            content: "\f054";
            width: 13px;
            font-family: Font Awesome\ 6 Free;
            color: var(--color-gray-dark);
            font-weight: bold;
            display: inline-block;
            position: absolute;
            top: 50%;
            right: 30px;
            transform: translateY(-50%);
        }
        .dl_item:not(:last-child){
            margin: 0 0 10px 0;
        }
        .icon-pdf,
        .icon-excel{
            padding: 5px 10px;
            margin: 0 0 0 20px;
            font-size: 11px;
            font-weight: 500;
            line-height: 1;
            vertical-align: bottom;
            background:  #bfdae8;
            display: inline-block;
        }
    }

    .sponsor_plan{
        .plan_text{
            padding: 0 0 5px 0;
            margin: 0 0 15px 0;
            font-size: 18px;
            font-weight: 700;
            line-height: 1;
            border-bottom: dotted var(--color-gray-light) 3px;
        }
        .plan_list{
            margin: 0 0 30px 0;
            display: flex;
            align-items: center;
            justify-content: space-between;
        }
        .plan_item{
            width: 24%;
            .lank,
            .fee{
                padding: 5px;
                display: block;
                text-align: center;
            }
            .lank{
                background: var(--sub-color2);
                border-left: solid var(--sub-color2) 1px;
                border-right: solid var(--sub-color2) 1px;
                border-top: solid var(--sub-color2) 1px;
            }
            .fee{
                border-left: solid var(--color-gray-light) 2px;
                border-right: solid var(--color-gray-light) 2px;
                border-bottom: solid var(--color-gray-light) 2px;
            }
        }
        .note{
            padding: 10px;
            border: dotted var(--color-red) 2px;
        }
    }

    .benefits{
        margin: 0 0 50px 0;

        .benefits_dlist{
            margin: 0 0 10px 0;
            display: flex;
            align-items: stretch;
            justify-content: flex-start;
        }
        .benefits_dlist dt{
            width: 200px;
            padding: 20px;
            color: var(--color-white);
            font-weight: 500;
            background: var(--color-red);
            position: relative;
        }
        .benefits_dlist dt span{
            width: 120px;
            border: solid var(--color-red) 2px;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50% ,-50%);
        }
        .benefits_dlist dd{
            width: 100%;
            padding: 20px;
            border: solid var(--color-red) 2px;
        }
        .note_list{
            margin: 5px 0 0 0;
        }
    }

    .link-donation {
        margin: 0 0 100px 0;
    }
}

@media screen and (max-width: 1024px){
    .sponsor{
        width: calc((900 / 1024) * 100%);

        .sponsor_benefits{
            width: 100%;
        }
    }
}


@media screen and (max-width: 600px){
    .sponsor{
        .sponsor_lead{
            font-size: 18px;
        }
        .sponsor_dl .dl_text,
        .plan .plan_text{
            font-size: 16px;
        }
        .benefits{
            margin: 0 0 30px 0;
            
            .benefits_dlist{
                flex-direction: column;
            }
            .benefits_dlist dt{
                width: 100%;
            }
        }
    }
}