@charset "utf-8";
/*=================================================================================*/
/** 768px未満 スマホサイズ画面 ＜これが基本＞ **/

/*==================
  電話番号タップ
==================*/
a.telLink0 { cursor: pointer; pointer-events: auto; text-decoration:underline; color:#000000; }

img[src$=".svg"] {
	width: auto;
}

.disp_p { display:none; }/*PC時だけ表示*/
.disp_s { display:block; }/*スマホ時だけ表示*/
.disp_pt { display:none; }/*PC時とタブレット時表示*/
.disp_st { display:block; }/*スマホ時とタブレット時表示*/

.disp_fix { position:fixed; top:0; left:0; z-index:50000; width:100%; }


/*==========================
	ハンバーガーメニュー
=========================***/

/*============
nav
=============*/
.nav_s {
  display: block;
  position: fixed;
  top: 0;
  right: -90%;
  width: 90%;
  bottom: 0;
  background: #FFFFFF;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  transition: all .5s;
  z-index: 3;
  opacity: 0;
}


.open .nav_s {
  right: 0;
  opacity: 1;
}
.nav_s .inner {
	padding: 4em 1em 2em;
	box-sizing: border-box;
}
.nav_s .inner ul {
	list-style: none;
	padding: 0;
}
.nav_s .inner>ul>li {
	padding:0.7em;
	box-sizing: border-box;	
	position: relative;
	border-bottom:1px #D6D6D6 solid;
}
.nav_s ul>li a {
	display: block;
	text-decoration: none;
	transition-duration: 0.2s;
}

.hmb_block a {
  display: block;
}
.hmb_block a.toggle {
  cursor: pointer !important;
}
.hmb_block .inner{
	width: 90%;
	margin: 0 auto;
}
.hmb_block .inner li{
	padding: 0.5em 0 0.2em;
}
.hmb_block .hmb_block_title{
	position: relative;
	text-decoration: none;
	z-index: 2;
	-webkit-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;	
}
.hmb_block .hmb_block_title h3{
	font-weight: bold;
}
.hmb_block .hmb_block_title h3::after {
	position: absolute;
	content: "";
	background: url("../img/common/hbg_arrow.svg") no-repeat;
	background-size: contain;
	width: 9px;
	height: 6px;
	top: 50%;
	right: 2%;
	transform: translate(-50%, -50%) rotate(180deg);
}
.hmb_block .hmb_block_title.active h3::after {
	transform: translate(-50%, -50%);
}
.child {
	display: none;
}


.nav_s .inner ul li a:hover {
	color: #FF6643;
}
/*============
.toggle_btn
=============*/
.toggle_btn {
  display: block;
  /*width: 30px;
  /height: 30px;*/
  transition: all .5s;
  cursor: pointer;
  z-index: 30;
	position: relative;

}
.toggle_btn span {
  display: block;
  position: absolute;
  left: 0;
  width: 31px;
  height: 3px;
  background-color: #FFFFFF;
  border-radius: 4px;
  transition: all .5s;
}


.nav_s {
	right: -94%;
	width: 94%;
}

.nav_s::-webkit-scrollbar{
	display: none;
}



/*============
#mask
=============*/
#mask {
  display: none;
  transition: all .5s;
}
.open #mask {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: .5;
  z-index: 2;
  cursor: pointer;
}


.maru_hover .maru a{
	display: inline-block;
	margin:0 0 0 0.6em;
	font-weight: bold;
	padding:0.1em 0.5em 0.1em 1em;
	position: relative;
	text-decoration: none;
	z-index: 2;
  -webkit-transition: .3s ease-in-out;
  transition: .3s ease-in-out;
}
.maru_hover .maru a::before{
	position: absolute;
	top:50%;
	left:0;
	content: '';
	width:10px;
	height:2px;
	background:#C1272D;
  -webkit-transition: .3s ease-in-out;
  transition: .3s ease-in-out;
	z-index: -1;
}

.maru_hover .maru a p{
	display: inline-block;
	padding:0 0.2em;
	background:#FFFFFF;
}

.maru_hover .maru a p{
	display: inline-block;
	padding:0 0.2em;
	background:#FFFFFF;
}
.maru_hover .anashi{
	margin:0 0 0 1.6em;
}

.maru_hover .maru a:hover::before{
	width:10px;
	height:10px;
	border-radius: 50%;
	top:35%;
}


/*==========================
	ヘッダー
=========================***/
.head_block{
	background: rgba(255,255,255,.9);
}
.back_sub_img .head_block,
.back_pick_img .head_block{
	background: rgba(255,255,255,0);
}
.back_sub_img .head00.black .head_block,
.back_pick_img .head00.black .head_block{
	background: rgba(255,255,255,.9);
}

.navi>ul{
	display: flex;
	flex-wrap:wrap;
	width:100%;
	justify-content:space-between;
	align-items: center;
}


.navi>ul>li:nth-child(1){
	max-width: 220px;
	padding:0;
	width: 36%;
	margin:0 5% 0 3%;
}
.navi>ul>li:nth-child(2){
	width: 55%;
	max-width: 550px;
	margin:0;
}


.navi>ul>li a{
	text-decoration: none;
	-webkit-transition: .2s ease-in-out;
	transition: .2s ease-in-out;

	}
.navi>ul>li a:hover{
	color:#0055B4;
}

.navi>ul>li a:hover img{
	filter: alpha(opacity=100);
	-moz-opacity:1;
	opacity:1;
}


.navi01logo {
	width:100%;
	height:100%;
	-webkit-transition: .2s ease-in-out;
	transition: .2s ease-in-out;
}
.navi01logo img{
	width:100%;
}

.navi01text{
	border-radius: 50px;
	box-sizing: border-box;
	background:#FFFFFF;
}

.navi01text>ul{
	text-align: center;
	padding: 1em 0;
	font-weight: bold;
}

	.navi01text>ul>li{
	display: inline-block;
	padding:0 1em;
}


.navi_side>ul{
	display: flex;
	flex-wrap:wrap;
	width:100%;
	justify-content: flex-end;
	align-items: center;
	-webkit-transition: .2s ease-in-out;
	transition: .2s ease-in-out;
}

.navi_side>ul>li:nth-child(1),
.navi_side>ul>li:nth-child(2),
.navi_side>ul>li:nth-child(3){
	width:25%;
	padding:0.3em 0;
	box-sizing: border-box;
	-webkit-transition: .2s ease-in-out;
	transition: .2s ease-in-out;
}
.navi_side>ul>li:nth-child(4){
	width:25%;
	margin:0;
}
.navi_side>ul>li img{
	width:100%;
}


.head00 {
	width:100%;
	margin:0 auto;
	/*background:#FFFFFF;
	box-shadow: 0px 6px 2px -2px rgba(0,0,0,0.23);*/
	position:relative;
	z-index:2;
}

.head_block>ul{
	display: flex;
	flex-wrap:wrap;
	width:100%;
	justify-content:space-between;
}

.head_block>ul>li:nth-child(1){/*1600 220*/
	max-width: 220px;
	width:13.75%;
	position: relative;
}
.head_block>ul>li:nth-child(2){/*1600 510*/
	max-width: 510px;
	width:31.875%;
}

.navi_cont_menu{
	/*max-width: 40px;*/
	width: 100%;
	box-sizing: border-box;
}

/* 別サイト風CMS用 */
.konk_head{
	padding: 2em 0 1em;
}
.konk_head img{
	margin: 0 auto;
	-webkit-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
.konk_logo{
	margin: 0 auto;
}
.konk_logo img{
	max-width: 180px;
}
.black .konk_head {
	padding: 0.25em 0;
}
.black .konk_head img{
	transform: scale(0.6);
  	transform-origin: center center;
}

/* ピックアップ相談所 */
.pick_head{
	display: none;
}

/*===============================
  右固定バナー
===============================*/
.kote_r{
	position: fixed;
	top:15%;
	right:0;
	z-index: 30;
}
.kote_r img{
	margin:0;
	width:60%;
	float: right;
	}

/*===============================
  下固定バナー
===============================*/
.kote_bg{
	display: none;
	width:100%;
	position: fixed;
	z-index:9999;
	bottom:0;
}
.kote_block_bg img{
	width:100%;
	height:100%;
}

.kote_line{
}
.kote_close{
	cursor:pointer;
	width:300px;
	height:40px;
	position: absolute;
	bottom:94%;
	right:5px;
	z-index: 20;
}
.kote_close_img{
	width:40px;
	padding:0.2em;
	margin:0 0 0 270px;
	box-sizing: border-box;
	/*background: #003670;*/
}

.kote_block{
	position: relative;
	margin:0 0 0 0;
}
.kote{
	width: 88%;
	margin:0 auto 0 50%;
	max-width: 500px;
	margin:0 auto;
	position: absolute;
	right:50%;
	bottom:0.5em;
	border-radius:20px;
	transform: translateX(50%);
}

.kote_s>ul{
	display: flex;
	flex-wrap:wrap;
	width:100%;
	justify-content: center;
}

.kote_s>ul>li{
	width:46%;
	max-width: 254px;
	margin:0 1% 0.5em;
}



/***  ページTOP  ***/
#page_tops {
	position: fixed;
	display:block;
	width:auto;
	max-width:48%;
	z-index:50000;
	bottom:0em;
	right:0.5em;
}

#page_tops img{
	filter: drop-shadow(0 0 0.75rem rgba(0,0,0,0.2));
}


#page_tops_esti {
	position: fixed;
	display:block;
	width:auto;
	max-width:15%;
	z-index:50000;
	bottom:0em;
	left:0.5em;
}


/*==========================
	フッター
=========================***/

.footue01_01>ul{
	display: flex;
	flex-wrap:wrap;
	width:100%;
	align-items: center;
	justify-content: center;
}
.footue01_01>ul>li{
	width:100%;
	padding:0.5em 1em;
	box-sizing: border-box;
}

.footue01_01>ul>li a{
	-webkit-transition: .1s ease-in-out;
	transition: .1s ease-in-out;
}
.footue01_01>ul>li a:hover img{

	 filter: drop-shadow(3px 3px 3px rgba(0,0,0,0.15));
	 -ms-transform: translateY(2px);
	-webkit-transform: translateY(2px);
	transform: translateY(2px);
}

.footue01_01>ul>li a:hover img{
	filter: alpha(opacity=100);
	-moz-opacity:1;
	opacity:1;
}


.back_foot{
	background:#F4E8DF;
}
.foot_head{
	width:100%;
	margin: 0 auto;
}
.foot_head ul li{
	margin-bottom: 1.5em;
}

.foot_block{
	display: flex;
	flex-wrap:wrap;
	width:100%;
	padding: 5em 0 11em;
}
.foot_blocktext{
	width:100%;
	margin:0;
}

.foot_logo{
	width:80%;
	margin:1em auto;
}


.foot01_01>ul{
	display: flex;
	flex-wrap:wrap;
	width:100%;
}
.foot01_01>ul>li{
	box-sizing: border-box;
	padding: 0.5em;
	width: 100%;
}
.foot01_01>ul>li>ul>li{
	box-sizing: border-box;
	border-bottom: 1px solid #C9B59D;
	padding: 0.7em 0.5em;
	width: 100%;
}
.foot01_01_img{
	width: 80%;
	margin: 2em auto 0;
}

.foot_tel{
	position: relative;
	padding:0 0 0 2em;
}

.foot_tel::before{
	content: '';
	background:url("../img/common/foot_icon_02.svg") no-repeat;
	background-size: contain;
	width:20px;
	height:20px;
	position: absolute;
	top: 52%;
	left: 0.8em;
	transform: translate(-50%,-50%);
	
}

/*=============================
	サブ共通
=============================*/
.title_sub_wrap{
	padding: 2em 0;
	margin-bottom: 3em;
	position: relative;
}
.title_sub_block{
	position: relative;
	z-index: 2;
	padding: 1em 2.5em;
	display: inline-block;
}
.title_sub_en{
	position: absolute;
	right: 2%;
	bottom: -0.75em;
	z-index: 1;
}
.title_sub_en img{
	max-height: 75px;
}
.title_sub_en.title_sub_mm{
	width: 90%;
	bottom: 0;
}
.title_sub_en.title_sub_cont{
	width: 50%;
	right: 25%;
	bottom: 0;
}


.pan>ol,
.pan>ol>li{
	flex-wrap: wrap;
	display: inline-flex;
  	align-items: center; /* 縦位置を中央揃え */
	gap: 0 1em;
	color:#808080;
}
.pan>ol>li::after{
	content: url("../img/icon/icon_pan_arrow.svg");
	padding:0 1em 0 0;
}
.pan>ol>li:last-child::after{
	content: '';
	padding:0;
}
.pan>ol>li a{
	color:#808080;
	text-decoration: underline;
	-webkit-transition: .2s ease-in-out;
	transition: .2s ease-in-out;
}
.pan>ol>li a:hover{
	text-decoration: none;
}



/*=================================================================================*/
/** 768px以上　タブレット縦　サイズ画面  **/
@media (min-width : 768px) {
/*==================
  電話番号タップ
==================*/
a.telLink0 { display:inline-block; cursor: default; pointer-events: none; text-decoration:none; }


.disp_p { display:block; }/*PC時・タブレット時表示*/
.disp_s { display:none; }/*スマホ時だけ表示*/

/***  ヘッダー  ***/
.head00 {
	/*background:linear-gradient(to bottom,rgba(255,255,255,1),rgba(255,255,255,0));
	background: #FFFFFF;*/
	box-shadow:none;
}

.navi_side>ul>li:nth-child(1){
	width:41.66666%;
	padding:0.2em;
}
.navi_side>ul>li:nth-child(2){
	width:45%;
	padding:0.2em;
}
.navi_side>ul>li:nth-child(3){
	width:12%;
	padding:0.2em;
}

	
.navi>ul>li:nth-child(1){/*1600 245*/
	max-width: 222px;
	margin:0 0 0 1em;
	padding: 0.75em 0;
	width: 30.83333%;
}
	
.navi>ul>li:nth-child(2){/*1600 430*/
	margin:0 0 0 5%;
	width: 55%;
	max-width: 600px;
}


.nav_s {
	right: -55%;
	width: 55%;
}


/*===============================
	MVより下にスクロールしたら
===============================*/
.black .navi01logo {
	width:60%;
	display: block;
}
.black .navi01text {
	background:none;
}
	
.black .navi_side>ul {
	width:90%;
	margin:0 0 0 10%;
}
	
.black .navi_side>ul>li:nth-child(1){
	padding:0.2em;
}
.black .navi_side>ul>li:nth-child(2){
	padding:0.5em;
}

/* 婚活ブログ用 */
.konk_logo img{
	max-width: 100%;
}


/***  フッター  ***/
.foot_head {
	width:35%;
}
.foot_blocktext{
	width:63%;
	margin:0 0 0 2%;
}
	
.foot_logo{
	width:100%;
	margin:0;
}
	
/*===============================
  右固定バナー
===============================*/
.kote_r img{
	width:65%;
	}

/*===============================
  下固定バナー
===============================*/

.fix {
	z-index: 100000;
	position: fixed;
	bottom: 0;
}

.kote{
	width: 50%;
	right: 0.5em;
	transform: translateX(0);
}

/***  ページTOP  ***/
#page_tops {
	bottom:0.5em;
	right:1em;
}
#page_tops_esti{
	bottom:0.5em;
	left:1em;
}

/*=============================
	サブ共通
=============================*/
.title_sub_block{
	padding: 0.85em 3.5em;
}
.title_sub_en{
	right: auto;
	left: 12%;
}
.title_sub_en img{
	max-height: inherit;
}
.title_sub_blog{
	left: 25%;
}
.title_sub_en.title_sub_konk{
	left: 50%;
    transform: translateX(-50%);
    bottom: -2em;
}
.title_sub_en.title_sub_free{
	left: 5%;
}
.title_sub_en.title_sub_cont{
	left: 10%;
	bottom: -1em;
}
.title_sub_en.title_sub_mm{
	left: 2%;
	bottom: -1em;
}


}

@media (min-width : 1200px) { 

.disp_pt { display:block; }/*PC時だけ表示*/
.disp_st { display:none; }/*スマホ時とタブレット時表示*/

	
.navi_side>ul>li:nth-child(2){
	padding:0.5em;
}
.navi_side>ul>li:nth-child(3){
	padding:1em;
}
	
.navi>ul>li:nth-child(3){/*1600 1015*/
	width: 55%;
	max-width: 660px;
	margin:0;
}
	
.nav_s {
	right: -35%;
	width: 35%;
}

	
.foot_head ul li{
	margin-bottom: 1em;    
}
.foot_head {
	width:30%;
}
.foot_blocktext{
	margin-left: 5%;
}
.foot01_01>ul>li:nth-child(1){
	width: 42%;
}
.foot01_01>ul>li:nth-child(2){
	width: 50%;
}

.foot01_01>ul>li>ul>li{
	border: none;
	line-height: 1.85em;
}

/*===============================
  右固定バナー
===============================*/
.kote_r img{
	width:100%;
	}
/***  ページTOP  ***/
#page_tops {
	position: fixed;
	display:block;
	width:auto;
	z-index:50;
	max-width: 500px;
}
#page_tops_esti {
	position: fixed;
	display:block;
	width:auto;
	z-index:50;
}
}


@media (min-width : 1700px) { 
	
}
