/* ----------------------------------------------------------------
	Custom CSS

	Add all your Custom Styled CSS here for New Styles or
	Overwriting Default Theme Styles for Better Handling Updates
-----------------------------------------------------------------*/



/* ------------------------------共通------------------------------  */

body, a, .menu-link{
	color: #000;
}
#content p{
	line-height: 2;
}
#gotoTop:hover{
	background-color: #005cb9;
}
.heading-block > span:not(.before-heading){
	color: #000;
}

.full-header .primary-menu .menu-container{
	border-right: none;
}
.primary-menu{
	margin-right: -30px;
}
.heading-block h2{
	text-transform: none;
}
.heading-block::after{
	display: none;
}
#footer .footer-widgets-wrap{
	padding: 0;
}

.footer-widgets-wrap .col-sm-8 .row{
	justify-content: flex-end;
}
.max-width1000{
	max-width: 1000px;
	margin: auto;
}

/* =========================
   PCのみ表示
========================= */
.pc-only {
	display: block;
}

.sp-only {
	display: none;
}


/* =========================
   スマホ表示（767px以下）
========================= */
@media (max-width: 767px) {

	.pc-only {
		display: none !important;
	}

	.sp-only {
		display: block !important;
	}

}

/* PCでは改行を無効に */
.sp-only br {
    display: none;
}

/* スマホ（767px以下）で改行を有効に */
@media (max-width: 767px) {
    .sp-only br {

        line-height: 1;    /* 行間を最小化 */
        margin: 0;         /* 上下の余白を消す */
        padding: 0;
    }
}


/* ロゴ */
h1#logo img{
	height: 50px !important;
	/* height: 67px !important; */
}
.logo-img{
	/* height: 30px !important;
    width: 30px !important; */
	margin-right: 10px;
}
.logo-img-s{
	 /* height: 40px !important;
    width: 40px !important; */
	margin-right: 10px;
}
.logo-name{
	font-size: 18px;
	display: flex;
	align-items: center;
}

.heading-block h2.theme-blu{
	color: #005cb9;
	font-size: 36px;
}
.theme-blu{
	color: #005cb9;
}
.ttl-sub{
	margin: -10px auto 60px;
}
.lead-txt{
	font-size: 18px;
	letter-spacing: 0;
	max-width: 100% !important;
	font-weight: 400;
}
.ltxt-rpic-box{
	line-height: 2;
}
.ttl-ja{
	font-size: 18px;
	margin: -10px auto 30px;
}


/* 991px以下（タブレット向け） */
@media (max-width: 991px) {
	
	.content-wrap.cw-sp{
		width: 92%;
		margin: auto;
		padding: 60px 0;
	}
	.footer-widgets-wrap .row.col-mb-50{
		/* align-items: center; */
	}
}
/* 767px以下（大きめスマホ向け） */
@media (max-width: 767px) {
    .content-wrap {
        padding: 50px 0;
    }
	.heading-block h2.theme-blu{
		font-size: 24px;
	}
	.ttl-ja{
		font-size: 14px;
	}
	.feature-box .fbox-content h3 {
		font-size: 12px;
		line-height: 1.4;
	}
}
/* 480px以下（小さめスマホ向け） */
@media (max-width: 480px) {
    .content-wrap {
        padding: 40px 0;
    }
	#content p{
		font-size: 3.75vw;
	}
	.lead-txt{
		font-size: 3.75vw;
	}
	.heading-block h2 + span{
		font-size: 3.75vw;
	}
	.ltxt-rpic-box p{
		font-size: 3.75vw;
	}
	.content-wrap{
		padding: 40px 0;
	}

}

.heading-block h2 + span.ttl-sub{
	font-size: 18px;
}.heading-block h1{
	font-size: 36px;
}

.sub-ttl-text{
	position: relative;
	top: 100px;
}
.widget > h4{
	text-align: center;
}
.menu-item a:hover{
	color: #005cb9 !important;
}
/* 現在のページだけ文字色変更 */
.primary-menu .current-menu-item > .menu-link,
.primary-menu .current-menu-item > .menu-link div {
    color: #005cb9 !important;
}

/*-----ボタンデザイン-----*/
.btn-achievement {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  overflow: hidden;
  width: 274px;
  height: 44px;
  background: linear-gradient(
    90deg,
    #0a4b97 0%,
    #0f63c7 50%,
    #0d57af 100%
  );

  color: #fff;
  text-decoration: none;
  font-size: 22px;
  font-weight: 700;
  letter-spacing: 0.08em;

  transition:
    transform .25s ease,
}


/* 斜線 */
.btn-achievement::before {
  content: "";
  position: absolute;
  inset: 0;

  background:
    repeating-linear-gradient(
      130deg,

      rgba(255,255,255,.08) 0px,
      rgba(255,255,255,.08) 22px,

      transparent 22px,
      transparent 90px
    );

  background-size: 160% 100%;
  background-position: 0 0;

  transition: background-position .6s ease;
}


/* ホバー時だけ流れる */
.btn-achievement:hover::before {
  background-position: -140px 0;
}

/* ホバー時だけ流れる */
.btn-achievement:hover::before {
  background-position: -120% 0;
}


/* 少し浮かせる */
.btn-achievement:hover {
  transform: translateY(-2px);
  box-shadow: 0 0px 6px rgba(0,0,0,.16);
}


/* テキスト前面 */
.btn-achievement span {
  position: relative;
  z-index: 2;
}
@media (max-width: 768px) {

  .btn-achievement {
    width: 70%;
    max-width: 320px;
    height: 64px;

    font-size: 18px;
  }

}

/* ふわっと出す */

[data-animate="fadeInUp"] {
	--cnvs-animate-duration: 1s;
}

.fadeInUp {
	animation-name: customFadeInUp !important;
}

@keyframes customFadeInUp {
	from {
		opacity: 0;
		transform: translate3d(0, 20px, 0);
	}

	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}



/* ------------------------------ヘッダー------------------------------  */
.stretched .full-header #header-wrap > .container{
	background: #FFF;
}
.dark .menu-link, 
.dark #logo a{
	color: #000;
}

/* ------------------------------フッター------------------------------  */

#logo{
	margin-bottom: 0;
}
.f-logo-name{
	font-size: 18px;
}

/* お問い合わせ */
.fbox-media{
	width: 90%;
	margin: 0 auto 0.8rem;
}
#copyrights .nott.ls0{
	color: #005cb9;
}
/* フッターお問い合わせ消す調整 */
.contact .content-wrap{
	padding-bottom: 0;
}
.contact #footer{
	border-top: none;
}

.home #about .col-7.adjust{
	width: 62%;
    padding-bottom: 0;
    margin-top: -20px;
}
.f_lead{
	font-size: 18px;
	letter-spacing: 0;
	max-width: 800px; 
	font-weight: 400;
}
.heading-block > span:not(.before-heading).f-email{
	font-size: 36px;
	letter-spacing: 0;
	max-width: 800px;
	font-weight: bold;
}
.content-wrap.lead-txt{
	padding-top: 0;
}
.content-wrap.lead-txt p{
	margin-bottom: 0;
}
.contact-submit.max-width1000.adjust{
	margin: 50px auto;
}
.contact-submit.max-width1000.adjust input{
	margin-left: 50px;
}
@media (max-width: 991px) {
	.f-logo-name{
		font-size: 14px;
	}
	.standard-logo img{
		/* width: 40px; */
	}
}

@media (max-width: 768px) {
	.home #about .col-7.adjust{
		width: 100%;
	}

	.heading-block.custom-align {
		text-align: center;
	}
	.heading-block > span:not(.before-heading).f-email{
		font-size: 18px;
	}
	#copyrights.bg-light{
		margin-top: 0;
	}
	
}


/* ロゴ */
.standard-logo{
	color: #000;
}
.standard-logo img{
	margin-right: 10px;
}
/* フッターロゴ */
.footer-widgets-wrap .standard-logo img{
	width: 67px;
}
/* メニュー */
.footer-nav {
	align-items: flex-start;
}

.footer-link {
	position: relative;
	display: inline-block;
	padding-left: 20px;
	text-decoration: none;
	transition: .25s ease;
}

.footer-link::before {
	content: "";
	position: absolute;
	left: 0;
	width: 8px;
	height: 18px;
	background: #005cb9;
	transition: .25s ease;
}

.footer-link-en {
	font-size: 18px;
	font-weight: 700;
	line-height: 1.1;
	color: #005cb9;
	letter-spacing: .03em;
	transition: .25s ease;
}

.footer-link-ja {
	margin-top: 8px;
	font-size: 10px;
	color: #222;
	transition: .25s ease;
}

/* hover */
.footer-link:hover {
	transform: translateY(-2px);
}

.footer-link:hover .footer-link-en,
.footer-link:hover .footer-link-ja {
	color: #0a7cff;
}

.footer-link:hover::before {
	background: #0a7cff;
}
.bg-light{
	background: #cbcbcb !important;
}


@media (max-width: 768px) {

	.footer-nav {
		display: flex;
		flex-wrap: wrap;
		margin: 0;
	}

	.footer-nav > div {
		width: 50%;
		flex: 0 0 50%;
		margin-bottom: 20px;
		text-align: center;
	}

	.footer-link {
		display: block;
		padding: 10px;
	}

	.footer-link-en {
		font-size: 15px;
		font-weight: 700;
	}

	.footer-link-ja {
		font-size: 12px;
	}

	/* Instagramだけ中央配置 */
	.f-sns {
		width: 100% !important;
		flex: 0 0 100% !important;
		margin-top: 10px;
		text-align: center;
		justify-content: center !important;
	}
}

/* ------------------------------TOPページ------------------------------  */

.home .swiper-slide-bg{
	background-image: linear-gradient(rgba(0,92,185,0.5), rgba(0,92,185,0.5)), url('../img/top/mv.jpg');
	background-position: 0 0;
}

.slider-caption h2.catch-copy{
	 font-size: 3vw !important;
}
.slider-caption h2.catch-copy .sp-only{
    padding-left: 40px;
    display: inline-block;
}
.slider-caption h2.catch-copy-txt{
	font-size: 20px;
}
@media (max-width: 767px) {
	.home .swiper-slide-bg{
		background-position: 70% 0;	
	}
  .slider-caption h2.catch-copy{
	 font-size: 6vw !important;
  }
  .slider-caption .catch-copy-txt{
	 font-size: 12px;
  }
  .home #service .link-btn.mt-6{
	margin-top: 0 !important;
  }
  .home #service p{
	text-align: left;
  }
  .home #about .link-btn.mt-6{
	margin-top: 2rem !important;
  }
}


/* ------------------------------下層ページ------------------------------  */

/* ロゴ */
.full-header #logo{
	border-right: none;
}

#page-title{
	 background-size: cover;
	 padding: 120px 0;" 
}
.sub #page-title{
	 background-image: url('../img/common/mv.jpg');
}

/* =============================================
   PAGE TITLE
============================================= */

.service-page-title{
	position: relative;
	padding: 140px 0 !important;
	background-size: cover;
	background-position: center;
	overflow: hidden;
}

/* 全体の青レイヤー */
.service-page-title::before{
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(0, 70, 140, 0.45);
	z-index: 1;
}

/* 左の三角形 */
.service-page-title::after{
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 22%;
	height: 100%;
	background: rgba(0, 92, 185, 0.82);

	/* ← ここ重要 */
	clip-path: polygon(0 0, 100% 0, 0 100%);
	z-index: 2;
}

/* コンテンツを前面へ */
.service-page-title .container{
	z-index: 3;
}


/* スマホ */
@media (max-width: 767px){

	.service-page-title{
		padding: 100px 0 !important;
	}

	.service-page-title::after{
		width: 70%;
	}

	.service-page-title h1{
		font-size: 42px;
	}
}


/* ------------------------------事業内容------------------------------  */

/* 熱絶縁工事とは */

/* .about-insulation .txt{
	line-height: 3rem !important;
} */
.about-insulation .txt .pc-only{
	display: inline-block;
}


/* 主な施工内容 */
h3.service-step{
	font-size: 34px;
	 border-bottom: 1px solid #000;
	 display: inline-block;
	 font-weight: bold;
	 padding 10px 0;
	 font-family: Noto Sans CJK JP;
}

.service .content-wrap.ltxt-rpic-box{
	padding-bottom: 0;
}
@media (max-width: 767px){
	h3.service-step{
		font-size: 24px;
	}
	.service .link-btn{
		margin-top: 1.5rem !important;
		margin-bottom: 1.5rem !important;
	}
}
/* ------------------------------施工事例------------------------------  */

/*Our Project*/
.content-wrap.our-project{
	padding-bottom: none;
}

.content-wrap.our-project p{
	text-align: center;
}

.masonry-thumbs {
	display: flex;
	flex-wrap: wrap;
	margin: -30px;
}

.masonry-thumbs .grid-item {
	padding: 30px;
}
@media (max-width: 767px) {
	.content-wrap.our-project p{
		text-align: left;
	}
	.masonry-thumbs .grid-item {
		padding: 10px;
	}
}
/* ------------------------------私たちについて------------------------------  */

.reason-wrap {
	margin-top: 60px;
}

.reason-box {
	position: relative;
	text-align: center;
}

.reason-number {
	position: absolute;
	top: -10px;
	left: 10%;
	transform: translateX(-50%);
	font-size: 28px;
	letter-spacing: 8px;
	font-weight: 300;
	color: #111;
	z-index: 2;
}

.reason-circle {
	width: 280px;
	height: 280px;
	margin: 0 auto;
	border-radius: 50%;
	background: #fff;
	border: 1px solid #cfcfcf;
	box-shadow: 0 0 10px rgba(0,0,0,0.08);
	padding: 30px 30px 40px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
}

.reason-icon img {
	width: 55px;
	height: auto;
	margin-bottom: 15px;
}

.reason-circle h3 {
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 20px;
	color: #111;
}

.reason-circle p {
	font-size: 12px;
	margin-bottom: 0;
}

@media (max-width: 991px) {

	.reason-number {
		font-size: 22px;
		letter-spacing: 6px;
	}
}

@media (max-width: 480px) {
	.reason-circle {
		width: 220px;
		height: 220px;
		padding: 10px;
	}
	.reason-circle h3 {
		font-size: 16px;
	}

	.reason-circle p {
		font-size: 11px !important;
		line-height: 1.8;
	}

}



/* ------------------------------会社概要------------------------------  */

.company .company-table td{
	padding: 20px;
	text-align: left;
}
.company .company-table td:nth-of-type(1){
	background: #EEEEEE;
}
.company .company-table code{
	color: #000;
}

/* スマホサイズで会社概要を縦並びに */
@media (max-width: 767px) {
  .company-table,
  .company-table tbody,
  .company-table tr,
  .company-table td {
    display: block;
    width: 100%;
  }

  .company-table tr {
    margin-bottom: 1em; /* 行の間隔 */
    border: none;       /* 枠線を解除（必要なら残す） */
  }

  .company-table td {
    border: none;
    padding: 0.5em 0;
  }

  .company-table td:first-child {
    font-weight: bold;
    margin-bottom: 0.3em;
  }

  .company-table td:last-child {
    margin-bottom: 0.5em;
  }
}

/* ------------------------------お問い合わせ------------------------------  */

.contact-table {
    border: 1px solid #999;
    background: #f5f5f5;
}

.contact-row {
    display: flex;
    border-bottom: 1px solid #999;
}

.contact-row:last-child {
    border-bottom: none;
}

.contact-title {
    width: 220px;
    padding: 20px;
    border-right: 1px solid #999;
    font-weight: 500;
    background: #f5f5f5;
}

.contact-content {
    flex: 1;
    padding: 15px 20px;
    background: #FFF;
}

.contact-content input,
.contact-content textarea {
    width: 100%;
    border: 1px solid #ccc;
    padding: 10px;
    font-size: 14px;
    background: #fff;
}

.contact-content textarea {
    height: 200px;
    resize: vertical;
}

.contact-submit {
    text-align: center;
    margin-top: 40px;
}

.contact-submit input[type="submit"] {
    background: #005cb9;
    color: #fff;
    border: none;
    padding: 15px 50px;
    cursor: pointer;
    font-size: 16px;
    transition: .3s;
}

.contact-submit input[type="submit"]:hover {
    opacity: .8;
}
.contact .max-width1000.lead-txt{
	max-width: 1000px !important;
}
.contact .lead-txt p{
	width: 80%;
	margin: auto;
}

/* プライバシーポリシー */
.privacy-box{
	margin: 50px auto 30px;
	border: 1px solid #ddd;
	background: #fff;
	overflow-y: scroll;
	height: 350px;
}

.privacy-title{
	background: #555;
	color: #fff;
	font-size: 18px;
	text-align: center;
	padding: 10px;
}

.privacy-content{
	padding: 20px;
	line-height: 2;
	white-space: pre-line;
}

.privacy-agree{
    margin: 30px 0;
    text-align: center;
}

.privacy-agree .wpcf7-list-item{
    margin: 0;
}

.privacy-agree label{
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
}

.c-form__control input::placeholder,
.c-form__control textarea::placeholder {
    color: #bbb;
    opacity: 1;
}

.privacy-agree input[type="checkbox"]{
    transform: scale(1.2);
}

/* 確認画面用 */
#-wpcf7cpcnf .cf7-confirm-row {
    margin-bottom: 10px;
}
#-wpcf7cpcnf .cf7-confirm-row strong {
    display: inline-block;
    width: 120px;
}
.wpcf7-response-output{
	max-width: 1000px;
}
.wpcf7cp-btns{
	text-align: center;
}

/* スマホサイズで縦並びレイアウト */
/* スマホ縦並び＋余白均等＋罫線なし */
@media (max-width: 767px) {
  .contact-table {
    display: flex;
    flex-direction: column;
    /* gap: 1.5em; */ /* 各行の間隔 */
    width: 100%;
    padding: 0;
    border: none;
  }

  .contact-row {
    display: flex;
    flex-direction: column; /* タイトルと入力を縦並び */
    /* gap: 0.5em; */ /* タイトルと入力の間隔 */
    /* background-color: #f9f9f9; */ /* 背景色でカード風 */
    /* padding: 1em; */
    /* border-radius: 8px; */
    /* box-sizing: border-box; */
    border-bottom: none;
  }

  .contact-title {
    font-weight: bold;
    font-size: 1rem;
    border-right: none;
  }

  .contact-content input,
  .contact-content textarea {
    width: 100%;
    padding: 0.6em 0.8em;
    font-size: 1rem;
    border: 1px solid #ddd; /* 軽めの入力枠 */
    border-radius: 6px;
    box-sizing: border-box;
  }

  .contact-content textarea {
    min-height: 120px;
    resize: vertical;
  }

  /* プライバシーポリシー */

  .privacy-title {
    font-weight: bold;
    margin-bottom: 0.5em;
  }

  .privacy-content {
    font-size: 0.9rem;
    line-height: 1.6;
  }

  .privacy-agree {
    margin-top: 1em;
    display: flex;
    align-items: center;
    gap: 0.5em;
  }

  /* 送信ボタン */
  .contact-submit {
    margin-top: 1.5em;
    text-align: center;
  }

  .contact-submit input[type="submit"] {
    width: 50%;
    max-width: 300px;
    padding: 0.8em 1em;
    font-size: 1rem;
    background-color: #0052cc;
    color: #fff;
    border: none;
    border-radius: 8px;
    cursor: pointer;
  }

  .contact-submit input[type="submit"]:hover {
    background-color: #003d99;
  }
}


/* =============================================
   Contact Form - 基本レイアウト
   ============================================= */

/* フォーム全体 */
.c-form,
.c-form__confirm {
    margin: 0 auto;
    padding: 40px 0;
}
/* ヘッダー */
.c-form__header p {

    margin-bottom: 32px;
}

/* =============================================
   入力画面
   ============================================= */

/* 各入力項目 */
.c-form__item {
    margin-bottom: 24px;
}

.c-form__item label {
    display: block;
}

/* ラベル */
.c-form__label {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
}

.c-form__label-text {
    font-size: 14px;
    font-weight: bold;
    color: #333;
}

/* 必須ラベル */
.c-form__required-label {
    display: inline-block;
    background: #DD0044;
    color: #fff;
    font-size: 11px;
    padding: 2px 8px;
    border-radius: 3px;
    line-height: 1.4;
}

/* 入力コントロール */
.c-form__control input[type="text"],
.c-form__control input[type="email"],
.c-form__control input[type="tel"],
.c-form__control select,
.c-form__control textarea {
    width: 100%;
    padding: 12px 16px;
    border: 1px solid #ccc;
    border-radius: 6px;
    font-size: 16px;
    line-height: 1.5;
    background: #fff;
    transition: border-color 0.2s;
    box-sizing: border-box;
}

.c-form__control input:focus,
.c-form__control select:focus,
.c-form__control textarea:focus {
    outline: none;
    border-color: #005cb9;
    box-shadow: 0 0 0 3px rgba(52, 152, 219, 0.15);
}

/* セレクトボックス - 未選択時のスタイル */
.c-form__control select {
    color: #999;
}

.c-form__control select.has-value {
    color: #333;
}

/* テキストエリア */
.c-form__control textarea {
    min-height: 150px;
    resize: vertical;
}

/* =============================================
   ボタン
   ============================================= */
.c-form__btns {
    display: flex;
    justify-content: center;
    gap: 16px;
    margin-top: 40px;
}

.c-form__btn {
    display: inline-block;
    padding: 14px 48px;
    font-size: 16px;
    font-weight: bold;
    color: #fff;
    background: #005cb9;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    transition: background 0.2s, opacity 0.2s;
}

.c-form__btn:hover {
    background: #2980b9;
}

.c-form__btn:disabled {
    background: #ccc;
    cursor: not-allowed;
    opacity: 0.7;
}

/* 戻るボタン */
.c-form__btn--back {
    background: #95a5a6;
}

.c-form__btn--back:hover {
    background: #7f8c8d;
}

/* CF7の送信ボタン */
.c-form__confirm .wpcf7-submit {
    display: inline-block;
    padding: 14px 48px;
    font-size: 16px;
    font-weight: bold;
    color: #fff;
    background: #005cb9;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    transition: background 0.2s;
}

.c-form__confirm .wpcf7-submit:hover {
    background: #2980b9;
}

/* =============================================
   確認画面
   ============================================= */
.c-form__confirm {
    display: none; /* 初期状態は非表示 */
}

/* 確認データリスト */
.c-datalist__row {
    display: flex;
	align-items: center;
    border-bottom: 1px solid #eee;
    padding: 30px 10px;
}

.c-datalist__row dt {
    width: 200px;
    flex-shrink: 0;
    font-weight: bold;
}

.c-datalist__row dd {
    margin: 0 !important;
}
.c-datalist__row dt p{
	margin-bottom: 0;
}

/* エラーメッセージ */
.custom-error {
    color: #DD0044;
    font-size: 12px;
    display: block;
    margin-top: 5px;
}

/* =============================================
   レスポンシブ
   ============================================= */
@media (max-width: 768px) {
    .c-datalist__row {
        flex-direction: column;
        gap: 4px;
    }

    .c-datalist__row dt {
        width: 100%;
    }

    .c-form__btns {
        flex-direction: column;
        align-items: center;
    }

    .c-form__btn,
    .c-form__confirm .wpcf7-submit {
        width: 100%;
        text-align: center;
    }
}

/* 確認画面の送信ボタン横のスピナー非表示 */
.contact .wpcf7-spinner{
	display: none;
}
/* 入力画面メッセージ */
.input-message {
    display: block;  /* 入力画面では表示 */
}

/* 確認画面になったら非表示 */
.wpcf7-form .wpcf7cf-confirm + .input-message,
.wpcf7-form.wpcf7cf-confirm .input-message {
    display: none !important;
}

/* 確認画面メッセージは初期非表示 */
.confirm-message {
    display: none;
	padding: 0;
}

/* 確認画面になったら表示 */
.wpcf7-form.wpcf7cf-confirm .confirm-message {
    display: block !important;
}


/* -----------------------------調整（wordpress移行後）------------------------------  */

.footer-widgets-wrap .col-sm-8 .row .col-lg-2.f-company{
	margin-left: -2%;
}
/* メニュー */
@media (max-width: 1399px) {
	.footer-widgets-wrap .col-sm-8 .row{
		justify-content: flex-start;
	}
	.footer-widgets-wrap .footer-nav .col-lg-2{
		width: 20%;
	}

@media (max-width: 991px) {
	.footer-widgets-wrap .col-sm-8 .row .col-lg-2{
		width: 30%;
		margin-top: 30px;
	}
	.footer-widgets-wrap .col-sm-8 .row .col-lg-2.f-company{
		margin-left: 0;
	}
}
@media (min-width: 480px) and (max-width: 768px) {
    /* 青項目の配置 */
	.footer-link::before{
		left: 30px;
	}
}
@media (max-width: 768px) {
	.footer-widgets-wrap .row.col-mb-50 .col-sm-4{
		width: 70%;
		margin: 0 auto;
        padding: 0;
	}
	.footer-widgets-wrap .row.col-mb-50 .col-sm-8{
		width: 100%;
	}
}
