/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Aug 30 2026 | 13:40:26 */
/*----------------------------*/
/*ボタンのカラー調整*/
/*----------------------------*/
/*緑*/
.green_btn a{
	background:#00A494;
}
/*ピンク*/
.pink_btn a{
	background:#EB838A;
}
/*オレンジ*/
.orange_btn a{
	background:#FDA237;
}
/*水色*/
.lightblue_btn a{
	background:#5AC3E1;
}
/*----------------------------*/
/*影ありボタンの影を調整*/
/*----------------------------*/
.is-style-btn_solid a {
    box-shadow: 0 3px 6px rgba(0,0,0,0.16);
}
/*----------------------------*/
/*影*/
/*----------------------------*/
/*ボックスシャドウ*/
.box_shaow{
box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
}
/*----------------------------*/
/*角丸*/
/*----------------------------*/
.-radius5{
  border-radius:5px;
}
.-radius10,.-radius10-img img{
  border-radius:10px;
}
.-radius10-0{
  border-radius:10px 10px 0 0;
}
.-radius0-10{
  border-radius:0 0 10px 10px;
}
/*----------------------------*/
/*余白調整*/
/*----------------------------*/
.-padding1em{
	padding:1em !important;
}
/*----------------------------*/
/*テキスト配置*/
/*----------------------------*/
/*960px以下は右寄せを左寄せ*/
@media (max-width: 960px) {
.has-text-align-right.sp_left,.sp_left{
	text-align:left !important;
}
}
/*PCでは中央揃え*/
@media (min-width: 960px){
.pc_center.has-text-align-left {
    text-align: center;
}
}
/*スマホでは左揃え*/
@media (max-width: 959px){
.sp_left {
    text-align: left;
}
/*スマホでは中央揃え*/
.sp_center {
    text-align: center !important;
}
}
/*spbrをタブレットでは無効*/
@media (min-width: 600px) and (max-width: 959px) {
	.tb_spbr_none .sp_{
		display:none;
	}
}
/*spbrをスマホでは無効*/
@media (max-width: 600px){
	.sp_spbr_none .sp_{
		display:none;
	}
}
/* カラムの高さ合わせる設定 */
@media (min-width: 960px){

  .eight-frame-main > .swell-block-columns__inner{
    align-items: stretch;
  }

  .eight-frame-main .swell-block-column:not(.column_fixed .swell-block-column){
    display: flex;
  }

  .eight-frame-arrange{
    display: flex;
    flex-direction: column;
    flex-grow: 1;
  }

  .eight-frame-arrange > .wp-block-group:last-child{
    flex-grow: 1;
  }

}
@media (min-width: 600px){

  .tb-eight-frame-main > .swell-block-columns__inner{
    align-items: stretch;
  }

  .tb-eight-frame-main .swell-block-column:not(.column_fixed .swell-block-column){
    display: flex;
  }

  .tb-eight-frame-arrange{
    display: flex;
    flex-direction: column;
    flex-grow: 1;
  }

  .tb-eight-frame-arrange > .wp-block-group:last-child{
    flex-grow: 1;
  }

}
@media (max-width: 959px){

  .ts-eight-frame-main > .swell-block-columns__inner{
    align-items: stretch;
  }

  .ts-eight-frame-main .swell-block-column:not(.column_fixed .swell-block-column){
    display: flex;
  }

  .ts-eight-frame-arrange{
    display: flex;
    flex-direction: column;
    flex-grow: 1;
  }

  .ts-eight-frame-arrange > .wp-block-group:last-child{
    flex-grow: 1;
  }
}
/*一番下の要素を下揃えにする*/
.wp-block-group__inner-container {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.card-bottom {
  margin-top: auto;
}
/*----------------------------*/
/*背景画像をずらす*/
/*----------------------------*/
.shift_cover img.wp-block-cover__image-background {
        bottom: auto;
        height: 70%;
}
@media (max-width: 959px){
	.shift_cover img.wp-block-cover__image-background {
        bottom: auto;
        height: 70%;
}
}
/*----------------------------*/
/*tb.spでカラムを反転*/
/*----------------------------*/
@media (max-width: 960px) {
  .column_reverse > .swell-block-columns__inner {
    display: flex;
    flex-direction: column-reverse;
  }
}
/*----------------------------*/
/* 幅の調整 */
/*----------------------------*/
.-fit{
	width:fit-content;
	margin:0 auto;
}
/*----------------------------*/
/* 絶対配置 */
/*----------------------------*/

/* 左下 */
.bl_parent {
	position: relative;
	z-index:10;
}

.bl_children {
	position: absolute;
	bottom: -9em;
	left: 5%;
	z-index: 1;
}

/* 右上 */
.tr_parent {
	position: relative;
	z-index:10
}

.tr_children {
	position: absolute;
	top: -5em;
	right: 5%;
	z-index: 1;
}


/*----------------------------*/
/* PC：画面端から5%に固定 */
/*----------------------------*/
@media screen and (min-width: 961px) {

	.bl_children {
		left: calc(50% - 45vw);
	}

	.tr_children {
		right: calc(50% - 45vw);
	}

}
/*背景色の調整*/
.swl-bg-color {
    border-radius: 3px;
    padding: 0.35em;
}

/*-----------------------------------*/
/*ヘッダー*/
/*-----------------------------------*/
.c-gnav {
    color: #3A4268;
    font-weight: 500;
}
/*スマホ時の背景色*/
.p-spMenu__inner::before {
    background: #fff;
}
/*スマホ時のボタン*/
.p-spMenu__bottom {
    margin-top: 1em;
}
.p-spMenu__inner .is-style-btn_normal.contact a {
    font-size: 1.2em;
}
.c-widget__title.-spmenu {
    background: #78CFF7;
}

/*-----------------------------------*/
/*フッター*/
/*-----------------------------------*/
#footer .c-widget__title{
	margin-bottom:0;
	color:#3A4268;
}
#footer .c-widget__title.-footer::after,
#footer .c-widget__title.-footer:before{
    background: #3A4268;
	height: 2px;
}
#footer .c-widget__title.-footer::before {
    background: none;
}
#footer .c-listMenu a {
    border-bottom: 1px solid #707070;
}
@media not all and (min-width: 960px) {
    .w-footer__box+.w-footer__box {
        margin-top: 0em;
    }
}

/*背景画像*/
.l-footer {
    overflow: hidden;
}
.l-footer__widgetArea{
  position:relative;
}
.l-footer__widgetArea::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 300px;
    height: 175px;
    background-image: url(https://soraie.co.jp/wp-content/uploads/2026/07/footer_img.png);
    background-size: contain;
    background-repeat: no-repeat;
    z-index: -1;

    transform: none;
}
/*コピーライト*/
.l-footer__foot {
    background: #029EE6;
	color:#fff;
}
/* ▼ サブメニューを持つ親メニューのみに矢印を表示 */
.menu-item-has-children a > .ttl {
  position: relative;
  padding-right: 1.2em;
}
.menu-item-has-children > a >.ttl::after {
  content: "\f078";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  font-size: 0.8em;
  color: currentColor;
  pointer-events: none;
font-size: 11px;
}
.menu-item-has-children:hover a > .ttl::after {
  transform: translateY(-50%) rotate(180deg);
  transition: transform 0.3s ease;
}
.l-fixHeader__gnav .menu-item-has-children > a >.ttl::after {
    top: 50%;
}