html{height:100%;}

body{
min-height:100vh;
background-color: #F0EEE9;;
font-family:"Lucida Grande", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Geneva, Arial, Verdana, sans-serif;
overflow-x: hidden;}

a:link{color : #0a375c; text-decoration:underline;}
a:visited{color : #3b0a3d;}
a:hover{text-decoration:underline;}

* {
  box-sizing: border-box;
}

#main{
margin:0;
padding:0;
text-align:center;}

h1{
font-family:"Noto Serif JP", serif; 
font-size:1.8rem;
font-weight:600;
letter-spacing:-0.05rem;
line-height:2.5rem;}

div#header{
    height:95vh;
    background-image:url('images/250629_header_v2.png');
    background-position: center;
    background-size:cover;
    text-align:center;
    display:flex;
    align-items:center;
    }

div#main_title_container{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    width:70vw;
    max-width:850px;
    min-width:400px;
    margin-left:auto;
    margin-right:auto;}

div.main_title_left{
    width:40%;
    min-width:300px;
    margin-bottom:2rem;}

div.main_title_right{
    width:55%;
    min-width:300px;
    margin-bottom:2rem;}

img.kc_main_title{
    object-fit:cover;
    width:100%;
    height:auto;}

div.container_b{
    width:100%;}

div.container_y{
    width:100%;
    background-color: #F1CA68;}

div.honbun{
    max-width:1050px;
    margin-left:auto;
    margin-right:auto;
    padding:1rem;
    text-align:left;
    font-size:1.1rem;
    line-height:160%;
}

div.honbun_lead_footer{
    width:95%;
    max-width:1050px;
    margin:3.5rem 0rem 2rem;
    margin-left:auto;
    margin-right:auto;
    text-align:center;
    font-size:1.1rem;
    line-height:180%;
}

div.article1{
    margin-top:0;
    margin-bottom:2.5rem;
    display: flex;
    flex-wrap:wrap;
    margin-left:auto;
    margin-right:auto;
    text-align:center;
    justify-content: center;}

div.article_left1{
    width:15%;
    margin-right:2%;
    width:fit-content;}

div.article_right1{
    width:80%;
    text-align:left;}

div.article2{
    margin-top:0;
    margin-bottom:2.5rem;
    display: flex;
    flex-wrap:wrap;
    margin-left:auto;
    margin-right:auto;
    text-align:center;
    justify-content: center;}

div.article_left2{
    width:15%;
    margin-right:2%;
    width:fit-content;}

div.article_right2{
    width:63%;
    text-align:left;}

div.article{
    margin-top:0;
    margin-bottom:2.5rem;
    display: flex;
    flex-wrap:wrap;
    margin-left:auto;
    margin-right:auto;
    text-align:center;
    justify-content: center;}

.kc_image{
    object-fit:cover;
    width:100%;
    max-width:160px;
    height:auto;}

h2{
    text-align: center;
    font-size:2.2rem;
    line-height:150%;
    margin:1rem;}

div.notice{
    background-color: #fff;
    text-align: left;
    margin:2rem 0rem;
    padding:0.5rem;}

ol.condition{
    background-color: #fff;
    text-align: left;
    padding:1rem;
    margin-left: auto;
    margin-right: auto;}

ol.condition li{
    margin:1rem;
    font-size:1.1rem;
    line-height:1.6rem;}

div.block_content ul{
    margin-top:0.5rem;
    background-color: #fff;
    text-align: left;
    list-style: circle; 
    font-size:1.1rem;
    line-height:2.5rem;}

p.caution{
    margin-top:2rem;
    margin-bottom:2rem;
    font-size:0.95rem;
    line-height:1.8rem;
    }

span.due_date{font-weight:800;}

.kc_image_l{
    width:85%;
    max-width: 950px;
    min-width: 340px;
    margin-top:2rem;
    margin-left:auto;
    margin-right:auto;}

div.entry_button{
background-color:#F1CA68;
width:fit-content;
padding:0.5rem;
border-radius:5px;
margin-left: auto;
margin-right:auto;}

.entry_button:hover{ background:#f3c247 ; box-shadow:1px 1px 5px #999; }

dl.information{
    display: flex;
    flex-wrap:wrap;
    margin-left:auto;
    margin-right:auto;}

dl.information dt{
width:25%;
padding-left:1rem;
margin-bottom:1rem;
background-color: rgba(255,255,255,0.7);}

dl.information dd{
width:65%;
margin-bottom:1rem;}

@media (max-width: 450px){
#main{
max-widgh:375px;
    margin:0;
padding:0;
text-align:center;}

    
div.honbun{
    max-width:375px;
    margin-left:auto;
    margin-right:auto;
    padding:1rem;
    text-align:left;
    font-size:1.1rem;
    line-height:160%;
}

div.article_right1{
    width:100%;
    text-align:left;}

div.article_right2{
    width:100%;
    text-align:left;}

dl.information{
    display:flex;
    flex-direction: column;
    width:100%;
    margin-left:auto;
    margin-right:auto;}
    
dl.information dt{
    width:100%;
padding-left:1rem;
margin-bottom:0.5rem;
background-color: rgba(255,255,255,0.7);}

dl.information dd{
width:100%;
margin-left:0;
margin-bottom:1rem;}
  }


