@charset "utf-8";


/* ==========================================================================
   基本設定
========================================================================== */

.click {
    padding-left: 80px;
    margin-bottom: 10px;
}

@media screen and (max-width: 640px) {
.click {
    padding-left: 0;
    /* width: 10vw; */
    margin-bottom: 3vw;
    text-align: center;
}
.click img {
    width:35vw;
}   
    
}

* {
    font-size: 16px;
    color: #333333;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: normal;
    word-break: break-all;
    margin: 0px;
    padding: 0px;
    box-sizing: border-box;
}

.font-family_no{
	font-family:Avenir , "Open Sans" , "Helvetica Neue" , Helvetica , Arial , Verdana , Roboto;
}

a{
	text-decoration: none;	
}

.clear{
	clear: both;	
}

body{
	width: 100%;
	min-width: 1000px;
/*	background-image: url(../images/back.jpg);*/
	-webkit-print-color-adjust: exact;
	position: relative;	
    letter-spacing: 0.04em;
}

.base1000{
	width: 1000px;
	margin: 0 auto;	
    list-style: none;
}
.contents:after{
	content: "";
	display: block;
	clear: both;
}

.sp{
	display: none;	
}

.mb10{
	margin-bottom: 10px;
}

.mb20{
	margin-bottom: 20px;
}

.mb30{
	margin-bottom: 30px;
}

.mb40{
	margin-bottom: 40px;
}

.mb50{
	margin-bottom: 50px;
}

.mt10{
	margin-top: 10px;
}

.mt15{
	margin-top: 15px;
}

.mt20{
	margin-top: 20px;
}

.mt30{
	margin-top: 30px;
}

.mt40{
	margin-top: 40px;
}

.mt50{
	margin-top: 50px;
}

.pt10{
	padding-top: 10px;
}

.pt15{
	padding-top: 15px;
}

.pt20{
	padding-top: 20px;
}

.pt30{
	padding-top: 30px;
}

.pt40{
	padding-top: 40px;
}

.pt50{
	padding-top: 50px;
}

.pb10{
	padding-bottom: 10px;
}

.pb20{
	padding-bottom: 20px;
}

.pb30{
	padding-bottom: 30px;
}

.pb40{
	padding-bottom: 40px;
}

.pb50{
	padding-bottom: 50px;
}

/* ==========================================================================
   header
========================================================================== */
body{
	padding-top: 100px;
}

header {
    width: 100%;
    overflow: hidden;
    background: #fff;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 999;
    box-shadow: 0px 0px 20px rgba(0,0,0,0.05);
}
header .header_inner{
	height: 100px;
	display: flex;
		align-items: center;
		justify-content: space-between;
}

header .header_left{
	display: flex;
		align-items: center;
}
header .header_left .h-ichimin{
	width: 90px;
    margin-right: 10px;
}
	header .header_left .h-ichimin img{
		width: 100%;
	}
header .header_left h1{
	display: flex;
		justify-content: flex-start;
		align-items: flex-end;
}
header .header_left h1 .h-logo_box{
	margin-right: 10px;
	display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: flex-start;
}
header .header_left h1 .logo_txt {
    font-size: 15px;
    margin-bottom: 0.5em;
    letter-spacing: 0.1em;
    font-weight: bold;
    display: inline-block;
}
header .header_left h1 img{
	width: 200px;
}
header .header_left h1 .potal{
	font-size: 19px;
		font-weight: bold;
}

header .header_left p{
	width: 100px;
	position: relative;
	top: 30px;
	left: -15px;
}

header .header_left p img{
	width: 100%;
}

header .header_right{
	float: right;
}

header .header_right p.header_right_p1 {
/*    color: #00b5ee;*/
    opacity:0.8;
    font-size: 16px;
    margin-bottom: 0.25em;
}

header .header_right .header_right_p2 {
    padding-left: 1.5em;
    font-size: 20px;
    font-weight: bold;
    display: block;
    position: relative;
    font-family: "Lato", sans-serif;
}
	header .header_right .header_right_p2 .tel_txt{
		font-size: 12px;
			margin-left: 0.1em;
		display: inline-block;
	}
header .header_right .header_right_p2.p2_mail{
	font-size: 20px;
}
header .header_right .header_right_p2::before{
    width: 25px;
    height: 25px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
	display: block;
	content: "";
	}
header .header_right .header_right_p2.p2_tel::before{
	background-image: url(../images/icon_tel-p.png);
}
header .header_right .header_right_p2.p2_mail::before{
	background-image: url(../images/icon_mail-p.png);
    top:55%
}
header .header_right span.header_right_p3_span1{
	display: block;
	color: #fff;
	background: #a9a9a9;
	width: 60px;
	text-align: center;
	font-size: 10px;
	padding: 5px 0;
	float: left;
	margin-right: 10px;
}

header .header_right span.header_right_p3_span2{
	display: block;
	float: left;
}

/* ==========================================================================
   junbi
========================================================================== */

#junbi {
    text-align: center;
    padding:9vh 0;
    background-image: url(../images/background.png);
    background-repeat: no-repeat;
    display: flex;
    justify-content: center;
    align-items: center;
     height: calc(100vh - 100px);
}

.junbi-1 {
    font-size: 1.7rem;
    color:#d83a58;
    font-weight: bold;
    margin-bottom: 1.5rem;
}
.junbi-2 {
    line-height: 1.9em;
    font-size: 1.2rem;
    font-weight: bold;
}

@media screen and (max-width: 640px) {
#junbi {
     height: calc(100vh - 24vh);
}  
    
    
}

/* ==========================================================================
   nav
========================================================================== */

nav {
    background: #F5F5F5;
    border-bottom: solid #e8e8e8 4px;
}

nav ul{
	border-left: 1px solid #fff;
	overflow: hidden;
}

nav ul li{
	background-repeat: no-repeat;
	float: left;
	border-right: 2px solid #e8e8e8;
	background-position: 15px center;
}

nav ul li a {
    display: block;
    padding: 15px 50px 10px 50px;
    font-size: 16px;
    line-height: 1.7em;
    font-weight: bold;
}

nav ul li a span {
    display: block;
    text-align: center;
    opacity: 0.7;
    font-size: 12px;
    font-family: "Lato", sans-serif;
}

nav ul li.nav1{
	background-image: url(../images/nav1.png);
    border-left: solid 2px #e8e8e8;
}

nav ul li.nav2{
	background-image: url(../images/nav2.png);
}

nav ul li.nav3{
	background-image: url(../images/nav3.png);
}

.slide-text {
    width: 220px;
    float: right;
    padding-top: 10px;
    opacity: 0.8;
    border: 1px solid #472911;
    padding: 5px;
    text-align: center;
    margin-top: 12px;
    opacity: 0.7;
    display: none;
}
nav .base1000 {
    display: flex;
    justify-content: center;
}

/* ==========================================================================
   スライダー
========================================================================== */
/*非公開中のバナーはリンク無効*/
#slide .comingsoon,
#sp_slider .comingsoon{
	pointer-events: none;
}
/* ==========================================================================
   イベント
========================================================================== */

#event {
    padding: 30px 0 0 0;
    overflow: hidden;
}

#event h1,
#event_end h1{
	text-align: center;
    margin-bottom: 0.5em;
}

#event h2,
#event_end h2{
    font-weight: 500;
	text-align: center;
	font-size: 24px;
	margin-bottom: 30px;
	background-image: url(../images/sec_back1.png);
	background-repeat: no-repeat;
	background-position: center top;
    line-height: 1.5em;
}

#event h2 span,
#event_end h2 span{
    font-family: "Lato", sans-serif;
	display: block;
	font-size: 14px;
    opacity: 0.5;
}
.event_sec__block {
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    gap: 20px 25px;
    margin-bottom: 4rem;
}
.event_sec__block.block2{
        margin-bottom: 0;
}
#event .event_sec,
#event_end .event_sec{
	width: calc((100% - (12px * 2))/3);
	min-height: 400px;
	position: relative;
/*	box-shadow: 0 0 3px rgba(0,0,0,0.25);*/

    color: #ffffff;
/*    border: solid 1px #eaeaea;*/
}
}
.event_sec_in{
	position: relative;
}
/*
.event_sec_in.d2 a after {
	position: relative;
}
.event_sec_in.d2::after {
    content:"";
    width: 100%;
    height:100%;
	display: block;
    background:rgba(0,0,0,0.5);
    
    position: absolute;
    top:0;
    left:0;
    z-index: 100;
}
*/
.event_sec>a{
	position: relative;
	display: block;
	z-index: 100;
}
.event_img{
	position: relative;
	height: 280px;
	vertical-align: bottom;
}
.event_img img{
	position: absolute;
    left: 0;
    top: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
    font-family: "object-fit: cover;";
    object-position: center;
	z-index: 10;
}
.event_img .event_AppStart {
    width: auto;
    padding: 0.3em 1.2em 0.3em 0.8em;
    font-size: 16px;
    font-weight: 500;
    color: #f84298;
    background: #ffffff;
    display: inline-block;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 60;
}
.event_AppStart.end {
    color: #5b3c1f;
    background:#faf3ef;
}
.event_img .event_No {
    width: 4em;
    height: 4em;
    line-height: 4em;
    border-radius: 5.7em;
    background: #ec75a9;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    color: #fff;
    display: inline-block;
    position: absolute;
    left: 0.2rem;
    bottom: 1.2rem;
    z-index: 60;
    letter-spacing: 0.15em;
}

.event_img .reception{
	min-width: 6em;
	padding: 0 0.5em;
	height: 28px;
		line-height: 28px;
	font-size: 15px;
		text-align: center;
		color: #fff;
	display: inline-block;	
	position: absolute;
		right: 4px;
		top: 4px;
	z-index: 50;
}
.event_img .reception.-now{
	background: #FFBF00;
}
.event_img .reception.-end{
	background: #79bcf1;
}
.event_img .reception.-eventend{
	background: #ff9899;
}
.event_img p {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 1.1rem;
    z-index: 30;
    background: rgba(255,255,255,0.9);
    padding: 8px 10px 8px 4.4em;
    box-sizing: border-box;
    color: #ec75a9;
    display: flex;
    flex-direction: column;
    justify-content: center;
    font-size: 18px;
    font-weight: bold;
}
.event_title{
	background: #fff;
	padding: 10px 15px;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.event_title h3{
	font-size: 17px;
	font-weight: bold;
    line-height: 1.6;
    margin-bottom: 0.2em;
}
.event_title h4{
	font-size: 14px;
}
.event_title p{
	font-size: 14px;
}
.event_title h4.mini{
	font-size: 12px;
}
.event_message {
    padding: 10px 15px;
    background: #7b7367;
}
.event_message p{
	color: #fff;
    font-weight: bold;
    line-height: 1.8em;
}
.event_sec a {
    transition: opacity 0.5s;
   border: solid 1px #eaeaea; 
}
.event_sec a:hover {
    opacity:0.65;
}

/*カミングスーン*/
.event_sec.comingsoon,
.event_sec.comingsoon02{
	pointer-events: none;
}
/*-----------------------------------
	comingsoonはカーソル無効のみ
	comingsoon02はカバー画像あり
-----------------------------------*/

/*--イベントごとの画像位置調整-*/
.event_sec_in.d2.comingsoon02:after{
    background-image:url(../images/coming-soon2_No2.png);
	}
.event_sec_in.d3.comingsoon02:after{
    background-image:url(../images/coming-soon2_No3.png);
	}
.event_sec_in.d4.comingsoon02:after{
    background-image:url(../images/coming-soon2_No4.png);
	}
.event_sec_in.d5.comingsoon02:after{
    background-image:url(../images/coming-soon2_No5.png);
	}
.event_sec_in.d2.comingsoon02:after,
.event_sec_in.d3.comingsoon02:after,
.event_sec_in.d4.comingsoon02:after,
.event_sec_in.d5.comingsoon02:after{
    width: 100%;
    height: 100%;
    content: "";
    display: block;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    z-index: 110;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
	}

/*イベント終了*/
	#event .event_sec.eventend02,
	#event_end .event_sec.eventend02{
		pointer-events: none;
	}
	
	/*--イベントごとの画像記述-*/
	#event1.event_sec.eventend02:after{
		background-image:url(../images/event-end2_No1.png);
	}
	#event2.event_sec.eventend02:after{
		background-image:url(../images/event-end2_No2.png);
	}
	#event3.event_sec.eventend02:after{
		background-image:url(../images/event-end2_No3.png);
	}
	/*
	#event4.event_sec.eventend02:after{
		background-image:url(../images/event-end2_No4.png);
	}*/
.event_sec.eventend02:after{
	display: block;
	content: "";
		background-size: cover;
		background-repeat: no-repeat;
		background-position: center;
	position: absolute;
		z-index: 110;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
}


.color_none{
	color: transparent !important;
}
.entry_cond{
	background: #f5f5f5;
	padding: 10px 15px;
	width: 100%;
	box-sizing: border-box;
}
.entry_cond *{
    
}
.entry_cond dl{
	clear: both;
	overflow: hidden;
	border-bottom: 1px solid rgba(255,255,255,0.5);
	padding-bottom: 0.25em;
	margin-bottom: 0.25em;
}
.entry_cond dl:last-child{
	border-bottom: none;
	padding-bottom: 0;
	margin-bottom: 0;
}
.entry_cond dt{
	font-weight: bold;
	float: left;
	width: 30%;
}
.entry_cond dd{
	float: left;
	width: 70%;
}

.koshi{
	overflow: hidden;
	width: 100%;
	padding: 2% 5%;
	background: #044f88;
	box-sizing: border-box;
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 100;
	display: flex;
	align-items: center;
}
.koshi > div{
	width: 100%;
}
.koshi h5{
	color: #fff;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
	margin-bottom: 5px;
	padding: 2px 0;
	text-align: center;
}
.koshi a{
	cursor: pointer;
	transition: 0.2s;
}
.koshi a:hover{
	opacity: 0.7;
}
.koshi-left{
	float: left;
	width: 23%;
}
.koshi-left img{
	width: 100%;
}
.koshi-right{
	float: right;
	width: 71.5%;
}
.koshi-right p{
	color: #fff;
	font-weight: bold;
	font-size: 16px;
}
.koshi-right p span{
	color: #fff;
	line-height: 1em;
	font-size: 13px;
	font-weight: bold;
	display: block;
	line-height: 1.25em;
	margin-bottom: 1em;
}
.koshi-right p:first-child{
	font-weight: normal;
	font-size: 12px;
	opacity: 0.7;
	line-height: 1.25em;
	margin-bottom: 0.25em;
}
.remodal h2{
	text-align: left;
	font-size: 22px;
	font-weight: bold;
	margin-bottom: 10px;
	color: #1f90e7;
}
.remodal h2 span{
	color: #e28123;
	line-height: 1.25em;
}
.remodal-left{
	float: left;
	width: 30%;
}
.remodal-left img{
	width: 100%;
}
.remodal-right{
	float: right;
	width: 67%;
}
.remodal-right *{
	text-align: left;
}
.remodal-right-content{
	margin-bottom: 15px;
	border-bottom: 1px solid #ccc;
	padding-left: 5px;
	padding-right: 5px;
	padding-bottom: 15px;
}
.remodal-right-content h3{
	font-weight: bold;
	font-size: 115%;
	margin-bottom: 10px;
}

/* ==========================================================================
   支援事業とは
========================================================================== */

#concept{
	background: #fff;
	padding: 30px 0 30px 0;
}

#concept h1{
	text-align: center;
    margin-bottom: 0.5em;
}

#event h2 span,#concept h2 span,#news h2 span{
	display: block;
	font-size: 14px;
    font-family: "Lato", sans-serif;
    opacity: 0.5;
}

#concept p,#event p.text {
    text-align: center;
    font-size: 16px;
    line-height: 2em;
}

#event p.text {
    font-weight: bold;
}

#concept .pdf-link{
	width: 360px;
	height: 70px;
	line-height: 70px;
	background: #1f90e7;
	margin: 0 auto;
	text-align: center;
	border-bottom: 5px solid #0579d2;
	margin-top: 50px;
	position: relative;
	box-sizing: border-box;
}
#concept .pdf-link a:before{
	content: "";
	border: 2px dashed #fff;
	box-sizing: border-box;
	opacity: 0.7;
	width: 95%;
	height: 75%;
	display: block;
	position: absolute;
	left: 2.5%;
	top: 12.5%;
	transition: 0.2s;
}
#concept .pdf-link a{
	display: block;
	color: #fff;
	font-weight: bold;
	font-size: 18px;
}
#concept .pdf-link a:after{
	content: ">";
	display: block;
	position: absolute;
	right: 20px;
	top: 0;
}
#concept .pdf-link a:hover:before{
	border: 2px solid #0579d2;
	width: 108%;
	height: 145%;
	top: -20%;
	left: -4%;
	background: rgba(255,255,255,0.4);
}

#concept h2{
    font-weight: 500;
	text-align: center;
	font-size: 24px;
	margin-bottom: 30px;
	background-image: url(../images/sec_back4.png);
	background-repeat: no-repeat;
	background-position: center top;
    line-height: 1.5em;
}
/* ==========================================================================
   お知らせ
========================================================================== */


#news{
	padding: 60px 0 70px 0;
}

#news_in{
/*	max-height: 400px;*/
	overflow: auto;
}

#news h1{
	text-align: center;
    margin-bottom: 0.5em;
}

#news h2{
	text-align: center;
	font-size: 24px;
    margin-bottom: 50px;
	background-image: url(../images/sec_back3.png);
	background-repeat: no-repeat;
	background-position: center 5px;
}

#news h2 span{
	display: block;
	font-size: 14px;
}

#news .news {
    border-bottom: 1px solid #efefef;
    border-top: 1px solid #efefef;
    padding: 5px 0;
}

#news .news h3{
	font-size: 20px;
	font-weight: bold;
	color: #1f90e7;
	margin-bottom: 10px;
}

#news .news p{
    line-height: 1.8em;
}

#news .news_date{
	opacity: 0.5;
}


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

footer{
	background: #eaeaea;
	padding: 50px 0;
	overflow: hidden;
}

footer *{
	font-size: 15px;
}

footer #go_top{
	background: #fff;
	overflow: hidden;
}

footer #go_top p{
	text-align: center;
	cursor: pointer;
}
#go_top {
    text-align: center;
    margin-bottom: 1em;
}
footer #go_top{
	margin-bottom: 20px;
}

footer #copyright{
	text-align: center;
	color: #79bcf1;
	clear: both;
	padding-top: 20px;
	font-size: 12px;
}

footer .footer_left{
	float: left;
}

footer h1{
	font-size: 11px;
}
footer h1.foot_logo{
	display: flex;
		justify-content: flex-start;
		align-items: flex-end;
}
footer h1.foot_logo .f-logo_txt{
	margin-right: 10px;
}
footer h1.foot_logo .f-logo_txt span{
	font-size: 14px;
		letter-spacing: 0.1em;
		margin-bottom: 0.5em;
		display: block;
}
footer h1.foot_logo .f-logo_txt img{
	width: 200px;
}
footer .footer_left .f-company{
	font-size: 18px;
    font-weight: bold;
}

footer .footer_right{
	float: right;
	margin-top: 30px;
}
footer .footer_right .footer_right_p2,
footer .footer_right .footer_right_p2 a,
footer .footer_right .footer_right_p4 a{
	font-size: 26px;
		font-weight: bold;
}
footer .footer_right .footer_right_p2{
    font-family: "Lato", sans-serif;
	display: flex;
    justify-content: flex-start;
    align-items: center;
    margin-bottom: 0.5em;
}

	footer .footer_right .footer_right_p2 a,
	footer .footer_right .footer_right_p4 a{
        font-family: "Lato", sans-serif;
		padding-left: 1.4em;
		position: relative;
	}
	footer .footer_right .footer_right_p2 a::before{
		background-image: url(../images/icon_tel-w.png);
	}
	footer .footer_right .footer_right_p4 a::before{
		background-image: url(../images/icon_mail-w.png);
	}
	footer .footer_right .footer_right_p2 a::before,
	footer .footer_right .footer_right_p4 a::before{
		width: 0.9em;
		height: 100%;
		background-size: contain;
			background-repeat: no-repeat;
			background-position: center;
		position: absolute;
			left: 0;
			top: 0;
		display: block;
		content: "";
	}
	footer .footer_right .footer_right_p4 a::before{
			left: 0;
			top: 3px;
	}
/*---電話リンクスマホのみ---*/
@media (min-width: 641px) {
	a[href*="tel:"] {
	pointer-events: none;
	cursor: default;
	text-decoration: none;
	}
}


@media screen and (min-width: 641px) {

	.koshi{
		height: 160px;
	}

}



/*スマホ用レイアウト*/
@media screen and (max-width: 640px) {
	
	*{
		font-size: 3.8vw;
	}
	.sp{
		display: block;	
	}
	.pc{
		display: none;
	}
	
	body{
		width: 100%;
		min-width: 100%;		
	}
	
	.base1000{
		width: 100%;	
	}

	.bx-wrapper a{
		width: 100% !important;
	}

	/* ==========================================================================
	   出会いイベントとは
	========================================================================== */

	#event{
		padding: 6vw 2vw 10vw 2vw; 
		box-sizing: border-box;
	}


	#event h1 img,
	#event_end h1 img{
		width: 15vw;
	}

	#event h2,
	#event_end h2{
		font-size: 5vw;
		margin-bottom: 3vw;

	}

	#event h2 span,
	#event_end h2 span{
		font-size: 3.2vw;
	}
	.event_sec__block{
		flex-direction: column;
		align-items: center;
		gap: 4vw;
	}
#event .event_sec,
#event_end .event_sec{
	width: 88%;
	min-height: 110vw;
}
.event_sec_in{
	overflow: hidden;
}
.event_img{
	position: relative;
	height: 70vw;
	overflow: hidden;
}
.event_img img{
	position: absolute;
	width: 100%;
	overflow: hidden;
}
.event_img .event_No {
    font-size: 4vw;
}
.event_img .reception{
	font-size: 3vw;
		right: 2vw;
		top: 50%;
			transform: translateY(-50%);
			-webkit-transform: translateY(-50%);
}
.event_img p {
    padding: 2vw 2vw 2vw 4em;
    font-size: 5vw;
    box-sizing: border-box;
}
.event_title{
	background: #fff;
	padding: 4vw;
	height:auto;
}
.event_title h3{
	font-size: 4.2vw;
}
.event_title h4,
.event_title p{
	font-size: 3.8vw;
    margin-bottom: 0.3em;
}
.event_title h4.mini{
	font-size: 2vw;
}
.event_message{
	padding: 2vw;
	height: auto;
}
.event_message p{
}

.entry_cond dd,
.entry_cond dt{
}
/*カミングスーン*/

/*イベントエンド*/

.entry_cond{
	padding: 2vw;
	height: auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.entry_cond *{
}
.koshi{
	height: 27vw; 
}
.koshi-right p{
	font-size: 2.75vw;
}
.koshi-right p span{
	font-size: 1.8vw;
}
.koshi-right p:first-child{
	font-size: 1.8vw;
	margin-bottom: 1.8vw;
}

	/* ==========================================================================
	   支援事業とは
	========================================================================== */

	#concept{
		padding: 6vw 2vw 10vw 2vw;
	}

	#concept h1 img{
		width: 15vw;
	}

	#concept h2{
		font-size: 5vw;
		margin-bottom: 3vw;

	}

	#concept h2 span{
		font-size: 3.2vw;
	}

    #concept p {
        text-align: left;
        font-size: 3.8vw;
    }



	/* ==========================================================================
	   お知らせ
	========================================================================== */


	#news{
		padding: 6vw 2vw 10vw 2vw;
	}

	#news h1 img{
		width: 15vw;
	}

	#news h2{
		font-size: 5vw;
		margin-bottom: 8vw;
	}

#news h2 span {
    font-size: 3.2vw;
    line-height: 1.8em;
}

	#news .news{
		padding: 4vw 0;
	}

    #news .news h3 {
        font-size: 3.8vw;
        margin-bottom: 2vw;
        line-height: 1.8em;
    }


	/* ==========================================================================
	   header
	========================================================================== */
	body{
		padding-top: 24vw;
	}
	header{
		box-sizing: border-box;
	}
	header .header_inner{
		height: 24vw;
		padding: 0 1.5vw;
		box-sizing: border-box;
	}
	header .header_left{		
		margin-top: 0;
	}
	header .header_left .h-ichimin{
		width: 14vw;
		margin-right: 1vw;
	}
	header .header_left h1{
		flex-direction: column;
		align-items: flex-start;
	}
	header .header_left h1 .h-logo_box{
		margin-right: 1.5vw;
	}
	header .header_left h1 .logo_txt{
		font-size: 2.75vw;
	}
	header .header_left h1 .potal{
		font-size: 3.1vw;
		display: block;
	}
	header .header_left h1 img{	
		width: 27.5vw;	
	}

	header .header_right p.header_right_p1{
		font-size: 3vw;
	}
	header .header_right .header_right_p2,
	header .header_right .header_right_p2.p2_mail{
		padding-left: 4.5vw;
        margin-bottom: 0.5vw;
		font-size: 4vw;
	}
		header .header_right .header_right_p2::before{
        width: 4vw;
        height: 4vw;
        top: 0.65em;
			}
	header .header_right .header_right_p2 .tel_txt{		
		font-size: 2.5vw;
		display: block;
	}

	header .header_right span.header_right_p3_span1{
		width: 10vw;
		font-size: 1.8vw;
		padding: 0.5vw 0;
		margin-right: 1vw;
	}
	header .header_right .header_right_p2.p2_mail{
		font-size: 4.2vw;
		margin-bottom: 0;
	}
    
    /* ==========================================================================
       結婚相談
    ========================================================================== */

    #soudan{
    }

    #soudan.contents {
        border:solid 2vw rgba(90,191,190,0.3);
        width:90vw;
        margin:0 auto;
        box-sizing: border-box;
        padding:7vw 5vw;

    }
.soudan-cotents {
    display: block;
}

    #soudan h2{
        font-size: 5vw;
        margin-bottom: 1em;

    }

    .soudan-img img {
        width:70vw;
    }
    .soudan-click {
        margin-bottom: 1em;
    }
    .soudan-img {
        margin-right: 0;
        text-align: center;
    }
    .soudan-text {
        margin-bottom: 2em;
    }
    .soudan-btn a:hover {
        opacity: 1;
    }



	/* ==========================================================================
	   footer
	========================================================================== */

	footer *{
        text-align: center;
	}
footer{
	padding: 10vw 0;
}
	footer .footer_left{
		float: none;
		padding: 0 3.5vw;
	}
	footer h1.foot_logo .f-logo_txt span{
		font-size: 3.4vw;
	}
	footer h1.foot_logo .f-logo_txt img{
		width: 40vw;
	}
	footer .footer_left h1{
		text-align: center;
		font-size: 2.3vw;
		margin-bottom: 5vw;
	}
	footer .footer_left .f-company{
		font-size: 4vw;
	}
	footer .footer_left .footer_left_p2{
		font-size: 4vw;
		margin-bottom: 2vw;
	}

	footer .footer_left_p4 span{
		display: block;
	}
    
    footer h1.foot_logo .f-logo_txt {
    margin-right: 0;
    }
    footer h1.foot_logo {
        justify-content: center;
    }
    footer h1.foot_logo .f-logo_txt span {
        margin-bottom: 1em;
    }
    
}

/* ==========================================================================
   年末年始
========================================================================== */
.orange-2 {
    color:#d9661d;
}
.nenmatsu-title {
    text-align: center;
}
.nenmatsu-title span {
    font-weight: bold;
    font-size: 1.2rem;
}
#event.nenmatsu {
    padding: 2em 4em;
    border: solid 1px #e75b02;
    margin-top: 5em;
}
.kikan {
    font-weight: bold;
}

@media screen and (max-width: 640px) {
 #event.nenmatsu {
     padding: 1em;
     margin-top: 2em;
     width:94vw;
    }
}