﻿@charset "UTF-8";
/* --------------------------------------------------
    COMMON
-------------------------------------------------- */
html{
	overflow-x: hidden;
}
body, p{
	line-height: 1.8rem !important;
}
.border{
	border-width: 2px !important;
}
.bg-lightblue{
	background: #EAF2F4;
}

/* 半円背景各種
-------------------------------------------------- */
/* 半月（背景白） */
.half-white::after{
	background-color: #fff;
}
/* 半月（背景薄青） */
.half-lightblue::after{
	background: #EAF2F4;
}
/* 半月（背景緑） */
.half-info::after{
	background: #17a2b8;
}
/* 共通 */
.half{
    width: 120%;
    height: 150px;
    border-top-left-radius: 50% 120px;
    border-top-right-radius: 50% 120px;
    position: absolute;
    top: 0;
    left: -10%;   
}
.half::after{
	content: ' ';
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: -1;    
}

/* 見出し青丸
-------------------------------------------------- */
.dot{
	padding-left: 1.5rem !important;
	padding-right: 1.5rem !important;
}
.dot::before, .dot::after{
	font-family: "Font Awesome 5 Free";/*忘れずに*/
	content: "\f111";/*アイコンのユニコード*/
	font-size: 1.2rem;/*サイズ*/
	color: #a1ceff;
	padding: 0 10px;
	vertical-align: middle;
}
/* --------------------------------------------------
    header
-------------------------------------------------- */
header .container-fluid{
	height: 100vh;
	width: 100%;
	background : url(top-img.jpg) 0% 0% / auto auto repeat scroll padding-box border-box transparent;
	background-size: cover;
	background-position: 50% 100%;
}
/*    グローバルナビ
-------------------------------------------------- */
.breadcrumb{
	background: transparent;
}
.breadcrumb-item + .breadcrumb-item::before{
	content: '>';
	color: #fff;
}
/* --------------------------------------------------
    トップページ
-------------------------------------------------- */
.balloon{
	width: 130px;
	height: 130px;
	top: -50px;
	z-index: 10;
	left: -20px;
	font-size: 15px;
}
.balloon-s{
	width: 110px;
	height: 110px;
	top: -20px;
	z-index: 10;
	left: -20px;
	font-size: 14px;
}
.balloon::before, .balloon-s::before{
	content: "";
	position: absolute;
	bottom: -5px;
	right: -5px;
	margin-top: -15px;
	border: 10px solid transparent;
	border-left: 30px solid #17a2b8;
	z-index: 0;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

table tr:last-child{
	border-bottom: 1px solid #dee2e6;
}
table tr:nth-child(even){
	background-color: #F9F9F9;
}
table tr:nth-child(odd){
	background-color: #E4E9EF;
}

fieldset{padding:20 20 20 20;border:2px solid #ebebeb;border-radius:5px 5px 5px 5px;}

/* --------------------------------------------------
    サンプルページ
-------------------------------------------------- */
.season{
	width: 70px;
	height: 70px;
	left: 10px;
	padding: 0.34em;
}
.season div{
	display: block;
	width: 100%;
	height: 100%;
	border: 2.4px dotted #fff;
}
.title{
	border-bottom: 2px solid #17a2b8;
}
.stripe {
	background: repeating-linear-gradient(90deg, #fff 0, #fff 40%, #17a2b8 40%, #17a2b8 60%, #fff 60%, #fff 70%);
}
blockquote{
	font-size:small;margin-left:20pt;
}

.headding08r {
	background: #1d8ade; 
	margin:0 0 30px 0;
	padding:12px 10px;
	color:#FFF;
	text-shadow:1px 1px 2px #333;
	position:relative;
	-webkit-border-radius:4px;
	-moz-border-radius:4px;
	border-left:1px solid #036;
	border-top:1px solid #036;
	box-shadow:inset 1px 1px 4px #036;
	}
 
.headding08r:before {
	content: ' ';
	position: absolute;
	z-index: 2;
	width: 0;
	height: 0;
	left: 14px;
	bottom: -27px;
	background: transparent;
	border-color: #1d8ade transparent transparent transparent ;
	border-style:solid;
	border-width:15px;
	}
	.headding08l {
	background: #FF69B4; 
	margin:0 0 30px 0;
	padding:12px 10px;
	color:#FFF;
	text-shadow:1px 1px 2px #333;
	position:relative;
	-webkit-border-radius:4px;
	-moz-border-radius:4px;
	border-left:1px solid #036;
	border-top:1px solid #036;
	box-shadow:inset 1px 1px 4px #036;
	}
 
.headding08l:before {
	content: ' ';
	position: absolute;
	z-index: 2;
	width: 0;
	height: 0;
	left: 14px;
	bottom: -27px;
	background: transparent;
	border-color: #FF69B4 transparent transparent transparent ;
	border-style:solid;
	border-width:15px;
	}

section.content img{
max-width:90%;
height:auto;
}

.alignleft{
float:left;
clear:left;
margin:3px 10px 10px 0;
}

.alignright{
float:right;
clear:right;
margin:3px 0 10px 10px;
}
.p_photo_l img {
	float:left;
	border: 1px solid #DDDDDD;
	background-color: #FFFFFF;
	padding: 4px;
	margin-right: 10px;
	margin-bottom: 10px;
}
.p_photo_r img {
	float:right;
	border: 1px solid #DDDDDD;
	background-color: #FFFFFF;
	padding: 4px;
	margin-left: 10px;
	margin-bottom: 10px;
}

