@charset "UTF-8";
/*
	@include sc(pc) {
		width: 100%;
	}
	@include sc(sp) {
		width: 50%;
	}
*/
/*
	@include hover() {
		opacity: 0.6;
	}
*/
/*transition*/
/*
	$line:イラレの行の値
	$size:イラレの文字の値

	@include lh(38, 15);
*/
/*
	$size:object-fitの値

	@include objectfit();
	@include objectfit('contain');
*/
/*
	@include taJ();
*/
/*
	@extend %rightarr;
*/
/*
DIN 2014
@include f_din(400);
700：Bold
*/
/*
源ノ明朝
@include f_min(400);
400：Reguler
500：Medium
600：SemiBold
*/
/*
	$color:色指定
	$stripe:線サイズ
	$spacing:線の空きサイズ
	$height:太さ

	@include dotted(#e6e1d2, 4,4,2);
*/
/*
example
@include dotted-y(#COLOR, WidthPX,SpaceingPX,LengthPX,); 横破線
@include dotted-y(#e6e1d2, 4,4,2,10);
*/
@media screen and (max-width: 640px) {
  .mod_header .logo {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

.contentWrap {
  position: relative;
  z-index: 1;
  width: 100%;
}
@media screen and (max-width: 640px) {
  .contentWrap {
    position: static;
    max-width: 100%;
  }
}

/*secTit title 上書き*/
.secTit .title {
  font-size: 0.18rem;
}
@media screen and (max-width: 640px) {
  .secTit .title {
    font-size: 0.12rem;
  }
}
.secTit .title[data-subtxt] {
  padding-top: 0.45rem;
}
@media print, screen and (min-width: 641px) {
  .secTit .title[data-subtxt] {
    padding-top: 0.9rem;
  }
}
.secTit .title[data-subtxt]:before {
  content: attr(data-subtxt) "";
  position: absolute;
  bottom: auto;
  top: 0;
  left: 0;
  width: 100%;
  font-family: din-2014, sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 0.35rem;
  line-height: 1;
  letter-spacing: 0.08em;
}
.firefox .secTit .title[data-subtxt]:before {
  line-height: 0.7;
}
@media print, screen and (min-width: 641px) {
  .secTit .title[data-subtxt]:before {
    font-size: 0.7rem;
  }
}

.scroll {
  display: block;
  margin: 0 auto;
  width: 0.4rem;
  height: 0.4rem;
}
@media print, screen and (min-width: 641px) {
  .scroll {
    bottom: 0.8rem;
  }
}
.scroll .scrollLink {
  display: block;
  height: 100%;
}
.scroll span {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
}
.scroll span::before {
  position: absolute;
  content: "";
  display: block;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 8px;
  height: 8px;
  border-right: 2px solid;
  border-bottom: 2px solid;
  border-color: #fff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.flexBox {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 640px) {
  .flexBox {
    display: block;
  }
}
.flexBox.jcsb {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 11.8rem;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.mvArea {
  position: relative;
  width: 100%;
  height: 100vh;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 1;
}
@media print, screen and (min-width: 641px) {
  .mvArea {
    height: 13rem;
  }
}
.mvArea > .in {
  position: relative;
  z-index: 1;
  height: 100%;
}
.mvArea .mv {
  position: relative;
  z-index: -1;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 640px) {
  .mvArea .mv {
    background-position: top center;
  }
}
.mvArea .txtBox {
  position: absolute;
  margin: auto;
}
@media screen and (max-width: 640px) {
  .mvArea .txtBox {
    width: 90%;
    height: 58.6vw;
    top: -2rem;
    left: 0;
    right: 0;
    bottom: 0;
  }
}
@media print, screen and (min-width: 641px) {
  .mvArea .txtBox {
    width: 10.3rem;
    top: 1.5rem;
    left: 1.5%;
    right: 0;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    z-index: 11;
  }
}
@media screen and (min-width: 1650px) {
  .mvArea .txtBox {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}
.mvArea .txtBox .ttlImg01 {
  position: relative;
  margin-left: auto;
  z-index: 20;
}
@media screen and (max-width: 640px) {
  .mvArea .txtBox .ttlImg01 {
    margin-right: 1%;
    width: 82%;
  }
}
@media print, screen and (min-width: 641px) {
  .mvArea .txtBox .ttlImg01 {
    width: 6rem;
  }
}
.mvArea .txtBox .ttlImg01::before, .mvArea .txtBox .ttlImg01::after {
  position: absolute;
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  width: 50%;
  height: 165%;
  z-index: -1;
}
@media print, screen and (min-width: 641px) {
  .mvArea .txtBox .ttlImg01::before, .mvArea .txtBox .ttlImg01::after {
    width: 3.1rem;
    height: 2.7rem;
  }
}
.mvArea .txtBox .ttlImg01::before {
  background-image: url(../../img/mv_deco01.png);
  left: -26%;
  top: -134%;
}
@media print, screen and (min-width: 641px) {
  .mvArea .txtBox .ttlImg01::before {
    top: -1.6rem;
    left: -0.84rem;
  }
}
.mvArea .txtBox .ttlImg01::after {
  background-image: url(../../img/mv_deco02.png);
  right: -21%;
  bottom: -184%;
}
@media print, screen and (min-width: 641px) {
  .mvArea .txtBox .ttlImg01::after {
    right: 0.2rem;
    bottom: -1.85rem;
  }
}
@media screen and (max-width: 640px) {
  .mvArea .txtBox .ttlImg02 {
    margin-top: 0.15rem;
    width: 82%;
  }
}
@media print, screen and (min-width: 641px) {
  .mvArea .txtBox .ttlImg02 {
    width: 4.5rem;
    margin-top: -1.2rem;
    margin-left: 0;
  }
}
.mvArea .txtBox img {
  width: 100%;
  height: auto;
}
.mvArea .shapeWrap .shape01,
.mvArea .shapeWrap .shape02 {
  position: absolute;
  display: block;
  background-repeat: no-repeat;
  background-size: contain;
  width: 100%;
  height: 100%;
  z-index: -1;
}
.mvArea .shapeWrap .shape01 {
  background-position: right top;
  top: 0;
  right: 0;
}
@media print, screen and (min-width: 641px) {
  .mvArea .shapeWrap .shape01 {
    width: 73%;
    height: 100%;
    background-image: url(../../img/mv_shape01_pc.png);
  }
}
@media screen and (max-width: 640px) {
  .mvArea .shapeWrap .shape01 {
    width: 39%;
    background-image: url(../../img/mv_shape01_sp.png);
  }
}
.mvArea .shapeWrap .shape02 {
  background-position: right bottom;
  right: 0;
  bottom: 0;
}
@media print, screen and (min-width: 641px) {
  .mvArea .shapeWrap .shape02 {
    max-width: 2.5rem;
    max-height: 4.4rem;
    background-image: url(../../img/mv_shape02_pc.png);
  }
}
@media screen and (max-width: 640px) {
  .mvArea .shapeWrap .shape02 {
    width: 33%;
    background-image: url(../../img/mv_shape02_sp.png);
  }
}
.mvArea .scroll {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 3%;
}
@media print, screen and (min-width: 641px) {
  .mvArea .scroll {
    bottom: 11%;
  }
}

.newsArea {
  position: relative;
  display: block;
  z-index: 1;
}
@media print, screen and (min-width: 641px) {
  .newsArea::before {
    position: absolute;
    content: "";
    display: block;
    top: -0.5rem;
    left: 0;
    width: calc((100vw - 14.2rem) / 2);
    height: calc(100% + 0.5rem);
    background-color: #14a9ab;
    z-index: -1;
  }
}
@media print, screen and (min-width: 641px) {
  .newsArea .in {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.newsArea .newsWrap {
  position: relative;
  background-color: #00001b;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (max-width: 640px) {
  .newsArea .newsWrap {
    width: 92%;
    padding: 0.5rem 0.3rem 0.1rem;
    margin-left: 2.5%;
  }
}
@media print, screen and (min-width: 641px) {
  .newsArea .newsWrap {
    width: 100%;
    max-width: 7rem;
    height: 5.8rem;
    padding: 1.1rem 0.8rem 0.5rem;
  }
}
.newsArea .newsWrap::before {
  position: absolute;
  content: "";
  display: block;
  top: -0.25rem;
  left: -2.5vw;
  width: calc(100% + 2.5vw);
  height: calc(100% + 0.25rem);
  background-color: #14a9ab;
  z-index: -1;
}
@media print, screen and (min-width: 641px) {
  .newsArea .newsWrap::before {
    width: 100%;
    height: 0.5rem;
    top: -0.5rem;
    left: 0;
  }
}
.newsArea .newsWrap .newsContent {
  position: relative;
  display: block;
}
.newsArea .newsWrap .newsContent::before {
  position: absolute;
  content: "";
  display: block;
  width: 0.15rem;
  height: 2px;
  background-color: #14a9ab;
  top: -0.16rem;
  left: 0;
}
@media print, screen and (min-width: 641px) {
  .newsArea .newsWrap .newsContent::before {
    width: 0.3rem;
    top: -0.4rem;
  }
}
.newsArea .newsWrap .wrapTop {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media print, screen and (min-width: 641px) {
  .newsArea .newsWrap .wrapTop .btn01 {
    max-width: 2.2rem;
  }
}
.newsArea .newsWrap .wrapTtl {
  font-family: din-2014, sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 0.46rem;
  color: #14a9ab;
  letter-spacing: 0.05em;
  line-height: 1;
}
@media screen and (max-width: 640px) {
  .newsArea .newsWrap .wrapTtl {
    font-size: 0.3rem;
  }
}
.newsArea .newsWrap .postWrap {
  margin-top: 0.25rem;
}
@media print, screen and (min-width: 641px) {
  .newsArea .newsWrap .postWrap {
    margin-top: 0.5rem;
  }
}
.newsArea .newsWrap .post {
  position: relative;
  display: block;
}
.no-touchevents .newsArea .newsWrap .post {
  -webkit-transition: all 0.4s cubic-bezier(0.77, 0, 0.175, 1);
  transition: all 0.4s cubic-bezier(0.77, 0, 0.175, 1);
}
.newsArea .newsWrap .post::before {
  position: absolute;
  content: "";
  display: block;
  left: 0;
  bottom: 0;
  width: 100%;
}
.newsArea .newsWrap .post::before {
  height: 2px;
  background-color: #14a9ab;
  -webkit-transform: scaleX(1);
          transform: scaleX(1);
  z-index: 1;
}
.no-touchevents .newsArea .newsWrap .post:hover {
  -webkit-filter: brightness(1.2);
          filter: brightness(1.2);
}
@media screen and (max-width: 640px) {
  .newsArea .newsWrap .post:first-of-type .postLink {
    padding-top: 0;
  }
}
.newsArea .newsWrap .post:last-of-type::before {
  display: none;
}
.newsArea .newsWrap .postLink {
  display: block;
  padding: 0.2rem 0;
  cursor: pointer;
}
.newsArea .newsWrap .infoTxt time,
.newsArea .newsWrap .postTtl {
  font-weight: 700;
  font-size: 0.15rem;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 640px) {
  .newsArea .newsWrap .infoTxt time,
  .newsArea .newsWrap .postTtl {
    font-size: 0.12rem;
  }
}
.newsArea .newsWrap .infoTxt time {
  line-height: 1;
  color: #14a9ab;
}
.newsArea .newsWrap .postTtl {
  margin-top: 0.1rem;
  color: #fff;
}
.newsArea .imgWrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
@media screen and (max-width: 640px) {
  .newsArea .imgWrap {
    position: relative;
    padding-top: 0.55rem;
    z-index: 1;
  }
  .newsArea .imgWrap::before {
    position: absolute;
    content: "";
    display: block;
    top: 0;
    left: 0;
    width: 1.1rem;
    height: 2rem;
    background-image: url(../../img/news_rule_shape01.png);
    background-repeat: no-repeat;
    background-position: left top;
    background-size: contain;
    z-index: -1;
  }
}
@media print, screen and (min-width: 641px) {
  .newsArea .imgWrap {
    max-width: 7.2rem;
    width: 100%;
  }
}
.newsArea .imgWrap .imgItem {
  width: 50%;
}
.newsArea .imgWrap img {
  width: 100%;
  height: auto;
}

/*section common*/
.secTop {
  position: relative;
  display: block;
  z-index: 1;
  height: 3.8rem;
}
@media print, screen and (min-width: 641px) {
  .secTop {
    height: 5.7rem;
  }
}
.secTop .bg {
  height: 100%;
  width: calc(100% - 0.1rem);
  margin-left: auto;
}
@media print, screen and (min-width: 641px) {
  .secTop .bg {
    width: calc(100% - 0.2rem);
  }
}
.secTop .secTit {
  position: absolute;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
@media screen and (max-width: 640px) {
  .secTop .secTit {
    padding-bottom: 0.3rem;
    margin-top: -0.14rem;
  }
}
.secTop .scroll {
  margin-top: 0.25rem;
}
@media print, screen and (min-width: 641px) {
  .secTop .scroll {
    margin-top: 0.5rem;
  }
}

@media print, screen and (min-width: 641px) {
  .listWrap.secList {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    max-width: 12.4rem;
    margin: 0 auto;
  }
}
.listWrap.secList .list {
  background-color: #00001b;
}
@media print, screen and (min-width: 641px) {
  .listWrap.secList .list {
    width: calc(100% - 0.8rem);
  }
}
@media print, screen and (min-width: 641px) {
  .listWrap.secList .list + .list {
    margin-left: 0.4rem;
  }
}
@media print, screen and (min-width: 641px) {
  .listWrap.secList .list .listTxt {
    font-size: 0.15rem;
  }
}

.pointNum {
  position: relative;
  font-family: din-2014, sans-serif;
  font-weight: 700;
  font-style: normal;
  color: #14a9ab;
}
.pointNum[data-subtxt]:before {
  content: attr(data-subtxt) "";
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  font-family: din-2014, sans-serif;
  font-weight: 700;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0.04em;
  white-space: nowrap;
}
.firefox .pointNum[data-subtxt]:before {
  line-height: 0.7;
}
.pointNum._bcff {
  color: #fff;
}
.pointNum._bcff[data-subtxt]:before {
  color: #fff;
}

/*--section commonここまで*/
/*section 共通*/
.secRule,
.secReason {
  margin-top: 1rem;
}
@media screen and (max-width: 640px) {
  .secRule,
  .secReason {
    margin-top: 0.5rem;
  }
}
@media print, screen and (min-width: 641px) {
  .secRule .scroll,
  .secReason .scroll {
    bottom: 1.1rem;
  }
}

/*3Rule only*/
.secRule {
  background-color: #00001b;
}
@media print, screen and (min-width: 641px) {
  .secRule {
    position: relative;
    display: block;
  }
  .secRule::before {
    position: absolute;
    content: "";
    display: block;
    top: -1rem;
    left: 0;
    width: 1.76rem;
    height: 3.1rem;
    background-image: url(../../img/news_rule_shape01.png);
    background-repeat: no-repeat;
    background-position: left top;
    background-size: contain;
    z-index: 2;
  }
}
.secRule .secTop {
  overflow: hidden;
}
.secRule .secTop::after {
  position: absolute;
  content: "";
  display: block;
  background-image: url(../../img/rule_deco01.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  top: -0.9rem;
  right: -0.5rem;
  width: 1.6rem;
  height: 1.5rem;
}
@media print, screen and (min-width: 641px) {
  .secRule .secTop::after {
    top: -1.7rem;
    right: 50%;
    -webkit-transform: translateX(7rem);
            transform: translateX(7rem);
    width: 2.96rem;
    height: 2.7rem;
  }
}
.secRule .ruleWrap {
  padding-bottom: 0.4rem;
}
@media print, screen and (min-width: 641px) {
  .secRule .ruleWrap {
    padding-bottom: 0.7rem;
  }
}
@media print, screen and (min-width: 641px) {
  .secRule .ruleWrap .btn02 {
    margin-top: 0.1rem;
  }
}
.secRule .secList {
  position: relative;
  top: -0.5rem;
  z-index: 2;
}
@media screen and (max-width: 640px) {
  .secRule .secList {
    padding: 0 0.2rem;
  }
}
.secRule .secList .list {
  padding: 0.3rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-bottom: 1px solid #14a9ab;
}
@media print, screen and (min-width: 641px) {
  .secRule .secList .list {
    padding: 0.4rem;
  }
}
@media screen and (max-width: 640px) {
  .secRule .secList .list + .list {
    margin-top: 0.18rem;
  }
}
.secRule .secList dt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: #14a9ab;
}
.secRule .secList .pointNum {
  display: block;
  font-size: 0.45rem;
  padding-top: 0.08rem;
  margin-right: 0.22rem;
  line-height: 1;
}
@media print, screen and (min-width: 641px) {
  .secRule .secList .pointNum {
    margin-right: 0.4rem;
    font-size: 0.8rem;
  }
}
.secRule .secList .pointNum[data-subtxt]:before {
  font-size: 0.1rem;
}
@media print, screen and (min-width: 641px) {
  .secRule .secList .pointNum[data-subtxt]:before {
    font-size: 0.12rem;
  }
}
.secRule .secList .pointNum:after {
  position: absolute;
  content: "";
  display: block;
  width: 2px;
  right: -0.22rem;
  height: 86%;
  background-color: #14a9ab;
  top: 0.01rem;
}
@media print, screen and (min-width: 641px) {
  .secRule .secList .pointNum:after {
    top: 0.02rem;
    right: -0.4rem;
  }
}
.secRule .secList .listTtl {
  padding-left: 0.2rem;
  font-weight: 700;
  font-size: 0.16rem;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 640px) {
  .secRule .secList .listTtl {
    padding-bottom: 0.05rem;
  }
}
@media print, screen and (min-width: 641px) {
  .secRule .secList .listTtl {
    padding-left: 0.3rem;
  }
}
.secRule .secList .listImg {
  width: 100%;
  height: auto;
  margin-top: 0.2rem;
}
@media print, screen and (min-width: 641px) {
  .secRule .secList .listImg {
    margin-top: 0.4rem;
  }
}
.secRule .secList .listImg img {
  width: 100%;
  height: auto;
}
.secRule .secList .listTxt {
  margin-top: 0.15rem;
}
@media print, screen and (min-width: 641px) {
  .secRule .secList .listTxt {
    margin-top: 0.25rem;
  }
}

/*movie in 3Rule*/
@media print, screen and (min-width: 641px) and (min-width: 641px) {
  .movieArea .movieIn::before, .movieArea .movieIn::after {
    width: 7.6rem;
    height: 5.5rem;
  }
}
.movieArea .movieTtl {
  position: relative;
  display: inline-block;
  padding: 0.2rem 0.1rem;
  font-weight: 700;
  font-size: 0.14rem;
  letter-spacing: 0.05em;
  color: #fff;
  z-index: 1;
}
@media print, screen and (min-width: 641px) {
  .movieArea .movieTtl {
    padding: 0.4rem;
    font-size: 0.24rem;
  }
}
.movieArea .movieTtl::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  background-image: url(../../img/movie_txt01.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  z-index: -1;
}
@media print, screen and (min-width: 641px) {
  .movieArea .movieTtl::before {
    width: 4.6rem;
    height: 1.1rem;
  }
}
@media print, screen and (min-width: 641px) {
  .movieArea .movieBox {
    /*height: 5.05rem!important;
    height: 5.7rem!important;*/
    margin-top: 2rem;
    height: 10rem !important;
  }
}
.movieArea .movieBox video {
  position: absolute;
  display: block;
  max-width: 1700px;
  width: 92%;
  left: 0;
  right: 0;
  margin: 0 auto;
  /*width: 109%;
  top: -12.2%;
  left: -4%;*/
}
@media screen and (max-width: 640px) {
  .movieArea .movieBox video {
    bottom: 0.8rem;
  }
}
@media print, screen and (min-width: 641px) {
  .movieArea .movieBox video {
    bottom: 0.6rem;
    /*width: 109%;
    top: -11.5%;
    left: -4.5%;*/
  }
}

.contactBox {
  position: relative;
  display: block;
  padding: 0.85rem 0.2rem;
  background-color: #f9fb2d;
  z-index: 1;
}
@media print, screen and (min-width: 641px) {
  .contactBox {
    padding: 1.3rem 0 1.2rem;
  }
}
.contactBox::before, .contactBox::after {
  position: absolute;
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-size: contain;
}
.contactBox::before {
  width: 1.2rem;
  height: 2rem;
  bottom: -0.2rem;
  right: -0.1rem;
  background-image: url(../../img/contact_shape01.png);
  background-position: right bottom;
  z-index: -1;
}
@media print, screen and (min-width: 641px) {
  .contactBox::before {
    right: 0;
    bottom: 0;
    width: 2.2rem;
    height: 3.8rem;
  }
}
.contactBox::after {
  width: 1rem;
  height: 0.9rem;
  background-image: url(../../img/contact_deco01.png);
  top: -0.4rem;
  left: -0.2rem;
  background-position: center;
  z-index: 1;
}
@media print, screen and (min-width: 641px) {
  .contactBox::after {
    width: 2.57rem;
    height: 2.25rem;
    top: -0.8rem;
    left: calc(50% - 7.82rem);
  }
}
.contactBox .boxWrap {
  padding: 0.2rem 0 0.15rem;
  background-color: #00001b;
}
@media print, screen and (min-width: 641px) {
  .contactBox .boxWrap {
    max-width: 9rem;
    margin: 0 auto;
    padding: 0.3rem 0;
  }
}
.contactBox .contactTtl {
  text-align: center;
  font-weight: 700;
  font-size: 0.12rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
  color: #14a9ab;
}
@media print, screen and (min-width: 641px) {
  .contactBox .contactTtl {
    font-size: 0.18rem;
  }
}
.contactBox .linkBox {
  padding: 0 0.2rem;
  margin-top: 0.1rem;
}
@media print, screen and (min-width: 641px) {
  .contactBox .linkBox {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 0.3rem;
    padding: 0 0.3rem;
  }
}
.contactBox .telLink {
  margin-top: 0.08rem;
}
@media print, screen and (min-width: 641px) {
  .contactBox .telLink {
    position: relative;
    margin-top: 0;
    margin-left: 0.32rem;
    top: -0.06rem;
  }
  .contactBox .telLink .min {
    font-size: 0.26rem;
  }
  .contactBox .telLink .num {
    margin-left: 0.05rem;
    font-size: 0.42rem;
    letter-spacing: 0.03em;
  }
}
.contactBox .telLink .time {
  margin-top: 0.01rem;
  text-align: center;
  font-weight: 700;
  font-size: 0.12rem;
  color: #14a9ab;
}
@media print, screen and (min-width: 641px) {
  .contactBox .telLink .time {
    font-size: 0.13rem;
  }
}

.secReasons .reasons {
  position: relative;
  padding: 0 0.2rem;
  z-index: 1;
}
@media screen and (max-width: 640px) {
  .secReasons .reasons::before {
    position: absolute;
    content: "";
    display: block;
    width: calc(50% - 0.1rem);
    height: 100%;
    background-color: #14a9a9;
    top: 0;
    right: 0.1rem;
    z-index: 1;
  }
}
.secReasons .reasonsIn {
  position: relative;
  display: block;
  top: -0.5rem;
  z-index: 1;
}
@media print, screen and (min-width: 641px) {
  .secReasons .reasonsIn {
    max-width: 12.4rem;
    margin: 0 auto;
    background-color: #fff;
  }
  .secReasons .reasonsIn::before {
    position: absolute;
    content: "";
    display: block;
    top: 1.2rem;
    right: 0.5rem;
    width: 50%;
    height: 100%;
    background-color: #14a9a9;
    z-index: -1;
  }
}
.secReasons .contentArea {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 640px) {
  .secReasons .contentArea {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0.3rem;
    background-color: #fff;
  }
}
@media print, screen and (min-width: 641px) {
  .secReasons .contentArea {
    max-width: 12.4rem;
    margin: 0 auto;
  }
  .secReasons .contentArea:first-of-type {
    padding-top: 2rem;
  }
}
.secReasons .contentArea + .contentArea {
  margin-top: 0.2rem;
}
@media print, screen and (min-width: 641px) {
  .secReasons .contentArea + .contentArea {
    margin-top: 0.8rem;
  }
}
.secReasons .contentArea .mainBox {
  margin-top: 0.2rem;
}
@media print, screen and (min-width: 641px) {
  .secReasons .contentArea .mainBox {
    margin-top: 0;
  }
}
.secReasons .contentArea .boxNum {
  position: relative;
  display: block;
  text-align: right;
  z-index: 1;
}
.secReasons .contentArea .boxNum::before {
  position: absolute;
  content: "";
  display: block;
  left: 0;
  bottom: 0;
  width: 0.15rem;
  height: 2px;
  background-color: #14a9ab;
  z-index: 1;
}
@media print, screen and (min-width: 641px) {
  .secReasons .contentArea .boxNum::before {
    width: 0.3rem;
  }
}
.secReasons .contentArea .boxNum .pointNum {
  display: inline-block;
  padding-top: 0.08rem;
  font-size: 0.75rem;
  letter-spacing: 0;
  line-height: 1;
}
@media print, screen and (min-width: 641px) {
  .secReasons .contentArea .boxNum .pointNum {
    padding-top: 0.16rem;
    font-size: 1.5rem;
  }
}
.secReasons .contentArea .boxNum .pointNum[data-subtxt]:before {
  font-size: 0.1rem;
}
@media print, screen and (min-width: 641px) {
  .secReasons .contentArea .boxNum .pointNum[data-subtxt]:before {
    font-size: 0.2rem;
  }
}
.secReasons .contentArea .areaTtl {
  margin-top: 0.25rem;
  font-weight: 700;
  font-size: 0.16rem;
  letter-spacing: 0.05em;
  line-height: 1;
}
@media print, screen and (min-width: 641px) {
  .secReasons .contentArea .areaTtl {
    margin-top: 0.4rem;
    font-size: 0.26rem;
  }
}
.secReasons .contentArea .areaTxt {
  margin-top: 0.15rem;
}
@media print, screen and (min-width: 641px) {
  .secReasons .contentArea .areaTxt {
    margin-top: 0.25rem;
    font-size: 0.16rem;
    line-height: 2.25;
  }
}
.secReasons .contentArea .imgArea {
  width: 100%;
}
@media print, screen and (min-width: 641px) {
  .secReasons .contentArea .imgArea {
    width: 6.2rem;
  }
}
.secReasons .contentArea .imgArea.deco {
  position: relative;
  display: block;
}
.secReasons .contentArea .imgArea.deco::before {
  position: absolute;
  content: "";
  display: block;
  left: 0;
  bottom: 0;
  width: 0.2rem;
  height: 1.6rem;
  background-image: url(../../img/reasons_shape01.png);
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: contain;
  z-index: 1;
}
@media print, screen and (min-width: 641px) {
  .secReasons .contentArea .imgArea.deco::before {
    left: 0.5rem;
    width: 0.5rem;
    height: 3.4rem;
  }
}
.secReasons .contentArea .imgArea img {
  width: 100%;
  height: auto;
}
.secReasons .contentArea:not(.reverse) .boxNum {
  height: 0.74rem;
}
@media print, screen and (min-width: 641px) {
  .secReasons .contentArea:not(.reverse) .boxNum {
    height: 1.45rem;
  }
}
@media print, screen and (min-width: 641px) {
  .secReasons .contentArea:not(.reverse).content01 .txtBox {
    margin-top: -0.9rem;
  }
  .secReasons .contentArea:not(.reverse) .mainBox {
    position: relative;
    width: 5.7rem;
    padding-left: 0.5rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    z-index: 1;
  }
  .secReasons .contentArea:not(.reverse) .mainBox::before {
    position: absolute;
    content: "";
    display: block;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    z-index: -1;
  }
  .secReasons .contentArea:not(.reverse) .pointNum {
    right: 0.25rem;
  }
  .secReasons .contentArea:not(.reverse) .areaTtl {
    margin-top: 0.5rem;
  }
  .secReasons .contentArea:not(.reverse) .imgArea {
    padding-left: 0.5rem;
    background-color: #fff;
  }
}
.secReasons .contentArea.reverse .boxNum {
  text-align: left;
  height: 0.95rem;
}
@media print, screen and (min-width: 641px) {
  .secReasons .contentArea.reverse .boxNum {
    height: 1.75rem;
  }
}
@media print, screen and (min-width: 641px) {
  .secReasons .contentArea.reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .secReasons .contentArea.reverse .mainBox {
    width: 6.2rem;
    padding: 0 0.5rem 0 0.8rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}
@media screen and (max-width: 640px) {
  .secReasons .contentArea.content01 {
    padding-bottom: 0.4rem;
  }
}
.secReasons .contentArea.content01::before, .secReasons .contentArea.content01::after {
  position: absolute;
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  z-index: 2;
}
.secReasons .contentArea.content01::before {
  bottom: -0.38rem;
  left: 50%;
  -webkit-transform: translateX(-76%);
          transform: translateX(-76%);
  width: 0.77rem;
  height: 0.68rem;
  background-image: url(../../img/reasons_deco01.png);
}
@media print, screen and (min-width: 641px) {
  .secReasons .contentArea.content01::before {
    bottom: -1.18rem;
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
    width: 2.22rem;
    height: 1.98rem;
  }
}
.secReasons .contentArea.content01::after {
  right: 0.05rem;
  bottom: -0.5rem;
  width: 0.35rem;
  height: 0.48rem;
  background-image: url(../../img/reasons_deco02.png);
}
@media print, screen and (min-width: 641px) {
  .secReasons .contentArea.content01::after {
    right: 0.6rem;
    bottom: -1.7rem;
    width: 0.98rem;
    height: 1.34rem;
  }
}
.secReasons .contentArea.content02 {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.secReasons .contentArea.content02::before {
  position: absolute;
  content: "";
  display: block;
  left: -0.2rem;
  bottom: 0;
  width: 50vw;
  height: calc(100% + 1.5rem);
  background-color: #00001b;
  z-index: -1;
}
@media print, screen and (min-width: 641px) {
  .secReasons .contentArea.content02::before {
    left: calc((100vw - 12.4rem) / 2 * -1);
    bottom: 0;
    width: calc((100vw - 11rem) / 2 + 5rem);
    height: calc(100% + 2.3rem);
  }
}
@media screen and (max-width: 640px) {
  .secReasons .contentArea.content02 {
    background-image: url(../../img/reasons_content02_bg_sp.jpg);
  }
}
@media print, screen and (min-width: 641px) {
  .secReasons .contentArea.content02 {
    padding: 0.8rem 0;
  }
  .secReasons .contentArea.content02::after {
    position: absolute;
    content: "";
    display: block;
    top: 0;
    right: 0;
    bottom: 0;
    margin: auto 0;
    width: calc(100% - 0.5rem);
    height: 100%;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    background-image: url(../../img/reasons_content02_bg_pc.jpg);
    z-index: -1;
  }
}
.secReasons .contentArea.content02 .boxNum::before {
  background-color: #fff;
}
.secReasons .contentArea.content02 .boxNum .pointNum {
  color: #fff;
}
.secReasons .contentArea.content02 .txtBox {
  color: #fff;
}
.secReasons .contentArea.content03::before {
  position: absolute;
  content: "";
  display: block;
  top: -0.4rem;
  left: 0.05rem;
  width: 0.65rem;
  height: 0.65rem;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  background-image: url(../../img/reasons_deco03.png);
  z-index: 2;
}
@media print, screen and (min-width: 641px) {
  .secReasons .contentArea.content03::before {
    top: -1.1rem;
    width: 1.68rem;
    height: 1.68rem;
  }
}

.secAbout {
  position: relative;
  display: block;
  padding: 0.65rem 0.2rem 0.5rem;
  background-color: #00001b;
  z-index: 1;
}
@media print, screen and (min-width: 641px) {
  .secAbout {
    padding: 1.6rem 0 1.2rem;
  }
}
.secAbout::before {
  position: absolute;
  content: "";
  display: block;
  top: 0;
  left: 0;
  width: 0.1rem;
  height: 100%;
  background-color: #14a9ab;
  z-index: 1;
}
@media print, screen and (min-width: 641px) {
  .secAbout::before {
    width: 0.2rem;
  }
}
.secAbout::after {
  position: absolute;
  content: "";
  display: block;
  bottom: 0;
  left: 0.1rem;
  width: calc(100% - 0.1rem);
  height: calc((100vw - 0.1rem) * 0.592);
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: cover;
  background-image: url(../../img/about_bg_sp.png);
  z-index: -1;
}
@media print, screen and (min-width: 641px) {
  .secAbout::after {
    left: 0.2rem;
    width: calc(100% - 0.2rem);
    height: calc((100vw - 0.2rem) * 0.305);
    background-image: url(../../img/about_bg_pc.png);
  }
}
.secAbout .secTit {
  position: relative;
  display: block;
  margin-left: 0.1rem;
}
@media print, screen and (min-width: 641px) {
  .secAbout .secTit {
    max-width: 12.4rem;
    margin: 0 auto;
  }
}
@media screen, (min-width: 641px) and (max-width: 1024px) {
  .secAbout .secTit {
    max-width: 12rem;
  }
}
.secAbout .secTit::before {
  position: absolute;
  content: "";
  display: block;
  top: -0.15rem;
  left: 0;
  width: 0.15rem;
  height: 2px;
  background-color: #fff;
}
@media print, screen and (min-width: 641px) {
  .secAbout .secTit::before {
    top: -0.3rem;
    width: 0.3rem;
  }
}
.secAbout .secTit::after {
  position: absolute;
  content: "";
  display: block;
  bottom: 0;
  right: 0;
  width: 0.75rem;
  height: 0.5rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url(../../img/about_deco01.png);
  z-index: 1;
}
@media print, screen and (min-width: 641px) {
  .secAbout .secTit::after {
    right: -0.85rem;
    width: 1.45rem;
    height: 0.9rem;
  }
}
.secAbout .secTit .title[data-subtxt] {
  padding-top: 0.4rem;
}
@media print, screen and (min-width: 641px) {
  .secAbout .secTit .title[data-subtxt] {
    padding-top: 0.6rem;
  }
}
.secAbout .secTit .title[data-subtxt]:before {
  font-size: 0.3rem;
}
@media print, screen and (min-width: 641px) {
  .secAbout .secTit .title[data-subtxt]:before {
    font-size: 0.46rem;
  }
}
.secAbout .aboutWrap {
  margin-top: 0.3rem;
}
@media print, screen and (min-width: 641px) {
  .secAbout .aboutWrap {
    margin-top: 0.6rem;
  }
}
@media screen, (min-width: 641px) and (max-width: 1024px) {
  .secAbout .listWrap {
    max-width: 12rem;
  }
}
.secAbout .listWrap .list {
  padding: 0.3rem;
  border: 1px solid #fff;
  background-color: transparent;
}
@media screen and (max-width: 640px) {
  .secAbout .listWrap .list + .list {
    margin-top: 0.25rem;
  }
}
.secAbout .listWrap .list .btn01 {
  margin-top: 0.2rem;
}
@media print, screen and (min-width: 641px) {
  .secAbout .listWrap .list .btn01 {
    margin-top: 0.3rem;
  }
}
.secAbout .listWrap .listTtl {
  position: relative;
  display: block;
  padding-bottom: 0.2rem;
  font-weight: 700;
  font-size: 0.16rem;
  letter-spacing: 0.05em;
  line-height: 1;
  color: #fff;
}
@media print, screen and (min-width: 641px) {
  .secAbout .listWrap .listTtl {
    padding-bottom: 0.3rem;
    font-size: 0.24rem;
  }
}
.secAbout .listWrap .listTtl::before {
  position: absolute;
  content: "";
  display: block;
  left: 0;
  bottom: 0;
  width: 0.15rem;
  height: 2px;
  background-color: #fff;
}
@media print, screen and (min-width: 641px) {
  .secAbout .listWrap .listTtl::before {
    width: 0.3rem;
  }
}
.secAbout .listWrap .txt {
  margin-top: 0.12rem;
  color: #fff;
}
@media print, screen and (min-width: 641px) {
  .secAbout .listWrap .txt {
    line-height: 2;
    font-size: 0.15rem;
  }
}
.secAbout .listWrap .listImg {
  width: 100%;
  margin-top: 0.15rem;
}
@media print, screen and (min-width: 641px) {
  .secAbout .listWrap .listImg {
    margin-top: 0.25rem;
  }
}
.secAbout .listWrap .listImg img {
  width: 100%;
  height: auto;
}
.secAbout h3 {
  text-align: center;
  color: #fff;
  font-size: 0.24rem;
  font-weight: 700;
  margin-top: 0.6rem;
  margin-bottom: 0.3rem;
}
@media screen and (max-width: 640px) {
  .secAbout h3 {
    font-size: 0.18rem;
    margin-top: 0.4rem;
    margin-bottom: 0.2rem;
  }
}
.secAbout .placeList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  max-width: 12rem;
  margin: 0 auto;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.secAbout .placeList li {
  color: #fff;
  padding: 0.2rem 0.4rem;
  border: 1px solid #14a9ab;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.secAbout .placeList__title {
  color: #14a9ab;
  font-size: 0.18rem;
  font-weight: 700;
}
.secAbout .placeList__title span {
  font-size: 0.14rem;
  background-color: #14a9a9;
  display: inline-block;
  padding: 0 6px;
  color: #fff;
  margin-right: 10px;
}
.secAbout .placeList__place {
  font-size: 0.24rem;
  font-weight: 700;
  margin-bottom: 0.1rem;
}
.secAbout .placeList__text {
  font-size: 0.15rem;
}
@media screen and (max-width: 640px) {
  .secAbout .placeList {
    display: block;
  }
  .secAbout .placeList li {
    padding: 0.1rem 0.2rem;
  }
  .secAbout .placeList li:first-child {
    margin: 0 0 0.25rem;
  }
  .secAbout .placeList__title {
    font-size: 0.16rem;
  }
  .secAbout .placeList__title span {
    font-size: 0.12rem;
    padding: 0 4px;
    margin-right: 10px;
  }
  .secAbout .placeList__place {
    font-size: 0.2rem;
  }
  .secAbout .placeList__text {
    font-size: 0.13rem;
  }
}
.secAbout .practice_place_map {
  max-width: 1200px;
  margin: 3vw auto auto auto;
  height: 500px;
}
.secAbout .practice_place_map iframe {
  width: 100%;
  height: 100%;
}

.secBlog {
  padding: 0.45rem 0.2rem 0.5rem;
  background-color: #eee;
}
@media print, screen and (min-width: 641px) {
  .secBlog {
    padding: 1.1rem 0 1.2rem;
  }
}
.secBlog .blogWrap {
  margin-top: 0.3rem;
}
@media print, screen and (min-width: 641px) {
  .secBlog .blogWrap {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    max-width: 12.4rem;
    margin: 0 auto;
    margin-top: 0.75rem;
  }
}
.secBlog .post {
  position: relative;
  display: block;
  background-color: #fff;
}
@media print, screen and (min-width: 641px) {
  .secBlog .post {
    width: 5.9rem;
  }
}
@media screen and (max-width: 640px) {
  .secBlog .post + .post {
    margin-top: 0.2rem;
  }
}
.no-touchevents .secBlog .post {
  -webkit-transition: 0.5s cubic-bezier(0.77, 0, 0.175, 1);
  transition: 0.5s cubic-bezier(0.77, 0, 0.175, 1);
}
.secBlog .post::before, .secBlog .post::after {
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  top: 0;
  left: 0;
}
.secBlog .post::before {
  background-color: #14a9ab;
  -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.77, 0, 0.175, 1);
  transition: -webkit-transform 0.4s cubic-bezier(0.77, 0, 0.175, 1);
  transition: transform 0.4s cubic-bezier(0.77, 0, 0.175, 1);
  transition: transform 0.4s cubic-bezier(0.77, 0, 0.175, 1), -webkit-transform 0.4s cubic-bezier(0.77, 0, 0.175, 1);
  -webkit-transform-origin: right top;
          transform-origin: right top;
  -webkit-transform: scaleX(0);
          transform: scaleX(0);
  z-index: 2;
}
.secBlog .post::after {
  width: 0.45rem;
  background-color: #011226;
  -webkit-transform-origin: left top;
          transform-origin: left top;
  transition: 0.3s 0.2s cubic-bezier(0.77, 0, 0.175, 1), -webkit-transform 0.4s cubic-bezier(0.77, 0, 0.175, 1);
}
.no-touchevents .secBlog .post:hover::before {
  -webkit-transform: scaleX(1);
          transform: scaleX(1);
  -webkit-transform-origin: left top;
          transform-origin: left top;
}
.no-touchevents .secBlog .post:hover::after {
  -webkit-transform: scaleX(0);
          transform: scaleX(0);
  transition: all 0.4s 0.6s cubic-bezier(0.77, 0, 0.175, 1), -webkit-transform 0.4s cubic-bezier(0.77, 0, 0.175, 1);
}
.no-touchevents .secBlog .post:hover .postImg img {
  -webkit-filter: brightness(1.1);
          filter: brightness(1.1);
}
.secBlog .post .postLink {
  display: block;
  padding: 0.3rem;
}
.secBlog .post .cat {
  display: inline-block;
  padding: 0.02rem 0.12rem;
  text-align: center;
  font-weight: 700;
  font-size: 0.11rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
  background-color: #00cacc;
}
@media print, screen and (min-width: 641px) {
  .secBlog .post .cat {
    padding: 0.03rem 0.2rem 0.01rem;
    font-size: 0.13rem;
  }
}
.secBlog .post .postTtl {
  font-weight: 700;
  letter-spacing: 0.05em;
}
@media print, screen and (min-width: 641px) {
  .secBlog .post .postTtl {
    -webkit-line-clamp: 1;
  }
}
.secBlog .post .postTxt {
  font-size: 0.12rem;
}
@media screen and (max-width: 640px) {
  .secBlog .post .postTxt {
    -webkit-line-clamp: 4;
  }
}
@media print, screen and (min-width: 641px) {
  .secBlog .post .postTxt {
    -webkit-line-clamp: 2;
    height: 0.549rem;
  }
}
.secBlog .post .more {
  text-align: right;
  font-weight: 700;
  font-size: 0.12rem;
  letter-spacing: 0.05em;
  line-height: 1;
  color: #00cacc;
}
@media print, screen and (min-width: 641px) {
  .secBlog .post:first-of-type::after {
    width: 0.9rem;
  }
}
@media print, screen and (min-width: 641px) {
  .secBlog .post:first-of-type .postTxt,
  .secBlog .post:first-of-type .more {
    font-size: 0.15rem;
  }
  .secBlog .post:first-of-type .more {
    margin-top: 0.05rem;
  }
  .secBlog .post:first-of-type .postLink {
    padding: 0.85rem 0.7rem 0.9rem;
  }
}
.secBlog .post:first-of-type .postTtl {
  margin: 0.08rem 0;
  font-weight: 700;
  letter-spacing: 0.05em;
  font-size: 0.16rem;
  line-height: 1.7;
}
@media print, screen and (min-width: 641px) {
  .secBlog .post:first-of-type .postTtl {
    margin: 0.15rem 0 0.16rem;
    font-size: 0.24rem;
  }
}
.secBlog .post:first-of-type .bottom {
  position: relative;
  padding-top: 0.15rem;
  z-index: 1;
}
@media print, screen and (min-width: 641px) {
  .secBlog .post:first-of-type .bottom {
    padding-top: 0.25rem;
  }
}
.secBlog .post:first-of-type .bottom::before {
  position: absolute;
  content: "";
  display: block;
  top: 0;
  left: 0;
  width: 0.15rem;
  height: 2px;
  background-color: #00cacc;
  z-index: 1;
}
@media print, screen and (min-width: 641px) {
  .secBlog .post:first-of-type .bottom::before {
    width: 0.3rem;
  }
}
.secBlog .post:first-of-type .postImg {
  margin-top: 0.2rem;
  width: 100%;
}
@media print, screen and (min-width: 641px) {
  .secBlog .post:first-of-type .postImg {
    margin-top: 0.35rem;
  }
}
.secBlog .post:first-of-type .postImg span {
  position: relative;
  display: block;
}
.secBlog .post:first-of-type .postImg span::before {
  content: "";
  display: block;
  padding-top: 65.4%;
}
.secBlog .post:first-of-type .postImg img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.no-touchevents .secBlog .post:first-of-type .postImg img {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media print, screen and (min-width: 641px) {
  .secBlog .post:nth-of-type(n + 2) {
    height: 31%;
  }
  .secBlog .post:nth-of-type(n + 2) .postTxt,
  .secBlog .post:nth-of-type(n + 2) .more {
    font-size: 0.14rem;
  }
}
@media print, screen and (min-width: 641px) {
  .secBlog .post:nth-of-type(n + 2)::after {
    width: 0.5rem;
  }
}
.secBlog .post:nth-of-type(n + 2) .postLink {
  position: relative;
  display: block;
}
@media print, screen and (min-width: 641px) {
  .secBlog .post:nth-of-type(n + 2) .postLink {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 0.5rem 0.5rem 0.6rem;
  }
}
@media print, screen and (min-width: 641px) {
  .secBlog .post:nth-of-type(n + 2) .ttlWrap {
    width: 2.9rem;
  }
}
.secBlog .post:nth-of-type(n + 2) .postTtl {
  margin-top: 0.08rem;
  font-size: 0.14rem;
  line-height: 1.7;
}
@media print, screen and (min-width: 641px) {
  .secBlog .post:nth-of-type(n + 2) .postTtl {
    margin-top: 0.1rem;
    font-size: 0.16rem;
  }
}
.secBlog .post:nth-of-type(n + 2) .bottom {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 0.1rem;
}
@media print, screen and (min-width: 641px) {
  .secBlog .post:nth-of-type(n + 2) .bottom {
    margin-top: 0;
  }
}
.secBlog .post:nth-of-type(n + 2) .txtBox {
  width: 51.8%;
}
@media print, screen and (min-width: 641px) {
  .secBlog .post:nth-of-type(n + 2) .txtBox {
    position: absolute;
    display: block;
    width: 2.9rem;
    top: 1.15rem;
    left: 42.4%;
  }
}
.secBlog .post:nth-of-type(n + 2) .postImg {
  width: 43.6%;
}
@media print, screen and (min-width: 641px) {
  .secBlog .post:nth-of-type(n + 2) .postImg {
    width: 1.75rem;
  }
}
.secBlog .post:nth-of-type(n + 2) .postImg span {
  position: relative;
  display: block;
  width: 100%;
  height: auto;
}
.secBlog .post:nth-of-type(n + 2) .postImg span::before {
  content: "";
  display: block;
  padding-top: 66.6666%;
}
@media print, screen and (min-width: 641px) {
  .secBlog .post:nth-of-type(n + 2) .postImg span::before {
    padding-top: 64.7%;
  }
}
.secBlog .post:nth-of-type(n + 2) .postImg img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media print, screen and (min-width: 641px) {
  .secBlog .post:nth-of-type(n + 3) {
    position: absolute;
    right: 0;
  }
  .secBlog .post:nth-of-type(3) {
    top: 34.5%;
  }
  .secBlog .post:nth-of-type(4) {
    bottom: 0;
  }
}

.sponsorArea {
  padding: 0.47rem 0 0.55rem;
}
@media print, screen and (min-width: 641px) {
  .sponsorArea {
    padding: 1.1rem 0 1.5rem;
  }
}
.sponsorArea .secTit .title {
  padding-top: 0.37rem;
}
@media print, screen and (min-width: 641px) {
  .sponsorArea .secTit .title {
    padding-top: 0.6rem;
  }
}
.sponsorArea .secTit .title[data-subtxt]:before {
  font-size: 0.3rem;
  letter-spacing: 0.03em;
}
@media print, screen and (min-width: 641px) {
  .sponsorArea .secTit .title[data-subtxt]:before {
    font-size: 0.4rem;
  }
}
.sponsorArea .banWrap {
  padding: 0 0.2rem;
  margin-top: 0.28rem;
}
@media print, screen and (min-width: 641px) {
  .sponsorArea .banWrap {
    max-width: 10.3rem;
    padding: 0;
    margin: 0.7rem auto 0;
  }
}
.sponsorArea .banWrap .banList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 640px) {
  .sponsorArea .banWrap .banList {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media print, screen and (min-width: 641px) {
  .sponsorArea .banWrap .banList {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}
.sponsorArea .banWrap .list {
  width: calc((100% - 0.1rem) / 2);
}
@media screen and (max-width: 640px) {
  .sponsorArea .banWrap .list:nth-of-type(even) {
    margin-left: 0.1rem;
  }
  .sponsorArea .banWrap .list:nth-of-type(n + 3) {
    margin-top: 0.1rem;
  }
}
@media print, screen and (min-width: 641px) {
  .sponsorArea .banWrap .list {
    width: calc((100% - 0.8rem) / 5);
    margin-left: 0.2rem;
  }
  .sponsorArea .banWrap .list:nth-of-type(5n + 1) {
    margin-left: 0;
  }
  .sponsorArea .banWrap .list:nth-of-type(n + 6) {
    margin-top: 0.2rem;
  }
}
.no-touchevents .sponsorArea .banWrap .list {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.no-touchevents .sponsorArea .banWrap .list:hover {
  -webkit-filter: brightness(1.1);
          filter: brightness(1.1);
}
.sponsorArea .banWrap img {
  width: 100%;
  height: auto;
}