@charset "";


/* head */
body{
    padding-top: 80px;
    line-height: normal;
}
.head{
    position: fixed;
    top: 0;
    left: 0;
    z-index: 5;
    width: 100%;
    height: 80px;
    background: #fff;
    font-size: 16px;
}
.head .inner{
    width: 1240px;
    height: 100%;
    margin: 0 auto;
    position: relative;
}
.head .inner .logo{
    position: absolute;
    display: block;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 170px;
    height: 65px;
}
.head .inner .logo figure{
    width: 100%;
    height: 100%;
}
.head .inner .menu{
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
}
.head .inner .menu > ul{
    display: flex;
}
.head .inner .menu > ul > li{
    width: max-content;
    margin-right: 55px;
}
.head .inner .menu > ul > li:last-child{
    margin-right: 0;
}
.head .inner .menu > ul > li{
    position: relative;
    height: 80px;
}
.head .inner .menu > ul > li > a {
    height: 100%;
    padding: 0 15px;
    display: flex;
    align-items: center;
}
.head .inner .menu > ul > li > a span{
    display: block;
    font-size: 19px;
}
.head .inner .menu > ul > li > a figure{
    width: 9px;
    height: 5px;
    margin-left: 5px;
    display: flex;
    transition: 0.5s;
}
.head .inner .menu > ul > li > a.on figure{
    transform: rotate(180deg);
}

.head .inner .menu > ul > li > ul{
    display: none;
    position: absolute;
    width: 100%;
    top: 85px;
    left: 0;
    background: #fff;
    border-radius: 5px;
}
.head .inner .menu > ul > li > ul li a{
    height: 40px;
    margin: 0 10px;
    display: flex;
    font-size: 14px;
    align-items: center;
    border-bottom: 1px solid #333;
}
.head .inner .menu > ul > li > ul li:last-child a{
    border-bottom: 0;
}
.head .inner .link{
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100px;
    height: 30px;
    border: 1px solid #0073B4;
    border-radius: 14.5px;
}
.head .inner .link figure{
    width: 15px;
    height: 15px;
    margin-right: 5px;
}
.head .inner .link span{
    color: #0073B4;
}
.head .inner .menu_btn{
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    flex-direction: column;
    display: none;
}
.head .inner .menu_btn.mo{
    display: none;
}
.head .inner .menu_btn span{
    width: 25px;
    height: 2px;
    margin-bottom: 6px;
    border-radius: 3px;
    background: #333;
    transition: 0.5s;
}
.head .inner .menu_btn:hover span:last-child{
    width: 15px;
}
.head .inner .menu_btn span:last-child{
    margin-bottom: 0;
}


/* head */



/* section01 */
.section01{
    padding: 30px 0;
    background: #EAF4FA;
}
.section01 .inner{
    width: 1240px;
    height: 100%;
    margin: 0 auto;
    position: relative;    
}
.section01 .inner .search{
    width: 530px;
    height: 50px;
    position: relative;
    border: 1.5px solid #FF8400;
    border-radius: 100px;
    background: #fff;
    margin: 0 auto;
    margin-bottom: 20px;
}

.section01 .inner .search input{
    position: absolute;
    left: 0;
    width: 440px;
    height: 40px;
    top: 50%;
    transform: translateY(-50%);
    border: none;
    background: none;
    padding-left: 20px;
    border-right: 1.5px solid #FF8400;
}

.section01 .inner .search input::placeholder{
    color: #999999;
}

.section01 .inner .search button{
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 90px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0;
    cursor: pointer;
}
.section01 .inner .search button span{
    font-size: 18px;
    font-weight: 600;
    color: #FF8400;
    margin-right: 7.85px;
}
.section01 .inner .search button figure{
    width: 20px;
    height: 20px;
}

.section01-1 .inner .search{
    width: 530px;
    height: 50px;
    position: relative;
    border: 1.5px solid #FF8400;
    border-radius: 100px;
    background: #fff;
    margin: 0 auto;
    margin-bottom: 20px;
}

.section01-1 .inner .search input{
    position: absolute;
    left: 0;
    width: 440px;
    height: 40px;
    top: 50%;
    transform: translateY(-50%);
    border: none;
    background: none;
    padding-left: 20px;
    border-right: 1.5px solid #FF8400;
}

.section01-1 .inner .search input::placeholder{
    color: #999999;
}

.section01-1 .inner .search button{
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 90px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0;
    cursor: pointer;
}
.section01-1 .inner .search button span{
    font-size: 18px;
    font-weight: 600;
    color: #FF8400;
    margin-right: 7.85px;
}
.section01-1 .inner .search button figure{
    width: 20px;
    height: 20px;
}

.section01 .inner .photo_link{
    display: flex;
    justify-content: space-between;
}
.section01 .inner .photo_link a{
    display: flex;
    flex-direction: column;
    align-items: center;
}
.section01 .inner .photo_link a figure{
    width: 80px;
    height: 80px;
    margin-bottom: 7px;
}
.section01 .inner .photo_link a span{
    font-size: 18px;
    text-align: center;
    word-break: keep-all;
}
/* section01 */


/* section01-1 */
.section01-1{
    padding: 2vh 0;
    background: #C9E1EF;
    height: 65vh;
}
.section01-1 .inner{
    width: 1240px;
    height: 100%;
    margin: 0 auto;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.section01-1 .inner .search{
    margin-bottom: 2vh;
}
.section01-1 .inner .photo_box{
    width: 100%;
    height: 48vh;
    margin-bottom: 2vh;
    position: relative;
    flex: 1;
}
.section01-1 .inner .photo_box .photo{
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: 0.5s;
    z-index: 4;
}
.section01-1 .inner .photo_box .photo figure{
    width: 100%;
    height: 100%;
    border-radius: 10px;
    overflow: hidden;
}
.section01-1 .inner .photo_box .photo .title{
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: max-content;
    z-index: 5;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.section01-1 .inner .photo_box .photo .title > span{
    display: block;
    font-size: 28px;
    font-weight: 600;
    color: #fff;
    margin-bottom: 25px;
}
.section01-1 .inner .photo_box .photo .title a{
    padding: 10px 25px;
    background: #ffffffb7;
    color: #00A2E1;
    border: 1px solid #00A2E1;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}
.section01-1 .inner .photo_box .photo .title a figure{
    width: 8px !important;
    height: 14px !important;
    display: flex !important;
    margin-left: 10px !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    vertical-align: middle !important;
}
.section01-1 .inner .photo_box .photo.on{
    opacity: 1;
}
.section01-1 .inner .tab{
    display: flex;
    justify-content: center;
    margin-top: auto;
}
.section01-1 .inner .tab h1{
    font-size: 22px;
    font-weight: 600;
    color: #093e8997;
    position: relative;
    margin-right: 170px;
    cursor: pointer;
    z-index: 4;
}
.section01-1 .inner .tab h1:last-child{
    margin-right: 0;
}
.section01-1 .inner .tab h1.on{
    color: #093F89;
}
.section01-1 .inner .tab h1.on::before{
    content: "";
    position: absolute;
    left: -8px;
    top: -2px;
    width: 15px;
    height: 15px;
    border-radius: 50%;
    background: #FF8400;
    z-index: -13;
}
/* section01-1 */


/* section02 */
.section02{
    padding: 2vh 0;
    height: 14vh;
    display: flex;
    align-items: center;
}
.section02 .inner{
    width: 1240px;
    height: 100%;
    margin: 0 auto;
    position: relative; 
    display: flex;
    justify-content: center;
    align-items: center;
}
.section02 .inner a{
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-right: 120px;
}
.section02 .inner a figure{
    width: 80px;
    height: 80px;
    margin-bottom: 7px;
}
.section02 .inner a span{
    font-size: 18px;
}
.section02 .inner a:last-child{
    margin-right: 0;
}

/* section02 */


/* footer */
.footer{
    padding: 1.5vh 0;
    background: #333;
    color: #fff;
    height: 10vh;
    display: flex;
    align-items: center;
}
.footer .inner{
    width: 1240px;
    height: 100%;
    margin: 0 auto;
    position: relative; 
    display: flex;
    align-items: center;
}
.footer .inner figure{
    width: 120px;
    height: 41px;
    margin-right: 30px;
}
.footer .inner .text{
    font-size: 14px;
}
.footer .inner .text p{
    margin-bottom: 3px;
    font-weight: 400;
}
.footer .inner .text p span{
    font-weight: 600;
}
.footer .inner .text p:last-child{
    color: #ffffffb5;
}
.footer .inner .link{
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    flex-direction: row;
    text-align: right;
}
.footer .inner .link a{
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin-bottom: 10px;
    margin-right: 10px;
}
.footer .inner .link a:last-child{
    /* margin-bottom: 0; */
}
.footer .inner .link a figure{
    width: 7px;
    height: 13px;
    margin-left: 7px;
    display: flex;
    margin-right: 0;
}
/* footer */
/* ===================== Tablet-ish: 501px ~ 1240px ===================== */
@media (max-width:1240px) and (min-width:501px){

  body{ padding-top:70px; }
  .head{ height:70px; font-size:15px; }
  .head .inner{ width:94vw; }
  .head .inner .logo{ width:150px; height:55px; }
  .head .inner .link{
    right:56px; width:auto; height:30px; padding:0 12px;
  }
  .head .inner .link figure{ width:14px; height:14px; }
  .head .inner .menu_btn.mo{ display:flex; }
  .head .inner .menu_btn{ display:flex; } 
  .head .inner .menu{
    position:fixed; left:0; right:0; top:70px; transform:none;
    background:#fff; border-top:1px solid #e5e7eb; border-bottom:1px solid #e5e7eb;
    display:none; z-index:6;
  }
  .head .inner .menu.open{ display:block; }

  .head .inner .menu>ul{
    display:flex; flex-direction:column; padding:18px;
  }
  .head .inner .menu>ul>li{
    height:auto;
    margin:0 0 10px 0;
    width: 100%;
  }
  .head .inner .menu>ul>li>a{
    padding:14px 10px;
    justify-content:space-between;
    background: #c8ddff33;
    border-radius: 10px;
  }
  .head .inner .menu>ul>li>a figure{width: 10px;height: 6px;}

  .head .inner .menu>ul>li>ul{
    position:static; width:100%; top:auto; left:auto;
    border:1px solid #e5e7eb; border-radius:12px; margin:10px 0 14px;
    overflow:hidden;
  }
  .head .inner .menu>ul>li>ul li a{
    height:46px; margin:0 14px; font-size:14px; border-bottom:1px solid #eee;
  }

  /* section01 */
  .section01 .inner{ width:94vw; }
  .section01 .inner .search{ width:100%; height:50px; }
  .section01 .inner .search input{
    width:calc(100% - 100px); height:38px; padding-left:16px;
  }
  .section01 .inner .search button{ width:100px; height:38px; }
  .section01 .inner .search button span{ font-size:16px; }

  .section01 .inner .photo_link{
    display:grid; grid-template-columns:repeat(4,1fr);
    gap:16px; justify-content:initial;
  }
  .section01 .inner .photo_link a figure{ width:72px; height:72px; margin-bottom:6px; }
  .section01 .inner .photo_link a span{ font-size:16px; text-align:center; }

  /* section01-1 */
  .section01-1 .inner{ width: 94vw; }
  .section01-1 .inner .photo_box{ 
    height: 48vh; 
    margin-bottom: 2vh; 
  }
  .section01-1 .inner .photo_box .photo .title>span{
    font-size: 22px; 
    margin-bottom: 16px; 
    text-align: center;
  }
  .section01-1 .inner .photo_box .photo .title a{
    padding: 9px 20px; 
    border-radius: 18px;
  }
  .section01-1 .inner .photo_box .photo .title a figure{
    width: 8px !important;
    height: 14px !important;
    display: flex !important;
    margin-left: 10px !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    vertical-align: middle !important;
  }

  .section01-1 .inner .tab{
    flex-wrap: wrap; 
    gap: 12px; 
    padding: 8px 0; 
    display: flex; 
    justify-content: center;
  }
  .section01-1 .inner .tab h1{
    font-size: 18px;
    margin-right: 0;
    border: 1px solid #093e8997;
    padding: 5px 10px;
    border-radius: 10px;
  }
  .section01-1 .inner .tab h1.on::before{ 
    left: -6px; 
    width: 12px; 
    height: 12px; 
    top: -2px; 
  }
  .section01-1 .inner .tab h1.on{
    border: 1px solid #093e89;
    background: #fff;
  }
  /* section02 */
  .section02{
    padding: 2vh 0;
    height: 18vh;
  }
  .section02 .inner{
    width: 94vw; 
    display: grid; 
    grid-template-columns: repeat(4, 1fr);
    gap: 20px; 
    justify-content: initial;
    align-items: center;
  }
  .section02 .inner a{ margin: 0; }
  .section02 .inner a figure{ 
    width: 72px; 
    height: 72px; 
  }
  .section02 .inner a span{ 
    font-size: 16px; 
    text-align: center; 
  }

  /* footer */
  .footer{
    padding: 1.5vh 0;
    background: #333;
    color: #fff;
    height: 12vh;
  }
  .footer .inner{
    width: 94vw; 
    gap: 12px;
  }
  .footer .inner .text{ 
    font-size: 13.5px; 
  }
  .footer .inner .link{
    position: static; 
    transform: none; 
    text-align: right;
    width: auto; 
    flex-direction: row; 
    gap: 18px; 
    margin-left: auto;
  }
  .footer .inner .link a{
    margin-bottom: 0;
  }
}


@media screen and (max-width:500px) {
    /* head */
body{ padding-top:80px; line-height:normal; }
.head{ position:fixed; top:0; left:0; z-index:5; width:100%; height:80px; background:#fff; font-size:16px;}
.head .inner{ width:1240px; height:100%; margin:0 auto; position:relative;}
.head .inner .logo{ position:absolute; left:0; top:50%; transform:translateY(-50%); width:170px; height:65px; display:block;}
.head .inner .logo figure{ width:100%; height:100%;}
.head .inner .menu{ position:absolute; left:50%; top:50%; transform:translate(-50%,-50%);}
.head .inner .menu>ul{ display:flex;}
.head .inner .menu>ul>li{ width:max-content; margin-right:55px; position:relative; height:80px;}
.head .inner .menu>ul>li:last-child{ margin-right:0;}
.head .inner .menu>ul>li>a{ height:100%; padding:0 15px; display:flex; align-items:center;}
.head .inner .menu>ul>li>a span{ display:block;}
.head .inner .menu>ul>li>a figure{ width:9px; height:5px; margin-left:5px; display:flex;}
.head .inner .menu>ul>li>ul{ display:none; position:absolute; width:100%; top:85px; left:0; background:#fff; border-radius:5px;}
.head .inner .menu>ul>li>ul li a{ height:40px; margin:0 10px; display:flex; font-size:14px; align-items:center; border-bottom:1px solid #333;}
.head .inner .menu>ul>li>ul li:last-child a{ border-bottom:0;}
.head .inner .link{ position:absolute; right:50px; top:50%; transform:translateY(-50%); display:flex; justify-content:center; align-items:center; width:100px; height:30px; border:1px solid #0073B4; border-radius:14.5px;}
.head .inner .link figure{ width:15px; height:15px; margin-right:5px;}
.head .inner .link span{ color:#0073B4;}
.head .inner .menu_btn.mo{
    display: flex;
}
.head .inner .menu_btn{ position:absolute; right:0; top:50%; transform:translateY(-50%); display:flex; flex-direction:column;}
.head .inner .menu_btn span{ width:25px; height:2px; margin-bottom:6px; border-radius:3px; background:#333; transition:.5s;}
.head .inner .menu_btn:hover span:last-child{ width:15px;}
.head .inner .menu_btn span:last-child{ margin-bottom:0;}
/* head */

/* section01 */
.section01{ padding:30px 0; background:#EAF4FA;}
.section01 .inner{ width:1240px; margin:0 auto; position:relative;}
.section01 .inner .search{ width:530px; height:50px; position:relative; border:1.5px solid #FF8400; border-radius:100px; background:#fff; margin:0 auto 20px;}
.section01 .inner .search input{ position:absolute; left:0; width:440px; height:40px; top:50%; transform:translateY(-50%); border:none; background:none; padding-left:20px; border-right:1.5px solid #FF8400;}
.section01 .inner .search input::placeholder{ color:#999;}
.section01 .inner .search button{ position:absolute; right:0; top:50%; transform:translateY(-50%); width:90px; height:40px; display:flex; justify-content:center; align-items:center; padding:0; cursor:pointer;}
.section01 .inner .search button span{ font-size:18px; font-weight:600; color:#FF8400; margin-right:7.85px;}
.section01 .inner .search button figure{ width:20px; height:20px;}
.section01 .inner .photo_link{ display:flex; justify-content:space-between;}
.section01 .inner .photo_link a{ display:flex; flex-direction:column; align-items:center;}
.section01 .inner .photo_link a figure{ width:80px; height:80px; margin-bottom:7px;}
.section01 .inner .photo_link a span{ font-size:18px;}
/* section01 */

/* section01-1 */
.section01-1{ padding:3vh 0; background:#C9E1EF; min-height: 55vh;}
.section01-1 .inner{ width:92vw; margin:0 auto; position:relative;}
.section01-1 .inner .photo_box{ width:100%; height:45vh; margin-bottom:3vh; position:relative;}
.section01-1 .inner .photo_box .photo{ position:absolute; left:0; top:0; width:100%; height:100%; opacity:0; transition:.5s; z-index:4;}
.section01-1 .inner .photo_box .photo figure{

height: 100%;

border-radius: 10px;

overflow: hidden;
}

.section01-1 .inner .photo_box .photo .title{ position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:max-content; z-index:5; display:flex; flex-direction:column; align-items:center;}
.section01-1 .inner .photo_box .photo .title>span{ display:block; font-size:18px; font-weight:600; color:#fff; margin-bottom:14px; text-align:center;}
.section01-1 .inner .photo_box .photo .title a{ padding:8px 18px; background:#ffffffb7; color:#00A2E1; border:1px solid #00A2E1; border-radius:18px; display:flex; align-items:center; justify-content:center;}
.section01-1 .inner .photo_box .photo .title a figure{ width:8px; height:14px; display:flex; margin-left:10px;}
.section01-1 .inner .photo_box .photo.on{ opacity:1;}
.section01-1 .inner .tab{ display:flex; justify-content:center;}
.section01-1 .inner .tab h1{ font-size:16px; font-weight:600; color:#093e8997; position:relative; margin-right:0; cursor:pointer; z-index:4; border: 1px solid #093e8997; border-radius: 5px; padding: 5px 10px;}
.section01-1 .inner .tab h1:last-child{ margin-right:0;}
.section01-1 .inner .tab h1.on{ color:#093F89;
        border: 1px solid #093e89;
    background: #fff;}
.section01-1 .inner .tab h1.on::before{ content:""; position:absolute; left:-6px; top:-1px; width:10px; height:10px; border-radius:50%; background:#FF8400; z-index:-13;}
/* section01-1 */

/* section02 */
.section02{ padding:4vh 0 3vh; min-height: 18vh;}
.section02 .inner{ width:1240px; margin:0 auto; position:relative; display:flex; justify-content:center;}
.section02 .inner a{ display:flex; flex-direction:column; align-items:center; margin-right:120px;}
.section02 .inner a figure{ width:80px; height:80px; margin-bottom:7px;}
.section02 .inner a span{ font-size:18px;}
.section02 .inner a:last-child{ margin-right:0;}
/* section02 */

/* footer */
.footer{ padding:15px 0; background:#333; color:#fff;}
.footer .inner{ width:1240px; margin:0 auto; position:relative; display:flex; align-items:center;}
.footer .inner figure{ width:120px; height:41px; margin-right:30px;}
.footer .inner .text{ font-size:14px;}
.footer .inner .text p{ margin-bottom:3px; font-weight:400;}
.footer .inner .text p span{ font-weight:600;}
.footer .inner .text p:last-child{ color:#ffffffb5;}
.footer .inner .link{ position:absolute; right:0; top:50%; transform:translateY(-50%); display:flex; flex-direction:column; text-align:right;}
.footer .inner .link a{ display:flex; align-items:center; justify-content:flex-end; margin-bottom:10px;}
.footer .inner .link a:last-child{ margin-bottom:0;}
.footer .inner .link a figure{ width:7px; height:13px; margin-left:6px; display:flex;}
/* footer */
}
/* ===================== Mobile: ≤500px ===================== */
@media (max-width:500px){

  body{ padding-top:60px; }
  .head{ height:60px; font-size:14px; }
  .head .inner{ width:92vw; }
  .head .inner .logo{ width:120px; height:46px; }
  .head .inner .link{ right:48px; width:auto; height:28px; padding:0 10px; }
  .head .inner .link figure{ width:14px; height:14px; }
  .head .inner .menu_btn{ display:flex; } 

  .head .inner .menu{
    position:fixed; left:0; right:0; top:60px; transform:none;
    background:#fff; border-top:1px solid #e5e7eb; border-bottom:1px solid #e5e7eb;
    display:none; z-index:6;
  }
  .head .inner .menu.open{ display:block; }

  .head .inner .menu>ul{
    display:flex; flex-direction:column; padding:16px;
  }
  .head .inner .menu>ul>li{
    height:auto;
    margin:0 0 8px 0;
    width: 100%;
  }
  .head .inner .menu>ul>li>a{
    padding:12px 8px;
    justify-content:space-between;
    background: #c8ddff33;
    border-radius: 10px;
  }
  .head .inner .menu>ul>li>a figure{width: 9px;height: 5px;}

  .head .inner .menu>ul>li>ul{
    position:static; width:100%; top:auto; left:auto;
    border:1px solid #e5e7eb; border-radius:10px; margin:8px 0 12px;
    overflow:hidden;
  }
  .head .inner .menu>ul>li>ul li a{
    height:44px; margin:0 12px; font-size:14px; border-bottom:1px solid #eee;
  }

  /* section01 */
  .section01 .inner{ width:92vw; }
  .section01 .inner .search{ width:100%; height:46px; }
  .section01 .inner .search input{ width:calc(100% - 92px); height:36px; padding-left:14px; }
  .section01 .inner .search button{ width:92px; height:36px; }
  .section01 .inner .search button span{ font-size:16px; }
  .section01 .inner .photo_link{
    display:grid; grid-template-columns:repeat(3,1fr); gap:14px; justify-content:initial;
  }
  .section01 .inner .photo_link a figure{ width:64px; height:64px; margin-bottom:6px; }
  .section01 .inner .photo_link a span{ font-size:15px; }

  /* section01-1 */
  .section01-1 .inner{ width: 92vw; }
  .section01-1 .inner .photo_box{ 
    height: 42vh; 
    margin-bottom: 2vh;
  }
  .section01-1 .inner .photo_box .photo .title>span{ 
    font-size: 18px; 
    margin-bottom: 14px; 
    text-align: center; 
  }
  .section01-1 .inner .photo_box .photo .title a{ 
    padding: 8px 18px; 
    border-radius: 18px; 
  }
  .section01-1 .inner .photo_box .photo .title a figure{
    width: 8px !important;
    height: 14px !important;
    display: flex !important;
    margin-left: 10px !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    vertical-align: middle !important;
  }
  .section01-1 .inner .tab{
    flex-wrap: wrap;
    gap: 10px;
    padding: 6px 0;
    display: flex;
    justify-content: center;
  }
  .section01-1 .inner .tab h1{
    font-size: 16px;
    margin-right: 0;
    border: 1px solid #093e8997;
    border-radius: 5px;
    padding: 5px 10px;
  }
  .section01-1 .inner .tab h1.on{
    border: 1px solid #093e89;
    background: #fff;
  }
  .section01-1 .inner .tab h1.on::before{ 
    left: -6px; 
    width: 10px; 
    height: 10px; 
    top: -1px; 
  }

  /* section02 */
  .section02 .inner{ 
    width: 92vw; 
    display: grid; 
    grid-template-columns: repeat(2, 1fr); 
    gap: 18px; 
    justify-content: initial;
    align-items: center;
  }
  .section02 .inner a{ margin: 0; }
  .section02 .inner a figure{ 
    width: 64px; 
    height: 64px; 
  }
  .section02 .inner a span{ 
    font-size: 16px; 
    text-align: center; 
  }

  /* footer */
  .footer{ 
    padding: 1.5vh 0; 
    background: #333; 
    color: #fff; 
    height: 12vh;
  }
  .footer .inner{
    width: 92vw;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    justify-content: center;
  }
  .footer .inner figure{ 
    width: 110px; 
    height: auto; 
    margin-right: 0; 
  }
  .footer .inner .text{
    font-size: 13px;
    text-align: center;
  }
  .footer .inner .link{
    position: static;
    transform: none;
    text-align: center;
    width: 100%;
    flex-direction: column;
    align-items: center;
  }
  .footer .inner .link a{
    margin-bottom: 8px;
  }
}