@charset "utf-8";

.contact2 .ttlStyle02 .bg {
    background: #5E7F8E;
}

.contact2 .ttlStyle02 .ttlStyle01 {
    background: #5E7F8E;
	line-height: 1.3;
}

.contact2 .ttlStyle02 .ttlStyle01::after {
    background: #5E7F8E;
	border-top-color: #5E7F8E;
    border-left-color: #5E7F8E;
}

.ttlStyle01 small{
    font-size: 68%;
}

b {
	font-weight: 700!important;
}

a.cafe {
	background: #EF719D;
	color: #FFF;
	line-height: 1;
	display: block;
	position: relative;
	padding: 0.5em 1em;
	margin-top: 0.5em;
}


@media screen and (min-width:641px) {
	
	.contact2 .ttlStyle02 .ttlStyle01 {
        padding-top: 18px;
		padding-right: 70px;
    }
	
	.contact2.kigyo .ttlStyle02 .ttlStyle01 {
		padding-right: 322px;
    }
	
	h2.page-header--jp{
        display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: center;
    }
	
	h2.page-header--jp small{
        font-size: 22px;
		display: inline-block;
		padding-right: 1em;
    }
	
	div.contact-container2 {
		width: 880px;
		margin: 0 auto;
		padding: 0 0;
	}
	
	div.contact-container2 div.contact-text h3{
		font-size: 40px;
		font-weight: 400;
		line-height: 1;
		margin-bottom: 1em;
	}
	
	div.contact-container2 div.contact-text h3 + p{
		font-size: 18px;
		line-height: 1.5;
	}
	
	div.contact-container2 div.contact-text dl{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin-top: 70px;
	}
	
	div.contact-container2 div.contact-text dl dt{
		width: 23%;
		margin-top: 50px;
	}
	
	div.contact-container2 div.contact-text dl dt span{
		display: inline-block;
		padding: 11px 0 12px 1em;
		font-size: 26px;
		font-weight: 400;
		line-height: 1;
		letter-spacing: 0.05em;
		border-left: 3px solid #5E7F8E;
	}
	
	div.contact-container2 div.contact-text dl dd{
		width: 77%;
		padding-top: 12px;
		letter-spacing: 0.04em;
		margin-top: 50px;
	}
	
	div.contact-container2 div.contact-text dl dd div.block + div.block{
		margin-top: 32px;
	}
	
	div.contact-container2 div.contact-text dl dd div.block h6{
		font-size: 18px;
		font-weight: 700;
		line-height: 1.8;
	}
	
	div.contact-container2 div.contact-text dl dd div.block p{
		font-size: 18px;
		line-height: 1.8;
	}
	
	div.contact-container2 div.contact-text dl dd h4{
		font-size: 18px;
		font-weight: 700;
		line-height: 1.5;
	}
	
	div.contact-container2 div.contact-text dl dd h4:nth-child(n + 2){
		margin-top: 28px;
	}
	
	div.contact-container2 div.contact-text dl dd ul{
		font-size: 18px;
		line-height: 1.5;
	}
	
	div.contact-container2 div.contact-text dl dd ul li{
		text-indent: -1em;
		padding-left: 1em;
	}
	
	div.contact-container2 div.contact-text dl dt.first,
	div.contact-container2 div.contact-text dl dd.first{
		margin-top: 0;
	}
	
	div.contact-container2 div.contact-text dl dd ul + p{
		font-size: 18px;
		line-height: 1.5;
		margin-top: 25px;
	}
	
	div.contact-container2 div.contact-text div.box{
		margin-top: 60px;
	}
	
	div.contact-container2 div.contact-text div.box p{
		font-size: 18px;
		line-height: 1.5;
		text-align: center;
	}
	
	div.contact-container2 div.contact-text div.box a{
		width: 328px;
		height: 58px;
		background: #8E5E85;
		font-size: 17px;
		font-weight: 400;
		line-height: 1;
		color: #FFF;
		margin: 30px auto 0;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
	}
	
	div.contact-container2 div.contact-text div.box a span{
		display: inline-block;
		position: relative;
		padding-right: 2em;
	}
	
	div.contact-container2 div.contact-text div.box a span img{
		width: 14px;
		height: 14px;
		position: absolute;
		top: calc(50% - 7px);
		right: 0;
	}
	
	a.cafe {
		width: 240px;
		font-size: 17px;
		margin-left: 1em;
	}
	
	a.cafe::after {
		content: "";
		width: 14px;
		height: 14px;
		display: block;
		position: absolute;
		right: 10px;
		top: calc(50% - 7px);
		background: url(../img/common/ico_cmn_arr_02.png) no-repeat;
		background-size: contain;
	}
}


@media screen and (max-width:640px) {
	
	div.contact-container2 {
		width: 100%;
	}
	
	.ttlStyle02 .ttlStyle01 {
        display: inline-block;
        font-size: 18px;
        text-align: left;
        padding: 12px 40px 15px 4.5%;
    }
	
	h2.page-header--jp{
        display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: center;
    }
	
	h2.page-header--jp small{
        font-size: 14px;
		display: inline-block;
		padding-right: 1em;
    }
	
	div.contact-container2 {
		width:100%;
		margin: 0 auto;
		padding: 0 0 50px;
	}
	
	div.contact-container2 div.contact-text h3{
		font-size: 20px;
		font-weight: 400;
		line-height: 1;
		margin-bottom: 1em;
	}
	
	div.contact-container2 div.contact-text h3 + p{
		font-size: 14px;
		line-height: 1.5;
	}
	
	div.contact-container2 div.contact-text dl{
		margin-top: 40px;
	}
	
	div.contact-container2 div.contact-text dl dt{
		width: 100%;
		margin-top: 30px;
	}
	
	div.contact-container2 div.contact-text dl dt span{
		display: inline-block;
		padding: 11px 0 12px 1em;
		font-size: 22px;
		font-weight: 400;
		line-height: 1;
		letter-spacing: 0.05em;
		border-left: 3px solid #5E7F8E;
	}
	
	div.contact-container2 div.contact-text dl dd{
		width: 100%;
		padding-top: 12px;
		letter-spacing: 0.04em;
		margin-top: 50px;
	}
	
	div.contact-container2 div.contact-text dl dd div.block + div.block{
		margin-top: 28px;
	}
	
	div.contact-container2 div.contact-text dl dd div.block h6{
		font-size: 16px;
		font-weight: 700;
		line-height: 1.8;
	}
	
	div.contact-container2 div.contact-text dl dd div.block p{
		font-size: 14px;
		line-height: 1.5;
	}
	
	div.contact-container2 div.contact-text dl dd div.block p + p{
		margin-top: 5px;
	}
	
	div.contact-container2 div.contact-text dl dd h4{
		font-size: 16px;
		font-weight: 700;
		line-height: 1.5;
	}
	
	div.contact-container2 div.contact-text dl dd h4:nth-child(n + 2){
		margin-top: 28px;
	}
	
	div.contact-container2 div.contact-text dl dd ul{
		font-size: 14px;
		line-height: 1.5;
	}
	
	div.contact-container2 div.contact-text dl dd ul li{
		text-indent: -1em;
		padding-left: 1em;
	}
	
	div.contact-container2 div.contact-text dl dt.first,
	div.contact-container2 div.contact-text dl dd.first{
		margin-top: 0;
	}
	
	div.contact-container2 div.contact-text dl dd ul + p{
		font-size: 14px;
		line-height: 1.5;
		margin-top: 25px;
	}
	
	div.contact-container2 div.contact-text div.box{
		margin-top: 60px;
	}
	
	div.contact-container2 div.contact-text div.box p{
		font-size: 14px;
		line-height: 1.5;
		text-align: center;
	}
	
	div.contact-container2 div.contact-text div.box a{
		width: 100%;
		max-width: 328px;
		height: 58px;
		background: #8E5E85;
		font-size: 16px;
		font-weight: 400;
		line-height: 1;
		color: #FFF;
		margin: 30px auto 0;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
	}
	
	div.contact-container2 div.contact-text div.box a span{
		display: inline-block;
		position: relative;
		padding-right: 2em;
	}
	
	div.contact-container2 div.contact-text div.box a span img{
		width: 14px;
		height: 14px;
		position: absolute;
		top: calc(50% - 7px);
		right: 0;
	}
	
	a.cafe {
		width: 210px;
		font-size: 14px;
		margin-left: 1em;
	}
	
	a.cafe::after {
		content: "";
		width: 14px;
		height: 14px;
		display: block;
		position: absolute;
		right: 10px;
		top: calc(50% - 7px);
		background: url(../img/common/ico_cmn_arr_02.png) no-repeat;
		background-size: contain;
	}
}