@charset "UTF-8";



/** ************************************* **

	TABLE CONTENTS
	---------------------------
		01. Globals
		02. line
		03. 文字列にスラッシュ追加
	---------------------------

 ** ************************************* **/


@import url('https://fonts.googleapis.com/css?family=M+PLUS+1p&display=swap');

/** 01. Globals
**************************************************************** **/
.section-title {
	margin: 3em 0;
	font-size: 200%;
	line-height: 1.6;
	text-align: center;
}

@media (max-width: 768px) {
.section-title {
	font-size: 150%;
}
}

.mplus1p {
	font-family: 'YakuHanJP' ,'M PLUS 1p', "Open Sans", "Helvetica Neue", Helvetica, "Arial","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "游ゴシック", YuGothic, sans-serif;
}



.border_bottom_dot.pink_line {
	border-bottom: 2px dotted #F879D7;
	margin: 0;
}


.SideBySide p {
	display:inline-block;
	vertical-align: middle; /*縦方向の揃え位置を指定*/
	margin-bottom: 0;
}

.SideBySide p img{
	height: 40px;
}

.contact.orange {
	border:solid #E67E22 2px;
}

.contact.green {
	border:solid #27AE60 2px;
}

.contact.r10 {
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
}


/** 02. line
**************************************************************** **/
.center-line {
    width: 30%;
    height: 5px;
    display: block;
    margin: 10px auto 30px auto;
    border-bottom: 1px solid #F879D7;
    border-top: 1px solid #F879D7;
}
@media (max-width: 768px) {
	.center-line {
		width: 85%;
		height: 5px;
		display: block;
		margin: 5px auto 20px auto;
		border-bottom: 1px solid #F879D7;
		border-top: 1px solid #F879D7;
	}
}
.text-line {
    height: 24px;
    margin: 0px auto 3px auto;
    border-bottom: 2px solid #F879D7;
}



/* 画像コンテンツ
---------------------------------------------------- */
/* スペース有りタイプ */
.content-wrap{
	text-align: center;
	margin-bottom: 30px;
	padding: 0px;
	position: relative;
	overflow: hidden;
	-webkit-border-radius: 5px;
	border-radius: 5px;
}
.content-wrap h4{
	font-size: 15px;
	text-transform: uppercase;
}
.content-wrap h4:hover{
	font-size: 15px;
	text-transform: uppercase;
	text-decoration: none;
}
.content-wrap:hover .content-hover{
	opacity: 1;
	text-decoration: none;
}

/* スペースなしタイプ */
.content-wrap2{
	text-align: center;
	margin-bottom: 0px;
	padding: 0px;
	position: relative;
	overflow: hidden;
	background: #fff;
}
.content-wrap2 h4{
	font-size: 15px;
	text-transform: uppercase;
}
.content-wrap2 h4:hover{
	font-size: 15px;
	text-transform: uppercase;
	text-decoration: none;
}
.content-wrap2:hover .content-hover{
	opacity: 1;
	text-decoration: none;
}
.content-label{
	position: absolute;
	top:0;
	left: 0;
	padding: 4px 10px;
	text-transform: uppercase;
	font-size: 13px;
	color:#fff;
	background: #333;
}
.content-hover{
	position: absolute;
	top: 0;
	left: 0;
	width:100%;
	height: 100%;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-o-transition: all 0.3s;
	background-color:rgba(66,172,194,0.90);
	text-align: center;
	opacity: 0;
	-webkit-border-radius: 5px;
	border-radius: 5px;
}
.content-hover p{
	position: absolute;
	width:100%;
	top:50%;
	margin-top: -10px;
	text-align: center;
	font-size: 20px;
	color:#fff;
	text-transform: uppercase;
}


.triangle {
	position: relative;
	padding-right: 25px;
	padding-left: 10px;
}


.triangle::before {
	content: '';
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 5px;
	width: 0;
	height: 0;
	margin-top: -8px;
	border-top: 8px solid transparent;
	border-right: 0px solid transparent;
	border-bottom: 8px solid transparent;
	border-left: 11px solid ;
}


.kan412 {
	font-family: kan412typos-std, sans-serif;
}


/** 03. 文字列にスラッシュ追加 　例) ＼ ○○○○! ／
 **************************************************************** **/
.slash {
	position: relative;
	display: inline-block;
	padding: 0px 30px;
	font-size: 1em;
	color: #3498db;
	margin: 5px 0;
}
@media (max-width: 991px) {
	.slash {
		font-size: 2vw;
	}
}
@media (max-width: 768px) {
	.slash {
		font-size: 2.5vw;
	}
}
@media (max-width: 575px) {
	.slash {
		font-size: 2.3vw;
	}
}
@media (max-width: 480px) {
	.slash {
		font-size: 4.3vw;
		padding: 0px 28px;
	}
}
.slash::before {
	content: '';
	position: absolute;
	bottom: 13px;
	display: inline-block;
	width: 32px;
	height: 2px;
	background-color: #3498db;
	-webkit-transform: rotate(60deg);
	transform: rotate(60deg);
}
.slash::after {
	content: '';
	position: absolute;
	bottom: 13px;
	display: inline-block;
	width: 32px;
	height: 2px;
	background-color: #3498db;
	-webkit-transform: rotate(-60deg);
	transform: rotate(-60deg);
}
.slash::before {
	left: 0;
}
.slash::after {
	right: 0;
}





