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

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

body, p, div, span, a, h1, h2, h3, h4, h5, h6, ul, li{
   font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "MS PGothic", "sans-serif";
}

.l-header{
	padding:30px 0;
}
.l-header .l-header__inner{
	max-width:none;
	padding:0 80px!important;
}
.l-header__logo{
	position:absolute;
	top:-50px;
	left:0;
	background-color:#fff;
	padding:30px!important;
}
.l-header__logo .c-headLogo{
	height:auto;
}
.l-header__logo .c-headLogo a img{
	width:100px;
	height: auto;
}
.mega-sub-menu{
	max-width:505px!important;
	padding:15px 12px 12px 12px!important;
}
.mega-menu-item{
	padding:0 8px!important;
	margin:0 auto!important;
	text-align:center!important;
}

.mega-block-title{
	font-size:13px!important;
}
.home .l-content{
	padding-top:0!important;
}
.page-id-786 .l-content{
	margin-bottom:0!important;
}
.page-id-786 .w-beforeFooter{
	margin-top:0!important;
}
.header-tel{
	margin-top:-20px;
}

.mega-sub-menu .mega-menu-item img:hover{
	opacity:0.8;
}
.mega-block-title:hover{
	opacity:0.8;
}
.mainvisual-pc{
	column-gap:0!important;
}
.mainvisual-main{
	padding:3em 4em;
	min-height:calc(100vh - 160px)!important;
}
.mainvisual-main h2{
	line-height:2.6em!important;
}
.txt-wh-bg{
	background:rgba(255, 255, 255, 0.8)!important;
	padding:0.4em 0.6em!important;
	border-radius:3px;
	box-shadow:2px 2px 10px #eee;
}
.header-tel .top, .header-tel .bottom{
	font-size:10px;
	font-weight:bold;
	color:#666!important;
}
.header-tel .center{
	font-size:25px!important;
	color:#F56D6D;
	font-weight:bold;
	line-height:1.5em!important;
}
.header-tel p{
	margin:0!important;
	line-height:1em;
	text-align:left;
}
.fa-phone{
	padding-right:5px;
}
.vertical-txt{
	writing-mode: vertical-lr;
}
.side-left-txt{
	padding-top:100px;
	text-align:center;
	font-weight:600;
}
.side-icon-mail svg{
	width:26px;
	margin-bottom:5px;
}
.side-icon-access svg{
	width:30px;
	margin-bottom:6px;
	margin:0 auto;
}
.side-icon-mail{
	background-color:#469DC8;
	color:#fff;
	font-size:10px;
	height:80px;
	font-weight:bold;
	text-align:center;
	line-height:1.2em;
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	margin-bottom:0;
	text-align:center;
}
.side-icon-access{
	background-color:#65B8E1;
	color:#fff;
	height:80px;
	font-size:11px;
	font-weight:bold;
	text-align:center;
	display:flex;
	align-items:center;
	justify-content:center;
	flex-direction:column;
}
.side-icon-mail a, .side-icon-access a{
	color:#fff;
	display:flex;
	align-items:center;
	justify-content:center;
	flex-direction:column;
}
.side-icon-mail:hover, .side-icon-access:hover{
	opacity:0.9;
}

.top-about-center{
padding:170px 15px 0 15px!important;
}
.top-about-center img{
	width:95%;
	margin:0 auto;
	border-radius:10px;
}
.top-about-left{
	padding-top:40px;
}
.top-about-right img{
	width:95%;
	margin:0 auto;
	border-radius:10px;
}
.top-feature-cont{
margin-bottom:20px!important;
}
.feature-ttl{
margin-top:0!important;
}
.feature-box{
	background-color:#fff;
	box-shadow:2px 2px 20px #eee;
   padding-bottom:35px;
	border-radius:0 0 10px 10px;
}
.feature-box h3{
	margin-top:35px!important;
	margin-bottom:16px!important;
	padding:0 35px;
	line-height:1.5em;
	position:relative;
}
.feature-box .txt{
	padding:0 35px;
	line-height:1.7em;
}
.feature-box .number1, .feature-box .number2, .feature-box .number3{
	position:relative;
}
.feature-box .number1::after{
	position:absolute;
	content:'01';
	width:140px;
	height:40px;
	top:-75px;
	left:0;
	background-color:#fff;
	z-index:100;
	text-align:center;
	border-radius:0 10px 0 0;
	padding-top:15px;
	font-size:16px;
}
.feature-box .number2:after{
	position:absolute;
	content:'02';
	width:140px;
	height:40px;
	top:-75px;
	left:0;
	background-color:#fff;
	z-index:100;
	text-align:center;
	border-radius:0 10px 0 0;
	padding-top:15px;
	font-size:16px;
}
.feature-box .number3:after{
	position:absolute;
	content:'03';
	width:140px;
	height:40px;
	top:-75px;
	left:0;
	background-color:#fff;
	z-index:100;
	text-align:center;
	border-radius:0 10px 0 0;
	padding-top:15px;
	font-size:16px;
}
.top-feature-btn{
	margin-top:45px!important;
}
.underline-pk{
	 background-image: linear-gradient(transparent 60%, #FFE7E7 60%);
}

.swiper-slide {
  background: #fff;
  border-radius: 8px;
}
.swiper-button-next:after, .swiper-button-prev:after{
 font-size:0.8em!important;
  color: #000;
}
.swiper-button-next, .swiper-button-prev {
	color:#000!important;
	background:rgba(255, 255, 255, 0.7)!important;
	border-radius: 50%;
    width: 60px!important;
    height: 60px!important;

}
.swiper-button-prev {
	left:30px!important;
}
.swiper-button-next{
	right:50px!important;
}

.voice-body{
	column-gap:0!important;
	 margin-right: calc(50% - 50vw);
}
.voice-slider{
	 background: linear-gradient(90deg, transparent 0%, transparent 10%, #ECF4F8 10%, #ECF4F8);
	padding:150px 0 140px;
}

.voice-content{
	padding:0.8em 1.2em 1.7em 1.2em;
}
.voice-slide .voice-thumb{
	 border-radius: 8px 8px 0 0!important;
	  width: 100%;
	aspect-ratio: 9 / 10!important;
	overflow:hidden;
	transition:.3s;
}

.voice-slide:hover .voice-thumb img{
   transform: scale(1.1);
}
.voice-slide:hover .voice-text{
	color:#666;
}
.swiper-wrapper .voice-thumb img {
  width: 100%;
	height:100%;
	object-fit: cover;
  border-radius: 8px 8px 0 0!important;
display:block; 
	transition:.3s;
}
 .voice-card {
  border-radius: 8px;
}
.voice-text{
	font-size:15px;
	color:#111;
	font-weight:500;
}
.voice-slider h3 .voice-label{
	background-color: #F0F0F0;
    padding: 6px 12px;
	font-size:13px;
}
.voice-slider h3{
	margin-bottom:13px!important;
	color: #F56D6D;
}
.page-numbers{
	display: block;
	margin-top: 0;
	margin-bottom: 0;
}
.voice-pagination{
	display:flex;
	justify-content:center;
}
.voice-pagination .page-numbers{
	margin:0 5px!important;
	border-radius:2px;
}
.voice-pagination .prev, .voice-pagination .next{
	padding:0 10px;
}
.concept-item{
	column-gap:0!important;
}
.concept-item .txt-box{
	padding:4em 3em 4em 3em;
}
.left-item-image{
	border-radius:0 10px 10px 0;
}
.right-item-image{
	border-radius:10px 0px 0px 10px;
}
.txt-box-inner{
	max-width:530px;
	margin:0 auto;
}
.l-topTitleArea{
	min-height:380px;
	width:auto;
	position: relative;
}
.l-topTitleArea img{
    width: calc(100% - 160px)!important;
   left: 50%;
   transform: translatex(-50%);
}

.l-topTitleArea__contact{
	width: 80px;
	height: 80px;
	background-color: #58A6CD;
  color: #fff;
  position: absolute;
  top: 0;
  right: 0;
}
.l-topTitleArea__contact-inner, .l-topTitleArea__access-inner{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  height: 100%;
}
.l-topTitleArea__contact-inner span, .l-topTitleArea__access span{
	font-size: 10px;
	line-height: 1.2em;
	font-weight: bold;
}
.l-topTitleArea__contact svg {
  width: 26px;
  height: 26px;
  margin-bottom: 4px;
  stroke: #fff; 
}
.l-topTitleArea__contact:hover {
  opacity: 0.9;
}
.l-topTitleArea__access{
	width: 80px;
	height: 80px;
	background-color: #65B8E1;
  color: #fff;
  position: absolute;
  top: 80px;
  right: 0;
}
.l-topTitleArea__access svg{
	width: 30px;
  margin-bottom: 6px;
  stroke: #fff; 
}
.design_button{
max-width:320px;
}
.design_button a{
  display:block;
font-size:15px;
width:100%;
	padding:1.2em 0.5em!important;
}
.top-blog .p-postList__thumb{
	border-radius:8px;
}
.top-blog-container{
	margin-top:130px!important;
}
.message-inner .wp-block-media-text__content{
padding-bottom:0;
margin-bottom:0;
}
.message-inner{
	margin-top:-350px!important;
	position:relative;
}
.message-inner .txt{
	margin-right:-150px;
	padding:50px 50px 20px 60px;
}
.message-inner .btn-left{
	margin-left:0;
	max-width:320px;
}
.message-inner .btn-left a{
	display:block;
font-size:15px;
width:100%;
	padding:1.2em 0.5em!important;
}
.message-ttl{
	margin-top:0!important;
	 font-family: 'Noto Serif JP', serif;
}
.message-header-img{
	margin-top:-35px!important;
}
.about-message{
	max-width:850px;
	margin:0 auto;
}
.page-link{
	column-gap:0!important;
}
.page-link .wp-block-cover{
	margin-bottom:0!important;
	padding:1em 2.5em;
}
.page-link .wp-block-cover p{
	transition:0.3s;
	margin-bottom:0!important;
}

.contact-link{
	margin-bottom:0!important;
}
.contact-link-btns{
	max-width:800px;
	margin:0 auto;
	column-gap:2.5em!important;
}
.contact-link-ttl{
	margin-top:0!important;
}
.tel-link{
	height:65px;
}
.tel-link a{
	font-weight:bold;
	font-size:20px;
	display:block;
	padding:0;
	height:65px;
	line-height:65px;
}
.tel-link a:hover{
	color:#085B84!important;
}

.form-link{
	height:65px;
}
.form-link a{
	display:block;
	height:65px;
	line-height:65px;
	padding:0;
}
.form-link a:hover{
 background-color:transparent;
	border:1px solid #fff;
	color:#fff!important;
}
.form-link a:hover span{
	color:#fff!important;
}
.contact-link-btns a{
	width:100%;
}
/*よくある質問*/
.faq-list{
	max-width:800px;
}
.swell-block-accordion__title{
 padding: 1.4em 1.6em;
 border-radius: 8px;
}

/*会員データ*/
.member-data .wp-block-image{
	padding:0 10px;
}

.member-data{
	margin-bottom:0!important;
	align-items:flex-end;
	padding-left:50px;
}
.member-data p{
	line-height:16px;
}

.member-data-frame{
	margin-top:-15px;
	max-width:1050px;
	padding:50px 50px 50px 50px!important;
}
.title-design01{
	border-left:5px solid #04384C;
	padding-left:12px;
	margin-top:0!important;
}
.title-design01-light-blu{
	border-left:5px solid #469DC8;
	padding-left:12px;
	margin-top:0!important;
}

.light-blue-bg span, .light-red-bg span{
	padding:15px 30px!important;
}
.m-l-0{
margin-left:0!important;
}
.m-t-0{
margin-top:0!important;
}
.glaph{
	border:5px solid #eee;
	padding:20px 30px 30px 30px;
}
.is-style-big>.swell-block-step__item:first-child, .is-style-big>.swell-block-step__item{
	border-color:#999!important;
}
.is-style-big>.swell-block-step__item:before{
	border-top: 12px solid #004466;
}

.flow-cont{
	max-width:1050px;
	margin:0 auto;
}
.flow-cont .swell-block-step__title{
	font-size:23px!important;
	color:#004466;
	margin-bottom:30px!important;
}
.is-style-big>.swell-block-step__item>.swell-block-step__number:after{
	font-size:20px!important;
	padding-top:5px!important;
}
.message-block-ttl{
	margin-left:0!important;
	margin-top:60px!important;
}
/*ショップアクセス*/
.access-bg{
	background-position: left 50%!important;
}
/*特徴*/
.feature-txt-outer{
	max-width:850px;
	margin:0 auto;
}
.feature-item-container .wp-block-column{
	padding:35px 15px 30px!important;
	position:relative;
	border-radius:10px;
}

.light-blu-container{
	border-radius:10px;
	padding:3em 2.8em 4em 2.8em!important;
}
.feature-item-container .wp-block-column::after{
	position:absolute;
	content:"";
	top:-15px;
	left:50%;
	width:1.5px;
	height:30px;
	background-color:#0170A7;
	background-color:#bbb;
}

.border-bottom{
border-bottom:1px dotted #333;
}
.feature-item{
	max-width:1050px;
	margin:0 auto;
}

/*
プラン
*/
.plan-body{
	column-gap:0.7em!important;
}

.plan-cont-list-ttl-box{
	height:10.3rem;
}
.plan-item-detail{
	height:6rem;
	padding:10px 8px;
}
.plan-item-ttl{
	padding:22px!important;
	border-radius:5px;
	margin-bottom:0!important;
}

.plan-item-inner{
	padding:0 0 30px 0;
}
.plan-item-inner p{
	margin-bottom:0!important;
}
.plan-item-inner p{
	min-height:5rem;
	display:flex;
	align-items:center;
	justify-content:center;
}
.list-gry-bg{
	background-color:#f0f0f0;
}
.plan-item-size p{
	font-size:16px!important;
}
.all-inclusive{
	padding:100px 50px 140px 50px!important;
	background-image:url('https://marriage-ocean.com/wp-content/uploads/2025/11/all-inclusive-bg-1.jpg');
	background-position:bottom;
	background-size:cover;
}
.all-inclusive .wp-block-columns{
	column-gap:2em!important;
	margin-bottom:2em!important;
}
.all-inclusive .wp-block-column{
	padding:0px 50px 55px 50px;
	border-radius:10px;
	position:relative;
}
.all-inclusive .wp-block-column h3{
	margin-top:2.8em!important;
}
.all-inclusive .wp-block-column .number{
	position:absolute;
	top:-10px;
	left:50px;
}
.ttl-line-wh{
	border-left:3px solid #fff;
	padding-left:8px;
}
.link-style:hover{
	text-decoration:underline;
	text-decoration-color:#1176d4;
}
.Comparison-list table td{
	padding:20px 15px;
}
.Membership-block .men{
	border:2px dashed #328EBB;
	padding:15px;
	max-width:350px;
	flex-basis:95%!important;
}
.Membership-block .woman{
	border:2px dashed #F56D6D;
	padding:15px 20px;
	max-width:350px;
}


.individual-introduction{
	column-gap:2.5em!important;
}
.individual-introduction .photo img{
	border-radius:10px;
}
.style-outer{
	border-radius:10px;
	padding:4em!important;
}
.style-outer .item{
column-gap:2.5em!important;
}
.style-outer .item .photo img{
	border-radius:8px;
}
/*
   問い合わせフォーム
*/
.form-outer{
	background-color:#EDF4FA;
	padding:70px;
	max-width:900px;
	border-radius:10px;
}
.c-form_list{
	background-color:#fff;
	padding:60px 70px;
	border-radius:10px;
}
.c-form__item{
	margin-bottom:18px;
}
.c-form__item__head{
	font-weight:600;
	margin-bottom:5px;
    line-height:1.2em!important;
	display:flex;
	align-items:flex-end;
}
.inquiry-type .wpcf7-list-item,  .Confirmation2 .wpcf7-list-item, .Confirmation3 .wpcf7-list-item, .Confirmation4 .wpcf7-list-item, .Confirmation5 .wpcf7-list-item, .Confirmation6 .wpcf7-list-item, .Confirmation7 .wpcf7-list-item, .Confirmation8 .wpcf7-list-item{
margin-top:8px;
margin-left:0;
display: block;
border:1px solid #ccc;
padding:10px 20px;
border-radius:5px;
background-color:#fff;
}
.Confirmation1, .Confirmation2, .Confirmation3, .Confirmation4, .Confirmation5, .Confirmation6, .Confirmation7, .Confirmation8{
	margin-bottom:35px;
}
.c-form__item__Confirm{
	font-weight:700!important;
}
.gender .wpcf7-list-item{
border:1px solid #ccc;
padding:10px 20px 10px 15px;
border-radius:5px;
margin-left:0;
margin-right:10px;
background-color:#fff;
}
.other-box{
	margin-top:10px;
	background-color:#fff;
	width:100%;
	border-radius:5px;
	height:45px;
}
.wpcf7-list-item:has(input[type="radio"]:checked), .wpcf7-list-item:has(input[type="checkbox"]:checked) {
	background-color: #00A6F7;
  color:#fff;
} 
.name-kanji input, .name-kana input, .year input, .tel input, .mail input, .inquiry-details textarea{
	width:100%!important;
	background-color:#ffff;
	border-radius:5px;
}

.name-kanji input, .name-kana input, .year input, .tel input, .mail input{
	height:60px;
}
.c-form__item .wpcf7-date, .c-form__item .wpcf7-select{
padding:5px 10px!important;
}
.data-time{
 padding-top:10px;	
}
.data-time input{
	height:40px;
	margin-left:10px;
	margin-right:10px;
	margin-bottom:15px;
   background-color:#fff;
}
.data-time-ttl{
	margin-bottom:10px;
}
.data-time .wpcf7-select{
	height:40px;
	
	  appearance: none;
  -webkit-appearance: none;
	background-image:url('http://marriage-ocean.local/wp-content/uploads/2025/10/select_arrow.png');
	 background-repeat: no-repeat;
	background-color:#fff;
  background-position: right 12px center; 
  background-size:10px;
}
.requid{
	background-color:#FE769A;
	color:#fff;
	font-size:12px;
	border-radius:2px;
	margin-left:5px;
	padding:4px 10px;
}
.optional{
	background-color:#00A6F7;
	color:#fff;
	font-size:12px;
	padding:4px 10px;
	border-radius:2px;
	margin-left:5px;
}
.wpcf7-submit{
	width:280px;
	height:60px;
	background-color:#FE769A;
	color:#fff;
	border-radius:50px;
	font-weight:bold;
	letter-spacing:0.3em!important;
	transition:.3s;
	margin-top:15px;
}
.wpcf7-previous{
	margin-bottom:20px!important;
}
.form-btn{
	text-align:center;
}
.wpcf7-spinner{
	display:none;
}
.wpcf7-previous{
	width:280px;
	height:60px;
	background-color:#00A6F7;
	color:#fff;
	border-radius:50px;
	font-weight:bold;
	letter-spacing:0.3em!important;
	transition:.3s;
	margin-top:15px;
}
.wpcf7-submit:hover, .wpcf7-previous:hover{
	transform:scale(1.05);
}
.complete-box{
	max-width:800px;
	margin:0 auto;
	border-radius:10px;
}
.wpcf7-response-output{
	display:none;
}

.wpcf7-list-item-label::after{
	display:none;
} 
/*
   サイドメニュー
*/
.event-banner{
	overflow:hidden;
}
.event-banner img{
	transition:.3s;
}
.event-banner img:hover{
	transform:scale(1.1);
}
.voice-banner{
	overflow:hidden;
}
.voice-banner img{
	transition:.3s;
	width:100%;
}
.voice-banner img:hover{
	transform:scale(1.1);
}
/*　お客様の声　*/
.voice-list .voice-item .voice-episode{
	color:#666;
	margin-top:10px;
}
.voice-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1em;
  margin-top: 2rem;
  max-width:950px;
 margin:0 auto;
}
.voice-list .voice-item .voice-title{
	margin-top:3px!important;
	font-size:16px;
	color:#333;
}
.voice-list .voice-item:hover{
	opacity:0.8;
}
.voice-list .voice-thumb img{
	border-radius:8px;
}
.body-bottom-map{
	margin:45px 0 40px 0!important;
}
/*　フッター　*/
.footer-company{
	display:flex;
	column-gap:1em;
	align-items:center;
}
.footer-company p{
	color:#004466;
	font-weight:normal;
}
.name-top, .name-catch{
	font-size:12px!important;
	line-height:1.2em;
}
.footer-logo{
	width:70px;
}
.footer-company-detail p{
	font-size:14px;
	margin-bottom:5px;
}
.footer-bottom-full__wrap {
	width: 100%;
	background-color: #f7f7f7; /* お好みで変更 */
	padding: 40px 20px;
	text-align: center;
}
.footer-sns{
	display:flex;
	align-items:center;
	column-gap:0.5em;
	margin-bottom:0px;
}
.footer-sns p{
	margin-bottom:0;
}
.footer-sns img{
	transition:.3s;
}
.footer-sns img:hover{
	transform:scale(1.1);
}
.footer-banner{
	display:flex;
	align-items:center;
	column-gap:1em;
}
.footer-banner img{
	transition:.3s;
}
.footer-banner img:hover{
	transform:scale(1.05);
}
.w-beforeFooter{
margin-bottom:0!important;	
}
.page-id-740 #before_footer_widget{
	display:none;
}
#footer{
	padding-top:15px;
	padding-bottom:15px;
}
.w-footer__box #nav_menu-2 #menu-footer-menu-main li a, .w-footer__box #nav_menu-4 #menu-footer-menu-contact li a{
	font-size:14px;
	padding-top:.60em;
	padding-bottom:.60em;
}
.sp-footer-meil-icon{
	background-color:#469DC8;
	height:100%;
	display:flex;
	justify-content:center;
	align-items:center;
}
.sp-footer-line-icon{
	background-color:#00B900;
	height:100%;
	display:flex;
	justify-content:center;
	align-items:center;
}
.sp-footer-tel-icon{
	background-color:#F56D6D;
	height:100%;
	display:flex;
	justify-content:center;
	align-items:center;
}
.sp-footer-meil-icon span, .sp-footer-line-icon span, .sp-footer-tel-icon span{
	color:#fff!important;
}
.icon-mail, .icon-phone{
	color:#fff!important;
}

.line-icon::before {
  content: "";
  display: inline-block;
  width: 22px;
  height: 20px;
  background-size: contain;
 background-position:top;
  background-repeat: no-repeat;
  background-image: url(https://marriage-ocean.com/wp-content/uploads/2025/11/line_logo_icon.svg);
}
/*　イベントページ　*/
.events-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 30px;
}
.event-meta {
  display: flex;
  align-items: center;
  column-gap:1em;
  padding: 5px 0 8px 0;
  font-size: 12px;
  color: #555;
}
.event-place, .event-date{
	background-color:#f0f0f0;
	padding:.1em 1em;
	border-radius:3px;
}
.event-item h2{
	margin-top:0;
	color:#333;
	font-size:16px;
}
.event-item .event-thumb{
	overflow:hidden;
	border-radius:10px;
}
.event-item img{
	transition:.3s;
	border-radius:10px;
}
.event-item img:hover{
	transform:scale(1.1);
}
.event-item:hover{
	opacity:0.8;
}
.l-articleBottom__section{
	margin-top:80px!important;
}
/*　ページヘッダー　*/
.l-topTitleArea__body{
	padding:0 8em!important;
}
/*　ブログ一覧　*/
.p-relatedPosts .p-postList__title{
	font-size:12px!important;
}
.p-postList.-type-card .p-postList__title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
@media (min-width: 600px) {
	.sp-br600{
		display:none;
	}
}
@media (min-width: 781px){
.sp-br782{
	display:none;
}	
	.pc-hidden-782{
		display:none;
}
	
.page-link .wp-block-cover img{
	transition:0.3s;
}
.page-link .wp-block-cover:hover img{
	transform:scale(1.1);
}
.contact-link.wp-block-cover img{
	transition:0.3s;
}
.contact-link.wp-block-cover:hover img{
	transform:scale(1.1);
}
	.page-link .wp-block-cover:hover p{
	transform:translatex(10px);
}
}

@media (max-width: 1200px){
	.l-header .sp_{
		display:block!important;
		position: relative;
	}
	 .p-spMenu {
        display: block!important;
    }
.l-fixHeader, .l-header__gnav{
	display:none;
}	
	.catch{
		font-size:1.6rem!important;
	}
	.l-header{
		padding:10px 0;
	}
	.l-header__logo {
		top:-10px;
		padding:20px 30px!important;
	}
	.side-left-txt {
		padding-top:250px;
	}
	.l-header__logo .c-headLogo a img{
		width:70px;
	}
}

@media (max-width: 1024px){
		.mainvisual-main{
min-height:750px!important;
	}
}
@media (max-width: 1024px){
	.pc-br1024{
display:none;
	}
	.l-header .l-header__inner{
		padding-right:30px!important;
	}	
	.top-about-cont.is-not-stacked-on-mobile, .top-feature-cont{
		flex-wrap:wrap!important;
	}
	.top-about-left{
		flex-basis:100%!important;
		padding-top:0;
		padding-bottom:15px!important;
	}
	.top-about-cont, .top-feature .swell-block-fullWide__inner{
		width:80%;
		margin:0 auto;

}
	.top-feature-cont{
		row-gap:2em!important;
	}
	.top-feature-cont .wp-block-column{
		flex-basis:100%!important;
	}
	.top-feature-cont img{
		width:100%;
	}
	.concept-item{
		margin-bottom:0!important;
	}
	.concept-item h2{
		font-size:25px!important;
	}
	.concept-item-catch{
		font-size:16px!important;
	}
		.concept-item .item-img .wp-block-cover{
		min-height:25vh!important;
	}
	.concept-item .txt-box{
		flex-basis:75%!important;
	}
	.page-link{
row-gap:0!important;
	}
	.form-link, .tel-link{
    max-width:300px;
	margin:0 auto;
	width:85%;
	}
	.contact-link{
		padding-bottom:50px!important;
	}
	.home .l-content{
		margin-bottom:40px!important;
	}
	.home #before_footer_widget{
		margin-top:0!important;
	}
	.top-about-cont{
		column-gap:1em!important;
	}
	.top-about-center{
		padding:100px 0 0 0!important;
	}
}
@media (max-width: 1020px){
	.top-blog-container{
		margin-top:70px!important;
	}
}
@media (max-width: 991px){
	.l-topTitleArea__body {
    padding: 0 4em !important;
}
	.l-topTitleArea__links{
		display:none;
	}
	.l-topTitleArea img{
		width: calc(100% - 40px) !important;
	}
}

@media (max-width: 782px){
	.pc-br782{
		display:none;
	}
	.sp-hidden-782{
		display:none;
	}
		/*　トップページ　*/
	.c-headLogo__link{
		padding:0;
	}
	.mainvisual-main{
		margin:0 20px!important;
		padding: 1.7em 1.3em;
	}
	.catch{
		font-size:1.3em!important;
	}
	.txt-wh-bg{
		display:block;
		 width: fit-content;
		line-height:1.4em;
		margin-top:12px;
		padding:0.5em 0.8em!important;
	}
	.mainvisual-main{
min-height:500px!important;
	}
	.voice-body{
background: linear-gradient(90deg, transparent 0%, transparent 22%, #ECF4F8 22%, #ECF4F8);
row-gap:0!important;
	}
	.voice-body .title{
text-align:center;
margin-bottom:15px!important;
font-size:25px!important;
	}
	.voice-body .voice-txt-group{
width:80%;
margin:0 auto;
padding-top:80px;
	}
	.voice-body .voice-txt-group p{
		margin-bottom:22px!important;
	}
	.voice-sp-btn{
		margin-top:35px!important;
		width:80%!important;
		max-width:300px!important;
	}
	.voice-sp-btn a{
		background-color:#fff;
		display:block;
		width:100%;
	}
	.voice-sp-btn a{
		padding: 1em 0.3em !important;
	}
	.voice-slider{
padding:0 0 75px;
background-color:none;
	}
	.concept-item .txt-box{
		padding:0!important;
	}
	.concept-item{
		width:80%!important;
		margin:0 auto;
	    left: auto;
	}
	.concept-item h2{
		margin-bottom:15px!important;
		font-size:20px!important;
	}
	.concept-item-catch {
 
		margin-bottom:4px!important;
    }
	.concept-item .txt{
		font-size:15px!important;
		line-height:1.8em!important;
	}
	.txt-box-inner{
	max-width:none;	
	}
	.sp-reverse{
		flex-direction: column-reverse;
	}
	.top-blog-container{
		margin:0 auto;
		margin-top:50px!important;
	}
	.top-about-cont .title, .feature-ttl{
font-size:22px!important;
		line-height:1.5em!important;
		margin-bottom:20px!important;
	}
	.feature-ttl{
		text-align:center;
		padding-top:20px!important;	
	}
	.top-about-cont .title{
		margin-bottom:25px!important;
	}
	.top-about-cont p{
		line-height:2em!important;
	}

	.top-feature-cont{
		margin-bottom:25px!important;
	}
	.top-feature-btn {
    margin-top: 35px !important;
}
	.feature-detail{
		margin-bottom:22px!important;
	}
	.top-feature .item-ttl{
		font-size:18px!important;
		margin:25px 0 10px 0!important;
		padding:0 25px;
	}
	.feature-box{
		padding-bottom:30px;
	}
	.feature-box .number1::after, .feature-box .number2::after, .feature-box .number3::after{
		top:-55px;
		padding-top:15px;
		font-size:14px!important;
	}
	.feature-box .txt{
		font-size:14px!important;
		padding:0 25px;
	}
	.top-blog-ttl{
		font-size:25px!important;
		margin-bottom:20px!important;
	}
	
		/*　特徴　*/
	.feature-item-container{
		row-gap:2.1em!important;
	 
	}
	.feature-item-container p{
		font-size:13px!important;
	}

.feature-item-container2{
margin-bottom:2.5em!important
}
	.feature-item-container .wp-block-column{
		padding:30px 10px 26px!important;
	}
	.feature-support-ttl{
		margin-bottom:25px!important;
		font-size:18px!important;
	}
	.feature-num span{
		font-size:16px!important;
	}
	.style-outer .item{
		row-gap:0.5em!important;
		margin-bottom:30px!important;
	}
	.style-num{
		margin-bottom:0.2em!important;
	}
	/*　下層固定ページ　*/
		.page-id-12 .l-content, .page-id-203 .l-content, .page-id-551 .l-content, .page-id-18 .l-content, .page-id-2 .l-content, .page-id-14 .l-content{
		margin-bottom:0!important;
	}
	.page-id-12 #before_footer_widget, .page-id-203 #before_footer_widget, .page-id-551 #before_footer_widget, .page-id-18 #before_footer_widget, .page-id-2 #before_footer_widget, .page-id-14 #before_footer_widget{
		margin-top:50px!important;
	}
		.style-outer .item img{
		width:150px;
	}
	.style-outer .item .wp-block-image{
text-align:left;
	}
	.feature-gry-bg{
		margin-bottom:10px!important;
	}
	
	/*　成婚の流れ　*/
	.flow-btn{
		text-align:center!important;
	}
	.flow-cont img{
		width:100%;	
		max-width:none;
		}	
	.flow-cont .swell-block-step__title{
		margin-bottom:16px!important;
		font-size:18px!important;
		line-height:1.5em!important;
	}
	.flow-cont .swell-block-step__body{
		margin-top:0!important;
	}
	.m-b-20-782{
		margin-bottom:20px!important;
	}
	.flow-top-txt{
		font-size:16px!important;
		margin-bottom:20px!important;
	}
	/*　会員データ　*/
	.red-block-members span{
		font-size:18px!important;
	}
	.member-data .wp-block-image{
		width:180px;
	}
	.member-data-frame{
		padding:40px 20px 40px 20px!important;
		margin-top:-10px!important;
	}
	.member-data-frame .circle-img{
		width:200px;
		margin:0 auto;
		
	}
	.menbers-cont-ttl{
		font-size:20px!important;
	}
	.member-data{
padding-left:30px!important;
	}
	/*　FAQ　*/
	.faq-top-txt{
		margin-bottom:15px!important;
	}
		/*　店舗情報　*/
	.about-message .txt{
		line-height:1.8em!important;
	}
	.message-block-ttl{
		margin-top:40px!important;
		font-size:18px!important;
		line-height:1.6em!important;
	}
	.shop-ttl, .access-ttl{
		font-size:18px!important;
		margin-bottom:15px!important;
	}
	.profile-ttl{
		font-size:22px!important;
	}
	.sp-782-m-b-30{
		margin-bottom:30px!important;
	}
	
	/*　ブログ　*/
	.-type-card .p-postList__item{
		margin-bottom:25px!important;
	}
	.c-pagination{
		margin-top:20px!important;
	}
	.events-list{
		padding:0 10px!important;
	}
	.events-list{
		row-gap:0.5em!important;
	}
	/*　プラン　*/
	.sp-plan-item-detail{
		padding:10px 0!important;
	}
	.plan-cont table th{
		font-size:13px!important;
		width:230px;
	}
	.plan-cont table td{
		font-size:14px!important;
	}
	.sp-plan{
		row-gap:2em!important;
	}
	.plan-annotation{
		display:block!important;
		padding-top:20px!important;
	}
	.plan-annotation dt, .plan-annotation dd{
		width:100%!important;
	}
	.plan-top-txt{
		margin-bottom:15px!important;
	}
	.all-inclusive .ttl{
		font-size:22px!important;
		margin-bottom:20px!important;
	}
	.all-inclusive-icon{
		width:80px;
		margin:0 auto;
	}
	.all-inclusive{
		padding:50px 20px 70px 20px!important;
	}
	.all-inclusive .wp-block-column {
    padding: 0px 20px 30px;
}
	.all-inclusive .wp-block-column .number {
		left:20px;
		top:-20px;
	}
	.item-catch{
		font-size:16px!important;
	}
	.all-inclusive .wp-block-column h3{
		margin-top:3em!important;
		margin-bottom:0.5em!important;
	}
	.Comparison-list{
		margin-bottom:30px!important;
	}
	.Comparison-ttl{
font-size:18px!important;
margin-bottom:10px!important;
	}
	.all-inclusive .bottom-detail-ttl{
		margin-top:35px!important;
	}
	.guide-ttl{
		font-size:20px!important;
	}
	/*　予約フォーム　*/
	.form-outer{
		padding:0!important;
	}
	.wpcf7-submit{
		margin-top:0!important;
	}
	.c-form_list{
		box-shadow:2px 2px 15px #ECF7FD;
		padding:20px 15px 50px 15px;
	}
	.form-ttl{
		font-size:18px!important;
		margin-bottom:20px!important;
	}
}
@media (max-width: 767px) {
	.voice-list {
		grid-template-columns: repeat(2, 1fr);
		gap: 10px;
	}
	.voice-item {
  border: none;
  border-radius: 0;
  padding: 0;
}
	.voice-title {
		font-size: 0.8em!important;
		margin-top:5px!important;
	}
	.voice-episode{
		font-size:11px;
		margin-top:10px;
	}
	
}
@media (max-width: 599px) {
	.l-header__logo .c-headLogo a img {
        width: 65px;
    }
	.l-header {
        padding:5px 0;
    }
	    .l-header__logo {
        top: -10px;
        padding: 15px 22px 8px 22px!important;
    }
	.pc-br600{
		display:none;
	}
	.top-blog-container, .concept-item, .voice-body .voice-txt-group, .top-about-cont, .top-feature .swell-block-fullWide__inne, .top-about-cont, .top-feature .swell-block-fullWide__inner{
		width:95%!important;
	}
	.top-about-left p, .feature-detail{
		font-size:15px!important;
	}
	.swiper-wrapper{
		padding-left:15px;
	}
	.swiper-slide{
	margin-right:15px!important;	
	}
	.swiper-button-next, .swiper-button-prev {
		width:40px!important;
		height:40px!important;
	}
	.voice-text{
		font-size:14px!important;
	}
	.swiper-button-next{
		right:20px!important;
	}
	
.message-inner{
	    margin-top:-320px!important;
		margin-bottom:0!important;
		 margin: 0 calc(50% - 50vw);
 　 　　width: 100vw;
	position:relative;
	}
	.message-inner .txt{
		margin-right:0;
		padding:30px 20px 45px 20px!important;
		box-shadow:2px 2px 10px #f0f0f0;
		margin-top:-80px!important;
	}

	.message-inner .wp-block-media-text__content{
		padding:2em 2em!important;align-content;
		position:absolute;
		top:-80px;
	}

	.message-catch{
		font-size:18px!important;
		margin-bottom:22px!important;
	}
	.message-txt{
		margin-bottom:15px!important;
		font-size:14px!important;
	}
	
	.message-ttl{
		font-size:56px!important;
}
	.message-btn{
		width:100%;
	}
	.message-inner .btn-left{
		max-width:320px;
	}
	.message-inner .btn-left a {
    padding: 1em 0.3em !important;
}
	.light-blu-container{
		padding:2em 1.5em!important;
	}
	.message-header-img{
		min-height:350px!important;
	}
	.page-link p{
		font-size:1.4em!important;
	}
	
	/*特徴ページ*/
	.feature-item-detail{
		text-align:left;
		margin-bottom:20px!important;
	}
	.feature-num{
		margin-bottom:22px!important;
	}
	.feature-item-ttl{
		font-size:20px!important;
		line-height:1.8em!important;
		margin-bottom:15px!important;
}
	.cont-ttl{
		font-size:22px!important;
	}
	.style-outer{
		padding:3em 2em!important;
	}
	.style5-ttl{
		margin-bottom:30px!important;
	}
	
	.profile-img{
		width:120px;
		margin:0 auto;
		margin-bottom:2em!important;
	}
	.name-img{
		width:130px;
	}
	.contact-link-ttl{
		margin-bottom:18px!important;
		font-size:25px!important;
	}
	.contact-link-txt{
		margin-bottom:15px!important;
	}
	.contact-link-btns p{
		font-size:11px!important;
	}
	.form-link a{
		font-size:16px!important;
	}
.inquiry-type .wpcf7-list-item, .Confirmation2 .wpcf7-list-item, .Confirmation3 .wpcf7-list-item, .Confirmation4 .wpcf7-list-item, .Confirmation5 .wpcf7-list-item, .Confirmation6 .wpcf7-list-item, .Confirmation7 .wpcf7-list-item, .Confirmation8 .wpcf7-list-item {
	padding:10px 15px!important;
	}
	.requid, .optional{
		padding:3px 5px 2px 5px;
	}
	.design_button{
		width:85%;
		max-width:320px;
	}
	.design_button a {
    display: block;
    font-size: 15px;
    width: 100%;
    padding: 1em 0.3em !important;
}
	.data-time input{
		margin-left:0!important;
	}
	.c-pageTitle{
		font-size:1.4em!important;
	}
}