@charset "UTF-8";

/*
--------------------------------------------------
SITEMAP style
author: HPG ogiwara
version: april 2020
--------------------------------------------------*/


h3 {
	font-size: 180%;
}
@media (max-width: 768px) {
	h3 {
		font-size: 140%;
	}
}
dt.maru1 {
	text-indent: -1.4em;
	margin-left: 1.4em;
}
dt.maru1:before {
	font-family: 'Font Awesome 5 Free';
	font-weight: 400;
	content: "\f111\2004";
}
span.rev_ind {
	display: block;
	padding: 0 0 0 0.5em;
	text-indent: -0.5em;
}
@media (min-width: 769px) {
.content_inner {
	margin: 0 50px;
}
}

/** 00. 囲み文字の基本形
 **************************************************************** **/
.maru {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	border-radius: 50%;
	flex-flow: column; 
	margin-right: 0.2em;
}
/* 円の大きさ */
.size_normal{
	width: 17px;
	height: 17px;
	text-indent: 0;
}
.size_lg {
	width: 30px;
	height: 30px;
	text-indent: 0;
}
/* 文字の大きさ */
.letter3 {
	font-size: 1em;
	line-height: 1.75;
}
.letter4 {
	font-size: 1.5em;
	line-height: 1.75;
}
/* 囲みと文字の色 */
.gray1 {
	color: #5F5F5F;
	border: 1px solid #5F5F5F;
	background: #fff;
}
.blue1 {
	color: #fff;
	border: 1px solid #3496CB;
	background: #3496CB;
}


/** 00. module 追加
 **************************************************************** **/
.module {
	margin-bottom: 10px;
}
.module_inner {
	padding: 20px 20px;
}
@media screen and (max-width: 767px){
	.module_inner {
		padding: 10px 20px;
	}
}
/* 枠のradius指定 */
.module.r5 {
	border-radius: 5px;
}
.module.r6 {
	border-radius: 6px;
}
.module.r7 {
	border-radius: 7px;
}
.module.r8 {
	border-radius: 8px;
}
.module.r9 {
	border-radius: 9px;
}
.module.r10 {
	border-radius: 10px;
}


/*===== TOP 緊急連絡ボタン =====*/
.topmenu {
	padding: 0;
	margin: 12px 0 ;
}
.topmenu .btn {
	position: relative;
	font-size: 1.2em;
	box-shadow: none;
	line-height: 1.3;
	display: flex;
	-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
	align-items: center;
	-webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
	justify-content: center; /* 横方向中央揃え */
}
.topmenu .btn.ex {
	padding: 0.5em 1.5em 0.5em 0.5em;
}
.topmenu .btn:after {
	position: absolute;
	font-family: linea-arrows-10!important;
	content: "\e04b";
	color: #fff;
	font-weight: 600;
	font-size: 2em;
	top: 50%;
	right: 2px;
	margin-top: -0.6em;
}
.topmenu .label {
	padding: 0.05em 0.5em;
	line-height: 1.5;
	margin-left: 0px;
	margin-right: 5px;
	vertical-align: middle;
}
p.topmenu span.label.label-outline {
	line-height: 1.5;
}
@media (max-width: 991px) {
.topmenu .btn {
	font-size: 0.9em;
	padding: 0.5em 0;
	box-shadow: none;
}
}
@media (max-width: 768px) {
.topmenu .btn {
	font-size: 0.9em;
	padding: 0.5em 0;
	box-shadow: none;
}
}

/******************ボーダーボタン pink*******************/
.topmenu .btn.btn-pink.btn-square {
	background: repeating-linear-gradient(to top, #f95c5f, #f96366, #f9777a 4px, #f95c5f 3px);
	color: #FFF;
	border: solid 1px #fff;
	outline: solid 3px #f97a7c;
}
.topmenu .btn.btn-pink.btn-square:hover,.topmenu .btn.btn-pink.btn-square:active,.topmenu .btn.btn-pink.btn-square:active:focus {
	background: repeating-linear-gradient(to top, #f94d50, #f94d50, #FA676B 4px, #f94d50 3px);
	color:#FFF;
	border: solid 1px #fff;
	outline: solid 3px #f94d50;
	outline-offset: 0px;
}
/******************ボーダーボタン内のラベル*******************/
.topmenu .label-default.label-outline {
	background-color:#fff;
	border: solid 0px #666666;
}
/* apua */
.topmenu .btn-blue .label-default.label-outline {
	color: #2D92D7;
}
/* pink */
.topmenu .btn-pink .label-default.label-outline {
	color: #f94d50;
}
/*===== // TOP 緊急連絡ボタン =====*/


/* ----------------------------------------
 * YouTube画像に再生ボタン配置
 * --------------------------------------- */
.videoBox {
	position: relative;
}
.play {
	width: 50px;
	height: 50px;
	position: absolute;
	top: 50%;
	left: 50%;
	-ms-transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	margin:0;
	padding:0;
	opacity: 0.9;
}

/** 00. サムネイル
 **************************************************************** **/
.bg-dark {
	color: #fff;
}
.bg-dark-30:before,.bg-dark-60:before,.bg-dark-90:before
 {
	content:" ";left:0
}
.bg-dark-30:before,.bg-dark-60:before,.bg-dark-90:before {
	position:absolute;height:100%;width:100%;z-index:0;
}
.bg-dark-30:before {
	background-color:rgba(34,34,34,.3);top:0
}

/** 00. thumbnail
 **************************************************************** **/
.topthum-wrap{
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	margin-bottom: 10px;
	position: relative;
	overflow: hidden;
	-webkit-border-radius: 5px;
	border-radius: 5px;
}
.topthum-wrap.end{
	margin-bottom: 0px;
}
.topthum-wrap h4{
	font-size: 15px;
}
.topthum-wrap h4:hover{
	font-size: 15px;
	text-transform: uppercase;
	text-decoration: none;
}
.topthum-wrap:hover .topthum-hover{
	opacity: 1;
	text-decoration: none;
}
.topthum-label{
	position: absolute;
	top:0;
	left: 0;
	padding: 4px 10px;
	font-size: 13px;
	color:#fff;
	background: #333;
}
.topthum-title {
	position: absolute;
	display: table;
	width:100%;
	height: 100%;
	margin: 0 auto;
}
#content .topthum-title p{
	display: table-cell;
	vertical-align:middle;
	font-weight: 600;
	width:100%;
	text-align: center;
	font-size: 1.7em;
	color:#FFFFFF;
	padding: 0 3px;
	text-shadow: 0px 0px 8px rgba(0,0,0,0.8);
	line-height: 1.3;
}
#content .topthum-title p.sm{
	display: table-cell;
	vertical-align:middle;
	font-weight: 600;
	width:100%;
	text-align: center;
	font-size: 1.4em;
	color:#FFFFFF;
	padding: 0 3px;
	text-shadow: 0px 0px 8px rgba(0,0,0,0.8);
	line-height: 1.3;
}
#content .topthum-title p span.topthum-subtitle{
	display: block;
	padding-top: 3px;
	font-size: 0.6em;
	line-height: 1.3;
}
.topthum-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.80);
	text-align: center;
	opacity: 0;
	-webkit-border-radius: 5px;
	border-radius: 5px;
}
#content .topthum-hover p{
	position: absolute;
	width:100%;
	top:50%;
	margin-top: -10px;
	text-align: center;
	font-size: 18px;
	color:#fff;
	text-transform: uppercase;
}
@media (max-width: 991px) {
		#content .topthum-title p{
			font-size: 1.4em;
		}
		#content .topthum-title p.sm{
		font-size: 1.0em;
		}
		#content .topthum-title p span.topthum-subtitle{
		display: block;
		padding-top: 3px;
		font-size: 0.7em;
		line-height: 1.3;
	}
}
@media (max-width: 768px) {
	#content .topthum-title p{
		font-size: 1.3em;
	}
	#content .topthum-title p span.topthum-subtitle{
	font-size: 0.7em;
	}
}
@media (max-width: 480px) {
	#content .topthum-title p{
		font-size: 1.1em;
	}
	#content .topthum-title p.sm{
		font-size: 0.8em;
		}
	#content .topthum-title p span.topthum-subtitle{
	font-size: 0.6em;
	}
}
@media (max-width: 320px){
	#content .topthum-title p{
		font-size: 0.9em;
	}
	#content .topthum-title p.sm{
		font-size: 0.6em;
		}
	#content .topthum-title p span.topthum-subtitle{
	font-size: 0.6em;
	}
}


/**  Fukidashi
 **************************************************************** **/
.fukidashi_bottom {
	position: relative;
	background: #fff;
	border-radius: 15px;
	color: #393939;
	display: inline-block;
	font-size: 14px;
	margin: 1.5em 0;
	min-width: 120px;
	max-width: 100%;
	padding: 15px 13px;
	border: solid 1.5px #333;
}

.fukidashi_bottom::before {
	position: absolute;

	left: 50%;
	border: 15px solid transparent;
	border-top: 15px solid #fff;
	content: "";
	margin-left: -15px;
	z-index:2;
	bottom: -29px;
}
.fukidashi_bottom::after {
	position: absolute;
	top: 100%;
	left: 50%;
	border: 17px solid transparent;
	border-top: 17px solid #333;
	content: "";
	margin-left: -17px;
}

.fukidashi_right {
	position: relative;
	background: #fff;
	border-radius: 15px;
	color: #393939;
	display: inline-block;
	font-size: 14px;
	margin: 0 15px 0 0;
	min-width: 120px;
	max-width: 100%;
	padding: 7px 10px;
	border: solid 1.5px #333;
}

.fukidashi_right::before {
	position: absolute;
	top: 50%;
	left: 100%;
	border: 15px solid transparent;
	border-left: 15px solid #fff;
	content: "";
	margin-top: -15px;
	z-index:2
}
.fukidashi_right::after {
	position: absolute;
	top: 50%;
	left: 100%;
	border: 17px solid transparent;
	border-left: 17px solid #333;
	content: "";
	margin-top: -17px;
}



.fukidashi_left {
	position: relative;
	background: #ffffff;
	border-radius: 15px;
	color: #393939;
	display: inline-block;
	font-size: 14px;
	margin: 15px;
	padding: 15px;
	min-width: 120px;
	max-width: 100%;
	border: solid 1.5px #333333;
}

.fukidashi_left::before {
	position: absolute;
	top: 50%;
	right: 100%;
	border: 15px solid transparent;
	border-right: 15px solid #ffff;
	content: "";
	margin-top: -15px;
	z-index:2
}

.fukidashi_left::after {
	position: absolute;
	top: 50%;
	right: 100%;
	border: 17px solid transparent;
	border-right: 17px solid #333333;
	content: "";
	margin-top: -17px;
}

