@charset "utf-8";

/* -----------------------------------------------------------
　common
----------------------------------------------------------- */

@media screen and (max-width: 1000px) {
  body {
    -webkit-text-size-adjust: 100%;
    font-size: 16px;
  }
  .pc_cont {display: none !important;}

}

/* -----------------------------------------------------------
  template
----------------------------------------------------------- */

@media screen and (max-width: 1000px) {
  
  /* :::::::::: header :::::::::: */

  header {height: 70px;}
  header::after {width: calc(100% - 140px);}
  header .logo {
    width: 140px;
    height: 70px;
  }
  header .logo a {transition: 0s;}
  header .logo a:hover {opacity: 1;}
  header .logo img {width: 103px;}
  header .header_menu ,
  header .header_btn  {display: none;}
  .menu_box {
    inset: 70px 0 auto;
    max-height: calc(100dvh - 70px);
    padding: 0 0 50px;
  }
  .menu_box > div {
    display: block;
    padding: 30px 5%;
  }
  .menu_box > div > p {
    font-size: 30px;
    margin: 0 0 10px;
  }
  .menu_box > div > p::after {margin: 0 0 5px 10px;}
  .menu_box > div > p a {transition: 0s;}
  .menu_box > div > p a:hover {opacity: 1;}
  .menu_box > div > div {width: 100%;}
  .menu_box > div > div .btn_menu {
    display: block;
    margin: 0;
  }
  .menu_box > div > div .btn_menu > li {
    width: 100%;
    margin: 0 0 20px;
  }
  .menu_box > div > div .btn_menu > li a {font-size: 16px;}
  .menu_box > div > div .txt_menu li {margin: 0 3em 0.5em 0;}

  /* :::::::::: nav :::::::::: */

  nav {inset: 70px 0 auto;}
  nav .menu {
    width: 50px;
    height: 50px;
    padding: 30px 0 0;
    inset: -60px 5% auto auto;
  }
  nav .menu::before {
    inset: 10px 0 auto;
    box-shadow: 0 8px 0 0 #000000;
  }
  nav .menu::after {inset: 26px 0 auto;}
  .nav-open nav .menu::before ,
  .nav-open nav .menu::after {inset: 18px 0 auto;}
  nav .menu_box > div {padding-bottom: 20px;}
  nav .menu_box > .search_box {padding: 0 5% 30px;}
  nav .menu_box > .search_box > div {padding: 20px 0 0;}
  nav .menu_box > .search_box > div p {display: none;}
  nav .menu_box > .search_box > div form {width: 100%;}
  nav .menu_box > .search_box > div form input[type="text"] {font-size: 20px;}
  nav .menu_box > .search_box > div form input::placeholder {color: #707070;}
  .menu_box .header_btn {
    display: block;
    padding: 0 5%;
  }
  .menu_box .header_btn li {
    width: 100%;
    height: 60px;
    line-height: 60px;
    margin: 0 0 15px;
    text-align: center;
  }
  .menu_box .header_btn li a {
    display: block;
    height: 100%;
    color: #FFFFFF;
    font-size: 20px;
    font-weight: 700;
    border-radius: 5px;
    text-decoration: none;
  }
  .menu_box .header_btn li:nth-child(1) a {background: #00A9AC;}
  .menu_box .header_btn li:nth-child(2) a {background: #FFFFFF;color: var(--color_b);}
  .menu_box .header_btn li a::after {
    display: inline-block;
    vertical-align: middle;
    content: "";
    width: 1.25em;
    height: 1.25em;
    margin: 0 0 0.25em 0.25em;
  }
  .menu_box .header_btn li:nth-child(1) a::after {background: url("../img/common/ico_contact.svg") no-repeat center / contain;}
  .menu_box .header_btn li:nth-child(2) a::after {
    background: url("../img/common/ico_link_at.svg") no-repeat center / contain;
    margin: 0 0 0.5em 0.25em;
  }
  
  /* :::::::::: main :::::::::: */

  main {margin: 70px 0;}
  .box {padding: 0 5%;}
  .pnkz .pnkz_inner {padding: 0 5%;}

  /* :::::::::: aside :::::::::: */

  aside .box_menu {gap: 20px;}
  aside .box_menu > li {
    width: calc((100% - 20px) / 2);
    padding: 0;
    border-radius: 4px;
  }
  aside .box_menu > li::after {border-radius: 2px;}
  aside .box_menu > li p {
    font-size: 14px;
    margin: 0;
  }
  aside .box_menu > li p a {
    display: block;
    height: 100%;
    padding: 1em;
    transition: 0s;
  }
  aside .box_menu > li p a:hover {opacity: 1;}
  aside .box_menu > li ul {display: none;}
  aside .box_menu > .box_menu_children p {width: calc((100% - 20px) / 2);}
  aside .box_menu > .box_menu_children p a {padding: 1em;}
  aside .txt_menu {margin: 20px 0 40px;}
  aside .txt_menu li {
    font-size: 14px;
    margin: 0 0.75em 0 0;
    padding: 0 0.75em 0 0;
  }
  aside .txt_menu li a:hover {opacity: 1;}

  /* :::::::::: footer :::::::::: */

  .pagetop {
    width: 40px;
    inset: auto 10px 10px auto;
  }
  footer .address {
    padding: 20px 0;
    line-height: 2;
    font-size: 12px;
  }
  footer > .box {padding: 30px 5% 15px;}
  footer > .box > div > p {
    align-items: flex-start;
    line-height: 1.6;
    font-size: 10px;
  }
  footer > .box > div > p img {
    width: 45px;
    margin: 0 15px 0 0;
  }
  footer > .box > div > ul {
    width: 100%;
    margin: 20px 0;
    justify-content: center;
  }
  footer > .box > div > ul .youtube {margin: 0 20px 0 0;}
  footer > .box > div > ul li a {transition: 0s;}
  footer > .box > div > ul li a:hover {opacity: 1;}
  footer > .box > div + div {padding: 0;}
  footer > .box > div + div ul {
    width: 100%;
    justify-content: flex-start;
    margin: 0 0 20px;
  }
  footer > .box > div + div ul li {
    font-size: 12px;
    margin: 0 2em 0 0;
  }
  footer > .box > div + div > div {font-size: 10px;}
  footer > .box > div + div > div img {width: 80px;}
  
}

/* -----------------------------------------------------------
 subpage
----------------------------------------------------------- */

@media screen and (max-width: 1000px) {

  .news_title {margin: 70px 0 0;}
  .news_title > div {margin: 0 0 20px;}
  .news_title > div a {transition: 0s;}
  .news_title > div a:hover {opacity: 1;} 
  .news_title h1 {
    font-size: 32px;
    margin: 30px 0 0;
  }
  .ir_news_bottom {margin: 50px 0 0;}
  
  .p_title {
    font-size: 32px;
    margin: 40px 0 30px;
  }
  .editor_contents {font-size: 14px;}
  .h2_commmon,
  .editor_contents h2 {
    font-size: 27px;
    margin: 50px 0 20px;
  }
  .h3_commmon,
  .editor_contents h3 {margin: 40px 0 15px;}
  .h4_commmon,
  .editor_contents h4 {margin: 25px 0 10px;}
  .editor_contents table th,
  .editor_contents table td {padding: 1.5em 0.75em;}
  .editor_contents .border_box ,
  .editor_contents .bg_box {
    padding: 40px 30px;
    margin: 20px 0;
  }
  .btn_link {width: 100%;}
  .btn_link a {
    font-size: 14px;
    transition: 0s;
  }
  .btn_link a:hover {opacity: 1;}
  .btn_text a {font-size: 14px;}
  .btn_text a::after {transition: 0s;}
  .btn_text a:hover::after {transform: translateX(0);}
  .btn_jump {width: 100%;}
  .btn_jump a {
    transition: 0s;
    font-size: 14px;
  }
  .btn_jump a:hover {opacity: 1;}
  
}

/* -----------------------------------------------------------
 IRParts
----------------------------------------------------------- */

@media screen and (max-width: 1000px) {
  
  .ir_newslist li {font-size: 14px;}
  .ir_newslist li .ir_title {width: 100%;}
  .ir_newslist li .ir_title a {
    display: block;
    overflow: hidden;
  }
  .ir_news_title {
    display: block;
    padding: 0 0 10px;
  }
  .ir_pagenation {
    justify-content: flex-start;
    margin: 20px 0 10px;
  }
  .ir_select {margin: 0 0 50px;}
  .ir_select > div {justify-content: space-between;}
  .select_box {
    width: 48%;
    margin: 0;
  }

  .sub_link {
    font-size: 14px;
    padding: 10px 25px;
  }
  .sub_link li {
    margin: 5px 1em 5px 0;
    padding: 0 1em 0 0!important;
  }
  .sub_link li a {transition: 0s;}
  .sub_link li a.current,
  .sub_link li a:hover {color: var(--color_b);}
  .sub_link li a::before {transition: 0s;}

  .sibling_list {
    font-size: 14px;
    padding: 10px 25px;
  }
  .sibling_list li {
    margin: 5px 1em 5px 0;
    padding: 0 1em 0 0!important;
  }
  .sibling_list li a {transition: 0s;}
  .sibling_list li a.current,
  .sub_link li a:hover {color: var(--color_b);}

  .editor_contents .ac {
    margin: 20px 0 0;
    font-size: 16px;
    padding: 1.1em 2.5em 1.1em 1em;
  }
  .editor_contents .ac::before {width: 25px;right: 20px;}
  .editor_contents .ac::after {height: 25px;right: 32px;}

  .ir_library h2 {margin: 0 0 20px;}
  .ir_library h3 {margin: 0 0 15px;}
  .document_list {gap: 10px 0;}
  .document_list li {
    width: 50%;
    font-size: 12px;
    padding: 0 10px 0 0;
  }
  .portal_link {
    display: block;
    margin: 50px 0;
  }
  .portal_link > li {width: 100%;}
  .portal_link > li:nth-child(2) {border-top: none;}
  .portal_link > li a {padding: 20px 10px;}
  .portal_link > li a figure {
    width: 35%;
    height: auto;
  }
  .portal_link > li a figure img {transition: 0s;}
  .portal_link > li a:hover figure img {transform: scale(1);}
  .portal_link > li a dl {
    width: 60%;
    padding: 20px 0;
    transition: 0s;
  }
  .portal_link > li a:hover dl {opacity: 1;}
  .portal_link > li a dl::after {
    inset: auto 0 22px auto;
    width: 24px;
    height: 10px;
  }
  .portal_link > li a dl dt {
    font-size: 18px;
    margin: 0 0 10px;
  }
  .portal_link.portal_link_w > li {padding: 20px 10px!important;}
  .portal_link.portal_link_w > li > figure {width: 35%;}
  .portal_link.portal_link_w > li > dl {width: 60%;}
  .portal_link.portal_link_w > li > dl dt {
    font-size: 18px;
    margin: 0 0 10px;
  }
  .portal_link.portal_link_w > li > dl dd ul li {font-size: 14px;}
  .portal_link.portal_link_w > li > dl a {padding: 0;}
  .portal_archive {
    display: block;
    margin: 0 0 50px;
  }
  .portal_archive > li {
    padding: 20px 10px;
    width: 100%;
    align-items: flex-start;
  }
  .portal_archive > li:nth-child(2) {border-top: none;}
  .portal_archive > li figure {width: 35%;}
  .portal_archive > li dl {width: 60%;}
  .portal_archive > li dl dt {
    display: block;
    height: auto;
    font-size: 18px;
    margin: 0 0 10px;
  }
  .portal_archive > li dl dd .btn_link {
    width: 100%!important;
    min-width: 100%!important;
    margin: 10px 0 0!important;
  }
  .ir_top .box .flex section:nth-of-type(1) {width: 100%;}
  .ir_top .box .flex .ir_top_document .title_h2 {font-size: 18px;} 
  .ir_top .box .flex .ir_top_document {
    display: block;
    width: 100%;
    margin: 0 0 80px;
  }
  .ir_top .ir_news_title .btn_jump {margin: 10px 0 0!important;}
  .ir_top .box .flex .ir_top_document .document_list {width: 100%;}
  .ir_top .box .flex .ir_top_document .document_list li {
    width: 100%;
    font-size: 16px;
  }
  .ir_top .box .flex .ir_top_document .flex + div {width: 100%;}
  .ir_top .box .flex .ir_top_document .btn_link {
    width: 100%!important;
    margin: 10px 0 20px!important;
  }
  .ir_top .ir_link_box {
    display: block;
    margin: 0 auto 50px;
  }
  .ir_top .ir_link_box li {
    width: 100%;
    margin: 0 0 40px;
  }
  .ir_top .ir_link_box li a figure img {transition: 0s;}
  .ir_top .ir_link_box li a:hover figure img {transform: scale(1);}
  .ir_top .ir_link_box li a p::after {transition: 0s;}
  .ir_top .ir_link_box li a:hover p::after {transform: translateX(0);}

  .ir_top .pickup_list {
    display: block;
    margin: 0 auto;
  }
  .ir_top .pickup_list li a figure {
    aspect-ratio: 250 / 120;
    overflow: hidden;
    margin: 0 0 10px;
    border-radius: 5px;
  }
  .ir_top .pickup_list li a figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0s;
  }
  .ir_top .pickup_list li a:hover figure img {transform: scale(1);}
  .ir_top .pickup_list li a p {
    font-size: 14px;
    transition: 0s;
    padding: 0 20px;
  }
  .ir_top .pickup_list li a:hover {text-decoration: none;}
  .ir_top .pickup_list li a:hover p {opacity: 1;}
  .ir_top .pickup_list .slick-dots li button::before {content: none;}
  .ir_top .pickup_list .slick-dots li button {
    width: 12px;
    height: 12px;
    background: #E4E4E4;
    border-radius: 50%;
  }
  .ir_top .pickup_list .slick-dots li.slick-active button {background: var(--color_b);}
  .ir_top .pickup_list .slick-arrow {
    width: 20px;
    height: 20px;
    border-top: solid 2px #707070;
    border-right: solid 2px #707070;
    z-index: 2;
  }
  .ir_top .pickup_list .slick-arrow::before {content: none;}
  .ir_top .pickup_list .slick-prev {left: -5px;transform: rotate(-135deg);}
  .ir_top .pickup_list .slick-next {right: -5px;transform: rotate(45deg);}
  
  .ir_top .ir_top_calendar {margin: 0 auto 60px;}
  .ir_top .ir_top_calendar .btn_text {
    position: static;
    margin: 20px 0 0!important;
    font-size: 14px;
  }
  .ir_top .ir_top_calendar figure {overflow-x: scroll;}
  .ir_top .ir_top_calendar figure img{width: 250%;max-width: none;}
  
  table.ir_archive {
    font-size: 14px;
    width: auto;
  }

  .business_list > li {
    display: block;
    margin: 50px 0 0!important;
  }
  .business_list > li figure {
    width: 100%;
    margin: 0 0 10px;
  }
  .business_list > li > div {width: 100%;}
  .business_list > li > div h3 {
    font-size: 18px;
    margin: 0 0 20px;
  }
  .business_list > li > div h3 a::after {transition: 0s;}
  .business_list > li > div h3 a:hover::after {transform: translateX(0);}
  .business_list > li > div dl dt {font-size: 16px;}
  .business_list > li > div dl dd p {font-size: 14px;}
  .business_list > li > div dl dd ul {width: 100%;}
  .business_list > li > div dl dd ul li {margin: 0 30px 0 0;font-size: 14px;}
  
  .ir_numbers h2 {
    font-size: 23px;
    padding: 30px 0 0;
    margin: 40px 0 20px;
  }
  .ir_numbers h3 {
    margin: 50px 0 20px;
    font-size: 20px;
  }
  .ir_numbers p {margin: 20px 0;}
  .ir_numbers .country {padding: 15px;}
  .ir_numbers .flow {padding: 15px;}

  .ir_numbers .num_box {display: block;}
  .ir_numbers .num_box li {
    width: 100%;
    padding: 20px 30px;
    margin: 0 0 20px;
  }
  .ir_numbers .num_box li h4 {font-size: 20px;}
  .ir_numbers .num_box li > div p {
    position: relative;
    text-align: center;
    width: fit-content;
    font-size: 25px;
    margin: 20px auto;
  }
  .ir_numbers .num_box li > div p span {font-size: 65px;}
  .ir_numbers .num_box li > div figure {width: 100%;}
  .ir_numbers .num_box li .btn_link {margin: 20px 0 0!important;}

  .graph_section {margin: 60px auto 0;} 
  .graph_section section {
    width: 100%;
    margin: 0 0 45px;
  }
  .graph_section section h2 {
    font-size: 13px;
    padding: 0.4em;
    margin: 0 0 40px;
  }
  .graph_section section .unit_l,
  .graph_section section .unit_r {font-size: 10px;}
  .graph_section section figure {margin: 0 auto 5px;}
  .graph_section section table {margin: 10px 0 0;}
  .graph_section section table th {font-size: 10px;}
  .graph_section section table td  {font-size: 10px;}
  .graph_section section table tr:nth-of-type(1) td  {font-size: 10px;}
  
.editor_contents .xj_mailform_table td:nth-of-type(1) {width: 150px;}
  #xj_mailform_div_button_add ,
  #xj_mailform_div_button_del {
    width: 100%;
    transition: 0s;
  }
  #xj_mailform_div_button_add:hover ,
  #xj_mailform_div_button_del:hover {opacity: 1;}
  #xj_mailform_div_button_add input ,
  #xj_mailform_div_button_del input {padding: 0.75em 3em 0.75em 0.75em;}
  
  
  
  
  
  
}
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
}
  
}
