@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ç/

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




/* 要素追加 */
body {
  font-family: "Montserrat", "Noto Sans JP", sans-serif;
	
}

input {
  box-sizing: border-box;
}

@media (max-width: 781px) {
  p {
    font-size: 15px;
  }
  .l-article {
    max-width: 600px;
  }
  .c-container {
    padding-left: 10px;
    padding-right: 10px;
  }
}


.l-header__bar .c-catchphrase {
  color: inherit;
  font-size: 10px;
  letter-spacing: 0.2px;
  line-height: 14px;
  margin-right: auto;
  overflow: hidden;
  padding: 10px 0 0;
  white-space: nowrap;
  width: 50%;
  font-weight: 600;
}
.smb-section-with-bgimage__bgimage.smb-section-with-bgimage__bgimage--lg:after {
  z-index: -1;
  content: "";
  width: 100%;
  height: 100%;
  background-image:url(/wp-content/uploads/2025/02/アセット-32-1.png) ;
  position: absolute;
}
.smb-section__contents-wrapper {
width:100%;
}

@media (min-width: 960px) {
  .-series .l-header__logo {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    margin-right: 24px;
  }
}
.header__item {
	margin:auto;
}
.header__item p {
  margin-bottom: 0;
}

.header__item-text {
  font-size: 15px;
}

.header__item-tel span {
  line-height: 1;
}
.header__item-tel a {
  color: inherit;
  font-size: 27px;
  font-weight: bold;
}

.header__item-time {
  font-size: 8px;
}

@media (max-width: 959px) {
  .l-header__customBtn.sp_ {
    width: fit-content;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: end;
    padding-right: 20px;
    white-space: nowrap;
  }
  .l-header__customBtn.sp_ .c-iconBtn {
    display: flex;
    position: relative;
    border-radius: 5px;
    border: 1px solid;
    height: 25px;
    align-items: center;
    padding-left: 13px;
    padding-right: 5px;
    font-weight: 600;
	  background:#e48d00;
  }
  .l-header__customBtn.sp_ .c-iconBtn i {
    display: flex;
    position: absolute;
    left: 3px;
    width: 10px;
    font-size: 12px;
  }
  .l-header__customBtn.sp_ .c-iconBtn__label {
    font-weight: 600;
  }
  .l-header__customBtn.sp_ .c-iconBtn__label:after {
    content: ">";
    margin-left: 5px;
  }

}

/* flow */
.post_content ul.flow {
  width: 100%;
  display: flex;
  justify-content: space-between;
  padding-left: 0;
  margin-bottom: 40px;
}

.flow li {
  list-style: none;
  color: #fff;
  font-size: 16px;
  width: calc(100% / 3);
  background: #3FA9F5;
  text-align: center;
  position: relative;
  font-weight: bold;
  height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.flow li p {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}
.flow li span {
  font-size: 50px;
  font-family: "Noto Sans JP", sans-serif;
  margin-right: 3%;
}

.flow li:not(:first-child):not(:last-child) {
  padding: 0 0 0 10px;
}

.flow li::before,
.flow li::after {
  content: "";
  width: 0;
  height: 0;
  display: block;
  position: absolute;
}

.flow li::before {
  border: solid 60px transparent;
  border-right: solid 20px transparent;
  border-left: solid 24px #fff;
  top: -10px;
  left: 0;
  z-index: 1;
}

.flow li::after {
  border: solid 50px transparent;
  border-left: solid 20px #3FA9F5;
  border-right: solid 5px transparent;
  top: 0;
  right: -25px;
  z-index: 2;
}

.flow li:first-child::before,
.flow li:last-child::after {
  content: none;
}

/* 以下.currentだけ色を変えるCSS */

.flow li.current {
  background: #DD7814;
}

.flow li.current::after {
  border-left: solid 20px #DD7814;
}
@media only screen and (max-width: 781px) {
  .flow li {
 flex-direction:column;
  row-gap:5px;
   font-size:12px;
  }
  .flow li p {
    display: flex;
    flex-direction: column;
    font-size: 13px;
    
  }
  .flow li span {
    font-size: 27px;
    font-family: "Noto Sans JP", sans-serif;
    margin-right: 3%;
    line-height: 1;
    text-align: left;
    width: 45%;
    padding-top: 0;
  }
  .flow li:nth-child(2) {
 
    width: 40%;

  }
}

/* お問合せ */
.contact__form {
  border-left: 10px solid #ca1f72;
}

.contact__form tr {
  display: flex;
}
.contact__form th {
  width: 26%;
  background-color: #fffdea;
}
.contact__form td {
  width: 74%;
}
.contact__form-td-flex p {
  display: flex;

  width: 80%;
}
.contact__form-td-flex-padding {
  padding-top: 5px;
}
#wpcf7-f1579-p1577-o1 .contact__form-td-flex-padding {
  padding-top: 0;
}
.contact__form-requid {
  padding: 1px 10px;
  background: #ca1f72;
  color: #ffffff;
  border-radius: 5px;
  margin-left: 10px;
  display: inline-block;
}

.contact__form-td-texerea input {
  width: 100%;
}
.contact__form-span-text {
  margin-top: 10px;
  display: block;
}

.wpcf7 form .wpcf7-response-output {
  margin: 2em 0.5em 1em;
  padding: 0.2em 1em;
  border: 0px solid #00a0d2;
}
.contact__form-td-texerea textarea {
    width: 100%;
  }
/*お問い合わせフォームのテーブルをスマホ表示用に調整*/
@media only screen and (max-width: 781px) {
  .post_content .td_to_th_ tbody tr > :first-child:before,
  .post_content tbody th:before {
    content: none;
  }

  .contact__form tr {
    border-left: 5px solid #ca1f72 !important;
    padding-left: 10px !important;
  }
  .wpcf7-form .contact__form,
  .wpcf7-form .contact__form tr,
  .wpcf7-form .contact__form th,
  .wpcf7-form .contact__form td {
    border: none;
    text-align: left;
    background: none;
    padding: 0;
  }
  .wpcf7-form .contact__form tr {
    display: block;
  }
  .wpcf7-form .contact__form th,
  .wpcf7-form .contact__form td {
    display: block;
    width: 100%;
  }
  .wpcf7-form .contact__form td {
    margin-bottom: 1em;
  }
  .contact__form tr th {
    margin-bottom: 10px;
  }

  .contact__form-td-flex p {
    display: block;
  }
  .contact__form-td-flex-sp {
    display: flex;
  }

  .contact__form-td-flex {
  }
  .contact__form-td-flex p {
    width: 100%;
  }
  .contact__form-td-flex-padding {
    width: 50px;
  }
  .wpcf7-form-control-wrap {
    width: calc(100% - 50px);
  }
  .contact__form-td-flex input {
    width: 100%;
  }

  .contact__form-td-texerea textarea {
    width: 100%;
  }

  .contact__form-chance-content .wpcf7-form-control.wpcf7-radio {
    display: flex;
    flex-direction: column;
  }
  .contact__form-chance-content .wpcf7-form-control.wpcf7-radio span {
    margin-left: 0;
  }
  .contact__form-input-full input {
    width: 100%;
  }

  .contact__form-span-text {
    margin-top: 10px;
    /* padding-top: 36px; */
    display: block;
  }
}

/* お問い合わせ */
@media (max-width: 781px){
	.wp-elements-c98e235600b6510336b4fa1c92a4152a,
	.wp-elements-f03d3977c619a42b7fb18d36a54e2de4,
	.wp-elements-1a28bdfc87b87103dad3da97f52a7819{
		font-size:15px!important;
	}
	}
/* お問い合わせフォーム */
.wpcf7-list-item .wpcf7-list-item-label{
white-space:nowrap;
}
.form__contents{
position:relative;
}
.form__contents::before{
content:"";
position:absolute;
top:0;
left:0;
bottom:0;
background: #2D7FC3;
    background: linear-gradient(90deg, rgba(45, 127, 195, 1) 0%, rgba(72, 186, 126, 1) 100%);
	width:260px;
height:100%;
z-index:-1;
	border-radius:14px 0 0 14px;
}
@media screen and (max-width:781px){
.form__contents::before{
width:100%;
right:0;
	background:#f2f2f2;
	border-radius:14px;
}
}
.form__item{
display:flex;
align-items:center;
	font-size:15px;
}
.form__item:first-child>span{
			border-radius: 0 14px 0 0;
}
.form__item:last-child>span{
			border-radius:  0 0 14px 0;
}
@media screen and (max-width:781px) {
	.form__item{
flex-direction:column;
}
}
.form__item>label{
color:#fff;
}
@media screen and (max-width:781px) {
.form__item>label{
color:#333;
}
}
.form__item label{
max-width: 260px;
width:100%;
display: flex;
align-items: center;
gap:13px;
padding:0 20px;
}
@media screen and (max-width:781px) {
.form__item label{
max-width:100%;
padding-top:10px;
}
}
/* form　最後のアイテムのみ上揃え */
.form__item:last-child{
	align-items:start;
}
.form__item:last-child label{
		padding-top:15px;

}
.form__item label>span{
background-color:#fff;
border-radius:12px;
color:#241981;
max-width:66px;
width:100%;
display: flex;
align-items: center;
justify-content: center;
}
.wpcf7-list-item label input {
    width: fit-content !important;
}
@media screen and (max-width:781px) {
.form__item label>span{
background: #2D7FC3;
    background: linear-gradient(90deg, rgba(45, 127, 195, 1) 0%, rgba(72, 186, 126, 1) 100%);
color:#fff;
	}
	}
	.wpcf7-form-control-wrap{
		width:100%;
	}
@media screen and (max-width:781px){
.form__item.check-item label>span{
background: #FBB03B;
	color:#fff;
}
	.form__item.check-item .wpcf7-form-control.wpcf7-checkbox.wpcf7-validates-as-required .wpcf7-list-item-label{
		justify-content:flex-start;
	}
input[type="checkbox"] {
max-width:20px!important;
	}
	.wpcf7-form-control.wpcf7-checkbox.wpcf7-validates-as-required{
display:flex;
		flex-direction:column;
	}
	
}

.form__item>span{
padding:10px 10px 10px 10px;
	width:100%;
		background:#F2F2F2;
}
@media screen and (max-width:781px) {
.form__item>span{
padding:10px;
	width:100%;
		background:#F2F2F2;
}
}
.file-item_item{
display:flex;
flex-direction:column;
	width:100%;
}
.form__item.file-item span{
background:none;
padding:10px;
}
.form__item.file-item span input{
			background:#F2F2F2;
	width:fit-content;
	height:inherit;
}

.file-item_item{
		background:#F2F2F2;
}
.form__item span input{
height:46px;
}
.form__item span textarea{
height:430px;
}
.form__item span input,
.form__item span textarea{
border-radius:9px;
	max-width:100%;
	width:100%;
	background-color:#fff;
	border:none;
	}
.form__item.check-item .wpcf7-form-control-wrap{
	padding:0 10px;
}
.form__item label>span.wpcf7-list-item-label{
background:transparent;
}
.form__item.check-item .wpcf7-form-control-wrap label{
max-width:100%;
padding:0px 5px;
}
@media screen and (max-width:781px) {
.check-item .wpcf7-form-control-wrap label{
margin-top:0;
}
	.form__item.check-item .wpcf7-form-control-wrap label {
    padding: 0px 15px;
}
}
.check-item.form__item>span{
padding:0;
}
.check-item .wpcf7-form-control-wrap label>span{
max-width:100%;
color:#666;
}
.check-item .wpcf7-form-control-wrap .wpcf7-list-item{
margin-left:0;
}
.check-item.form__item span input{
height:20px;
}
@media (max-width: 781px){
.check-item.form__item span input{
height:30px;
}
}
.wpcf7-spinner{
position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
}
/* 　送信ボタン */
.submit {
    position: relative;
background: #2D7FC3;
    background: linear-gradient(90deg, rgba(45, 127, 195, 1) 0%, rgba(72, 186, 126, 1) 100%);
    transition: all ease .3s;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
    max-width: 320px;
    width: 100%;
    height: 50px;
    text-decoration: none;
    cursor: pointer;
    border-radius: 100px;
    margin: auto;
    padding: 0;
    z-index: 0;
    margin-top: 40px;
	box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
}
@media(max-width:781px) {
	.submit{
		max-width:100%;
	}
}
.submit__btn {
	width:100%;
	height:100%;
}
.submit input {
    color: #fff;
    background: none;
    border: none;
    width: 100%;
    height: 100%;
	font-weight:bold;
}
.submit::after {
    content: '';
    display: block;
    position: absolute;
    top: 46%;
    z-index: 1;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    transition: all .3s ease;
    right: 21px;
    width: 10px;
    height: 10px;
    margin-top: -3px;
}
.submit:hover::after{
	right:12px;
}

/* 確認画面 */
.confirm .wpcf7-form .form__item label{
padding:10px 20px;
    margin-right: 10px;
}
.submit.previous{
	background:#ccc;
}
.submit.previous:hover{
	opacity:.7;
}
.submit.previous::after{
content:none;
}

/* title 見出し */
.h2-title{
  font-size: 22px !important;
  position: relative;
	    padding: .5em 0 .5em .8em;
}

.h2-title::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:5px;
  height:100%;
  background: #FBB03B;
}
.h2-bg-title{
font-size:28px!important;
border-left:5px solid #2E3192;
background:#FCFBE6;
	padding:.5em;
}
.h2-bg-border-title{
	font-size:28px!important;
	padding:.5em 0 .6em 0!important;
	border-radius:15px;
	overflow:hidden;
}
.h2-bg-border-title.head{
	border-radius:15px 15px 0 0;
}
.h2-bg-border-title::before{
 background-color: #FCEE21;
  bottom: .3em;
  content: "";
  height: 2px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 120px;
}
.h2-bg-border-title.sub-title{
	font-size:16px!important;
	border-radius:0 0 15px 15px;
	margin-top:-1px!important;
}
.h2-bg-border-title.sub-title::before{
	content:none;
}
.h2-border-title{
	font-size:28px!important;
position:relative;
	line-height:1.5;
}
.h2-border-title::before{
 background-color: #29ABE2;
  bottom: -.8em;
  content: "";
  height: 2px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 120px;
}
.post_content h2.h2-title-under{
  position: relative;
  text-align: center;
	font-size:22px!important;
	line-height:calc(43 / 22)!important;
	margin-bottom:1.5em;
}
@media(max-width:781px) {
	.post_content h2.h2-title-under{
font-size:18px!important;
	}
}
.post_content h2.h2-title-under::before {
  background-color: #FBB03B;
  border-radius: 5px;
    bottom: -0.5em;
  content: "";
  height: 3px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 120px;
}
.h2-title-under.h2-title-under--left{
  text-align: left;
font-size:22px!important;
}
.h2-title-under.h2-title-under--left::before{
left:0;	
  transform: none;
  background: linear-gradient(90deg, #65B479 0%, #6BA6DC 100%);
	width:220px;
}
.h2-title-under.h2-title-under--02::before{
  background-color: #DE9B2C;
}
.h3-title_label{
	border-radius:5px;
overflow: hidden;
}
.h3-bg-title{
	background:#F0FBFF;
}
.h3-bg-title_label{
	border-radius:5px;
overflow: hidden;
	margin-bottom:0!important;
}
.swell-block-columns .swell-block-column:last-child.h3-bg-title_text{
margin-bottom:0!important;
}
.post_content h4{
border:none;
margin-left:0;
	padding-left:0;
}
.post_content .h4-title h4{
font-size:22px!important;
}
.post_content .h4-title_label{
font-size:20px!important;
	font-weight:bold;
	border-radius:5px;
	box-shadow: 3px 3px #29ABE2;
}
.h4-title_text{
	border-bottom:1px solid #29ABE2;
}
.h4-title_label p,
.h3-bg-title_label p{
		padding:.5em!important;
}
.h3-title_label p{
		padding:0!important;
}
.h5-title{
font-size:22px!important;
	border-left:5px solid #29ABE2;
	padding-left:.5em;
}

.l-fixHeader {
padding:6px 0;
}
.l-header__barInner{
	display:none;
}
.c-gnav>.menu-item:last-child{
background: #2D7FC3;
background: linear-gradient(90deg, rgba(45, 127, 195, 1) 0%, rgba(72, 186, 126, 1) 100%);

}
.c-gnav>.menu-item:last-child a{
min-width:200px;
	width:100%;
}
.l-header__inner.l-container{
padding-right:0;
	background:#00000066;
	max-width:100%;
}
.l-fixHeader{
margin:0;
 padding:0;
}
.l-fixHeader__inner.l-container{
	max-width:100%;
	padding-right:0;
	
}

/* ボタン */
[class*=is-style-btn_] a{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
	max-width:330px;
  min-width: 220px;
	width:100%;
  border-radius: 999px;
  background: linear-gradient(90deg, #46B4F2 0%, #49C08C 100%)!important;
  color: #fff;
  font-weight: 700;
  text-decoration: none;
  overflow: hidden;
	box-shadow:none;
	transition: all .3s ease;
	    letter-spacing: 0;
    font-weight: normal;
}
[class*=is-style-btn_] a:hover{
}
[class*=is-style-btn_] a::before{
  content: "";
  position: absolute;
  top: 50%;
  right: 1.2rem;
    width: 2rem;
    height: 2rem;
  border-radius: 50%;
  background: #fff;
  transform: translateY(-50%);
	transition: all .3s ease;
	
}
[class*=is-style-btn_] a::after{
  content: "";
  position: absolute;
  top: 50%;
  right: 2rem;
  width: .6rem;
  height: .6rem;
  border-top: 2px solid #49C08C;
  border-right: 2px solid #49C08C;
  transform: translateY(-50%) rotate(45deg);
	transition: all .3s ease;
}
[class*=is-style-btn_] a:hover::before{
	right:calc(1.2rem - 5px);
}
[class*=is-style-btn_] a:hover::after{
	right:calc(2rem - 5px);
}
[class*=is-style-btn_].white a{
  background: #fff!important;
  color: #48BA7E;
}
[class*=is-style-btn_].white a::before{
	background: #2D7FC3;
background: #48BA7E;
background: linear-gradient(90deg, rgba(72, 186, 126, 1) 0%, rgba(45, 127, 195, 1) 78%);
}
[class*=is-style-btn_].white a::after{
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}
@media (max-width: 599px) {
	[class*=is-style-btn_] a::before{
width: 1.3rem;
    height: 1.3rem;
	}
	[class*=is-style-btn_] a::after{
width: .4rem;
    height: .4rem;
		right:1.6rem;
	}
	[class*=is-style-btn_] a:hover::before{
	right:calc(1.2rem - .5rem);
}
[class*=is-style-btn_] a:hover::after{
	right:calc(1.6rem - .5rem);
}
}
/* footer */
.footer .wp-block-list{
border-left:1px solid #000;
	padding-left:2em;
}
@media (max-width: 781px) {
.footer .wp-block-list{
	 border:none;
	padding-left:1em;
	}
}
.footer a {
	font-size:15px;
}
.w-beforeFooter{
margin-top:0;
}
.top #content,
.l-content{
margin-bottom:0;
}
/* 共通ここまで */

/* TOPここから */
/* 記事スライダ見切れさせる */
.p-postSlider .swiper-slide {
  box-sizing: border-box;
}
/* h2 */
.home .post_content h2{
  font-size: clamp(3rem, 4vw, 5rem);
	line-height:1;
	margin-bottom:0;
    margin-top: 0;
	border:none;
	padding-left:0;
	white-space:nowrap;
}
/* 横線 */
.wp-elements-2cafc5dd62c9d4584c6057f9cc67a3b7,
.wp-elements-f915a41519f8bde56e25e94eb545d23f{
	line-height:1;
  position: relative;
	display:inline-block;
}
.wp-elements-2cafc5dd62c9d4584c6057f9cc67a3b7::before,
.wp-elements-f915a41519f8bde56e25e94eb545d23f::before{
  content: "";
  position: absolute;
  top: 50%;
left:110%;
  width: 100vw;
  height: 2px;
  background: #38399f;
  transform: translateY(-50%);
}
.wp-elements-2cafc5dd62c9d4584c6057f9cc67a3b7::after,
.wp-elements-f915a41519f8bde56e25e94eb545d23f::after{
  content: "";
  position: absolute;
  top: 50%;
left: 110%;
  width: .5rem;
  height: .5rem;
  background: #38399f;
  border-radius: 50%;
  transform: translate(-50%, -50%);
}
.post_content h3.border{
position:relative;
	margin-bottom: 1em;
	padding:0;
font-size: clamp(2rem, 3vw, 2.5rem) !important;
}
.post_content h3.border::before{
  content: "";
  position: absolute;
bottom: -0.4em;
left:0;
  width: 100vw;
  height: 2px;
  background: #fff;
  transform: translateY(-50%);
}
.post_content h3.border::after{
 content: "";
  position: absolute;
top: 1.75em;
    left: 0;
    width: 0.5rem;
    height: 0.5rem;
  background: #fff;
  border-radius: 50%;
  transform: translate(-50%, -50%);
}
.wp-elements-d7a557cbd71ca15cd776453b71394b04,
.wp-elements-48ae0aeca3f51ad12a1daf5308975340{
	position:relative;
	display:inline-block;
}
.wp-elements-d7a557cbd71ca15cd776453b71394b04::before,
.wp-elements-48ae0aeca3f51ad12a1daf5308975340::before{
    content: "";
    position: absolute;
    top: 50%;
    left: 110%;
    width: 100vw;
    height: 2px;
    background: #38399f;
    transform: translateY(-50%);
}
.wp-elements-d7a557cbd71ca15cd776453b71394b04::after,
.wp-elements-48ae0aeca3f51ad12a1daf5308975340::after{
    content: "";
    position: absolute;
    top: 50%;
    left: 110%;
    width: .5rem;
    height: .5rem;
    background: #38399f;
    border-radius: 50%;
    transform: translate(-50%, -50%);
}
/* fv */
.p-mainVisual{
	    border-radius: 0 0 10rem 10rem;
}
@media (max-width: 959px) {
.p-mainVisual{
	    border-radius: 0 0 5rem 5rem;
}
}	
.p-mainVisual .swell-block-columns__inner img{
	    margin-top: -3em;
}

/* content */
.content{
}
.content-left{
	width: 50vw!important;
margin-left: calc(50% - 50vw)!important;
}

.content-left img{
	width:100%;
	height:100%;
	object-fit:cover;
	border-radius:0 5rem 5rem 0;
}
.content-left.content-left--w .wp-block-group{
    width: 60vw;
    margin-left: -10vw;
}
.content-left.content-left--w img{
	border-radius:2rem;
	width:100%;
}
@media (max-width: 599px) {
.content-left{
	width: 100vw!important;
margin-left: calc(50% - 50vw)!important;
}
.content-left.content-left--w .wp-block-group{
    width: 130vw;
    margin-left: -30vw;
}
}

/* pholoophy */
@media (max-width: 599px) {
	.content-left {
    width: 100vw !important;
	}
}

/* aboutus */
.aboutus{
  position: relative;
background-position: center top 15rem!important;
}

.swell-block-fullWide.has-bg-img.aboutus::before{
  content: "";
  position: absolute;
    top: 0;
    left: -5rem;
    width: 26rem;
    height: 26rem;
  background: url("/wp-content/uploads/2026/07/グループ-227.png")
    no-repeat left top / contain;
  pointer-events: none;
  z-index: 0;
}
@media (max-width: 599px) {
	.swell-block-fullWide.has-bg-img.aboutus::before{
    left: -6rem;
    width: 20rem;
    height: 20rem;
	}
}
.aboutus h2{
	margin-top: -1.6em!important;
}
.aboutus img{
border-radius:3rem;
}
@media (max-width: 959px) {
	.aboutus img{
border-radius:1rem;
}
}
.box{
	overflow:hidden;
	border-radius:2rem;
	border:1px solid #fff;
	box-shadow: 7px 7px 5px rgba(155, 155, 155, 0.15);
}
.box h3{
	margin:0;
		line-height:1;
  position: relative;
	display:inline-block;
	    padding-bottom: 0;
    margin-bottom: 1em;
font-size: clamp(2.2rem, 2.5vw, 1.875rem) !important;
}
.box h3::before{
  content: "";
  position: absolute;
  top: 50%;
left:110%;
  width: 100vw;
  height: 2px;
  background: #fff;
  transform: translateY(-50%);
}
.box h3::after{
  content: "";
  position: absolute;
  top: 50%;
left: 110%;
  width: .5rem;
  height: .5rem;
  background: #fff;
  border-radius: 50%;
  transform: translate(-50%, -50%);
}
.aboutus .box img{
border-radius:1rem;
}
/* aboutus-bottom */
.aboutus-bottom img{
	aspect-ratio:3 / 2;
	width:100%;
	height:100%;
	object-fit:cover;
}
/* business */
.business{
  position: relative;
	background-position: center top 15rem !important;
	padding-top:2em!important;
}
.swell-block-fullWide.has-bg-img.business::before{
  content: "";
  position: absolute;
    top: -6rem;
    left: 70%;
    width: 30rem;
    height: 30rem;
  background: url("/wp-content/uploads/2026/07/グループ-234.png")
    no-repeat right top / contain;
  pointer-events: none;
  z-index: 0;
}
.business-box{
  background: linear-gradient(
    90deg,
    rgba(45, 127, 195, 1) 0%,
    rgba(72, 186, 126, 1) 100%
  );
  border-radius: 3rem;
  box-shadow: 0 1.2rem 3rem rgba(0, 0, 0, 0.15);
	overflow:hidden;
	color:#fff;
}
@media (max-width: 959px) {
.business-box{
	border-radius:1rem;
	}
}
.business-box:nth-child(3){
	background:#46A7E0;
}
@media (max-width: 599px) {
.business-box .swell-block-columns__inner{
	row-gap:0;
	}
}
/* news */
/* recruit */
.home .post_content h2.recruit{
padding:0;
	margin-bottom:-.15em!important;
}
/* contact-us */
.contact-us{
  position: relative;
  overflow: hidden;
	z-index:0;
	padding-top: 13em !important;
	margin-bottom:0;
}
.contact-us::before{
  content: "";
  position: absolute;
  inset: 0;
  background: url(/wp-content/uploads/2026/08/アセット-13.png)
    no-repeat top / 100%;
  pointer-events: none;
  z-index: 0;
}


.contact-us::after{
  content: "";
  position: absolute;
left: -10rem;
    top: 0%;
    width: 30rem;
    height: 30rem;
  background: url("https://demo-nitibei02.emitas-design.com/wp-content/uploads/2026/07/グループ-153.png")
    no-repeat left bottom / contain;
  pointer-events: none;
  z-index: -1;
}
.contact-us-content{
	line-height:1;
  position: relative;
	display:inline-block;
}
.contact-us-content::before{
    content: "";
    position: absolute;
    bottom: -3rem;
    right: -10%;
    width: 100vw;
    height: 2px;
    background: #38399f;
    transform: translateY(-50%);
}
.contact-us-content::after{
  content: "";
  position: absolute;
    bottom: -3.35rem;
    right: -11%;
  width: .5rem;
  height: .5rem;
  background: #38399f;
  border-radius: 50%;
  transform: translate(-50%, -50%);
}
.wp-elements-48ae0aeca3f51ad12a1daf5308975340{
	font-size: clamp(2.2rem, 2.5vw, 1.875rem) !important;
}
@media (max-width: 599px) {
.contact-us {
padding-top:5em!important;
	}
.contact-us img{
width:30%;
	}
	.contact-us::after {
    left: -8rem;
    width: 20rem;
    height: 20rem;
	}
}

.contact-us .wp-block-paragraph{
line-height:1.8;
}

/* header */
.l-header__inner.l-container,
.l-fixHeader__inner.l-container {
  background: #0000001a;
}

.l-header__inner.l-container,
.l-fixHeader__inner.l-container {
  min-height: 80px;
}
@media (max-width: 959px) {
.l-header__inner.l-container,
.l-fixHeader__inner.l-container {
  min-height: auto;
	}
}	
.c-gnav>.menu-item:last-child>a:after{
content:none;
}
/* blog */
.p-postList__thumb{
border-radius: 1rem;
    overflow: hidden;
}
@media (max-width: 959px) {
	.p-postList__thumb{
border-radius: 1rem;
}
}
/* 下層ページ */
/* fv */
.c-pageTitle{
text-align:center;
  font-size: clamp(1.8rem, 3.5vw, 2.375rem);
	font-weight:500;
}
.l-topTitleArea{
	position:relative;
height:400px;
}
.l-topTitleArea::before{
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.3);
  pointer-events: none;
  z-index: 1;
}
/* タイトル */
#body_wrap:not(.home) .post_content h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)){
  position: relative;
  border-left: none;
  padding: 0 0 0 .5em;
	margin-left:0;
	font-size:22px;
}

#body_wrap:not(.home) .post_content h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title))::before{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 3px;
  height: 100%;
  background: linear-gradient(
    180deg,
    rgba(45, 127, 195, 1) 0%,
    rgba(72, 186, 126, 1) 100%
  );
}
.bg-blue{
	padding:.5em!important;
	border-radius:1rem;
}
#body_wrap:not(.home) .post_content h3.bg-blue::before{
content:none;
}

#body_wrap:not(.home) .post_content h3:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)) {
    padding: 0 0.5em 0.2em;
	font-size:19px;
}
#body_wrap:not(.home) .post_content h3:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title))::before{
	background-color: #f3f3f3;
	height:3px;
}
#body_wrap:not(.home) .post_content h4.border-bottom{
border-bottom:6px solid #f3f3f3;
	margin:.5em 0;
}
/* パンくずリスト */
.-frame-on .p-breadcrumb, .c-infoBar+.p-breadcrumb, .c-infoBar+[data-barba=container]>.p-breadcrumb, .l-topTitleArea+.p-breadcrumb{
background: #2D7FC3!important;
    background: linear-gradient(90deg, rgba(45, 127, 195, 1) 0%, rgba(72, 186, 126, 1) 100%)!important;
}
.p-breadcrumb__text{
color:#fff!important;
}

.c-categoryList__separation:after, .p-breadcrumb__item:after {
    background-color: #fff;
}
.icon-home:before{
display:none;
}
/* table */
.company-table{
position:relative;
}
.company-table::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    background: #2D7FC3;
    background: linear-gradient(180deg, rgba(45, 127, 195, 1) 0%, rgba(72, 186, 126, 1) 100%);
    width: var(--swl-cell1-width);
    height: 100%;
    z-index: 0;
}
.post_content th{
background:transparent;
}
@media (max-width: 959px) {
.company-table::before{
		width:100px;
	}
.company-table.wp-block-table>table tr>:first-child:not(.-no1){
    max-width: 100px !important;
    min-width: 100px !important;
    width: 100px !important;
}
}
/* sp */
.l-header__customBtn.sp_{
display:none;
}

.page-id-7248 .w-pageBottom,
.page-id-6476 .w-pageBottom{
display:none;
}


/* ふきだし */
@media (min-width: 960px) {
.c-balloon__text {
    max-width: 45%;
	    width: 100%;
}

}


/* RECRUIT 画像スライド（TOP） */
.content-left.content-left--w .wp-block-group{
	--slide-w: 30vw;
	--slide-gap: 1.5rem;
	gap: 0;
	overflow: hidden;
	-webkit-mask-image: linear-gradient(to right, #000 calc(100% - 5rem), transparent);
	mask-image: linear-gradient(to right, #000 calc(100% - 5rem), transparent);
}
.content-left.content-left--w .wp-block-group > .wp-block-image{
	flex: none;
	width: var(--slide-w);
	margin: 0 var(--slide-gap) 0 0;
	animation: recruitSlide 40s linear infinite;
}
.content-left.content-left--w .wp-block-group > .wp-block-image img{
	aspect-ratio: 3 / 2;
	object-fit: cover;
}
@keyframes recruitSlide{
	to{ transform: translateX(calc(-4 * (var(--slide-w) + var(--slide-gap)))); }
}
@media (max-width: 599px){
	.content-left.content-left--w .wp-block-group{ --slide-w: 65vw; --slide-gap: 1rem; }
}
@media (prefers-reduced-motion: reduce){
	.content-left.content-left--w .wp-block-group > .wp-block-image{ animation: none; }
}

@media (max-width: 959px) {
		.l-topTitleArea{
height:200px;
}
.page-id-7294 .c-pageTitle{
  color: transparent;
  position: relative;
	text-shadow:none;
}
/* タイトルspだけ改行 */
.page-id-7294 .c-pageTitle::before{
  content: "日米商会を\Aもっとわかりやすく";
	color:#fff;
  white-space: pre-line;
  position: absolute;
  left: 50%;
	transform:translate(-50% , -50%);
  top: 50%;
	width:100%;
}
}