@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

main {
  margin-top: 100px;
}

.l-header {
  background-color: transparent !important;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 9999;
}

h2.wp-block-heading,
h3.wp-block-heading{
	font-family: 'Noto Serif JP', serif;
	font-weight: 400!important;
	line-height:1.6;
}

h2.wp-block-heading.fv_heading {
	font-size:54px;
}


h2.wp-block-heading {
	font-size:28px;
}


h3.wp-block-heading {
	font-size:24px;
}

/* works */

h2.heading_works{
  position: relative;
  z-index: -1;
}

h2.heading_works span:after{
  content: "";
  position:absolute;
  top: 8em;
  left: -10em;
  width: 528px;
  height: 528px;
  background-color: #E33A8F;
  filter: blur(100px);
  opacity: 0.2;
  z-index: -999;
}

.u-mb-60{
	margin-bottom:3em !important;
}

.p-postList.-type-card, .p-postList.-type-thumb {
  align-items: flex-start;
}

.p-postList.-type-card {
  gap: 0.5%;
  margin-bottom: 64px;
}

.post_content li,
.-type-card .p-postList__item {
  margin-bottom: 0.5em;
}

@media (min-width: 1020px) {
    .-sidebar-off .-type-card.-pc-col3 .p-postList__item, .-sidebar-off .-type-thumb.-pc-col3 .p-postList__item {
        width: 33%;
    }
}

.-type-card .p-postList__item {
  padding: 14px;
}

.-type-card .p-postList__thumb {
  border-radius: 8px;
  box-shadow: none;
}

.c-postThumb__cat {
  border-radius: 12px;
  top: 6px;
  right:  6px;
}

.is-style-more_btn {
  width: 230px;
  height: 48px;
}

@media (min-width: 600px) {
    .is-style-more_btn {
        --the-min-width: 100%;
    }
}

.is-style-more_btn a {
  border-radius: 74px;
  background-color: #1E2C58;
  border: 1px solid #1E2C58;
  box-shadow: none;
  color: #fff;
  font-size: 18px;
  border: none;
  padding: .5rem 3em;
  transition: all 0.3s ease-in-out;
}

.is-style-more_btn a:after {
  content: "";
  top: 6px;
  bottom: 0;
  right: 27px;
  width: 5px;
  height: 5px;
  margin: auto;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(45deg);
  box-sizing: border-box;
  transition: all 0.3s ease-in-out;
}

.is-style-more_btn a:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 25px;
  width: 20px;
  height: 7px;
  margin: auto;
  border-bottom: 1px solid #fff;
  box-sizing: border-box;
  transition: all 0.3s ease-in-out;
}

.is-style-more_btn:hover a {
  background-color: rgba(0, 0, 0, 0);
  color: #1E2C58;
  font-size: 18px;
  border: 1px solid #1E2C58;
}

.is-style-more_btn a:hover:after {
  right: 20px;
  border-top: 1px solid #1E2C58;
  border-right: 1px solid #1E2C58;
  transform: rotate(45deg);
}

.is-style-more_btn a:hover:before {
  content: "";
  right: 20px;
  border-bottom: 1px solid #1E2C58;
}

/* service */

.service_heading h2 {
  position: relative;
  z-index: -1;
}

.service_heading h2:after{
  content: "";
  position:absolute;
  top: -1em;
  right: -36em;
  width: 528px;
  height: 528px;
  background-color: #E33A8F;
  filter: blur(100px);
  opacity: 0.2;
  z-index: -999;
}

.swell-block-accordion {
  position: relative;
  z-index: 1;
}

.swell-block-accordion__title .swell-block-accordion__label {
  padding: 0;
  text-align: center;
}

.service_item_title h3 {
  position: relative;
  z-index: 1;
}

.service_item_title h3:before {
	font-family: absolute-beauty, sans-serif;
	font-size:96px;
	font-weight: 700;
	font-style: normal;
	line-height: 1;
	color: #F3DEE7;
	position: absolute;
	top: 50%;
	left: -8px;
	z-index: -1;
}

.service_item1 h3:before {
  content: "01";
}

.service_item2 h3:before {
  content: "02";
}

.service_item3 h3:before {
  content: "03";
}

.service_item4 h3:before {
  content: "04";
}

.service_item5 h3:before {
  content: "05";
}

.service_item6 h3:before {
  content: "06";
}

.service_item7 h3:before {
  content: "07";
}

.service_item8 h3:before {
  content: "08";
}

.swell-block-accordion {
  background-color: #fff;
  border-radius: 8px;
  filter: drop-shadow(0 0 12px #dadada);
}

.swell-block-accordion__body {
  padding: 0;
}

.swell-block-accordion__title {
  height: 160px;
  background-color: #fff;
  border-radius: 8px;
  text-align: center;
  color: #1E2C58;
  font-size: 24px;
  font-weight: 600;
}

.service_item_top div:first-child {
  color: #1E2C58;
}

.service_item_top div:first-child:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 0);
  width: 150px;
  height: 10px;
  border-bottom: 1px solid #1E2C58;
}

.service_item_bottom {
  padding-top: 48px;
  padding-bottom: 3em;
  background-color: #1E2C58;
}

.service_item_bottom div:first-child:before {
  content: "";
  width: 48px;
  height: 48px;
  background-color: #fff;
  position: absolute;
  top:-80px;
  left: 50%;
  transform: translate(-50%, 0) rotate(45deg);
}


/* vision */

.wp-image-237{
  box-shadow: 30px 60px 0px 0 #A7D2D5;!important
}


/* value */

ol.wp-block-list li::marker,
ol.wp-block-list li {
 font-size: 24px;
}

ol.wp-block-list li.sub_list{
	list-style: none;
	transform: translateX(-70px);
	font-size: 18px;
}


/* member */

.swell-block-fullWide__inner {
    padding: 0 1.5rem;
}

ul.list_member {
  list-style: none;
  padding: 0;
}

ul.list_member li{
  padding-left: 25px;
  line-height: 1.6em;
  background: url(https://bari-empowerment.com/wp-content/uploads/2025/08/list_member_icon.svg) left 0px top 3px no-repeat;
  background-size: 13px auto;
}

.table_member.wp-block-table {
    --table-border: none;
}

.table_member.wp-block-table td {
  padding:0;
}

.wp-block-social-link-anchor:hover{
  background-color:#E33A8F;
  border-radius:100%;
}

@media screen and (max-width: 767px) {
 h1 {
    font-size:28px !important;
  }

p{
font-size:16px;
}

  .wp-image-45 {
    width: 100%;
    height: auto;
  }
}

 /* contact form 1 */

.contact_form{
	width:100%;
	margin:0 auto;
	display:flex;
	flex-direction:column;
	gap:30px;
	align-items:center;
}

.form_input{
	width:100%;
}

.btn_send{
	width:100%;
	text-align:center;
}

.wpcf7 input[name="your-name"],
.wpcf7 input[name="tel-691"] ,
.wpcf7 input[name="your-email"] ,
.wpcf7 textarea[name="your-message"] { /* 本文入力欄 */
	width: 100%;
}

.form-button {
    margin-left: 72px;
	width:194px;
	height:48px;
	background-color:#1E2C58;
	border-radius:74px;
	color:#fff;	
    transition: all 0.3s ease-in-out;
}

.form-button:hover {
	background-color:#fff;
	border:solid 1px #1E2C58;
	color:#1E2C58;
}


.wpcf7 form.sent .wpcf7-response-output {
	border:none;
	background-color: #A7D2D5;
}

.l-footer{
	z-index:1;
}

.w-footer__box{
	text-align:center;
}

.l-footer__nav {
	margin-bottom:40px;
	}

/* 背景ロゴ回転 */

.rotating-bg {
  position: fixed;
  top: 50%;
  right:5%;
  width: 564px;
  height: 585px;
  background-image: url('http://bari-empowerment.com/wp-content/uploads/2025/08/logo_mv.png');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transform: translate(0, -50%);
  z-index: -1; 
  pointer-events: none;
  animation: spin 30s linear infinite;
}

@keyframes spin {
  from {
    transform: translate(0, -50%) rotate(0deg);
  }
  to {
    transform: translate(0, -50%) rotate(360deg);
  }
}

@media screen and (max-width: 767px) {
	p{
		font-size:15px;
	}

	.wp-image-45 {
		width: 100%;
		height: auto;
	}
	
	h2.wp-block-heading.fv_heading{
		font-size:32px;
	}
	
	h2.wp-block-heading,
	h3.wp-block-heading {
		font-size:18px;
	}
	
	.rotating-bg {
		top: 30%;
		left: auto;
		right:-10%;
		width: 305px;
	}
	
	.p-postList.-type-card, .p-postList.-type-thumb {
		justify-content:center;
	}
	
	.service_item_title h3:before {
	font-size:64px;
}
	
	.swell-block-accordion__title{
		height:100px;
		font-size:18px;
}
	
	ol.wp-block-list li::marker,
	ol.wp-block-list li {
		font-size: 20px;
}
	ol.wp-block-list li.sub_list{
	transform: translateX(-60px);
	font-size: 15px;
}
	
	.member_heading{
	text-align:left;	
	}
}

    .-series .l-header__inner{
	align-items:center;
}

.c-gnav {
	height:40px;
	align-items:center;
}

.menu-item.nav-contact-btn > a {
  position: relative;
  display: flex;
	flex-direction: row;
  align-items: center;
  gap: .5em;                  /* テキストとアイコンの間隔 */
  padding: .6em 1.1em;
  border-radius: 9999px;      /* pill形状 */
  font-weight: 700;
}

/* ボタン色（必要ならテーマカラーに合わせて） */
.menu-item.nav-contact-btn > a {
	background-color:#1E2C58;
	color: #fff;
	border:solid 1px #1E2C58;
	box-sizing:border-box;
	    transition: all 0.3s ease-in-out;
}
.menu-item.nav-contact-btn > a:hover {
	background-color:#fff;
	border:solid 1px #1E2C58;
	box-sizing:border-box;
	color:#1E2C58;
}

/* アイコン（封筒）を::beforeで描画：currentColorで着色 */
.menu-item.nav-contact-btn > a::before {
  content: "";
  inline-size: 1.05em;
  block-size: 1.05em;
  flex: 0 0 auto;
  background: currentColor;
  -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M20 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2m0 4-8 5L4 8V6l8 5 8-5z'/></svg>") no-repeat center / contain;
          mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M20 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2m0 4-8 5L4 8V6l8 5 8-5z'/></svg>") no-repeat center / contain;
}

.header_menu ul > .menu-item.nav-contact-btn {
  margin-left: .4em;
}


/* --- SWELL ヘッダーメニューのホバー下線を無効化 --- */

/* 1) ライン自体を非表示 */
.l-header .c-gnav .menu-item > a::after {
  content: "";
  opacity: 0 !important;
  transform: none !important;
  background: none !important;
}

/* 3) アクティブ（現在表示中のページ）の下線も消す */
.l-header .c-gnav .current-menu-item > a::after,
.l-header .c-gnav .current-menu-ancestor > a::after {
  opacity: 0 !important;
  transform: none !important;
}

/* （必要なら）SPのドロワーメニュー側も同様に無効化 */
.l-drawer .menu-item > a::before,
.l-drawer .menu-item > a::after {
  content: "";
  opacity: 0 !important;
  transform: none !important;
  transition: none !important;
}

@media (min-width:769px){
  .sp-contact-icon-btn{ display:none !important; }
}

@media (max-width:768px){
	.l-header{
		z-index:10;
	}
	
	.l-header__customBtn,
	.l-header__menuBtn {
		height: var(--logo_size_sp);
		line-height: 1.25;
		text-align: center;
		width: auto;
	}
	
	.c-iconBtn{
		width:auto;
	}
	
	.c-iconBtn__icon{
		width:60px;
		height:60px;
		display:flex;
		flex-direction:column;
		justify-content:center;
	}
	
  .sp-contact-icon-btn{
	  display:inline-flex;
	  align-items:center;
	  justify-content:center;
	  width:60px; height:60px;
	  background:#1E2C58;
	  color:#fff;
	  text-decoration:none;
    line-height:1;
  }
	
  .sp-contact-icon-btn .ico{
	  display:block;
	  width:24px;
	  height:24px;
	  background:currentColor;
    -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M20 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2m0 4-8 5L4 8V6l8 5 8-5z'/></svg>") no-repeat center/contain;
            mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M20 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2m0 4-8 5L4 8V6l8 5 8-5z'/></svg>") no-repeat center/contain;
  }

  /* 念のため：はみ出し防止 */
	.l-header__menuBtn{ overflow:visible; }
	
	.c-widget__title.-spmenu{
		display:none;
	}
	
	.p-spMenu__body{
		padding: 4vw;
	}
	
	.c-spnav{
		text-align:center;
		margin:0 auto;
	}
	
	.c-spnav a {
		border:none;
		font-size:15px;
		margin-bottom:24px;
	}
		
	.c-spnav li:not(:last-child) a:before{
		display:none;
	}
	
	
	.menu-item.nav-contact-btn > a{
		width:200px;
		margin:0 auto;
		padding:.6em 2em;
		justify-content:right;
	}
	
	.c-spnav li:last-child a:before{
		left:40px;
	}
	
	.w-footer__box {
			padding:0;
	}
}

@media (min-width: 600px) {
    .l-footer__nav a,
	.l-footer__nav li:first-child a{
        border:none;
    }
}

@media (min-width: 960px) {
    .w-footer__box {
        padding:0;
    }
}