@charset "UTF-8";
/* CSS Document */
*,
*::before,
*::after { box-sizing: border-box; }

a {
    color: inherit; /* 부모 요소의 텍스트 색상 상속 */
    text-decoration: none; /* 밑줄 제거 */
}

body {
    font-family: "Pretendard", Helvetica;
    font-weight: 500;
    font-size: 16px;
    margin: 0;
    color: var(--theme-normal-text);
    height: auto;
    /*display: flex;*/
    /*flex-direction: column;*/
}

header {
    max-width: 1400px;
    margin: 0 auto;
    padding-left: var(--page-side-padding);
    padding-right: var(--page-side-padding);
}
footer {
    margin: 0 auto;
}
main {
    margin: 0 auto;
    width: 100%;
    padding-left: var(--page-side-padding);
    padding-right: var(--page-side-padding);
}

.main-container {
    background: var(--theme-background);
    width: 100%;
    max-width: 1400px;
    display: flex;
    flex-direction: column;
    gap: 35px;
    align-items: center;
    justify-content: flex-start;
    position: relative;
    overflow: hidden;
    margin: 10px auto;
    /*background-color: #cdcdcd;*/
}

/*================================================*/
/*    Three block main*/
/*================================================*/

.three-block-container {
    display: flex;
    padding: 20px 0;
    flex-direction: row;
    align-items: flex-start;
    justify-content: center;
    column-gap: 40px;
    row-gap: 20px;
    flex-shrink: 0;
    position: relative;
    height: auto;
    width: 100%;
    overflow: hidden;
    @media only screen and (max-width: 800px)  {
        justify-content: center;
    }
}

.left-block-container {
    padding: 0 0 10px 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: flex-end;
    justify-content: flex-start;
    width: 100%;
    max-width: 250px;
    min-width:150px;
    height: auto;
    min-height: 400px;
    position: relative;
    /*overflow-y: auto;   !* 콘텐츠 넘칠 때만 스크롤 *!*/
    overflow: hidden;
    /*background: #fdfbd0;*/
    @media only screen and (max-width: 1200px)  {
        max-width: 200px;
    }
    @media only screen and (max-width: 1024px)  {
        display: none;
    }
}

.center-block-container {
    width: 100%;
    max-width: 800px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: flex-start;
    justify-content: flex-start;
    position: relative;
    /*overflow-y: auto;   !* 콘텐츠 넘칠 때만 스크롤 *!*/
    overflow: hidden;
    /*background: #dfead0;*/
}

.right-block-container {
    padding-top: 45px;
    display: var(--gallery-side-block);
    flex-direction: column;
    gap: 10px;
    align-items: flex-start;
    justify-content: flex-start;
    width: 250px;
    min-width: 250px;
    position: relative;
    /*overflow-y: auto;   !* 콘텐츠 넘칠 때만 스크롤 *!*/
    overflow: hidden;
}

.side-event-container {
    display: flex;
    padding-top: 10px;
    padding-bottom: 10px;
    flex-direction: column;
    gap: 20px;
    align-items: center;
    justify-content: flex-start;
    align-self: stretch;
    flex-shrink: 0;
    position: relative;
    overflow: hidden;
}
