@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@300;400;500;700;900&display=swap');

/* common
------------------------------------*/
.contactArea, .bnrArea, #partnershiparea {
    display: none;
}
#main .cassette {
    width: 92%;
}
#container {
    background-image: none;
}
.cassette .flex {
    display: flex;
    gap: 30px 4%;
    flex-direction: column;
}
.btn01 {
    background-color: #ff6162;
    padding: 20px 50px 20px 30px;
    border-radius: 50px;
    display: block;
    width: calc(100% - 80px);
    position: relative;
    text-align: center;
    max-width: 270px;
    margin: 40px auto 0;
}
.btn01 span {
    color: #fff;
    font-weight: bold;
}
.btn01::before, .btn01::after {
    position: absolute;
    top: 50%;
}
.btn01::before {
    content: "";
    background-color: #fff;
    border-radius: 50%;
    width: 25px;
    height: 25px;
    right: 20px;
    transform: translateY(-50%);
}
.btn01::after {
    content: "＞";
    color: #ff6162;
    font-size: 0.6rem;
    font-weight: bold;
    right: 25px;
    transform: translateY(-45%) scale(1, 1.2);
}
#contents .btn01:hover {
    opacity: 1;
    background-color: #fd4143;
}
#main .title01 {
    font-family: "Zen Maru Gothic", sans-serif;
    font-weight: 500;
    font-size: 2rem;
    text-align: center;
    margin-bottom: 30px;
    color: #ff6163;
    position: relative;
    padding-top: 60px;
}
#main .title01::before {
    position: absolute;
    content: "";
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    background: url("../img/title01.png")no-repeat center center/cover;
    width: 37px;
    height: 39px;
}
#main .title02 {
    font-size: 0.9rem;
    font-weight: bold;
    color: #fff;
    background-color: #ff6163;
    padding: 10px 20px 10px 30px;
    border-radius: 50px;
    margin-bottom: 20px;
    text-align: center;
    max-width: 750px;
    margin-left: 20px;
    margin-right: auto;
    position: relative;
}
#main .title02::before {
    position: absolute;
    content: "";
    background: url("../img/title02.png")no-repeat center center/cover;
    width: 40px;
    height: 34px;
    top: 50%;
    transform: translateY(-50%);
    left: -20px;
}
#main img {
    max-width: 100%;
}
#main .cassette p, #main .cassette ul, #main .cassette ol {
    margin-bottom: 0;
}
#main .p {
    color: #fe8082;
}
.t_bold {
    font-weight: bold;
}
.t_read {
    text-align: center;
}
.joinLayout #main .table_wrap {
    border-radius: 20px;
    overflow: hidden;
    border: 7px solid #faafaf;
    max-width: 930px;
    margin: 0 auto;
}
.joinLayout #main .table_wrap table {
    border-top: none;
    border-left: none;
    margin-bottom: 0;
}
.joinLayout #main .table_wrap table th {
    background-color: #faafaf;
    border-right: none;
    color: #fff;
    font-weight: bold;
    width: 35%;
}
.joinLayout #main .table_wrap table td {
    width: 75%;
    line-height: 1.5;
    font-weight: bold;
    text-align: left;
}
.joinLayout #main .table_wrap table tr:not(:last-child) th {
    border-bottom: 2px solid #fff;
}
.joinLayout #main .table_wrap table tr:not(:last-child) td {
    border-bottom: 2px solid #faafaf;
}
.joinLayout #main .custom_shape {
    position: absolute;
    top: -39px;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
    z-index: -1;
}
.joinLayout #main .custom_shape svg {
    position: relative;
    width: 100%;
    height: 40px;
}

			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
                .cassette .flex {
                    flex-direction: row;
                }
                .cassette .flex .flex_box01 {
                    width: calc(96% / 2);
                }
                .cassette .flex .flex_box02 {
                    width: calc(92% / 3);
                }
                .cassette .flex .flex_box03 {
                    width: calc(88% / 4);
                }
                .btn01 {
                    margin-top: 60px;
                    padding: 30px 50px 30px 30px;
                }
                #main .title01 {
                    font-size: 3rem;
                    margin-bottom: 60px;
                    padding-top: 85px;
                }
                #main .title01::before {
                    width: 66px;
                    height: 69px;
                }
                #main .title02 {
                    font-size: 1.2rem;
                    width: calc(85% - 70px);
                    margin-bottom: 40px;
                    margin-left: auto;
                }
                #main .title02::before {
                    width: 71px;
                    height: 59px;
                    left: -20px;
                }
                .joinLayout #main .table_wrap {
                    border-radius: 30px;
                }
                .joinLayout #main .table_wrap table th, .joinLayout #main .table_wrap table td {
                    padding: 25px;
                }
                .joinLayout #main .custom_shape {
                    top: -49px;
                }
                .joinLayout #main .custom_shape svg {
                    height: 50px;
                }
			}		
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 980px) {
                #main .title01 {
                    font-size: 3.6rem;
                }
                #main .title02 {
                    font-size: 1.6rem;
                }
			}





/* mainImg
------------------------------------*/
.joinLayout #mainImg img {
    max-width: 100%;
}
.joinLayout #mainImg {
    position: relative;
    margin-top: 20px;
}
.joinLayout #mainImg::after {
    position: absolute;
    content: "";
    background-image: url("../img/wave01.png");
    background-size: contain;
    background-repeat: repeat-x;
    background-position: center top;
    width: 100%;
    height: 10px;
    bottom: 0;
    left: 0;
}
.joinLayout #mainImg .mainTxt_main {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 95%;
    max-width: 858px;
}
.joinLayout #mainImg .mainTxt_sub {
    position: absolute;
    left: 5%;
    top: 14%;
    width: 35%;
    max-width: 260px;
}
.joinLayout #mainImg .sp {
    width: 100%;
}



			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
                .joinLayout #mainImg {
                    background: url("../img/main.jpg")no-repeat center center/cover;
                    height: 590px;
                    margin-top: 0;
                }
                .joinLayout #mainImg .mainTxt_sub {
                    top: 5%;
                }
                .joinLayout #mainImg::after {
                    height: 22px;
                }
			}		
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 980px) {
			}





/* btn_cassette
------------------------------------*/
.joinLayout #main .btn_cassette {
    padding: 60px 0;
    background-color: #ff6163;
    position: relative;
}
.joinLayout #main #btn02, .joinLayout #main #btn03 {
    padding: 40px 0 0;
    background-color: transparent;
}
.joinLayout #main #btn03 {
    padding-top: 0;
}
.joinLayout #main .btn_cassette::after {
    position: absolute;
    content: "";
    background-color: #fff;
    width: 100%;
    height: 40px;
    clip-path: polygon(50% 0%, 0 100%, 100% 100%);
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
}
.joinLayout #main #btn02::after, .joinLayout #main #btn03::after {
    content: none;
}
.joinLayout #main .btn_cassette .flex {
    gap: 20px 4%;
    max-width: 960px;
    margin: 0 auto;
}
.joinLayout #main .btn_cassette .bnr01 {
    display: block;
    padding: 15px 50px 15px 20px;
    width: calc(100% - 110px);
    text-align: center;
    font-weight: bold;
    position: relative;
    background-color: #fff;
    border: 5px solid #e2b812;
    border-radius: 20px;
    font-size: 1.2rem;
    margin-left: 30px;
}
.joinLayout #main .btn_cassette .bnr01:hover {
    opacity: 0.9;
}
.joinLayout #main .btn_cassette .bnr01 p {
    color: #e2b812;
    margin-bottom: 0;
}
.joinLayout #main .btn_cassette .bnr01::before, .joinLayout #main .btn_cassette .bnr01::after {
    position: absolute;
    top: 50%;
}
.joinLayout #main .btn_cassette .bnr01::before {
    content: "";
    background-color: #e2b812;
    border-radius: 50%;
    width: 25px;
    height: 25px;
    right: 20px;
    transform: translateY(-50%);
}
.joinLayout #main .btn_cassette .bnr01::after {
    content: "＞";
    color: #fff;
    font-size: 0.6rem;
    font-weight: bold;
    right: 25px;
    transform: translateY(-45%) scale(1, 1.2);
}
.joinLayout #main .btn_cassette .bnr01 .s {
    font-size: 0.8rem;
    display: table;
    padding: 0 20px;
    position: relative;
    margin: 0 auto;
}
.joinLayout #main .btn_cassette .bnr01 .s::before, .joinLayout #main .btn_cassette .bnr01 .s::after {
    position: absolute;
    content: "";
    width: 1px;
    height: 100%;
    background-color: #e2b812;
    top: 0;
}
.joinLayout #main .btn_cassette .bnr01 .s::before {
    transform: rotate(-45deg);
    left: 0;
}
.joinLayout #main .btn_cassette .bnr01 .s::after {
    transform: rotate(45deg);
    right: 0;
}
.joinLayout #main .btn_cassette .bnr01 > div {
    position: relative;
}
.joinLayout #main .btn_cassette .bnr01 > div::before {
    position: absolute;
    content: "";
    top: 50%;
    transform: translateY(-50%);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}
.joinLayout #main .btn_cassette .flex_box01:first-child .bnr01 > div::before {
    background-image: url("../img/sense01.png");
    width: 49px;
    height: 40px;
    left: -42px;
}
.joinLayout #main .btn_cassette .flex_box01:last-child .bnr01 > div::before {
    background-image: url("../img/sense02.png");
    width: 45px;
    height: 43px;
    left: -36px;
    top: 53%;
    transform: translateY(-50%) rotate(25deg);
}
.joinLayout #main .btn_cassette .flex_box01:last-child .bnr01 {
    border: 5px solid #54abee;
}
.joinLayout #main .btn_cassette .flex_box01:last-child .bnr01 p {
    color: #54abee;
}
.joinLayout #main .btn_cassette .flex_box01:last-child .bnr01::before,
.joinLayout #main .btn_cassette .flex_box01:last-child .bnr01 .s::before, .joinLayout #main .btn_cassette .flex_box01:last-child .bnr01 .s::after {
    background-color: #54abee;
}


			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
                .joinLayout #main .btn_cassette .flex_box01:last-child .bnr01 {
                    margin-left: 0;
                    margin-right: 30px;
                }
                .joinLayout #main .btn_cassette {
                    padding-bottom: 60px;
                }
                .joinLayout #main .btn_cassette::after {
                    height: 50px;
                }
                .joinLayout #main .btn_cassette .flex_box01:last-child .bnr01 > div::before {
                    left: auto;
                    right: -81px;
                }
                
			}		
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 980px) {
                .joinLayout #main .btn_cassette .bnr01 .s {
                    font-size: 1.1rem;
                }
                .joinLayout #main .btn_cassette .bnr01 {
                    font-size: 1.8rem;
                    padding: 20px 50px 20px 10px;
                }
                .joinLayout #main .btn_cassette .flex_box01:first-child .bnr01 > div::before {
                    width: 109px;
                    height: 89px;
                    left: -100px;
                }
                .joinLayout #main .btn_cassette .flex_box01:last-child .bnr01 > div::before {
                    width: 95px;
                    height: 93px;
                    right: -126px;
                }
			}








/* c01
------------------------------------*/
.joinLayout #main #c01 {
    padding: 20px 0 160px;
    position: relative;
}
.joinLayout #main #c01::before, .joinLayout #main #c01::after {
    position: absolute;
    content: "";
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    animation: float 3s ease-in-out infinite;
}
@keyframes float {
  0% {
    transform: translateX(-50%) translateY(0);
  }
  50% {
    transform: translateX(-50%) translateY(-10px);
  }
  100% {
    transform: translateX(-50%) translateY(0);
  }
}
.joinLayout #main #c01::before {
    background-image: url("../img/c01_before01_sp.png");
    width: 330px;
    height: 126px;
    left: 50%;
    transform: translateX(-50%);
    top: -60px;
    z-index: 1;
}

.joinLayout #main #c01 .y_box {
    background-color: #ffdd59;
    border-radius: 20px;
    max-width: 755px;
    margin: 20px auto 0;
}
.joinLayout #main #c01 .y_box > div {
    margin: 0 auto;
    width: calc(80% - 70px);
    color: #656565;
    padding: 30px 0 30px 70px;
    font-size: 0.8rem;
    position: relative;
}
.joinLayout #main #c01 .y_box > div::before {
    position: absolute;
    content: "";
    background: url("../img/sense02a.png")no-repeat center center/cover;
    width: 55px;
    height: 52px;
    left: 0;
    top: 40px;
}
.joinLayout #main #c01 .y_box > div p {
    margin-bottom: 0;
}
.joinLayout #main #c01 .y_box .ttl {
    color: #666666;
    font-weight: bold;
    border-bottom: 5px dotted #666666;
    font-size: 1rem;
    margin-bottom: 20px;
}


			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
                .joinLayout #main #c01 {
                    padding: 100px 0 220px;
                }
                .joinLayout #main #c01::before {
                    background-image: url("../img/c01_before01.png");
                    width: 766px;
                    height: 292px;
                }
                .joinLayout #main #c01::after {
                    background-image: url("../img/c01_before02.png");
                    width: 202px;
                    height: 237px;
                    top: 3%;
                    left: 13%;
                    z-index: -1;
                }
                .joinLayout #main #c01 .y_box {
                    border-radius: 30px;
                    margin-top: 40px;
                }
                .joinLayout #main #c01 .y_box > div {
                    padding: 40px 0 40px 110px;
                    width: calc(80% - 110px);
                    font-size: 1rem;
                }
                .joinLayout #main #c01 .y_box > div::before {
                    width: 95px;
                    height: 92px;
                    top: 50%;
                    transform: translateY(-50%);
                }
                .joinLayout #main #c01 .y_box .ttl {
                    font-size: 1.6rem;
                }
			}		
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 980px) {
                .joinLayout #main #c01 {
                    padding: 100px 0 270px;
                }
                .joinLayout #main #c01::before {
                    background-image: url("../img/c01_before01.png");
                    width: 936px;
                    height: 357px;
                    left: 65%;
                    top: -70px;
                }
                .joinLayout #main #c01::after {
                    width: 312px;
                    height: 367px;
                    top: 10%;
                }
			}





/* c02
------------------------------------*/
.joinLayout #main #c02 {
    background-color: #f5e7d9;
    position: relative;
}
.joinLayout #main #c02::before, .joinLayout #main #c02::after {
    position: absolute;
    content: "";
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}
.joinLayout #main #c02::after {
    background-image: url("../img/c01_before04.png");
    width: 163px;
  height: 125px;
  top: -130px;
  right: -4%;
    animation: softHop 3.5s ease-in-out infinite;
}
@keyframes softHop {
    0%, 50% {
        transform: translate(-50%, 0);
    }
    56% {
        transform: translate(-50%, -14px);
    }
    62% {
        transform: translate(-50%, 0);
    }
    68% {
        transform: translate(-50%, -10px);
      }
    74% {
        transform: translate(-50%, 0);
    }
    100% {
        transform: translate(-50%, 0);
    }
}
.joinLayout #main #c02::before {
    animation: sway 4s ease-in-out infinite;
}
@keyframes sway {
  0%   { transform: translateX(-50%) rotate(0deg); }
  25%  { transform: translateX(-50%) rotate(3deg); }
  50%  { transform: translateX(-50%) rotate(0deg); }
  75%  { transform: translateX(-50%) rotate(-3deg); }
  100% { transform: translateX(-50%) rotate(0deg); }
}

.joinLayout #main #c02 .custom_shape .shape_fill {
    fill: #f5e7d9;
}
.joinLayout #main #c02 .box02 h3 {
    position: relative;
    padding-left: 30px;
    line-height: 1.2;
    margin-bottom: 30px;
}
.joinLayout #main #c02 .cassette {
    padding: 60px 0;
}
.joinLayout #main #c02 .flex {
    margin-top: 40px;
    margin-left: auto;
    margin-right: auto;
    max-width: 940px;
    text-align: center;
    font-weight: bold;
    width: 90%;
}
.joinLayout #main #c02 .flex .ttl {
    position: relative;
    margin-top: 70px;
    margin-bottom: 40px;
    padding: 10px 0;
    border-radius: 50px;
    background-color: #59bb5a;
    text-align: center;
    color: #fff;
    font-size: 1.05rem;
}
.joinLayout #main #c02 .flex .ttl::after {
    position: absolute;
    content: "";
    width: 20px;
    height: 15px;
    clip-path: polygon(50% 100%, 0 0, 100% 0);
    background-color: #59bb5a;
    bottom: -14px;
    left: 50%;
    transform: translateX(-50%);
}
.joinLayout #main #c02 .flex .ttl span {
    display: inline-block;
    padding: 0 20px;
    position: absolute;
    top: -50px;
    left: 50%;
    transform: translateX(-50%);
    color: #59bb5a;
    width: calc(80% - 40px);
    max-width: 230px;
    font-size: 0.85rem;
}
.joinLayout #main #c02 .flex .ttl span::before, .joinLayout #main #c02 .flex .ttl span::after {
    position: absolute;
    content: "";
    height: 100%;
    width: 2px;
    top: 0;
    background-color: #59bb5a;
}
.joinLayout #main #c02 .flex .ttl span::before {
    transform: rotate(-30deg);
    left: 0;
}
.joinLayout #main #c02 .flex .ttl span::after {
    transform: rotate(30deg);
    right: 0;
}
.joinLayout #main #c02 .flex .flex_box02:nth-child(2) .ttl, .joinLayout #main #c02 .flex .flex_box02:nth-child(2) .ttl::after,
.joinLayout #main #c02 .flex .flex_box02:nth-child(2) .ttl span::before,
.joinLayout #main #c02 .flex .flex_box02:nth-child(2) .ttl span::after {
    background-color: #c1932f;
}
.joinLayout #main #c02 .flex .flex_box02:nth-child(2) .ttl span {
    color: #c1932f;
}
.joinLayout #main #c02 .flex .flex_box02:nth-child(3) .ttl, .joinLayout #main #c02 .flex .flex_box02:nth-child(3) .ttl::after,
.joinLayout #main #c02 .flex .flex_box02:nth-child(3) .ttl span::before,
.joinLayout #main #c02 .flex .flex_box02:nth-child(3) .ttl span::after {
    background-color: #49bfca;
}
.joinLayout #main #c02 .flex .flex_box02:nth-child(3) .ttl span {
    color: #49bfca;
}
.joinLayout #main #c02 .flex .img {
    margin: 0 auto 30px;
  max-width: 96%;
    position: relative;
}
.joinLayout #main #c02 .flex .img::after {
    position: absolute;
    content: "";
    bottom: -10px;
    right: 0;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}
.joinLayout #main #c02 .flex .flex_box02:nth-child(1) .img::after {
    background-image: url("../img/sense03.png");
    width: 87px;
    height: 93px;
}
.joinLayout #main #c02 .flex .flex_box02:nth-child(2) .img::after {
    background-image: url("../img/sense02.png");
    width: 95px;
    height: 93px;
}
.joinLayout #main #c02 .flex .flex_box02:nth-child(3) .img::after {
    background-image: url("../img/sense04.png");
    width: 90px;
    height: 90px;
}




			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
                .joinLayout #main #c02 .cassette {
                    padding: 100px 0;
                }
                .joinLayout #main #c02::after {
                    width: 193px;
                    height: 145px;
                    top: -180px;
                    right: -10%;
                }
                .joinLayout #main #c02::before {
                    background-image: url("../img/c01_before03.png");
                    width: 176px;
                    height: 118px;
                    top: -120px;
                    left: 16%;
                }
                .joinLayout #main #c02 .flex {
                    margin-top: 60px;
                }
			}		
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 980px) {
                .joinLayout #main #c02::after {
                    width: 363px;
                    height: 275px;
                    top: -300px;
                }
                .joinLayout #main #c02::before {
                    width: 276px;
                    height: 183px;
                    top: -180px;
                    left: 10%;
                }
                .joinLayout #main #c02 .flex .ttl span {
                    font-size: 1rem;
                }
			}





/* c03
------------------------------------*/
.joinLayout #main #c03 {
    padding: 80px 0 30px;
    position: relative;
}
.joinLayout #main #c03::before, .joinLayout #main #c03::after {
    position: absolute;
    content: "";
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center top;
    top: 40%;
    z-index: -2;
    animation: floatUpFade 4.5s linear infinite;
}
.joinLayout #main #c03::before {
    background-image: url("../img/c03_bg01.png");
    left: 11%;
    width: 183px;
    height: 211px;
}
.joinLayout #main #c03::after {
    background-image: url("../img/c03_bg02.png");
    width: 171px;
  height: 205px;
    right: -14%;
}
@keyframes floatUpFade {
    0% {
        transform: translate(-50%, 30px) translateX(0);
        opacity: 0;
    }
    15% {
        opacity: 1;
    }
    30% {
        transform: translate(-50%, -20px) translateX(-6px);
    }
    45% {
        transform: translate(-50%, -45px) translateX(6px);
    }
    60% {
        transform: translate(-50%, -70px) translateX(-4px);
      }
    75% {
        transform: translate(-50%, -95px) translateX(4px);
        opacity: 1;
      }
    100% {
        transform: translate(-50%, -120px) translateX(0);
        opacity: 0;
    }
}
.joinLayout #main #c03 .bg {
    position: absolute;
    width: 100%;
    height: 30%;
    background-color: #ffe870;
    bottom: 0;
    left: 0;
    z-index: -1;
}
.joinLayout #main #c03 .bg::before {
    position: absolute;
  content: "";
  background-image: url("../img/wave02.png");
  background-size: contain;
  background-repeat: repeat-x;
  background-position: center top;
  width: 100%;
  height: 10px;
  top: -10px;
  left: 0;
}
.joinLayout #main #c03 .title01 .s {
    display: block;
    font-size: 1.25rem;
    margin-top: 10px;
}
.joinLayout #main #c03 .w_box {
    background-color: #fff;
    box-shadow: 0px 5px 12px 0px rgba(43, 43, 43, 0.5);
    border-radius: 20px;
    padding: 60px 0;
    position: relative;
    max-width: 895px;
    margin: 70px auto 0;
}
.joinLayout #main #c03 .w_box .title02 {
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    width: calc(85% - 70px);
}
.joinLayout #main #c03 .w_box > div {
    width: 90%;
    max-width: 720px;
    margin: 0 auto;
}
.joinLayout #main #c03 .w_box ul > li {
    padding-left: 70px;
    position: relative;
    padding-bottom: 30px;
    margin-bottom: 30px;
    font-weight: bold;
}
.joinLayout #main #c03 .w_box ul > li::before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    width: 60px;
    height: 60px;
}
.joinLayout #main #c03 .w_box ul > li:nth-child(1)::before {
    background-image: url("../img/c03_icon01.png");
}
.joinLayout #main #c03 .w_box ul > li:nth-child(2)::before {
    background-image: url("../img/c03_icon02.png");
}
.joinLayout #main #c03 .w_box ul > li:nth-child(3)::before {
    background-image: url("../img/c03_icon03.png");
}
.joinLayout #main #c03 .w_box ul > li:nth-child(4)::before {
    background-image: url("../img/c03_icon04.png");
}

.joinLayout #main #c03 .w_box ul > li:not(:last-child)::after {
    position: absolute;
    content: "";
    width: calc(100% - 70px);
    right: 0;
    bottom: 0;
    height: 1px;
    border-bottom: 5px dotted #ff6163;
}
.joinLayout #main #c03 .w_box ul > li .ttl {
    font-family: "Zen Maru Gothic", sans-serif;
    color: #ff6163;
    font-size: 1.1rem;
}
.joinLayout #main #c03 .w_box .comment {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 0 20px;
    position: absolute;
    width: calc(90% - 20px);
    bottom: 20px;
    right: 20px;
}
.joinLayout #main #c03 .w_box .comment p {
    color: #ff6163;
    background-color: #f3f3f3;
    border-radius: 50px;
    padding: 10px 20px;
    display: table;
    position: relative;
    font-weight: bold;
}
.joinLayout #main #c03 .w_box .comment p::after {
    position: absolute;
    content: "";
    width: 20px;
    height: 10px;
    background-color: #f3f3f3;
    clip-path: polygon(0 0, 0 100%, 100% 50%);
    top: 50%;
    transform: translateY(-50%);
    right: -20px;
}
.joinLayout #main #c03 .w_box .comment img {
    transform: rotate(20deg);
    max-width: 60px;
}




			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
                .joinLayout #main #c03 .bg::before {
                    height: 22px;
                    top: -22px;
                }
                .joinLayout #main #c03 .title01 .s {
                    font-size: 2.25rem;
                    margin-top: 20px;
                }
                .joinLayout #main #c03 .w_box {
                    border-radius: 30px;
                }
                .joinLayout #main #c03 .w_box ul > li {
                    padding-left: 120px;
                }
                .joinLayout #main #c03 .w_box ul > li::before {
                    width: 87px;
                    height: 87px;
                }
                .joinLayout #main #c03 .w_box ul > li::after {
                    width: calc(100% - 120px);
                }
                .joinLayout #main #c03 .w_box .title02 {
                    top: -30px;
                }
                .joinLayout #main #c03 .w_box ul > li .ttl {
                    font-size: 1.4rem;
                }
                .joinLayout #main #c03 .w_box .comment p {
                    font-size: 1.3rem;
                }
                .joinLayout #main #c03 .w_box .comment img {
                    max-width: none;
                }
			}		
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 980px) {
                .joinLayout #main #c03 .w_box {
                    padding: 90px 0 70px;
                }
                .joinLayout #main #c03 .w_box ul > li .ttl {
                    font-size: 1.8rem;
                }
                .joinLayout #main #c03::before {
                    left: 13%;
                    width: 313px;
                    height: 351px;
                }
                .joinLayout #main #c03::after {
                    width: 301px;
                    height: 363px;
                    right: -7%;
                }
			}





/* c04
------------------------------------*/
.joinLayout #main #c04 {
    background-color: #ffe870;
    position: relative;
    padding-bottom: 40px;
}
.joinLayout #main #c04::before {
    position: absolute;
    content: "";
    background-image: url("../img/wave02.png");
    background-size: contain;
    background-repeat: repeat-x;
    background-position: center top;
    width: 100%;
    height: 10px;
    bottom: -10px;
    left: 0;
    transform: scale(1, -1);
}
.joinLayout #main #c04 .title03 {
    text-align: center;
    font-family: "Zen Maru Gothic", sans-serif;
    font-weight: 500;
    font-size: 1.6rem;
    margin-bottom: 40px;
    position: relative;
    padding-top: 60px;
}
.joinLayout #main #c04 .title03::before {
    position: absolute;
    content: "";
    background: url("../img/title03.png")no-repeat center center/cover;
    width: 88px;
    height: 37px;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}
.joinLayout #main #c04 .title03 span {
    display: inline-block;
    padding-left: 45px;
    position: relative;
}
.joinLayout #main #c04 .title03 span::before {
    position: absolute;
    content: "";
    background: url("../img/c04_title01.png")no-repeat center center/cover;
    width: 31px;
    height: 29px;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
}
.joinLayout #main #c04 .flex {
    padding-top: 60px;
    gap: 100px 4%;
}
.joinLayout #main #c04 .flex_box02 {
    border: 6px solid #f9b6b6;
    border-radius: 20px;
    background-color: #fff;
    padding: 70px 0 20px;
    font-weight: bold;
    position: relative;
}
.joinLayout #main #c04 .flex_box02 p {
    width: 90%;
    margin: 0 auto;
}
.joinLayout #main #c04 .flex_box02 .icon {
    position: absolute;
    content: "";
    left: 50%;
    transform: translateX(-50%);
    top: -50px;
    width: 80%;
    text-align: center;
}
.joinLayout #main #c04 .flex_box02 .icon p {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: -20px;
    z-index: 1;
    max-width: 150px;
    padding: 3px 0;
    border-radius: 50px;
    color: #fff;
    background-color: #00c4b9;
}
.joinLayout #main #c04 .flex_box02:nth-child(2) {
    border-color: #f0cc3c;
}
.joinLayout #main #c04 .flex_box02:nth-child(2) .icon p {
    background-color: #007ed2;
}
.joinLayout #main #c04 .flex_box02:nth-child(3) {
    border-color: #49aab9;
}
.joinLayout #main #c04 .flex_box02:nth-child(3) .icon p {
    background-color: #a04bbd;
}
.joinLayout #main #c04 .flex_box02 .icon img {
    max-width: 30%;
}


			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
                .joinLayout #main #c04 {
                    padding-bottom: 70px;
                }
                .joinLayout #main #c04 .title03 {
                    font-size: 2rem;
                    padding-top: 60px;
                }
                .joinLayout #main #c04 .title03::before {
                    width: 109px;
                    height: 46px;
                }
                .joinLayout #main #c04::before {
                    height: 22px;
                    bottom: -22px;
                }
                .joinLayout #main #c04 .title03 span {
                    padding-left: 60px;
                }
                .joinLayout #main #c04 .title03 span::before {
                    width: 38px;
                    height: 36px;
                }
                .joinLayout #main #c04 .flex_box02 {
                    border-radius: 30px;
                    padding: 90px 0 40px;
                }
                .joinLayout #main #c04 .flex_box02 p {
                    width: 80%;
                }
                .joinLayout #main #c04 .flex {
                    padding-top: 80px;
                }
                .joinLayout #main #c04 .flex {
                    flex-direction: column;
                }
                .joinLayout #main #c04 .flex_box02 {
                    width: 100%;
                }
                .joinLayout #main #c04 .flex_box02 .icon {
                    top: -70px;
                }
                .joinLayout #main #c04 .flex_box02 .icon img {
                    max-width: none;
                }
			}		
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 980px) {
                .joinLayout #main #c04 .flex {
                    flex-direction: row;
                }
                .joinLayout #main #c04 .flex_box02 {
                    width: calc(92% / 3);
                }
			}





/* c05
------------------------------------*/
.joinLayout #main #c05 {
    padding-top: 70px;
}


			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
                .joinLayout #main #c05 {
                    padding-top: 120px;
                }
			}		
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 980px) {
			}





/* c06
------------------------------------*/
.joinLayout #main #c06 {
    padding-top: 20px;
}
.joinLayout #main #c06 .flex {
    counter-reset: number;
    flex-wrap: wrap;
    gap: 30px 4%;
}
.joinLayout #main #c06 .flex .flex_box01 {
    counter-increment: number;
    font-weight: bold;
    color: #696767;
    padding: 40px 20px;
    background-color: #f3f3f3;
    border-radius: 20px;
    box-shadow: 0px 5px 12px 0px rgba(43, 43, 43, 0.5);
    position: relative;
}
.joinLayout #main #c06 .flex .flex_box01 .ttl {
    position: relative;
    padding-left: 70px;
    font-size: 1.05rem;
    color: #9fa10f;
    line-height: 1.5;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    min-height: 50px;
}
.joinLayout #main #c06 .flex .flex_box01 .ttl::before, .joinLayout #main #c06 .flex .flex_box01 .ttl::after {
    position: absolute;
}
.joinLayout #main #c06 .flex .flex_box01 .ttl::before {
    content: "";
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background-color: #49aab9;
    top: 0;
    left: 0;
}
.joinLayout #main #c06 .flex .flex_box01 .ttl::after {
    content: counter(number, decimal-leading-zero);
    color: #fff;
    top: 14px;
  left: 14px;
}
.joinLayout #main #c06 .flex .flex_box01::after {
    position: absolute;
    content: "";
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    bottom: 20px;
    right: 20px;
    height: 20px;
}
.joinLayout #main #c06 .flex .flex_box01:nth-child(1)::after {
    background-image: url("../img/c06_icon01.png");
    width: 19px;
}
.joinLayout #main #c06 .flex .flex_box01:nth-child(2)::after {
    background-image: url("../img/c06_icon02.png");
    width: 31px;
}
.joinLayout #main #c06 .flex .flex_box01:nth-child(3)::after {
    background-image: url("../img/c06_icon03.png");
    width: 25px;
}
.joinLayout #main #c06 .flex .flex_box01:nth-child(4)::after {
    background-image: url("../img/c06_icon04.png");
    width: 24px;
}


			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
                .joinLayout #main #c06 {
                    padding-top: 40px;
                }
                .joinLayout #main #c06 .flex .flex_box01 .ttl {
                    font-size: 1.4rem;
                    padding-left: 90px;
                      min-height: 70px;
                }
                .joinLayout #main #c06 .flex .flex_box01 .ttl::before {
                    width: 70px;
                    height: 70px;
                }
                .joinLayout #main #c06 .flex .flex_box01 .ttl::after {
                    top: 20px;
                    left: 20px;
                }
                .joinLayout #main #c06 .flex .flex_box01 {
                    padding: 60px 30px;
                    width: calc(96% / 2 - 60px);
                    border-radius: 30px;
                }
                .joinLayout #main #c06 .flex .flex_box01::after {
                    height: 40px;
                }
                .joinLayout #main #c06 .flex .flex_box01:nth-child(1)::after {
                    width: 39px;
                }
                .joinLayout #main #c06 .flex .flex_box01:nth-child(2)::after {
                    width: 51px;
                }
                .joinLayout #main #c06 .flex .flex_box01:nth-child(3)::after {
                    width: 45px;
                }
                .joinLayout #main #c06 .flex .flex_box01:nth-child(4)::after {
                    width: 44px;
                }
			}
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 980px) {
			}
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 1500px) {
                .joinLayout #main #c06 .flex {
                    gap: 30px 2%;
                }
                .joinLayout #main #c06 .flex .flex_box01 {
                    width: calc(94% / 4 - 60px);
                }
			}





/* c07
------------------------------------*/
.joinLayout #main #c07 {
    position: relative;
    margin: 230px 0 120px;
    padding-top: 70px;
}
.joinLayout #main #c07::after {
    position: absolute;
    content: "";
    background: url("../img/c07_img01_sp.png")no-repeat center center/cover;
    width: 305px;
    height: 201px;
    left: 50%;
    transform: translateX(-50%);
    top: -201px;
    animation: softHop 3.5s ease-in-out infinite;
}
.joinLayout #main #c07 .cassette {
    position: relative;
    z-index: 1;
}
.joinLayout #main #c07 .bg {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: -10;
    background-color: #e3eecc;
    top: 0;
    left: 0;
}
.joinLayout #main #c07::before, .joinLayout #main #c07 .bg::after {
    position: absolute;
    content: "";
    border-radius: 50%;
    left: 50%;
    transform: translateX(-50%);
    background-color: #e3eecc;
    z-index: -10;
}
.joinLayout #main #c07::before {
    top: -45px;
    height: 90px;
    width: 100%;
}
.joinLayout #main #c07 .bg::after {
    bottom: -70px;
    height: 150px;
    width: 120%;
}
.joinLayout #main #c07 .flex {
    margin: 0 auto 60px;
    max-width: 980px;
    position: relative;
}
.joinLayout #main #c07 .flex .ttl {
    font-family: "Zen Maru Gothic", sans-serif;
    padding-left: 40px;
    position: relative;
    display: table;
    margin: 0 auto;
    font-size: 1.1rem;
    padding-top: 30px;
}
.joinLayout #main #c07 .flex .ttl::before {
    position: absolute;
    content: "";
    background: url("../img/c07_icon01.png")no-repeat center center/cover;
    width: 28px;
    height: 25px;
    left: 0;
    bottom: 5px;
}
.joinLayout #main #c07 .flex .ttl::after {
    position: absolute;
    content: "";
    background: url("../img/title03.png")no-repeat center top/cover;
    width: 65px;
    height: 27px;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}
.joinLayout #main #c07 .flex .btn01 {
    margin-top: 10px;
}
.joinLayout #main #c07 .flex .flex_box01 {
    border-radius: 20px;
    padding: 20px;
    background-color: #f5e772;
}
.joinLayout #main #c07 .flex .flex_box01:last-child {
    background-color: #fac4a6;
}
.joinLayout #main #c07 .sche_box {
    position: relative;
    z-index: 1;
}
.joinLayout #main #c07 .sche_box::before, .joinLayout #main #c07 .sche_box::after, .joinLayout #main #c07 .sche_box .flex::before {
    position: absolute;
    content: "";
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    z-index: -1;
}
.joinLayout #main #c07 .sche_box::after {
    background-image: url("../img/c07_before02.png");
    width: 122px;
    height: 51px;
    top: -40px;
    right: -30px;
}
.joinLayout #main #c07 .sche_box::before, .joinLayout #main #c07 .sche_box .flex::before {
    background-image: url("../img/c07_before01.png");
    width: 70px;
    height: 47px;
}
.joinLayout #main #c07 .sche_box::before {
    left: -30px;
    top: 40%;
}
.joinLayout #main #c07 .sche_box .flex::before {
    transform: scale(-1, -1);
    right: 20%;
  bottom: -40px;
}
.joinLayout #main #c07 .join_box {
    margin-top: 40px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.joinLayout #main #c07 .join_box span {
    font-weight: bold;
    color: #ff6163;
    display: table;
    padding: 10px 20px;
    border-radius: 50px;
    background-color: #fff;
    transform: rotate(-5deg);
    font-size: 1.1rem;
    letter-spacing: 1.5px;
}
.joinLayout #main #c07 .join_box span:first-child {
    margin-right: 80px;
}
.joinLayout #main #c07 .join_box span:last-child {
    margin-left: 80px;
    margin-top: -15px;
    position: relative;
}
.joinLayout #main #c07 .join_box span:last-child::before {
    position: absolute;
    content: "";
    background: url("../img/c08_img03.png")no-repeat center center/cover;
    width: 28px;
    height: 22px;
    top: -20px;
    right: 30px;
}
.joinLayout #main #c07 .img_box {
    width: 92%;
    margin: 30px auto 0;
}
.joinLayout #main #c07 .img_box img {
    margin: 0 auto;
}
/* 非表示対応 */
.joinLayout #main #c07 .flex .flex_box01:first-child {
    position: relative;
    overflow: hidden;
}
.joinLayout #main #c07 .flex .flex_box01:first-child::before, .joinLayout #main #c07 .flex .flex_box01:first-child::after {
    position: absolute;
    z-index: 10;
}
.joinLayout #main #c07 .flex .flex_box01:first-child::before {
    content: "";
    background-color: rgba(0, 0, 0, 0.6);
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.joinLayout #main #c07 .flex .flex_box01:first-child::after {
    content: "準備中";
    color: #fff;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    font-weight: bold;
    font-size: 2rem;
}
/*// 非表示対応 */

			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
                .joinLayout #main #c07 {
                    margin: 370px 0 180px;
                    padding-top: 90px;
                }
                .joinLayout #main #c07::after {
                    width: 655px;
                    height: 301px;
                    background-image: url("../img/c07_img01.png");
                    top: -310px;
                }
                .joinLayout #main #c07 .bg::after {
                    bottom: -120px;
                    height: 380px;
                }
                .joinLayout #main #c07 .flex .ttl {
                    font-size: 2rem;
                    padding-left: 60px;
                    padding-top: 50px;
                }
                .joinLayout #main #c07 .flex .ttl::before {
                    width: 47px;
                    height: 42px;
                }
                .joinLayout #main #c07 .flex .ttl::after {
                    width: 109px;
                    height: 46px;
                }
                .joinLayout #main #c07 .flex .flex_box01 {
                    border-radius: 30px;
                    padding: 40px 30px;
                }
                .joinLayout #main #c07 .sche_box::before, .joinLayout #main #c07 .sche_box .flex::before {
                    width: 133px;
                    height: 90px;
                }
                .joinLayout #main #c07 .sche_box::before {
                    left: -40px;
                    top: -30px;
                }
                .joinLayout #main #c07 .sche_box .flex::before {
                    bottom: -70px;
                }
                .joinLayout #main #c07 .sche_box::after {
                    top: -20px;
                    right: -70px;
                    width: 222px;
                    height: 93px;
                }
                .joinLayout #main #c07 .join_box {
                    margin-top: 60px;
                }
                .joinLayout #main #c07 .join_box span {
                    font-size: 2rem;
                    padding: 10px 70px;
                }
                .joinLayout #main #c07 .join_box span:first-child {
                    margin-right: 180px;
                }
                .joinLayout #main #c07 .join_box span:last-child {
                    margin-left: 180px;
                    margin-top: -25px;
                }
                .joinLayout #main #c07 .join_box span:last-child::before {
                    width: 59px;
                    height: 47px;
                    top: -40px;
                    right: 80px;
                }
			}		
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 980px) {
                .joinLayout #main #c07 {
                    margin-bottom: 40px;
                    padding-bottom: 80px;
                }
                .joinLayout #main #c07 .bg {
                    height: 85%;
                }
                .joinLayout #main #c07 .cassette::before, .joinLayout #main #c07 .cassette::after {
                    position: absolute;
                    content: "";
                    background: url("../img/c07_img02.png")no-repeat center top/cover;
                    width: 262px;
                    height: 105px;
                    top: -185px;
                }
                .joinLayout #main #c07 .cassette::before {
                    left: 5%;
                    transform: translateX(-50%);
                }
                .joinLayout #main #c07 .cassette::after {
                    right: -2%;
                    transform: scale(-1, 1);
                }
                .joinLayout #main #c07 .join_box span:first-child {
                    margin-right: 280px;
                }
                .joinLayout #main #c07 .join_box span:last-child {
                    margin-left: 280px;
                }
                .joinLayout #main #c07 .join_box span {
                    padding: 10px 90px;
                }
                .joinLayout #main #c07 .img_box {
                    width: 100%;
                    margin: 0;
                }
                .joinLayout #main #c07 .img_box img {
                    margin: 0;
                }
                .joinLayout #main #c07 .img_box .img {
                    position: absolute;
                    z-index: -1;
                    bottom: 0;
                    max-width: 35%;
                }
                .joinLayout #main #c07 .img_box .img:first-child {
                    left: -5%;
                }
                .joinLayout #main #c07 .img_box .img:last-child {
                    right: -5%;
                }
                .joinLayout #main #c07 .sche_box {
                    margin-bottom: 130px;
                }
			}




/* c08
------------------------------------*/
.joinLayout #main #c08 {
    padding-bottom: 110px;
}
.joinLayout #main #c08 .link_txt {
    color: #fd4143;
    text-decoration: underline;
}

			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
                .joinLayout #main #c08 {
                    padding-bottom: 150px;
                }
			}		
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 980px) {
			}





/* c09
------------------------------------*/
.joinLayout #main #c09 {
    background-color: #f3f2f2;
    position: relative;
    padding: 60px 0;
}
.joinLayout #main #c09::after {
    position: absolute;
    content: "";
    background: url("../img/c10_before01.png")no-repeat center center/cover;
    width: 85px;
    height: 78px;
    top: -72px;
    right: 5%;
    animation: sway 4s ease-in-out infinite;
}
.joinLayout #main #c09 .custom_shape {
    transform: scale(-1, 1);
}
.joinLayout #main #c09 .custom_shape .shape_fill {
    fill: #f3f2f2;
}
.joinLayout #main #c09 .img_box .img {
    max-width: 60%;
    margin: 0 auto;
}

			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
                .joinLayout #main #c09::after {
                    width: 195px;
                    height: 168px;
                    top: -160px;
                    right: 5%;
                }
			}		
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 980px) {
                .joinLayout #main #c09 {
                    padding: 100px 0 30px;
                }
                .joinLayout #main #c09 .cassette {
                    position: relative;
                    z-index: 1;
                }
                .joinLayout #main #c09 .img_box .img {
                    position: absolute;
                    top: 50%;
                    transform: translateY(-50%);
                    z-index: 0;
                    max-width: 25%;
                    margin: 0;
                }
                .joinLayout #main #c09 .img_box .img:first-child {
                    left: 2%;
                }
                .joinLayout #main #c09 .img_box .img:last-child {
                    right: 2%;
                }
			}





/* c10
------------------------------------*/
.joinLayout #main #c10 {
    background: url("../img/c11_bg01.png")no-repeat center center/cover;
    padding: 100px 0 20px;
}
.joinLayout #main #c10 .bg_wrap {
    position: relative;
    max-width: 765px;
    margin: 0 auto;
    background-color: rgba(255, 255, 255, 0.9);
    border-radius: 30px;
}
.joinLayout #main #c10 .bg_wrap .inner {
    position: relative;
    z-index: 1;
    width: 90%;
    max-width: 650px;
    margin: 0 auto;
    padding: 20px 0;
}
.joinLayout #main #c10 .title01 {
    font-size: 1.7rem;
    line-height: 1.2;
}
.joinLayout #main #c10 .title01 .ss {
    display: block;
    font-size: 1.3rem;
}
.joinLayout #main #c10 .title01 .s {
    font-size: 1rem;
}
.joinLayout #main #c10 .title01 .marker {
    position: relative;
    z-index: 1;
}
.joinLayout #main #c10 .title01 .marker::after {
    position: absolute;
    content: "";
    background: url("../img/c11_before01.png")no-repeat center center/contain;
    width: 100%;
    height: 33px;
    left: 0;
    bottom: -12px;
    z-index: -1;
}
.joinLayout #main #c10 .t_read {
    display: table;
    position: relative;
    padding: 0 55px;
    margin: 0 auto;
}
.joinLayout #main #c10 .t_read::before, .joinLayout #main #c10 .t_read::after {
    position: absolute;
    content: "";
    top: 50%;
    transform: translateY(-50%);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}
.joinLayout #main #c10 .t_read::before {
    left: 0;
    width: 46px;
  height: 39px;
    background-image: url("../img/sense01a.png");
}
.joinLayout #main #c10 .t_read::after {
    right: 10px;
    width: 42px;
  height: 46px;
    background-image: url("../img/sense03a.png");
}


			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
                .joinLayout #main #c10 .bg_wrap {
                    border-radius: 80px;
                }
                .joinLayout #main #c10 {
                    padding: 150px 0 100px;
                }
                .joinLayout #main #c10 .bg_wrap .inner {
                    padding: 40px 0;
                }
                .joinLayout #main #c10 .title01 {
                    font-size: 3rem;
                    margin-bottom: 40px;
                }
                .joinLayout #main #c10 .title01 .ss {
                    font-size: 2rem;
                }
                .joinLayout #main #c10 .title01 .s {
                    font-size: 2.1rem;
                }
                .joinLayout #main #c10 .title01 .marker::after {
                    bottom: -8px;
                }
                .joinLayout #main #c10 .t_read {
                    padding: 0 90px;
                }
                .joinLayout #main #c10 .t_read::before {
                    width: 76px;
                    height: 67px;
                }
                .joinLayout #main #c10 .t_read::after {
                    width: 65px;
                    height: 72px;
                }
			}		
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 980px) {
			}





/* c11
------------------------------------*/



			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
			}		
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 980px) {
			}





/* c12
------------------------------------*/



			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
			}		
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 980px) {
			}