@charset "UTF-8";
@import url(/css/root.css);
/* ----------------------------------------------
　PC設定
------------------------------------------------*/
@media all and (min-width: 769px) {
  #container.under_page .topImage02 figure img {
    transform: translateY(10%);
  }
  #container #contents {
    margin-bottom: var(--s32_48);
  }
  #container #contents .online_detail {
    margin-bottom: var(--s32_48);
  }
  #container #contents .online_detail h2 {
    display: flex;
    align-items: stretch;
    background-color: rgba(251, 176, 59, 0.6);
    margin-bottom: var(--s16_24);
  }
  #container #contents .online_detail h2 span {
    font-size: var(--s16_22);
    padding: 0.5em 1em;
  }
  #container #contents .online_detail h2 span.catch {
    background-color: rgba(241, 90, 36, 0.6);
    color: #fff;
  }
  #container #contents .online_detail .text {
    margin-bottom: var(--s16_24);
    padding: 0 1em;
  }
  #container #contents .online_detail .text .br {
    line-height: 1.7;
    font-size: var(--s14_16);
  }
  #container #contents .online_detail .text .br .emphasize {
    font-size: var(--s16_18);
    color: var(--orange03);
  }
  #container #contents .online_detail .results_area {
    margin: 0 auto var(--s16_24);
    max-width: 960px;
  }
  #container #contents .online_detail .results_area .tit {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    grid-gap: 0.25rem 1rem;
    margin-bottom: var(--s14_16);
  }
  #container #contents .online_detail .results_area .tit .br {
    font-size: var(--s18_22);
    font-weight: 500;
  }
  #container #contents .online_detail .results_area .tit .br.green {
    color: var(--green01);
    display: flex;
    grid-gap: 0.5rem;
    align-items: center;
    justify-content: center;
  }
  #container #contents .online_detail .results_area .tit .br.green::before, #container #contents .online_detail .results_area .tit .br.green::after {
    content: "";
    display: inline-block;
    width: 2px;
    height: var(--s16_24);
    background-color: var(--green01);
  }
  #container #contents .online_detail .results_area .tit .br.green::before {
    transform: rotate(-20deg);
  }
  #container #contents .online_detail .results_area .tit .br.green::after {
    transform: rotate(20deg);
  }
  #container #contents .online_detail .results_area .tit .br.orange {
    color: var(--orange03);
  }
  #container #contents .online_detail .results_area .img_area {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: center;
    grid-gap: var(--s8_16) var(--s16_24);
  }
  #container #contents .online_detail .results_area .img_area figure {
    width: calc(33.3333333333% - var(--s16_24) * 2 / 3);
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    justify-content: center;
  }
  #container #contents .online_detail .results_area .img_area figure .frame {
    border-radius: 100%;
    overflow: hidden;
    width: 90%;
    margin: 0 auto;
    aspect-ratio: 1/1;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  #container #contents .online_detail .results_area .img_area figure .frame img {
    height: 110%;
    width: auto;
    max-width: unset;
    -o-object-fit: contain;
       object-fit: contain;
  }
  #container #contents .online_detail .results_area .img_area figure figcaption {
    width: 100%;
    text-align: center;
    color: #fff;
    font-size: var(--s16_22);
    background-color: rgba(0, 104, 55, 0.8);
    padding: 0.5em 1em;
    margin-bottom: -0.5em;
    z-index: 1;
  }
  #container #contents .online_detail .results_area .img_area figure:nth-of-type(2) .frame img {
    height: 180%;
    transform: translate(5%, -22%);
  }
  #container #contents .online_detail .flow {
    margin: 0 auto var(--s16_24);
  }
  #container #contents .online_detail .flow h3 {
    font-size: var(--s20_28);
    font-weight: 500;
    text-align: center;
    padding-bottom: 0.25em;
    margin-bottom: 1em;
    border-bottom: 2px solid var(--green07);
  }
  #container #contents .online_detail .flow .flow_area {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: center;
    grid-gap: var(--s8_16);
  }
  #container #contents .online_detail .flow .flow_area .flow_box {
    width: calc(33.3333333333% - var(--s8_16) * 2 / 3);
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    background-color: #fff;
  }
  #container #contents .online_detail .flow .flow_area .flow_box .num {
    width: 40%;
    border-bottom: var(--s4_8) solid #efedea;
    border-right: var(--s4_8) solid #efedea;
    padding: var(--s8_16);
    aspect-ratio: 1/1;
  }
  #container #contents .online_detail .flow .flow_area .flow_box .num img {
    max-height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
  }
  #container #contents .online_detail .flow .flow_area .flow_box .icon {
    width: 60%;
    padding: var(--s8_16);
    text-align: center;
  }
  #container #contents .online_detail .flow .flow_area .flow_box .icon img {
    width: 70%;
    max-width: 150px;
    -o-object-fit: contain;
       object-fit: contain;
  }
  #container #contents .online_detail .flow .flow_area .flow_box .bottom_area {
    padding: var(--s16_24);
  }
  #container #contents .online_detail .flow .flow_area .flow_box .bottom_area .br {
    font-size: var(--s14_16);
  }
  #container #contents .online_detail .flow .flow_area .flow_box .bottom_area .download_img {
    display: flex;
    align-items: center;
    grid-gap: 0.25rem 1rem;
    margin-top: 1rem;
  }
  #container #contents .online_detail .flow .flow_area .flow_box .bottom_area .download_img a {
    width: calc(50% - 0.5rem);
    aspect-ratio: 163/48;
  }
  #container #contents .online_detail .flow .flow_area .flow_box .bottom_area .download_img a img {
    -o-object-fit: contain;
       object-fit: contain;
    max-height: 100%;
  }
  #container #contents .online_detail .flow .flow_area .flow_box:nth-of-type(1) .icon img {
    max-width: 100px;
  }
  #container #contents .online_detail .attention_area {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    grid-gap: var(--s8_16) var(--s16_32);
    padding: var(--s16_32) 0;
    position: relative;
    z-index: 1;
  }
  #container #contents .online_detail .attention_area::after {
    content: "";
    display: inline-block;
    width: 110vw;
    height: 100%;
    background: url(/images/common/bg_col05_blue.jpg) center/contain repeat;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
  }
  #container #contents .online_detail .attention_area .text_area {
    width: calc(70% - var(--s16_32));
  }
  #container #contents .online_detail .attention_area .text_area h3 {
    font-size: var(--s20_28);
    font-weight: 500;
    padding: 0 1em 0.25em;
    margin-bottom: 0.5em;
    border-bottom: 2px solid var(--green07);
  }
  #container #contents .online_detail .attention_area .text_area .text .br {
    font-size: var(--s14_16);
  }
  #container #contents .online_detail .attention_area .text_area .text .br.nomark {
    text-indent: 1.5em;
  }
  #container #contents .online_detail .attention_area .text_area .text .br:not(.nomark)::before {
    content: "";
    display: inline-block;
    margin-right: 0.5em;
    width: var(--s14_16);
    aspect-ratio: 1/1;
    background-color: var(--orange03);
    border-radius: 100%;
  }
  #container #contents .online_detail .attention_area .img_area {
    width: 30%;
    border-radius: 15px;
    overflow: hidden;
  }
}
/* ----------------------------------------------
　PAD以下設定
------------------------------------------------*/
@media all and (max-width: 768px) {
  #container #contents {
    margin-bottom: var(--s32_48);
  }
  #container #contents .online_detail {
    margin-bottom: var(--s32_48);
  }
  #container #contents .online_detail h2 {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    background-color: rgba(251, 176, 59, 0.6);
    margin-bottom: var(--s16_24);
  }
  #container #contents .online_detail h2 span {
    font-size: var(--s16_22);
    padding: 0.5em 1em;
  }
  #container #contents .online_detail h2 span.catch {
    background-color: rgba(241, 90, 36, 0.6);
    color: #fff;
  }
  #container #contents .online_detail .text {
    margin-bottom: var(--s16_24);
    padding: 0 1em;
  }
  #container #contents .online_detail .text .br {
    line-height: 1.7;
    font-size: var(--s14_16);
  }
  #container #contents .online_detail .text .br .emphasize {
    font-size: var(--s16_18);
    color: var(--orange03);
  }
  #container #contents .online_detail .results_area {
    margin: 0 auto var(--s16_24);
    max-width: 960px;
  }
  #container #contents .online_detail .results_area .tit {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    grid-gap: 0.25rem 1rem;
    margin-bottom: var(--s14_16);
  }
  #container #contents .online_detail .results_area .tit .br {
    font-size: var(--s18_22);
    font-weight: 500;
  }
  #container #contents .online_detail .results_area .tit .br.green {
    color: var(--green01);
    display: flex;
    grid-gap: 0.5rem;
    align-items: center;
    justify-content: center;
  }
  #container #contents .online_detail .results_area .tit .br.green::before, #container #contents .online_detail .results_area .tit .br.green::after {
    content: "";
    display: inline-block;
    width: 2px;
    height: var(--s16_24);
    background-color: var(--green01);
  }
  #container #contents .online_detail .results_area .tit .br.green::before {
    transform: rotate(-20deg);
  }
  #container #contents .online_detail .results_area .tit .br.green::after {
    transform: rotate(20deg);
  }
  #container #contents .online_detail .results_area .tit .br.orange {
    color: var(--orange03);
  }
  #container #contents .online_detail .results_area .img_area {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: center;
    grid-gap: var(--s8_16) var(--s16_24);
  }
  #container #contents .online_detail .results_area .img_area figure {
    width: calc(33.3333333333% - var(--s16_24) * 2 / 3);
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    justify-content: center;
  }
  #container #contents .online_detail .results_area .img_area figure .frame {
    border-radius: 100%;
    overflow: hidden;
    width: 90%;
    margin: 0 auto;
    aspect-ratio: 1/1;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  #container #contents .online_detail .results_area .img_area figure .frame img {
    height: 110%;
    width: auto;
    max-width: unset;
    -o-object-fit: contain;
       object-fit: contain;
  }
  #container #contents .online_detail .results_area .img_area figure figcaption {
    width: 100%;
    text-align: center;
    color: #fff;
    font-size: var(--s16_22);
    background-color: rgba(0, 104, 55, 0.8);
    padding: 0.5em 1em;
    margin-bottom: -0.5em;
    z-index: 1;
  }
  #container #contents .online_detail .results_area .img_area figure:nth-of-type(2) .frame img {
    height: 180%;
    transform: translate(5%, -22%);
  }
  #container #contents .online_detail .flow {
    margin: 0 auto var(--s16_24);
  }
  #container #contents .online_detail .flow h3 {
    font-size: var(--s20_28);
    font-weight: 500;
    text-align: center;
    padding-bottom: 0.25em;
    margin-bottom: 1em;
    border-bottom: 2px solid var(--green07);
  }
  #container #contents .online_detail .flow .flow_area {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: center;
    grid-gap: var(--s8_16);
  }
  #container #contents .online_detail .flow .flow_area .flow_box {
    width: calc(33.3333333333% - var(--s8_16) * 2 / 3);
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    background-color: #fff;
  }
  #container #contents .online_detail .flow .flow_area .flow_box .num {
    width: 40%;
    border-bottom: var(--s4_8) solid #efedea;
    border-right: var(--s4_8) solid #efedea;
    padding: var(--s8_16);
    aspect-ratio: 1/1;
  }
  #container #contents .online_detail .flow .flow_area .flow_box .num img {
    max-height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
  }
  #container #contents .online_detail .flow .flow_area .flow_box .icon {
    width: 60%;
    padding: var(--s8_16);
    text-align: center;
  }
  #container #contents .online_detail .flow .flow_area .flow_box .icon img {
    width: 70%;
    max-width: 150px;
    -o-object-fit: contain;
       object-fit: contain;
  }
  #container #contents .online_detail .flow .flow_area .flow_box .bottom_area {
    padding: var(--s16_24);
  }
  #container #contents .online_detail .flow .flow_area .flow_box .bottom_area .br {
    font-size: var(--s14_16);
  }
  #container #contents .online_detail .flow .flow_area .flow_box .bottom_area .download_img {
    display: flex;
    align-items: center;
    grid-gap: 0.25rem 1rem;
    margin-top: 1rem;
  }
  #container #contents .online_detail .flow .flow_area .flow_box .bottom_area .download_img a {
    width: calc(50% - 0.5rem);
    aspect-ratio: 163/48;
  }
  #container #contents .online_detail .flow .flow_area .flow_box .bottom_area .download_img a img {
    -o-object-fit: contain;
       object-fit: contain;
    max-height: 100%;
  }
  #container #contents .online_detail .flow .flow_area .flow_box:nth-of-type(1) .icon img {
    max-width: 100px;
  }
  #container #contents .online_detail .attention_area {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    grid-gap: var(--s8_16) var(--s16_32);
    padding: var(--s16_32) 0;
    position: relative;
    z-index: 1;
  }
  #container #contents .online_detail .attention_area::after {
    content: "";
    display: inline-block;
    width: 110vw;
    height: 100%;
    background: url(/images/common/bg_col05_blue.jpg) center/contain repeat;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
  }
  #container #contents .online_detail .attention_area .text_area {
    width: calc(70% - var(--s16_32));
  }
  #container #contents .online_detail .attention_area .text_area h3 {
    font-size: var(--s20_28);
    font-weight: 500;
    padding: 0 1em 0.25em;
    margin-bottom: 0.5em;
    border-bottom: 2px solid var(--green07);
  }
  #container #contents .online_detail .attention_area .text_area .text .br {
    font-size: var(--s14_16);
  }
  #container #contents .online_detail .attention_area .text_area .text .br.nomark {
    text-indent: 1.5em;
  }
  #container #contents .online_detail .attention_area .text_area .text .br:not(.nomark)::before {
    content: "";
    display: inline-block;
    margin-right: 0.5em;
    width: var(--s14_16);
    aspect-ratio: 1/1;
    background-color: var(--orange03);
    border-radius: 100%;
  }
  #container #contents .online_detail .attention_area .img_area {
    width: 30%;
    border-radius: 15px;
    overflow: hidden;
  }
}
/* ----------------------------------------------
　SP調整
------------------------------------------------*/
@media all and (max-width: 620px) {
  #container #contents .online_detail .results_area .img_area {
    grid-gap: 1rem;
  }
  #container #contents .online_detail .results_area .img_area figure {
    width: 100%;
    flex-direction: row;
    grid-gap: 1rem;
  }
  #container #contents .online_detail .results_area .img_area figure .frame {
    width: 35%;
  }
  #container #contents .online_detail .results_area .img_area figure figcaption {
    width: calc(65% - 1rem);
    margin-bottom: 0;
  }
  #container #contents .online_detail .results_area .img_area figure:nth-of-type(2) .frame img {
    height: 180%;
    transform: translate(5%, -22%);
  }
  #container #contents .online_detail .flow .flow_area .flow_box {
    width: 100%;
    align-items: center;
  }
  #container #contents .online_detail .flow .flow_area .flow_box .num {
    display: none;
  }
  #container #contents .online_detail .flow .flow_area .flow_box .icon {
    width: 20%;
  }
  #container #contents .online_detail .flow .flow_area .flow_box .icon img {
    width: 95%;
  }
  #container #contents .online_detail .flow .flow_area .flow_box .bottom_area {
    width: 80%;
  }
  #container #contents .online_detail .attention_area {
    justify-content: center;
  }
  #container #contents .online_detail .attention_area .text_area {
    width: 100%;
  }
  #container #contents .online_detail .attention_area .text_area .text .br:not(.nomark) {
    text-indent: -1em;
    margin-left: 1em;
  }
  #container #contents .online_detail .attention_area .img_area {
    width: 80%;
  }
}