@charset "utf-8";
/* =======================================

        CommonElements

======================================= */
body {
  width: 100%;
  font-size: 14px;
  /*line-height: 1.5;*/
  line-height: 1.7;
  color: #333;
  text-align: justify;
  background-color: #fff;
  /*font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ",
    Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;*/
  font-family: 'Noto Serif JP', serif;
  
}

.flex {
  display: flex;
}

.sp_none {
  display: none !important;
}

/*width ==============================*/
.inbox,
.inbox2 {
  padding: 0 5%;
}

/*font ===============================*/
.gothic {
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
}

/* 明朝 */
.mincho {
  font-weight: bold;
  font-family: "Noto Serif JP", serif;
}

/*bk color ============================*/
.bk1,
.editor h2,
#navi ul li::after,
.contact_btn li [type="submit"],
.contact_btn li [type="button"],
.wp-pagenavi a:hover,
.wp-pagenavi span.current {
  background-color: #cab191;
}

.bk2,
.editor h3,
.sec2_list li:hover {
  background-color: #cab1911A;
}

/*color ==============================*/
.color1,
.cmn_ttl1,
#panel li:hover a,
.h_num li a #breadcrumb li a {
  color: #6C5E4C;
}

/* aタグ------ */
.btn:hover a,
#breadcrumb li a,
.drawer-menu li:hover a {
  color: #cab191;
}

/* ボーダー---- */
.line,
.editor h3,
.wp-pagenavi a,
.wp-pagenavi span,
.wp-pagenavi a:hover,
.wp-pagenavi span.current {
  border-color: #cab191;
}

/*btn ================================*/
.btn {
  text-align: center;
  transition: 0.3s;
  /*border-width: 1px;
  border-style: solid;*/
  display: table;
  margin: auto;
  position: relative;
  box-sizing:border-box;
  outline:solid 1px #cab191;
  outline-offset: 0px;
}

.btn a {
  color: #fff;
  display: block;
  padding: 12px 55px 10px 55px;
}

.btn::before {
  position: absolute;
  transform:translate(-50%,-50%);
  top: 50%;
  left: 50%;
  width: calc(100% - 8px);
  height: calc(100% - 8px);
  content: '';
  -webkit-transition: all .3s;
  transition: all .3s;
  outline: 1px solid #fff;
}

.btn:hover {
  background-color: #fff;
  outline:solid 1px #cab191;
  outline-offset: 0px;
  box-sizing:border-box;
}

.btn.line:hover::before {
width: calc( 100% - 2px );
  height: calc( 100% - 2px );
  content: '';
}

/*map ==============================*/
.map iframe {
  width: 100%;
  height: 250px;
}

/*header
--------------------------------------------*/
#header {
  width: 100%;
  box-sizing: border-box;
  background-color: #fff;
  position: fixed;
  top: 0;
  z-index: 9999;
  transition: 0.3s;
}

.h_logo {
  float: left;
  font-size: 25px;
  padding-left: 4%;
  margin-top: 8px;
  transition: 0.3s;
}

.h_right {
  float: right;
  align-items: center;
}

.h_info {
  align-items: center;
  position: relative;
  z-index: 999;
}

.h_num {
  font-size: 31px;
  margin-right: 30px;
  position: relative;
}

.h_num li {
  font-size: 31px;
  position: relative;
  margin-right: 55px;
  font-weight: 500;
}

.h_num li:last-child {
  margin-right: 0;
}

.h_num li::before,
.sp_btt-link li::before {
  color: #fff;
  position: absolute;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}

.tel::before,
.sp_btt-link li.tel_fax::before {
  font-size: 18px;
  content: "\f879";
  top: 20px;
  left: 50px;
  transform: rotate(30deg);
  -moz-transform: rotate(30deg);
  -webkit-transform: rotate(30deg);
}

.h_num li.mobile::before,
.sp_btt-link li.mobile::before {
  font-size: 24px;
  content: "\f3cd";
  top: 15px;
  left: 45px;
}

.h_num li.fax:before {
  font-size: 25px;
  content: "\f1ac";
  top: 6px;
  left: -25px;
}
.h_num li.fax {
  padding-left: 5px;
}

.sp_btt-link li.mail::before {
  font-size: 20px;
  content: "\f0e0";
  top: 18px;
  left: 14%;
}

.h_info .time {
  font-size: 14px;
  margin-right: 25px;
  line-height: 1.3;
}

.h_btn {
  color: #fff;
  font-size: 16px;
  text-align: center;
  display: none;
}
.h_btn a {
  color: #fff;
  display: block;
  padding: 13px 20px 12px;
  transition: 0.5s;
}
.h_btn:hover a {
  background-color: rgba(255, 255, 255, 0.2);
}

.h_btn i {
  font-size: 28px;
  font-weight: normal;
}

/* logo */
.h_logo img {
  width: auto;
  height: 40px;
}

.f_logo img {
  width: auto;
  max-height: 55px;
}

.h_logo:hover,
.f_logo:hover {
  opacity: 0.7;
}

/*navi
--------------------------------------------*/
#navi {
  margin-right: 40px;
  display: none;
}

#navi ul.flex {
  justify-content: center;
}

#navi ul li {
  transition: 0.5s;
  position: relative;
}

#navi ul li::after {
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  content: "";
  width: 85%;
  height: 2px;
  opacity: 0;
  margin: auto;
  transition: 0.3s;
}

#navi ul li:hover::after {
  bottom: 0;
  opacity: 1;
}

#navi ul li a {
  color: #333;
  display: block;
  padding: 10px 20px;
}

/*navi right
--------------------------------------------*/
/* toggle-panel */
#panel-btn {
  display: inline-block;
  position: relative;
  width: 55px;
  height: 55px;
  transition: 0.3s;
  background-color: #cab191;
}

#panel-btn-icon {
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  width: 25px;
  height: 3px;
  margin: -1px auto 0;
  background: #fff;
  transition: 0.2s;
}

#panel-btn-icon:before,
#panel-btn-icon:after {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 25%;
  width: 25px;
  height: 3px;
  margin-left: -6px;
  background: #fff;
  transition: 0.3s;
}

#panel-btn-icon:before {
  margin-top: -11px;
}

#panel-btn-icon:after {
  margin-top: 9px;
}

#panel-btn .close {
  background: transparent;
}

#panel-btn .close:before,
#panel-btn .close:after {
  margin-top: -3px;
}

#panel-btn .close:before {
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}

#panel-btn .close:after {
  transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
}

#panel {
  margin: 0 0 0 0;
  padding: 0;
  background: #fff;
  position: fixed;
  right: -100%;
  z-index: 9999;
  top: 55px;
  width: 100%;
  padding: 15px 10px 10px;
  box-sizing: border-box;
  /*縦スクロール　▽*/
  height: 90vh;
  overflow-y: scroll;
}

#panel ul {
  display: flex;
  flex-wrap: wrap;
}

#panel li {
  width: 100%;
  transition: 0.5s;
  font-size: 17px;
  border-bottom: 1px dashed #ccc;
}

#panel li:nth-last-child(-n + 4) {
  width: 50%;
  font-size: 14px;
}

#panel li a {
  color: #333;
  padding: 15px 10px;
  display: block;
}

/*main visual
--------------------------------------------*/
/* 下層共通 */
.mainv_w,
#page_ttl-w {
  overflow: hidden;
  position: relative;
}

#mainv,
.page_ttl-in {
  max-width: 100%;
  position: relative;
  margin-top: 50px;
}

.mainv_copy,
.page_ttl {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 99;
  font-weight: 500;
  color:#6C5E4C;
}

.mainv_copy span,
.page_ttl span {
  display: inline-block;
  padding: 5px 15px;
  margin: 5px 0;
  /*ext-align: right;*/
  box-sizing: border-box;
  background-color: rgba(255, 255, 255, 0.9);
}

.page_ttl span {
  padding: 10px 20px;
  min-width:220px;
}

/* ================ */

#mainv {
  height: 450px;
}

#image1 {
  background: url(https://marrygarden.jp/design/uploads/2023/07/26883877_m.jpg) no-repeat center center;
  background-color: gainsboro;
}
#image2 {
  background: url(https://marrygarden.jp/design/uploads/2023/06/26883880_m.jpg) no-repeat center left;
  background-color: gray;
}
#image3 {
  background: url(https://marrygarden.jp/design/uploads/2023/06/26883895_m.jpg) no-repeat center center;
  background-color: #333;
}
#image1,
#image2,
#image3 {
  height: 450px;
  background-size: cover;
}

.bx-wrapper {
  width: 100%;
  height: auto;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
}

.bx-viewport {
  overflow: visible !important;
  width: 100% !important;
  margin: auto;
  text-align: center;
}

.bx-controls {
  display: none;
}

.mainv_copy {
  font-size: 20px;
  position: absolute;
  bottom: 5%;
text-shadow: 0px 0px 6px rgba(255, 255, 255, 1),
	0px 0px 6px rgba(255, 255, 255, 1),
	0px 0px 6px rgba(255, 255, 255, 1),
	0px 0px 6px rgba(255, 255, 255, 1),
	0px 0px 6px rgba(255, 255, 255, 1),
	0px 0px 6px rgba(255, 255, 255, 1),
	0px 0px 15px rgba(255, 255, 255, 1), 
	0px 0px 15px rgba(255, 255, 255, 1), 
	0px 0px 15px rgba(255, 255, 255, 1), 
	0px 0px 15px rgba(255, 255, 255, 1);
	transform: translateX(-50%);
	left: 50%;
	width:100%;
	text-align: center;
}

/*content
--------------------------------------------*/
#top_content {
  padding-bottom: 50px;
}

.sec_ttl,
.sec_type1 h2 {
  font-weight: 500;
  text-align: center;
  margin-bottom: 25px;
  letter-spacing: 2px;
}

.sec_type2 .btn,
#tp_archive1 .btn,
#tp_archive2 .btn {
  width: 70%;
  margin: auto;
  margin-top: 30px;
}

.sec_type2,
#tp_archive1 > div.inbox,
#tp_archive2 > div.inbox {
  position: relative;
}

#tp_archive1 > div.inbox {
  padding: 0;
}

.ttl_bottom {
  margin-bottom: 20px;
}

/*section1============*/
.sec_type1 {
  margin-top: 50px;
}

.sec_type1 div.inbox2 {
  overflow: hidden;
}

.sec_type1 div.flex {
  justify-content: space-between;
  flex-wrap: wrap;
}

.sec_type1 .under_type3 {
  margin-bottom: 0;
}

.sec1_txt {
  text-align: justify;
}

.sec_type1 .under_type3 .box .img {
  width: 100%;
  height: 200px;
  background-color: #e6e6e6;
}

.sec_type1 .btn {
  width: 70%;
  margin: auto;
  margin-top: 30px;
}

.sec_type1 .btn a {
  padding: 10px 55px 10px 45px;
}

/*section2============*/
.sec_type2 {
  margin-top: 40px;
}

.sec2_img {
  position: relative;
}

.sec2_list li .thumb img {
  transition: 1s; /*変化の時間*/
  background-color: #fff;
}

.sec2_list li:hover .thumb img {
  min-height: 110%;
  min-width: 110%;
}

.sec_type2 div.inbox {
  position: relative;
}

.sec2_list ul.flex {
  flex-wrap: wrap;
  margin-top: 40px;
}

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

.sec2_list li:nth-child(-n + 3) {
  margin-top: 0;
}

.sec2_list li a {
  display: block;
  padding-bottom: 40px;
}

.sec2_list li .thumb {
  width: 100%;
  height: 250px;
  margin-bottom: 20px;
  overflow: hidden;
}

.sec2_list li h3 {
  font-size: 20px;
  font-weight: 500;
  margin-bottom: 5px;
}

.sec2_list li h3,
.sec2_list li p {
  padding: 0 15px;
}

.sec_type2 .btn {
  margin-top: 20px;
}

.sec2_list li p {
  color: #333;
  text-align: left;
}

/*tp_archive1============*/
#tp_archive1 {
  margin-top: 50px;
  padding: 30px 10px;
}

/* gallery cmn */
.post_list.flex {
  flex-wrap: wrap;
  justify-content: space-between;
}

.post_list article {
  width: 48%;
  margin-top: 50px;
}

.post_list article:nth-child(-n + 2) {
  margin-top: 0;
}

.post_list article .post_img {
  width: 100%;
  height: 150px;
  margin-bottom: 10px;
  /*background-color: #ccc;*/
}

.post_list article h3 {
  color: #333;
  font-size: 16px;
  margin-top: 3px;
}

.post_list article:hover h3 {
  opacity: 0.7;
  text-decoration: underline;
}

.day {
  font-size: 14px;
}

/*tp_archive2============*/
#tp_archive2 {
  margin-top: 50px;
}

.tp_news.flex {
  justify-content: space-between;
  flex-wrap: wrap;
  display: block;
}

.tp_news article {
  margin-bottom: 25px;
}

.tp_news article:last-child {
  margin-bottom: 0;
}

.tp_news-img {
  width: 120px;
  height: 100px;
  margin-right: 10px;
  /*background-color: #ccc;*/
}

.tp_news-rt {
  max-width: 60%;
  font-size: 14px;
}

.tp_news article h3 {
  font-size: 15px;
  font-weight: 600;
  padding-left: 10px;
  margin-bottom: 5px;
  border-left-width: 4px;
  border-left-style: solid;
}

.tp_news article:hover h3 {
  text-decoration: underline;
}

.tp_news article .day {
  margin-top: 5px;
  font-size: 14px;
}

.tp_news article p {
  color: #333;
}

.tp_news article .txt {
  font-size: 14px;
}

/*footer
--------------------------------------------*/
.pageTop {
  position: fixed;
  bottom: 11%;
  right: 1%;
  z-index: 1000;
  cursor: pointer;
  padding: 10px 13px 15px;
}
.pageTop:hover {
  opacity: 0.8;
}

.btt_map iframe {
  width: 100%;
  height: 250px;
}

#footer {
  color: #fff;
    padding-bottom: 64px;
}
#footer .inBox{
  background: rgba(0,0,0,0.5)
}
.f_inner {
  padding: 15px 0 35px;
  justify-content: space-between;
  display: block;
  text-align: center;
}

.f_logo {
  font-size: 27px;
  margin: auto;
  margin-bottom: 15px;
}
.f_logo a {
  color: #fff;
}

.f_sns {
  margin: 10px 0 20px;
}

.f_sns ul.flex {
  justify-content: center;
}

.f_sns li {
  font-size: 34px;
  margin: 0 15px;
  transition: 0.5s;
  font-family: "Font Awesome 5 Brands";
}

.f_sns li i {
  color: #fff;
}

#footer_navi {
  display:none
}

.f_sns li.tw_link i::before {
  font-size: 28px;
}

.f_sns li:hover i {
  opacity: 0.7;
}

.f_add {
  font-size: 14px;
}

.f_add ul.flex {
  justify-content: center;
  flex-wrap: wrap;
}

.f_add ul.flex li {
  margin-right: 10px;
}
.f_add ul.flex li:last-child {
  margin-right: 0;
}

.f_copy {
  color: #fff;
  font-size: 14px;
  text-align: center;
  padding: 5px 0;
  border-top: 1px solid #fff;
}
.f_copy:hover {
  opacity: 0.8;
}

.f_copy a {
  color: #fff;
}

.sp_btt-link {
  position: fixed;
  bottom: 0;
  z-index: 9999;
  width: 100%;
  border-top: 1px solid #fff;
}

.sp_btt-link li {
  width: 50%;
  font-size: 20px;
  text-align: center;
  letter-spacing: 2px;
  position: relative;
}

.sp_btt-link li:first-child {
  border-right: 1px solid #fff;
}

.sp_btt-link li a {
  color: #fff;
  display: block;
  padding: 17px 15px 17px 30px;
}

.sp_btt-link li.mail a {
  padding-left: 40px;
}

/* 200619 追記 */
.sp_btt-link li:nth-child(3) {
  border-left: 1px solid #fff;
}
.sp_btt-link li:nth-child(3) a {
  padding-left: 15px;
}

.sp_btt-link li.tel:before,
.sp_btt-link li.mobile:before,
.sp_btt-link li.tel_fax:before {
  left: 20%;
}

/*下層
--------------------------------------------*/
/*下層共通--------------------*/
/*表題===========*/
#page_ttl-w::after {
  right: 0;
}

.page_ttl-in {
  padding: 130px 0 60px;
  background: url(https://marrygarden.jp/design/uploads/2023/06/26415564_m.jpg) no-repeat center;
  background-size: cover;
}

.page_ttl {
  font-size: 22px;
  text-align: center;
  bottom: 60px;
  left: 0;
  right: 0;
}

/*ぱんくず=========*/
#breadcrumb {
  margin-top: 10px;
}

#breadcrumb li {
  float: left;
  font-size: 14px;
  color: #787878;
  position: relative;
  padding-right: 10px;
  margin-right: 7px;
}

#breadcrumb li::before {
  content: "/";
  position: absolute;
  top: 0;
  right: 0;
}
#breadcrumb :last-child::before {
  content: "";
}

/*テーブル===============*/
.cmn_table dl {
  border-bottom: 1px dotted #bebebe;
}

.cmn_table dl:nth-child(1) {
  border-top: 1px dotted #bebebe;
}

.cmn_table dt,
.cmn_table dd {
  vertical-align: top;
  box-sizing: border-box;
}

.cmn_table dt {
  text-align: left;
  padding: 15px 15px;
}

.cmn_table dd {
  padding: 15px 15px;
}

/*===============*/
#content {
  padding: 50px 0 40px;
}

/*タイトル=========*/
h2{
  font-size: 22px;
  font-weight:700;
  color:#6C5E4C;
}
h3{
  font-size: 20px;
  font-weight:700;
  color:#6C5E4C;
}
h4{
  font-size: 18px;
  font-weight:700;
  color:#6C5E4C;
}
/* 1 */
.cmn_ttl1 {

  font-weight: 500;
  text-align: center;
  letter-spacing: 2px;
  margin-bottom: 20px;
}

/* 2 */
.cmn_ttl2,
.editor h2 {
  color: #fff;
  position: relative;
  padding: 8px 15px;
  margin-bottom: 20px;
}

.cmn_ttl2::before,
.editor h2::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 3px;
  left: 0;
  bottom: 0;
  background-color: rgba(255, 255, 255, 0.3);
}

/* 3 */
.cmn_ttl3,
.editor h3 {
  padding: 8px 10px;
  margin-bottom: 20px;
  border-left-width: 7px;
  border-left-style: solid;
}

/* 4 */
.cmn_ttl4 {
  padding: 0px 5px 8px;
  margin-bottom: 20px;
  border-bottom-style: solid;
  border-bottom-width: 1px;
}

/*画像配置=========*/
.img_list ul.flex {
  flex-wrap: wrap;
  margin-top: 15px;
}

.img_list li {
  width: 100%;/*31％*/
  height: auto;
    margin: 0px 0px 20px 0;
  background-color: #cfcfcf;
}
.img_list li.thumb img {
     position: static; */
    width: 100%;
    /* height: 100%; */
    object-fit: cover; 
    min-height: auto;
    min-width: auto;
    -webkit-transform: none; 
    -ms-transform: none;
    transform: none
}


.img_list li:nth-child(-n + 3) {
  margin-top: 0;
}

.img_list li:nth-child(3n) {
  margin-right: 0;
}

/*margin=========*/
.box_mg40 {
  margin-top: 20px;
}

.box_mg50 {
  margin-top: 30px;
}

.box_mg60 {
  margin-top: 40px;
}

.box_mg80 {
  margin-top: 60px;
}

.box_mg100 {
  margin-top: 70px;
}

#top_content .inbox .box_mg60:nth-child(2),
#content .box_mg100:first-child {
  margin-top: 0;
}

[id$="-id1"].box {
  margin-top: 0;
}

/*type========== */
/* 2 */
.under_type2 .box > div.flex {
  justify-content: space-between;
  display: block;
}

.under_type2 .box div.flex.right {
  flex-direction: row-reverse;
margin-bottom:30px;
}
.under_type2 .box div.flex.right,
.under_type2 .box div.flex.left {
  float: none !important;
}

.under_type2 .box .temp_img {
  width: 100%;
  height: auto;
  margin: auto;
  text-align: center;
  margin-bottom: 20px;
}

.under_type2 .box .temp_img img {
  max-width: 100%;
  max-height: 100%;
}

/* 3 */
.under_type3 .btn_list ul {
  margin-top: 30px;
}

/*list_type===============*/
.list_type li {
  position: relative;
}

.list_type li::after {
  content: " ";
  position: absolute;
  z-index: 999;
}

.list_type li .txt1 {
  font-size: 17px;
  margin-bottom: 5px;
}

.list_type .check_arr li:last-child::after {
  display: none !important;
}

.list_type .free_txt {
  margin: 15px 0 0;
}

/* 横 -----------*/
.list_type .flex {
  flex-wrap: wrap;
  justify-content: space-between;
  	-webkit-box-orient: vertical;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: column;
  	flex-direction: column;
}

.list_type .flex li {
  width: 100%;
  margin: 30px 0px 0 0;
}
.list_type .flex.check_arr li {
  padding-bottom: 30px;
  border-bottom: 1px dashed #ccc;
}
.list_type .flex li .thumb {
    width: 100%;
    height: 200px;
}
.list_type .flex.check_arr li::after {
    border-style: solid;
    border-width: 18px 18px 0px 18px;
    border-color: #cab191 transparent;
    bottom: -12px;
    right: 45%;
/*
  border-style: solid;
  border-width: 10px 0px 10px 10px;
  border-color: transparent #01a3db;
  right: -18px;
  top: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);*/
}

/*.list_type .flex.check_arr li:nth-child(2n)::after {
  display: none;
}*/

/*.list_type .flex li:nth-child(-n + 2) {
  margin-top: 0;
}*/

.list_type .flex li .txt_box {
    margin-top: 10px;
}

.img_list .flex_b{

    margin-top: 30px;
}
.img_list .flex_b li.thumb_02 {
  width: 100% !important;
  height: auto;
  margin: 0px 0px 20px 0;

}

.img_list .flex_b li.thumb_02 img{
width:100%;
}

/* 縦  -----------*/
.list_type .vertical li {
  margin-bottom: 30px;
}

.list_type .vertical li .thumb {
  width: 100%;
  height: 200px;
}

.list_type .vertical li .txt_box {
  margin-top: 10px;
}

.list_type .vertical.check_arr li {
  padding-bottom: 30px;
  border-bottom: 1px dashed #ccc;
}

.list_type .vertical.check_arr li::after {
  border-style: solid;
  border-width: 18px 18px 0px 18px;
  border-color: #cab191 transparent;
  bottom: -12px;
  right: 45%;
}

.list_type .vertical li:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
/*縦横両方。背景色・外枠つけたときのボーダーボトム*/
.list_type .vertical.check_arr li.bkcolor,
.list_type .vertical.check_arr li.bkgray, 
.list_type .flex.check_arr li.bkcolor, 
.list_type .flex.check_arr li.bkgray{
border:none;
}
.list_type .vertical.check_arr li.linegray,
.list_type .flex.check_arr li.linegray{
border:1px solid #aaaaaa !important;
}
.list_type .vertical.check_arr li.linecolor, 
.list_type .flex.check_arr li.linecolor
{
border:1px solid#cab191 !important;
}

/*frame_type===============*/
.frame_type {
  padding: 20px 20px;
}

/*btn_list===============*/
.btn_list ul {
  margin-top: 25px;
  justify-content: center;
  display: block;
}

.btn_list ul li .btn {
  width: 80%;
  margin: auto;
  text-align: center;
  border-radius: 0;
  margin-bottom: 15px;
}

.btn_list ul li .btn a {
  padding: 10px 55px;
}

/*site_map
--------------------------------------------*/
#site_map li {
  padding: 0;
}

#site_map li:hover {
  opacity: 0.8;
}

#site_map li p {
  margin-bottom: 0;
}

#site_map li a {
  display: block;
  padding: 5px 0 18px;
}

/*privacy
--------------------------------------------*/
#privacy dl {
  margin-bottom: 50px;
}

/*contact
--------------------------------------------*/
#contact dt {
  vertical-align: top;
  padding-bottom: 0;
}

#contact dt span {
  font-size: 13px;
  color: #ff0a0a;
  margin-left:5px;
}

#contact dd {
  /*padding: 8px 15px 18px;*/
  vertical-align: middle;
padding: 8px 0 18px;
}

#contact dd input,
#contact dd textarea {
  width: 100%;
  padding: 5px;
  border: 1px solid #808080;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  height: 30px;
}

#contact dd textarea {
  width: 100% !important;
  height: 150px;
  font-family: 'Noto Serif JP', serif;
}

.contact_btn {
  margin-top: 30px;
  text-align: center;
}

.contact_btn li {
  vertical-align: top;
  padding: 10px 0px;
}

.contact_btn li [type="submit"],
.contact_btn li [type="button"] {
  width: 260px;
  font-size: 18px;
  color: #fff;
  border: none;
  display: block;
  margin: auto;
  padding: 15px 0;
  text-align: center;
  cursor: pointer;
  -webkit-appearance: none;
}

.screen-reader-response,
.wpcf7-response-output{
	color: red;
	/*padding: 20px 0;*/
	text-align: left;
}

.wpcf7-not-valid-tip{
    color: red;
    mar-top: 5px;
    margin-top: 5px;
    display: inline-block;
}


/*画像サイズ設定===========*/
.thumb {
  display: block;
  overflow: hidden;
  position: relative;
  z-index: 1;
}

.thumb img {
  position: absolute;
  top: 50% !important;
  left: 50% !important;
  width: 100%;
  height: 100%;
  object-fit: cover;
  min-height: 100%;
  min-width: 100%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

@media screen and (min-width: 0\0) and (min-resolution: +72dpi) {
  .thumb img {
    width: auto;
    height: 100%;
  }
}

.editor img {
  max-width: 100%;
  height: auto;
}

/*404===========*/
.not_found {
  text-align: center;
}
.found_map {
  margin-top: 80px;
  text-align: left;
}

.found_map li {
  font-size: 15px;
  background-color: transparent;
  border-bottom: 1px dotted #000;
}

.found_map li:first-child {
  border-top: 1px dotted #000;
}

.found_map li a {
  color: #5c5c5c;
  display: block;
  padding: 14px 20px;
}

/*pager===========*/
/*archive*/
.wp-pagenavi a,
.wp-pagenavi span {
  padding: 5px 10px !important;
  background-color: #fff;
}

.wp-pagenavi a:hover,
.wp-pagenavi span.current {
  color: #fff;
  border-width: 1px;
  border-style: solid;
}

/*single*/
.page_btn {
  width: 100%;
  font-size: 14px;
  margin-top: 40px;
  text-align: center;
  padding-top: 10px;
  margin-top: 25px;
  border-top: 1px dotted #ccc;
}

.page_btn a {
  color: #333;
}

.page_btn .left a {
  float: left;
}

.page_btn .right a {
  float: right;
}

#pagerlist {
  clear: both;
  width: 100%;
  font-size: 14px;
  display: block;
  text-align: center;
  margin-top: 30px;
}

/*必要がない場合は削除するcss
--------------------------------------------*/
/* Instagram ============== */
/* Instagram ============== */
.insta {
  margin-top: 50px;
  position: relative;
}

.insta .btn {
  width: 50%;
  margin: auto;
  margin-top: 30px;
}

.sbi_item.sbi_type_image a {
  border: 1px solid #cfcfcf;
}

/* faq ============== */
#faq dl {
  margin-bottom: 40px;
}

#faq dl:last-child {
  margin-bottom: 0;
}

/* menu ============== */
.menu_list li {
  margin-top: 15px;
  box-sizing: border-box;
}

.list_txt {
  padding: 0 5px;
  margin: 10px 0 25px;
}

.menu_list li dl {
  padding: 0 10px 10px;
  border-bottom: 1px dashed #bebebe;
  justify-content: space-between;
  align-items: flex-end;
}

.menu_list li dt {
  font-size: 16px;
}

.free_txt {
  margin-bottom: 10px;
}

.menu_txt {
  padding: 10px;
  margin-top: 15px;
  border: 1px solid #c8c8c8;
}

.menu_btt {
  font-size: 14px;
  margin-top: 15px;
}
.menu_btt.rt {
  text-align: right;
}

.menu_type1 .menu_list li:first-child,
.menu_type2 .menu_list li:first-child,
.menu_type4 .menu_list li:first-child {
  margin-top: 0;
}

/* type2 */
.menu_type2 .menu_list ul {
  justify-content: space-between;
  flex-wrap: wrap;
  display: block;
}

/* type3 */
.menu_type3 .menu_list {
  display: flex;
  justify-content: space-between;
  display: block;
}

.menu_type3 .menu_list .list {
  margin-bottom: 20px;
}

.menu_type3 .menu_list.left {
  flex-direction: row-reverse;
}

.menu_type3 .menu_list li:first-child {
  margin-top: 10px;
}

.menu_type3 .temp_img {
  width: 100%;
  height: auto;
  margin: auto;
  text-align: center;
  margin-bottom: 20px;
}

.menu_type3 .temp_img img {
  max-width: 100%;
  max-height: 100%;
}

/* recruit ============== */
.recruit_table {
  margin-bottom: 80px;
}

.recruit_table:last-child {
  margin-bottom: 50px;
}

/* -----CTA */

.sec_cta{

  padding: 80px 0 80px 0;
  margin: 100px calc(50% - 50vw) 0 calc(50% - 50vw);
  width: 100vw;
}
.sec_cta.bk{
  background-color: #cab19133;
}
.sec_cta.bk_2{
  background-color: #efefef;
}

.sec_cta.bk{
  background-color: #cab19133;
}
.sec_cta.bk_2{
  background-color: #efefef;
}

.cta_area.flex {
  display: block;
}

.cta {
  width: 80%;
  margin: 0 auto;
}

.line_wrap.flex {
  display: flex;
  justify-content: space-between;
}

.cta.line {
  width: 80%;
  text-align: center;
}

.cta h3 {
  text-align: center;
  font-size: 22px;
  color: #cab191;
  margin-bottom: 30px;
}
.cta h4 {
  font-size: 14px;
}

.cta_tel {
  padding: 12px 0;
  background: #cab191;
  margin: 20px;
  border: 5px solid #fff;
  text-align: center;
  font-weight: bold;
  font-size: 20px;
  display: block;
}

#top_cta_tel {
  color: #fff;
}
#top_cta_form {
  color: #fff;
}

.cta_line {
  padding: 12px 0;
  background: #cab191;
  margin: 20px;
  border: 5px solid #fff;
  text-align: center;
  font-weight: bold;
  font-size: 20px;
  display: block;
}

#top_cta_line {
  color: #fff;
}

.cta_tel:hover,
.cta_line:hover {
  color: #ffffff;
  background: #cab191;
}

.line_box {
  width: 100%;
  text-align: left;
}

.cta a {
  display: block;
}

.cta_tel,
.cta_line {
  width: 100%;
  margin: 0 0 20px 0;
  text-align: center;
  font-size: 20px;
  box-sizing: border-box;
}

.cta div.cta2 {
  width: 100%;
  margin: 0 0 0 0;
}

.sp_none {
  display: none;
}
/**/
.flex_b{
  	-webkit-box-orient: vertical;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: column;
  	flex-direction: column;

}
/*フレーム2*/
/*.frame_type2 .box > div.flex {
    justify-content: space-between;
}
.frame_type2 .box div.flex.right {
    flex-direction: row-reverse;
}*/
.frame_type2 .box div.flex.up,
.frame_type2 .box div.flex.text{
  	-webkit-box-orient: vertical;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: column;
  	flex-direction: column;
}
.frame_type2 .box div.flex.up .temp_img{
width:100% !important;
margin:0 0 30px 0 !important;
}
.frame_type2 .box div.flex.down .temp_img{
width:100% !important;
margin:30px 0 0px 0 !important;
}
.frame_type2 .box div.flex.up .temp_img img,
.frame_type2 .box div.flex.down .temp_img img{
width:100% !important;
}
.frame_type2 .box div.flex.down {
  	-webkit-box-orient: vertical;
  	-webkit-box-direction: reverse;
  	-ms-flex-direction: column-reverse;
  	flex-direction: column-reverse;
}
.frame_type2 .box .temp_img {
    width: 100%;
    height: auto;
    margin-left: 0%;
    margin-right: 0%;
margin-bottom:20px
}
.frame_type2 .box div.flex.right .temp_img {
    width: 100%;
    height: auto;
    margin-left: 0%;
    margin-right: 0%;
margin-bottom:20px
}

.frame_type2 .box .temp_img img {
max-width:100%
}
.frame_type2 .box .txt {
    flex: 1;
}

.frame_wrap{
    padding: 60px 80px;

}

.frame_wrap.line{
    padding: 15px;
  border: 1px solid #cab191;
}

.frame_wrap.line_2{

    padding: 15px;
  border: 1px solid #ababab;
}

.frame_wrap.bk{
    padding: 15px;
  background-color:  #cab19133;/*0A**/
}
.frame_wrap.bk_2{
    padding: 15px;
  	background-color:  #efefef;
}
/*frame　flex　sp対応*/
.frame_wrap .flex{
  	-webkit-box-orient: vertical;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: column;
  	flex-direction: column;
}

/*.ノーマル　画像テキスト横並び　線・背景色*/
.under_type2 .box div.flex.line{
    padding: 15px;
  border: 1px solid #cab191;
}

.under_type2 .box div.flex.line_2{

    padding: 15px;
  border: 1px solid #ababab;
}

.under_type2 .box div.flex.bk{
    padding: 15px;
  background-color:  #cab19133;/*0A**/
}
.under_type2 .box div.flex.bk_2{
    padding: 15px;
  	background-color:  #efefef;
}
/*ノーマル　下に画像　画像1枚*/
.img_one{
	margin-top:30px
}
.img_one img{
	width:100%;
}
/*リストの外枠・背景色*/
.linecolor{
    padding: 15px !important;
  	border: 1px solid #cab191;
	box-sizing: border-box;
}
.linegray{
    padding: 15px !important;
  	border: 1px solid #ababab;
	box-sizing: border-box;
}
.bkcolor{
    padding: 15px !important;
  	background-color:  #cab19133;/*0A*/
	box-sizing: border-box;
}
.bkgray{
    padding: 15px !important;
  	background-color:  #efefef;
	box-sizing: border-box;
}
.list_type.col3 .flex li.linecolor .thumb,
.list_type.col3 .flex li.linegray .thumb, 
.list_type.col3 .flex li.bkcolor .thumb, 
.list_type.col3 .flex li.bkgray .thumb{
width:100%;
}

/*5/27add 後で見出しの上に持っていく*/
#top_content section.color{
    padding: 50px 0;
  	background-color:  #cab19133;
}
#top_content section.gray{
    padding: 50px 0;
  	background-color:  #efefef;
}

/* ----- 背景色 */
#content section.color{
    padding: 50px 0;
  	background-color:  #cab19133;
  margin: 100px calc(50% - 50vw) 0 calc(50% - 50vw);
  width: 100vw;
}
#content section.gray{
    padding: 50px 0;
  	background-color:  #efefef;
  margin: 100px calc(50% - 50vw) 0 calc(50% - 50vw);
  width: 100vw;

}
#content section.color h2,
#content section.color h3,
#content section.color > div,
#content section.gray h2,
#content section.gray h3,
#content section.gray > div{
width:100%;
margin-right: auto;
margin-left: auto;
    padding: 0 5%;
box-sizing: border-box;
}
section.circle img{
border-radius:50%;

}
#top_content section div.list_type.col2 img{
width:100%;

}
.txt1_center .txt1{
text-align:center;
}

/* ----- footercta*/
.cta_wrap{
	width: 100%;
    margin: 60px auto 0 auto;
    background: #efefef;
    padding: 30px 0;
}
.ft_cta{
	width:100%;
	margin:0 auto
}

.ctatitle{
	text-align:center;
	font-size:26px;
	font-weight:bold;
}
.area2 .f_sns{
	width:100%;
}
.area1.flex{
	/*justify-content:space-around;*/
	margin:30px 0;
	display:block;
	


}
.area1.flex a{
	color: #fff !important;

}
.ft_cta_contact,
.ft_cta_web_reserve,
.ft_cta_tel{
	width:80%;
	background:#333;
	text-align:center;
    font-size: 20px;
	font-weight:bold;
    padding: 15px;
    border-radius: 50px;
	margin:10px auto;
}
.ft_cta_contact:hover,
.ft_cta_web_reserve:hover,
.ft_cta_tel:hover{
	background:#300;
}
.area3.f_sns li i {
    color: #cab191;
}

/*footer*/
.f_inner{
    padding: 7% 5% 7%;
}
/*オリジナル見出し*/
/* h2 original*/
.h2_original {
	position: relative;
	margin-bottom: 2em;
	text-align: center;
color:#cab191}
.h2_original:before {
	content: '';
	position: absolute;
	bottom: -15px;
	display: inline-block;
	width: 10%;
	height: 5px;
	left: 50%;
	transform: translateX(-50%);
	background-color: #cab191;
	border-radius: 2px;
}
/* h3 original01*/
.h3_original01,.h4_original01 {
  position: relative;
  padding-left: 1.2em;
  line-height: 1.4;
margin-bottom: 1em;
}

.h3_original01:before,.h4_original01:before {
  font-family: "Font Awesome 5 Free";
  content: "\f00c";/*f061、f0a9、f35a、f356、f105、f324、f330、f138、f152、f32b*/
  font-weight: 900;
  position: absolute;
  font-size: 1em;
  left: 0;
  top: 0;
  color:  #cab191; 
  font-weight: 900;
}
/* h3 original02*/
.h3_original02,.h4_original02 {
  position: relative;
  padding-left: 25px;
	margin-bottom: 1em;
    margin-right: 10px;

}

.h3_original02:before,.h4_original02:before {
  position: absolute;
  content: '';
  bottom: -3px;
  left: 0;
  width: 0;
  height: 0;
  border: none;
  border-left: solid 15px transparent;
  border-bottom: solid 15px  #cab191;
}
.h3_original02:after,.h4_original02:after {
  position: absolute;
  content: '';
  bottom: -3px;
  left: 10px;
  width: 100%;
  border-bottom: solid 3px  #cab191;
}
/* h3 original　その他のアイディア*/
/*背景色+斜め*/
/*.h3_original02,.h4_original02{
  position: relative;
  padding: 5px 5px 5px 42px;
  background:  #cab191;
  color: white;
  margin-left: -33px;
  line-height: 1.3;
  z-index:-1;
}

.h3_original02:before,.h4_original02:before {
  position: absolute;
  content: '';
  left: -2px;
  top: -2px;
  border: none;
  border-left: solid 40px white;
  border-bottom: solid 79px transparent;
  z-index:-2
}*/
/*ストライプの下線*/
/*.h3_original02,.h4_original02{
  position: relative;
}

.h3_original02:after,.h4_original02:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 7px;
  background: -webkit-repeating-linear-gradient(-45deg,  #cab191,  #cab191 2px, #fff 2px, #fff 4px);
  background: repeating-linear-gradient(-45deg,  #cab191,  #cab191 2px, #fff 2px, #fff 4px);
	
}*/

/*追加CSS*/

/*google recapcha表示箇所調整*/
.grecaptcha-badge{
  margin-bottom: 30%;
}

/*投稿関係*/
#atc_single h1,
#s_gallery h1 {
  font-size: 22px;
}

.editor img {
  margin-bottom: 20px;
}

.editor h4 {
    font-size: 18px;
    border-bottom: 1px solid #cab191;
    margin-bottom: 10px;
}

.signature {
  background-color: #efefef;
  padding: 20px;
}

/*お問い合わせページ*/
#contact h2 {
  font-size: 18px;
}

/*リスト関係*/
.list_type .flex li:first-child {
  margin-top: 0;
}

.list_type li .txt1 {
    font-weight: 500;
}

.bkwhite {
  background-color: #fff;
  padding: 20px;
}

.ttl-size01 {
  font-size: 18px;
  font-weight: 500;
}

.ttl-size02 {
  font-size: 18px;
}

.ttl-size03 {
  font-size: 14px;
  font-weight: 500;
}

.mr01 {
  margin-top: 10px;
}

.mr02 {
  margin-top: 20px;
}

.br-pc {
  display: none;
}

.br-xsm {
  display: none;
}

#top_content #sec1-1 h2 {
  text-align: left;
  margin-bottom: 20px;
  font-feature-settings: "palt";
  font-weight:700;
}

#top_content #list2-1 h2 {
  font-size: 20px;
  font-feature-settings: "palt";
}

.list_type li .txt1 h3 {
  font-size: 16px;
  font-weight: 500;
}

.txt_list {
  text-indent: -1em;
  padding-left: 1em;
}

/*フッター*/
/*フッターCTA*/
.cta_wrap {
  display: none;
}

.footer-cta-area {
    width: 100vw;
    padding: 50px 0 !important;
    background-color: #cab19133;
}

.footer-cta-area h2 {
  font-size: 22px;
  position:relative;
  margin-bottom: 20px;
}

.cta-area {
  width: 100%;
background-image:url("../img/common/cta_bk.jpg");
background-position:top center;
/*background-color:rgba(255,255,255,0.8);*/
/*background-blend-mode:lighten;*/
}

.cta-btn {
  margin-bottom: 20px;
}

.cta-btn:last-child {
  margin-bottom: 0;
}

.cta-area .cta-wrap {
  width: 100%;
  margin: 0 auto;
}

.cta-btn a{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 240px;
  height: 50px;
  padding: 0 15px;
  color: #fff;
  font-weight: 500;
  letter-spacing: 0.08em;
  background-color: #cab191;
  margin: 0 auto 10px;
}

.cta-area p {
  text-align: center;
  margin-bottom: 25px;
}

.footer_sns {
  margin-top: 20px;
}

.footer_sns a {
  display: inline-block;
  width: 30px;
  margin-left: 20px;
}

.footer_sns a:first-child {
  margin-left: 0px;
}

.footer_sns img{
  width: 100%;
  height: auto;
}

/*店舗情報*/
.s-info-sec {
  margin-top: 50px;
}

.shop-info-table {
  padding: 0 5%; 
  margin: 30px auto 0 auto;
}

.shop-info-table .ttl-size01{
font-weight:700;
}

.recruit-wp .shop-info-table,
.info-wp .shop-info-table {
  padding: 0; 
}

.shop-info-table table{
  margin: 0 auto;
  width: 100%;
}

.shop-info-table tr {
  border-top: 1px dashed #333;
  border-bottom: 1px dashed #333;
}

.shop-info-table th,
.shop-info-table td {
  display: block;
  font-size: 14px;
  padding: 0 10px;
  letter-spacing: .08em;
  line-height: 1.8;
  font-feature-settings: "palt";
}

.shop-info-table th {
  padding-top: 15px;
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 5px;
}

.shop-info-table td {
  padding-bottom: 15px;
}

.shop-info-table h3 {
  padding-left: 10px;
  margin-bottom: 20px;
}

.info_flex {
  margin-top: 50px;
}

.info_flex_img {
  margin-top: 50px;
  width: 100%;
}

.info_flex_img img {
  width: 100%;
  height: auto;
}

/*google-map*/
.google-map {
  margin-top: 50px;
}

.google-map iframe {
	height: 250px;
    width: 100vw;
    margin: 0 calc(50% - 50vw);
}

.anker_wrap {
  margin-top: 50px;
}

.anker_wrap a {
  display: block;
  width: 300px;
  height: 50px;
  font-size: 16px;
  line-height: 50px;
  text-align: center;
  margin: 0 auto;
  color: #fff;
  position: relative;
margin-bottom: 20px;
}

.anker_wrap a:last-child {
  margin-bottom: 0px;
}

html {
  scroll-behavior: smooth;
}

.plan-wp h2 span,
.suport-wp h2 span {
  display: block;
  scroll-margin-top: 100px;
}

/*料金表*/
.plan_table_wrap {
  overflow-x: scroll;
}

.plan_table {
  min-width: 800px;
}

.plan_table th,
.plan_table td{
  width: calc( 100% / 6 );
  padding: 15px 0;
  font-size: 14px;
  vertical-align: middle;
}

.plan_table th {
  background-color: #d4d4d469;
  font-weight: 500;
}

.plan_table, 
.plan_table td, 
.plan_table th {
  border: 1px #D4D4D4 solid;
  text-align: center;
}

.plan_table_txt {
  text-align: right;
}
.plan_table_txt.mr02{
  margin-top:3px;
}
.plan_table_txt02{
  margin-top:10px;
}
.trial {
  padding: 30px 5%;
  background-color: #EFC7BA55;
  color: #333;
}

.trial_flex {
  margin-bottom: 20px;
  font-size: 18px;
  font-weight: 500;
  text-align: center;
}

.menu_table03 .menu_item_ttl {
  display: block;
  font-size: 16px;
  margin-bottom: 10px;
  margin-top: 30px;
  font-weight: bold;
}

.menu_table03 th,
.menu_table03 td {
  display: block;
}

.menu_table03 th {
  width: 100%;
}

.menu_table03 td {
  width: 100%;
  font-size: 14px;
  font-weight: bold;
  margin-top: 10px;
  padding-bottom: 30px;
  border-bottom: 1px solid #000;
}

.option_img {
  margin-top: 30px;
  width: 100%;
}

.option_img img {
  width: 100%;
  height: auto;
}

.bg-wrap {
  background-color: #EFC7BA55;
  color: #333;
  padding: 20px 5%;
}

#tp_archive2 {
  margin-top: 50px;
  background-color: #cab19133;
  padding: 40px 0;
}

.news_cat{
    font-size: 12px;
    padding: 0px 5px;
    border: 1px solid #cab191;
    display: inline-block; 
    margin-right:10px;
}

/*　下層MVの制御　*/
/*会社概要*/
  .page-id-45 .page_ttl-in {  
  /*background: url(../img/common/lpmv18.jpg) no-repeat center bottom -100px / cover;*/
background: url(../img/common/lpmv18.jpg) no-repeat center center/ cover;
}
/*ご入会・料金プラン*/
.page-id-1840 .page_ttl-in {
  background: url(../img/common/lpmv11.jpg) no-repeat center center /cover;
}
/*お悩み別サポート*/
.page-id-2014 .page_ttl-in {
  background: url(../img/common/lpmv14.jpg) no-repeat center bottom -50px/cover;
}
/*マリーガーデンの強み*/
.page-id-1677 .page_ttl-in {
  background: url(../img/common/lpmv24.jpg) no-repeat center center/cover;
}

/*AI matching*/
.strength-wp #lay1-1 #lay-1-id8 .note{
margin-top:20px;
border:1px solid #cab191;
border-radius:4px;
padding:12px;
}
.strength-wp #lay1-1 #lay-1-id8 .note span.lead{
color:#cab191;
font-weight:700;
margin-bottom: 5px;
display: inline-block;
font-size:15px;
}
.strength-wp #lay1-1 #lay-1-id8 .note li span{
font-weight:700;
display: block;
}
.strength-wp #lay1-1 #lay-1-id8 .note li .indent{
margin-left: 2em;
}
.strength-wp #lay1-1 #lay-1-id8 img{
    aspect-ratio: 640 / 400;
    object-fit: contain;
}
/*AI matching ここまで*/

.strength-wp #lay2-1 #lay-1-id3.box_mg60{
margin-top: 30px;
}

#top_content #sec1-1 h2 span.txt_mini{
font-size:15px;
}
.info-wp .list_wrapper span.list_ttl{
	font-size: 16px;
	font-weight: 700;
}

/* メインコピー修正 */
.mainv_copy span{
	background-color:inherit;
	text-align: center;
	font-size: 23px;
}
.mainv_copy span:nth-of-type(2){
	font-size:18px;
}
.page_ttl span{
    background-color: initial;
	font-weight:700;
text-shadow: 0px 0px 6px rgba(255, 255, 255, 1),
	0px 0px 6px rgba(255, 255, 255, 1),
	0px 0px 6px rgba(255, 255, 255, 1),
	0px 0px 6px rgba(255, 255, 255, 1),
	0px 0px 6px rgba(255, 255, 255, 1),
	0px 0px 6px rgba(255, 255, 255, 1),
	0px 0px 15px rgba(255, 255, 255, 1), 
	0px 0px 15px rgba(255, 255, 255, 1), 
	0px 0px 15px rgba(255, 255, 255, 1), 
	0px 0px 15px rgba(255, 255, 255, 1);
letter-spacing:5px;
}

/*タイトルあしらい追加とそれに伴う余白調整*/
.insta h2,
h2.cmn_ttl1,
#tp_archive2 h2,
.info-wp .s-info-sec h2.sec_ttl{
	position:relative;
}
.insta h2:before,
h2.cmn_ttl1:before,
#tp_archive2 h2:before,
.info-wp .s-info-sec h2.sec_ttl:before
{
	position: absolute;
    content: "";
    background: url(../img/common/icon01.png) no-repeat center/contain;
    width: 70px;
    height: 30px;
    transform: translateX(-50%);
    left: 50%;
    top: -40px;
	opacity:0.7;
}
.sec_type1,
.insta,
.info-wp .s-info-sec{
    margin-top: 70px;
}
#top_content section.color,
#tp_archive2{
padding-top:70px;
}
#top_content #sec4-1,
.info-wp #lay2-1,
.plan-wp #lay2-1,
.plan-wp #lay3-1,
.plan-wp #list7-1,
.suport-wp #lay2-1,
.suport-wp #lay3-1,
.suport-wp #lay5-1,
.suport-wp #lay6-1,
.strength-wp #lay2-1{
margin-top: 100px;
}
.info-wp #lay1-1,
.strength-wp #lay1-1{
margin-top: 25px  !important;
}
.insta h2:before{
    top: -30px;
}
#top_content #list2-1 h2.cmn_ttl1 span{
font-size: 18px;
}
.plan-wp #lay1-1 h2.cmn_ttl1:before,
.suport-wp #lay1-1 h2.cmn_ttl1:before,
.suport-wp #lay7-1 h2.cmn_ttl1:before{
content:none;
}


/* コンテンツ背景画像修正 */
.cta-area{
	/*background-image: url(../img/common/cta_bk03.jpg);*/
	background-image: url(../img/common/cta_bk06.jpg);
	background-size:cover;
	background-repeat:no-repeat;
	position:relative;
}
.cta-area:before{
    content: '';
    position: absolute;
    width: 100%;
    height: calc( 100% + 0px );
    background-color: #fff;
    opacity: 0.75;
    top: calc( 50% - 0px );
	transform: translateY(-50%);
}
.footer-cta-area h2,
.footer-cta-area .cta-wrap,
.footer-cta-area p{
position:relative;
}
#tp_archive2{
position: relative;
background-image: url(../img/common/bk01.jpg);
background-position: center bottom;
background-size:cover;
}
#tp_archive2:before{
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #fff;
    opacity: 0.4;
    top: 50%;
	transform: translateY(-50%);
}

/*強みページ、悩み別サポートページ　コンテンツ背景色追加 */
.strength-wp #lay2-1,
.suport-wp #lay7-1{
	position:relative;
	margin-top: 70px;
	padding-top:50px;
	padding-bottom:70px;
}
.strength-wp #lay2-1{
	padding-top:70px;
}
.strength-wp #lay2-1:before,
.suport-wp #lay7-1:before{
	position:absolute;
	content:"";
	width:100vw;
	height:100%;
	background-color: #cab19133;
	transform:translate(-50%,-50%);
	left:50%;
	top:50%;
	z-index:-1;
}
#content.strength-wp,
#content.suport-wp{
	padding-bottom:0;
	margin-bottom:0;
}

#content.strength-wp #lay1-1 #lay-1-id8 .temp_img{
border:1px solid #e4e4e4;
}

/*フォームカスタマイズ */
.cmn_table dl.gender .wpcf7-radio{
	display:flex;
}
.cmn_table dl.gender .wpcf7-radio .wpcf7-list-item{
	width:100px;
}
.cmn_table dl.gender .wpcf7-radio .wpcf7-list-item label{
	display:flex;
}
.cmn_table dl.gender .wpcf7-radio input{
    height: 20px !important;
	width:20px !important;
}
.cmn_table dl.menu .wpcf7-checkbox .wpcf7-list-item{
/*width:150px;*/
}
.cmn_table dl.menu .wpcf7-checkbox .wpcf7-list-item label{
	display:flex;
}
.cmn_table dl.menu .wpcf7-checkbox .wpcf7-list-item input{
    height: 20px !important;
	width:20px !important;
	margin-right:10px;
}
.cmn_table dl.menu .wpcf7-checkbox .wpcf7-list-item .wpcf7-list-item-label{
	margin-right:40px;
}
/*.cmn_table dl.reserve dd{
	display:flex;
}*/
.cmn_table dl.reserve dd .date{
	width:100%;
}
.cmn_table dl.reserve dd .date p,
.cmn_table dl.reserve dd .date time{
	display:flex;
}
.cmn_table dl.reserve dd .time{
	width:100%;
}
.cmn_table dl.reserve dd .date{
	margin-bottom: 10px;
}
.cmn_table dl.reserve dd .time .hour{
    margin-bottom: 10px;
    display: inline-block;
}
.cmn_table dl.reserve dd .time .minute{
    display: inline-block;
margin-left:40px;
}
.cmn_table dl.reserve dd .date input,
.cmn_table dl.reserve dd .time select{
	margin-right:5px;
	padding: 5px;
    border: 1px solid #808080;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    height: 30px;
	color:#333;
	font-family: 'Noto Serif JP', serif;
font-size: 12px;
}

.cmn_table dl.reserve dd span.item_name{
width:40px;
display:inline-block;
}
.cmn_table dl.reserve dd .time select{
width:200px;
}
.cmn_table dl.reserve dd .date span:nth-of-type(2),
.cmn_table dl.reserve dd .time span:nth-of-type(2){
flex:1;
}
#contact .cmn_table dt{
padding-left:0;
}

/*safariでのselectタグ装飾打ち消し*/
select {
  -webkit-appearance: none;
  appearance: none;
}

/*インスタ不具合解消用CSS*/
#sb_instagram #sbi_images .sbi_item{
float:none !important;
}

