@charset "utf-8";
:root {
  --sub: url(/img/sub/sub.svg) no-repeat 0 0 / 4.8rem;
  --con-tit: url(/img/sub/con-tit-bg.png) no-repeat 0 0 / 40rem;
  --share-sns: url(/img/sub/share-sns.svg) no-repeat 0 0 / 21.6rem;
}

body {
  background-position: -29.3rem 38.3rem;
}

.wrap {  
  max-width: 1640px;
}

#contents {
  flex: 1 1 auto;
  width: 100%;
}

#con-tit {
  position: relative;
  padding: 3.6rem 0rem 3rem 0rem;
  border-bottom: 1px solid rgba(190, 190, 190, 0.50);
  z-index: 9;
}

#con-tit h3 {
  margin-bottom: 1rem;
  font-size: 3.6rem;
  line-height: normal;
}

#location {
  display: flex;
  justify-content: space-between;
  align-items: center;  
}

#location>ol {
  display: flex;
  align-items: center;
  gap: 1.2rem;
}

#location>ol>li {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  color: #444;
  font-size: 1.8rem;
  line-height: normal;
}

#location>ol>li:nth-last-child(1) {
  font-weight: 600;
}

#location>ol>li:first-child::before {
  content: '';
  display: block;
  width: 2.1rem;
  height: 2.1rem;
  background: var(--sub);
  background-position: 0 -2.4rem;
}

#location>ol>li::after {
  content: '';
  display: block;
  width: 1.2rem;
  height: 1.2rem;
  background: var(--sub);
  background-position: -2.1rem -2.4rem;
}

#location>ol>li:nth-last-child(1)::after {
  display: none;
}

#share-sns {
  position: relative;
  display: inline-flex;
  gap: 0.6rem;
}

#share-sns a {
  display: block;
  width: 3.6rem;
  height: 3.6rem;
  border-radius: 50%;
}

#share-sns>li>a {
  background: #F0F4FF var(--share-sns);
}

#share-sns .share {
  background-position: 0 0;
}

#share-sns .share.on {
  background-position: calc(-3.6rem * 2) 0;
}

#share-sns .print {
  background-position: -3.6rem 0;
}

#share-sns>li>ul {
  display: none;
}

#share-sns .on+ul {
  position: absolute;
  display: flex;
  gap: 0.6rem;
  top: 0;
  right: calc(7.8rem + 0.6rem);
}

#share-sns ul>li>a {
  border: none;
  width: 3.6rem;
  height: 3.6rem;
}

#share-sns .blog {
  background: #1ea754 var(--share-sns);
  background-position: 0 -3.6rem;
}

#share-sns .kakaotalk {
  background: #FAE215 var(--share-sns);
  background-position: calc(-3.6rem * 2) -3.6rem;
}

#share-sns .facebook {
  background: #4868AC var(--share-sns);
  background-position: calc(-3.6rem * 3) -3.6rem;
}

#share-sns .twitter {
  background: #1DA1F3 var(--share-sns);
  background-position: calc(-3.6rem * 4) -3.6rem;
}

#share-sns .link {
  background: #666666 var(--share-sns);
  background-position: calc(-3.6rem * 5) -3.6rem;
}

#detail_con {
  margin: 6rem 2rem;
  word-break: keep-all;
}

#tab {
  display: flex;
  align-items: center;
  align-content: center;
  gap: 1rem;
}

#tab>li {
  flex: 1 1 auto;
  text-align: center;
}

#tab>li a {
  display: flex;
  justify-content: center;
  padding: 0rem 1rem;
  align-items: center;
  height: 5rem;
  color: #7E8C9C;
  font-size: 1.6rem;
  line-height: normal;
  border: 1px solid #B2BAC3;
}

#tab>li.select a { 
  color: #FFF;
  font-weight: 700;
  border: 1px solid #0D3361;
  background: #0D3361;
}

.tbox {
  position: relative;
  padding: 3.6rem 4rem;
  color: #112637;
  font-size: 1.8rem;
  border-right: 0.2rem solid var(--main);
  border-left: 0.2rem solid var(--main);
  background: #F6F7FA;
}

.tbox .tit {
  margin-bottom: 2rem;
  color: var(--main);
  font-size: 2.4rem;
  font-weight: 700;
  line-height: normal;
}

.tbox::before,
.tbox::after {
  content: '';
  position: absolute;
  top: -0.2rem;
  width: 3.2rem;
  height: 100%;
  border-top: 0.2rem solid var(--main);
  box-shadow: 0 0.2rem var(--main);
}

.tbox::before {
  left: -0.2rem;
}

.tbox::after {
  right: -0.2rem;
}

.conbox {
  margin: 1.2rem 0;
  padding: 2.4rem 2.8rem;
  border: 1px solid var(--main);
  background: #F6F7FA;
}

.bl03>li>table.data {
  margin-top: 1.2rem;
  margin-left: 0;
}

table.data {
  width: calc(100% - 1rem);
  margin: 2rem 0 0 1rem;
}

table.data thead th {
  text-align: center;
  padding: 1.6rem 0rem;
  color: var(--main);
  font-weight: 600;
  line-height: normal;
  border: 1px solid var(--main);
  background: #F6F7FA;
}

table.data tbody th,
table.data tbody td {
  padding: 2rem;
  text-align: center;
  line-height: normal;
  border: 1px solid #ccc;
  border-top: none;
  background: #fff;
}

table.data tbody th {
  font-weight: 400;
  background: #F6F7FA;
}

table.data .bl03 {
  margin-top: 0;
	line-height: 1.6;
}

table.data .bl03>li:nth-child(1) {
  margin-top: 0;
}

.bl01+.step {
  margin-top: 1.2rem;
}

.bl03>li>.step {
  margin-top: 1.2rem;
}

.step {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem 0;
}

.step>li {
  flex: 0 0 auto;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  text-align: center;
  margin-right: 3.8rem;
  width: calc(25% - (3.8rem * 4) / 4);
  min-width: 20rem;
  border-radius: 1rem;
  border: 1px solid #ADB8CC;
}

.step.col3>li {
  width: calc(33.3% - (3.8rem * 3) / 3);
}

.step.col4>li {
  width: calc(25% - (3.8rem * 3) / 4);
}

.step.col5>li {
  width: calc(20% - (3.8rem * 4) / 5);
}

.step.col6>li {
  min-width: auto;
  width: calc(16.6% - (3.8rem * 5) / 6);
  word-break: break-all;
}

.step.col6>li .con {
  padding: 1.5rem
}

.step.col6>li .num,
.step.col6>li .tit {
  font-size: 1.3rem
}

.step.col6>li .txt {
  padding: 1rem;
  font-size: 1.2rem;
  font-weight: 600;
}

.consbtn .link {
  width: 2rem;
  height: 2rem;
}

.step>li::before {
  content: '';
  position: absolute;
  right: -3.1rem;
  top: calc(50% - 2.1rem / 2);
  display: block;
  width: 2.1rem;
  height: 2.1rem;
  background: url(/img/sub/step-arr.svg) no-repeat center / 100%;
}

.step>li:nth-last-child(1) {
  margin-right: 0;
}

.step>li:nth-last-child(1)::before {
  display: none;
}

.step>li .con {
  padding: 3rem 1.5rem;
}

.step>li .num {
  margin-bottom: 1.5rem;
  color: var(--main);
  font-weight: 700;
  line-height: normal;
}

.step>li .tit {
  font-weight: 600;
  line-height: 140%;
}

.step>li .txt {
  padding: 1.2rem 1rem;
  font-size: 1.5rem;
  background: #F5F5F5;
  border-radius: 0 0 1rem 1rem;
  overflow: hidden;
}

.bl03>li>.point {  
  margin-top: 0.5rem;
}

.point {
  color: #C60808;
  font-size: 1.6rem;
  font-weight: 400;
}

.bl01+.conbtn {
  margin-left: 2rem;
}
 
.conbtn {
  display: inline-flex;
  align-items: center;
  gap: 0.7rem;
  margin-top: 1.2rem;
  padding: 0.9rem 2rem;
  border-radius: 2.1rem;
  color: #FFF;
  font-weight: 600;
  background: var(--main);
}

.conbtn .down {
  width: 1.6rem;
  height: 1.6rem;
  background: url(/img/sub/conbtn-down.svg) no-repeat 0 0 / 100%;
}

.conbtn .link {
  width: 1.6rem;
  height: 1.6rem;
  background: url(/img/sub/conbtn-link.svg) no-repeat 0 0 / 100%;
}

.consbtn {
  display: inline-flex;
  gap: 0.5rem;
  padding: 0.5rem 1rem;
  font-weight: 600;
  text-decoration: underline;
  border-radius: 0.7rem;
  background: #DDE4FF;
}

.consbtn .link {
  width: 2.3rem;
  height: 2.3rem;
  background: url(/img/sub/consbtn-link.svg) no-repeat 0 0 / 100%;
}

.conbtn i,
.consbtn i {
  transition: .3s;
}

.conbtn:hover i,
.consbtn:hover i {
  transform: translateY(0.3rem);
}

.para01 {
  margin: 3.6rem 0rem 0rem 2rem;
}

.para02 {
  margin: 2.2rem 0rem 0rem 2rem;
}

h4 {
  position: relative;
  padding-left: 3.4rem;
  margin-top: 6rem;
  color: var(--charcoal);
  font-size: 2.6rem;
  font-weight: 700;
  line-height: normal;
}

h4::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 2.4rem;
  height: 2.4rem;
  background: url(/img/sub/bl.svg) no-repeat 0 0 / 2.4rem;
}

.bl01 {
  position: relative;
  padding-left: 2rem;
  color: var(--main);
  font-size: 2.1rem;
  font-weight: 600;
  line-height: normal;
}

.bl01::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.6rem;
  width: 1.3rem;
  height: 1.3rem;
  border-radius: 50%;
  border: 0.4rem solid var(--main);
  box-sizing: border-box;
}

.bl02 {
  position: relative;
  padding-left: 1.4rem;
  color: var(--charcoal);
  font-size: 1.9rem;
  font-weight: 600;
  line-height: normal;
  letter-spacing: -0.05rem;
}

.bl02::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.7rem;
  width: 0.7rem;
  height: 1rem;
  background: url(/img/sub/bl02.svg) no-repeat 0 0 / 100%;
}

.para01 :not(:has(.bl02)) .bl03 {
  margin-left: 0;
}

h4+.para01>.bl03 {
  margin-left: 0;
}

.para02 .bl03 {
  margin-left: 1.4rem;
}

.bl03,
.bl03>li {
  margin-left: 2rem;
  margin-top: 1.2rem;
  color: var(--charcoal);
  font-size: 1.7rem;
  font-weight: 400;
}

.bl03>li {
  position: relative;
  padding-left: 1.4rem;
  margin-left: 0;
  margin-top: 0.4rem;
}

.bl03>li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 1rem;
  width: 0.6rem;
  height: 0.6rem;
  border-radius: 50%;
  background: var(--main);
}

.para01 .bl03.v2 {
  margin-left: 0;
}

.bl03.v2>li {
  padding-left: 2rem;
  margin-top: 1.5rem;
  font-weight: 500;
  letter-spacing: -0.05rem;
}

.bl03.v2>li::before {
  top: 0.6rem;
  width: 1.3rem;
  height: 1.4rem;
  border-radius: 0.2rem;
  background: #3D4458 url(/img/sub/bl03_v2.svg) no-repeat 0 0 / 1.3rem;
}

.bl03>li .bl04 {
  margin-top: 0.4rem;
}

.bl03.v2>li .bl04 {
  margin-top: 1.2rem;
}

.bl04,
.bl04>li {
  color: #444;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2.4rem;
  letter-spacing: 0;
}

.bl04>li {
  position: relative;
  padding-left: 1.1rem;
  margin-top: 0.2rem;
}

.bl04>li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 1rem;
  width: 0.4rem;
  height: 0.4rem;
  border-radius: 50%;
  background: var(--main);
}

.nobl,
.nobl>li {
  padding-left: 0;
}

.nobl::before,
.nobl>li::before {
  display: none;
}

/*pc*/
@media screen and (min-width:1025px) {
  .con-tit-bg {
    content: '';
    position: absolute;
    right: 15rem;
    top: 3.5rem;
    width: 40rem;
    height: 28rem;
    background: var(--con-tit);
  }
  
  .sub02 .con-tit-bg {
    background-position: 0 -28rem;
  }
  
  .sub03 .con-tit-bg {
    background-position: 0 calc(-28rem * 2);
  }
  
  .sub04 .con-tit-bg {
    background-position: 0 calc(-28rem * 3);
  }
  
  .sub05 .con-tit-bg {
    background-position: 0 calc(-28rem * 4);
  }
  
  .sub06 .con-tit-bg {
    background-position: 0 calc(-28rem * 5);
  }
  
  header.on .con-tit-bg {
    display: none;
  }

  #container {
    position: relative;
    display: flex;
    align-items: flex-start;
    gap: 7.2rem;
    padding-top: 4rem;
    padding-bottom: 10rem;
  }

  #lmenu {                      
    flex: 0 0 auto;
    width: 28rem;
    border-radius: 2.8rem;
    background: var(--main);
    box-shadow: var(--ic-shadow);
  }

  #lmenu h2 {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    height: 14.8rem;
    color: #FFF;
    font-size: 3rem;
    font-weight: 800;
    line-height: normal;
  }

  #lmenu .sub-menu {
    padding: 3.2rem 2.8rem;
    border-radius: 2rem;
    background: #FFF;
  }

  #lmenu .sub-menu>li {
    border-bottom: 1px solid #EDEDED;
  }
  
  #lmenu .sub-menu>li.select:has(.sub-depth) {
    border-bottom: none;
  }
  
  #lmenu .sub-menu>li:nth-last-child(1) {
    border-bottom: none;
  }

  #lmenu .sub-menu>li>a {
    position: relative;
    display: block;
    padding: 1.3rem 0.8rem;
    color: #444;
    font-size: 1.8rem;
    line-height: normal;
  }
  
  #lmenu .sub-menu>li>a:hover,
  #lmenu .sub-menu>li.select>a {
    color: var(--main);
    font-weight: 600;
  }
  
  #lmenu .sub-menu>li>a::before {
    content: '';
    position: absolute;
    right: 0.8rem;
    top: 1.3rem;
    width: 2.4rem;
    height: 2.4rem;
    background: var(--sub);
  }

  #lmenu .sub-menu>li>a:hover::before,
  #lmenu .sub-menu>li.select>a::before {
    background-position: -2.4rem 0;
  }

  #lmenu .sub-menu>li:has(.sub-depth)>a::before {
    transform: rotate(90deg);
  }
  
  #lmenu .sub-menu>li.select:has(.sub-depth)>a::before {
    transform: rotate(-90deg);
  }

  #lmenu .sub-depth {
    display: none;
    padding: 2rem;
    border-radius: 0.8rem;
    background: #F5F5F5;
  }

  #lmenu .sub-depth>li {
    margin-top: 0.5rem;
  }
  
  #lmenu .sub-depth>li:nth-child(1) {
    margin-top: 0;
  }
  
  #lmenu .sub-depth>li>a {
    position: relative;
    display: block;
    padding-left: 0.9rem;
    color: #444;
    font-size: 1.6rem;
    line-height: normal;
  }
  
  #lmenu .sub-depth>li>a::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.75rem;
    width: 0.4rem;
    height: 0.4rem;
    border-radius: 50%;
    background: var(--main);
  }
  
  #lmenu .sub-depth>li>a:hover,
  #lmenu .sub-depth>li.select>a {
    color: var(--main);
  }

  table.data th,
  table.data td {
    word-break: keep-all;
  }
}

/* mb */
@media screen and (max-width:1024px) {
  body {
    background: none;
  }
  
  .con-tit-bg,
  #lmenu {
    display: none;
  }
  
  #con-tit {
    align-items: center;
    text-align: center;
  }

  #location {
    flex-direction: column;
    gap: 2rem;
  }

  #detail_con {
    margin-left: 0;
    margin-right: 0;
  }  
}

/* min-mb */
@media screen and (max-width:500px) {
  #share-sns .on+ul {
    flex-direction: column;
    top: calc(3.6rem + 0.6rem);
    right: 0;
    left: 0;
  }

  .para01 {
    margin-top: 15px;
  }

  .step>li {
    margin-right: 0;
    margin-bottom: 3.8rem;
    width: 100%!important;
    min-width: auto;
    word-break: break-all;
  }

  .step>li::before {
    right: 0;
    left: 0;
    bottom: -3.8rem;
    top: auto;
    margin: 0 auto;
    transform: rotate(90deg);
  }
}