 :root {
   --c-red: #c03;
   --c-red_light: #fcccd2;
   --c-black1: #272727;
   --c-black2: #3d3d3d;
   --c-gray1: #f3f3f3;
   --c-gray2: #e5e5e5;
   --disabled: #7d7d7d;
   --main-font-lato: 'Lato', 'Noto Sans JP', Helvetica, Neue Haas Grotesk, Arial;
 }

 /* reset */
 * {
   box-sizing: border-box;
 }

 body {
   margin: 0;
   font-family: "Noto Sans JP", Helvetica, Neue Haas Grotesk, Arial;
   line-height: 1.5;
 }

 #main h1,
 #main h2,
 #main h3,
 #main h4,
 #main p {
   background-color: inherit;
   color: inherit;
   padding: 0;
   border: 0;
   margin: 0;
   min-height: 0;
 }

 #main img {
   width: 100%;
   vertical-align: bottom;
 }

 #main a {
   text-underline-offset: 2px;
   color: var(--c-black1);
   text-decoration: underline;
   word-break: break-all;
 }

 #main a:hover {
   color: var(--c-red);
   text-decoration: none;
 }

 #main a:hover,
 #main a:focus {
   text-decoration: none;
 }

 #main a:visited {
   opacity: 1;
 }

 #main table {
   margin-top: 0;
 }

 #main table th,
 #main table td {
   font-weight: normal;
   background-color: inherit;
 }

 #main ul,
 #main ol {
   padding-left: 0;
   margin-bottom: 0;
   list-style: none;
   margin-top: 0;
 }

 #main li {
   list-style: none;
   padding: 0;
 }

 .bootstrap #main p,
 .bootstrap #main h1,
 .bootstrap #main h2,
 .bootstrap #main h3,
 .bootstrap #main h4,
 .bootstrap #main h5,
 .bootstrap #main h6,
 .bootstrap #main ol,
 .bootstrap #main ul,
 .bootstrap #main dl {
   margin-bottom: 0;
 }

 @media (max-width: 480px) {

   table tr:nth-child(odd),
   table tr:nth-child(even) {
     background: inherit;
   }
 }

 #main h1,
 #main h2,
 #main h3,
 #main h4,
 #main h5,
 #main h6,
 #main p {
   font-size: 18px;
   color: var(--c-black1);
   line-height: 1.5;
 }

 #main h1 {
   font-size: 44px;
   font-weight: 700;
 }

 #main h2 {
   font-size: 32px;
   font-weight: 700;
 }

 #main h3 {
   font-size: 24px;
   font-weight: 700;
 }

 #main h4 {
   font-size: 20px;
   font-weight: 700;
 }

 #main p {
   line-height: 1.7;
 }

 #main .content-block {
   margin: 80px 0;
 }

 @media (max-width: 768px) {

   #main p,
   #main span,
   #main li,
   #main th,
   #main td,
   #main dt,
   #main dd {
     font-size: 14px;
   }

   #main h1 {
     font-size: 24px;
   }

   #main h2 {
     font-size: 24px;
   }

   #main h3 {
     font-size: 18px;
   }

   #main h4 {
     font-size: 16px;
   }
 }

 .breadcrumb {
   max-width: 1224px;
   margin-left: auto;
   margin-right: auto;
 }

 #block-subsphere-page-title {
   display: none;
 }

 nav.tabs.tabs {
   margin-bottom: 0;
 }

 .node__content.node__content {
   margin-top: 0;
 }

 .text-formatted ul li:before,
 .table-responsive ul li:before {
   width: auto;
   height: auto;
   background-color: unset;
 }

 .article-all-back-articles-btn-wrapper {
   display: none;
 }

 #main .blank-link {
   padding-right: 16px;
 }

 #main .blank-link--red::after {
   margin-right: 3px;
 }

 #main .oval-link {
   position: relative;
   display: inline-block;
   width: 320px;
   padding: 15px 40px;
   border-radius: 100vh;
   background: var(--main-clr-wt);
   font-size: 18px;
   font-weight: bold;
   text-align: center;
   cursor: pointer;
   line-height: 1.5;
   text-decoration: none;
 }

 #main .oval-link--border--red {
   border: 1px solid var(--c-red);
   color: var(--c-red) !important;
 }

 #main .oval-link::after {
   content: '';
   position: absolute;
   top: 50%;
   right: 24px;
   transform: translateY(-50%);
   display: inline-block;
   width: 14px;
   height: 14px;
 }

 #main .oval-link--red {
   background: #bc2739;
   color: #ffffff;
 }

 #main a.oval-link--border--red:hover {
   color: var(--c-red);
 }

 #main a.oval-link--red:hover {
   color: #ffffff;
 }

 @media (max-width: 768px) {
   .footer-breadcrumb {
     margin-top: 20px;
   }

   #main .oval-link {
     width: 100%;
     max-width: 320px;
     font-size: 16px;
   }
 }

 :root {
   --c-register--lightyellow: #FFF8D8;
   --c-register--darkyellow: #8C7400;
 }

 #main {
   background: #fff;
 }

 /**********************************
 component
**********************************/
 #main .c-bg__lightblue {
   background-color: #e2f4ff;
 }

 #main .c-1224 {
   max-width: 1224px;
   width: 100%;
   margin: auto;
 }

 #main .c-1024 {
   max-width: 1024px;
   width: 100%;
   margin: auto;
 }

 #main .c-840 {
   max-width: 840px;
   width: 100%;
   margin: auto;
 }

 #main .c-title--cp {
   display: flex;
   justify-content: center;
 }

 #main .c-title--cp span {
   display: flex;
   justify-content: center;
   align-items: center;
   padding: 4px 32px;
   background: #fff;
   border-top: 2px solid var(--c-black1);
   border-bottom: 2px solid var(--c-black1);
 }

 /* table */
 #main .c-table__wrapper {
   margin-top: 24px;
 }

 #main .c-table {
   border-collapse: collapse;
   width: 100%;
 }

 #main .c-table th {
   padding: 18px 24px;
   font-size: 16px;
   vertical-align: middle;
 }

 #main .c-table td {
   background: #fff;
   padding: 18px 24px;
   border: 1px solid #e5e5e5;
   font-size: 18px;
   vertical-align: middle;
 }

 #main .c-table td ul li {
   margin-top: 4px;
 }

 #main .c-table td ul li:first-child {
   margin-top: 0;
 }

 /* ac */
 #main .c-ac {
   margin-bottom: 0;
 }

 #main .c-ac__q {
   padding: 16px 64px;
   border-bottom: 1px solid #fff;
   background: #fff;
   cursor: pointer;
   border: 1px solid #f1f1f1;
   position: relative;
   font-size: 18px;
   font-weight: 400;
 }

 #main .c-ac__q::before {
   content: "Q.";
   font-size: 18px;
   font-weight: 500;
   color: var(--c-black1);
   margin-right: 8px;
   position: absolute;
   top: 14px;
   left: 32px;
 }

 #main .c-ac__q::after {
   content: "";
   background: url(/sites/default/files/media/campaign/common/image/lp_campaign_common_ic_plus.webp);
   background-repeat: no-repeat;
   background-size: contain;
   width: 16px;
   height: 16px;
   position: absolute;
   right: 32px;
   top: 21px;
 }

 #main .c-ac__q.open::after {
   background: url(/sites/default/files/media/campaign/common/image/lp_campaign_common_ic_minus.webp);
   width: 16px;
   height: 2px;
   right: 32px;
   top: 27px;
 }

 #main .c-ac__a {
   display: none;
   padding: 16px 64px;
   background-color: #f7f7f7;
   margin-left: 0;
   position: relative;
   margin-bottom: 0;
   font-size: 18px;
 }

 #main .c-ac__a::before {
   content: "A.";
   font-size: 20px;
   font-weight: 500;
   color: var(--c-red);
   margin-right: 8px;
   position: absolute;
   top: 14px;
   left: 34px;
 }

 #main .c-link--white {
   color: #fff;
 }

 #main .c-link--white:hover {
   color: #fff;
   text-decoration: none;
 }

 #main .c-dot {
   padding-left: 1.1em;
   position: relative;
 }

 #main .c-dot::before {
   content: "・";
   position: absolute;
   top: 0;
   left: 0;
 }

 #main .c-ast {
   padding-left: 1.1em;
   position: relative;
   font-size: 14px;
 }

 #main .c-ast::before {
   content: "※";
   position: absolute;
   top: 0;
   left: 0;
 }

 #main .c-square {
   padding-left: 1.1em;
   position: relative;
 }

 #main .c-square::before {
   content: "Ã¢â€“ ";
   position: absolute;
   top: 0;
   left: 0;
 }

 #main .c-num {
   padding-left: 1.1em;
   counter-increment: count;
   position: relative;
 }

 #main .c-num:nth-child(n + 10) {
   padding-left: 2em;
 }

 #main .c-num::before {
   content: counter(count) ".";
   position: absolute;
   top: 0;
   left: 0;
 }

 #main .c-num--paren {
   padding-left: 2em;
   counter-increment: count--paren;
   position: relative;
 }

 #main .c-num--paren:nth-child(n + 10) {
   padding-left: 2.5em;
 }

 #main .c-num--paren::before {
   content: "Ã¯Â¼Ë†" counter(count--paren) "Ã¯Â¼â€°";
   position: absolute;
   top: 0;
   left: 0;
   margin-left: -10px;
 }

 #main .c-ast__num {
   padding-left: 2em;
   counter-increment: count;
   position: relative;
   font-size: 14px;
 }

 #main .c-ast__num:nth-child(n + 10) {
   padding-left: 2.5em;
 }

 #main .c-ast__num::before {
   content: "Ã¢â‚¬Â»" counter(count);
   position: absolute;
   top: 0;
   left: 0;
 }

 #main .c-example {
   padding-left: 2em;
   counter-increment: count;
   position: relative;
 }

 #main .c-example::before {
   content: "Ã¤Â¾â€¹Ã¯Â¼â€°";
   position: absolute;
   top: 0;
   left: 0;
 }


 @media (max-width: 768px) {

   #main .c-1224,
   #main .c-1024,
   #main .c-840 {
     padding-left: 24px;
     padding-right: 24px;
   }

   #main .c-title--cp span {
     font-size: 20px;
   }

   #main .c-ast {
     font-size: 12px;
   }

   #main .c-table th {
     padding: 16px;
     font-size: 12px;
   }

   #main .c-table td {
     font-size: 14px;
     padding: 16px;
   }

   #main .c-ac__q {
     padding: 12px 32px;
     font-size: 14px;
   }

   #main .c-ac__q::before {
     font-size: 14px;
     top: 11px;
     left: 13px;
   }

   #main .c-ac__q::after {
     width: 12px;
     height: 12px;
     right: 18px;
     top: 16px;
   }

   #main .c-ac__q.open::after {
     width: 12px;
     height: 1.5px;
     right: 17px;
     top: 23px;
   }

   #main .c-ac__a {
     padding: 12px 32px;
     font-size: 14px;
   }

   #main .c-ac__a::before {
     font-size: 14px;
     top: 12px;
     left: 15px;
   }
 }

 @media (max-width: 768px) {
   #main .c-title span {
     text-align: center;
   }
 }

 /**********************************
 utility
**********************************/
 #main .u-pcOnly {
   display: block;
 }

 #main .u-spOnly {
   display: none;
 }

 #main .u-fw--bold {
   font-weight: 700;
 }

 #main .u-color--primary {
   color: var(--c-red);
 }

 #main .u-fs--small {
   font-size: 14px;
 }

 #main .u-mt8 {
   margin-top: 8px;
 }

 #main .u-mt10 {
   margin-top: 10px;
 }


 @media (max-width: 768px) {
   #main .u-pcOnly {
     display: none;
   }

   #main .u-spOnly {
     display: block;
   }

   #main .u-fs--small {
     font-size: 12px;
   }
 }


 /**********************************
 mv
**********************************/
 #main .p-mv {
   background: url(/sites/default/files/media/campaign/register202606/image/lp_register202606_mv_background.webp?v=2);
   background-repeat: no-repeat;
   background-size: cover;
   height: auto;
 }

 .p-mv__date {
   padding: 8px 0px;
   background-color: #0467aa;
 }

 .p-mv__date img {
   max-width: 600px;
   margin: 0 auto;
   display: block;
 }

 /**********************************
 outline
**********************************/
 #main .p-outline {
   padding: 60px 0;
   background-color: #edf9ff;
 }

 .p-outline__box {
   display: flex;
   align-items: center;
   gap: 20px;
   max-width: 1000px;
   margin: 0 auto;
 }

 .p-outline__item {
   background-color: #edf9ff;
   text-align: center;
   background-color: #ffffff;
   border-radius: 10px;
   box-shadow: 1px 5px 10px 0px rgb(130 181 207 / 35%);
   position: relative;
   padding: 20px 25px;
   flex: 1;
   height: -webkit-fill-available;
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: center;
 }

 .p-outline__item::before {
   content: "";
   display: inline-block;
   width: 80px;
   height: 80px;
   background-image: url('/sites/default/files/media/campaign/register202606/image/lp_register202606_circle1_border.webp');
   position: absolute;
   background-size: contain;
   background-repeat: no-repeat;
   top: -20px;
   left: -20px;
 }

 .p-outline .oval-link {
   margin-top: 20px !important;
 }

 .p-outline__box .p-outline__item:last-of-type:before {
   content: "";
   display: inline-block;
   width: 79px;
   height: 80px;
   background-image: url('/sites/default/files/media/campaign/register202606/image/lp_register202606_circle2_border.webp');
   position: absolute;
   background-size: contain;
   background-repeat: no-repeat;
   top: -20px;
   left: -20px;
 }

 .p-outline__item img {
   margin-top: 10px;
   max-width: 300px;
 }

 .p-outline__item__txt {
   font-size: 16px !important;
   font-weight: bold;
   line-height: 1.6 !important;
 }

 .p-outline__box .oval-link {
   margin-top: 20px;
 }

 .p-outline__item__icon img {
   max-width: 60px;
 }

 .p-outline__img {
   max-width: 700px;
   margin: 0 auto;
   margin-top: 40px;
 }

 .p-outline__txt {
   margin-top: 22px !important;
   text-align: center;
 }

 .p-outline__btn {
   margin-top: -5px;
   text-align: center;
 }

 @media (max-width: 768px) {
   .p-outline__box {
     flex-direction: column;
     width: 95%;
     gap: 15px;
   }


   .p-outline__item__icon img {
     max-width: 40px;
   }

   .p-outline__item::before {
     width: 60px;
     height: 60px;
   }

   .p-outline__box .p-outline__item:last-of-type:before {
     width: 60px;
     height: 60px;
   }

   .p-outline__item__txt {
     font-size: 14px !important;

   }
 }


 /**********************************
date
**********************************/
 .p-date {
   padding: 80px 0 50px;
 }

 .p-date__img {
   max-width: 1000px;
   margin: 0 auto;
   margin-top: 50px;
 }

 @media (max-width: 768px) {
   .p-date {
     padding: 60px 0;
   }

   .p-date__img {
     margin-top: 30px;
     width: 800px;
     padding-bottom: 20px;
   }

   .p-date__block {
     overflow-x: auto;
   }
 }

 @media (max-width: 480px) {
   .p-date__img {
     width: 600px;
   }
 }

 /**********************************
aboutus
**********************************/
 .p-aboutus {
   padding: 60px 0;
 }

 .p-aboutus__item {
   text-align: center;
 }

 .p-aboutus__item .yg_marker {
   background: linear-gradient(transparent 70%, #fee590 30%);
 }

 .p-aboutus__item span {
   font-weight: bold;
 }

 .p-aboutus__box img {
   display: block;
   max-width: 90px;
 }

 .p-aboutus__item img {
   max-width: 600px;
   margin: 0 auto;
   margin-bottom: 30px;
 }

 .p-aboutus__box {
   display: flex;
   gap: 30px;
   justify-content: center;
   align-items: center;
 }

 @media (max-width: 768px) {
   .p-aboutus--people {
     display: none !important;
   }

   .p-aboutus {
     padding: 40px 0;
   }
 }


 /**********************************
identity_verification
**********************************/
 .p-identity_verification {
   padding: 60px 0px;
   background-color: #edf9ff;
 }

 .p-identity_verification__box {
   display: flex;
   gap: 50px;
   align-items: center;
   justify-content: center;
 }

 .p-identity_verification__item {
   border: 2px solid #0467aa;
   background-color: #ffffff;
   border-radius: 10px;
 }

 .p-identity_verification__item__title {
   font-size: 20px !important;
   background-color: #0467aa !important;
   color: #ffffff !important;
   font-weight: bold !important;
   text-align: center;
   border-radius: 8px 8px 0px 0px;
   padding: 10px !important;
 }

 .p-identity_verification__item__detail {
   padding: 25px;
   text-align: center;
 }

 .p-identity_verification__item img {
   max-width: 360px;
 }

 .p-identity_verification__point img {
   max-width: 510px;
   margin-bottom: 20px;
 }

 .p-identity_verification__point {
   text-align: center;
 }

 .p-identity_verification__card {
   background-color: #ffffff;
   border-radius: 10px;
   display: flex;
   gap: 30px;
   box-shadow: 2px 4px 10px rgb(19 102 145 / 10%);
   margin: 0 auto;
   max-width: 1075px;
   margin-top: 50px;
   padding: 30px;
   align-items: center;
 }

 .p-identity_verification__card img {
   max-width: 460px;
 }

 .p-identity_verification__card__detail p {
   font-size: 22px !important;
   font-weight: bold !important;
   text-align: center;
   margin-bottom: 10px !important;
 }

 @media (max-width: 768px) {
   .p-identity_verification__card__detail p {
     font-size: 18px !important;
   }

   .p-identity_verification__box {
     flex-direction: column;
     gap: 30px;
   }

   .p-identity_verification__card {
     flex-direction: column;
   }

   .p-identity_verification__point p {
     font-size: 18px !important;
   }

   .p-identity_verification__item {
     width: 100%;
   }

   .p-identity_verification__item__title {
     font-size: 18px !important;
   }

   .p-identity_verification__point span {
     font-size: 18px !important;
   }

   .p-identity_verification__card {
     padding: 20px;
   }
 }


 /**********************************
 app
**********************************/
 #main .p-app {
   padding: 80px 0;
 }

 #main .p-app__txt {
   margin-top: 24px;
   text-align: center !important;
 }

 #main .p-app__img {
   margin-top: 30px;
 }

 .p-app__img .u-pcOnly {
   max-width: 800px;
   margin: 0 auto;
 }

 .p-app__item p {
   text-align: center !important;
 }

 .p-app__box {
   display: flex;
   gap: 40px;
   margin-top: 50px;
   align-items: center;
   justify-content: center;
 }

 .p-app__box .oval-link {
   width: 400px !important;
 }

 .p-app__box img {
   max-width: 200px;
 }


 #main .p-app__qr {
   display: grid;
   grid-template-columns: 1fr 1fr;
   max-width: 400px;
   gap: 64px;
   margin: 24px auto 0;
 }

 #main .p-app__qr p {
   text-align: center;
   margin-bottom: 8px;
 }

 #main .p-app__login__wrapper {
   margin-top: 24px;
 }

 .p-app__box .oval-link::after {
   width: 9px;
   height: 9px;
 }

 @media (max-width: 768px) {
   .p-app__box {
     flex-direction: column;
   }

   .p-app__img .u-spOnly {
     max-width: 500px;
     margin: 0 auto;
   }
 }

 @media (max-width: 480px) {
   .p-app__img .u-spOnly {
     max-width: 90%;
   }
 }


 /**********************************
 flow
**********************************/
 #main .p-flow {
   padding: 80px 0;
   background-color: #fffeeb;
 }

 .p-flow__box::before {
   content: "";
   display: inline-block;
   width: 110px;
   height: 110px;
   background-image: url('/sites/default/files/media/campaign/register202606/image/lp_register202606_circle1_border.webp');
   position: absolute;
   background-size: contain;
   background-repeat: no-repeat;
   top: -20px;
   left: -20px;
   z-index: 1;
 }

 .p-flow .p-flow__box:nth-of-type(2):before {
   content: "";
   display: inline-block;
   width: 110px;
   height: 110px;
   background-image: url('/sites/default/files/media/campaign/register202606/image/lp_register202606_circle2_border.webp');
   position: absolute;
   background-size: contain;
   background-repeat: no-repeat;
   top: -20px;
   left: -20px;
   z-index: 1;
 }


 #main .p-flow__box {
   background: #fff;
   border-radius: 15px;
   margin-top: 48px;
   box-shadow: 2px 2px 12px rgb(147 131 37 / 20%);
   position: relative;
 }

 .p-flow__box__title {
   font-size: 22px !important;
   font-weight: bold !important;
   color: #ffffff !important;
   padding: 15px !important;
   background-color: #0467aa !important;
   text-align: center;
   position: relative;
   border-radius: 15px 15px 0px 0px;
 }

 .p-flow__box__wrapper {
   padding: 50px 90px;
 }

 .p-flow__box__step span {
   display: block;
   border: 2px solid #cc0033;
   padding: 2px 15px;
   border-radius: 50px;
   font-size: 18px;
   color: #cc0033;
   font-weight: bold;
 }

 .p-flow__box__step {
   display: flex;
   gap: 10px;
   align-items: center;
   justify-content: center;
 }

 .p-flow__box__txt {
   font-size: 18px;
 }

 .p-flow__img {
   border: 1px solid #b9b9b9;
   margin: 0 auto;
   margin-top: 20px;
 }

 .flow--border {
   padding-bottom: 50px;
   background-image: repeating-linear-gradient(90deg, #b7cddc, #b7cddc 10px, transparent 10px, transparent 16px);
   background-position: left bottom;
   background-repeat: repeat-x;
   background-size: 100% 2px;
 }

 .p-flow__point__img {
   max-width: 580px;
   margin: 0 auto;
   margin-top: 50px;
 }

 .p-flow__box__wrapper .p-flow__box__item:nth-child(n+2) {
   margin-top: 50px;
 }

 .p-flow__btn {
   margin-top: 30px;
   text-align: center;
 }

 .p-flow .p-flow__box:nth-of-type(2) {
   margin-top: 50px;
 }

 .p-flow__box__app__box {
   margin-top: 30px;
   display: flex;
   gap: 40px;
   justify-content: space-between;
 }

 .p-flow__box__app__set__item {
   border: 2px solid #737373;
 }

 .p-flow__box__app__set__item p {
   font-weight: bold;
   color: #ffffff !important;
   font-size: 18px !important;
   text-align: center;
   background-color: #737373 !important;
   padding: 8px !important;
 }

 .p-flow__box__app__set__txt {
   padding: 20px;
 }

 .p-flow__box__app__img img {
   display: block;
   max-width: 470px;
   min-width: 0;
   border: 1px solid #b9b9b9;
 }

 .p-flow__box__app__img {
   display: flex;
   gap: 10px;
 }



 .p-flow .p-flow__box:last-of-type:before {
   content: "";
   display: inline-block;
   width: 36px;
   height: 36px;
   background-image: url(/sites/default/files/media/campaign/register202606/image/lp_register202606_point_icon.webp?v=1);
   position: absolute;
   background-size: contain;
   background-repeat: no-repeat;
   top: 16px;
   left: 278px;
   z-index: 1;
 }



 .p-flow__entry__img {
   max-width: 500px;
   margin: 0 auto;
   border: 1px solid #b9b9b9;
   margin-top: 10px;
   margin-bottom: 40px;
 }


 .p-flow .p-flow__box:last-of-type .p-flow__box__txt {
   text-align: center;
   font-weight: bold;
   font-size: 20px !important;
 }


 @media (max-width: 768px) {
   #main .p-flow {
     padding: 60px 0;
   }



   .p-flow__box__txt {
     font-size: 16px !important;
   }


   .p-flow__box__wrapper {
     padding: 30px 30px;
   }

   .p-flow__box__title {
     font-size: 16px !important;
     padding: 15px 20px 15px 44px !important;
   }

   .p-flow__box::before,
   .p-flow .p-flow__box:nth-of-type(2)::before {
     width: 60px;
     height: 60px;
     top: -15px;
     left: -15px;
   }

   .p-flow__box__step {
     flex-direction: column;
   }

   .p-flow__box__wrapper .p-flow__box__item:nth-child(n+2) {
     margin-top: 30px;
   }

   .flow--border {
     padding-bottom: 40px;
   }

   .p-flow__box__app__box {
     flex-direction: column;
     gap: 30px;
     margin-top: 10px;
   }

   .p-flow .p-flow__box:last-of-type:before {
     display: none;
   }

   .p-flow__box__app__set__item p {
     font-size: 16px !important;
   }

   .p-flow .p-flow__box:last-of-type .p-flow__box__txt {
     font-size: 18px !important;
   }

 }

 /**********************************
 reason
**********************************/
 .p-reason {
   padding-bottom: 80px;
 }

 .p-reason__box {
   padding: 40px 50px;
   border-radius: 10px;
   background-image: repeating-linear-gradient(110deg, #f3f3f3, #f3f3f3 2px, #e4e4e4 2px, #e4e4e4 12px);
 }

 .p-reason__box h3 {
   position: relative;
   font-size: 36px !important;
   font-weight: bold;
   color: #cc0033 !important;
   text-align: center;
   margin-bottom: 15px !important;
 }

 .p-reason__box h3:before {
   content: "";
   display: inline-block;
   width: 518px;
   background-image: url(/sites/default/files/media/campaign/register202606/image/lp_register202606_name.webp);
   position: absolute;
   background-size: contain;
   background-repeat: no-repeat;
   top: -73px;
   left: 306px;
   z-index: 1;
   aspect-ratio: 800 / 107;
 }


 .p-reason__box__item {
   background-color: #ffffff;
   display: flex;
   gap: 15px;
   padding: 30px;
   align-items: center;
   border-radius: 10px;
 }

 .p-reason .yg_marker {
   background: linear-gradient(transparent 70%, #fee590 30%);
 }

 .p-reason__box__title {
   font-size: 28px !important;
   font-weight: bold !important;

 }

 .txt_notice {
   text-indent: -20px;
   margin-left: 20px;
   font-size: 14px;
 }

 .p-reason__img1 {
   max-width: 80px;
 }

 .p-reason__img2 {
   max-width: 300px;
 }

 .p-reason__box__small {
   display: flex;
   justify-content: space-between;
   gap: 30px;
   margin-top: 25px;
 }

 .p-reason__box__small .p-reason__box__item {
   flex: 1;
 }

 .p-reason__box__txt {
   font-size: 20px !important;
   font-weight: bold;
 }



 @media (max-width: 768px) {
   .p-reason {
     padding-bottom: 50px;
   }

   .p-reason__box__item {
     flex-direction: column;
     gap: 20px;
     padding: 20px;
   }

   .p-reason__img1 {
     max-width: 60px;
   }

   .p-reason__box {
     padding: 20px;
   }

   .p-reason__box h3 {
     font-size: 24px !important;
     margin-bottom: 10px !important;
   }

   .p-reason__box__title {
     text-align: center;
     font-size: 20px !important;
   }

   .p-reason__box__title span {
     font-size: 20px !important;
   }

   .p-reason__box h3:before {
     display: none;
   }

   .p-reason h3 span {
     font-size: 20px !important;
   }

   .p-reason__box__small {
     flex-direction: column;
     gap: 20px;
     margin-top: 20px;
   }

   .p-reason__box__small .p-reason__box__item {
     gap: 10px;
   }

   .p-reason__box__txt {
     text-align: center;
     font-size: 18px !important;
   }
 }



 /**********************************
 point
**********************************/
 #main .point {
   padding: 80px 0;
 }

 .p-point__point {
   background: #fff;
   padding: 40px;
   border-radius: 8px;
   box-shadow: 2px 2px 10px rgba(0, 0, 0, .1);
   max-width: 1024px;
   margin: 0 auto;
 }

 #main .p-point__point__img {
   max-width: 400px;
   margin: auto;
 }

 #main .p-point__point__txt {
   margin-top: 16px;
 }

 @media (max-width: 768px) {
   #main .p-point__point {
     padding: 32px;
   }
 }


 /**********************************
 video
**********************************/
 #main .p-video {
   padding: 50px 0;
   margin: 0 auto;
   margin-top: 40px;
   position: relative;
   background-color: #f1f1f1;
   border-radius: 10px;
 }

 #main .p-video__inner {
   display: flex;
   justify-content: center;
   align-items: center;
   gap: 40px;
 }

 #main .p-video__title {
   display: flex;
   align-items: center;
   flex-direction: column;
   text-align: center;
   gap: 8px;
 }

 #main .p-video__ic {
   max-width: 60px;
 }

 #main .p-video__iframe {
   width: 50%;
   height: auto;
   aspect-ratio: 16 / 9;
 }

 @media (max-width: 768px) {
   #main .p-video {
     padding: 25px 0;
     margin-top: 20px;
   }

   #main .p-video::before,
   #main .p-video::after {
     min-height: 24px;
   }

   #main .p-video__inner {
     gap: 24px;
     flex-direction: column;
   }

   #main .p-video__iframe {
     width: 100%;
   }
 }

 /**********************************
 service
**********************************/
 #main .p-service {
   padding-top: 80px;
 }

 #main .p-service__txt {
   margin-top: 48px;
 }

 #main .p-service__table {
   margin-top: 32px;
 }

 #main .p-service__table .c-table th {
   background: var(--c-register--darkyellow);
   color: #fff;
   border: 1px solid #e5e5e5;
   text-align: center;
   font-size: 16px;
   padding: 12px 16px;
 }

 #main .p-service__table .c-table td {
   background: #fff;
   border: 1px solid #e5e5e5;
   text-align: center;
   font-size: 16px;
   padding: 12px 16px;
 }

 @media (max-width: 768px) {
   #main .p-service__table {
     overflow: auto;
   }
 }

 /**********************************
 cta
**********************************/
 #main .p-cta {
   padding-top: 80px;
 }

 #main .p-cta__box {
   background: url(/sites/default/files/media/campaign/register202501/image/lp_register_cta_bg.webp);
   background-repeat: no-repeat;
   background-size: cover;
   background-position: center;
   display: flex;
   justify-content: center;
   align-items: center;
   gap: 40px;
   min-height: 266px;
 }

 #main .p-cta__left {
   display: flex;
   align-items: center;
   flex-direction: column;
   gap: 8px;
   margin-top: -8px;
 }

 #main .p-cta__left__txt {
   text-align: center;
 }

 #main .p-cta__left__img {
   max-width: 410px;
 }

 #main .p-cta__right {
   display: flex;
   align-items: center;
   flex-direction: column;
 }

 @media (max-width: 768px) {
   #main .p-cta__box {
     background: none;
     padding: 64px 24px;
     background: var(--c-register--lightyellow);
     flex-direction: column;
     gap: 24px;
     position: relative;
   }

   #main .p-cta__box::before {
     content: "";
     background: url(/sites/default/files/media/campaign/register202501/image/lp_register_cta_bg_sp.webp);
     background-repeat: repeat-x;
     background-size: contain;
     width: 100%;
     min-height: 16px;
     display: block;
     position: absolute;
     top: 0;
   }

   #main .p-cta__box::after {
     content: "";
     background: url(/sites/default/files/media/campaign/register202501/image/lp_register_cta_bg_sp.webp);
     background-repeat: repeat-x;
     background-size: contain;
     width: 100%;
     min-height: 16px;
     display: block;
     position: absolute;
     bottom: 0;
   }

 }

 /**********************************
 use
**********************************/
 #main .p-use {
   padding-top: 80px;
 }

 #main .p-use__txt {
   margin-top: 40px;
   text-align: center;
 }

 #main .p-use__box {
   display: flex;
   justify-content: center;
   align-items: center;
   gap: 40px;
   margin-top: 32px;
 }

 #main .p-use__img {
   max-width: 400px;
 }

 #main .p-use__btn {
   margin-top: 32px;
   text-align: center;
 }

 @media (max-width: 768px) {
   #main .p-use__box {
     flex-direction: column;
     gap: 24px;
   }

   #main .p-use__img {
     max-width: 100%;
   }
 }

 /**********************************
 info
**********************************/
 #main .p-info {
   padding: 80px 0px;
 }

 #main .p-info__table {
   margin-top: 48px;
 }

 #main .p-info__table .c-table th {
   background-color: #0467aa;
   color: #fff;
   border: 1px solid #e5e5e5;
   text-align: center;
   font-size: 16px;
 }

 #main .p-info__table .c-table td {
   background: #fff;
   border: 1px solid #e5e5e5;
   font-size: 16px;
 }

 .c-indent {
   text-indent: -16px;
   margin-left: 16px;
 }

 @media (max-width: 768px) {
   #main .p-info__table {
     margin-top: 32px;
   }

   #main .p-info__table .c-table th {
     font-size: 14px;
   }

   #main .p-info__table .c-table td {
     font-size: 14px;
   }

   .c-indent {
     text-indent: -13px;
     margin-left: 13px;
   }

   .c-txt{
    font-size: 12px !important;
   }
 }

 /**********************************
 faq
**********************************/
 #main .p-faq {
   padding: 80px 0;
 }

 #main .p-faq__table {
   margin-top: 48px;
 }

 @media (max-width: 768px) {
   #main .p-faq__table {
     margin-top: 32px;
   }
 }

 /**********************************
 campaign
**********************************/

 .p-campaign {
   padding: 40px 0px 80px;
 }

 .other-campaign__title {
   text-align: center;
   font-size: 28px !important;
   font-weight: bold;
   position: relative;
   padding-bottom: 57px !important;
 }

 .title-border::after {
   content: "";
   position: absolute;
   bottom: 0;
   left: 50%;
   display: inline-block;
   width: 1px;
   height: 40px;
   background: #bc2739;
 }

 .other-campaign__contents {
   display: flex;
   justify-content: center;
   flex-wrap: nowrap;
   gap: 24px;
   margin: 0 auto;
   max-width: 1000px;
   margin-top: 20px !important;
 }

 .other-campaign__item {
   width: 32%;
 }

 @media (max-width: 768px) {
   .p-campaign {
     padding: 0px 0px 80px;
   }

   .other-campaign__contents {
     justify-content: flex-start;
     flex-wrap: wrap;
   }

   .other-campaign__title {
     font-size: 20px !important;
     padding-bottom: 48px !important;
   }

   .title-border::after {
     height: 32px;
   }

   .other-campaign__item {
     width: calc(50% - 12px);
   }
 }

 @media (max-width: 400px) {
   .other-campaign__item {
     width: 100%;
   }

   .other-campaign__contents {
     flex-direction: column;
   }
 }