@charset "UTF-8";
@font-face {
  font-family: "NotoSans";
  font-display: swap;
  src: url("/common/fonts/NotoSans-R-Subset.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "NotoSansB";
  font-display: swap;
  src: url("/common/fonts/NotoSans-B-Subset.woff") format("woff");
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: "Sawarabi";
  font-display: swap;
  src: url("/common/fonts/sawarabi-Subset.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@media print, screen {
  #column main {
    width: 96%;
    margin: 0 auto;
  }
  #column main section {
    line-height: 1.8;
  }
  #column .column_pagelink {
    margin: 0 0 6rem;
  }
  #column .column_pagelink ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  #column .column_pagelink li {
    width: 10rem;
  }
  #column .column_pagelink li a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 3.6rem;
    font-size: 1.1rem;
    color: #fff;
    text-align: center;
    margin: 0 auto;
    padding: 0 1rem 0 0;
    border-radius: 1.8rem;
    position: relative;
    color: #fff;
    background: linear-gradient(to bottom, #00b9e7, #00b9e7 50%, #00a7db);
    box-shadow: 1px 1px 0 0 #9FA0A0;
    cursor: pointer;
  }
  #column .column_pagelink li a::after {
    position: absolute;
    content: "";
    width: 8px;
    height: 8px;
    border: 2px solid;
    border-color: #fff #fff transparent transparent;
    transform: rotate(45deg);
  }
  #column .column_pagelink li a::after {
    right: 10%;
    top: calc(50% - 4px);
  }
  #column .column_pagelink li:nth-of-type(1) a {
    padding: 0 0 0 1rem;
    border-radius: 1.8rem 0 0 1.8rem;
  }
  #column .column_pagelink li:nth-of-type(1) a::after {
    left: 10%;
    top: calc(50% - 4px);
    transform: rotate(225deg);
  }
  #column .column_pagelink li:nth-of-type(2) {
    margin: 0 1rem;
  }
  #column .column_pagelink li:nth-of-type(2) a {
    padding: 0;
    border-radius: 0;
  }
  #column .column_pagelink li:nth-of-type(2) a::after {
    display: none;
  }
  #column .column_pagelink li:nth-of-type(3) a {
    border-radius: 0 1.8rem 1.8rem 0;
  }
  #column.index main section {
    padding: 4rem 7.143%;
  }
  #column.index main .el_title {
    font-size: 1.8rem;
    color: #00b9e7;
    font-family: "NotoSansB";
    text-align: center;
    padding: 20px;
    border-top: 2px solid #00b9e7;
    border-bottom: 2px solid #00b9e7;
  }
  #column.index main .el_title + .txt {
    margin-top: 4rem;
    font-size: 1.4rem;
    line-height: 1.8;
  }
  #column.index main .el_title02 {
    display: flex;
    align-items: center;
    font-size: 1.8rem;
    line-height: 1.4;
    color: #fff;
    padding: 10px 20px;
    font-family: "NotoSansB";
    background: #005D7F;
  }
  #column.index main .el_title02 span {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    font-family: "NotoSansB";
    width: 4.4rem;
    height: 4.4rem;
    margin-right: 2rem;
    color: #fff;
    background: #00b9e7;
    border-radius: 2.2rem;
  }
  #column.index main .cap_txt {
    font-size: 1.4rem;
    padding: 3rem 0;
  }
  #column.index main .bl_sec01 .columnList, #column.index main .bl_sec02 .columnList {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  #column.index main .bl_sec01 .columnList li, #column.index main .bl_sec02 .columnList li {
    position: relative;
    width: 31%;
    margin: 0 0 2rem 3.5%;
    position: relative;
    color: #fff;
    background: linear-gradient(to bottom, #00b9e7, #00b9e7 50%, #00a7db);
  }
  #column.index main .bl_sec01 .columnList li::after, #column.index main .bl_sec02 .columnList li::after {
    position: absolute;
    content: "";
    width: 8px;
    height: 8px;
    border: 2px solid;
    border-color: #fff #fff transparent transparent;
    transform: rotate(45deg);
  }
  #column.index main .bl_sec01 .columnList li::after, #column.index main .bl_sec02 .columnList li::after {
    right: 1rem;
    bottom: 1rem;
  }
  #column.index main .bl_sec01 .columnList li:nth-of-type(3n+1), #column.index main .bl_sec02 .columnList li:nth-of-type(3n+1) {
    margin-left: 0;
  }
  #column.index main .bl_sec01 .columnList li a, #column.index main .bl_sec02 .columnList li a {
    display: block;
    width: 100%;
  }
  #column.index main .bl_sec01 .columnList li a:hover, #column.index main .bl_sec02 .columnList li a:hover {
    opacity: 1;
  }
  #column.index main .bl_sec01 .columnList li a:hover .bl_corporate, #column.index main .bl_sec02 .columnList li a:hover .bl_corporate {
    opacity: 0.8;
  }
  #column.index main .bl_sec01 .columnList li img, #column.index main .bl_sec02 .columnList li img {
    width: 100%;
    height: auto;
  }
  #column.index main .bl_sec01 .columnList li .bl_column, #column.index main .bl_sec02 .columnList li .bl_column {
    width: 100%;
    padding: 1rem;
    line-height: 1.5;
  }
  #column.index main .bl_sec01 .columnList li .bl_column .num, #column.index main .bl_sec02 .columnList li .bl_column .num {
    font-size: 1rem;
    color: #fff;
    margin-bottom: 0.5rem;
  }
  #column.index main .bl_sec01 .columnList li .bl_column .title, #column.index main .bl_sec02 .columnList li .bl_column .title {
    font-size: 1.14rem;
    line-height: 1.5;
    color: #fff;
    margin-bottom: 0.5rem;
  }
  #column.index main .bl_sec01 .columnList li .bl_column .company, #column.index main .bl_sec02 .columnList li .bl_column .company {
    font-size: 0.9rem;
    color: #fff;
  }
  #column.index main .bl_sec01 .columnList li .bl_column .company br, #column.index main .bl_sec02 .columnList li .bl_column .company br {
    display: none;
  }
  #column.index main .bl_sec01 .columnList li.new .bl_column .num, #column.index main .bl_sec02 .columnList li.new .bl_column .num {
    background: url(../common/img/icon_new.png) no-repeat;
    background-position: left 4rem top 0;
    background-size: auto 90%;
  }
  #column.index main .bl_sec01 .switch-btn-column, #column.index main .bl_sec02 .switch-btn-column {
    margin-top: 3rem;
  }
  #column.index main .bl_sec01 .switch-btn-column a, #column.index main .bl_sec02 .switch-btn-column a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 140px;
    height: 36px;
    font-size: 1.1rem;
    font-family: "Notosans";
    color: #fff;
    text-align: center;
    margin: 0 auto;
    border-radius: 18px;
    position: relative;
    color: #fff;
    background: linear-gradient(to bottom, #00b9e7, #00b9e7 50%, #00a7db);
    box-shadow: 1px 1px 0 0 #9FA0A0;
    cursor: pointer;
  }
  #column.index main .bl_sec01 .switch-btn-column a::after, #column.index main .bl_sec02 .switch-btn-column a::after {
    position: absolute;
    content: "";
    width: 8px;
    height: 8px;
    border: 2px solid;
    border-color: #fff #fff transparent transparent;
    transform: rotate(45deg);
  }
  #column.index main .bl_sec01 .switch-btn-column a::after, #column.index main .bl_sec02 .switch-btn-column a::after {
    right: 10%;
    top: calc(50% - 4px);
  }
  #column.index main .bl_sec01 .switch-btn-column.close a::after, #column.index main .bl_sec02 .switch-btn-column.close a::after {
    display: none;
  }
  #column.index main .bl_sec01 .switch-btn-column,
  #column.index main .bl_sec02 .switch-btn-column {
    margin-top: 0;
  }
  #column.index main .bl_sec01 .switch-btn-column p,
  #column.index main .bl_sec02 .switch-btn-column p {
    text-align: right;
    font-size: 1rem;
    padding-bottom: 3rem;
  }
  #column.report main section {
    padding: 4rem 7.143%;
  }
  #column.report main section + section {
    padding-top: 0;
  }
  #column.report main .el_title {
    display: flex;
    align-items: center;
    font-size: 1.8rem;
    line-height: 1.4;
    color: #005D7F;
    padding: 5px 20px;
    font-family: "NotoSansB";
    border-top: 2px solid #005D7F;
    border-bottom: 2px solid #005D7F;
  }
  #column.report main .el_title span {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    font-family: "NotoSansB";
    width: 4.4rem;
    height: 4.4rem;
    margin-right: 2rem;
    color: #fff;
    background: #00b9e7;
    border-radius: 2.2rem;
  }
  #column.report main .el_title01 {
    font-size: 2rem;
    font-weight: bold;
    padding-bottom: 2rem;
  }
  #column.report main .el_title01 span {
    display: inline-block;
    font-size: 1.5rem;
    line-height: 1;
    color: #fff;
    vertical-align: middle;
    margin-right: 5px;
    padding: 5px;
    background: #00b9e7;
  }
  #column.report main .el_title01 + .txt {
    font-size: 1.4rem;
    padding: 0 0 3rem;
    font-weight: bold;
  }
  #column.report main .el_title02 {
    font-size: 1.6rem;
    font-weight: bold;
    padding: 5px 10px;
    background: #bbe2f1;
  }
  #column.report main .pict_wrap {
    display: flex;
    justify-content: space-between;
  }
  #column.report main .pict_wrap figure {
    width: 44.8%;
    margin-right: 3rem;
  }
  #column.report main .pict_wrap figure img {
    width: 100%;
    height: auto;
  }
  #column.report main .pict_wrap .bl_name {
    width: calc(55.2% - 3rem);
  }
  #column.report main .pict_wrap .bl_name .name {
    font-size: 1.6rem;
    padding: 0 0 1rem;
    font-weight: bold;
  }
  #column.report main .pict_wrap .bl_name .name span {
    font-size: 1.4rem;
  }
  #column.report main .pict_wrap .bl_name .profile {
    font-size: 1.4rem;
  }
  #column.report main .pict_wrap .bl_name .profile .profile_sec {
    display: block;
    font-size: 1.4rem;
    margin-top: 2rem;
  }
  #column.report main .pict_wrap .bl_name .profile a {
    display: inline-block;
    font-size: 1.4rem;
    text-decoration: underline;
  }
  #column.report main .interviewList dt {
    font-size: 1.5rem;
    font-weight: bold;
    padding: 3rem 0 2rem;
  }
  #column.report main .interviewList dd {
    font-size: 1.4rem;
    padding: 0 0 3rem;
    border-bottom: 1px solid #dcdddd;
  }
  #column.report main .interviewList dd a {
    font-size: 1.4rem;
    text-decoration: underline;
  }
  #column.report main .interviewList dd .list_name {
    font-size: 1.4rem;
    color: #00b9e7;
  }
  #column.report main .interviewList dd .txt_s {
    font-size: 1rem;
  }
  #column.report main .interviewList dd:last-of-type {
    border: 0;
  }
  #column.report main .list_pict {
    display: flex;
    justify-content: space-between;
  }
  #column.report main .list_pict .interviewList {
    width: 65%;
  }
  #column.report main .list_pict figure {
    width: 30%;
    padding-top: 3rem;
  }
  #column.report main .list_pict figure img {
    width: 100%;
    height: auto;
  }
  #column.report main .list_pict figure figcaption {
    text-align: center;
  }
  #column.column main section {
    padding: 4rem 7.143%;
  }
  #column.column main section + section {
    padding-top: 0;
  }
  #column.column main .el_title {
    display: flex;
    align-items: center;
    font-size: 1.8rem;
    line-height: 1.4;
    color: #005D7F;
    padding: 5px 20px;
    font-family: "NotoSansB";
    border-top: 2px solid #005D7F;
    border-bottom: 2px solid #005D7F;
  }
  #column.column main .el_title span {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    font-family: "NotoSansB";
    width: 4.4rem;
    height: 4.4rem;
    margin-right: 2rem;
    color: #fff;
    background: #00b9e7;
    border-radius: 2.2rem;
  }
  #column.column main .el_title01 {
    font-size: 2rem;
    font-weight: bold;
    padding-bottom: 2rem;
  }
  #column.column main .el_title01 span {
    display: inline-block;
    font-size: 1.5rem;
    line-height: 1;
    color: #fff;
    vertical-align: middle;
    margin-right: 5px;
    padding: 5px;
    background: #00b9e7;
  }
  #column.column main .el_title01 + .txt {
    font-size: 1.4rem;
    padding: 0 0 3rem;
  }
  #column.column main .el_title02 {
    font-size: 1.6rem;
    font-weight: bold;
    margin: 0 0 3rem;
    padding: 5px 10px;
    color: #fff;
    background: #00b9e7;
  }
  #column.column main .bl_profile {
    padding: 3rem;
    border-radius: 1rem;
    background: #d4edf7;
  }
  #column.column main .bl_profile + .txt {
    margin-top: 2rem;
    font-size: 1.4rem;
  }
  #column.column main .pict_wrap {
    display: flex;
    justify-content: space-between;
    margin: 0;
  }
  #column.column main .pict_wrap figure {
    width: 20%;
    margin-right: 2rem;
  }
  #column.column main .pict_wrap figure img {
    width: 100%;
    height: auto;
  }
  #column.column main .pict_wrap .bl_name {
    width: calc(80% - 2rem);
  }
  #column.column main .pict_wrap .bl_name .bubble {
    margin-bottom: 5px;
    padding-bottom: 20px;
    background: url(../column/img/icon_bubble.png) no-repeat left bottom;
  }
  #column.column main .pict_wrap .bl_name .bubble span {
    font-size: 1.4rem;
  }
  #column.column main .pict_wrap .bl_name .position {
    font-size: 1.4rem;
  }
  #column.column main .pict_wrap .bl_name .name {
    font-size: 2.1rem;
    font-weight: bold;
    line-height: 1.4;
    margin: 1rem 0 1rem;
  }
  #column.column main .pict_wrap .bl_name .name span {
    font-size: 1.4rem;
    padding-left: 0.7rem;
  }
  #column.column main .pict_wrap .bl_name .bl_field {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }
  #column.column main .pict_wrap .bl_name .bl_field .field {
    width: 7rem;
    font-size: 1.2rem;
    text-align: center;
    margin-right: 1rem;
    padding: 0 0.5rem;
    border-radius: 2rem;
    background: #fff;
  }
  #column.column main .pict_wrap .bl_name .bl_field ul {
    display: flex;
    flex-wrap: wrap;
    width: calc(100% - 7rem - 1rem);
  }
  #column.column main .pict_wrap .bl_name .bl_field li {
    position: relative;
    font-size: 1.2rem;
    padding: 0 2rem 0 1.6rem;
  }
  #column.column main .pict_wrap .bl_name .bl_field li::before {
    position: absolute;
    content: "■";
    font-size: 1.2rem;
    color: #00b9e7;
    left: 0;
    top: 0;
  }
  #column.column main .bl_sec02 table {
    margin-bottom: 3rem;
  }
  #column.column main .bl_sec02 table th,
  #column.column main .bl_sec02 table td {
    padding: 1rem;
    border: 1px solid #999;
  }
  #column.column main .bl_sec02 th,
  #column.column main .bl_sec02 td,
  #column.column main .bl_sec02 li,
  #column.column main .bl_sec02 dt,
  #column.column main .bl_sec02 strong {
    font-size: 1.4rem;
  }
  #column.column main .bl_sec02 p,
  #column.column main .bl_sec02 dd,
  #column.column main .bl_sec02 .bl_list {
    font-size: 1.4rem;
    margin: 0 0 2rem;
  }
  #column.column main .bl_sec02 p > .el_point,
  #column.column main .bl_sec02 dd > .el_point,
  #column.column main .bl_sec02 .bl_list > .el_point {
    position: relative;
    display: block;
    font-size: 1.4rem;
    padding-left: 2rem;
  }
  #column.column main .bl_sec02 p > .el_point::before,
  #column.column main .bl_sec02 dd > .el_point::before,
  #column.column main .bl_sec02 .bl_list > .el_point::before {
    position: absolute;
    content: "●";
    font-size: 1.4rem;
    line-height: 1;
    color: #00b9e7;
    left: 0;
    top: 0.5rem;
  }
  #column.column main .bl_sec02 .point_list1 li {
    position: relative;
    font-size: 1.4rem;
    padding-left: 1.4rem;
  }
  #column.column main .bl_sec02 .point_list1 li::before {
    position: absolute;
    content: "○";
    font-size: 1.4rem;
    left: 0;
    top: 0;
  }
  #column.column main .bl_sec02 .point_list1.no_point li strong {
    display: block;
    font-size: 1.4rem;
    text-indent: -1.4rem;
  }
  #column.column main .bl_sec02 .point_list1.no_point li::before {
    content: "";
  }
  #column.column main .bl_sec02 .point_list2 li {
    position: relative;
    font-size: 1.4rem;
    padding-left: 2.8rem;
  }
  #column.column main .bl_sec02 .point_list2 li::before {
    position: absolute;
    content: "○";
    font-size: 1.4rem;
    left: 1.4rem;
    top: 0;
  }
  #column.column main .bl_sec02 a {
    font-size: 1.4rem;
    text-decoration: underline;
  }
  #column.column main .pict_single {
    max-width: 600px;
    margin: 0 auto;
    padding: 0 0 3rem;
  }
  #column.column main .pict_single img {
    width: 100%;
    height: auto;
  }
  #column.column main .pict_single figcaption {
    font-size: 1.1rem;
  }
  #column.column main .el_color_gray {
    font-size: 1.4rem;
    margin: 0 0 3rem;
    padding: 3rem;
    border-radius: 1rem;
    background: #eee;
  }
  #column.column main .el_half {
    display: flex;
    justify-content: space-between;
    font-size: 1.4rem;
  }
  #column.column main .el_half p {
    width: 45%;
  }
  #column.column main .el_full,
  #column.column main .el_full50,
  #column.column main .el_full80 {
    max-width: 70%;
    margin: 0 auto 3rem;
  }
  #column.column main .el_full img,
  #column.column main .el_full50 img,
  #column.column main .el_full80 img {
    width: 100%;
    height: auto;
  }
  #column.column main .el_full50 {
    width: 50%;
  }
  #column.column main .el_full80 {
    width: 80%;
    max-width: 80%;
  }
  #column.column main .el_caption_center {
    text-align: center;
  }
  #column.column main figcaption span {
    display: inline-block;
    position: relative;
    font-size: 1.1rem;
    padding: 1rem 0 0 2rem;
    text-align: left;
  }
  #column.column main figcaption span::before {
    position: absolute;
    content: "▲";
    font-size: 1.1rem;
    left: 0;
  }
  #column.column main figcaption span.no_point {
    padding-left: 0;
  }
  #column.column main figcaption span.no_point::before {
    display: none;
  }
  #column.column main .el_poitcolor {
    color: #00b9e7;
  }
  #column.column main .el_center {
    text-align: center;
  }
  #column.column main p.el_mb0 {
    margin-bottom: 0;
  }
  #column.column main p.el_mt3 {
    margin-top: 3rem;
  }
  #column.column main p.el_mt6 {
    margin-top: 6rem;
  }
  #column.column main p.el_indent8 {
    padding-left: 11.2rem;
    text-indent: -11.2rem;
  }
  #column.column main .el_border5 {
    margin-bottom: 3rem;
    padding: 2rem;
    border: 5px solid #eee;
  }
  #column.column main .float_left figure,
  #column.column main .float_right figure {
    width: 40%;
    float: left;
    padding: 0 3rem 3rem 0;
  }
  #column.column main .float_left figure img,
  #column.column main .float_right figure img {
    width: 100%;
  }
  #column.column main .float_left::after,
  #column.column main .float_right::after {
    content: "";
    display: block;
    clear: both;
  }
  #column.column main .float_right figure {
    float: right;
    padding: 0 0 3rem 3rem;
  }
  #column.column main .pict_double {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto 3rem;
    width: 80%;
  }
  #column.column main .pict_double figure {
    width: calc(50% - 30px);
  }
  #column.column main .pict_double figure img {
    width: 100%;
  }
  #column.column main .pict_double figure figcaption {
    width: 100%;
  }
  #column.column main .column7_style {
    display: flex;
    justify-content: space-between;
    width: 80%;
    margin: 0 auto;
    margin-top: -2rem;
  }
  #column.column main .column7_style p {
    position: relative;
    font-size: 1.1rem;
    padding-left: 2rem;
  }
  #column.column main .column7_style p::before {
    position: absolute;
    content: "▲";
    font-size: 1.1rem;
    left: 0;
  }
  #column.column main .column7_style p:first-of-type {
    width: 38%;
    padding-right: 3%;
  }
  #column.column main .column7_style p:nth-of-type(2) {
    width: 38%;
    padding-right: 3%;
  }
  #column.column main .column7_style p:last-of-type {
    width: 18%;
  }
  #column .el_update {
    font-size: 1.2rem !important;
    text-align: right;
  }
}
@media screen and (max-width: 767px) {
  #column.index main .el_title02 span {
    width: 5.4rem;
  }
  #column.index main .bl_sec01 .columnList li, #column.index main .bl_sec02 .columnList li {
    width: 48%;
    margin: 0 0 2rem 0;
  }
  #column.index main .bl_sec01 .columnList li:nth-of-type(2n), #column.index main .bl_sec02 .columnList li:nth-of-type(2n) {
    margin-left: 4%;
  }
  #column.report main .pict_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: unset;
  }
  #column.report main .pict_wrap figure {
    width: 100%;
    text-align: center;
    padding: 0 0 2rem;
  }
  #column.report main .pict_wrap figure img {
    width: 60%;
    height: auto;
  }
  #column.report main .pict_wrap .bl_name {
    width: 100%;
  }
  #column.column main .pict_wrap {
    justify-content: unset;
    flex-wrap: wrap;
  }
  #column.column main .pict_wrap figure {
    width: 60%;
    margin: 0 auto 2rem;
  }
  #column.column main .pict_wrap .bl_name {
    width: 100%;
  }
  #column.column main .el_full,
  #column.column main .el_full50,
  #column.column main .el_full80 {
    width: 100%;
    max-width: 100%;
  }
  #column.column main .float_left figure,
  #column.column main .float_right figure {
    width: 100%;
    float: none;
    padding: 0;
  }
  #column.column main .float_left figure figcaption,
  #column.column main .float_right figure figcaption {
    margin-bottom: 3rem;
  }
  #column.column main .pict_double {
    display: block;
    width: 100%;
  }
  #column.column main .pict_double figure {
    width: 100%;
  }
  #column.column main .pict_double figure figcaption {
    margin-bottom: 3rem;
  }
  #column.column main .column7_style {
    display: block;
    width: 100%;
    margin-bottom: 3rem;
  }
  #column.column main .column7_style p {
    width: 100% !important;
    margin-bottom: 0;
  }
}