/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: May 14 2025 | 11:50:53 */
html {
	margin-top : 0 !important;
  font-size: 100%; /* 基本フォントサイズを16pxに設定 */
}

body {
	min-width : 0 !important;
}

p {
	font-size:1rem;
}

.inner {
/* 	.es-containerと同じにしています */
	width: 100%;
	max-width: 1180px; 
	padding-right: 20px;
	padding-left: 20px; 
	margin: 0 auto;
}

.inner.-maw-98rem {
  max-width: 980px; 
}

.es-container.page-header {
  position: relative;
  width: 100%;
  padding-top: 5% ;
  padding-bottom: 20% ;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin: 0;
  max-width: none;
  border-bottom: none;
}



@media only screen and (max-width:768px) {
	.es-container.page-header  {
			margin-bottom:0%;
		  padding-top: 20% !important;
		  padding-bottom: 34% !important;
	}
}

.es-container.page-header::after {
  content: "";
  display: block;
  background: url("https://www.4sre.co.jp/app/uploads/sites/1209/2024/09/fcc100c6845a4f8642e2fc2b267f00e7.png") no-repeat bottom center;
  background-size: cover;
  position: absolute;
  top: 0;
  margin: auto;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0; /* Ensure the background image stays behind the content */
}
@media only screen and (max-width:768px) {
	.es-container.page-header::after  {
/* 		    background: url("https://www.4sre.co.jp/app/uploads/sites/1209/2024/07/27c3d9fef48872242c134fd225096aef.png") no-repeat center bottom; */
		    background: url("https://www.4sre.co.jp/app/uploads/sites/1209/2024/09/c11deee75c8e4def95d558bb2f302878.png") no-repeat center bottom;
		
  background-size: cover;
		
	}
}

a {
  color: #000000;
}


/* 
swiperのスタイル
 */
.swiper-button-prev,
.swiper-button-next {
  top: auto;
}
@media only screen and (max-width:768px) {
  .swiper-button-prev,
  .swiper-button-next {
    width: 3.125rem;
    height: 3.125rem;
    background-color: #EA9900;
    border-radius: 50%;
  }
  .swiper-button-prev::before,
  .swiper-button-next::before {
    position: absolute;
    top: 50%;
    left: 50%;
    display: inline-block;
    width: 0.938rem;
    height: 0.625rem;
    content: "";
    background-image: url(../../assets/image/common/icon_arrow_right_white_1.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    transform: translate(-50%, -50%);
  }
}
.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 1;
}
.swiper-button-prev.swiper-button-disabled::before,
.swiper-button-next.swiper-button-disabled::before {
  background-image: url(../../assets/image/common/icon_arrow_right_primary_1.svg);
}

.swiper-button-prev::before {
  transform: translate(-50%, -50%) rotate(-180deg);
}

html.-fixed {
  overflow: hidden;
}


/* 
breadcrumb
 */

.main-header-bar.es-header-breadcrumb {
	background-color :#FFF7E7;
}
.page .breadcrumb {
  margin: 2rem 0 5.5rem;
}
@media only screen and (max-width:768px) {
  .page .breadcrumb {
    margin: 1rem 0 4.688rem;
  }
}
.page .breadcrumb .breadcrumb__list {
  display: flex;
}
.page .breadcrumb .breadcrumb__item {
  padding-left: 0.688rem;
  margin-left: 0.5rem;
  position: relative;
}
.page .breadcrumb .breadcrumb__item:not(:first-child)::before {
  content: "";
  position: absolute;
  width: 0.188rem;
  height: 0.375rem;
  top: 50%;
  left: 0;
  background: url(../../Image/common/ico_arrow-next_gray.svg) no-repeat 50%/contain;
  transform: translateY(-50%);
}
.page .breadcrumb .breadcrumb__item:first-child {
  padding: 0;
  margin: 0;
}
.page .breadcrumb .breadcrumb__item > a {
  font-size: 0.75rem;
  font-weight: 400;
  letter-spacing: 0.016em;
}
.page .breadcrumb .breadcrumb__item:last-child > a {
  pointer-events: none;
}
.page .breadcrumb .breadcrumb__item:not(:last-child) > a {
  word-break: keep-all;
}

/* 
見出し
 */

.page .entry-content > h2.wp-block-heading::after {
	display:none;
}
.page .entry-content > h2.wp-block-heading,
.page .r_page_secTtl,
.page-header h1.entry-title{
	margin-top:-0.5em;
  font-family: "Yu Gothic", YuGothic, sans-serif;
  font-size: clamp(1.75rem, 3.75vw, 3rem);
  line-height: 1.25;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: #56392E;
}
.page .r_page_secTtl2 {
  font-family: "Yu Gothic", YuGothic, sans-serif;
  font-size: clamp(1.5rem, 2.5vw, 2rem);
  line-height: 1.875;
  font-weight: 700;
  letter-spacing: 0.08em;
  margin-bottom: 0.625rem;
  color: #56392E;
}
@media only screen and (max-width:768px) {
  .page .r_page_secTtl2 {
    line-height: 1.5;
    letter-spacing: 0.064em;
  }
}
.page .r_page_secTtl3 {
  font-family: "Yu Gothic", YuGothic, sans-serif;
  font-size: clamp(1.125rem, 1.875vw, 1.5rem);
  line-height: 1.67;
  font-weight: 700;
  letter-spacing: 0.064em;
  color: #56392E;
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 0.625rem;
}
@media only screen and (max-width:768px) {
  .page .r_page_secTtl3 {
    line-height: 1.33;
  }
}
.page .r_page_secTtl3 .circle {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.428;
  letter-spacing: 0.02em;
  background-color: #EA9900;
	color: #fff;
  width: clamp(4rem, 7.03125vw, 5.625rem);
  height: clamp(4rem, 7.03125vw, 5.625rem);
  border: 0.1875rem solid #EA9900;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

/* 
フォーム
 */
form .custom_checkbox {
  position: relative;
  display: block;
  padding-left: 1.563rem;
  font-size: 0.875rem;
  letter-spacing: 0;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
@media only screen and (max-width:768px) {
  form .custom_checkbox {
    font-weight: 400;
  }
}
form .custom_checkbox .des {
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0;
  color: #BFBEBE;
  position: relative;
  bottom: 1px;
}
form .custom_checkbox > input {
  position: absolute;
  width: 0;
  height: 0;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
}
form .custom_checkbox > input:checked ~ .checkmark {
  background-color: #EA9900;
}
form .custom_checkbox > input:checked ~ .checkmark:after {
  opacity: 1;
}
form .custom_checkbox .checkmark {
  position: absolute;
  top: 48%;
  left: 0;
  width: 1.063rem;
  height: 1.063rem;
  background-color: transparent;
  border: 1px solid #707070;
  transform: translateY(-50%);
}
form .custom_checkbox .checkmark:after {
  position: absolute;
  top: 41%;
  left: 49%;
  width: 0.313rem;
  height: 0.5rem;
  content: "";
  border: solid #ffffff;
  border-width: 0 2px 2px 0;
  transform: translate(-50%, -50%) rotate(45deg);
  transition: opacity 0.1s;
  opacity: 0;
}
form .custom_radio {
  position: relative;
  display: block;
  padding-left: 2.25rem;
  font-size: 1.125rem;
  font-weight: 700;
  letter-spacing: 0;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
@media only screen and (max-width:768px) {
  form .custom_radio {
    font-weight: 400;
  }
}
form .custom_radio > input {
  position: absolute;
  width: 0;
  height: 0;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
}
form .custom_radio > input:checked ~ .checkmark:after {
  opacity: 1;
}
form .custom_radio .checkmark {
  position: absolute;
  top: 50%;
  left: 0;
  width: 1.625rem;
  height: 1.625rem;
  background-color: transparent;
  border: 1px solid #BFBEBE;
  border-radius: 50%;
  transform: translateY(-50%);
}
form .custom_radio .checkmark:after {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background-color: #EA9900;
  transform: translate(-50%, -50%);
  transition: opacity 0.1s;
  opacity: 0;
}
form .custom_select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: relative;
  width: 7rem;
  border-radius: 0.5rem;
  border: 1px solid #BFBEBE;
  color: #000000;
  background-color: transparent;
  font-size: 0.875rem;
  line-height: 1;
  padding: 0.75rem 0.625rem;
  background: url(../../Image/common/ico_arrow_down_gray.svg) no-repeat 95% 50%/auto;
  cursor: pointer;
}
form .custom_select::-ms-expand {
  display: none;
}
form .custom_select:not(:valid) {
  color: red;
}
form input[type=reset] {
  position: relative;
  width: 100%;
  height: 2.5rem;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 0.875rem;
  letter-spacing: 0;
  color: #000000;
  background-color: #BFBEBE;
  border-radius: 500px;
  transition: all 0.4s cubic-bezier(0.23, 1, 0.32, 1);
}
form input[type=reset]:hover {
  opacity: 0.7;
}
form input[type=submit] {
  position: relative;
  width: 100%;
  height: 2.5rem;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0;
  color: #ffffff;
  background-color: #EA9900;
  border-radius: 500px;
  transition: all 0.4s cubic-bezier(0.23, 1, 0.32, 1);
}
form input[type=submit]:hover {
  opacity: 0.7;
}



.page .entry-header {
  height: -moz-fit-content;
  height: fit-content;
  margin-bottom: 0;
  z-index: 2;
/*   position: absolute;
  top: 3.7vw;
  bottom: auto;
  left: 0;
  right: 0; */
}
@media only screen and (max-width:768px) {
	.page .entry-header {
		top:20vw;
	}
}

/* デフォルトのヘッダー　*/
header#masthead {
  display: none;
}

.r_collapse_content {
	display	:none;
}


.es-list-wrapper {
    padding-bottom: 80px;

    padding-top: 60px;
}

.home-section__title {
    color: #223542;
    line-height: 1.2;
    letter-spacing: 0.1em;
}
 .text-center {
    text-align: center;
}
.home-section__title .title-en {
    font-size: 3rem;
    line-height: 1.4;
}
.font-pt {
    font-family: serif;
}
.home-section__title .title-ja {
    display: block;
    font-size: 1.2rem;
    font-weight: bold;
    margin-top: 6px;
}

/* 
お問い合わせ系
*/
.wpcf7 .wpcf7-form span.required {
	background-color : var(--primary-color);
	margin-left : 0;
}

.wpcf7 .wpcf7-form .wpcf7-submit {
	height : auto !important;
	width:fit-content;
}

.es_form_2col_wrap p.es-form-item:not(.note)>label {
	display :flex;
	gap:.5rem;
	align-items:flex-end;
	flex-wrap:wrap;
}
.es_form_2col_wrap p.es-form-item:not(.note)>label>p {
	display :flex;
	gap:.5rem;
	align-items:flex-end;
	flex-wrap:wrap;
}

.es_form_2col_wrap p.es-form-item:not(.note) {
	gap:.5rem;
}

.es_result_block .es-block-column.main_column .spec-detail {
	display:none;
}

html body .wp-block-button {
	max-width:200px;
	width:100%;
}
html body .wp-block-button__link {
	border-radius:10rem !important;
	font-weight:bold;
	width:100%;

}

/* 
モーダル
*/
.modal {
	padding:0 !important;
}

 .modal .inner {
	width:100%;
	max-width:100%;
	height:100%;
	max-height:100%;
	border-radius:8px;
}
.page .modal,
.single .modal{
	max-width:100% !important;
	z-index:10000;
	margin:auto;
}
@media only screen and (max-width:768px) {
.page .modal {
	z-index:10000;
}
	
	.page .modal .wp-block-button__link {
		width:100%;
		margin-right:0;
		margin-left:0;
	}
}


/*  
カード card
*/
.es-list.grid h3.wrap {
	font-size:130%;
	margin-bottom:.4em;
	font-weight:600;
	
}

/* 
paddingのリセット
*/
.vertical-padding,
.es-list-wrapper,
.uagb-column__inner-wrap,
.uagb-columns__wrap:not(.fullBg){
	padding-top:0 !important;
	padding-bottom:0 !important;
}


@media only screen and (max-width:768px) {

	.feature-advertisement-block .es_new_block_item {
		width:100%;
	}

	.feature-advertisement-block .es_new_block_item .es_new_block_salespoint {
		display:none;
	}
}


.wpcf7-list-item-label {
	min-width:140px;
}

.form_wrap {
	margin-left:0!important;
	margin-right:0!important;
}
.es-form-control-target-chiiki {
	display:none;
}

.es-form-control-shubetsu-flex > div >p {
	width:70%;
	display:flex;
}

.es-form-control-shubetsu-flex >p {
margin-bottom:0;
}

@media only screen and (max-width:768px) {
	.es-form-control-shubetsu-flex > div > p {
	width:100%;
	}
}
.es_form_2col_wrap .es-form-item:not(.note)>p>label {
    display: flex
;
    gap: .5rem;
    align-items: flex-end;
    flex-wrap: wrap;
}
@media (min-width: 481px) {
    .es_form_2col_wrap .es-form-item:not(.note)>p>label {
        font-size: 18px;
        font-size: 1.125rem;
        margin-bottom: 0;
        width: calc(10em + 44px);
    }
}
.es_form_2col_wrap .es-form-item:not(.note)>p>label {
    display: block;
    font-weight: 700;
    line-height: 1.1;
    margin-bottom: .5em;
}



.es-form-control-target-chiiki {
	max-height:300px;
	overflow-y:scroll;
}
.es-form-control-target-chiiki .wpcf7-list-item {
	width:25%;
	margin-right:0;
}
@media only screen and (max-width:768px) {
.es-form-control-target-chiiki .wpcf7-list-item {
	width:50%;
}
}

.es_form_2col_wrap p.es-form-item:not(.note),
.es_form_2col_wrap div.es-form-item:not(.note, .submit){
    gap: .5rem;
}
@media (min-width: 481px) {
    .es_form_2col_wrap p.es-form-item:not(.note),
    .es_form_2col_wrap div.es-form-item:not(.note, .submit){
        align-items: center;
        display: flex;
        justify-content: space-between;
        padding: 30px 0 15px;
    }
}
.es_form_2col_wrap p.es-form-item:not(.note),
.es_form_2col_wrap div.es-form-item:not(.note, .submit){
    border-top: 1px solid #bdbdbd;
    padding: 15px 0 10px;
    text-align: left;
}


.es_form_2col_wrap div.es-form-item:not(.note, .submit)>label {
    display: flex;
    gap: .5rem;
    align-items: flex-end;
    flex-wrap: wrap;
}
.es_form_2col_wrap div.es-form-item:not(.note, .submit)>p>label {
    display: flex;
    gap: .5rem;
    align-items: flex-end;
    flex-wrap: wrap;
}
.es-form-control-target-chiiki .wpcf7-list-item {
	width:33% !important;
}

@media only screen and (max-width:768px) {
.es-form-control-target-chiiki .wpcf7-list-item {
	width:50% !important;
}
}
@media (min-width: 481px) {
    .es_form_2col_wrap div.es-form-item:not(.note, .submit)>label {
        font-size: 18px;
        font-size: 1.125rem;
        margin-bottom: 0;
        width: calc(10em + 44px);
    }
	.es_form_2col_wrap div.es-form-item:not(.note, .submit)>p>label {
        font-size: 18px;
        font-size: 1.125rem;
        margin-bottom: 0;
        width: calc(10em + 44px);
    }
}
.es-form-control-shubetsu{
	width: 100%;
}
@media (min-width: 481px) {
    .es-form-control-shubetsu {
        width: calc(100% - 10em - 44px);
    }
}
.es_form_2col_wrap div.es-form-item:not(.note, .submit)>label {
    display: block;
    font-weight: 700;
    line-height: 1.1;
    margin-bottom: .5em;
}
.wpcf7 .wpcf7-form label {
    position: relative;
}

@media (min-width: 481px) {
    .es_form_2col_wrap div.es-form-item:not(.note, .submit)>span {
        width: calc(100% - 10em - 44px);
    }
}


#adminbarsearch a {
	display:none !important;
}

