@CHARSET "utf-8";

/*
Theme Name: e
Author URI: https://asafaga.com/
*/

/*---------------------------------------------------------*/
/* General */
/*---------------------------------------------------------*/
body {
    font-family: Helvetica, "游ゴシック",Meiryo, sans-serif, serif,"sans-serif", 'Lucida Grande','Hiragino Kaku Gothic ProN';
    font-size: 17px;
    color: black;
    padding: 0;
    margin: 0;
	height: 100%;
	width: 100%;
	overflow-x: hidden;
}
html,body {
     margin: 0;
     padding: 0;

}
@media screen and (max-width:760px) {
body {
	font-size: 16px;
}
}


/* 画像属性等 */
img {
	max-width: 100%;
	height: auto;
	-webkit-transition:all 0.25s ease-in-out;
	transition:all 0.25s ease-in-out;
	vertical-align: bottom;
}

figure {
    display: block;
	margin-block-start: 0.5em;
    margin-block-end: 0.5em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
}

figcaption {
    display: block;
	padding:5px 0;
}

svg {
    height: auto;
    width: 100%;
}


a {
    color: #1111cc;
	text-decoration: underline;
}
a img {
    border: none;
}
a:hover {
    color: #1111cc;
    text-decoration: none;
}

a:hover img.hoverIMG{
opacity:0.5;
filter:alpha(opacity=50);
-ms-filter: "alpha( opacity=50 )";
}

p {
    font-size: 18px;
    line-height: 1.6em;
}

div#container {
    margin: 0 auto;
    width: 100%;
    padding: 0;
    background-color: #f2f2f2;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
	overflow:hidden;
}
@media screen and (max-width:760px) {
div#container {

}
}


#header {
    display: block;
	background-color:#fff;
	margin-bottom:0;
	height:100%;
}
@media screen and (max-width:760px) {
#header {
}
}

div#main {
    display:block;
}
@media screen and (max-width:760px) {
div#main {
}	
}

.ie {
    background-color: #fff;
    overflow: hidden;
	max-width:1700px;
	min-width:760px;
	margin-left: auto;
	margin-right: auto;
	margin-top:0px;
	height:100%;
	padding:0px 0 0 0;
}
@media only screen and (max-width : 760px){
.ie {
	max-width:100%;
	min-width: 100%;	
    background-color: #fff;
    margin-top: 0px;   
    overflow: hidden;
	padding:0 10px;
}		
}

div#content {
    width: 70%;
    float: left;
    padding: 10px 0 0 0;
    margin: 10px 10px 10px 10px;
	min-height: 100vh;
}
@media screen and (max-width:760px) {
div#content {
    width: 100%;
    padding: 0;
    margin: 0px 0 0 0;
}
}

article.post {
	display: block;
	margin:0 10px;
}
@media only screen and (max-width : 760px){
article.post {
	margin:0 5px;
}	
}

div#sidebar {
    width: 26%;
    float: right;
    padding: 0 10px 0 0;
    margin: 5px;
}
@media screen and (max-width: 760px) {  
div#sidebar {
    width: 100%;
	padding: 0 5px;
    margin: 0 ;
	box-sizing: border-box;
}
}

.clr { clear:both; }

ul {
    display: block;
    list-style-type: disc;
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    padding-inline-start: 5px;
}


/*---------------------------------------------------------*/
/* Header */
/*---------------------------------------------------------*/
header {
	margin: 0px;
	padding: 0px 10px 0px 10px;
	background-color:#fff;
}
@media only screen and (max-width : 760px){
header {
	padding: 0px 0px 0px 0px;
}	
}

h1.top_page {
    margin: 5px 0 0 25px;
}
a.no_underline {
	text-decoration:none;
}

div#site_title_wrapper {
	float:left;
}

h1#site-title {
    font-size: 2.0em;
    margin: 15px 0 5px 0;
    color:#2ea7e0;
}
h1#site-title a {
    color: #2ea7e0;
}
h2#site-description {
    font-size: 1.2em;
    font-weight: bold;
    color: #555555;
    margin: 0 0 10px 0;
}


/*---------------------------------------------------------*/
/* Article's Header */
/*---------------------------------------------------------*/
h1.post_title {
	padding: 0.3em 0.5em 0.3em 0.8em;/*文字周りの余白*/
	color: #494949;/*文字色*/
	background: #f9f9f9;/*背景色*/
	border-left: solid 6px #FF0000;/*左線（実線 太さ 色）*/
	border-bottom: solid 3px #EEEEEE;/*左線（実線 太さ 色）*/
	font-size:24px;
}
@media only screen and (max-width : 760px){
h1.post_title {
	padding: 5px 10px;
}	
}

h2.post_title {
	padding: 0.3em 0.5em 0.3em 0.8em;/*文字周りの余白*/
	color: #494949;/*文字色*/
	background: #f9f9f9;/*背景色*/
	border-left: solid 6px #FF0000;/*左線（実線 太さ 色）*/
	border-bottom: solid 3px #EEEEEE;/*左線（実線 太さ 色）*/
}
@media only screen and (max-width : 760px){
h2.post_title {
	padding: 5px 10px;
}	
}

p.post-meta {
    color: #555;
    font-size: 1.0em;
    padding: 5px 0 5px 20px;
    margin: 0 0 3px 0;
    text-align: right;
}


h3 {
    display: block;
    font-size: 22px;
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    font-weight: bold;
}

h3.double_blue {
	position: relative;
	width: 100%;
	margin: 30px 0px 10px 0px;
	padding: 5px 15px;
	border-bottom: 2px solid #3fa9f5;
	font-size:22px;
}
@media only screen and (max-width : 760px){
h3.double_blue {
	margin-left: 0;
}	
}

h3.double_blue::before {/*疑似要素*/
	position: absolute;
	content: "";
	width: 100%;
	min-height: 100%;
	top: -12px;
	left: 0px;
	border-bottom: 1px solid #3fa9f5;
	padding: 0;
	margin: 8px 0px 0px 0px;
}

h2.orenge,h3.orenge,h4.orenge,h5.orenge {
	padding: 0.3em 0.5em 0.3em 0.8em;/*文字周りの余白*/
	color: #494949;/*文字色*/
	background: #f9f9f9;/*背景色*/
	border-left: solid 6px #FF0000;/*左線（実線 太さ 色）*/
	border-bottom: solid 3px #EEEEEE;/*左線（実線 太さ 色）*/
}

h4 {
	font-size:20px;
    display: block;
    margin-block-start: 1.33em;
    margin-block-end: 1.33em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    font-weight: bold;
}

h5 {
    display: block;
    font-size: 18px;
    margin-block-start: 1.67em;
    margin-block-end: 1.67em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    font-weight: bold;
}


h3.course {
  font-size: 30px;
  position: relative;
  overflow: hidden;
  padding: 1rem 2rem 1rem 130px;
  word-break: break-all;
  border-bottom: 3px solid #FF0000;
  border-radius: 12px 0 0 0;
}

h3.course span {
  font-size: 40px;
  font-size: 3.5rem;
  position: absolute;
  top: 5px;
  left: 0;
  display: block;
  padding: 3px 20px;
  color: #fff;
  border-radius: 10px 20px 0 10px;
  background: #FF0000;
}

@media only screen and (max-width : 760px){
h3.course {
	font-size: 21px;
	padding: 10px 5px 0px 65px;
}

h3.course span {
	font-size: 27px;
	font-size: 1.7rem;
  top: 5px;
  left: 0;
  padding: 3px 10px;
}
}

/*---------------------------------------------------------*/
/* Article post */
/*---------------------------------------------------------*/
div.post-content {
    padding: 0px 10px 10px 10px;
}
@media only screen and (max-width : 760px){
div.post-content {
    padding: 0px 0px 10px 0px;
}	
}

/*---------------------------------------------------------*/
/* アーカイブ post */
/*---------------------------------------------------------*/
div.archive-content {
    padding: 0;
    height: 100%;
    width: 100%;
    margin: 0;
}


/*---------------------------------------------------------*/
/* カテゴリー post */
/*---------------------------------------------------------*/
div.category-content {
    padding: 0;
	height: 100%;
	width: 100%;
	margin: 0 10px;
}
@media only screen and (max-width : 760px){
div.category-content {
	margin: 0 0px;
}	
}

/* ▼▼▼カテゴリーにあるアイキャッチ画像▼▼▼ */
/* リスト */
.category_01 {
	list-style: none;
	padding: 0;
	margin: 20px 0px;
}
@media only screen and (max-width : 760px){
.category_01 {
	list-style: none;
	padding: 0px;
	margin: 20px 0px;
}	
}

/* h2 */
h2.category_02 {
	font-size: 1.3em;
	padding: 0;
	margin: 5px 0px;
	font-weight:bold;
}


/* 画像 */
.category img {
	padding: 0;
	margin: 5px 20px 5px 10px;
	float:left;
}
@media only screen and (max-width : 760px){
.category img {
	margin: 0px 0px 20px 0px;
}	
}

/* ボックス */
.category {
	width:100%;
	padding: 0.5em 1em 3.5em 1em;
    color: #000;/*文字色*/
	background-color: #FFF;
    border-bottom: solid 1px #C0C0C0;/*線*/
}
@media only screen and (max-width : 760px){
.category {
	padding: 0.5em 1em 2.0em 1em;
}	
}

.category p {
	font-size:16px;
	padding: 0;
	margin: 0px 0px 20px 0px;
}
@media only screen and (max-width : 760px){
.category p {
}
}

.more_link {
	text-decoration:underline;
}	

a:hover.more_link {
	text-decoration:none;
}
/* ▲▲▲カテゴリーにあるアイキャッチ画像▲▲▲ */


/* ▼▼▼アイキャッチ画像の大きさ▼▼▼ */
.l-size {
	width:120px;
	height:auto;
}	
/* ▲▲▲アイキャッチ画像の大きさ▲▲▲ */


h1.cat_title {
    font-size: 1.5em;
	padding: 0.3em 0.5em 0.3em 0.8em;/*文字周りの余白*/
	color: #494949;/*文字色*/
	background: #f9f9f9;/*背景色*/
	border-left: solid 6px #FF0000;/*左線（実線 太さ 色）*/
	border-bottom: solid 3px #EEEEEE;/*左線（実線 太さ 色）*/
    margin: 0.83em 0;
}
@media only screen and (max-width : 760px){
h1.cat_title {
	padding: 5px 10px;
}	
}


/*---------------------------------------------------------*/
/* footer */
/*---------------------------------------------------------*/
#footer {
    font-size: 16px;
    width:100%;
    height: 100%;
    margin: 0px;
    background-color: #FF0000;
	padding:0px;
	color:#fff;
	margin-top: auto;	
}

p.foot {
	font-size:16px;
	text-align:center;
	padding:0 0 10px 0;
	margin:0;
}

/*
==================================================
フッターカスタマイズ
==================================================
*/
.footer-block-in {
    width: 33%;
    padding: 10px 10px 10px 50px;
    float: left;
	margin:0 ;
}
 
.footer-block-in > ul {
    padding: 5px;
    list-style-type: none;
    margin-bottom:10px;
}
 
.footer-block-in > ul ul {
    text-align: left;
    margin: 15px 0px 13px 0px; 
	padding: 0;
}
 
.footer-block:after{
    content: "";
    clear: both;
    display: block;
}
 
@media (max-width: 770px) {
.footer-block-in {
	width: 98%;
	padding: 10px 1%;
	float: none;
}
}

div.cat_img { margin: 0px 4px 4px 4px;}

/* ▼▼▼フッターのメニュー横並び▼▼▼ */
.f_navi{
	font-size:16px;
text-align: center;
	margin: 10px 0px;
}
@media screen and (max-width: 760px) {
.f_navi{
text-align: center;
	margin: 10px 0px 15px 0px;
}
}

.f_navi ul{
margin: 0 ;
padding: 1% 3% 1% 3%;
}
@media screen and (max-width: 760px) {
.f_navi ul{
margin: 0 ;
padding: 5px 0px 10px 0px;
}
}

.f_navi ul li{
	list-style: none;
	display: inline-block;
	width: 12%;
	min-width: 75px;
	margin:10px 0;
	vertical-align:bottom;
}
@media screen and (max-width: 760px) {
.f_navi ul li{
list-style: none;
display: inline-block;
width: 100%;
min-width: 35px;
}
}

.f_navi ul li a{
text-decoration: none;
color: #fff;
}
@media screen and (max-width: 760px) {
.f_navi ul li a{
text-decoration: none;
color:#fff;
}
}

.f_navi ul li.f_navi01 a{
color: #F33135;
}
@media screen and (max-width: 760px) {
.f_navi ul li.f_navi01 a{
color: #F33135;
}
}

.f_navi ul li a:hover{
text-decoration: underline;
}
@media screen and (max-width: 760px) {
.f_navi ul li a:hover{
}
}

.f_navi img{
    margin: 0 10px;
}

a.footer_01{
	color:#fff;
text-decoration: none;
}

a:hover.footer_01{
text-decoration: underline;
}
/* ▲▲▲フッターのメニュー横並び▲▲▲ */


/*---------------------------------------------------------*/
/* Sidebar */
/*---------------------------------------------------------*/
.sidebar-wrapper {
	margin:15px 0;
}
.sidebar-title {
	font-size: 22px;
	padding: 6px 0 6px 10px;
	margin: 20px 0 10px 0;
	color: #555;
	border-bottom: solid 1px #ccc;
}
.textwidget {
	padding: 0 0px;
}
#calendar_wrap {
	text-align: center;
}
#calendar_wrap table {
	margin-left: auto;
	margin-right: auto;
}
#calendar_wrap table a {
	text-decoration: underline;
	color: #2ea7e0;
}
#calendar_wrap table a:hover {
	background-color: #2ea7e0;
	color: #fff;
}
.sidebar-wrapper ul {
	list-style-type: none;
	padding: 0;
	margin: 0;
}
.sidebar-wrapper li {
	border-bottom: dotted 1px #FF0000;
	margin:10px 0 5px 0;
}
.sidebar-wrapper li a {
	display: block;
	color: #555;
	padding: 10px 0 10px 8px;
	text-decoration:none;
}
.sidebar-wrapper li a:hover {
    color: #aaaaaa;
}


/* コメント・トラックバック */
div#respond {
	margin:10px;
}
@media only screen and (max-width : 760px){
div#respond {	
	margin:5px;
}	
}

.tback {border: none;}
.tback h2{margin-bottom: 0; padding-bottom: 15px;}
.tback p {margin: 0 0 10px 10px;padding: 0;font-size: 12px; line-height: 1.6em;}
.comments{margin: 10px 0; border: none;}
.comments ul{list-style: none;margin: 0; color:#444; font-size: 100%;}
.comments ul li {margin-bottom: 10px;background: #FFF; padding: 12px;}
.comments ul li.depth-1{border-bottom: 1px dotted #CCC;margin-bottom: 12px;}
.comments ul.children {list-style: none;}
.comments p{padding: 0 10px 5px 20px; text-align: left;}
.comments form p{line-height: 1.8em; display: block;}
.comments label{font-weight: 600;display:block;}
.comments form p.comment-notes,.comments form p.form-allowed-tags{font-size: 100%;text-align: left;}
.comments .reply{width: 40px;height: 20px;margin-left: 20px;text-align: center;line-height: 20px;border: 1px solid #CCC;background: #FFF;display: block;}
.comments .reply a{color: #444;text-decoration: none;display: block;} 
.comments .reply a:hover{color: #FFF;background: #009CDE;} 
.comments h3 small{font-size: 114%;}
#author{width: 200px; height: 2em;}
#email{width: 200px; height: 2em;}
#url{width: 200px; height: 2em;}
#comment{width: 99%; height:100px;}
a#cancel-comment-reply-link {font-size: 92%; color: #009CDE;}
#submit	{margin:0; padding:2px 25px; cursor:pointer;}





/*---------------------------------------------------------*/
/* ナビゲーションメニュー */
/*---------------------------------------------------------*/
/* ▼▼▼ヘッダーのメニュー横並び（パソコン版）▼▼▼ */
#contact{
	text-align: right;	
	background-color:#fff;
	max-width:100%;
	min-width:100%;
}
@media screen and (max-width: 760px) {
#contact{
	text-align: center;
}
}

#contact ul{
	margin: 0;
	padding: 0;
}
@media screen and (max-width: 760px) {
#contact ul{
	padding: 10px 0px;
}
}

#contact ul li{
	list-style: none;
	display: inline-block;
	width: 15%;
	min-width: 100px;
	font-size:16px;
	margin: 10px 15px;
	padding: 0;	
}
@media screen and (max-width: 760px) {
#contact ul li{
	width: 18%;
	min-width: 35px;
}
}

.contact01 a {
	color: #000;
}

.contact01:hover {
	color: #aaaaaa;
}

.contact02 a {
	color: #fff;
}
.contact02 a:hover {
	color: #fff;
}

#contact img{
    margin: 0 10px 0px 10px;
}


/*---------------------------------------------------------*/
/* ナビゲーションメニュー */
/*---------------------------------------------------------*/
/* ▼▼▼ヘッダーのメニュー横並び（パソコン版）▼▼▼ */
#header_navi{
	text-align: right;	
	background-color:#fff;
	padding:0;
	margin:0;
}
@media screen and (max-width: 760px) {
#header_navi{
	text-align: center;
}
}

#header_navi ul{
	margin: 0px;
	padding: 0px;
}
@media screen and (max-width: 760px) {
#header_navi ul{
	padding: 10px 0px;
}
}

#header_navi ul li{
	list-style: none;
	display: inline-block;
	width: 6%;
	min-width: 70px;
	font-size:16px;	
	margin: 10px 15px;
	padding: 0;	
}
@media screen and (max-width: 760px) {
#header_navi ul li{
	width: 18%;
	min-width: 35px;
}
}

#header_navi ul li a{
	text-decoration: none;
	color: #333;
}
@media screen and (max-width: 760px) {
#header_navi ul li a{
}
}

#header_navi ul li.header_navi01 a{
	color: #F33135;
}
@media screen and (max-width: 760px) {
#header_navi ul li.header_navi01 a{

}
}

#header_navi ul li a:hover{
	color: #aaaaaa;
}
@media screen and (max-width: 760px) {
#header_navi ul li a:hover{

}
}

#header_navi img{
    margin: 0 10px 0px 10px;
}
/* ▲▲▲ヘッダーのメニュー横並び（パソコン版）▲▲▲ */



/* ▼▼▼ハンバーガーメニュー▼▼▼ */
#nav-drawer {
	position: relative;
	display: flex;
	margin: 0px -5px 0px 0px;
}
@media screen and (max-width: 960px) {
#nav-drawer {

}
}

/*チェックボックス等は非表示に*/
.nav-unshown {
	display:none;
}
@media screen and (max-width: 960px) {	
.nav-unshown {

}
}

/*アイコンのスペース*/
#nav-open {
	display: inline-block;
	width: 44px;
	height: 40px;
	vertical-align: middle;
	background-color: #fff;
	margin-left: auto;
	padding: 8px 18px 0px 18px;
}
@media screen and (max-width: 960px) {	
#nav-open {
	width: 100%;
	height: 45px;
	padding: 5px 28px 0px 18px;
}
}

/*ハンバーガーアイコンをCSSだけで表現*/
#nav-open span, #nav-open span:before, #nav-open span:after {
	position: absolute;
	right: 0.7%;
	height: 3px;/*線の太さ*/
	width: 33px;/*長さ*/
	border-radius: 3px;
	background: #555;
	display: block;
	content: '';
	cursor: pointer;
}
@media screen and (max-width: 960px) {		
#nav-open span, #nav-open span:before, #nav-open span:after {
    right: 1.9%;
}
}

#nav-open span:before {
	bottom: -12px;
}
@media screen and (max-width: 960px) {		
#nav-open span:before {

}
}

#nav-open span:after {
	bottom: -24px;
}
@media screen and (max-width: 960px) {		
#nav-open span:after {

}
}

@media only screen and (max-width : 960px){
#nav-open p {
    position: absolute;
    left: 1.9%;
    width: 100%;
    display: block;
    content: '';
    cursor: pointer;
	margin: 0;
	font-size: 20px;
	font-weight: bold;
}	
}

/*閉じる用の薄黒カバー*/
#nav-close {
	display: none;/*はじめは隠しておく*/
	position: fixed;
	z-index: 99;
	top: 0;/*全体に広がるように*/
	right: 0;
	width: 100%;
	height: 100%;
	background: black;
	opacity: 0;
	transition: .3s ease-in-out;
}
@media screen and (max-width: 960px) {		
#nav-close {

}
}

/*中身*/
#nav-content {
	overflow: auto;
	position: fixed;
	top: 0;
	right: 0%;
	z-index: 9999;/*最前面に*/
	width: 90%;/*右側に隙間を作る（閉じるカバーを表示）*/
	max-width: 330px;/*最大幅（調整してください）*/
	height: 100%;
	background: #fff;/*背景色*/
	transition: .3s ease-in-out;/*滑らかに表示*/
	-webkit-transform: translateX(205%);
	transform: translateX(205%);/*左に隠しておく*/
	padding:50px 50px 50px 50px;
}
@media screen and (max-width: 960px) {		
#nav-content {
	max-width: 230px;/*最大幅（調整してください）*/
	padding:10px 10px 10px 20px;
}
}

/*チェックが入ったらもろもろ表示*/
#nav-input:checked ~ #nav-close {
	display: block;/*カバーを表示*/
	opacity: .5;
}
@media screen and (max-width: 960px) {		
/*チェックが入ったらもろもろ表示*/
#nav-input:checked ~ #nav-close {

}
}

#nav-input:checked ~ #nav-content {
	-webkit-transform: translateX(0%);
	transform: translateX(0%);/*中身を表示（右へスライド）*/
	box-shadow: 6px 0 25px rgba(0,0,0,.15);
}
@media screen and (max-width: 960px) {		
#nav-input:checked ~ #nav-content {

}	
}

#nav-drawer ul li {
	text-align:left;
}

#nav-drawer ul li a{
	text-decoration: none;
	color: #333;
}

#nav-drawer ul li a:hover{
	color: #aaaaaa;
	text-decoration: underline;
}
/* ▲▲▲ハンバーガーメニュー▲▲▲ */



/* ▼▼▼ハンバーガーメニューの中のSNSボタン▼▼▼ */
.sns_button {
	position: relative; 
	overflow: hidden; 
}
.sns_button ul {
	position: relative;
	left: 50%;
	float: left;
}
.sns_button ul li {
	position: relative;
	left: -50%;
	float: left;
}
.sns_button img {
	margin: 0px 5px;
}
/* ▲▲▲ハンバーガーメニューの中のSNSボタン▲▲▲ */



/* ▼▼▼ハンバーガーメニューのナビゲーション（レスポンシブ対応）▼▼▼ */
#hamburger{
    width: 100%;	
}	
#hamburger ul{
    padding: 0;
    margin-top: 0px;
}
@media screen and (max-width: 960px) {
/* 760px以下は3列 */
#hamburger ul{
    margin-top: 20px;
}
}

#hamburger li{
	font-size: 20px;
    padding:10px 0;
    margin: 15px 0px;
    box-sizing:border-box;
    display: block;
    text-align: center;
}
@media screen and (max-width: 960px) {
#hamburger li{
	font-size: 17px;
    margin: 5px 0px;
}
}
/* ▲▲▲ハンバーガーメニューのナビゲーション（レスポンシブ対応）▲▲▲ */



/* ▼▼▼ハンバーガーメニューの固定▼▼▼ */
.fixed {
    position: fixed;
    top: 0;
    padding: 0;
    width: 100%;
    z-index: 1000;
}
/* ▲▲▲ハンバーガーメニューの固定▲▲▲ */







/* ▼▼▼パソコンとスマホでスライドショーの表示内容を切り替え（スマホ　760px）▼▼▼ */
.pc_display {
	display:block;
	margin:0;
}
.sp_display {
	display:none;
}
@media only screen and (max-width : 760px){
.pc_display {
	display:none;
}
.sp_display {
	display:block;
}
}
/* ▲▲▲パソコンとスマホでスライドショーの表示内容を切り替え（スマホ　760px）▲▲▲ */




/* ▼▼▼パソコンとスマホでスライドショーの表示内容を切り替え（スマホ　960px）▼▼▼ */
.pc_display_01 {
	display:block;
	margin:0;
}
.sp_display_01 {
	display:none;
}
@media only screen and (max-width : 960px){
.pc_display_01 {
	display:none;
}
.sp_display_01 {
	display:block;
}
}
/* ▲▲▲パソコンとスマホでスライドショーの表示内容を切り替え（スマホ　960px）▲▲▲ */


.btn_blue {
	width:100%;
	position: relative;
	display: inline-block;
	padding: 0.1em 0.5em;
	text-decoration: none;
	background: #3fa9f5;/*色*/
	border: solid 1px #0f9ada;/*線色*/
	border-radius: 4px;
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
	text-align:center;
	color:#fff;
}

.btn_blue a {
	color:#fff;	
}

.btn_blue:hover {
  background-color: #fff;
	border:solid 1px #59b1eb;
	color:#000;
}

.btn_blue:active {
	border: solid 1px #03A9F4;
	box-shadow: none;
	text-shadow: none;
}

.box2 {
	float:right;
	width:200px
}

.box3 {
    padding: 0.8em 1em 2em 1em;
    margin: 2em 0;
	color: #000;/*文字色*/
    background: #FFF;
    border: solid 1px #C0C0C0;/*線*/
    border-radius: 10px;/*角の丸み*/
}
.box3 p {
	margin: 20px 5px; 
    padding: 0;
	line-height:1.0em;
}


.double {
	position: relative;
	width: 350px;
	margin: 0 auto;
	padding: 15px;
	text-align: center;
	border-bottom: 2px solid #E73820;
	font-size:40px;
}
@media only screen and (max-width : 480px){
.double {
	width: 300px;
	font-size:30px;
}	
}

.double::before {/*疑似要素*/
	position: absolute;
	content: "";
	width: 100%;
	min-height: 100%;
	top: -10px;
	left: 0px;
	border-bottom: 1px solid #E73820;
	padding: 0;
	margin: 8px 0px 0px 0px;
}


/* ▼▼▼トップページの最新の投稿を表示（アイキャッチ画像の大きさ指定）▼▼▼ */
.ileft {
	width:300px;
height:200px;
}

@media only screen and (max-width : 760px){
.ileft {
	width:100%;
height:auto;
}
}
/* ▲▲▲トップページの最新の投稿を表示（アイキャッチ画像の大きさ指定）▲▲▲ */


/* ▼▼▼タグ一覧ページの投稿を表示（アイキャッチ画像の大きさ指定）▼▼▼ */
.itag {
	width:220px;
	height:150px;
}
/* ▲▲▲タグ一覧ページの投稿を表示（アイキャッチ画像の大きさ指定）▲▲▲ */


/* ▼▼▼トップページの最新の投稿を表示　アイキャッチ画像▼▼▼ */
/* リスト */
.new_01 {
	list-style: none;
	padding: 0px;
	margin: 15px 0px;
}
@media only screen and (max-width : 760px){
.new_01 {

}	
}

/* h5 */
.new_02 {
	font-size:1.3em;
	font-weight:bold;
	padding: 0;
	margin: 15px 0 0 0;
}
@media only screen and (max-width : 760px){
.new_02 {
	font-size:1.2em;
	margin: 10px 0 0 0;
}	
}

.new_03 {
	font-size:20px;
	font-weight:bold;
	padding: 0;
	margin: 0;
}


/* 画像 */
.new img {
	float: left;
	padding: 0;
	margin: 5px 20px 5px 10px;
}
@media only screen and (max-width : 760px){
.new img {
	margin: 5px 0px 15px 0px;
}	
}

/* ボックス */
.new {
	width:100%;
	padding: 0.5em 1em 1.0em 1em;
    color: #000;/*文字色*/
    background-color: #FFF;
    border-bottom: solid 1px #C0C0C0;/*線*/
}
@media only screen and (max-width : 760px){
.new {
	padding: 0.5em 0em;
}	
}

.new p {
	font-size:16px;
	padding: 0;
	margin: 20px 0px;
}
@media only screen and (max-width : 760px){
.new p {
	font-size:15px;
}	
}

.back_05 {
    padding: 0px 19px;
    margin: 2em 0;
    color: #2c2c2f;
    background: #fff;
}
@media only screen and (max-width : 960px){
.back_05 {
	    margin: 0em 0;
	padding: 0px 5px;
}	
}
/* ▲▲▲トップページの最新の投稿を表示　アイキャッチ画像▲▲▲ */


.front_01 {
	font-size:28px;
	font-weight:bold;
	padding: 0.3em 0.5em 0.3em 0.8em;/*文字周りの余白*/
	color: #494949;/*文字色*/
	background: #f9f9f9;/*背景色*/
	border-left: solid 6px #FF0000;/*左線（実線 太さ 色）*/
	border-bottom: solid 3px #EEEEEE;/*左線（実線 太さ 色）*/
}
@media only screen and (max-width : 960px){
.front_01 {

}	
}
@media only screen and (max-width : 480px){
.front_01 {
	font-size:18px;
}	
}


/* ▼▼▼画像横並び（スマホだと列が変わる）▼▼▼ */
*, *:before, *:after {
	box-sizing: border-box;
}

.col_2 {
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
}
.col_2 > div {
	width: 50%;
	padding: 8px;
}
@media screen and (max-width: 960px) {
.col_2 > div {
		width: 100%;
}
}
@media screen and (max-width: 480px) {
.col_2 > div {

}
}

.col_3 {
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
}
.col_3 > div {
	width: 33.33333%;
	padding: 10px;
}
@media screen and (max-width: 960px) {
.col_3 > div {
		width: 50%;
		padding: 5px 2px;
}
}
@media screen and (max-width: 480px) {
.col_3 > div {
		width: 100%;
		padding: 5px 7px;		
}
}

p.consultation {
	font-size:1.0em
}	
@media only screen and (max-width : 480px){
p.consultation {
	font-size:1.2em
}	
}	
	

.col_4 {
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
}
.col_4 > div {
	width: 25%;
	padding: 5px;
	text-align: center;	
}
@media screen and (max-width: 960px) {
.col_4 > div {
	width: 50%;
}
}
@media screen and (max-width: 480px) {
.col_4 > div {

}
}

/* ▲▲▲画像横並び（スマホだと列が変わる）▲▲▲ */




.box1 {
    padding: 0em;
    margin: 0em;
    border: solid 1px #C0C0C0;
}
.box1 p {
    margin: 10px; 
    padding: 0;
	text-align:center;
}


/* ▼▼▼アーカイブにあるアイキャッチ画像▼▼▼ */
h1.archive_title {
	font-size:1.5em;
	padding: 0.3em 0.5em 0.3em 0.8em;/*文字周りの余白*/
	color: #494949;/*文字色*/
	background: #f9f9f9;/*背景色*/
	border-left: solid 6px #FF0000;/*左線（実線 太さ 色）*/
	border-bottom: solid 3px #EEEEEE;/*左線（実線 太さ 色）*/
	margin: 0.83em 0;
}
@media only screen and (max-width : 760px){
h1.archive_title {
	padding: 5px 10px;
}	
}


h2.archive_title {
	font-size: 1.2em;
	padding: 0;
	margin: 20px 0px;
}

/* リスト */
.archive_01 {
	list-style: none;
	padding: 0;
	margin: 20px 0px;
}
@media only screen and (max-width : 760px){
.archive_01 {
	list-style: none;
	padding: 0;
	margin: 20px 5px;
}	
}

/* h5 */
.archive_02 {
	font-size:16px;
	padding: 0;
	margin: 0;	
}
@media only screen and (max-width : 760px){
.archive_02 {
	
}	
}

/* 画像 */
.archive img {
	float: left;
	padding: 0;
	margin: 5px 20px 5px 10px;
}
@media only screen and (max-width : 760px){
.archive img {

}	
}

/* ボックス */
.archive {
	width:100%;
	padding: 0.5em 1em 1.5em 1em;
    font-weight: bold;
    color: #000;/*文字色*/
    background-color: #FFF;
    border-bottom: solid 1px #C0C0C0;/*線*/
}
@media only screen and (max-width : 760px){
.archive {
	padding: 0.5em 0.5em 2.0em 0.5em;
}	
}

.archive p {
	font-size:12px;
	padding: 0;
	margin: 20px 0px;
}
@media only screen and (max-width : 760px){
.archive p {

}	
}
/* ▲▲▲アーカイブにあるアイキャッチ画像▲▲▲ */


/*
==================================================
目次タグ
==================================================
*/
.rnd1{
	padding: 15px;
	margin: 15px auto;
	line-height: 30px;
}

.rbox2 {
	background-color: #FFF;
	border: 2px solid #bbb;
	border-radius: 15px;
}


.jump {
   margin-top:147px;
   padding-top:47px;
}

/*
==================================================
ジャンプ先を変更する
==================================================
*/

#a,#b,#c,#d,#e,#f,#g,#h,#i,#j,#k,#l,#m,#n  {
	margin-top:-120px;
	padding-top:120px;
}

* {

}

table {
    max-width: 100%;	
	width: 100%;
	border-spacing: 0px;
	border-collapse: collapse;
	margin:20px 0px;
	text-indent: initial;
    display: table;
}
@media only screen and (max-width : 760px){
table {
}
}

th{
	border: solid 1px #aaaaaa;	
	padding: 15px 10px;
	background: #f7f7f7;
	text-align:center;
}

@media only screen and (max-width : 760px){
table th, table td {
    padding: 10px;
    font-size: 0.8em;
}
}

td{
	border: solid 1px #aaaaaa;	
	padding: 15px 10px;
	text-align: left;
	vertical-align: top;
    box-sizing: border-box;
}

tbody {
    display: table-row-group;
    vertical-align: middle;
    border-color: inherit;
}
/* ▲▲▲表▲▲▲ */

.center_img {
	text-align : center;
}




/* ▼▼▼トップページのスライドショー▼▼▼ */
.Box{ height: 100%; }

.swiper-slide{ height: auto; }

.swiper-container{
    width: 100%;
	margin:55px 0 0px 0;
	position: relative;
}

.swiper-pagination-bullet {
	margin:20px 0;
}
/* ▲▲▲トップページのスライドショー▲▲▲ */


/* ▼▼▼トップページの地図（SVG画像）▼▼▼ */
      .cls-1 {
        fill: #a3d9ef;
      }

      .cls-1, .cls-10, .cls-11, .cls-13, .cls-7, .cls-8, .cls-9 {
        stroke: #fff;
        stroke-width: 0.75px;
      }

      .cls-1, .cls-10, .cls-11, .cls-13, .cls-3, .cls-4, .cls-7, .cls-8, .cls-9 {
        stroke-miterlimit: 10;
      }

.cls-10 {
	 fill:#ee9c20
}
      .cls-2 {
        fill: #fff;
      }

      .cls-3 {
        fill: #ee9c20;
      }

      .cls-3, .cls-4 {
        stroke: #ee9c20;
      }

      .cls-4 {
        fill: none;
      }

      .cls-5 {
        font-size: 21px;
      }

      .cls-5, .cls-6 {
        fill: #231815;
        font-family: TBCineRGoStd-Medium-90ms-RKSJ-H, TBCineRGothic Std;
      }

      .cls-6 {
        font-size: 14px;
      }

      .cls-7 {
        fill: #e2b9d6;
      }

      .cls-8 {
        fill: #f9cc95;
      }

      .cls-9 {
        fill: #ee8383;
      }

      .cls-10 {
        fill: #f5ed4a;
      }

      .cls-11 {
        fill: #add164;
      }

      .cls-12 {
        fill: #f6b751;
      }

      .cls-13 {
        fill: #f6b751;
      }

#aki-muroto path:hover {
fill: #d0ebf6;
}

#monobe path:hover {
fill: #f9e4ef;
}

#reihoku path:hover {
fill: #fce1c6;
}

#kochi path:hover {
fill: #f4aeaf;
}

#niyodo path:hover {
fill: #f7f397;
}

#okushimanto path:hover {
fill: #d7e69d;
}

#shimanto-ashizuri path:hover {
fill: #fbe2b4;
}
/* ▲▲▲トップページの地図（SVG画像）▲▲▲ */

.event_icatch img {
	float: left;
	padding: 0;
	margin: 5px 20px 5px 10px;
}
.event_icatch {
	width:150px
}
.css-events-list table.events-table td {
    padding: 10px !important;
}


/*
==================================================
レスポンシブ対応　グリッドレイアウト
==================================================
*/

.box_1 {
padding:0 10px;
margin:10px 0;
}
.grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}
.item {
  border-radius: 10px;
  background: #f5f5f5;
  padding: 10px 10px 5px 10px;
}
.item img {
margin: 0 auto;
display: block;
}
.tag p {
  text-align: left;
	margin:10px;
	font-size:16px;
}


/* ▼▼▼表（観光スポットの情報詳細）レスポンシブ▼▼▼ */
.guide {
 width: 100%;
 text-align: center;
 border-collapse: collapse;
 border-spacing: 0;
 background: #f5f5f5;
 color: #000;
	table-layout: auto;
}
.guide th {
 padding: 10px;
 background: #ffefd5;
 border: solid 2px #ffffff;
}
.guide td {
 padding: 10px;
 border: solid 2px #ffffff;
}
/* ▲▲▲表（観光スポットの情報詳細）レスポンシブ▲▲▲ */


/* ▼▼▼カテゴリーの記事一覧のページネーション▼▼▼ */
.pagination {
  clear: both;
  padding: 20px 0;
  position: relative;
  font-size: 14px;
  line-height: 1em;
        text-align: center;
}
.pagination-box {
  display: inline-block;
}
.pagination span, .pagination a {
  display: block;
  float: left;
  margin: 2px 2px 2px 0;
  padding: 10px 14px 10px 14px;
  text-decoration: none;
  width: auto;
  color: #fff; /* 通常の文字色 */
  background: #FF0000; /* 通常の背景色 */
  border-radius: 50%; /* 角を丸くして円形に */
}
.pagination span.page-of {
  background: none;
  color: #000;
}
.pagination a:hover{
  color: #000; /* マウスホバー時の文字色 */
  background: #EEEEEE; /* マウスホバー時の背景色 */
}
.pagination .current{
  padding: 10px 14px 10px 14px;
  color: #000; /* 現在のページの文字色 */
  background: #EEEEEE; /* 現在のページの背景色 */
}
@media only screen and (max-width: 413px) {
.pagination {
  font-size: 12px;
  line-height: 12px;
}
.pagination span, .pagination a {
  padding: 7px 10px 7px 10px;
}
.pagination .current{
  padding: 7px 10px 7px 10px;
}
}
/* ▲▲▲カテゴリーの記事一覧のページネーション▲▲▲ */


/*
==================================================
YouTubeの大きさを100％にする（レスポンシブ）
==================================================
*/
.youtube {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.youtube iframe {
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 760px) {
.youtube {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.youtube iframe {
  width: 100%;
  height: 100%;
}
}

/* ▼▼▼ページのトップに戻る（右下のボタン）▼▼▼ */
#pagetop {
    position:fixed;
    right:10px;
    bottom:-20px;
    cursor:pointer;
    z-index: 10;
}
/* ▲▲▲ページのトップに戻る（右下のボタン）▲▲▲ */




/* ▼▼▼SNSシェアボタン▼▼▼ */
.fa-hatena:before {
  font-family: Verdana;
  font-weight: bold;
  content: 'B!';
}
 
.share {
  margin-top: 20px;
  margin-bottom: 40px;
}
 
.share ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
 
.share ul:after {
  display: block;
  clear: both;
  content: '';
}
 
.share li {
  float: left;
  width: 25%;
  margin: 0;
  margin-top: 15px;
}
 
.share li i {
    font-size: 1.3em;
    padding-top: 3px;
  }
  .share li span {
    display: none;
  }
.share li a {
  font-size: 14px;
  display: block;
  padding: 10px;
  text-align: center;
  text-decoration: none;
  color: #fff;
}
 
.share li a:hover {
  opacity: .8;
}
 
.share li a:visited {
  color: #fff;
}
 
.tweet a {
  background-color: #55acee;
}
 
.facebook a {
  background-color: #315096;
}
 
.pocket a {
  background-color: #dd4b39;
}
 
.hatena a {
  background-color: #008fde;
}
 
@media(max-width: 599px) {
  .share li {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 3px;
  }
  .share li i {
    font-size: 1.3em;
    padding-top: 3px;
  }
  .share li span {
    display: none;
  }
}
/* ▲▲▲SNSシェアボタン▲▲▲ */


/* ▼▼▼パン屑リスト▼▼▼ */
#breadcrumb {
	margin: 10px 0 0 20px;
}
@media only screen and (max-width : 760px){
#breadcrumb {
	margin: 10px 0 0 10px;
}
}
/* ▲▲▲パン屑リスト▲▲▲ */

@media only screen and (max-width : 760px){
label {
	width:100%:
}
}

/* ▼▼▼カテゴリーの色付け▼▼▼ */
.uncategorized{
  background:#8A2BE2;
	padding:0px 2px 1px 2px;
	margin:0 2px;
}

.eat{
  background:#eb7b00;
	padding:2px;
	padding:0px 2px 1px 2px;
	margin:0 2px;
}

.play{
  background:#ed3131;
	padding:0px 2px 1px 2px;
	margin:0 2px;
}

.health{
  background:#1E90FF;
	padding:0px 2px 1px 2px;
	margin:0 2px;
}

.history{
  background:#8A2BE2;
	padding:0px 2px 1px 2px;
	margin:0 2px;
}

.connect{
  background:#FF9900;
	padding:0px 2px 1px 2px;
	margin:0 2px;
}

.work{
  background:#3366CC;
	padding:0px 2px 1px 2px;
	margin:0 2px;
}

.kochi{
  background:#ee8383;
	padding:0px 2px 1px 2px;
	margin:0 2px;
}

.niyodo{
  background:#ffd700;
	padding:0px 2px 1px 2px;
	margin:0 2px;
}

.okushimanto{
  background:#add164;
	padding:0px 2px 1px 2px;
	margin:0 2px;
}

.shimanto{
  background:#f6b751;
	padding:0px 2px 1px 2px;
	margin:0 2px;
}

.reihoku{
  background:#e9967a;
	padding:0px 2px 1px 2px;
	margin:0 2px;
}

.monobe{
  background:#e2b9d6;
	padding:0px 2px 1px 2px;
	margin:0 2px;
}

.aki{
  background:#a3d9ef;
	padding:0px 2px 1px 2px;
	margin:0 2px;
}

.new_04 {
	text-align:right;
	margin:10px 2px 0 2px;
}

.new_04 a {
	font-size:14px;
	color: #fff;
	text-decoration:none;
	text-align:right;
}

.new_05 {
	text-align:left;
	margin:5px 0 0 0;
}

@media only screen and (max-width : 760px){
.new_05 {
	text-align:left;
	margin:15px 0 0 0;
}
}

.new_05 {
	text-align:left;
}

.new_05 a {
	font-size:14px;
	color: #fff;
	text-decoration:none;
	text-align:right;
}
/* ▲▲▲カテゴリーの色付け▲▲▲ */


/* ▼▼▼reCAPTCHAボタンを表示させない▼▼▼ */
.grecaptcha-badge { visibility: hidden; }
/* ▲▲▲reCAPTCHAボタンを表示させない▲▲▲ */











/*
==================================================
口コミ体験談　左
==================================================
*/

.balloon1 {
    width: 100%;
    margin: 1.5em 0;
    overflow: hidden;
}

.balloon1 .faceicon1 {
    float: left;
    margin-right: -90px;
    width: 80px;
}

.balloon1 .faceicon1 img{
    width: 100%;
    height: auto;
    border: solid 3px #FFF0F5;
    border-radius: 50%;
}

.balloon1 .chatting1 {
    width: 100%;
}

.says1 {
    display: inline-block;
    position: relative; 
    margin: 5px 0 0 105px;
    padding: 17px 13px;
    border-radius: 12px;
    background: #FFF0F5;
}

.says1:after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 18px; 
    left: -24px;
    border: 12px solid transparent;
    border-right: 12px solid #FFF0F5;
}

.says1 p {
    margin: 0;
    padding: 0;
    font-size: 15px;	
}

/*
==================================================
口コミ体験談　右
==================================================
*/

.balloon2 {
    width: 100%;
    margin: 1.5em 0;
    overflow: hidden;
}

.balloon2 .faceicon2 {
    float: right;
    margin-left: -90px;
    width: 80px;
}

.balloon2 .faceicon2 img{
    width: 92%;
    height: auto;
    border: solid 3px #D7EEFF;
    border-radius: 50%;
}

.balloon2 .chatting2 {
    width: 100%;
}

.says2 {
    display: inline-block;
    position: relative; 
    margin: 5px 105px 0 0px;
    padding: 17px 13px;
    border-radius: 12px;
    background: #D7EEFF;	
}

.says2:after {
	content: "";
	position: absolute;
	top: 18px;
	right: -24px;
	border: 12px solid transparent;
	border-left: 14px solid #D7EEFF;
}

.says2 p {
    margin: 0;
    padding: 0;
    font-size: 15px;	
}


/*
==================================================
吹き出し　灰色枠　右
==================================================
*/

.balloon61 {
    width: 100%;
    margin: 1.5em 0;
    overflow: hidden;
}

.balloon61 .faceicon61 {
    float: right;
    margin-left: -90px;
    width: 80px;
}

.says61 {
    position: relative; 
    margin: 0px 105px 0px 0px;
    padding: 3px 15px 3px 15px;
    border-radius: 6px 6px 6px 6px;
    border: solid 1px #999999;
    background-color: #fff;
}

.says61 p {
    margin: 7px 0px 7px 5px; 
	padding: 3px 3px 3px 3px;
    font-size: 1.05em;
    line-height: 1.8em;
}

.says61:before {
	content: "";
	position: absolute;
	top: 30px;
	right: -23px;
 	margin-top: -8px;
	border: 12px solid transparent;
	border-left: 12px solid #fff;
 	z-index: 2;
}

.says61:after {
    content: "";
    position: absolute;
    top: 33px;
    right: -24px;
    margin-top: -11px;
    border: 12px solid transparent;
    border-left: 12px solid #999999;
    z-index: 1;
}

/*
==================================================
吹き出し　灰色枠　左
==================================================
*/

.balloon62 {
    width: 100%;
    margin: 1.5em 0;
    overflow: hidden;
}

.balloon62 .faceicon62 {
    float: left;
    margin-right: -90px;
    width: 80px;
}

.balloon62 .chatting62 {
    width: 100%;
}

.says62 {
    position: relative; 
    margin: 0px 0px 0px 105px;
    padding: 10px 10px;
    border-radius: 6px 6px 6px 6px;
    border: solid 1px #999999;
}

.says62:before {
	content: "";
	position: absolute;
	top: 40px;
	left: -24px;
 	margin-top: -12px;
	border: 12px solid transparent;
	border-right: 12px solid #fff;
 	z-index: 2;
}

.says62:after {
	content: "";
	position: absolute;
	top: 40px;
	left: -28px;
 	margin-top: -14px;
	border: 14px solid transparent;
	border-right: 14px solid #999;
 	z-index: 1;
}

.says62 p {
    margin: 7px 0px 7px 5px; 
	padding: 3px 0px 3px 0px;
    font-size: 1.0em;
    line-height: 1.8em;	
}





/*
==================================================
ボックス８
==================================================
*/
.box8 {
    position: relative;
    margin: 25px 0px 25px 0px;
    padding: 25px 10px 7px;
    border: solid 2px #FFA500;
}
.box8 .box-title {
    position: absolute;
    display: inline-block;
    top: -2px;
    left: -2px;
    padding: 9px 9px 9px 9px;
    height: 40px;
    line-height: 25px;
    vertical-align: middle;
    font-size: 19px;
    background: #FFA500;
    color: #ffffff;
    font-weight: bold;
}
.box8 p {
    padding: 15px 20px;
    margin: 0;
}

/*
==================================================
ボックス15
==================================================
*/
.box15 {
    padding: 0.5em 0.5em 0.5em 0.7em;
    margin: 1em 0;
    color: #2c2c2f;
    background: #F5F5F5;/*背景色*/
    border-left: solid 7px #FFD700;/*左線*/
    border-right: solid 7px #FFD700;/*右線*/	
}
.box15 p {
    margin: 20px 0px 20px 0px;
    padding: 0px 5px 0px;
}

/*
==================================================
ボックス２２　女性の手順で使う
==================================================
*/
.box22 {
    position: relative;
    padding: 0.5em 0.7em;
    margin: 1em 0;
    background: #FFF5EE;
    color: #5c98d4;
    font-weight: bold;
  font-size: 19px;	
  color: #555;
}

.box22:after{
    position: absolute;
    content: '';
    top: 100%;
    left: 50%;
    border: 15px solid transparent;
    border-top: 15px solid #FFF5EE;
    width: 0;
    height: 0;
}

.box22 p {
	margin: 0;
	padding: 0;
    font-weight: bold;
    text-align: center;	
}

/*
==================================================
ボックス２３　女性の手順で使う最後
==================================================
*/
.box23 {
  position: relative;
  display: inline-block;
  margin: 0em 0 1.5em 0;
  padding: 7px 10px;
  min-width: 100%;
  max-width: 100%;
  color: #555;
  font-size: 19px;
  box-sizing: border-box;
  border-radius: 5px;
  background: #FFF5EE;	
}

.box23 p {
	margin: 0;
	padding: 0;
    font-weight: bold;	
    text-align: center;	
}

/*
==================================================
ボックス２４　モデルコースで使う
==================================================
*/
.box24 {
  position: relative;
  padding: 1.0rem 2rem;
  border-bottom: 3px solid #d8d8d8;
  background: #fff;
  margin:50px 0;
  text-align:center;
  font-size:20px;
  font-weight:bold;
}

.box24:before {
  position: absolute;
  bottom: -14px;
  left: 50%;
  width: 0;
  height: 0;
  content: '';
  border-width: 14px 12px 0 12px;
  border-style: solid;
  border-color: #d8d8d8 transparent transparent transparent;
}

.box24:after {
  position: absolute;
  bottom: -10px;
  left: 50%;
  width: 0;
  height: 0;
  content: '';
  border-width: 14px 12px 0 12px;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
}



/*
==================================================
おすすめの記事タグ
==================================================
*/

.r {
    overflow: hidden;
	padding: 10px 10px 10px 10px;
    margin: 2em 0;
    color: #2c2c2f;
    background: #f5f5f5;
    border-top: solid 5px #FFA07A;
    border-bottom: solid 5px #FFA07A;
}
.r_image {
    float: left;
    margin: 0px 10px 0px 0px;
}

.r_text {
    font-size: 14px;
    overflow: hidden;
    margin: 0; 
    padding: 0;
	line-height: 1.7em;
}

.r_head {
    font-size: 16px;
    font-weight: bold;
	border-bottom:none;
	margin: 0px 0px 0px 0px;
    line-height: 1.5em;
	margin: -10px 0px -10px 0px;
}


@media screen and (max-width: 760px) {
.r {
    overflow: hidden;
	padding: 0px 10px 10px 10px;
    margin: 2em 0;
    color: #2c2c2f;
    background: #f5f5f5;
    border-top: solid 4px #FFA07A;
    border-bottom: solid 4px #FFA07A;
}
.r_image {
    margin: 40px 10px 0px 0px;
	float: left;
	width:	130px;
}
.r_text {
    font-size: 12px;
	line-height: 1.5em;
}
.r_head {
    font-size: 14px;
    font-weight: bold;
	line-height: 1.5em;
	margin: -10px 0px -10px 0px;
}
}



.red {
    color: #FF0000;
    font-size: 120%;
}
.red-01 {
    color: #FF0000;
}


/* ▼▼▼下線マーカー▼▼▼ */
.yellow_line {background:rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #FFFF99 0%) repeat scroll 0 0;}

.pink_line{	background:rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #ffc0cb 0%) repeat scroll 0 0;}

.blue_line{	background:rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #c1e0ff 0%) repeat scroll 0 0;}

.green_line{	background:rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #b2ffb2 0%) repeat scroll 0 0;}

.orange_line{	background:rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #ffe0c1 0%) repeat scroll 0 0;}
/* ▲▲▲下線マーカー▲▲▲ */





.ez-toc-page-1, .ez-toc-heading-level-3 {
	margin:8px 0px 8px 0px !important;
}

div#ez-toc-container ul li {
	margin:8px 0px 8px 0px !important;
}


/*
==================================================
ボックス26
==================================================
*/
.box26 {
    padding: 15px 19px;
    margin: 2em 0;
    color: #2c2c2f;
    background: #f5f5f5;
}
.box26 p {
	font-size:14px;
    margin: 0; 
    padding: 0;
}
















.gallery{
	margin:0 0 5px 0;
}

.gallery li{
list-style:none;
}

/*矢印の設定*/

/*戻る、次へ矢印の位置*/
.slick-prev, 
.slick-next {
    position: absolute;/*絶対配置にする*/
	z-index: 3;
    top: 42%;
    cursor: pointer;/*マウスカーソルを指マークに*/
    outline: none;/*クリックをしたら出てくる枠線を消す*/
    border-top: 2px solid #ccc;/*矢印の色*/
    border-right: 2px solid #ccc;/*矢印の色*/
    height: 25px;
    width: 25px;
}

.slick-prev {/*戻る矢印の位置と形状*/
    left:2.5%;
    transform: rotate(-135deg);
}

.slick-next {/*次へ矢印の位置と形状*/
    right:2.5%;
    transform: rotate(45deg);
}

/*選択するサムネイル画像の設定*/

.choice-btn li{
	cursor: pointer;
	outline: none;
	background:#333;
	width:33.3333%!important;
list-style:none;
}

.choice-btn li img{
	opacity: 0.4;/*選択されていないものは透過40%*/
}

.choice-btn li.slick-current img{
	opacity: 1;/*選択されているものは透過しない*/
}


/*
==================================================
お問い合わせ
==================================================
*/
.contact-width{max-width: 100%;}

/*必須の調整*/
.haveto{
 font-size:7px;
 padding:5px;
 background:#ff9393;
 color:#fff;
 border-radius:2px;
 margin-right:5px;
 position:relative;
 bottom:1px;
}
/*任意の調整*/
.any{
 font-size:7px;
 padding:5px;
 background:#93c9ff;
 color:#fff;
 border-radius:2px;
 margin-right:5px;
 position:relative;
 bottom:1px;
}

/*送信ボタンのデザイン変更*/
#formbtn{
 display: block;
 padding:1em 0;
 margin-top:30px;
 width:100%;
 background:#ffaa56;
 color:#fff;
 font-size:18px;
 font-weight:bold;	 
 border-radius:8px;
 border: none;
}
/*送信ボタンマウスホバー時*/
#formbtn:hover{
 background:#FFCC99;
 color:#ffaa56;
}

.inquiry th{
text-align:left;
}

input {

}
@media screen and (max-width: 960px) {
input {
width: 100%;
}
}

textarea {
width: 100%;
}

.wpcf7-form-control{
font-size:17px;
}

input[type="checkbox" i] {
margin: 3px 3px 3px 4px;
}


/*
==================================================
リンクボタン　黄色
==================================================
*/
.btn a {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	width: 380px;
	height: 60px;
	color: #333;
	font-size: 18px;
	font-weight: 600;
	text-decoration: none;
}
@media screen and (max-width: 760px) {
.btn a {
	width: 100%;
}
}

.btn a:hover {
	color: #808080;
}

.btn01 a {
	background-color: #fff100;
	border: 1px solid transparent;
	border-radius: 35px;
}

.btn01 a::before {
	content: '';
	position: absolute;
	top: -5px;
	left: -5px;
	width: 100%;
	height: 100%;
	background-color: transparent;
	border: 1px solid #888888;
	border-radius: 35px;
}

.btn01 a:hover {
	background-color: #FFFF66;
}



/*-------------------------
  ブログカード
-------------------------*/
.tmt-blog-card {
	margin:50px 0;
}
a.tmt-blog-card {
	color:#000;
  border: 1px solid #e1e1e1;
  box-shadow: 2px 2px #ddd;
  display: block;
  padding: 20px;
  position: relative;
  width: 100%;
text-decoration: none;
}
a.tmt-blog-card::before {
    background-color: #FFCC33;
    border: solid 1px #939393;
 ? ?color: #FFFFFF;
    content: '合わせて読みたい';
    font-size: 14px;
		font-weight: bold;
    display: block;
    padding: 4px 20px;
    position: absolute;
    top: -15px;
    left: 25px;
  }
a.tmt-blog-card::after {
    border: solid 1px #939393;
    color: #000;
    content: '続きを読む';
    font-size: 14px;
    display: block;
    padding: 5px 20px;
    position: absolute;
    bottom: 10px;
    right: 20px;
  }
a.tmt-blog-card:hover {
    box-shadow: none;
    opacity: .8;
text-decoration: underline;
  }
.tmt-blog-card-box {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
}
.tmt-blog-card-title {
    font-size: 18px;
    font-weight: 600;
    color: #428bca;
    padding-bottom: 5px;
  }

.tmt-blog-card-thumbnail {
    flex: 1;
    margin-right: 15px;
    padding-top: 5px;
  }
.tmt-blog-card-thumbnail img {
      width: 80%;
    }
.tmt-blog-card-content {
    flex: 2.5;
  }

.tmt-blog-card-excerpt {
    color: #000;
    font-size: 14px;
    padding-bottom: 15px;
  }
.tmt-blog-card-site {
    color: #b2b2b2;
    font-size: 11px;
    padding-left: 5px;
  }
.tmt-blog-card-site img {
      margin-right: 5px;
      vertical-align: bottom;
      width: 20px;
    }
@media (max-width: 980px) {
  .tmt-blog-card-excerpt {
    border: none;
  }
.tmt-blog-card-thumbnail img {
      width: 100%;
    }
}
@media (max-width: 640px) {
  a.tmt-blog-card {
    padding: 10px 10px 20px 10px;
  }
  a.tmt-blog-card::before {
    font-size: 11px;
    padding: 2.5px 8px;
    top: -15px;
    left: 10px;
  }
  a.tmt-blog-card::after {
    font-size: 12px;
    padding: 2px 13px;
    right: 10px;
  }
  .tmt-blog-card-thumbnail {
    margin-right: 10px;
    padding-top: 10px;
  }
  .tmt-blog-card-title {
    font-size: 14px;
  }
  .tmt-blog-card-excerpt {

  }
.tmt-blog-card-content {
	flex: 1;
  }
}






/*スクロールバーの横幅指定*/
.scrollArea{
	height: 300px;
	overflow: auto;
	padding-right: 20px;
	    border: 1px #ffbf7f solid;
	
	margin:25px 5px 20px 5px;
padding:5px 8px 5px 8px;
}
/*スクロールバーの横幅指定*/
.scrollArea.deco::-webkit-scrollbar {
    width: 15px;
}
/*スクロールバーの背景色・角丸指定*/
.scrollArea.deco::-webkit-scrollbar-track {
  border-radius: 10px;
	background: #f2f2f2;
}
/*スクロールバーの色・角丸指定*/
.scrollArea.deco::-webkit-scrollbar-thumb {
  border-radius: 10px;
	background:#09C9D9;
}



/* ▼▼▼次の記事・前の記事▼▼▼ */
.box4 {
	width:100%;
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
	padding: 10px 5px;
	margin: 50px 0px 40px 0px;
}


.next {
    background: #FFF;
    padding: 0px;
    overflow: hidden;
}
.next_image {
    float: left;
    margin: 0px 10px 0px 0px;
}
.next_summary {
    overflow: hidden;
}
.next_heading {
    font-size: 16px;
    font-weight: bold;
padding: 0px 0px 0px 0px;
margin: 0px 0px 0px 0px;
	text-align:left;
}

p.next_text {
	padding: 0px 0px 0px 0px;
	margin: 25px 0px 0px 0px;
	text-align:left;
	line-height:1.3em;
}
@media only screen and (max-width : 760px){
p.next_text {
	padding: 0px 0px 0px 0px;
	margin: 15px 0px 0px 0px;
	text-align:left;
}	
}



.prev {
    background: #FFF;
    padding: 0px;
    overflow: hidden;
}
.prev_image {
    float: right;
    margin: 0px 0px 0px 10px;
}
.prev_summary {
    overflow: hidden;
}
.prev_heading {
    font-size: 16px;
    font-weight: bold;
padding: 0px 0px 0px 0px;
margin: 0px 0px 0px 0px;
	text-align:right;
}

p.prev_text {
	padding: 0px 0px 0px 0px;
	margin: 25px 0px 0px 0px;
	text-align:right;
	line-height:1.2em;
}
@media only screen and (max-width : 760px){
p.prev_text {
	padding: 0px 0px 0px 0px;
	margin: 15px 0px 0px 0px;
	text-align:right;
}	
}

.prev_thumbnail {
	width:100px;
	padding: 0px 0px 0px 0px;
	margin: 0px 20px;
	float: left;
}
@media only screen and (max-width : 760px){
.prev_thumbnail {
	width:70px;
	padding: 0px 0px 0px 0px;
	margin: 5px;
	float: left;
}	
}

.next_thumbnail {
	width:100px;
	padding: 0px 0px 0px 0px;
	margin: 0px 20px;
	float: right;	
}
@media only screen and (max-width : 760px){
.next_thumbnail {
	width:70px;
	padding: 0px 0px 0px 0px;
	margin: 5px;
	float: right;
}	
}
/* ▲▲▲次の記事・前の記事▲▲▲ */




/*
==================================================
ボックス10
==================================================
*/
.box10 {
    margin: 2em 0;
    background: #FFFFFF;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
}
.box10 .box-title {
    font-size: 1.3em;
    background: #FF0000;
    padding: 4px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.box10 p {
	font-size: 1.0em;
    padding: 20px 20px 20px 20px;
    margin: 0;
	font-weight: normal;
}





/*
==================================================
引用タグ　カスタマイズ
==================================================
*/
blockquote {
    position: relative;
    padding: 10px 20px;
    box-sizing: border-box;
    font-style: italic;
    color: #4e4e4e;
    background: #f3f3f3;
}

blockquote:before{
    display: inline-block;
    position: absolute;
    top: 7px;
    left: 10px;
content:"\f10d";
 font-family: "Font Awesome 5 Free";
    color: #c4c4c4;
    font-size: 58px;
    line-height: 1;
    font-weight: 900;
}

blockquote:after{
    display: inline-block;
    position: absolute;
    bottom: 5px;
    right: 15px;
    text-align: center;
content:"\f10d";
 font-family: "Font Awesome 5 Free";
    color: #c4c4c4;
    font-size: 40px;
    line-height: 1;
    font-weight: 900;
}

blockquote p {
    position: relative;
    padding: 0;
    margin: 10px 0;
    z-index: 3;
    line-height: 1.7;
}

blockquote cite {
    position: relative;
    z-index: 3;
    display: block;
    text-align: right;
    color: #888888;
    font-size: 0.9em;
}






.mask-bg {
  color: transparent;
  display: inline-block;
  font-size: 36px;
  font-weight: bold;
  overflow: hidden;
  position: relative;
  transition: color 0ms 450ms;
}
.mask-bg::after {
  background: linear-gradient(to right, #362ae0 0%,#3b79cc 50%,#42d3ed 100%);
  bottom: 0;
  content: '';
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  transform: translate(0, 100%);
}
 
.mask-bg.is-animated {
  color: #362ae0;
}
.mask-bg.is-animated::after {
  animation: mask-bg 1.2s cubic-bezier(0.8, 0, 0.170, 1);
}
 
@keyframes mask-bg {
  0% {
    transform: translate(0, 101%)
  }
  40%, 60% {
    transform: translate(0, 0%)
  }
  100% {
    transform: translate(0, -100%)
  }
}




/*
==================================================
ボタンを押すと開く
==================================================
*/
.grad-btn {
  display:block;  
  max-width: 280px;
  border: 2px solid #FF9900;
  background-color: #FF9900;
  font-size: 16px;
  color: #FFF;
  font-weight: bold;
  padding:16px;
  text-align: center;
  border-radius: 4px;
  transition: .4s;
}
.grad-btn:hover {
  border: 2px solid #FF9900;
  background-color: #FFF;
  color: #333
}
.grad-item {
  position: relative;
  overflow: hidden;
  height: 80px; /*隠した状態の高さ*/
}
.grad-item::before {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 40px; /*グラデーションで隠す高さ*/
  background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
  background: linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
  content: "";
}
.grad-trigger {
  display: none; /*チェックボックスは常に非表示*/
}
.grad-trigger:checked + .grad-btn {
  display: none; /*チェックされていたら、grad-btnを非表示にする*/
}
.grad-trigger:checked ~ .grad-item {
  height: auto; /*チェックされていたら、高さを戻す*/
}
.grad-trigger:checked ~ .grad-item::before {
  display: none; /*チェックされていたら、grad-itemのbeforeを非表示にする*/
}





/*
==================================================
会員表
==================================================
*/
 
.table-responsive .wrap_scroll_table {
  width: 400px;
  overflow-x: scroll;
  margin: 0 auto;
}

.table-responsive .scroll_table {
  margin-top: 10px;
  max-width: 400px;
  margin: 0 auto;
}

.table-responsive .scroll_table,
.table-responsive .scroll_table td,
.table-responsive .scroll_table th {
  border: 1px solid #cbced2;
  border-collapse: collapse;
  text-align: center;
}

.table-responsive .scroll_table th {
  background: #01214d;
  color: #fff;
  padding: 4px 12px;
}

.table-responsive .scroll_table td {
  background: #f5f6f8;
  padding: 4px 12px;
}

.table-responsive .txt {
  width: 400px;
  margin: 0 auto;
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 2px;
}



/*---------------------------------------------------------*/
/* ヘッダーナビゲーション（レスポンシブ） */
/*---------------------------------------------------------*/

.header{
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 85px;
	z-index:999;
}
@media only screen and (max-width: 960px) {
.header{
  height: 80px;
}
}
@media only screen and (max-width: 760px) {
.header{
  height: 60px;
}
}

.header_inner {
  position: relative;
  padding: 15px;
}

.logo{
  position: absolute;
  top: 0;
  left: 0;
  padding: 3px 15px
}
@media only screen and (max-width: 960px) {
.logo{
  padding: 3px 10px
}
}

.title{
  font-size: 2rem;
  font-weight: 600;
	margin:0;
}


@media only screen and (max-width: 960px) {
  .nav {
    position: fixed;
    right: -320px; /* 右から出てくる */
    top: 0;
    width: 300px; /* スマホに収まるサイズ */
    height: 100vh;
    padding-top: 60px;
    background-color: #fff;
    transition: all .6s;
    z-index: 200;
    overflow-y: auto; /* メニューが多くなったらスクロールできるように */
  }
  .hamburger {
    position: absolute;
    right: 15px;
    top: 0px;
    width: 40px; /* クリックしやすい幅 */
    height: 40px; /* クリックしやすい高さ */
    cursor: pointer;
    z-index: 300;
  }
  .nav_list {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .nav_item {
    text-align: center;
    padding: 0px 14px 0px 14px;
  }
  .nav_item a {
    display: block;
    padding: 28px 10px 18px 10px;
    border-bottom: 1px solid #eee;
    text-decoration: none;
    color: #333;
  }
  .nav_item a:hover {
    background-color: #eee;
  }
  .hamburger_border {
    position: absolute;
    left: 11px;
    width: 30px;
    height: 3px;
    background-color: #333;
    transition: all .6s;
  }
  .hamburger_border_top {
    top: 14px;
  }
  .hamburger_border_center {
    top: 24px;
  }
  .hamburger_border_bottom {
    top: 34px;
  }
  .black_bg {
    position: fixed;
    left: 0;
    top: 0;
    width: 100vw;
    height: 100vh;
    z-index: 100;
    background-color: #333;
    opacity: 0;
    visibility: hidden;
    transition: all .6s;
    cursor: pointer;
  }

  /* 表示された時用のCSS */
  .nav-open .nav {
    right: 0;
  }
  .nav-open .black_bg {
    opacity: .8;
    visibility: visible;
  }
  .nav-open .hamburger_border_top {
    transform: rotate(45deg);
    top: 20px;
  }
  .nav-open .hamburger_border_center {
    width: 0;
    left: 50%;
  }
  .nav-open .hamburger_border_bottom {
    transform: rotate(-45deg);
    top: 20px;
  }
}/* sp */

@media only screen and (min-width: 960px) {
  .header_inner{
    width: 100%;
    padding: 3px 30px;
    margin-left: auto;
    margin-right: auto;
  }
  .logo{
    padding: 3px 30px
  }
  .nav_list{
    text-align: right;
  }
  .nav_list ul{
    padding: 50px 0 0 0;
  }
  .nav_list li{
    display: inline-block;
    text-align: right;
    padding: 20px 20px 0px 20px;
  }
  .nav_list li a{
    color: #000;
	  font-weight:bold;
	  text-decoration:none;
  }
  .nav_item {
	  
  }
  .nav_item a {
  position: relative;
  display: inline-block;
  }
  .nav_item a::after {
  position: absolute;
  bottom: 0;
  left: 0;
  content: '';
  width: 0;
  height: 2px;
  background-color: #11428a;
  transition: .2s;
}
  .nav_item a:hover::after {
  width: 100%;
  }
}/* pc */



/*---------------------------------------------------------*/
/* 四角で囲む（黄色） */
/*---------------------------------------------------------*/
.shikaku {
    padding: 5px;
    border: 2px solid #FFD700;
}