:root {
  --primary-dark-color: #0f2441;
  --bg-color-2:#d1ccbd;
}

@font-face {
  font-family: "Zen Old Mincho";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/zenoldmincho/v12/tss3ApVaYytLwxTqcxfMyBveyb5zrllfmcMiL3IOlHPEwSrMQ0FGjkfsuOCSDQ.2.woff2) format("woff2");
  unicode-range: U+ffd7, U+ffda-ffdc, U+ffe0-ffe2, U+ffe4, U+ffe6, U+ffe8-ffee, U+1f100-1f10c, U+1f110-1f16c, U+1f170-1f1ac, U+1f200-1f202, U+1f210-1f234;
}
/* ====================================
#ganv
===================================== */
#ganv {
  background-color: #000;
}
#ganv #ganvList li {
  border-color: var(--bg-color);
}
#ganv a {
  color: var(--bg-color);
}
#ganv a:after {
  background-color: var(--bg-color);
}

.btn-close {
  background-color: var(--bg-color);
  color: #000;
}
.btn-close::before {
  background-color: #000;
}

.btn-primary {
  background: #A5957D;
  background: linear-gradient(270deg, rgb(165, 149, 125) 8%, rgb(252, 248, 221) 62%, rgb(165, 149, 125) 100%);
}

#pageNav .title02 {
  font-family: "Zen Old Mincho", serif;
  font-weight: 900;
  font-style: normal;
}

@media print, screen and (min-width: 768px) {
  #pageNavList .title02 {
    font-family: "Zen Old Mincho", serif;
    font-weight: 900;
    font-style: normal;
  }
  #pageNavList li {
    background-image: url(../image/bg-btn-pc.svg);
  }
  #pageNavList li a:hover {
    color: var(--secondary-color);
  }
}
/* ====================================
kv
===================================== */
.kv-btnArea {
  background-color: #000;
}
.kv-btnArea .btn-lg::after {
  background-color: #000;
}

.btn-primary {
  color: #000;
}

/* ====================================
.section
===================================== */
.section:not(#bannerArea):not(.bg-color):not(#noticeArea) {
  background-color: #272727;
}

.section#bannerArea, .section#noticeArea {
  background-color: #fff;
}

.section.bg-color {
  background-color: var(--bg-color-2);
}

section:not(#pageNav) .title02, #pageNavList a {
  font-family: "Zen Old Mincho", serif;
  font-weight: 900;
  font-style: normal;
}

section:not(#pageNav):not(#bannerArea):not(.bg-color):not(#noticeArea), section:not(#pageNav):not(.bg-color) .title02 {
  color: #fff;
}

section:not(#pageNav):not(.bg-color) .box {
  color: var(--text-color);
}

.bg-color .title02 {
  color: #000;
}

@media print, screen and (min-width: 768px) {
  .section[id^=sec]::after {
    background-color: #e2dac0;
  }
  .section[id^=sec]::before {
    background-image: url(../image/bg-sec-pc.svg);
  }
}
@media only screen and (max-width: 767px) {
  .section[id^=sec]::before {
    background-image: url(../image/bg-sec-2.svg);
  }
  .section[id^=sec]::after {
    background-color: #b8aa8e;
  }
  .section[id^=sec].bg-color::before {
    background-image: url(../image/bg-sec.svg);
  }
  .section[id^=sec].bg-color::after {
    background-color: #c8bda4;
  }
  .section.sec_01::after {
    width: min(8.13vw, 52px);
    height: min(21.09vw, 135px);
    left: min(5vw, 32px);
  }
  .section.sec_02::after {
    width: min(12.81vw, 82px);
    height: min(21.09vw, 135px);
    left: min(4.38vw, 28px);
  }
  .section.sec_07::after {
    width: min(13.44vw, 86px);
    height: min(21.09vw, 135px);
    left: min(4.06vw, 26px);
  }
  .section .lead {
    margin-bottom: min(9.38vw, 60px);
  }
}
/* ====================================
#pageNav
===================================== */
#pageNav .title02 {
  color: var(--bg-color);
  font-feature-settings: "palt";
}

#pageNav li:after {
  background-color: var(--bg-color);
}

@media only screen and (max-width: 767px) {
  #pageNav .title02 {
    font-size: min(5vw, 32px);
    line-height: 1.44;
  }
  #pageNav li {
    background-image: url(../image/bg-btn-sp.svg);
  }
  #pageNav li a {
    font-size: min(4.22vw, 27px);
    padding-left: min(9.69vw, 62px);
  }
}
/* ====================================
secSupport
===================================== */
.box-in-box {
  background-color: #000;
  color: #fff;
  box-sizing: border-box;
}
.box-in-box .title04, .box-in-box dt {
  color: var(--bg-color);
}
.box-in-box .title04 {
  font-weight: 700;
}
.box-in-box dt {
  font-weight: 500;
}
.box-in-box ul {
  text-align: left;
}

#secSupport .box-in-box {
  text-align: center;
}

ul.list-dot {
  margin-left: 1em;
}

.list-dot li {
  list-style: disc;
  line-height: 1.4;
}

@media print, screen and (min-width: 768px) {
  #secSupport .title03 {
    text-align: left;
  }
  #secSupport .box, #secInsurance .box {
    padding: 1.875rem 2.125rem;
    align-items: center;
  }
  #secSupport .box > .content > p, #secInsurance .box > .content > p {
    margin-bottom: 1em;
  }
  #secSupport .title03, #secInsurance .title03 {
    line-height: 1.58;
  }
  #secSupport .content, #secInsurance .content {
    text-align: left;
  }
  #secSupport .box.ttl-primary:not(.column-lg) > .content, #secInsurance .box.ttl-primary:not(.column-lg) > .content {
    margin-left: 7rem;
  }
  #secSupport .box-in-box, #secInsurance .box-in-box {
    border-radius: 10px;
    padding: 1.25rem 1.5rem;
    align-items: center;
  }
  #secSupport .box-in-box + .box-in-box, #secInsurance .box-in-box + .box-in-box {
    margin-top: 10px;
  }
  #secSupport .box-in-box.row-lg .title04, #secInsurance .box-in-box.row-lg .title04 {
    width: 20%;
  }
  #secSupport .box-in-box dd, #secSupport .box-in-box .title04, #secInsurance .box-in-box dd, #secInsurance .box-in-box .title04 {
    text-align: left;
  }
  #secSupport .box-in-box .title04, #secInsurance .box-in-box .title04 {
    margin-bottom: 0.5em;
    font-size: 1.125rem;
    line-height: 1.44;
  }
  #secSupport .box-in-box dl.row-lg + .title04, #secInsurance .box-in-box dl.row-lg + .title04 {
    margin-top: 3.125rem;
  }
  #secSupport .box-in-box dl.row-lg, #secInsurance .box-in-box dl.row-lg {
    padding-block: 1em;
    align-items: center;
    border-bottom: 1px solid var(--bg-color);
  }
  #secSupport .box-in-box dl.row-lg dt, #secInsurance .box-in-box dl.row-lg dt {
    width: 30%;
    text-align: left;
    line-height: 1.38;
  }
  #secSupport .box-in-box dl.row-lg dd, #secInsurance .box-in-box dl.row-lg dd {
    margin-top: 0;
    flex: 1;
  }
  #secSupport .box-in-box dl.row-lg.last-child, #secInsurance .box-in-box dl.row-lg.last-child {
    border-bottom: none;
  }
}
@media only screen and (max-width: 767px) {
  .box-in-box {
    border-radius: min(3.13vw, 20px);
    margin-top: min(4.69vw, 30px);
    padding: min(5vw, 32px) min(4.69vw, 30px);
  }
  .box-in-box .title04, .box-in-box dt {
    font-size: min(4.06vw, 26px);
    line-height: 1.54;
  }
  .box-in-box .title04 {
    margin-bottom: 1em;
  }
  .box-in-box li {
    line-height: 1.38;
  }
  .box-in-box dl + .title04 {
    margin-top: min(8.44vw, 54px);
  }
  .box-in-box dt {
    margin: min(4.69vw, 30px) 0 min(2.5vw, 16px);
  }
  .box-in-box dd {
    padding-bottom: min(4.69vw, 30px);
    font-size: min(3.75vw, 24px);
    line-height: 1.58;
    border-bottom: 1px solid var(--bg-color);
  }
  .box-in-box dl:last-child > dd:last-child {
    border-bottom: none;
  }
  .box-in-box .notice {
    font-feature-settings: "palt";
  }
}
/* ====================================
#secFree
===================================== */
#secFree .title03 {
  font-size: min(4.69vw, 30px);
}

#secFree .notice {
  margin-block: min(3.75vw, 24px);
}

#secFree .box p {
  margin-bottom: min(1.56vw, 10px);
}

@media print, screen and (min-width: 768px) {
  .free-box2 {
    padding-left: 7.5%;
    padding-right: 2.5%;
  }
  .free-box2 .title03 {
    margin-bottom: 1.125rem;
  }
  .free-box2 .free-img-2 {
    width: 109px;
  }
  .free-box2 p {
    padding-left: 5.5%;
    flex: 1;
  }
}
@media only screen and (max-width: 767px) {
  .free-img-2 {
    width: min(30.47vw, 195px);
  }
}
/* ====================================
#secInsurance
===================================== */
.hasIcon {
  display: flex;
  width: 100%;
  background-color: transparent;
}
.hasIcon .txt {
  flex: 1;
}

.hasIcon .icn-mask {
  border-radius: 0;
}

.icn-cyber-1 {
  mask-image: url(../image/icn-cyber-1.svg);
}

.icn-cyber-2 {
  mask-image: url(../image/icn-cyber-2.svg);
}

.icn-cyber-3 {
  mask-image: url(../image/icn-cyber-3.svg);
}

#secInsurance .box-in-box dt {
  position: relative;
}
#secInsurance .price-list {
  display: flex;
  align-items: end;
}
#secInsurance .price-list dt {
  background-color: #e9e4d6;
  line-height: 1;
  font-weight: 500;
}
#secInsurance .price-list dd {
  margin-top: 0;
  padding: 0 0 0.3em;
  color: var(--primary-color);
  flex: 1;
  font-weight: 700;
  font-feature-settings: "palt";
  text-box: trim-both cap alphabetic;
}
#secInsurance .title04 {
  color: var(--primary-color);
  margin-top: 2em;
}

.t-r {
  text-align: right;
}

@media print, screen and (min-width: 768px) {
  .hasIcon {
    gap: 1rem;
  }
  #secInsurance .box {
    align-items: start;
  }
}
@media screen and (min-width: 768px) and (min-width: 768px) {
  #secInsurance .box {
    padding-inline: 5.625rem;
  }
}
@media print, screen and (min-width: 768px) {
  #secInsurance .box.box-cyber .title04 {
    text-align: center;
  }
}
@media screen and (min-width: 768px) and (min-width: 768px) {
  #secInsurance .box.box-shopping .notice {
    text-align: center;
  }
}
@media screen and (min-width: 768px) and (min-width: 768px) {
  #secInsurance .title03 {
    margin-bottom: 1.25rem;
    line-height: 1;
  }
}
@media print, screen and (min-width: 768px) {
  #secInsurance .box-thum {
    width: 80%;
    margin: 0 auto 1.25rem;
  }
  #secInsurance .title04 {
    font-size: 1.25rem;
    margin-bottom: 1em;
    text-align: left;
  }
  #secInsurance .hasIcon .txt {
    font-size: 1.125rem;
    line-height: 1.38;
  }
  #secInsurance .icn {
    width: 52px;
    height: 52px;
    position: absolute;
    top: 0;
    left: 0;
  }
  #secInsurance dd {
    padding-block: 0.5em 1em;
    line-height: 1.63;
  }
  #secInsurance dd:not(:last-child) {
    border-bottom: 1px solid var(--primary-color);
  }
  #secInsurance dd + dt {
    margin-top: 1em;
  }
  #secInsurance .box-in-box dl dt, #secInsurance .box-in-box dl dd {
    padding-left: 5rem;
  }
  #secInsurance p + .price-list {
    margin-top: 2.625rem;
  }
  #secInsurance .price-list {
    margin: 0 auto min(2.19vw, 14px);
    gap: min(3.75vw, 24px);
    max-width: 456px;
  }
  #secInsurance .price-list dt {
    border-radius: 1.375rem;
    padding: 1.4em 2em;
    border-radius: 16px;
  }
  #secInsurance .price-list dd {
    font-size: 2rem;
  }
  #secInsurance .price-list dd .txt-num {
    font-size: 4.125rem;
  }
  #secInsurance .has-side-img {
    margin-bottom: 1.25rem;
  }
  #secInsurance .has-side-img p {
    flex: 1;
  }
  #secInsurance .has-side-img .side-img {
    width: max(40%, 230px);
    margin: -1.875rem -2.125rem 0 1.875rem;
  }
}
@media only screen and (max-width: 767px) {
  .hasIcon {
    gap: min(4.38vw, 28px);
  }
  #secInsurance .title04 {
    font-size: min(4.38vw, 28px);
    text-align: center;
  }
  #secInsurance .icn {
    width: min(11.56vw, 74px);
    height: min(11.56vw, 74px);
  }
  #secInsurance .row-lg.row02 {
    margin-top: min(3.75vw, 24px);
  }
  .price-list {
    margin-block: min(7.34vw, 47px) min(2.19vw, 14px);
    gap: min(3.75vw, 24px);
    align-items: center;
  }
  .price-list + .price-list {
    margin-top: min(2.19vw, 14px);
  }
  .price-list dt {
    border-radius: min(3.13vw, 20px);
    padding: 0.6em 1em;
  }
  .price-list dd {
    font-size: min(7.19vw, 46px);
  }
  .price-list dd .txt-num {
    font-size: min(11.25vw, 72px);
  }
}
/* ====================================
secService
===================================== */
.service-list > li {
  color: var(--primary-color);
}
.service-list > li::after {
  background-color: var(--primary-color);
}
.service-list > li .notice {
  color: var(--text-color);
}

.free-etc-card {
  margin: min(6.88vw, 44px) auto;
}

#secService hr {
  border-color: #fff;
}

@media only screen and (max-width: 767px) {
  .free-etc-card {
    width: min(66.88vw, 428px);
    height: min(42.03vw, 269px);
  }
}
/* ====================================
.tab
===================================== */
.tabContent {
  color: var(--text-color);
}

.tabMenu, .tabMenu a, .tabContent {
  border: none;
}

.tabMenu li {
  margin-bottom: 0;
}

.tabMenu a {
  background-color: var(--primary-color);
  color: #fff;
}

.tabMenu a.active {
  color: var(--primary-color);
}

#secPoint #tab2 h3.title03 {
  color: #355075;
}

.point-ttl03-2 {
  color: var(--primary-color);
}

.tabContent hr {
  border-color: var(--primary-color);
}

@media print, screen and (min-width: 768px) {
  #secPoint h3, .point-img-1 {
    text-align: left !important;
  }
  #secPoint .row-lg > h3 {
    padding-left: 2.5rem;
  }
  .point-img-1 img {
    width: 76%;
  }
  .point-img-2 {
    margin-block: 1rem;
  }
  .point-img-2 img {
    width: 72.8%;
  }
  #secPoint .container > .notice {
    margin-top: 1.25rem;
  }
  .tabContent .row-lg.point-row-02 {
    align-items: start;
  }
  .point-ttl03-2 {
    margin-top: 2.5rem;
  }
}
@media only screen and (max-width: 767px) {
  #tab1.tabContent p {
    text-align: left;
  }
  .point-img-1 {
    width: min(52.5vw, 336px);
  }
  .point-img-2 {
    margin-top: min(4.06vw, 26px);
  }
  #secPoint .notice {
    margin-top: min(4.69vw, 30px);
  }
}
.icn-mask {
  background-color: var(--primary-color);
}

#secSupport .icn-mask {
  width: min(22.81vw, 146px);
  height: min(22.81vw, 146px);
}
@media screen and (min-width: 768px) {
  #secSupport .icn-mask {
    width: 92px;
    height: 92px;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto 0;
    left: 2.125rem;
  }
}
@media screen and (min-width: 768px) {
  #secSupport .icn-top .icn-mask {
    top: 1.875rem;
    bottom: inherit;
    margin-block: inherit;
  }
}
@media screen and (min-width: 768px) {
  #secSupport .title03.hasIcon {
    align-items: center;
    padding-left: 7rem;
  }
}

.icn-mask.icn-support-01 {
  -webkit-mask-image: url("../image/icn-support-01.svg");
  mask-image: url("../image/icn-support-01.svg");
}

.icn-mask.icn-support-02 {
  -webkit-mask-image: url("../image/icn-support-02.svg");
  mask-image: url("../image/icn-support-02.svg");
}

.icn-mask.icn-support-03 {
  -webkit-mask-image: url("../image/icn-support-3.svg");
  mask-image: url("../image/icn-support-03.svg");
}

.icn-mask.icn-support-04 {
  -webkit-mask-image: url("../image/icn-support-04.svg");
  mask-image: url("../image/icn-support-04.svg");
}

.icn-mask.icn-support-05 {
  -webkit-mask-image: url("../image/icn-support-05.svg");
  mask-image: url("../image/icn-support-05.svg");
}/*# sourceMappingURL=business.css.map */