@charset "utf-8";
html{scroll-behavior: smooth;}

*{    box-sizing: border-box;}
.sans {font-family: "Hiragino Sans","ヒラギノ角ゴシック";}

.area_obi {display: flex;background: #000062;align-items: center;    z-index: 20;
    position: relative;}
.area_obi .logo img {width: 100%;max-width: 312px;}
.area_obi span {width: 15%;display: flex;}
.area_obi p {text-align: center;width: 70%;color:#ffec00;font-feature-settings: "palt";font-size: min(calc(13px + 28 * (100vw - 320px)/1080), 60px);font-family: "Hiragino Sans","ヒラギノ角ゴシック";font-weight: bold;}
header h1 img {max-width: 1600px;margin: 0 auto;margin-top: -1%;    z-index: 10;
    position: relative;}
table.charges {border-collapse: collapse;border:3px solid;font-size: 17px;color: #000002;width: 900px;font-weight: bold;    font-family: "Hiragino Sans","ヒラギノ角ゴシック";background: #fff;}
table.charges td,table.charges th {border-left:1px solid;}
table.charges td,table.charges th {padding: 9px;min-width: 50px;min-height: 25px;line-height: 1.5;}
table.charges td,table.charges th {border-bottom: 1px solid;}
table.charges .vertical span {-webkit-writing-mode: vertical-lr;-ms-writing-mode: tb-lr;writing-mode: vertical-lr;vertical-align: middle;white-space: nowrap;text-orientation: upright;font-weight: bold;}
table.charges.course td.topless,table.charges td.bottomless {position: relative;}
table.charges.course td.topless span {position: absolute;display: block;width: 100%;height: 3px;left: 0;top: -1px;background:#fff;}
table.charges.course td.bottomless span  {position: absolute;display: block;width: 100%;height: 3px;left: 0;bottom: -1px;background:#fff;}
table.charges.course td.color4.topless span,table.charges.course td.color4 {background: rgba(255, 252, 159, 1);;}
table.charges.course td.color6.topless span,table.charges.course td.color6 {background:rgb(255, 224, 236)}
table.charges.course td.color8 {background:rgb(204, 254, 255);}
table.charges,table.charges td,table.charges th {border-color:#000002 !important;margin: 0 auto;}
table.charges .red {color:#e32a00;}
table.charges .blue {color:rgb(38, 28, 171);}
table.charges td small {font-size: 12px;display: block;}
table.charges .color1 {background:#fad6ae;}
table.charges .color2 {background:#b4f1af;}
table.charges .color3 {background:#beddfa;}
table.charges th.head{background: #000062;}
sup {font-size: .85em}
sup,sup a,.red {color:#e32a00}
.sup_txt {text-align: left;
    font-size: 14px;
    padding-top: 32px;

    margin-top: 94px;

margin: 0 auto;max-width: 900px;    width: 90%;}

.sup_txt .wrap {    padding: 32px;
    background: #beddfa;}
.table-wrap {width: 90%;margin: 0 auto 30px;padding-bottom: 16px;overflow-x: scroll;}

table.charges.course td.column-3 {font-size: 16px;}
table.charges.course td.column-2 {padding: 9px 3px;min-width: auto;font-family: "Outfit", sans-serif;font-weight: bold;}
table.charges.course td big {font-weight: bold;font-size: 1.5em;}
table.charges.course tr.row-1 ,table.charges tr.row-2,table.charges tr.row-3 {font-weight: bold;font-size: 19px;}
table.charges.course tr.row-3 {background:#f5f5f5;font-size: 13px;}

table.charges.price tr.row-1 td {background:#dddddd;font-weight: bold;font-size: 15px;}
table.charges.price .price-row-2 td {font-size: 11px;vertical-align: text-top;}
table.charges.price .price-row-2 td span {display: block;margin-top: 3px;}
table.charges.price {table-layout:fixed;}
table.charges.price img {width: 100%;margin-bottom: 5px;}
table.charges.price tr.price th {font-weight: bold;font-size: 20px;}
table.charges.price tr.price td {font-size: 28px;font-weight: bold;color: #e03800;font-family: "Outfit", sans-serif;letter-spacing: .05em;padding-left: 18px;}
table.charges.price tr.price td small {display: inline;padding-left: 3px;}
table.charges .head  h3 {color: #fff;font-size: 18px;font-weight: bold;}
table.charges.price tr.price-c {background: #fff4e8;}
table.charges.price tr.price-d {background: #daf0d8;}
table.charges.price tr.price-f {background: #e5f3ff;}

table.charges h3.arrow:after {content: "";display: inline-block;width: 0;height: 0;border-style: solid;border-top: 6px solid transparent;border-bottom: 6px solid transparent;border-left: 9px solid #ffffff;border-right: 0;margin-left: 6px;}
table.charges h3.arrow.dawn:after {display: block;border-right: 6px solid transparent;border-left: 6px solid transparent;border-top: 9px solid #ffffff;border-bottom: 0;margin: 3px auto;}

.add h3 {color: #000062;font-weight: bold;;}
.add h2 {color: #000062;font-weight: bold;font-size: 50px;margin-bottom: 12px;}

.add .table-wrap+h2 {margin-top:calc(20px + 4vw);}
.area07.add {padding-top:calc(10px + 3vw); }

@media screen and (max-width: 1080px) { 
.add h2 {font-size: 32px;}
}

.feature {background: white;}
.area04 {background: #f7f7f7;}


/* 2025リニューアル */
header.header  {position: relative;}
header.header .bg:after {display: block;content: "";opacity:1;width: 100%;height: 100%;position: absolute;top: 0;left: 0;background:url(../images/add2025/header-bg.jpg);background-size: cover; z-index: 10;background-position: center;}
header.header h1 {position: relative;z-index: 30;}
header.header .obi {line-height: 1.6;padding: 12px 24px;color: #FFF;background-color: #e32a00;    font-weight: bold;position: relative;z-index: 10}
header.header .obi:after {content: '';position: absolute;bottom: 0;width: 0;height: 0;border-style: solid;border-width: 20px 20px 0 20px;border-color: #e32a00 transparent transparent transparent;left: 50%;transform: translateX(-50%) translateY(90%);}
header.header .bg:before {background:rgb(255 253 145 / 90%);display: block;content: "";position: relative;width: 100%;height: 100%;backdrop-filter: grayscale(1);    position: absolute;z-index: 15;}
header.header h1:after {} 
header.header .main_visual {margin-top: -20px;position: relative;z-index: 20;}
article.block {padding-top: 5%;padding-bottom: 5%;}
article.block+article.block {}
article.block section {width: 88%;max-width: 900px;background-color:;margin: 0 auto}	
article.block h2 {font-weight: bold;
    font-size: min(calc(18px + 20 * (100vw - 320px)/1080), 36px);
    font-feature-settings: "palt";
    margin-bottom: 2%;text-align: center;    background:#c3e2ddc2;padding: 3px 12px;
    line-height: 1.5;    font-family: "Hiragino Sans","ヒラギノ角ゴシック";
}
article.block.merit h2 {background:linear-gradient(180deg, #63d02899, #ffffff00);}
article.block h2 big {    font-size: min(calc(22px + 25 * (100vw - 320px)/1080), 44px);    font-weight: bold;color: #ca3225;    padding: 0 3px;}
article.block .container {}
article.block .flexbox {display: flex;justify-content: space-between; 
    align-items: center;
    }
article.block .flexbox .order2 {order:2}
article.block .flexbox>figure {width: 40%;}
article.block .flexbox>*.txt {width: 54%;}
article.block .flexbox p+p {margin-top: .5em;}
article.block.merit .flexbox>figure {width: 46%;}
article.block.merit .flexbox>*.txt {width: 50%;}
article.block.merit .flexbox>*.txt .wrap {padding: 2%;}
article.block.merit .flexbox {align-items:flex-start;}
article.block.merit h2 {margin-bottom: 4%;}
.txt {text-align: justify;
    font-feature-settings: "palt";
    font-size: calc(14px + 4 * (100vw - 320px)/1080);}
.txt .txt_mega {font-size: 1.7em;display: flex;align-items: center;font-family: "Hiragino Sans","ヒラギノ角ゴシック";}
.txt .small {font-size: .92em;}

article.block img {max-width: 100%;}
article.block.call .txt {font-weight: bold;text-align: center;}
article.block.call .txt.gentei {margin-top: 2%;}
article.block.call .container {}
article.block.call figure.button a {max-width: 430px;display: block;margin: 0 auto;}


article.block.call figcaption {font-size: calc(12px + 4 * (100vw - 320px)/1080);text-align: center;font-weight: bold;margin-top: 3px;}
article.block.call figure.button {margin-top: 3%;}

article.block section+section {margin-top: 5%;}
.toiawase h2 {margin-top: 0;}

.area01 {margin-top: 0;}

#area-add1 {background-color: #eff6fe;    padding-top: 2%;}
#area-add1 .container {background-color: #fff;}
.youtube {background-color: #ccc;}
.midashi {    text-align: center;
    padding: 20px;
    font-weight: bold;
    font-size: min(calc(20px + 20 * (100vw - 320px)/1080), 40px);
    font-feature-settings: "palt";    font-family: "Hiragino Sans","ヒラギノ角ゴシック";}

.midashi .mega {font-size:1.3em;}
.midashi .small {font-size: .75em;}
.red {color: #ca3225;}
.midashi h4 {     font-size: calc(14px + 4 * (100vw - 320px)/1080);;}
.midashi h4.red {color: #ca3225}
.reverse {transform: scale(-1, 1);display: inline-block;}

.reason_title .sercle {display: flex;
    flex-flow: column;
    color: #fff;

    margin-right: 12px;

	background: #000062;padding:12px 22px;font-size: calc(14px + 4 * (100vw - 320px)/1080);    line-height: 1.4;}
.reason_title .sercle div {

    display: flex;
    justify-content: center;
    flex-flow: column;}
.reason_title .sercle span {font-size: .85em;white-space: nowrap;font-weight: bold;}
.reason_title .sercle p {font-size: 1.2em;font-weight: bold;}
.reason_title h3 { font-size: min(calc(22px + 24 * (100vw - 320px)/1080), 36px);font-weight: bold;line-height: 1.3}
.reason_title { display: flex;align-items: center;justify-content: center;     margin-top: 2%;    font-family: "Hiragino Sans","ヒラギノ角ゴシック";}

.suport10.pc-reason img {width: 100%;margin: 5% 0;}
.pc-reason {justify-content: space-between}
.pc-reason>div {width: 48%;padding: 1em 0;}
.pc-reason p+p {padding-top: .5em;}
.pickup {line-height: 1.4;
    padding-bottom: 1%;}

element.style {
}
.pc-reason p+p {
    padding-top: 0.5em;
}
.buttons figure {margin-top: 3%;}
.buttons a {display: flex;justify-content: space-between;max-width: 540px;
    text-align: center;
   align-items: center;text-decoration: none;margin: 0 auto;    height: 100px;
}
.buttons a.siryou {display: flex;
    justify-content: space-between;
    max-width: 640px;
    text-align: center;
    align-items: center;
    text-decoration: none;
    margin: 0 auto;
    background-image: linear-gradient(0deg, #1b7e40, #20b958);
    color: #fff;
}

a.button.tel div.main {flex-flow: column;}
a.button.tel { background-image: linear-gradient(0deg, #b2502c, #cd845d);}

.buttons a>span.left {display: block;height: 100%;    background: #fcee02;
    height: 100%;
    color: #ca3225;    display: flex;
    align-items: center;
}
.buttons a>span.left p {padding: 12px;font-family: "Hiragino Sans","ヒラギノ角ゴシック";}
.buttons a>div.main {flex: 1;    display: flex;
    align-items: center;
    justify-content: center;}

.dli-mail {
  display: inline-block;
  vertical-align: middle;
  color: #fff;
  line-height: 1;
  position: relative;
  width: 1.06667em;
  height: 0.8em;
  border: 0.1em solid currentColor;
  border-radius: 0.1em;
  box-sizing: content-box;
  overflow: hidden;    margin-right: 0.3em;

}

.dli-mail::before {
  content: '';
  position: absolute;
  left: 50%;
  top: 0;
  width: 0.75425em;
  height: 0.75425em;
  border: 0.1em solid currentColor;
  border-top-color: transparent;
  border-right-color: transparent;
  border-radius: 0 0 0 0.1em;
  box-sizing: content-box;
  transform: translate(-50%, -50%) rotate(-45deg) skew(10deg, 10deg);
}

a .arrow {
      background: rebeccapurple;position: relative;margin-right: 12px;
}

a .arrow::before,
a .arrow::after {
  content: "";
  position: absolute;
  top: calc(50% - 2px);
  right: 0;
  width: 12px;
  height: 4px;
  border-radius: 9999px;
  background-color: #fff;
  transform-origin: calc(100% - 2px) 50%;
}

a .arrow::before {
  transform: rotate(45deg);
}

a .arrow::after {
  transform: rotate(-45deg);
}

.material-icons-sharp {font-size: 1em;line-height: normal;}
span.shikashi {color: #ca3225;display: block;}


article.block.call {background-color:#fffc9f;background-position: center;}

article.block.call h4 {    font-family: "Hiragino Sans","ヒラギノ角ゴシック";}

article.block.call figure img {    padding: 12px;
    background:#ca3225;}
.reason {border: 3px solid #000000;}

#tsuika .midashi {padding-top: 0;}
#tsuika {background-color:#e6efff;}
#tsuika h2 {}

.custom-shape-delta .shape-fill {fill: #fdf4d7;}
.custom-shape-delta {background: #f0f0ff}
.area06 h2 {background-color: #000062;}
.area06 h2::before  {    border-color:  #000062 transparent transparent transparent;}
.area06 h2 {padding-top: 1%;}
.medal {
    background-color: #000062;
    padding: 2% 4% 1%;text-align: center;
}
.medal img {max-width: 540px;width: 100%;}

.medal01 {background:#f9f591;padding: 4% 4% 3%}
svg {vertical-align:bottom;}

.gentei_midashi {line-height: 1.3}
.midashi .or {display:block;font-size: .5em}

.merit1 {background-image: linear-gradient(0deg, #ffffff, #e6d99e);}
article.block.merit {padding-bottom: 7%;}

.merit h3 {font-weight: bold;margin-bottom: 4px;font-size: .92em;font-family: "Hiragino Sans","ヒラギノ角ゴシック";}
.omakase_title {background: #000062;}
.fff {color: #fff;}
.dawn_arrow {position: relative;}
.dawn_arrow:after {        content: '';    z-index: 40;
    position: absolute;
    bottom: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 20px 0 20px;
    border-color:  #000062 transparent transparent transparent;
    left: 50%;
    transform: translateX(-50%) translateY(90%);}
.dawn_arrow.dawn_arrow2:after {bottom: 18px;    border-width: 36px 100px 0 100px;
    border-color: #ca3225 transparent transparent transparent;}
.onayami {    background:#000062;color: #fff;}
.delta {background: #fffc9f;}
.onayami .span1 {background: linear-gradient(transparent 60%, #ca3225 60%);}
.onayami .span1.color{    background: linear-gradient(transparent 60%, #61514f 60%);}
article.block.merit {position: relative;}
article.block.merit .span1{    background:linear-gradient(transparent 60%, #ffd566 60%);}
article.block.merit::after,article.block.merit::before {content: "";height: 100%;width: 100%;position: absolute;top: 0;left:0;;}
article.block.merit::before {z-index: 20;backdrop-filter: grayscale(1);background-image: linear-gradient(#fdf4d7ed, #fdf4d7);background:#fffc9f}
article.block.merit.merit2::before {background:#fff68d;}
article.block.merit.merit1::after {background-image: url(../images/add2025/art-01.jpg);background-size: cover;background-position: center;}
article.block.merit.merit2::after {background-image: url(../images/add2025/art-02.jpg);background-size: cover;background-position: center;}
article.block.merit.merit3::after {background-image: url(../images/add2025/art-03.jpg);background-size: cover;background-position: center;}
article.block.merit::after {opacity: .5;}
article.block.merit section {position: relative;z-index: 30}
article.block.merit .span1 {}
article.block.merit h2 big {color:#d72113;padding: 0 .1em;}
.midashi.riyuu .mega .size0 {font-size: .92em}
.midashi.riyuu {line-height: 1.2;padding-bottom: 0;}
.midashi.riyuu .orange{color: #df873c}
.midashi.riyuu .size1 {font-size: 1.8em;}
.midashi.riyuu .size2 {font-size: 1.3em;}
#onayami.area {padding: calc(36px + 2%) 0}

.area01 {background-color:#fffc9f;}
.area07 {background:#eaf3fe;}
.area03 {background: #f3faff;}
.area06 {background-color: #eaf3fe;}
#onayami .contWrap img {width: 98%;}

.jisyasirabe {color: #fff;    background: #000062;padding:6px 2% 0;    font-size: calc(12px + 1.5 * (100vw - 320px)/1080);font-weight: bold;}
.jisyasirabe p {max-width: 1600px;text-align: right;margin: 0 auto;}

.obiiro { 
    background: #000062;
   
    position: absolute;
    bottom: -2px;
    width: 100%;
    max-height: 146px;
    height: 18%;}

::placeholder {color: #aaa}

@media screen and (max-width: 940px){
.area_obi span {width: 30%}
.area_obi span.dammy {display: none;}
}
@media screen and (max-width: 640px){
.area02-l {width: 60%;}
.area02-r {width: 40%;}
.pc-reason>div {width: 100%;}	
article.block .flexbox .order2 {order:1}
article.block .flexbox .order2+div {order:2}
article.block .flexbox  {flex-wrap:wrap;}
article.block .flexbox figure {width: 100% !important;}
article.block .flexbox .txt {width: 100% !important;padding-top: 2%}

header h1 img {margin-top:0%;}
}
/*  */
/*  */
/*  */
/*  */
/*  */