@charset "utf-8";

body {
    font-family: "heisei-kaku-gothic-std", sans-serif;
    font-size: 80%;
    font-style: normal;
}

header {
    background-color: #000 !important;
}

.inner {
    padding: 0 10px 0 10px;
}

@media screen and (min-width:961px) {

    h3.fc_text {
        margin: 10px 0 10px 0;
        font-size: 20px;
    }

    ul.fc_list:first-child {
        display: flex;
        margin-top: 10px;
    }

    ul.fc_list:last-child {
        display: flex;
        margin-bottom: 10px;
    }

    .fc_list img {
        margin-bottom: 5px;
    }

    .fc_list a {
        background-color: #d8571c;
        padding: 5px 10px 5px 10px;
        text-align: center;
        color: #fff;
        font-weight: bold;
        font-size: 18px;
        margin-top: 10px;
        width: 200px;
    }

    .fc_list ul li {
        width: 100% !important;
        padding: 0 !important;
        display: flex
    }

    .fc_list li:nth-of-type(2) {
        font-size: 18px;
        width: 50%;
        padding-left: 30px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        line-height: 1.2em;
    }

    .fc_list li:nth-of-type(2) {
        width: 50%;
        padding-left: 30px;
        border-top: 1px #878787 solid;
    }

    ul.fc_list {
        display: flex;
    }

    .logo img {
        padding: 30px;
    }

    .logo {
        text-align: center;
    }

    .pankuzu {
        max-width: 1050px;
        margin: 10px auto;
    }

    .pankuzu span a {
        text-decoration: underline;
        color: #000;
    }

    .inner {
        max-width: 1055px;
        margin: 0 auto;
        padding: 0 20px 0 20px;
    }

    .title_area h2 {
        text-align: center;
        margin-top: 4em;
    }

    .title_area p {
        text-align: center;
        font-size: 38px;
        margin-top: 20px;
    }

    .content_area h3 {
        margin-top: 20px;
    }

    .text_flex {
        display: flex;
        position: relative;
    }

    .content_inner {
        max-width: 900px;
        margin: 0 auto;
    }

    .text_flex p {
        font-size: 20px;
        font-weight: bold;
        line-height: 1.2em;
        margin-top: 10px;
    }

    .text_flex div:nth-of-type(2) {
        position: absolute;
        right: -45px;
        top: -50px;
    }

    .text_flex div:first-child {
        max-width: 600px;
    }

    .support_list {
        margin-top: 2em;
    }

    .support_list h4 {
        color: #dd571c;
        font-size: 35px;
    }

    .support_list h5 {
        font-size: 25px;
        margin: 25px 0 25px 0;
    }

    .support_list div {
        padding-left: 30px;
    }

    .support_list p {
        font-size: 18px;
        line-height: 1.5em;
    }

    .support_list ul {
        display: flex;
        flex-wrap: wrap;
    }

    .support_list ul li {
        padding: 10px;
        width: 20%;
        box-sizing: border-box;
    }

    .support_list ul li img {
        width: 100%;
    }

    .support_list ul li:first-child {
        padding-left: 0;
    }

    .support_list ul li:last-child {
        padding-right: 0;
    }

    img.syokuzai_img {
        width: 100%;
        margin-bottom: 30px;
    }

    .open_support ul li ul {
        display: flex;
        flex-wrap: wrap;
    }

    .open_support ul li {
        font-size: 20px;
        line-height: 1.3em;
        text-align: justify;
        font-weight: bold;
    }

    .open_support h4 {
        background: #eacd89;
        max-width: 750px;
        padding: 15px 20px 15px 20px;
        font-size: 22px;
        border-radius: 20px;
        text-align: center;
        margin-top: 20px;
        margin-bottom: 20px;
    }

    .open_support ul li ul li {
        padding: 10px;
    }

    .support_text p {
        font-size: 20px;
        font-weight: bold;
        line-height: 1.2em;
        margin-top: 10px;
        max-width: 500px;
    }

    .text_flex2 {
        display: flex;
        position: relative;
    }

    .text_flex2 div:nth-of-type(2) {
        position: absolute;
        right: 0px;
        top: -80px;
    }

    .btn {
        cursor: pointer;
        font-size: 18px;
        padding: 10px;
        text-align: center;
        max-width: 200px;
        margin: 0 auto;
        font-weight: bold;
    }

    .js-accordion ul li ul li img {
        width: 100%;
    }

    .js-accordion2 ul li ul li img {
        width: 100%;
    }

    .js-accordion3 ul li ul li img {
        width: 100%;
    }

    .btn span {
        display: block;
        font-size: 30px;
        transform: scaleX(2);
        margin-top: 5px;
        margin-bottom: 5px;
    }

    li.text_padding {
        padding-left: 26px;
        text-indent: -17px;
        padding-right: 10px;
    }

    li.text_indent {
        padding-left: 10px;
        padding-right: 10px;
    }

    .margintop {
        margin-top: 2em;
    }

    .text_padding span {
        display: block;
        padding-left: 17px;
    }

    .support_flex img {
        width: 100%;
    }

    .support_flex {
        display: flex;
        margin: 10px 0 10px 0;
    }

    .support_flex2 {
        width: 50%;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        padding-right: 15px;
    }

    .support_flex p {
        font-size: 18px;
        font-weight: bold;
        line-height: 1.3em;
        text-align: justify;
    }

    .js-accordion3 {
        margin-bottom: 3em;
    }

    .support_flex3 {
        display: flex;
    }

    .support_flex3 ul {
        flex: 1;
        padding-right: 20px;
        font-weight: bold;
    }

    .support_flex3 ul li {
        padding-left: 1em;
        text-indent: -1em;
        font-size: 18px;
        line-height: 1.2em;
        margin-bottom: 5px;
    }

    .sp_img {
        display: none;
    }

    .catalog_img {
        display: block;
        margin: 30px auto;
        width: 30%;
    }

    .kensyu_sub_list h3 {
        font-size: 24px;
        margin-bottom: 20px;
    }

    .kensyu_sub_list ul li {
        margin: 10px 0 10px 0;
        font-size: 18px;
    }

    .kensyu_sub_list {
        margin-bottom: 40px;
    }



}

@media screen and (max-width:640px) {

    .inner {
        padding: 0 10px 0 10px;
    }

    .title_icon {
        display: flex;
    }

    .title_icon span {
        display: block;
    }

    .title_icon div {
        width: 50%;
        padding: 20px;
        text-align: justify;
        box-sizing: border-box;
    }

    .title_icon span {
        display: block;
    }

    .title_icon img {
        display: block;
        margin: 0 auto;
    }

    h2.title_main {
        background-color: #9f1f32;
        color: #fff;
        padding: 10px 0 11px 20px;
        font-size: 20px;
        margin-top: 20px;
    }

    .list_area_flex {
        display: flex;
        flex-wrap: wrap;
    }

    .list_size {
        width: 50%;
        padding: 3px;
        box-sizing: border-box;
    }

    .list_size img {
        width: 100%;
    }

    .sub_list_flex h3 {
        font-size: 24px;
        text-align: center;
        margin: 20px 0 20px 0;
        color: #9f1f32;
        text-decoration: underline;
    }

    .sub_list_size {
        margin-top: 30px;
    }

    li.list_sub {
        text-align: center;
        font-size: 20px;
        margin-bottom: 10px;
        margin-top: 10px;
    }

    .sub_list_flex ul {
        text-align: center;
    }

    .sub_list_flex ul li {
        margin: 10px 0 10px 0;
        line-height: 1.5em;
    }

    li.list_sub {
        font-weight: bold;
    }

    h3.sp_none {
        display: none;
    }

    .sub_list_size h2 {
        background-color: #cd5620;
        padding: 15px;
        color: #fff;
        font-size: 20px;
        text-align: center;
    }

    span.text_blue {
        color: #3488c8;
        display: block;
        line-height: 1.2em;
        text-align: justify;
        margin-top: 5px;
    }

    img {
        width: 100%;
    }

    .logo h1 {
        padding: 10px;
        text-align: center;
    }

    .logo h1 img {
        width: 70%;
    }

    .pankuzu {
        margin-top: 10px;
        margin-left: 15px;
    }

    .pankuzu span a {
        text-decoration: underline;
        color: #000;
    }

    .pc_img {
        display: none;
    }

    .title_area {
        margin-top: 20px;
    }

    .text_flex {
        margin-top: 10px;
    }

    .title_area p {
        text-align: center;
        margin-top: 5px;
    }

    .content_title {
        margin-top: 20px;
    }

    .text_flex p {
        text-align: justify;
    }

    .text_flex div:nth-of-type(2) {
        margin-top: 20px;
    }

    .support_list {
        margin-top: 20px;
    }

    .support_list h4 {
        font-size: 24px;

        color: #dd571c;
        line-height: 1.2em;
    }

    .support_list h4 span {
        display: block;
        padding-left: 1em;
        text-indent: 0.3em;
    }

    .support_list h5 {
        font-size: 20px;
        margin-top: 10px;
        line-height: 1.2em;
    }

    .support_list h5 span {
        display: block;
        font-size: 18px;
    }

    .support_list h5 span {
        display: block;
        font-size: 18px;
        margin-left: 15px;
    }

    .support_list p {
        margin: 10px 5px 0 5px;
        text-align: justify;
        line-height: 1.2em;
    }

    .support_list ul {
        display: flex;
        flex-wrap: wrap;
        margin-top: 10px;
    }

    .support_list ul li {
        width: 50%;
        padding: 5px;
        box-sizing: border-box;
    }

    .support_text p,
    .support_flex2 p {
        margin: 10px 0 10px 0;
        line-height: 1.2em;
        text-align: justify;
        font-weight: bold;
    }

    .text_flex2 h4 {
        font-size: 16px;
    }

    .text_flex2 div h4 span {
        display: block;
        margin-left: 16px;
        margin-top: 5px;
    }

    img.img01 {
        width: 70%;
        display: block;
        margin: 10px auto;
    }

    img.img02 {
        width: 60%;
        display: block;
        margin: 10px auto;
    }

    img.img03 {
        width: 60%;
        display: block;
        margin: 10px auto;
    }

    .js-accordion ul li,
    .js-accordion2 ul li,
    .js-accordion3 ul li {
        font-weight: bold;
        font-size: 18px;
        line-height: 1.2em;
        text-align: justify;
    }

    .js-accordion ul li ul,
    .js-accordion2 ul li ul,
    .js-accordion3 ul li ul {
        display: flex;
        flex-wrap: wrap;
    }

    .js-accordion ul li ul li,
    .js-accordion2 ul li ul li,
    .js-accordion3 ul li ul li {
        width: 50%;
        padding: 5px;
        box-sizing: border-box;
        margin-bottom: 0;
    }

    li.text_padding {
        padding-right: 5px;
        margin-top: 5px;
    }

    .js-accordion img {
        width: 100%;
        vertical-align: bottom;
    }

    .text_flex2 h4 {
        font-size: 16px;
        background-color: #eacd89;
        padding: 10px;
        border-radius: 20px;
    }

    .js-btn-more img,
    .js-btn-close img {
        width: 30%;
        margin: 20px;
    }

    .js-btn-more,
    .js-btn-close {
        text-align: center;
    }

    .js-btn-more2 img,
    .js-btn-close2 img {
        width: 30%;
        margin: 20px;
    }

    .js-btn-more2,
    .js-btn-close2 {
        text-align: center;
    }

    .js-btn-more3 img,
    .js-btn-close3 img {
        width: 30%;
        margin: 20px;
    }

    .js-btn-more3,
    .js-btn-close3 {
        text-align: center;
    }

    .support_flex div:nth-of-type(2) {
        margin-top: 10px;
    }

    .support_flex3 ul li {
        padding-left: 1em;
        text-indent: -1em;
        line-height: 1.2em;
        font-weight: bold;
    }

    h3.fc_text {
        line-height: 1.2em;
        margin: 10px 0 10px 0;
    }

    ul.fc_list {
        margin: 20px 0 10px 0;
    }

    .fc_list li {
        margin: 5px 0 5px 0;
        line-height: 1.2em;
    }

    .fc_list a {
        background-color: #d8571c;
        display: block;
        text-align: center;
        padding: 10px;
        color: #fff;
        font-weight: bold;
        margin-top: 10px;
    }

    img.catalog_img {
        width: 50%;
        margin: 0 auto;
        display: block;
    }

    .kensyu_sub_list {
        margin-top: 20px;
    }

    .kensyu_sub_list ul {
        margin: 10px 0 10px 0;
    }

    .kensyu_sub_list ul li {
        margin: 10px 0 10px 0;
    }







}

@media screen and (min-width: 641px) and (max-width: 960px) {

    h3.fc_text {
        font-size: 20px;
        line-height: 1.3em;
        margin: 10px;
    }

    .fc_list li {
        font-size: 24px;
        line-height: 1.2em;
        margin: 10px 0 10px 0;
    }

    .fc_list a {
        background-color: #d8571c;
        display: block;
        padding: 10px;
        text-align: center;
        color: #fff;
        font-weight: bold;
        margin: 20px 0 50px 0;
    }

    .inner {
        padding: 0 10px 0 10px;
    }

    img {
        width: 100%;
    }

    img.sp_img {
        display: none;
    }

    .title_area p {
        font-size: 30px;
        text-align: center;
        margin-top: 20px;
    }

    .title_area {
        margin-top: 3em;
    }

    .pc_img {
        margin-top: 2em;
        margin-bottom: 1em;
    }

    .text_flex {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }

    .text_flex div:nth-of-type(2) {
        width: 30%;
    }

    .text_flex img {
        width: 100%;
        margin: 0 auto;
        display: block;
    }

    .text_flex div:first-child {
        width: 60%;
    }

    .text_flex div p {
        font-size: 24px;
        line-height: 1.2em;
        text-align: justify;
        font-weight: bold;
    }

    .support_list h4 {
        margin: 20px 0 20px 0;
        font-size: 36px;
        color: #dd571c;
    }

    .support_list h5 {
        font-size: 24px;
        margin: 40px 0 20px 10px;
    }

    .support_list p {
        font-size: 18px;
        margin-left: 10px;
        line-height: 1.2em;
        margin-right: 10px;
    }

    .support_list ul {
        display: flex;
        flex-wrap: wrap;
    }

    .support_list ul li {
        padding: 5px;
        box-sizing: border-box;
        width: 20%;
    }

    img.syokuzai_img.pc_img {
        width: 90%;
        display: block;
        margin: 1em auto 0 auto;
    }

    .support_text p {
        font-size: 24px;
        margin: 0 20px 0 20px;
        line-height: 1.2em;
    }

    .text_flex2 {
        margin-top: 2em;
        position: relative;
    }

    .text_flex2 h4 {
        font-size: 24px;
        background-color: #eacd89;
        padding: 20px;
        border-radius: 25px;
    }

    img.img01 {
        width: 40%;
        position: absolute;
        right: 0;
        top: 55px;
    }

    .js-accordion {
        margin-top: 11em;
    }

    .js-accordion2 {
        margin-top: 15em;
    }

    li.text_padding {
        font-size: 24px;
        font-weight: bold;
        margin-bottom: 10px;
        margin-top: 10px;
        text-align: justify;
        line-height: 1.2em;
    }

    .js-accordion ul li ul,
    .js-accordion2 ul li ul,
    .js-accordion3 ul li ul {
        display: flex;
        flex-wrap: wrap;
    }

    .js-accordion ul li ul li,
    .js-accordion2 ul li ul li,
    .js-accordion3 ul li ul li {
        padding: 5px;
        width: 20%;
        box-sizing: border-box;
    }

    .btn img {
        width: 15%;
        display: block;
        margin: 20px auto;
    }

    img.img02 {
        width: 30%;
        position: absolute;
        right: 0;
        top: 55px;
    }

    img.img03 {
        width: 30%;
        position: absolute;
        right: 0;
        top: 40px;
    }

    .js-accordion3 {
        margin-top: 14.5em;
    }

    .support_flex2 p {
        font-size: 24px;
        line-height: 1.2em;
        text-align: justify;
        margin: 0 10px 10px 10px;
        font-weight: bold;
    }

    .support_flex3 ul li {
        font-size: 24px;
        font-weight: bold;
        line-height: 1.2em;
    }

    .support_flex3 {
        margin-bottom: 20px;
    }

    .support_flex2 {
        margin-bottom: 20px;
    }

    .logo h1 {
        padding: 10px;
        text-align: center;
    }

    .logo h1 img {
        width: 70%;
    }

    .pankuzu {
        margin-top: 10px;
        margin-left: 15px;
    }

    .pankuzu span a {
        text-decoration: underline;
        color: #000;
    }

    .kensyu_sub_list h3 {
        font-size: 30px;
        margin-bottom: 20px;
        margin-top: 30px;
    }

    .kensyu_sub_list ul li {
        margin: 10px 0 10px 0;
        font-size: 24px;
    }







}