@charset 'UTF-8';
.grecaptcha-badge{
	display: none !important;
}
/********************* 共通スライド *********************/
/* pagenation */
.common-centermode-slide-pagenation{
	display: flex!important;
	justify-content: center;
}
.common-centermode-slide-pagenation .swiper-pagination-bullet{
	display: block;
}
.common-centermode-slide-pagenation .swiper-pagination-bullet::before{
	content: " ";
	border-radius: 50%;
	background-color: #ededea;
	transition: 0.3s;
	display: block;
}
.bc-ededea .common-centermode-slide-pagenation .swiper-pagination-bullet::before{
	background-color: #ccc;
}
.common-centermode-slide-pagenation .swiper-pagination-bullet.swiper-pagination-bullet-active::before{
	background-color: #666666;
}
@media screen and (min-width: 992px){
	.common-centermode-slide{
		margin-right: auto;
		margin-left: auto;
	}
}
@media screen and (min-width:992px) and (max-width:1199px){
	.common-centermode-slide{
		width: 85%;
	}
}
@media screen and (max-width: 1199px){
	.common-centermode-slide-pagenation .swiper-pagination-bullet{
		padding-right: 0.7rem;
		padding-left: 0.7rem;
	}
	.common-centermode-slide-pagenation .swiper-pagination-bullet::before{
		width: 0.7rem;
		height: 0.7rem;
	}
	.common-centermode-slide-pagenation .swiper-pagination-bullet.swiper-pagination-bullet-active::before{
		width: 1.8rem;
		border-radius: 3.5rem;
	}
}
@media screen and (min-width: 1200px){
	.common-centermode-slide{
		width: 70.58823529411765%;
	}
	.common-centermode-slide-pagenation .swiper-pagination-bullet{
		padding-right: 1.1rem;
		padding-left: 1.1rem;
	}
	.common-centermode-slide-pagenation .swiper-pagination-bullet::before{
		width: 1rem;
		height: 1rem;
	}
	.common-centermode-slide-pagenation .swiper-pagination-bullet.swiper-pagination-bullet-active::before{
		width: 2.7rem;
		border-radius: 4rem;
	}
}

/* tgl footer 共通
----------------------------------------------------------------------------------------------------*/
.common-tgl-footer-list{
	padding-left: 0;
	margin-bottom: 0;
}
.common-tgl-footer-list>li{
	list-style: none;
}
.common-tgl-footer-list>li a{
	text-decoration: none;
	color: #787878;
}
@media screen and (max-width: 1199px){
	.common-tgl-footer-list>li{
		font-size: 1.4rem;
	}
}
@media screen and (min-width: 1200px){
	.common-tgl-footer-list>li{
		font-size: 1.4rem;
	}
}

/* ================================================ */
/* post rayout
------------------------------------------------------ */
.common-post-wrap,.common-post-sp-100-wrap{
	display: flex;
	flex-wrap: wrap;
}
/* .common-item{
	display: flex;
	flex-direction: column;
} */
.swiper-initialized .swiper-slide .common-item{
	height: 100%;
}
.common-post-wrap.always-50 .common-item{
	width: 50% !important;
}
.common-item a{
	color: #313131;
	text-decoration: none;
}
.common-item>a{
	display: flex;
	flex-direction: column;
	flex: 1;
}
.common-item-img-fit{
	aspect-ratio: 1 / 0.656;
}
.common-item-img-square-fit{
	aspect-ratio: 1 / 1;
}
.common-item-img-square-fit img,.common-item-img-fit img{
	object-fit: cover;
	height: 100%;
	width: 100%;
}
.common-item-ttl{
	line-height: 1.6;
	flex: 1;
}
.common-cat-name{
	text-align: center;
}
.common-cat-name a{
	display: block;
	text-decoration: none;
}
.common-cat-name a.bc-ededea{
	color: #313131;
}
@media screen and (max-width: 575px){
	.common-post-wrap{
		margin-right: -0.6rem;
		margin-left: -0.6rem;
	}
	.common-post-wrap .common-item{
		padding-right: 0.6rem;
		padding-left: 0.6rem;
	}
	.common-post-wrap.cpw-sp-prpl-10{
		margin-right: -0.5rem;
		margin-left: -0.5rem;
	}
	.common-post-wrap.cpw-sp-prpl-10 .common-item{
		padding-right: 0.5rem;
		padding-left: 0.5rem;
	}
	.common-post-sp-100-wrap .common-item{
		width: 100%;
	}
}
@media screen and (min-width: 576px){
	.common-post-wrap,.common-post-sp-100-wrap{
		margin-right: -1.5rem;
		margin-left: -1.5rem;
	}
	.common-post-wrap .common-item,.common-post-sp-100-wrap .common-item{
		padding-right: 1.5rem;
		padding-left: 1.5rem;
	}
}
@media screen and (min-width:576px) and (max-width:991px){
	.common-post-sp-100-wrap .common-item{
		width: 50%;
	}
}
@media screen and (max-width: 991px){
	.common-post-wrap .common-item{
		width: 50%;
	}
}
@media screen and (min-width: 992px){
	.common-post-wrap .common-item,.common-post-sp-100-wrap .common-item{
		width: calc(100% / 3);
	}
}
@media screen and (max-width: 1199px){
	.common-post-wrap .common-item{
		margin-bottom: 4rem;
	}
	.common-item-img-fit,.common-item-img-square-fit{
		margin-bottom: 1.6rem;
	}
	.common-item-ttl{
		margin-bottom: 0.6rem;
	}
	.common-cat-name{
		font-size: 1rem;
		line-height: 2.2rem;
	}
	.common-cat-name a{
		border-radius: 1.1rem;
	}
	.ccn-sp-90{
		max-width: 9rem;
	}
	.common-info-item-date{
		font-size: 1.4rem;
	}
}
@media screen and (min-width: 1200px){
	.common-post-wrap .common-item{
		margin-bottom: 4.8rem;
	}
	.common-item-img-fit,.common-item-img-square-fit{
		margin-bottom: 2.4rem;
	}
	.common-item-ttl{
		margin-bottom: 2rem;
		font-size: 2rem;
		letter-spacing: 0.1em;
	}
	.common-cat-name{
		font-size: 1.5rem;
		line-height: 3.3rem;
	}
	.common-cat-name a{
		border-radius: 2rem;
	}
	.ccn-sp-90{
		max-width: 13.6rem;
	}
	.common-post-wrap.common-post-prpl-50{
		margin-right: -2.5rem;
		margin-left: -2.5rem;
	}
	.common-post-wrap.common-post-prpl-50 .common-item{
		padding-right: 2.5rem;
		padding-left: 2.5rem;
	}
	.common-info-item-date{
		font-size: 1.8rem;
	}
}
/* 各投稿ごとの設定 */
.cci-info{
	margin-bottom: 1.5rem;
}
/* ================================================ */
/* swiper arrow
------------------------------------------------------ */
.swiper-slide{
	height: auto;
}
.common-arrow{
	transition: .3s;
	text-align: center;
	position: relative;
	display: flex;
	align-items: center;
}
.common-arrow-flex{
	display: flex;
}
.common-arrow svg{
	max-width: 100%;
	height: auto;
}
.common-arrow-prev svg{
	-webkit-transform: rotate(180deg);
	        transform: rotate(180deg);
}
.common-arrow .arrow-slide-icon{
	fill: none;
	stroke-miterlimit: 10;
	stroke-width: 2px;
	transition: .3s;
}
@media screen and (max-width: 1199px){
	.common-arrow{
		width: 1.6rem;
	}
	.common-arrow-flex .common-arrow-prev{
		margin-right: 1rem;
	}
}
@media screen and (min-width: 1200px){
	.common-arrow{
		width: 2.8rem;
	}
	.common-arrow-flex .common-arrow-prev{
		margin-right: 2rem;
	}
}
/*common-simple-arrow c666*/
.common-arrow.c-666 .arrow-slide-icon {
	stroke: #666;
}
/*scrollbar*/
.common-swiper-scrollbar {
    position: relative;
	height: 1px;
}
.common-swiper-scrollbar::after {
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    margin: auto;
    content: "";
    background-color: rgb(219, 219, 219,0.5);
	border-radius: 0.2rem;
}
.common-swiper-scrollbar .swiper-scrollbar-drag {
    height: 2px;
    cursor: pointer;
    background-color: #666666;
    background-clip: content-box;
	border-radius: 0.2rem;
}
.common-swiper-scrollbar .swiper-scrollbar-drag:active {
    background-color: #666666;
}

/* ================================================ */
/* swiper pagenation
------------------------------------------------------ */
.common-swiper-pagenation{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.common-swiper-pagenation .swiper-pagination-bullet{
	display: block;
	width: 1.9rem;
}
.common-swiper-pagenation .swiper-pagination-bullet::before{
	content: " ";
	display: block;
	width: 0.5rem;
	height: 0.5rem;
	border-radius: 50%;
	border: 1px;
	border-style: solid;
	margin-right: auto;
	margin-left: auto;
	transition: .3s;
}
/*bc000*/
.bc-000 .common-swiper-pagenation .swiper-pagination-bullet{
	border-color: #fff;
}
.bc-000 .common-swiper-pagenation .swiper-pagination-bullet.swiper-pagination-bullet-active::before{
	background-color: #fff;
}
/*bcfff*/
.bc-fff .common-swiper-pagenation .swiper-pagination-bullet{
	border-color: #000;
}
.bc-fff .common-swiper-pagenation .swiper-pagination-bullet.swiper-pagination-bullet-active::before{
	background-color: #000;
}

/* ================================================ */
/* swiper fadezoom ani
------------------------------------------------------ */
@-webkit-keyframes zoom {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1.15);
            transform: scale(1.15);
  }
}
@keyframes zoom {
  0% {
    -webkit-transform: scale(1.15);
            transform: scale(1.15);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

/* トップと下層共通
----------------------------------------------------------------------------------------------------*/
/* ================================================ */
/* イベント情報
------------------------------------------------------ */
.common-event-tag .common-cat-name{
	display: inline-block;
	margin-right: 0.5em;
}
.common-event-tag .common-cat-name a{
	color: #fff;
}
.common-event-tag .common-cat-name a.bc-ededea{
	color: #313131;
}
@media screen and (max-width: 1199px){
	.common-event-tag .common-cat-name a{
		padding-right: 1.5rem;
		padding-left: 1.5rem;
	}
	.common-event-tag{
		padding-top: 0.4rem;
	}
}
@media screen and (min-width: 1200px){
	.common-event-tag .common-cat-name a{
		padding-right: 2.4rem;
		padding-left: 2.4rem;
	}
	.common-event-tag{
		padding-top: 0.8rem;
	}
}

/* ================================================ */
/* WORKS 施工事例
------------------------------------------------------ */
.common-works-tag{
	padding-left: 0;
	font-size: 1rem;
	margin-bottom: 0;
	display: flex;
	flex-wrap: wrap;
}
.common-works-tag li{
	list-style: none;
}
.common-works-tag li a{
	color: #313131;
	display: block;
}
@media screen and (max-width: 1199px){
	.common-works-item-ttl{
		margin-bottom: 1.4rem;
	}
	.common-works-tag{
		font-size: 1rem;
	}
	.common-works-tag li{
		padding-right: 0.3rem;
		padding-bottom: 0.3rem;
	}
	.common-works-tag li a{
		border-radius: 1.1rem;
		line-height: 2.2rem;
		padding-right: 0.8rem;
		padding-left: 0.8rem;
	}
}
@media screen and (min-width: 1200px){
	.common-works-item-ttl{
		margin-bottom: 2rem;
	}
	.common-works-tag{
		font-size: 1.4rem;
	}
	.common-works-tag li{
		padding-right: 1rem;
		padding-bottom: 0.8rem;
		font-size: 1.3rem;
	}
	.common-works-tag li a{
		border-radius: 1.5rem;
		line-height: 3rem;
		padding-right: 1.6rem;
		padding-left: 1.6rem;
	}
}

/* ================================================ */
/* VOICE お客様の声
------------------------------------------------------ */
.common-voice-item a{
	display: block;
	text-decoration: none;
	color: #313131;
}
.common-voice-item a:hover{
	color: #313131;
}
.common-voice-item-img-fit img{
	object-fit: cover;
	width: 100%;
	height: 100%;
}
@media screen and (max-width: 1199px){
	.common-voice-item-img-fit{
		margin-bottom: 1.6rem;
	}
	.common-voice-item-img-fit+.common-item-ttl{
		margin-bottom: 0.6rem;
	}
}
@media screen and (min-width: 1200px){
	.common-voice-item-img-fit{
		margin-bottom: 3.2rem;
	}
	.common-voice-item-img-fit+.common-item-ttl{
		margin-bottom: 2rem;
	}
}

/* ================================================ */
/* 共通
------------------------------------------------------ */
/*container*/
.container-small, .container-large, .container-single,.container-small-small,.container-large-single,.container-large-100, .container-single-single,.container-large-small,.container-single-small,.container-pc-75p {
  margin-right: auto;
  margin-left: auto;
}
.mra-mla {
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 1199px) {
	/*container*/
	.container-small, .container-large, .container-single,.container-pc-75p {
		width: 85%;
	}
	.container-small-small,.container-large-small,.container-single-small{
		width: 82.05128205128205%;
	}
	.container-large-single,.container-single-single{
		width: 71.79487179487179%;
	}
	.container-large-100{
		width: 100%;
	}
}
@media screen and (min-width: 1200px) {
	/*container*/
	.container-small,.container-small-small {
		width: 70.58823529411765%;
	}
	.container-large,.container-large-single,.container-large-small,.container-large-100 {
		width: 88.23529411764706%;
	}
	.container-single,.container-single-single,.container-single-small {
		width: 55.55555555555556%;
	}
	.container-pc-75p{
		width: 75%;
	}
}
/*font*/
.efont {
	font-family: "Amiri", serif;
	font-weight: 400;
}
.efont-gotxt {
	font-family: 'Amiri',"Zen Kaku Gothic New","Hiragino Kaku Gothic ProN","Hiragino Sans","游ゴシック体", "Yu Gothic", YuGothic,"Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif;
	font-weight: 400;
}
.txtmin {
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN","游明朝", YuMincho,"Shippori Mincho","Noto Serif JP", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.txtGot {
  font-family: "Hiragino Kaku Gothic ProN","Hiragino Sans","Zen Kaku Gothic New","游ゴシック体", "Yu Gothic", YuGothic,"Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif;
}
.efont-txtmin{
	font-family: "Amiri", "游明朝", YuMincho,"Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.font-weight-medium{
	font-weight: 500;
}
.bc-fff {
  background-color: #fff;
}
.bc-000{
	background-color: #000;
}
.bc-313131{
	background-color: #313131;
}
.bc-cf2820{
	background-color: #cf2820;
}
.bc-ededea{
	background-color: #ededed;
}
.bc-666{
	background-color: #666;
}
.bc-595959{
	background-color: #595959;
}
.bc-efc522{
	background-color: #efc522;
}

.lh-1{
	line-height: 1;
}
.lh-15{
	line-height: 1.5;
}
.lh-16{
	line-height: 1.6;
}
.lh-17{
	line-height: 1.7;
}
.lh-20{
	line-height: 2;
}
.m-ml {
  margin-left: -0.5em;
}
.fwm {
  font-weight: 500;
}
.under {
  text-decoration: underline;
}
.ls-001{
	letter-spacing: 0.01em;
}
.ls-005{
	letter-spacing: 0.05em;
}
.ls-007{
	letter-spacing: 0.07em;
}
.ls-008{
	letter-spacing: 0.08em;
}
.ls-01{
	letter-spacing: 0.1em;
}
.c-fff{
	color: #fff;
}
.c-000{
	color: #000;
}
.c-313131{
	color: #313131;
}
.c-969696{
	color: #969696;
}
.c-cf2820{
	color: #cf2820;
}
.c-636363{
	color: #636363;
}
.txt-kome {
  display: flex;
}
.txt-kome .tk-icon {
  width: 1.2em;
}
.txt-kome .tk-main {
  width: calc(100% - 1.2em);
}
.txt-small{
	font-size: 0.8em;
}
.text-1lines {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
	line-clamp: 1;
    overflow: hidden;
}
.text-2lines {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
	line-clamp: 2;
    overflow: hidden;
}
.zindex-2{
	z-index: 2;
}
.top-bfont-small{
	font-weight: 400;
}
.top-bfont-small .efont{
	letter-spacing: 0.06em;
}
.top-bfont,.top-bfont-small-sp-30{
	line-height: 1;
	font-weight: 400;
}
@media screen and (max-width: 575px){
	.br-pc {
		display: none!important;
	}
}
@media screen and (max-width: 767px) {
	.br-tab {
		display: none;
	}
}
@media screen and (min-width: 768px) {
	.sp-linkkill{
		pointer-events: none;
	}
}
@media screen and (max-width: 991px){
	.br-max-991{
		display: none;
	}
}
@media screen and (min-width: 992px) {
	.br-sp-lg {
		display: none;
	}
}
@media screen and (max-width: 1199px) {
	/*font*/
	.top-bfont-small{
		font-size: 1.4rem;
		margin-bottom: 4rem;
	}
	.top-bfont-small .efont{
		font-size: 2.8rem;
		line-height: 1.6;
	}
	.top-bfont,.top-bfont-small-sp-30{
		font-size: 1.4rem;
	}
	.top-bfont .efont{
		font-size: 3.5rem;
		padding-bottom: 1rem;
	}
	.top-bfont-small-sp-30 .efont{
		font-size: 3rem;
		padding-bottom: 1.5rem;
	}
	.sp-fsize-12{
		font-size: 1.4rem;
	}
	.sp-fsize-13{
		font-size: 1.4rem;
	}
	.sp-fsize-14{
		font-size: 1.4rem;
	}
	.sp-fsize-15{
		font-size: 1.5rem;
	}
	.sp-fsize-16{
		font-size: 1.6rem;
	}
	.sp-fsize-18{
		font-size: 1.8rem;
	}
	.text-2lines-sp {
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
		overflow: hidden;
	}
}
@media screen and (min-width: 1200px) {
	/*font*/
	.top-bfont-small{
		font-size: 1.8rem;
		margin-bottom: 5.6rem;
	}
	.top-bfont-small .efont{
		font-size: 4.2rem;
		line-height: 1.4;
	}
	.top-bfont,.top-bfont-small-sp-30{
		font-size: 1.8rem;
	}
	.top-bfont .efont{
		font-size: 5.2rem;
		padding-bottom: 1.6rem;
	}
	.top-bfont-small-sp-30 .efont{
		font-size: 4.7rem;
		padding-bottom: 1rem;
	}
	.pc-fsize-13{
		font-size: 1.3rem;
	}
	.pc-fsize-14{
		font-size: 1.4rem;
	}
	.pc-fsize-17{
		font-size: 1.7rem;
	}
	.pc-fsize-18{
		font-size: 1.8rem;
	}
	.pc-fsize-20{
		font-size: 2rem;
	}
	.text-1lines-pc {
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 1;
		overflow: hidden;
	}
}
/*hoverani*/
.img-scale {
  overflow: hidden;
  position: relative;
}
.img-scale img {
  transition: .6s;
}
a:hover .img-scale img {
  -webkit-transform: scale(1.2);
  transform: scale(1.2);
}
.link-img-opacity a img{
	transition: .3s;
}
.link-img-opacity a:hover img{
	opacity: 0.6;
}
.transition-03{
	transition: .3s;
}
/*rayout*/
.bdt-1-464646-s{
	border-top: 1px rgba(70,70,70,0.60) solid;
}
.bdb-1-464646-s{
	border-bottom: 1px rgba(70,70,70,0.60) solid;
}
.bdb-1-b4b4b4-s{
	border-bottom: 1px #b4b4b4 solid;
}
.bdb-1-dcdcdc-s{
	border-bottom: 1px rgba(220,220,220,0.60) solid;
}
.bdt-1-dcdcdc-s{
	border-top: 1px rgba(220,220,220,0.60) solid;
}
.maw-200{
	max-width: 20rem;
}
/***************swiper***************/
.common-scroll-swiper .swiper-wrapper {
	transition-timing-function: linear;
}

/*******************************
/* 枠
*******************************/
.common-row{
	display: flex;
	flex-wrap: wrap;
}
.common-row-50 .common-col{
	width: 50%;
}
.common-row-25 .common-col{
	width: 25%;
}
.common-row-33 .common-col{
	width: calc(100% / 3);
}
@media screen and (max-width: 575px){
	.common-row-33-991-50-sp-100 .common-col{
		width: 100%;
	}
}
@media screen and (min-width:575px) and (max-width:991px){
	.common-row-33-991-50-sp-100 .common-col{
		width: 50%;
	}
}
@media screen and (max-width: 767px){
	.common-row-25-767-50 .common-col{
		width: 50%;
	}
	.common-row-50-767-100 .common-col,.common-row-33-991-50-767-100 .common-col{
		width: 100%;
	}
}
@media screen and (min-width: 768px){
	.common-row-25-767-50 .common-col{
		width: 25%;
	}
	.common-row-50-767-100 .common-col{
		width: 50%;
	}
}
@media screen and (min-width:768px) and (max-width:991px){
	.common-row-33-991-50-767-100 .common-col{
		width: 50%;
	}
}
@media screen and (max-width: 991px){
	.common-row-33-991-50 .common-col{
		width: 50%;
	}
}
@media screen and (min-width: 992px){
	.common-row-33-991-50 .common-col,.common-row-33-991-50-sp-100 .common-col,.common-row-33-991-50-767-100 .common-col{
		width: calc(100% / 3);
	}
}
@media screen and (max-width: 1199px){
	.cr-prpl-100,.cr-prpl-80,.cr-prpl-60,.cr-prpl-50,.cr-prpl-40{
		margin-right: -1rem;
		margin-left: -1rem;
	}
	.cr-prpl-100 .common-col,.cr-prpl-80 .common-col,.cr-prpl-60 .common-col,.cr-prpl-50 .common-col,.cr-prpl-40 .common-col{
		padding-left: 1rem;
		padding-right: 1rem;
	}
}
@media screen and (min-width: 1200px){
	.cr-prpl-100{
		margin-right: -5rem;
		margin-left: -5rem;
	}
	.cr-prpl-100 .common-col{
		padding-left: 5rem;
		padding-right: 5rem;
	}
	.cr-prpl-80{
		margin-right: -4rem;
		margin-left: -4rem;
	}
	.cr-prpl-80 .common-col{
		padding-left: 4rem;
		padding-right: 4rem;
	}
	.cr-prpl-60{
		margin-right: -3rem;
		margin-left: -3rem;
	}
	.cr-prpl-60 .common-col{
		padding-left: 3rem;
		padding-right: 3rem;
	}
	.cr-prpl-50{
		margin-right: -2.5rem;
		margin-left: -2.5rem;
	}
	.cr-prpl-50 .common-col{
		padding-right: 2.5rem;
		padding-left: 2.5rem;
	}
	.cr-prpl-40{
		margin-right: -2rem;
		margin-left: -2rem;
	}
	.cr-prpl-40 .common-col{
		padding-right: 2rem;
		padding-left: 2rem;
	}
}

/*******************************
/* p/m
*******************************/
@media screen and (max-width: 1199px){
	/*pt*/
	.pc-pt-20{
		padding-top: 1rem;
	}
	.pc-pt-30{
		padding-top: 1.5rem;
	}
	.pc-pt-40{
		padding-top: 2rem;
	}
	.pc-pt-50{
		padding-top: 2.5rem;
	}
	.pc-pt-60{
		padding-top: 3rem;
	}
	.pc-pt-70{
		padding-top: 3.5rem;
	}
	.pc-pt-80{
		padding-top: 4rem;
	}
	.pc-pt-90{
		padding-top: 4.5rem;
	}
	.pc-pt-100{
		padding-top: 5rem;
	}
	.pc-pt-110{
		padding-top: 5.5rem;
	}
	.pc-pt-120{
		padding-top: 6rem;
	}
	.pc-pt-130{
		padding-top: 6.5rem;
	}
	.pc-pt-140{
		padding-top: 7rem;
	}
	.pc-pt-150{
		padding-top: 7.5rem;
	}
	.pc-pt-160{
		padding-top: 8rem;
	}
	.pc-pt-180{
		padding-top: 9rem;
	}
	.pc-pt-200,.pc-pt-240-sp-100,.pc-pt-280-sp-100{
		padding-top: 10rem;
	}
	/*pb*/
	.pc-pb-20{
		padding-bottom: 1rem;
	}
	.pc-pb-30{
		padding-bottom: 1.5rem;
	}
	.pc-pb-40{
		padding-bottom: 2rem;
	}
	.pc-pb-50{
		padding-bottom: 2.5rem;
	}
	.pc-pb-60{
		padding-bottom: 3rem;
	}
	.pc-pb-70{
		padding-bottom: 3.5rem;
	}
	.pc-pb-80{
		padding-bottom: 4rem;
	}
	.pc-pb-90{
		padding-bottom: 4.5rem;
	}
	.pc-pb-100{
		padding-bottom: 5rem;
	}
	.pc-pb-110{
		padding-bottom: 5.5rem;
	}
	.pc-pb-120{
		padding-bottom: 6rem;
	}
	.pc-pb-130{
		padding-bottom: 6.5rem;
	}
	.pc-pb-140{
		padding-bottom: 7rem;
	}
	.pc-pb-150{
		padding-bottom: 7.5rem;
	}
	.pc-pb-160{
		padding-bottom: 8rem;
	}
	.pc-pb-170{
		padding-bottom: 8.5rem;
	}
	.pc-pb-180{
		padding-bottom: 9rem;
	}
	.pc-pb-200,.pc-pb-220-sp-100,.pc-pb-240-sp-100,.pc-pb-250-sp-100,.pc-pb-280-sp-100{
		padding-bottom: 10rem;
	}
	/*mt*/
	.pc-mt-80{
		margin-top: 4rem;
	}
	.pc-mt-100{
		margin-top: 5rem;
	}
	/*mb*/
	.pc-mb-20{
		margin-bottom: 1rem;
	}
	.pc-mb-30{
		margin-bottom: 1.5rem;
	}
	.pc-mb-40{
		margin-bottom: 2rem;
	}
	.pc-mb-50{
		margin-bottom: 2.5rem;
	}
	.pc-mb-60,.pc-mb-45-sp-mb-30{
		margin-bottom: 3rem;
	}
	.pc-mb-70,.pc-mb-45-sp-mb-35{
		margin-bottom: 3.5rem;
	}
	.pc-mb-80,.pc-mb-50-sp-mb-40{
		margin-bottom: 4rem;
	}
	.pc-mb-90{
		margin-bottom: 4.5rem;
	}
	.pc-mb-100{
		margin-bottom: 5rem;
	}
	.pc-mb-110{
		margin-bottom: 5.5rem;
	}
	.pc-mb-120{
		margin-bottom: 6rem;
	}
	.pc-mb-130{
		margin-bottom: 6.5rem;
	}
	.pc-mb-140{
		margin-bottom: 7rem;
	}
	.pc-mb-150{
		margin-bottom: 7.5rem;
	}
	.pc-mb-160{
		margin-bottom: 8rem;
	}
	.pc-mb-170{
		margin-bottom: 8.5rem;
	}
	.pc-mb-180{
		margin-bottom: 9rem;
	}
	.pc-mb-200-sp-100,.pc-mb-230-sp-100,.pc-mb-240-sp-100,.pc-mb-320-sp-100{
		margin-bottom: 10rem;
	}
}
@media screen and (min-width: 1200px){
	/*pt*/
	.pc-pt-20{
		padding-top: 2rem;
	}
	.pc-pt-30{
		padding-top: 3rem;
	}
	.pc-pt-40{
		padding-top: 4rem;
	}
	.pc-pt-50{
		padding-top: 5rem;
	}
	.pc-pt-60{
		padding-top: 6rem;
	}
	.pc-pt-70{
		padding-top: 7rem;
	}
	.pc-pt-80{
		padding-top: 8rem;
	}
	.pc-pt-90{
		padding-top: 9rem;
	}
	.pc-pt-100{
		padding-top: 10rem;
	}
	.pc-pt-110{
		padding-top: 11rem;
	}
	.pc-pt-120{
		padding-top: 12rem;
	}
	.pc-pt-130{
		padding-top: 13rem;
	}
	.pc-pt-140{
		padding-top: 14rem;
	}
	.pc-pt-150{
		padding-top: 15rem;
	}
	.pc-pt-160{
		padding-top: 16rem;
	}
	.pc-pt-180{
		padding-top: 18rem;
	}
	.pc-pt-200{
		padding-top: 20rem;
	}
	.pc-pt-240-sp-100{
		padding-top: 24rem;
	}
	.pc-pt-280-sp-100{
		padding-top: 28rem;
	}
	/*pb*/
	.pc-pb-20{
		padding-bottom: 2rem;
	}
	.pc-pb-30{
		padding-bottom: 3rem;
	}
	.pc-pb-40{
		padding-bottom: 4rem;
	}
	.pc-pb-50{
		padding-bottom: 5rem;
	}
	.pc-pb-60{
		padding-bottom: 6rem;
	}
	.pc-pb-70{
		padding-bottom: 7rem;
	}
	.pc-pb-80{
		padding-bottom: 8rem;
	}
	.pc-pb-90{
		padding-bottom: 9rem;
	}
	.pc-pb-100{
		padding-bottom: 10rem;
	}
	.pc-pb-110{
		padding-bottom: 11rem;
	}
	.pc-pb-120{
		padding-bottom: 12rem;
	}
	.pc-pb-130{
		padding-bottom: 13rem;
	}
	.pc-pb-140{
		padding-bottom: 14rem;
	}
	.pc-pb-150{
		padding-bottom: 15rem;
	}
	.pc-pb-160{
		padding-bottom: 16rem;
	}
	.pc-pb-170{
		padding-bottom: 17rem;
	}
	.pc-pb-180{
		padding-bottom: 18rem;
	}
	.pc-pb-200{
		padding-bottom: 20rem;
	}
	.pc-pb-220-sp-100{
		padding-bottom: 22rem;
	}
	.pc-pb-240-sp-100{
		padding-bottom: 24rem;
	}
	.pc-pb-250-sp-100{
		padding-bottom: 25rem;
	}
	.pc-pb-280-sp-100{
		padding-bottom: 28rem;
	}
	/*mt*/
	.pc-mt-80{
		margin-top: 8rem;
	}
	.pc-mt-100{
		margin-top: 10rem;
	}
	/*mb*/
	.pc-mb-20{
		margin-bottom: 2rem;
	}
	.pc-mb-30{
		margin-bottom: 3rem;
	}
	.pc-mb-40{
		margin-bottom: 4rem;
	}
	.pc-mb-50,.pc-mb-50-sp-mb-40{
		margin-bottom: 5rem;
	}
	.pc-mb-60{
		margin-bottom: 6rem;
	}
	.pc-mb-45-sp-mb-30{
		margin-bottom: 4.5rem;
	}
	.pc-mb-45-sp-mb-35{
		margin-bottom: 4.5rem;
	}
	.pc-mb-70{
		margin-bottom: 7rem;
	}
	.pc-mb-80{
		margin-bottom: 8rem;
	}
	.pc-mb-90{
		margin-bottom: 9rem;
	}
	.pc-mb-100{
		margin-bottom: 10rem;
	}
	.pc-mb-110{
		margin-bottom: 11rem;
	}
	.pc-mb-120{
		margin-bottom: 12rem;
	}
	.pc-mb-130{
		margin-bottom: 13rem;
	}
	.pc-mb-140{
		margin-bottom: 14rem;
	}
	.pc-mb-150{
		margin-bottom: 15rem;
	}
	.pc-mb-160{
		margin-bottom: 16rem;
	}
	.pc-mb-170{
		margin-bottom: 17rem;
	}
	.pc-mb-180{
		margin-bottom: 18rem;
	}
	.pc-mb-200-sp-100{
		margin-bottom: 20rem;
	}
	.pc-mb-230-sp-100{
		margin-bottom: 23rem;
	}
	.pc-mb-240-sp-100{
		margin-bottom: 24rem;
	}
	.pc-mb-320-sp-100{
		margin-bottom: 32rem;
	}
	.pc-only-mb-130{
		margin-bottom: 13rem;
	}
}

/* ================================================ */
/* btn
------------------------------------------------------ */
/*bt_more*/
.bt_more a{
	display: block;
	position: relative;
	text-decoration: none;
	letter-spacing: 0.05em;
	transition: .3s;
	border-width: 1px;
	border-style: solid;
}
.bt_more a:hover{
	text-decoration: none;
}
@media screen and (max-width: 1199px){
	.bt_more a{
		padding-top: 1.7rem;
		padding-bottom: 1.7rem;
		border-radius: 3rem;
	}
	.bt_more.bt_more-small a{
		padding-top: 1.25rem;
		padding-bottom: 1.25rem;
		font-size: 1rem;
	}
}
@media screen and (min-width: 1200px){
	.bt_more a{
		padding-top: 2.15rem;
		padding-bottom: 2.15rem;
		border-radius: 3.6rem;
	}
	.bt_more.bt_more-small a{
		padding-top: 1.6rem;
		padding-bottom: 1.6rem;
		font-size: 1.4rem;
	}
}
/*bt_more colorF transparent*/
.bt_more.c-fff-bc-transparent a{
	color: #fff;
	border-color: rgba(255,255,255,0.50);
}
.bt_more.c-fff-bc-transparent a:hover{
	color: #fff;
	background-color: rgba(255,255,255,0.50);
}
/*bt_more c-313131-bc-transparent*/
.bt_more.c-313131-bc-transparent a{
	color: #313131;
	border-color: rgba(220,220,220,0.50);
}
.bt_more.c-313131-bc-transparent a:hover{
	color: #fff;
	border-color: #cf2820;
	background-color: #cf2820;
}
/*bt_more c-4d4d4d-bc-transparent*/
.bt_more.c-4d4d4d-bc-transparent a{
	color: #4d4d4d;
	border-color: rgba(220,220,220,0.50);
}
.bt_more.c-4d4d4d-bc-transparent a:hover{
	color: #fff;
	border-color: #cf2820;
	background-color: #cf2820;
}
/*bt_more c-fff-bc-cf2820*/
.bt_more.c-fff-bc-cf2820 a{
	color: #fff;
	border-color: #cf2820;
	background-color: #cf2820;
}
.bt_more.c-fff-bc-cf2820 a:hover{
	color: #cf2820;
	background-color: #fff;
}
/*bt_more size*/
@media screen and (max-width: 1199px){
	.bt_more-220{
		max-width: 22rem;
	}
}
@media screen and (min-width: 1200px){
	.bt_more-220{
		max-width: 26.4rem;
	}
}
/*矢印アイコン*/
.common-circle-icon{
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.cci-sp-18{
	width: 1.8rem;
	height: 1.8rem;
}
.cci-sp-18 img{
	width: 0.8rem;
}
.cci-sp-24 img{
	width: 1.1rem;
}
@media screen and (max-width: 1199px){
	.cci-sp-24{
		width: 2.4rem;
		height: 2.4rem;
	}
}
@media screen and (min-width: 1200px){
	.cci-sp-24{
		width: 2.8rem;
		height: 2.8rem;
	}
}
/*矢印アイコン position*/
.cci-sp-24.cci-absolute-right,.bt_more.bt_more-small .cci-sp-18{
	position: absolute;
}
.bt_more.bt_more-small .cci-sp-18{
	top: calc(50% - 0.9rem);
}
@media screen and (max-width: 1199px){
	.cci-sp-24.cci-absolute-right{
		right: 1.6rem;
		top: calc(50% - 1.2rem);
	}
	.bt_more.bt_more-small .cci-sp-18{
		right: 1rem;
	}
}
@media screen and (min-width: 1200px){
	.cci-sp-24.cci-absolute-right{
		right: 1.4rem;
		top: calc(50% - 1.4rem);
	}
	.bt_more.bt_more-small .cci-sp-18{
		right: 1.4rem;
	}
}

/*******************************
/* フォーム/テーブル
*******************************/
/*table*/
.normal-table {
	max-width: 100%;
	border-top: 1px rgba(148,148,148,0.25) solid;
	letter-spacing: 0.08em;
	line-height: 1.6;
}
.normal-table th {
	vertical-align: top;
	font-weight: 500;
}
.normal-table td {
	vertical-align: middle;
	text-align: left;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: rgba(148,148,148,0.25);
}
.normal-table td a{
	color: #000;
	text-decoration: none;
}
@media only screen and (max-width:767px) {
	.normal-table th {
		padding: 1.6rem 0 0.8rem;
		width: 100%;
		display: block;
		font-size: 1.5rem;
	}
	.normal-table td {
		padding: 0.8rem 0 1.6rem;
		width: 100%;
		display: block;
	}
}
@media screen and (min-width: 768px) {
	.normal-table th {
		width: 22.2%;
		border-bottom-width: 1px;
		border-bottom-style: solid;
		border-bottom-color: rgba(148,148,148,0.25);
		padding-right: 2%;
		padding-left: 2%;
	}
	.normal-table td {
		width: 77.8%;
	}
}
@media screen and (min-width:768px) and (max-width:1399px) {
	.normal-table th {
		padding-top: 1.6rem;
		padding-left: 1.6rem;
	}
	.normal-table td {
		padding: 1.6rem 0;
	}
}
@media screen and (min-width: 1400px) {
	.normal-table th {
		padding-top: 3.7rem;
		padding-bottom: 3.7rem;
	}
	.normal-table td {
		padding: 3.7rem 0;
	}
}
/*************
/* 汎用リスト
*************/
.dotted-list{
	padding-left: 0;
}
.dotted-list li{
	list-style: none;
	position: relative;
	line-height: 1.6;
}
ul.dotted-list>li{
	padding-left: 1em;
}
ul.dotted-list>li::before{
	content: "・";
}
ul.dotted-list.dotted-list-square>li::before{
	content: "▪️";
}
ol.dotted-list>li{
	padding-left: 1.4em;
}
ol.dotted-list{
	counter-reset: listNumber 0;
}
ol.dotted-list>li::before{
	counter-increment: listNumber 1;
	content: counter(listNumber) ".";
}
.dotted-list>li::before{
	top: 0;
	left: 0;
	display: block;
	position: absolute;
}
.dotted-list li:not(:last-of-type){
	margin-bottom: 0.6em;
}
/*リスト入れ子の場合*/
.dotted-list-sub{
	padding-top: 0.5em;
	padding-bottom: 0.5em;
}
ol.dotted-list.dotted-list-sub>li::before{
	content: counter(listNumber) "";
	width: 1.6em;
	height: 1.6em;
	line-height: 1.6em;
	border-radius: 50%;
	border: 1px rgba(150,150,150, 0.6) solid;
	font-size: 0.7em;
	top: 0.5em;
	text-align: center;
}
/*連番強制削除*/
ol.dotted-list>li.dotted-list-ol-skip,ul.dotted-list>li.dotted-list-dotted-none{
	padding-left: 0;
}
ol.dotted-list.dotted-list-sub>li.dotted-list-ol-skip::before,ul.dotted-list>li.dotted-list-dotted-none::before{
	display: none;
}
/* 行頭 */
.common-dotted-list-linehead{
	margin-left: -0.4em;
}
/*******************************
/* youtube　レスポンシブ対応
***************************/
.ggmap {
  position: relative;
  width: 100%;
  aspect-ratio:1 / 0.656;
}
.youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.youtube iframe,.ggmap iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
/*******************************
/* メイン画像
*******************************/
img {
  max-width: 100%;
  height: auto;
}
