@charset "UTF-8";

/*================================================
 *  CSSリセット
 ================================================*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary,time,mark,audio,video{
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	color:#444;
	vertical-align:baseline;
	background:transparent;
	font-weight:normal;
	line-height: 1.8em
}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}

/*================================================
 *  一般・共通設定
 ================================================*/

body {
	font-size:15px;
	color:#222;
	font-family:"メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height:2.0;
	background:#fff;
}

.inner {
	position:relative;
	width:1000px;
	background:#331F5C;/*=紫色=*/
	margin:0 auto;
}
@media screen and (max-width: 480px) {
.inner ima {
	float:center;
	width:100%;
}
}

header {
	box-sizing:border-box;
	position:relative;
	width:100%;
	background:#FFF;
}

nav {
	width:100%;
	box-shadow:0 2px 2px #331F5C;/*=紫色=*/
	⁄zoom:1;
	background-color: #FFF;
}
nav:after {
	content:'';
	display:block;
	clear:both;
}

#contents {
	overflow:hidden;
	width:980px;
	margin:8px auto;
	background:#fff;
}

#main {
	box-sizing:border-box;
	overflow:hidden;
	float:center;
	width:100%;
}


#sub {
	box-sizing:border-box;
	overflow:hidden;
	float:right;
	width:35%;
}


a {
	color:#444;
	text-decoration:underline;
}
a:hover {
	color:#421398;/*=紫色明るい=*/
	text-decoration:none;
}

h1 {
  font-weight:bold;
  margin-top: 0;
  margin-bottom: 0.5rem;
}
h2, h3, h4 {
  font-weight:bold;
  margin-top: 0;
  margin-bottom: 0.2rem;
}

h5, h6 {
  font-weight:bold;
  margin-top: 0;
  margin-bottom: 0.2rem;
}
p {
	margin-top: 0.2em;
	margin-right: 0;
	margin-bottom: 2em;
	margin-left: 0;
	line-height: 2;
}
p small {
  font-size: 0.8em;
  line-height: 1;
}
img {
	vertical-align:bottom;
}

em {
	font-weight:bold;
}

strong {
    font-weight: bold;
}
.textunder {
  background: linear-gradient(transparent 60%, #FFBAFE 90%);
}
pre {
	margin:1em 0;
	padding:1em;
}

blockquote {
	margin-top:-1.5em;
	padding-top: 0.5em;
	padding-right: 0.5em;
	padding-bottom: 0.5em;
	padding-left: 1em;
	border:1px dotted #CE9CE8;
}

ul,ol,dl {
	margin:0 0 1em 0;
	line-height:1.5;
}
ul li {
	list-style:disc;
}
ol li {
	list-style:decimal;
}
li {
	margin-left:2em;
}

dt {
	margin-bottom:0.5em;
	border-bottom:1px dotted #ddd;
}
dt:before {
	content:"\0025a0";
}
dd {
    margin-bottom: 1em;
    text-align: left;
}


.table01 {
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%;
}
.table01 tr {
    border-top: 1px solid #ACACAC;
    border-bottom: 1px solid #ACACAC;
}
.table01 th {
    padding: 10px 20px;
	text-align: center;
	background:#F8F7F5;
}
.table01 tr,
.table01 tr td {
    padding: 10px 20px;
    text-align: left;
    vertical-align: top;
}
.table01 tr th {
    width: 20%;
    font-weight: bold;
}
.table01 tr td {
    width: 90%;
}

@media screen and (max-width: 767px){
.table01 tr th,
.table01 tr td {
    display: block;
    width: 100%;
}
}


table.table02 {
	width:100%;
	margin-bottom:0.3em;
	border-collapse:collapse;
	border-bottom:1px solid #D9D5C9;
	background:#fff;
}
.table02 th {
	padding:3px;
	text-align:center;
	vertical-align:middle;
	border-bottom:1px solid #D9D5C9;
	background:#FFFDE4;
}
.table02 td {
	padding:3px;
	text-align:center;
	vertical-align:middle;
	border-bottom:1px solid #D9D5C9;
}


/*================================================
 *  ヘッダー
 ================================================*/
header {
	padding:1px 20px;
	background:#331F5C;/*=紫色=*/
}

.summary {
    position: absolute;
    top: 15px;
    right: 2px;
    margin: 0;
    width: 350px;
    float: right;
	color:#FFF;
    height: 36px;
	line-height: 1.6;
}


/*================================================
 *  グローバルナビゲーション
 背景白（#FFF）　
 文字グレー（#555）　on時の文字濃いグレー＋太い（color:#333;font-weight:bold;）
 矢印グリーン（#090）　on時背景薄いグレー（#eee）
 ================================================*/
@media print, screen and (min-width:768px) {
	nav {
		background:#331F5C;/*=紫色=*/
		border-top:1px solid #331F5C;/*=紫色=*/
		border-bottom:1px solid #331F5C;/*=紫色=*/
		z-index:3;
	}

	/* 共通 */
	nav ul {
		margin:0;
		padding:0;
		background:#331F5C;/*=紫色=*/
	}

	nav ul li {
		position:relative;
		margin:0;
		padding:0;
		list-style:none;
		background:#331F5C;/*=紫色=*/
	}

	nav ul li a {
		display:block;
		margin:0;
		padding:12px 0;
		background-image: #331F5C;/*=紫色=*/
		color:#fff;
		font-size:14px;
		font-weight:bold;
		line-height:1;
		text-decoration:none;
	}

	nav ul li:hover > a {
		color:#331F5C;/*=紫色=*/
		font-weight:bold;
		background:#FFF;/*=白=*/
		border-left:1px solid #331F5C;/*=紫色=*/
		border-right:1px solid #331F5C;/*=紫色=*/
	}

	/* 1段目 */
	nav ul.gnav > li {
		position:relative;
		width:17%;
		float:left;
		margin:0;
		padding:0;
		text-align:center;
		list-style:none;
		color:#331F5C;/*=紫色=*/
	}

	nav ul.gnav > li:first-child {
		width:15%;
	}

	nav ul.gnav > li.subnav a {
		padding-right:0px;
	}

	nav ul.gnav > li.subnav > a:after {
		position:absolute;
		content:"";
		top:17px;
		width:0;
		height:0;
		margin-left:5px;
		border:3px solid transparent;
		border-top-color:#331F5C;/*=紫色=*/
	}

	/* 2段目 */
	nav ul li ul {
		position:absolute;
		z-index:3;
		top:100%;
		left:0;
		width:100%;
		margin:0;
		padding:0;
	}

	nav ul li ul li {
		overflow:hidden;
		width:110%;
		height:0;
		transition:.2s;
	}

	nav ul li ul li a {
		padding:13px 15px;
		text-align:left;
		color:#333;
		background:#FFF;
		font-weight:normal;
	    border-left-width: 1px;
	    border-right-width: 1px;
	    border-bottom-width: 1px;
	    border-left-style: solid;
	    border-right-style: solid;
	    border-bottom-style: solid;
	    border-left-color: #331F5C;/*=紫色=*/
	    border-right-color: #331F5C;/*=紫色=*/
	    border-bottom-color: #331F5C;/*=紫色=*/
	}  /* 2段目　左ライン　ブルー */

	nav ul li:hover > ul > li {
		overflow:visible;
		height:35px;
		color:#333;
		font-weight:bold;
		background:#eee;
		border-bottom:1px solid #331F5C;/*=紫色=*/
	}/* 2段目　アンダーライン　オレンジ */

	nav ul li:hover ul li:last-child {
		border-bottom:none;
		color:#333;
		font-weight:bold;
		background:#eee;
	}

	nav ul.gnav > li:last-child > ul {
		left:-50%;
	}

	nav ul li ul li ul:before {
		position:absolute;
		content:"";
		top:13px;
		left:-20px;
		width:0;
		height:0;
		border:5px solid transparent;
		border-left-color:#331F5C;/*=紫色=*/
	}

	nav ul.gnav > li:last-child ul li ul:before {
		position:absolute;
		content:"";
		top:13px;
		left:200%;
		margin-left:-20px;
		border:5px solid transparent;
		border-right-color:#331F5C;/*=紫色=*/
	}

	/* 3段目 */
	nav ul li ul li ul {
		top:0;
		left:100%;
	}

	nav ul li ul li ul li {
		width:100%;
	}

	nav ul li ul li:hover > ul > li {
		color:#333;
		font-weight:bold;
		background:#D9CFEF;/*=紫色=*/
		border-bottom:1px solid #331F5C;/*=紫色=*/
	}/* 2段目　アンダーライン　オレンジ */

	nav ul.gnav > li:last-child > ul li ul {
		left:-100%;
	}

	nav ul li ul li ul li a {
		background:#FFF;
	    border-left-width: 2px;
	    border-left-style: solid;
	    border-left-color: #331F5C;/*=紫色=*/
	}  /* ３段目　左ライン　グリーン */
	
	nav ul li ul li ul li a:hover {
		color:#333;
		background:#D9CFEF;/*=紫色うすい=*/
		font-weight:bold;
		background:#eee;
	}

	.gnav {
		display:block !important;
	}

	#spMenu {
		display:none;
	}

	.fixed {
		position:fixed;
		top:0;
		left:0;
	}
}

/*================================================
 *  トピックパス（パンくずリスト）
 ================================================*/
#topicpath {
	font-size:12px;
	margin-bottom:20px;
	padding:2px;
	background:#f1f1f1;
}
.breadcrumb *, .breadcrumb *:after, .breadcrumb *:before {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.breadcrumb {
  font-size:90%;
  margin: 0.5em auto;
  padding: 0.1em 0.1em;
  background-color: #F2F1ED;
  color: #fff;
  border-radius: 0.5em;
}
.breadcrumb a {
  text-decoration: none;
  color: #555;
}
.breadcrumb .breadcrumbs {
  padding-left: 0;
  margin-top: 0;
  margin-bottom: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
}
.breadcrumb li {
	display: inline-block;
	position: relative;
	padding-right: calc(16px + 8px);
	margin-right: 1px;
	color: #0090D6;
}
.breadcrumb li::before {
  content: '›';
  width: 1em;
  height: 1em;
  line-height: 1;
  text-align: center;
  font-size: 1.2em;
  color: inherit;
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.breadcrumb li:last-child {
  margin-right: 0;
  padding-right: -5;
  color: #0066CC;
}
.breadcrumb li:last-child::before {
  content: normal;
}

/*================================================
 *  サブコンテンツ
 ================================================*/
.submenu li {
	margin:0;
	padding:0;
	list-style:none;
}
.submenu li a:before {
	content:"\0025a0";
	color:#000;
}
.submenu li a {
	display:block;
	padding:10px 2px;
	color:#333;
	text-decoration: none;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #CCC;
}
.submenu li a:hover {
	background:#eee;
}

.bnr {
	overflow:hidden;
}
.bnr ul {
	overflow:hidden;
}
.bnr li {
	margin:0 0 10px 0;
	padding:0;
	list-style:none;
}
.bnr li a:hover {
	opacity:0.8;
	filter:alpha(opacity=80);
	-ms-filter:"alpha( opacity=80 )";
}
.bnr img {
	width:100%;
}

/*================================================
 *  フッター
 ================================================*/
footer {
	clear:both;
}

.footmenu {
	width:100%;
	padding:15px 0;
	overflow:hidden;
	background:#331F5C;/*=紫色=*/
}
.footmenu ul {
	width:60%;
	position:relative;
	float:left;
	left:50%;
	margin:0;
	padding:0;
}
.footmenu li {
	position:relative;
	left:-50%;
	float:left;
	list-style:none;
	margin:0;
	padding:0 15px;
	font-size:13px;
	text-align:center;
}
.footmenu a {
	color:#FFF;
	text-decoration:none;
}
.footmenu a:hover {
	color:#FFF;
	text-decoration:underline;
}
.footmenu_address {
	clear:both;
	padding: 5px 0;
	text-align:center;
	color:#000;
	background-color: #331F5C;/*=紫色=*/
}
.footmenu_address p {
	color:#FFF;
	font-size:14px;
	line-height: 20px;
}

@media screen and (max-width: 1090px) {
	.footmenu_address{
		width: 100%;
	}
}
@media screen and (max-width: 480px) {
	.footmenu ul {
		width: 100%;
	}
		
	.footmenu_address{
		width: 100%;
	font-size: 80%; 
	}
	.footmenu_address p{
	font-size: 80%; 
	}
}

/* PCで電話番号リンクを無効に */
@media (min-width: 700px) {
    footmenu_address a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
    }
}

.copyright {
	clear:both;
	padding:10px 0;
	font-size:13px;
	text-align:center;
	color:#FFF;
	background-color: #331F5C;/*=紫色=*/
}

/*================================================
 *  ページトップへの戻り
 ================================================*/
.totop {
	position:fixed;
	bottom:15px;
	right:15px;
	border : solid 1px #FFF ;
}
.totop a {
	display:block;
	text-decoration:none;
}
.totop img {
	background-color: #331F5C;/*=紫色=*/
}
.totop img:hover {
	background-color: #421398;/*=紫色明るい=*/
}


/*================================================
 *  クラス
 ================================================*/
.list {
	padding:0 0 0 0.5em;
}
.list li {
	margin:0;
	padding:0 0 0 15px;
	list-style:none;
	background:url(../images/check.png) 0 5px no-repeat;
}

.info dt {
	border-bottom:none;
}
.info dd {
	padding-bottom:1em;
	border-bottom:1px solid #ddd;
}

/*================================================
 *  スライドショー
 ================================================*/
/* スライドショー */
.slide {
	display:none;
	position:relative;
	overflow:hidden;
	margin:5px 0;
}

.slidePrev {
	position:absolute;
	cursor:pointer;
	z-index:2;
}

.slideNext {
	position:absolute;
	cursor:pointer;
	z-index:2;
}

.slidePrev img {
	position:absolute;
	width:50px !important;
	height:60px !important;
}

.slideNext img {
	position:absolute;
	width:50px !important;
	height:60px !important;
}

.slideInner {
	position:relative;
	margin:0 0 5px 0;
	padding:0;
}
.slideInner li {
	float:left;
	margin:0;
	padding:0;
	list-style:none;
}
.slideInner li img {
	margin:0 5px;
	padding:0;
}

.filterPrev {
	position:absolute;
	left:0;
	opacity:0.5;
	filter:alpha(opacity=50);
	background-color:#fff;
}

.filterNext {
	position:absolute;
	right:0;
	opacity:0.5;
	filter:alpha(opacity=50);
	background-color:#fff;
}

.controlNav {
	position:relative;
	float:left;
	left:50%;
}
.controlNav span {
	position:relative;
	left:-50%;
	float:left;
	margin:5px;
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	border-radius:5px;
	width:10px;
	height:10px;
	overflow:hidden;
	background:#ccc;
	text-indent:-9999px;
	vertical-align:middle;
}
.controlNav span:hover {
	background:#999;
	cursor:pointer;
}
.controlNav span.current {
	background:#FFF8BB;/* 濃い明るい黄色 */
}

/*================================================
 *  タブレット向けデザイン
 ================================================*/
/* スクロールバーを考慮して20px大きいサイズで切り替え */
@media screen and (max-width:979px) {
	.inner {
		width:100%;
	}

	#contents {
		box-sizing:border-box;
		width:100%;
		padding:0 10px;
	}

	footer {
		width:100%;
	}
}

/*================================================
 *  スマートフォン向けデザイン
 ナビゲーション
 背景白（#FFF）　
 文字グレー（#555）　on時の文字濃いグレー＋太い（color:#333;font-weight:bold;）
 矢印水色（#09F）　矢印グリーン（#090）　on時背景薄いグレー（#eee）
 ================================================*/
@media screen and (max-width:767px) {
	.lock {
		overflow:hidden;
	}

	header {
		z-index:2;
		box-sizing:border-box;
		position:fixed;
		top:0;
		left:0;
		max-width:100%;
		padding:15px 10px;
	}

	.summary {
		position:relative;
		width: 300px;
		top:auto;
		font-size:90%;
		margin:auto;
		margin:10px 10px 10px 10px;
	}


	#main {
		float:none;
		width:100%;
	}

	#sub {
		float:none;
		width:100%;
	}

	nav {
		background:#FFF;/* 白色 */
	}
	nav ul {
		margin:0;
		padding:0;
		}

	nav .inner > ul {
		z-index:2;
		overflow:auto;
		position:fixed;
		top:53px;
		right:0;
		width:100%;
		height:88%;
		height:-webkit-calc(100% - 53px);
		height:calc(100% - 53px);
	}
	nav li {
		position:relative;
		width:100%;
		float:none;
		margin:0;
		text-align:left;
		list-style:none;
		border-bottom:1px solid #fff;
		background:#FFF;/* 白色 */
	}

	nav li:first-child {
		border-top:0;
	}
	nav li:last-child {
		border-bottom:0;
	}

	nav li a {
		display:block;
		padding:10px 30px;
		color:#FFF;
		text-decoration:none;
		background:#331F5C;/*=紫色=*/
	}
	nav li a:hover {
		color:#333;
		font-weight:bold;
		background:#FFF;/* 背景白色 */
	}
	nav ul ul {
		display:none;
		position:relative;
	}
	nav li li a {
		box-sizing:border-box;
		width:100%;
		padding:10px 30px 10px 50px;
		text-align:left;
		color:#333;
		background:#fff;
	}

	nav li li li a {
		padding:10px 30px 10px 70px;
		background:#333;
	}

	.subnav > a:before {
		display:block;
		content:"";
		position:absolute;
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
		top:20px;
		right:30px;
		width:10px;
		height:10px;
		margin-top:-5px;
		background:#FFF;
	}/*１段目の上下矢印　白色 */
	.subnav > a:after {
		display:block;
		content:"";
		position:absolute;
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
		top:20px;
		right:30px;
		width:10px;
		height:10px;
		margin-top:-10px;
		background:#331F5C;/*=紫色=*/
	}
	.subnav a:hover:after {
	    background:#FFF;/* 背景白色 */
	}

	.active > a:before {
		margin-top:0;
	}
	.active > a:after {
		margin-top:5px;
	}

	.gnav {
		display:none;
	}

	#spMenu {
		display:block;
		z-index:2;
		position:fixed;
		top:10px;
		right:10px;
	}
	#spMenu:hover {
		cursor:pointer;
	}

	#navBtn {
		display:inline-block;
		position:relative;
		width:30px;
		height:30px;
		border-radius:5%;
		background:#331F5C;/*=紫色=*/
	}
	#navBtnIcon {
		display:block;
		position:absolute;
		top:50%;
		left:50%;
		width:14px;
		height:2px;
		margin:-1px 0 0 -7px;
		background:#FFF;
		transition:.2s;
	}
	#navBtnIcon:before,
	#navBtnIcon:after {
		display:block;
		content:'';
		position:absolute;
		top:50%;
		left:0;
		width:14px;
		height:2px;
		background:#FFF;
		transition:0.3s;
	}
	#navBtnIcon:before {
		margin-top:-6px;
	}
	#navBtnIcon:after {
		margin-top:4px;
	}
	#navBtn .close {
		background:transparent;
	}
	#navBtn .close:before,
	#navBtn .close:after {
		margin-top:0;
	}
	#navBtn .close:before {
		transform:rotate(-45deg);
		-webkit-transform:rotate(-45deg);
	}
	#navBtn .close:after {
		transform:rotate(-135deg);
		-webkit-transform:rotate(-135deg);
	}
}

/*---*アスペクト比------------*/


/*---*PC00列+スマホ00列------------------*/

.col_two_one {
	overflow:hidden;
}
.col_two_one ul {
	overflow:hidden;
	margin:2% -2% 0 0;
}
.col_two_one li {
	list-style:none;
	float:left;
	width:46%;
	margin:0 3% 3% 0;
}
.col_two_one li:nth-child(2n+1) {
	clear:both;
}
.col_two_one li img {
	width:100%;
	margin-bottom:2.5%;
}
.col_two_one li img.example2 {
	width:100%;
	margin-bottom:2.5%;
	border-bottom: solid 5px #FF8E00;
}
.col_two_one h3{
	font-size: 130%; 
	font-weight: 600; 
}
.col_two_one h4{
	font-size: 120%; 
	font-weight: 700; 
}


/*---PC5列＋スマホ1列------------------*/
.box101 {
   width: auto;
   height: auto;
  max-width: 960px;
  margin: 0 auto;
  margin-bottom:3em;
}
.box101 img {
  height: auto;
	width:100%;
	margin:20px 20px 20px 0px;
}
.box101 h1{
    position: relative;
    font-size: 30px;
    text-align: center;
    margin-top: 40px;
    margin-bottom: 10px;
}
.box101 h2{
	font-size: 140%; 
	font-weight: 500;
	margin:0px 0px 10px 0px; 
}
.box101 p {
text-align: left;
line-height: 160%;
}
@media screen and (max-width: 480px) {
	.box101 h1 {
	font-size: 20px;
	font-weight: bold;
	}
	.box101 img {
	height: auto;
	width:100%;
}
}
.box101-top {
   width: auto;
   height: auto;
}
.box101-top img {
  height: auto;
  width:100%;
	margin:0px 0px 15px 0px; 
}
@media screen and (max-width: 480px) {
	.box101-top img {
    height: auto;
	width:100%;
}
}
/*---角丸------------------*/
.box101r {
	width: 100%;
    display: flex;
    display: -ms-flexbox; /* IE10 */
    flex-wrap: wrap;
    -ms-flex-wrap: wrap; /* IE10 */
    background-color: #F5FBEF; /* 背景の色 */
    color: #333; /* 文字の色 */
    text-align: center; /* 内容は中央配置 */
    border-radius: 50px;/* 画像の角丸 */
}

/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; }
.sp { display: none !important; }
 
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 750px) {
    .pc { display: none !important; }
    .sp { display: block !important; }
}

.midashi {
margin: 0;
position: relative;
font-size: 26px;
text-align: center;
}
@media screen and (max-width: 480px) {
	.midashi{
		width: 100%;
	font-size: 14px; 
	}
}
.midashired {
margin: 0;
position: relative;
color: #B200F5; /* 文字の色 */
font-size: 17px;
text-align: center;
margin-top:20px;
margin-bottom:20px;
}
@media screen and (max-width: 480px) {
	.midashired{
	width: 100%;
	font-size: 12px; 
	}
}
.after {
display: block;
font-size: 18px;
margin-top:  10px;
position: relative;
width: 500px;
margin: 10px auto 0;
background-color: #fff;
}
@media screen and (max-width: 480px) {
	.after {
display: block;
font-size: 14px;
margin-top:  10px;
position: relative;
width: 90%;
margin: 10px auto 0;
background-color: #fff;
}
}
.after:before {
content: '';
height: 1px;
background-color: #000;
position: absolute;
top: 0;
bottom: 0;
margin: auto;
z-index: -1;
width: 200px;
left: -30px;
}

@media screen and (max-width: 1090px) {
	.box101 > div{
		width: 100%;
	}
}
@media screen and (max-width: 480px) {
	.box101 > div{
		width: 100%;
	font-size: 100%; 
	}
}

/*---プライバシーポリシー文章------------------*/
#wrapContents {
float: left;
margin: 50px 0 0 0;
width: 760px;
}
#wrapContents:after {
content: "";
clear: both;
height: 0;
display: block;
visibility: hidden;
}
/*-------------------------------*/
@media screen and (max-width: 1090px) {
	.box101poli > div{
		width: 100%;
	}
}
@media screen and (max-width: 480px) {
	.box101poli > div{
		width: 100%;
	}
}


/*---タイトル　左揃え　ブルー文字-----------------*/

.titlef101 h2 {
     position: relative;
     color: #333;/*文字*/
     padding: 0.3em 0.8em 0.3em 0.8em;/* 余白指定 */
     border: 1px solid #CCC;
     border-radius:5px;
     background: linear-gradient(#FFF 0%, #EEE 100%);
     box-shadow:inset -1px -1px 0 rgba(255,255,255,1);
     font-size: 110%;
     font-weight: bold;
     margin: 40px 5px 10px 5px;/* 周りの余白指定 */
}

.titlef101 h3 {
     padding: 2em 0em 0.5em 0em;/* 余白指定 */
}

/*---タイトル　左揃え　左端スカイブルー-----------------*/
.titlefsk102 h2 {
  font-size: 18px;
  font-weight: bold;
  background: linear-gradient(#FFF 0%, #EEE 100%);
  padding: 0.2em 0em 0.1em .75em;      /* 余白指定 */
  border-top: solid 1px #CCC; /* 上罫線 */
  border-right: solid 1px #CCC;  /* 右罫線 */
  border-left: 6px solid #331F5C;/*=紫色=*/
  border-bottom: solid 1px #999; /* 上罫線 */
  margin: 3em 0em 1.5em 0em;/* 周りの余白指定 */
}

.titlefsk102 h3 {
  font-size: 20px;
  font-weight: bold;
}
@media screen and (max-width: 480px) {
	.titlefsk102 h2 {
	font-size: 16px;
	font-weight: bold;
	}
	.titlefsk102 h3{
    color: #333;
	}
}

@media screen and (max-width: 480px) {
.inner ima {
	float:center;
	width:100%;
}
}
/*---タイトル　左揃え　左端スカイブルーtitlefsk103-----------------*/
.titlefsk103 h2 {
    font-size: 90%;
    font-weight: bold;
    padding: .1em .8em;
    background: -webkit-linear-gradient(top, #0084FF 0%, #0066CC 100%);
    background: linear-gradient(to bottom, #009BFF 0%, #0066CC 100%);
    color: #fff;
    text-shadow: 0px 1px 0px rgba(0, 0, 0, .5);
}

/*---タイトル　中央揃え　両端にライン-----------------*/
.titcen102 
h2 {
  position: relative;
  font-size: 18px;
  font-weight: 700;
  text-align: center;
}
.titcen102 
h2 span {
  font-size: 110%;
  font-weight: 600;
    position: relative;
    z-index: 2;
    display: inline-block;
    margin: 1em;
    padding: 0 1em;
    background-color: #FFF;
    text-align: left;
    border-color: #CE9CE8;
}
.titcen102 
h2::before {
  position: absolute;
  top: 50%;
  z-index: 1;
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  background-color: #CE9CE8;
}
.titcen102 h5 {
    position: relative;
    font-size: 18px;
    font-weight: 300;
    text-align: left;
    line-height: 200%;
}
.titcen102 img {
    position: auto;
    width: 30%;
    float: left;
}
@media screen and (max-width: 480px) {
    .titcen102 h2 span{
    font-size: 17px;
    font-weight: 700;
    color: #333;
    }
    .titcen102 h5 {
    position: relative;
    font-size: 13px;
    font-weight: 300;
    text-align: left;
}
}

/*---タイトル　中央２行-----------------*/
.titcen101 {
    position:  relative;        /* 位置調整 */
    font-weight:  normal;       /* 文字の太さ調整 */
    font-size: 40px;            /* 文字サイズ指定 */
    line-height: 150%;         /* 行間調整 */
    text-align:  center;        /* 文字位置指定 */
    padding: 10px 0 10px;       /* 余白指定 */
    border-top: solid 1px;      /* 線指定 */
    border-bottom:  solid 1px;  /* 線指定 */
    width:  320px;              /* 幅指定 */
    margin: 30px auto 30px;        /* 周りの余白指定 */
}

/*---タイトル　中央２行-midashi_ce02----------------*/
.midashi_ce02 {
    position: relative;
    font-size: 28px;
    text-align: center;
    margin-top: 40px;
    margin-bottom: 10px;
}

@media screen and (max-width: 480px) {
.midashi_ce02 h1{
font-size: 19px;
font-weight: 700;
margin-bottom: 20px;
}
}


.after_ce02 {
display: block;
font-size: 20px;
margin-top:  40px;
position: relative;
width: 700px;
margin: 5px auto 0;
background-color: #fff;
}
@media screen and (max-width: 480px) {
.after_ce02{
width: 100%;
font-size: 14px;
}
}
.after_ce03 {
display: block;
font-size: 20px;
text-align: center;
margin-top:  10px;
position: relative;
width: 780px;
margin: 5px auto 0;
margin-bottom: 30px;
background-color: #fff;
}

.after_ce02:before {
content: '';
height: 1px;
background-color: #000;
position: absolute;
top: 0;
bottom: 0;
margin: auto;
z-index: -1;
width: 200px;
left: -30px;
}
/*---吹き出し枠　boxf101-幅auto----------------*/
.boxf101 {
width: auto;/*左右幅*/
position: relative;
margin-top: 30px;
padding: 0.5em 1em;
border-top: solid 2px #007bff;
border-bottom: solid 2px #007bff;
background-color: #FFFBE6;
margin-bottom: 30px;
}
.boxf101:after {
position: absolute;
font-family: "Font Awesome 5 Free",'Quicksand','Avenir','Arial',sans-serif;
content: 'POINT';
background: #007bff;
color: #fff;
left: 0px;
bottom: 100%;
border-radius: 5px 5px 0 0;
padding: 5px 7px 3px;
font-size: 12pt;
line-height: 1;
letter-spacing: 0.05em;
}
.boxf101 p {
margin: 0; 
padding: 0;
}

/*---ｈ2　両端にライン-midashi_border01---------------*/
.midashi_border01 {
    display: flex;
    align-items: center;
    font-size: 200%;
    font-family: "Font Awesome 5 Free",'Quicksand','Avenir','Arial',sans-serif;
}
.midashi_border01:before,
.midashi_border01:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #666;
}

.midashi_border01:before {
    margin-right: 1rem;
}

.midashi_border01:after {
    margin-left: 1rem;
}

/*---ｈ2　両端にライン-midashi_border02---------------*/
.midashi_border02{
    font-size: 140%;
    text-align: center;
    margin-top:20px;
}
/*---ｈ2　under斜線ライン紫色-midashi_border---------------*/
.midashi_underge h3 {
	position: relative;
	padding-bottom: 5px;
	font-size: 18px;
}
.midashi_underge h3::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 6px;
	background-image: repeating-linear-gradient(45deg, #06A600 0px, #06A600 1px, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 50%);
	background-size: 8px 8px;
}
@media screen and (max-width: 480px) {
	.midashi_underge h3 {
	position: relative;
	padding-bottom: 5px;
        font-size: 15px;
        font-weight: bold;
	}
.midashi_underge h3::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 6px;
	background-image: repeating-linear-gradient(45deg, #06A600 0px, #06A600 1px, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 50%);
	background-size: 8px 8px;
}
}

/*---ボックスpointブルー-boxpointb101------------*/
.boxpointb101 {
    position: relative;
    margin: 1em;
    padding: 2.5em 2em 2em 2em;
    border: solid 3px #95ccff;
    border-radius: 8px;
}
.boxpointb101 .boxpointb101-title {
    position: absolute;
    display: inline-block;
    top: -13px;
    left: 10px;
    padding: 0 9px;
    line-height: 1;
    font-size: 19px;
    background: #FFF;
    color: #3BACFF;
    font-weight: bold;
}
.boxpointb101 h4 {
    font-size: 16px;
}
.boxpointb101 p {
	line-height: 1.7em;/*行高は1に*/
}

/*---ボックス２段　オレンジ色-box2b102or---------*/
.box2b102or {
    margin: 2em 0;
    background: #f1f1f1;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
}
.box2b102or .box2b102or-title {
    font-size: 1.2em;
    background: #FF5D46;
    padding: 5px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.box2b102or p {
    padding: 15px 20px;
    margin: 0;
}
/*---ボックス２段　りんご赤色-box2b102apple---------*/
.box2b102apple {
    margin: 2em 0;
    background: #f1f1f1;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
}
.box2b102apple .box2b102apple-title {
    font-size: 1.2em;
    background: #ED0202;
    padding: 5px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.box2b102apple p {
    padding: 15px 20px;
    margin: 0;
}
/*---ボックス２段　さつま芋赤紫色-box2b102pu---------*/
.box2b102pu {
    margin: 2em 0;
    background: #f1f1f1;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
}
.box2b102pu .box2b102pu-title {
    font-size: 1.2em;
    background: #A600B6;
    padding: 4px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.box2b102pu p {
    padding: 15px 20px;
    margin: 0;
}
/*---ボックス２段　赤色-box2b102red---------*/
.box2b102red {
    margin: 2em 0;
    background: #f1f1f1;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
}
.box2b102red .box2b102red-title {
    font-size: 1.2em;
    background: #FF2C26;
    padding: 4px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.box2b102red p {
    padding: 15px 20px;
    margin: 0;
}
/*---ボックス２段　赤色-box2b102red2---------*/
.box2b102red2 {
    margin: 2em 0;
    background: #f1f1f1;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
}
.box2b102red2 .box2b102red2-title {
    font-size: 1.2em;
    background: #E00006;
    padding: 4px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.box2b102red2 p {
    padding: 15px 20px;
    margin: 0;
}
/*---ボックス２段　パンプキン色pumpkin-box2b102pu---------*/
.box2b102pumpkin {
    margin: 2em 0;
    background: #f1f1f1;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
}
.box2b102pumpkin .box2b102pumpkin-title {
    font-size: 1.2em;
    background: #FF8821;
    padding: 5px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.box2b102pumpkin p {
    padding: 15px 20px;
    margin: 0;
}
/*---ボックス２段　キャラメル色caramel-box2b102pu---------*/
.box2b102caram {
    margin: 2em 0;
    background: #f1f1f1;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
}
.box2b102caram .box2b102caram-title {
    font-size: 1.2em;
    background: #F8A900;
    padding: 4px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.box2b102caram p {
    padding: 15px 20px;
    margin: 0;
}
/*---ボックス２段　青紫色-box2b102bluepu---------*/
.box2b102bluepu {
    margin: 2em 0;
    background: #f1f1f1;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
}
.box2b102bluepu .box2b102bluepu-title {
    font-size: 1.2em;
    background: #2590F5;
    padding: 4px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.box2b102bluepu p {
    padding: 15px 20px;
    margin: 0;
}
/*---ボックス２段　ライム色-box2b102lime---------*/
.box2b102lime {
    margin: 2em 0;
    background: #f1f1f1;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
}
.box2b102lime .box2b102lime-title {
    font-size: 1.2em;
    background: #5DE612;
    padding: 4px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.box2b102lime p {
    padding: 15px 20px;
    margin: 0;
}
/*------------------------------------*/
#wrap301{
    max-width: 990px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 0;
    line-height: 150%;
}
#rsp-box{
    margin-top: 0;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 20;
    padding: 0 3% 0;
}
#rsp-box h4{
    font-weight:  normal;       /* 文字の太さ調整 */
    font-size: 30px;            /* 文字サイズ指定 */
	margin: 20px auto;
	color:#ED6C00;	
	text-align:center;
}
#text-area {
	max-width:600px;
	height:auto;
	background:url(画像のURL),url(画像のURL),url(画像のURL);
	background-repeat: no-repeat, no-repeat, repeat;
	background-position:left,right,right;
	margin: 0 auto;
	padding:20px 0 20px 0;
	text-align: left;
	line-height: 30px;
	color: #333;
}
#text-area dl{
	font-size: 16px;
	line-height: 150%;         /* 行間調整 */
	margin-bottom:30px;
}
#text-area dt {
	float: left;
	clear:both;
	width: 18%;
	margin-left:5%;
}
#text-area dd {
	margin:0 5% 0 5%;
	overflow: hidden;
}



/*================================================
 *  col_3_one 画像左上にグリーン+文字乗せ
 ================================================*/
.col_3_onelightgreen {
  position: relative;
  margin: 0px auto;/*画像上部外側余白*/
  }

.col_3_onelightgreen p {
    position: absolute;
    top: 0;/*画像の左上に配置*/
    left: 0;
    margin: 0; /*余計な隙間を除く*/
    color: white;/*文字を白に*/
    background-color: #421398;/*背景色紫色*/
    font-size: 15px;
    font-weight: bold;
    line-height: 1;/*行高は1に*/
    padding: 5px 10px;/*文字周りの余白*/
  }

.col_3_onelightgreen img {
  width: 100%;
  }



/*---3列-2列----------------------------*/
*, *:before, *:after {
	box-sizing: border-box;
}
.col_331{
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
}
.col_331 h3{
	text-align:left;
	font-size: 100%; 
	font-weight: bold;
    margin-top:5px;
}
.col_331 h6 {
    position: absolute;
    top: 0;/*画像の左上に配置*/
    left: 0;
    margin: 0; /*余計な隙間を除く*/
    color: white;/*文字を白に*/
    background-color: #421398;/*背景色*/
    font-size: 15px;
    font-weight: bold;
    line-height: 1;/*行高は1に*/
    padding: 5px 10px;/*文字周りの余白*/
  }
.col_331 p {	
	line-height: 1.8em;
}

.col_331 img {
	width:100%;
	margin-bottom:1.5%;
}

.col_331 > div{
	width: 33.33333%;
	padding: 10px;
}
@media screen and (max-width: 960px) {
	.col_331 > div{
		width: 50%;
	}
.col_331 > h3{
	font-size: 100%; 
	font-weight: bold;
	text-align:left
}
}
@media screen and (max-width: 480px) {
	.col_331 > div{
		width: 100%;
	}
.col_331 > h3{
	font-size: 100%; 
	font-weight: bold;
	text-align:left
}
}


/*---5列+4列-----------------------*/
*, *:before, *:after {
	box-sizing: border-box;
}
.col_54{
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
}
.col_54 h4{
	font-size: 90%; 
	font-weight: 600;
    line-height: 150%;         /* 行間調整 */
}
.col_54 > div{
	width: 24%;
	padding: 10px;
}
.col_54 > div > div{
	position: relative;
	overflow: hidden
}

.col_54 img {
	margin-bottom:0%;
}
.col_54 img.exred {
  max-width: 100%;
  height: auto;
	width:100%;
	margin-bottom:2.5%;
	border-bottom: solid 5px #F00;
}
.col_54 img.expink {
  max-width: 100%;
  height: auto;
	width:100%;
	margin-bottom:2.5%;
	border-bottom: solid 5px #F0F;
}
.col_54 img.exgreen {
  max-width: 100%;
  height: auto;
	width:100%;
	margin-bottom:2.5%;
	border-bottom: solid 5px #39DB00;
}
.col_54 img.exyel {
  max-width: 100%;
  height: auto;
	width:100%;
	margin-bottom:2.5%;
	border-bottom: solid 5px #F8DF00;
}
.col_54 img.exorange {
  max-width: 100%;
  height: auto;
	width:100%;
	margin-bottom:2.5%;
	border-bottom: solid 5px #FF8E00;
}
.col_54 img.exsky {
  max-width: 100%;
  height: auto;
	width:100%;
	margin-bottom:2.5%;
	border-bottom: solid 5px #00C3FF;
}
.col_54 img.blugre {
  max-width: 100%;
  height: auto;
  width:100%;
  margin-bottom:2.5%;
  border-bottom: solid 5px #00AE54;
}
.col_54 img.silv {
  max-width: 100%;
  height: auto;
  width:100%;
  margin-bottom:2.5%;
  border-bottom: solid 5px #949494;
}
@media screen and (max-width: 960px) {
	.col_54 > div{
		width: 25%;
	}
}
@media screen and (max-width: 480px) {
	.col_54 > div{
	width: 33.33333%;
	font-size: 90%; 
	}
	.col_54 h4{
	font-size: 90%; 
	font-weight: 600;
    line-height: 130%;         /* 行間調整 */
}
}


/*---4列+3列--------------------------*/
*, *:before, *:after {
	box-sizing: border-box;
}
.col_43{
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
}
.col_43 h4{
	font-size: 100%; 
	font-weight: 600; 
}
.col_43 h6{
	font-size: 100%;
	font-weight: 100; 
	margin-top:-0.8em; 
	margin-bottom:2em;
}

.col_43 > div{
	width: 25%;
	padding: 0px 10px 0px 10px;
}
@media screen and (max-width: 960px) {
	.col_43 > div{
		width: 33.33333%;
	}
}
@media screen and (max-width: 480px) {
	.col_43 > div{
		width: 50%;
	}
}


/*---3列+2列--------------------------*/
*, *:before, *:after {
	box-sizing: border-box;
}
.col_32{
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
}
.col_32 > div h3{
	font-size: 90%; 
	font-weight: bold;
}
.col_32 > div{
	width: 33%;
	padding: 15px;
}
.col_32 > div img{
	width: 100%;
	padding-bottom: 10px;
}
@media screen and (max-width: 960px) {
	.col_32 > div{
		width: 50%;
	}
}
@media screen and (max-width: 480px) {
	.col_32 > div{
		width: 50%;
	}
    .col_32 > div h3{
	font-size: 80%; 
	font-weight: bold;
}
}

/*---3列+2列---角丸-----------------------*/
*, *:before, *:after {
	box-sizing: border-box;
}
.col_32r{
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
	padding: 10px 0px 0px 0px;
}
.col_32r > div{
	width: 33.2%;
	padding: 0px 20px 10px 0px;
	margin : 20px 0px 10px 0px;
}
.col_32r img{
	width: 100%;
	padding-bottom: 0px;
	border-radius: 20px;/* 画像の角丸 */
}
.col_32r h4 {
  font-size: 110%;
}
.col_32r p {
  font-size: 115%;
}
@media screen and (max-width: 960px) {
	.col_32r > div{
		width: 50%;
	}
}
@media screen and (max-width: 480px) {
	.col_32r > div{
		width: 49%;
	}
	.col_32r img{
	width: 100%;
	padding-bottom: 0px;
	border-radius: 15px;/* 画像の角丸 */
	margin: 1.5%;
}
}

/*---2列+1列--------------------------*/
*, *:before, *:after {
	box-sizing: border-box;
}
.col_21{
	width: 100%;
	line-height:2.0;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
}
.col_21 > div{
	width: 50%;
	padding: 10px 10px 15px 10px;
	line-height:2.0;
}
.col_21 img{
	width: 100%;
	padding-top: 15px;
	padding-bottom: 15px;
	line-height:3.0;
}
.col_21 h3{
	font-size: 115%;
	padding: 15px 5px 5px 5px;
	color: #333;
	text-align: left;
}
.col_21 h4{
	font-size: 100%; 
	font-weight: 600;
	color: #333;
	text-align: center;
}

.col_21 p{
	padding: 15px 5px 5px 5px;
	line-height: 1.8em;
}
@media screen and (max-width: 480px) {
	.col_21 h3{
	font-size: 110%;
	font-weight: 700;
	color: #333;
	}
}

@media screen and (max-width: 960px) {
	.col_21 > div{
		width: 100%;
	}
}


/*---grid305 画像左上にグリーン+文字乗せ----------*/
.grid305lightgreen {
  position: relative;
  margin: 0px auto;/*画像上部外側余白*/
  }

.grid305lightgreen h6 {
    position: absolute;
    top: 0;/*画像の左上に配置*/
    left: 0;
    margin: 0; /*余計な隙間を除く*/
    color: white;/*文字を白に*/
    background-color: #54DD12;/*背景色*/
    font-size: 15px;
    font-weight: bold;
    line-height: 1;/*行高は1に*/
    padding: 5px 10px;/*文字周りの余白*/
  }
.grid305lightgreen img {
  width: 100%;
  }

/*---カードデザイン　横長画像の下に文章---------*/
.cp_card04 {
	overflow: hidden;
	border-radius: 3px;
	margin-top: 2rem;
	margin-bottom: 2rem;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	background-color: #fff;
	-webkit-box-shadow: 0 3px 7px -3px rgba(0, 0, 0, 0.3);
	        box-shadow: 0 3px 7px -3px rgba(0, 0, 0, 0.3);
					transition: all 0.25s ease-in;
				  border-bottom: 5px solid transparent;
}
.cp_card04 .photo {
	height: auto;
	overflow: hidden;
}
.cp_card04:hover {
  -webkit-transform: translateY(-5px);
          transform: translateY(-5px);
  border: none;
  border-bottom: 5px solid #00BCD4;
}
.cp_card04 .details {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding: 1em 1em 0 1em;
	font-size: 0.8em;
}
.cp_card04 .date {
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	text-align: right;
}
.cp_card04 .category {
	-webkit-box-flex: 2;
	    -ms-flex: 2;
	        flex: 2;
}
.cp_card04 .category p {
	font-size: 1.2em;
	padding: 3px 8px;
	cursor: pointer;
	width: 8em;
	margin: 0;
	border-radius: 10px;
	background: #00BCD4;
	text-align: center;
	color: #ffffff;
}
.cp_card04 .description {
	padding: 0 1em;
}
.cp_card04 .description h1 {
	font-size: 1.4em;
	margin: 0;
	margin-bottom: 0.5em;
}
.cp_card04 .description .text p {
	margin: 0;
}
.cp_card04 .description a {
	float: right;
	margin-bottom: 10px;
	text-decoration: none;
	color: #00BCD4;
}
.cp_card04 .description a:after {
	font-family: FontAwesome;
	margin-left: -10px;
	content: '\f061';
	-webkit-transition: all 0.3s ease;
	        transition: all 0.3s ease;
	vertical-align: middle;
	opacity: 0;
}
.cp_card04 .description a:hover:after {
	margin-left: 5px;
	opacity: 1;
}
/*---カードデザイン　長方形01---------------*/
.flex01{
  max-width: 480px;
}
.flex01 img{
  max-width: 100%;
  display: block;
  margin: 0 auto;
  height: auto;
	width:100%;
}
.flex01 h2{
	font-size: 140%; 
	font-weight: 600; 
	text-align: left;
}
@media screen and (min-width:600px) {  
  .flex01{
    display:flex;
    flex-wrap:nowrap;
    justify-content:space-between;
  }
  .item01+.item01{
    margin-left:1.0em;
  }
}

/*---カードデザイン　長方形02---------------*/
.flex02{
  max-width: auto;
  margin: 3.0em 0em 5.0em 0em;
}
.flex02 img{
  display: block;
  margin-right: 0.3rem;
  height: auto;
  width:350px;
}
.flex02 h4{
	font-size: 110%; 
	font-weight: 600; 
	text-align: left;
	margin-top: 1rem;
}

.item01 h4 {
    font-size: 110%;
    color: #333;
}
.item02 h4 {
    font-size: 120%;
    color: #333;
}
.item02 h5 {
    font-size: 100%;
	font-weight: 200; 
}
.item02 h6 {
    font-size: 85%;
	font-weight: 200;
    width:auto;
	padding: 0.6em 0em 0.6em 0em;      /* 余白指定 */
	border-top: solid 1px #BBB; /* 上罫線 */
	border-right: 0px;  /* 右罫線 */
	border-left: 0px; /* 左端太い紫色#A701FC罫線 */
	border-bottom: solid 1px #BBB; /* 上罫線 */
	margin: 0.5em 0em 1.0em 0em;/* 周りの余白指定 */
}
@media screen and (max-width: 480px) {
    .flex02 h4{
	font-size: 110%; 
	font-weight: 700; 
	text-align: left;
	margin-top: 1rem;
}
	
	.flex02 img{
	float:center;
	width:90%;
}
}

.flex02 item03{
  max-width: auto;
  margin-left: 30px;
}
@media screen and (min-width:600px) {  
  .flex02{
    display:flex;
    flex-wrap:nowrap;
    justify-content:space-between;
  }
  .item02+.item02{
    margin-left: 1.0em;
    margin-bottom: 1.0em;
  }
}


/*--------楕円形のボタン-紺色----------*/
.button-kmnb {
    display: inline-block;
    padding: 0.4em 1.6em;
    font-size: 0.8rem;
    color: #0D02FF;/*紺色*/
    text-decoration: none;
    user-select: none;
    border: 1px #0D02FF solid;/*紺色*/
    border-radius: 20px;
    transition: 0.4s ease;
}
.button-kmnb:hover {
  color: #fff;
  background: #0D02FF;
}

/*--------楕円形のボタン-青----------*/
.button-kmb {
    display: inline-block;
    padding: 0.2em 0.4em;
	margin: 0.3em;
    font-size: 0.9rem;
    color: #0066CC;/*青*/
    background: #FFFBDF;
    text-decoration: none;
    user-select: none;
    border: 1px #92C7FF solid;/*青*/
    border-radius: 10px;
    transition: 0.4s ease;
}
.button-kmb:hover {
    color: #0066CC;
    background: #FFEC43;
    font-weight: bold;
}
/*--------楕円形のボタン-青----------*/
.button-kmsbs {
    display: inline-block;
    padding: 0.1em 0.6em;
	margin: 0.1em;
    font-size: 0.9rem;
    font-weight: bold;
    text-align:center;
	color: #039100;
    background: #FFF8DC;
    border: solid 1.8px #039100;
    text-decoration: none;
    user-select: none;
    border-radius: 10px;
    transition: 0.4s ease;
}
.button-kmsbs:hover {
  background: #04A100;
  color: #FFF;
}

/*--------楕円形のボタン-スカイブルー----------*/
.button-kmsb {
    display: inline-block;
    padding: 0.4em 1.6em;
    font-size: 0.8rem;
    color: #00BCF5;/*スカイブルー*/
    text-decoration: none;
    user-select: none;
    border: 1px solid #00BCF5;/*スカイブルー*/
    border-radius: 20px;
    transition: 0.4s ease;
}
.button-kmsb:hover {
  color: #fff;
  background: #00BCF5;
}
/*--------楕円形のボタン紫色----------*/
.button-kmg {
    display: inline-block;
    padding: 0.4em 1.6em;
    font-size: 0.8rem;
    color: #421398;/*=紫色明るい=*/
    text-decoration: none;
    user-select: none;
    border: 1px #421398 solid;/*紫色明るい*/
    border-radius: 20px;
    transition: 0.4s ease;
}
.button-kmg:hover {
  color: #fff;
  background: #31D800;
}
/*--------楕円形のボタン-赤----------*/
.button-kmr {
    display: inline-block;
    padding: 0.4em 1.6em;
    font-size: 0.8rem;
    color: #FF0606;/*赤*/
    text-decoration: none;
    user-select: none;
    border: 1px #FF0606 solid;/*赤*/
    border-radius: 20px;
    transition: 0.4s ease;
}
.button-kmr:hover {
  color: #fff;
  background: #FF0606;
}
/*--------楕円形のボタン-オレンジ----------*/
.button-kmor {
    display: inline-block;
    padding: 0.4em 1.6em;
    font-size: 0.8rem;
    color: #FF8600;/*オレンジ*/
    text-decoration: none;
    user-select: none;
    border: 1px #FF8600 solid;/*オレンジ*/
    border-radius: 20px;
    transition: 0.4s ease;
}

.button-kmor:hover {
  color: #fff;
  background: #FF8600;
}
/*--------楕円形のボタン-オレンジＳＳ----------*/
.button-kmorss {
    display: inline-block;
    padding: 0.1em 0.8em;
    font-size: 0.8rem;
	font-weight: 700; 
    color: #FF8600;/*オレンジ*/
    text-decoration: none;
    user-select: none;
    border: 1px #FF8600 solid;/*オレンジ*/
    border-radius: 20px;
    transition: 0.4s ease;
}

.button-kmorss:hover {
  color: #fff;
  background: #2ECB00;
    border: 1px #2ECB00 solid;/*オレンジ*/
}
/*--------楕円形のボタン-黄色----------*/
.button-kmy {
    display: inline-block;
    padding: 0.4em 1.6em;
    font-size: 0.8rem;
    color: #FFED01;/*黄色*/
    text-decoration: none;
    user-select: none;
    border: 1px #FFED01 solid;/*黄色*/
    border-radius: 20px;
    transition: 0.4s ease;
}
.button-kmy:hover {
  color: #fff;
  background: #FFED01;
}
/*--------楕円形のボタン-ブルーグリーン----------*/
.button-kmbg {
  display: inline-block;
  padding: 0.4em 1.6em;
  font-size: 0.8rem;
  color: #00b5ad;/*ブルーグリーン*/
  text-decoration: none;
  user-select: none;
  border: 1px #00b5ad solid;/*ブルーグリーン*/
  border-radius: 20px;
  transition: 0.4s ease;
}
.button-kmbg:hover {
  color: #fff;
  background: #00b5ad;
}
/*--------楕円形のボタン-ピンク----------*/
.button-kmpi {
    display: inline-block;
    padding: 0.4em 1.6em;
    font-size: 0.8rem;
    color: #FF1999;/*ピンク*/
    text-decoration: none;
    user-select: none;
    border: 1px #FF1999 solid;/*ピンク*/
    border-radius: 20px;
    transition: 0.4s ease;
}

.button-kmpi:hover {
  color: #fff;
  background: #FF1999;
}
/*--------楕円形のボタン-青+ピンク----------*/
.button-bluekmpi {
    display: inline-block;
    padding: 0.2em 1.4em;
	margin: 0.3rem;
    font-size: 0.9rem;
	font-weight: bold;
    color: #fff;
    background: #00A9F0;
    text-decoration: none;
    user-select: none;
    border-radius: 10px;
    transition: 0.1s ease;
}

.button-bluekmpi:hover {
  color: #fff;
  background: #FF6BBD;
}
/*--------楕円形のボタン-purple+オレンジ----------*/
.button-bluekmpipur {
    display: inline-block;
    padding: 0.2em 1.4em;
	margin: 0.3rem;
    font-size: 0.9rem;
	font-weight: bold;
    color: #fff;
    background: #6531D5;
    text-decoration: none;
    user-select: none;
    border-radius: 10px;
    transition: 0.1s ease;
}

.button-bluekmpipur:hover {
  color: #fff;
  background: #00BBB2;
}
/*--------楕円形のボタン-パープル----------*/
.button-kmpur {
    display: inline-block;    
	padding: 0em 0.4em;
	margin: 0.2em 0.2em;
    font-size: 0.80rem;
	font-weight: bold;
    color: #3F0086;/*パープル*/
    background: #FFF7DF;
    text-decoration: none;
    user-select: none;
    border: 1px #6500D6 solid;/*パープル*/
    border-radius: 10px;
    transition: 0.4s ease;
}
.button-kmpur:hover {
  color: #fff;
  background: #6500D6;
}
/*--------楕円形のボタン-パープル02濃い----------*/
.button-kmpur02 {
    display: inline-block;    
	padding: 0.1em 1em 0.1em 1em;
	margin: 1em 1em;
    font-size: 0.8rem;
    color: #68009D;/*パープル*/
    text-decoration: none;
    user-select: none;
    border: 1px #68009D solid;/*パープル*/
    border-radius: 15px;
    transition: 0.4s ease;
}
.button-kmpur02:hover {
  color: #fff;
  background: #68009D;
}


/*-----1カラム+スマホ1列 containercent01------*/
#containercent01 {
  max-width: 960px;
  margin: 0 auto;
}

/*-----2カラム+スマホ2列 col_2------*/
*, *:before, *:after {
	box-sizing: border-box;
}
.col_2{
    width: 100%;
    display: flex;
    display: -ms-flexbox; /* IE10 */
    flex-wrap: wrap;
    -ms-flex-wrap: wrap; /* IE10 */
    background-color: #FFEFF3; /* 背景の色 */
    color: #333; /* 文字の色 */
    text-align: center; /* 内容は中央配置 */
}
.col_2 img {
  max-width: 100%;
  height: auto;
	width:100%;
	margin-bottom:2.5%;
}
.col_2 > div{
	width: 50%;
	padding: 10px;
}

@media screen and (max-width: 1090px) {
	.col_3 > div{
		width: 50%;
	}
}
@media screen and (max-width: 480px) {
	.col_3 > div{
		width: 50%;
	}
}



/*-----3カラム+スマホ2列 col_3------*/
*, *:before, *:after {
	box-sizing: border-box;
}
.col_3{
    width: 100%;
    display: flex;
    display: -ms-flexbox; /* IE10 */
    flex-wrap: wrap;
    -ms-flex-wrap: wrap; /* IE10 */
    background-color: #F5FBEF; /* 背景の色 */
    color: #333; /* 文字の色 */
    text-align: center; /* 内容は中央配置 */
}
.col_3 img {
  max-width: 100%;
  height: auto;
	width:100%;
	margin-bottom:2.5%;
}
.col_3 > div{
	width: 33.33333%;
	padding: 10px;
}
@media screen and (max-width: 1090px) {
	.col_3 > div{
		width: 50%;
	}
}
@media screen and (max-width: 480px) {
	.col_3 > div{
		width: 50%;
	}
}

/*-----4カラム+スマホ3列 col_4------*/
*, *:before, *:after {
	box-sizing: border-box;
}
.col_4{
    width: auto;
    display: flex;
    display: -ms-flexbox; /* IE10 */
    flex-wrap: wrap;
    -ms-flex-wrap: wrap; /* IE10 */
    background-color: #F000; /* 背景の色 */
    color: #333333; /* 文字の色 */
    text-align: center; /* 内容は中央配置 */
	margin-top:1.5%;
	margin-bottom:7.0%;
}
.col_4 img {
  max-width: 100%;
  height: auto;
  width:100%;
  border-radius: 50px;/* 画像の角丸 */
  margin-bottom:2.5%;
}
.col_4 h2 {
  font-size: 120%;
  max-width: 100%;
  height: auto;
  width:100%;
}
.col_4 p {
}
.col_4 > div{
	width: 25%;
	padding: 10px;
	margin-bottom:-2.5%;
}
@media screen and (max-width: 1090px) {
	.col_4 > div{
		width: 33.33333%;
	}
}
@media screen and (max-width: 480px) {
	.col_4 > div{
		width: 50%;
	}
	.col_4 > div img {
  max-width: 100%;
  height: auto;
  width:100%;
  border-radius: 15px;/* 画像の角丸 */
  margin-bottom:2.5%;
}
}

/*-----4カラム+スマホ2列 col_4w------*/
*, *:before, *:after {
	box-sizing: border-box;
}
.col_4w{
    width: auto;
    display: flex;
    display: -ms-flexbox; /* IE10 */
    flex-wrap: wrap;
    -ms-flex-wrap: wrap; /* IE10 */
    background-color: #FFF; /* 背景の色 */
    color: #333333; /* 文字の色 */
    padding: 0px;
}
.col_4w img {
    max-width: 100%;
    height: auto;
	border-radius: 30px;/* 画像の角丸 */
	margin: 1.5%;
}
.col_4w p {
  line-height: 1.6em
}
.col_4w > div{
	width: 25%;
	padding: 10px;
}
@media screen and (max-width: 1090px) {
	.col_4w > div{
		width: 50%;
	}
}
@media screen and (max-width: 480px) {
	.col_4w > div{
		width: 50%;
	}
}
/*---カードデザイン　上画像+マーク+下文章----------*/
*, *:before, *:after {
	box-sizing: border-box;
}
.card301 {
  width: 450px;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  padding: 20px;
  border: 1px solid #ccc;
  background: #fff;
}
.card301 h2 {
  font-size: 130%; 
  font-weight: 600;  
}
.card301__img {
	width: auto;
	margin-bottom:2.5%;
}
.card301__meta {
  display: flex;
  align-items: center;
}
.card301__cat {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 6px 12px;
  background: #ffb300;
  color: #fff;
  font-weight: bold;
  letter-spacing: 1px;
  font-size: 14px;
}
.card301__time {
  margin: 0 0 0 auto;
  font-size: 12px;
  color: #666;
}
.card301__ttl {
  font-size: 20px;
  font-weight: bold;
  text-align:left;
  margin: 0;
}
.card301__desc {
  font-size: 16px;
  text-align:left;
  margin: 0 0 0px 0;
}
@media screen and (max-width: 1090px) {
	.card301 > div{
		width: 100%;
	}
}
@media screen and (max-width: 480px) {
	.card301 > div{
		width: 100%;
	}
}


/*---カード型／上タイトル+中画像+下文章　PC３枠スマホ１枠-----*/
.flexbox301 {
  display: flex;
  flex-wrap: wrap;
  border: 1px solid #ddd;
  padding: 0.4em;
  margin: 0 0 2em;
}

.flexbox301 > div {
  background: #F3F0EA;
  padding: 1em;
  flex: 1 0 250px;
  margin: 0.4em;
}

.flexbox301 h4{
	font-size: 120%; 
	font-weight: 700; 
}

/*---カード型　左写真+右文章-----------------------*/
.Cardy12{
  margin: 16px auto 0;
  padding-left: 8px;
  padding-right: 8px;
  display: flex;
  flex-wrap: wrap;
}
.Cardy12-Item{
  width: 100%;
  display: flex;
  box-sizing: border-box;
  box-shadow: 1px 1px 2px 1px rgba(0, 0, 0, 0.06);
}
.Cardy12-Item:nth-child(n+2){
  margin-top: 8px;
}
.Cardy12-Item-ImgBox{
  max-width: 320px;
  width: 40%;
}
.Cardy12-Item-ImgBox-Img{
  width: 100%;
  padding-top: 62.5%;
}
.Cardy12-Item-Right{
  flex: 1;
  background: #fff;
}
.Cardy12-Item-Right-Headline{
  font-weight: bold;
  font-size: 16px;
}
.Cardy12-Item-Right-Text{
  margin-top: 8px;
  line-height: 1.8;
  font-size: 14px;
}


/*---バッジグループ　ブルー----------*/
.badge-group{
  margin: 5px;
  height: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}

.badge-item{
  margin-top: 10px;
  margin-right: 8px;
  border-radius: 4px;
  background: #4B96F5;
  box-shadow: 0 2px 2px rgba(0, 0, 0, .4);
  padding: 2px 8px;
  overflow: hidden;
  color: #fff;
  font-size: 12px;
  font-weight: bold;
}

/*---長方形枠の背景に配色　ブルー-----*/
.box-bordradius {
  width: 300px;
  height: 100px;
  line-height: 100px;
  background-color: green;
  border-radius: 100vh;
  color: #fff;
  text-align: center;
}
/*---文字に高さを指定------------*/
p.tx-line60 { line-height: 1.6em; }
/*<p class="tx-line60">文章が入る</p>*/

/*---文字に配色------------*/
/*<span class="tx-red">文章の色文字になる</span>*/
.tx-red {color:#F00;/*赤*/}
.tx-blue {color:#00F;/*青*/}
.tx-yellow {color:#FF0;/*黄色*/}
.tx-orange {color: #FF6600;/*黄色*/}
.tx-green {color:#008000;/*濃い緑*/}
.tx-lightgreen {color:#00C41C;/*明るいグリーン色*/}
.tx-lightgreenbold {color:#00B419; font-weight:bold;/*明るいグリーン色太字*/}
.tx-lime {color:#0F0;/*ライム*/}
.tx-aqua {color:#0FF;/*アクア*/}
.tx-pink {color:#F0F;/*ピンク*/}
.tx-purple {color:#800080;/*パープル*/}
.tx-navy {color:#000080;/*紺色*/}
.tx-maroon {color:#800000;/*茶色*/}

/*---文字の背景に配色　-----*/
.tx-bordrad-pk20 {
color:ff0000;
background-color:#FFCACA;/*ピンク*/
}
/*---文字の背景に配色　ブルー-----*/
.span tx-bordrad-bl20 {
  background-color: blue;/*ブルー*/
  border-radius: 20px 20px 20px 20px;;
}
/*---文字に蛍光ペンをひいたような配色　イエロー-----*/
.tx-backbrad-y70 {
	background-image: linear-gradient( transparent 20%, #FFFF77 60%, #FFFF55 100%);
}
/*---文字に蛍光ペンをひいたような配色　ライムグリーン-----*/
.tx-backbrad-lime70 {
	background-image: linear-gradient( transparent 30%, #99FF66 60%, #66FF99 100%);
}
/*---文字に蛍光ペンをひいたような配色　ピンク-----*/
.tx-backbrad-pink70 {
	background-image: linear-gradient( transparent 30%, #FF99FF 60%, #FF88FF 100%);
}
/*---文字に蛍光ペンをひいたような配色　ブルー-----*/
.tx-backbrad-blue70 {
	background-image: linear-gradient( transparent 30%, #88FFFF 60%, #77FFFF 100%);
}
/*---文字に蛍光ペンをひいたような配色　赤-----*/
.tx-backbrad-purple70 {
	background-image: linear-gradient( transparent 30%, #DCC2FF 60%, #C299FF 100%);
}

/*--------テキスト四角囲み-ブルー----------*/
.texticongre {
    padding: 0.2em 0.7em;
    font-size: 12px;
	font-weight: bold;
    color: #333;
    background-color: #FFE9B5;/*ブルー*/
    margin: 10px 5px 10px 0px;
    border-radius: 5px;
}
/*--------テキスト四角囲み-ブルー----------*/
.texticonb {
    padding: 0.2em 0.7em;
    font-size: 12px;
	font-weight: bold;
    color: #fff;
    background-color: #004CFF;/*ブルー*/
    border-radius: 5px;
}
/*--------テキスト四角囲み-ｓｋｙブルー----------*/
.texticonskyb {
    padding: 0.2em 0.7em;
    font-size: 12px;
	font-weight: bold;
    color: #fff;
    background-color: #0084FF;/*ブルー*/
    margin: 10px 5px 10px 0px;
    border-radius: 5px;
}
.texticonskyb-title {
    padding: 0.2em 0.7em;
    font-size: 12px;
	font-weight: bold;
    background: #FFF38A;
    text-align: center;
    color: #101E49;
    letter-spacing: 0.05em;
}
.texticonskyb-title_self {
    font-size: 14px;
    background: #FFCFEC;
    padding: 4px;
    text-align: center;
    color: #101E49;
    font-weight: bold;
    letter-spacing: 0.05em;
}

/*--------テキスト四角囲み-グリーン----------*/
.texticong {
    padding: 0.2em 0.7em;
    font-size: 12px;
	font-weight: bold;
	font-weight: bold;
    color: #fff;
    background-color: #421398;/*紫色明るい*/
    margin: 10px 5px 10px 0px;
    border-radius: 5px;
}
/*--------テキスト四角囲み-濃グリーン----------*/
.texticong2 {
    padding: 0.2em 0.7em;
    font-size: 12px;
	font-weight: bold;
    color: #fff;
    background-color: #331F5C;/*紫色*/
    margin: 10px 5px 10px 0px;
    border-radius: 5px;
}
/*--------テキスト四角囲み-赤----------*/
.texticonr {
    padding: 0.2em 0.7em;
    font-size: 12px;
	font-weight: bold;
    color: #fff;
    background-color: #FB0000;/*赤*/
    margin: 10px 5px 10px 0px;
    border-radius: 4px;
}
/*--------テキスト四角囲み-オレンジ----------*/
.texticonor {
    padding: 0.2em 0.7em;
    font-size: 12px;
	font-weight: bold;
    color: #fff;
    background-color: #F38F00;/*赤*/
    margin: 10px 5px 10px 0px;
    border-radius: 5px;
}
/*--------テキスト四角囲み-濃ピンク----------*/
.texticonpi {
    padding: 0.2em 0.7em;
    font-size: 12px;
	font-weight: bold;
    color: #fff;
    background-color: #EA00E9;/*赤*/
    margin: 10px 5px 10px 0px;
    border-radius: 5px;
}
/*--------テキスト四角囲み-パープル----------*/
.texticonpu {
    padding: 0.2em 0.7em;
    font-size: 12px;
	font-weight: bold;
    color: #fff;
    background-color: #7E00EA;/*赤*/
    margin: 10px 5px 10px 0px;
    border-radius: 5px;
}
/*---ボタン　ブルーに変更　お問い合わせ　電話-------------------*/
.button-blue {
  position: relative;
  display: inline-block;
  padding: 0.4em 2.0em;
  margin-bottom: 40px;
  font-size: 0.9em;
  font-weight: bold;
  color: #0074FF;
  text-decoration: none;
  user-select: none;
  border: 2px #03ADFF solid;
  box-shadow: inset #03ADFF 0 0 0 0;
  transition: 0.3s;
}

.button-blue:hover {
  color: #fff;
  box-shadow: inset #03ADFF 0 0 0 6em;
}

.button-blue02 {
  position: relative;
  display: inline-block;
  background-color: #03ADFF;/*ブルー*/
  padding: 0.4em 0.5em;
  margin-bottom: 3px;
  font-size: 115%;
  font-weight: bold;
  line-height:1.5;
  color: #FFFFFF;
  text-decoration: none;
  user-select: none;
  transition: 0.3s;
}

.button-blue02:hover {
  color: #0090D6;
  box-shadow: inset #FFEC43 0 0 0 6em;
}
.button-blue03 {
  position: relative;
  display: inline-block;
  background: linear-gradient(#FFF 0%, #EEE 100%);/*グレー*/
  border: solid 1px #CCC; /* 囲み罫線 */
  padding: 0.5em 0.8em;
  margin-bottom: 3px;
  font-size: 110%;
  font-weight: bold;
  line-height:1.5;
  color: #0066CC;
  text-decoration: none;
  user-select: none;
  transition: 0.3s;
}

.button-blue03:hover {
  color: #0090D6;
  background: linear-gradient(#FFF 0%, #FFF38A 100%);/*グレー*/
  border: solid 1px #FDE400; /* 囲み罫線 */
}

.btn-flat-yellblue {
  position: relative;
  display: inline-block;
  padding: 0.25em 0.8em;
  margin: 10px 2px 10px 0px;
  text-decoration: none;
  font-size: 80%;
  font-weight: bold;
  color: #FFF;
  background: #421398;
  user-select: none;
  border: 1px solid #421398;/*=紫色明るい=*/
  border-radius: 12px;
  transition: 0.4s ease;
}

.btn-flat-yellblue:hover {
  background: #FCF1D0;
  color: #421398;
  border: 1px solid #421398;/*=紫色明るい=*/
}
@media screen and (max-width: 480px) {
	.btn-flat-yellblue {
        font-size: 85%;
}



.btn-flat-silver {
  position: relative;
  display: inline-block;
  font-size: 95%;
  font-weight: bold;
  padding: 0.25em 0.8em;
  margin: 5px 5px 0px 0px;
  text-decoration: none;
  color: #fff;
  background: #331F5C;/* 濃い紫色色 */
  user-select: none;
  border: 1px solid #331F5C;/* 濃い紫色 */
  border-radius: 12px;
  transition: 0.4s ease;
}

.btn-flat-silver:hover {
  background: #FFF8BB;/* 明るい黄色 */
  color: #331F5C;/* 特別濃い紫色色 文字 */
  border: 1px solid #04A100;/* 明るい黄色 枠 */
}
/* -----四角形枠、紫色文字＋矢印-背景うすい黄色---- */
.btn-kadomaruyajirushi-gr {
  position: relative;
  display: inline-block;
  width:100%;
  font-size: 90%;
  font-weight: bold;
  text-align:center;
  padding: 4px 15px 4px 15px;
  margin: 10px 0px 10px 0px;
  text-decoration: none;
  color: #331F5C;
  background: #FFF8DC;
  border: solid 1.8px #6F4EB3;
}

.btn-kadomaruyajirushi-gr:hover {
  background: #331F5C;
  color: #FFF;
}
/* -----四角形枠、明るい紫色文字＋矢印-背景うすい黄色---- */
.btn-kadomaruyajirushi-purple {
  position: relative;
  display: inline-block;
  width:100%;
  font-size: 90%;
  line-height: 1.8;
  font-weight: bold;
  text-align:center;
  padding: 10px 15px 10px 15px;
  margin: 10px 0px 10px 0px;
  text-decoration: none;
  color: #333;
  background: #FFFBF0;
  border: solid 2px #FF8E00;
}

.btn-kadomaruyajirushi-purple:hover {
  background: #7B0096;
  color: #FFF;
}
/* -----上部角丸+アンダーライン-グリーン色---- */
.btn-kadomaruline-gr {
  position: relative;
  display: inline-block;
  font-weight: bold;
  padding: 8px 10px 5px 10px;
  text-decoration: none;
  color: #04A100;
  background: #FFFEDA;
  border-top: solid 1px #34E030;
  border-left: solid 1px #34E030;
  border-right: solid 1px #34E030;
  border-bottom: solid 4px #04A100;
  border-radius: 15px 15px 0 0;
  transition: .4s;
}

.btn-kadomaruline-gr:hover {
  background: #0ACF06;
  color: #FFF;
}
/* -----上部角丸+アンダーライン-オレンジ色---- */
.btn-kadomaruline-or {
  position: relative;
  display: inline-block;
  font-weight: bold;
  padding: 8px 10px 5px 10px;
  text-decoration: none;
  color: #FF8600;
  background: #FFF;
  border-top: solid 1px #FFC314;
  border-left: solid 1px #FFC314;
  border-right: solid 1px #FFC314;
  border-bottom: solid 4px #FFA000;
  border-radius: 15px 15px 0 0;
  transition: .4s;
}

.btn-kadomaruline-or:hover {
  background: #ffc25c;
  color: #FFF;
}



.kadomaru img {
	border-radius: 20px;/*画像角丸*/
}

.enkei img {
	border-radius: 90px;/*画像円形W180pxに対して*/
}

.center_box {
margin-bottom: 50px;
position: relative;
text-align: center;
}

.fukidashibox {/*-----吹き出し囲み罫-見出しタイトル-----*/
position: relative;
left: 100;
background-color: #fff;
padding: 5px;
border: 2px solid #1CD600;
color: #333;
text-align: center;
border-radius: 10px;/*画像角丸*/
}
.fukidashibox::before,
.fukidashibox::after {
content: '';
position: absolute;
border: 12px solid transparent;
top: 100%;
left: 5%;
}

.fukidashibox::before {
border-top: 20px solid #1CD600;
}

.fukidashibox::after {
margin-top: -4px;
border-top: 20px solid #fff;
}


/* 紫色#A701FC */


/*-----Googlemapレスポンシブ対応-----*/
.googlemap {
  width: 100%;
  position: relative;
  padding-top: 56.25%;
}

.googlemap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/*-----YouTube動画01-----*/
iframe {
  width: 100%; /* 任意の横幅を指定 */
  height: auto;
  aspect-ratio: 16/9;
}
.ytifra {
  width:100%; /* 任意の横幅を指定 */
  aspect-ratio: 16/9;
}
.ytifra iframe {
  width:100%;
  height:100%;
}
/*-----YouTube動画01end-----*/