@charset "utf-8";

.pageHome header { 
	transform: translate(0, -80px); 
}
.pageHome header.is-fixed {
	top: 0;
	left: 0;
	transform: translate(0, 0);
	transition: transform .2s;
}
@media screen and (max-width: 960px) {
.pageHome .header__inner > .header__logo,
.pageHome .header__inner > .btnSupportDdonation {
	display: none;
}
.pageHome .header__navTrigger.trigger--open {}
.pageHome header {
	background: none;
	transform: initial;
}
.pageHome header.is-open {
	height: 100%;
}
.pageHome header.is-fixed {
	top: 0;
	left: 0;
	transform: initial!important;
	transition: initial!important;
}
}

main.pageIndex {
   padding-top: 0;
}
.fv {
   position: relative;
   background: url("../img/index/fv_pic_bg01.jpg") no-repeat 0 0;
   background-repeat: no-repeat;
   padding: 90px 0 0;
}
.fv::after {
   position: absolute;
   display: block;
   content: "";
   width: 100%;
   height: 360px;
   background-color: #f2f2f2;
   bottom: 0;
}
.fv__title {
   clear: both;
   position: relative;
   width: 300px;
   font-size: 2rem;
   margin: 0 auto 60px;
   text-align: center;
}
.fv__title::before {
   position: absolute;
   content: "";
   display: block;
   width: 100%;
   height: 1px;
   background-color: #808080;
   top: 230px;
   left: 0;
}
.fv__title img {
   width: 192px;
   margin-bottom: 50px;
}
.fv__nav {
	margin: 0;
	padding: 0 100px 0 0;
	background-color: #68c3c5;
}
.fv .btnSupportDdonation {
	top: 22px;
	z-index: 99;
}
.fv__slider {
	width: 900px;
	margin: 0 auto;
	padding: 25px 0 60px;
	position: relative;
	clear: both;
}
.fv__slider .swiper-slide {
	width: 300px!important;
}
.fv__slider .swiper-button-next,
.fv__slider .swiper-button-prev {
	color: #b3b3b3;
	top: initial;
	bottom: 10px;
}
.fv__slider .swiper-button-next {
	right: 0;
}
.fv__slider .swiper-button-prev {
	left: 0;
}
.fv__slider .swiper-button-prev.swiper-button-disabled,
.fv__slider .swiper-button-next.swiper-button-disabled {
	opacity: 0;
}
.swiper-button-next:after, 
.swiper-button-prev:after {
	font-size: 2.0rem;
}


.pageIndex h2 {
   font-family: 'Barlow', sans-serif;
   font-weight: 600;
   font-size: 8.4rem;
   letter-spacing: 0.1em;
   line-height: 0.5;
   color: #68c3c5;
   text-align: left;
}
.pageIndex .news {
   position: relative;
   padding: 100px 0 120px;
}
.pageIndex .news span {
   display: inline-block;
   margin: 0 15px 0 0;
}
.pageIndex .news__title {
   width: 800px;
   font-size: 1.3rem;
   color: #333;
   padding: 0 15px 15px;
   margin: 0 auto;
}
.pageIndex .news__list {
   width: 800px;
   padding: 15px;
   margin: 0 auto 40px;
   border-top: 1px solid #cccccc;
   border-bottom: 1px solid #cccccc;
}
.pageIndex .news__item {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -ms-flex-wrap: wrap;
   flex-wrap: wrap;
   -webkit-box-pack: justify;
   -ms-flex-pack: justify;
   justify-content: space-between;
   -webkit-box-align: start;
   -ms-flex-align: start;
   align-items: flex-start;
   padding: 15px 0;
   border-top: 1px dotted #cccccc;
}
.pageIndex .news__item span {
   font-size: 1.2rem;
}
.pageIndex .news__item span:first-child {
   display: inline-block;
   width: 7em;
   background-color: #68c3c5;
   color: #FFF;
   border-radius: 5px;
   text-align: center;
}
.pageIndex .news__item a {
   width: 560px;
}
.pageIndex .news__item:first-child {
   border: none;
}
.pageIndex .news__link {
   width: 700px;
   margin: 0 auto;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-pack: justify;
   -ms-flex-pack: justify;
   justify-content: space-between;
}
.pageIndex .news__link a {
   position: relative;
   display: inline-block;
   background-color: #68c3c5;
   color: #FFF;
   text-align: center;
   border-radius: 5px;
   font-size: 1.6rem;
   font-weight: 700;
   line-height: 50px;
   padding: 0 45px 0 25px;
}
/* about */
.pageIndex .aboutscw {
   position: relative;
   padding: 0 0 150px;
   text-align: center;
   z-index: -1;
}
.pageIndex .aboutscw__parallax {
   width: 100%;
   height: 400px;
   background-image: url("../img/index/aboutscw_pic_bg01@2x.jpg");
   background-image: image-set(url("../img/index/aboutscw_pic_bg01.jpg") 1x, url("../img/index/aboutscw_pic_bg01@2x.jpg") 2x);
   background-image: -webkit-image-set(url("../img/index/aboutscw_pic_bg01.jpg") 1x, url("../img/index/aboutscw_pic_bg01@2x.jpg") 2x);
   background-repeat: no-repeat;
   background-size: cover;
   background-position: center top;
   margin-bottom: 50px;
}
.pageIndex .aboutscw__title {
   font-size: 2rem;
   font-weight: 700;
   text-align: center;
   margin-bottom: 30px;
}
.pageIndex .aboutscw__subtitle {
   font-size: 3.6rem;
   font-weight: 700;
   margin-bottom: 10px;
}
.pageIndex .aboutscw__text {
   position: relative;
   font-size: 2rem;
   padding-bottom: 30px;
}
.pageIndex .aboutscw__text::after {
   position: absolute;
   display: block;
   content: "";
   width: 200px;
   height: 2px;
   background-color: #808080;
   left: 50%;
   bottom: 0;
   transform: translate(-50%, 0);
   -webkit-transform: translate(-50%, 0);
   -ms-transform: translate(-50%, 0);
}
.pageIndex .aboutscw::before, .pageIndex .aboutscw::after {
   content: "";
   position: absolute;
   width: 0;
   height: 0;
   margin: auto;
   z-index: 10;
   left: 50%;
   bottom: 138px;
   transform: translate(-50%, 0);
   -webkit-transform: translate(-50%, 0);
   -ms-transform: translate(-50%, 0);
   border-style: solid;
   border-width: 12px 9px 0 9px;
}
.pageIndex .aboutscw::before {
   border-style: solid;
   border-width: 12px 9px 0 9px;
   border-color: #808080 transparent transparent transparent;
}
.pageIndex .aboutscw::after {
   border-color: #FFF transparent transparent transparent;
   bottom: 142px;
}
/* articleTitle */
.pageIndex .articleTitle {
   margin-bottom: 190px;
}
.pageIndex .articleTitle--photo {
   position: relative;
}
.pageIndex .articleTitle--photo img {
   position: absolute;
   top: -50px;
   right: -80px;
   width: 500px;
   z-index: -1;
}
.pageIndex h2 span {
   font-size: 2.4rem;
   margin-left: 4em;
}
.pageIndex .articleTitle.articleTitle--right h2 {
   text-align: right;
}
.pageIndex .articleTitle.articleTitle--right h2 span {
   margin-right: 4em;
}
.pageIndex .articleTitle--right.articleTitle--photo img {
   right: auto;
   left: -80px;
}
.pageIndex .articleBg {
   position: relative;
   padding-bottom: 75px;
   margin-bottom: 150px;
}
.pageIndex .articleBg::after {
   position: absolute;
   content: "";
   display: block;
   width: 100%;
   height: 100%;
   background-color: #f5f5f5;
   top: 25px;
   z-index: -10;
}
/* philosophy */
.pageIndex .philosophy {
   text-align: center;
}
.pageIndex .philosophy__title {
   font-size: 3rem;
   margin-bottom: 40px;
}
.pageIndex .philosophy__text + .philosophy__text {
   margin-top: 20px;
}
.pageIndex .philosophyItem__title {
   position: relative;
   font-family: 'Barlow', sans-serif;
   font-weight: 700;
   font-size: 4rem;
   color: #68c3c5;
   padding-top: 100px;
   margin: 30px 0 10px;
   line-height: 1;
}
.pageIndex .philosophyItem__title span {
   font-size: 1.6rem;
}
.pageIndex .philosophyItem__title::before {
   position: absolute;
   content: "";
   width: 2px;
   height: 55px;
   background-color: #68c3c5;
   top: 15px;
   left: 50%;
   transform: translate(-50%, 0);
   -webkit-transform: translate(-50%, 0);
   -ms-transform: translate(-50%, 0);
}
.pageIndex .philosophyItem__title::after {
   position: absolute;
   content: "";
   width: 5em;
   height: 2px;
   background-color: #68c3c5;
   left: 50%;
   transform: translate(-50%, 10px);
   -webkit-transform: translate(-50%, 10px);
   -ms-transform: translate(-50%, 10px);
}
.pageIndex .philosophyItem__text {
   font-size: 3rem;
   font-weight: 700;
}
/* basicpolicy */
.pageIndex .basicpolicy {
   padding-bottom: 100px;
}
.pageIndex .basicpolicy section {
   width: 760px;
   margin: 0 auto 50px;
}
.pageIndex .basicpolicy__title {
   font-size: 2.4rem;
   padding-bottom: 2px;
   margin-bottom: 25px;
   border-bottom: 2px solid #b3e1e2;
}
.pageIndex .basicpolicy__title--right {
   text-align: right;
}
.pageIndex .basicpolicy__title strong {
   font-size: 3rem
}
.pageIndex .basicpolicy__title span.fontBarlow--semibold {
   font-size: 4.8rem;
   color: #68c3c5;
}
.pageIndex .basicpolicy__list {
   width: 600px;
   margin: 0 auto;
}
.pageIndex .basicpolicy__list li {
   padding: 3px 15px;
   background-color: #e1f3f3;
   margin-top: 5px;
}
.pageIndex .basicpolicy__list li:first-child {
   margin-top: 0;
}
.pageIndex .basicpolicySymbol {
   width: 800px;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -ms-flex-wrap: wrap;
   flex-wrap: wrap;
   -webkit-box-pack: justify;
   -ms-flex-pack: justify;
   justify-content: space-between;
   border-top: 1px solid #ccc;
   border-bottom: 1px solid #ccc;
   padding: 40px 0;
   margin: 100px auto !important;
}
.pageIndex .basicpolicySymbol__left {
   width: 218px;
   margin-top: -20px;
   padding: 0 30px;
   box-sizing: border-box;
}
.pageIndex .basicpolicySymbol__left .fontBarlow--semibold {
   color: #808080;
   display: inline-block;
   margin-bottom: 50px;
}
.pageIndex .basicpolicySymbol__left img {
   display: block;
   width: 144px;
   margin: 0 auto;
}
.pageIndex .basicpolicySymbol__right {
   width: calc(100% - 218px);
}
.pageIndex .basicpolicySymbol__title {
   font-size: 1.8rem;
}
.pageIndex .basicpolicySymbol__text {
   margin-top: 15px;
}
.pageIndex .basicpolicyMessage {
   position: relative;
   width: 960px !important;
   padding: 65px 100px 40px;
   background-color: #fce8f0;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -ms-flex-wrap: wrap;
   flex-wrap: wrap;
   -webkit-box-pack: justify;
   -ms-flex-pack: justify;
   justify-content: space-between;
}
.pageIndex .basicpolicyMessage__title {
   position: absolute;
   top: 40px;
   left: 40px;
   color: #ee8ab5;
   font-size: 6rem;
   letter-spacing: 0.06em;
   line-height: 0.6;
}
.pageIndex .basicpolicyMessage__title span {
   display: inline-block;
   font-size: 1.2rem;
   line-height: 1.4;
   letter-spacing: 0.04em;
}
.pageIndex .basicpolicyMessage__left {
   width: 200px;
}
.pageIndex .basicpolicyMessage__leftText {
   margin: 10px 0 0;
   font-size: 2.1rem;
   line-height: 1.4;
}
.pageIndex .basicpolicyMessage__leftText span {
   font-size: 1.4rem;
}
.pageIndex .basicpolicyMessage__right {
   width: 520px;
}
.pageIndex .basicpolicyMessage__text {
   padding-bottom: 15px;
}
.pageIndex .basicpolicyMessage__text:last-of-type {
   margin-bottom: 0;
}
.pageIndex .features section {
   width: 760px;
   margin: 0 auto 50px;
}
.pageIndex .features section:last-of-type {
   margin-bottom: 0;
}
.pageIndex .features__title {
   font-size: 2.4rem;
   padding-bottom: 2px;
   margin-bottom: 25px;
   border-bottom: 2px solid #b3e1e2;
}
.pageIndex .features__title--right {
   text-align: right;
}
.pageIndex .features__title span.fontBarlow--semibold {
   font-size: 4.8rem;
   color: #68c3c5;
}
.pageIndex .member {
   padding-bottom: 100px;
}
.pageIndex .member section {
   width: 760px;
   margin: 0 auto 50px;
}
.pageIndex .member__intro {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-pack: justify;
   -ms-flex-pack: justify;
   justify-content: space-between;
   -webkit-box-align: start;
   -ms-flex-align: start;
   align-items: flex-start;
   padding: 30px;
   margin-top: 20px;
   background-color: #f5f5f5;
}
.pageIndex .member__intro img:first-of-type {
   width: 130px;
}
.pageIndex .member__intro .meberIntoro__info {
   width: 550px;
}
.pageIndex .memberIntoro__name {
   font-size: 2.4rem;
   font-weight: 700;
}
.pageIndex .memberIntoro__name span {
   display: inline-block;
   font-size: 1.4rem;
   margin-left: 15px;
}
.pageIndex .memberIntro__position {
   color: #808080;
   border-bottom: 1px solid #cccccc;
   padding-bottom: 10px;
   margin-bottom: 10px;
}
.pageIndex .memberPartners__title {
   text-align: center;
   color: #68c3c5;
   font-size: 1.6rem;
   margin-bottom: 30px;
}
.pageIndex .memberPartners__title span {
   display: inline-block;
   font-size: 4rem;
   padding-bottom: 1px;
   margin-bottom: 5px;
   border-bottom: 2px solid #68c3c5;
}
.pageIndex .member__message {
   background-color: #fce8f0;
   padding: 40px 100px;
   font-size: 1.8rem;
}
.pageIndex .member__message p + p {
   margin-top: 15px;
}
.pageIndex .sitelink section {
   width: 820px;
   margin: 0 auto;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-pack: justify;
   -ms-flex-pack: justify;
   justify-content: space-between;
}
.pageIndex .overview .articleTitle {
   margin-bottom: 70px;
}
.pageIndex .overview section {
   width: 800px;
   margin: 0 auto;
}
.pageIndex .overview__list {
   border-top: 1px solid #ccc;
   font-size: 1.8rem;
}
.pageIndex .overview__listITem {
   border-bottom: 1px solid #ccc;
   padding: 30px 20px;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-pack: justify;
   -ms-flex-pack: justify;
   justify-content: space-between;
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
}
.pageIndex .overview__listTitle {
   width: 8em;
}
.pageIndex .overview__listTitle::after {
   content: " >";
}
.pageIndex .overview__listContent {
   width: 580px;
}
@media screen and (max-width: 960px) {
		.fv {
			margin: 0 -20px;
			padding: 60px 20px 0;
			height: auto;
			background: url("../img/index/fv_pic_bg01@2x.jpg") #f2f2f2 no-repeat 0 0 / 960px auto;
			overflow: hidden;
		}
		.fv::after {
			content: none;
		}
		.fv__title {
			font-size: 1.6rem;
			width: 200px;
			margin: 0 auto 45px;
		}
		.fv__title::before {
			 top: 170px;
		}
		.fv__title img {
			 width: 154px;
			 margin-bottom: 25px;
		}
		.fv__slider {
			width: auto;
			max-width: 560px;
			padding: 25px 25px 60px;
			top: 0;
		}
		.fv__slider .swiper-slide {
			width: 100%!important;
		}
		.fv__nav {
			display: none;
		}
		.fv .btnSupportDdonation {
			float: right;
			position: relative;
			top: 10px;
			right: 0;
		}
   .pageIndex h2 {
      font-size: 4.4rem;
      line-height: 0.6;
   }
   /* news */
   .pageIndex .news {
      padding: 50px 0 50px;
   }
   .pageIndex .news span {
		 color: #b3b3b3;
      display: inline-block;
      margin: 0 15px 0 0;
   }
   .pageIndex .news__title {
      width: auto;
      font-size: 1.1rem;
      padding: 0 0 10px 10px;
   }
   .pageIndex .news__title span {
      font-size: 1.6rem;
   }
   .pageIndex .news__list {
      width: auto;
      padding: 10px;
      margin: 0 auto 30px;
   }
   .pageIndex .news__item {
      -webkit-box-pack: start;
      -ms-flex-pack: start;
      justify-content: flex-start;
      padding: 12px 0;
   }
   .pageIndex .news__item a {
      width: 100%;
      margin-top: 8px;
   }
   .pageIndex .news__link {
      width: auto;
      margin: 0 auto;
      display: block;
   }
   .pageIndex .news__link a {
      width: 75%;
      display: block;
      border-radius: 5px;
      font-size: 1.4rem;
      line-height: 1.25;
      padding: 15px;
      margin: 0 auto;
   }
   .pageIndex .news__link a + a {
      margin-top: 10px;
   }
   /* about */
   .pageIndex .aboutscw {
      margin: 0 -20px;
   }
   .pageIndex .aboutscw__parallax {
      height: 200px;
      margin-bottom: 50px;
   }
   .pageIndex .aboutscw__title {
      font-size: 1.4rem;
      line-height: 1;
      margin-bottom: 20px;
   }
   .pageIndex .aboutscw__subtitle {
      font-size: 2rem;
      margin-bottom: 10px;
   }
   .pageIndex .aboutscw__text {
      font-size: 1.4rem;
      padding-bottom: 20px;
   }
   .pageIndex .aboutscw__text::after {
      width: 140px;
   }
   .pageIndex .aboutscw::before, .pageIndex .aboutscw::after {
      bottom: 140px;
      border-width: 10px 7px 0 7px;
   }
   .pageIndex .aboutscw::before {
      border-width: 10px 7px 0 7px;
   }
   .pageIndex .aboutscw::after {
      bottom: 144px;
   }
   /* articleTitle */
   .pageIndex .articleTitle {
      margin-bottom: 25px;
   }
   .pageIndex .articleTitle--photo img {
      position: absolute;
      top: -195px;
      right: 0;
      width: auto;
      height: 170px;
   }
   .pageIndex h2 span {
      font-size: 1.8rem;
      margin-left: 0;
   }
   .pageIndex .articleTitle.articleTitle--right h2 span {
      margin-right: 0;
   }
   .pageIndex .articleTitle--right.articleTitle--photo img {
      right: auto;
      left: -80px;
   }
   .pageIndex .articleBg {
      position: relative;
      padding: 110px 0 130px;
      margin-bottom: 110px;
   }
   .pageIndex .articleBg::after {
      position: absolute;
      content: "";
      display: block;
      width: 100vw;
      height: 100%;
      background-color: #f5f5f5;
      top: 0;
      left: -20px;
      z-index: -10;
   }
   /* philosophy */
   .pageIndex .philosophy__title {
      font-size: 1.8rem;
      margin-bottom: 30px;
   }
   .pageIndex .philosophy__text + .philosophy__text {
      margin-top: 15px;
   }
   .pageIndex .philosophyItem__title {
      font-size: 2.4rem;
      color: #68c3c5;
      padding-top: 70px;
      margin: 20px 0 10px;
   }
   .pageIndex .philosophyItem__title span {
      font-size: 1.2rem;
   }
   .pageIndex .philosophyItem__title::before {
      height: 50px;
      top: 0;
   }
   .pageIndex .philosophyItem__title::after {
      height: 1px;
      transform: translate(-50%, 5px);
      -webkit-transform: translate(-50%, 5px);
      -ms-transform: translate(-50%, 5px);
   }
   .pageIndex .philosophyItem__text {
      font-size: 1.8rem;
   }
   /* basicpolicy */
   .pageIndex .basicpolicy {
      padding-bottom: 100px;
   }
   .pageIndex .basicpolicy section {
      width: auto;
      margin: 0 auto 30px;
   }
   .pageIndex .basicpolicy__title {
      font-size: 1.8rem;
      margin-bottom: 15px;
   }
   .pageIndex .basicpolicy__title--right {
      text-align: right;
   }
   .pageIndex .basicpolicy__title strong {
      font-size: 2.4rem
   }
   .pageIndex .basicpolicy__title span.fontBarlow--semibold {
      font-size: 4rem;
      display: block;
      line-height: 1;
   }
   .pageIndex .basicpolicy__list {
      width: auto;
      margin: 0 20px;
   }
   .pageIndex .basicpolicySymbol {
      width: auto;
      display: block;
      border-top: 1px solid #ccc;
      border-bottom: 1px solid #ccc;
      padding: 20px 0;
      margin: 50px auto !important;
   }
   .pageIndex .basicpolicySymbol__left {
      width: auto;
      margin-top: 0;
      padding: 0 20px;
      margin-bottom: 30px;
      box-sizing: border-box;
   }
   .pageIndex .basicpolicySymbol__left .fontBarlow--semibold {
      color: #808080;
      display: inline-block;
      margin-bottom: 10px;
   }
   .pageIndex .basicpolicySymbol__left img {
      display: block;
      width: 144px;
      margin: 0 auto;
   }
   .pageIndex .basicpolicySymbol__right {
      width: auto;
   }
   .pageIndex .basicpolicySymbol__title {
      font-size: 1.8rem;
      margin: 0 20px;
   }
   .pageIndex .basicpolicySymbol__text {
      margin: 10px 20px;
   }
   .pageIndex .basicpolicyMessage {
      width: auto !important;
      padding: 35px 20px 0;
      display: block;
   }
   .pageIndex .basicpolicyMessage__title {
      top: 14px;
      left: 20px;
      font-size: 3.6rem;
      line-height: 0.9;
   }
   .pageIndex .basicpolicyMessage__title span {
      font-size: 1.1rem;
      line-height: 1.3;
   }
   .pageIndex .basicpolicyMessage__left {
      width: calc(100% - 60px);
      margin: 0 auto 10px;
   }
   .pageIndex .basicpolicyMessage__right {
      width: auto;
   }
   .pageIndex .features section {
      width: auto;
      margin: 0 auto 20px;
   }
   .pageIndex .features section:last-of-type {
      margin-bottom: 0;
   }
   .pageIndex .features__title {
      font-size: 1.8rem;
      padding-bottom: 5px;
      margin-bottom: 15px;
   }
   .pageIndex .features__title--right {
      text-align: right;
   }
   .pageIndex .features__title span.fontBarlow--semibold {
      font-size: 4rem;
      display: block;
   }
   .pageIndex .member {
      padding-bottom: 80px;
   }
   .pageIndex .member section {
      width: auto;
      margin: 0 auto 30px;
   }
   .pageIndex .member__intro {
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      padding: 20px;
      margin: 20px;
   }
   .pageIndex .member__intro img:first-of-type {
      margin-bottom: 15px;
   }
   .pageIndex .member__intro .meberIntoro__info {
      width: calc(100% - 140px);
   }
   .pageIndex .memberIntoro__name {
      font-size: 1.8rem;
      margin: 10px 0;
      line-height: 1.3;
   }
   .pageIndex .memberIntoro__name span {
      display: block;
      font-size: 1.2rem;
      margin: 0;
   }
   .pageIndex .memberIntro__position {
      font-size: 1.2rem;
      border-bottom: none;
      padding-bottom: 0;
   }
   .pageIndex .memberPartners__title {
      font-size: 1.2rem;
      margin-bottom: 20px;
   }
   .pageIndex .memberPartners__title span {
      font-size: 2.6rem;
      letter-spacing: 0.05em;
   }
   .pageIndex .member__message {
      padding: 20px;
      font-size: 1.4rem;
   }
   .pageIndex .member__message p + p {
      margin-top: 15px;
   }
   .pageIndex .overview.articleBg {
      padding: 0 0 30px;
      margin-bottom: 60px;
   }
   .pageIndex .overview.articleBg::after {
      top: 15px;
   }
   .pageIndex .overview .articleTitle {
      margin-bottom: 30px;
   }
   .pageIndex .overview section {
      width: auto;
      margin: 0 20px;
   }
   .pageIndex .overview__list {
      font-size: 1.4rem;
   }
   .pageIndex .overview__listITem {
      border-bottom: 1px solid #ccc;
      padding: 20px 0;
      display: block;
   }
   .pageIndex .overview__listTitle {
      width: auto;
      margin-bottom: 5px;
   }
   .pageIndex .overview__listContent {
      width: auto;
   }
   .pageIndex .sitelink section {
      width: auto;
   }
   .pageIndex .sitelink section a {
      width: 48.5%;
   }
}
@media screen and (max-width: 640px) {
   .pageIndex .sitelink section {
      display: block;
   }
   .pageIndex .sitelink section a {
      width: 100%;
      display: block;
   }
   .pageIndex .sitelink section a + a {
      margin-top: 3%;
   }
}
/* 404 */
.notfound {
   font-size: 3.6rem;
   font-family: WoG_bold !important;
   letter-spacing: 3px;
   line-height: 1.5;
   margin: 150px 0;
   text-align: center;
}
@media screen and (max-width: 960px) {
   .notfound {
      font-size: 3rem;
      margin: 100px 0;
   }
}
/* mailform */
.mailform.memberApplication .pageheader h2 {
   color: #3fb7f2;
}
.mailform.supporterApplication .pageheader h2 {
   color: #55ab78;
}
.mailform .article_title01 {
   font-size: 1.8rem;
   font-family: initail;
   line-height: 1;
   width: 250px;
   padding: 15px;
   margin-bottom: -10px;
   background: #d292bd;
}
.mailform .article_title01::after {
   background: #d292bd;
}
.mailform .wrap {
   width: 600px;
   text-align: center;
}
.mailform_block {
   border-top: 1px solid #cccccc;
   padding: 40px 40px 0;
   margin-bottom: 100px;
}
.mailform_block-noborder {
   border-top: none;
   padding: 0 40px;
   margin-bottom: 100px;
}
.mailform_item {
   position: relative;
   width: 100%;
   display: inline-block;
   padding-bottom: 5px;
   margin: 40px 0 20px;
}
.mailform_item::before {
   content: "";
   position: absolute;
   width: 170px;
   height: 2px;
   background-color: #e6e6e6;
   left: 50%;
   bottom: 0;
   transform: translate(-50%, 0);
   -webkit-transform: translate(-50%, 0);
   -ms-transform: translate(-50%, 0);
}
.mailform_item span::before, .mailform_item span::after {
   content: "";
   position: absolute;
   width: 0;
   height: 0;
   margin: auto;
   z-index: 10;
   left: 50%;
   bottom: -10px;
   transform: translate(-50%, 0);
   -webkit-transform: translate(-50%, 0);
   -ms-transform: translate(-50%, 0);
   border-style: solid;
   border-width: 12px 9px 0 9px;
}
.mailform_item span::before {
   border-style: solid;
   border-width: 12px 9px 0 9px;
   border-color: #e6e6e6 transparent transparent transparent;
}
.mailform_item span::after {
   border-color: #FFF transparent transparent transparent;
   bottom: -7px;
}
.mailform_block input[type="text"], .mailform_block input[type="url"], .mailform_block input[type="email"], .mailform_block input[type="tel"], .mailform_block textarea {
   width: 100%;
   max-width: 520px;
   padding: 5px 8px;
   border: 4px solid #e6e6e6;
   border-radius: 7px;
   box-sizing: border-box;
}
.mailform_block textarea {
   height: 200px;
}
.mailform_block input:focus, .mailform_block textarea:focus {
   outline: none;
   border: 4px solid #f1deeb;
   -webkit-box-shadow: inset 0 0 5px rgba(210, 146, 186, 0.2);
   box-shadow: inner 0 0 5px rgba(210, 146, 186, 0.2)
}
.mailform_block input.wpcf7-submit {
   position: relative;
   display: block;
   width: 200px;
   height: 60px;
   margin: 40px auto 0;
   background: url("../img/common/icon_arrow_white_r.svg") #3fb7f2 center right 20px no-repeat;
   background-size: 17px 11px;
   cursor: pointer;
   border: none !important;
   border-radius: 7px;
   color: #fff;
   text-align: center;
   text-decoration: none;
   outline: none;
}
.mailform.supporterApplication .mailform_block input.wpcf7-submit {
   background-color: #55ab78;
}
.wpcf7 form .wpcf7-response-output {
   padding: 1em 1.5em !important;
   border-radius: 7px;
   color: #FFF;
   border: none !important;
}
.wpcf7 form.sent .wpcf7-response-output {
   background-color: #96c7b7; /* Green */
}
.wpcf7 form.failed .wpcf7-response-output, .wpcf7 form.aborted .wpcf7-response-output {
   background-color: #eec07b; /* Red */
}
.wpcf7 form.spam .wpcf7-response-output {
   background-color: #e88868; /* Orange */
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output {
   background-color: #c0655a; /* Yellow */
}
.wpcf7-not-valid-tip {
   color: #c0655a !important; /* Red */
}
@media screen and (max-width: 960px) {
   .mailform .wrap {
      width: 100%;
      margin: 0;
   }
   .mailform_block {
      padding: 20px 20px 0;
      margin-bottom: 40px;
   }
   .mailform_block input[type="text"], .mailform_block input[type="url"], .mailform_block input[type="email"], .mailform_block input[type="tel"], .mailform_block textarea {
      max-width: 100%;
      -webkit-appearance: none;
   }
}