/*
Theme Name: Avalon Bright
Template: avalon_tcd040
Author: Design Plus
Description: WordPressテーマ「Avalon」
Version: 4.1.1
*/
@import url('../avalon_tcd040/style.css');
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);

@media screen and (min-width: 1025px) {
  #header { margin-bottom: 0; }
}
.header-title {
	color: #fff;
	display: block;
        font-family: 'Noto Sans JP';
        font-weight: 900;
	font-size: 48px;
	line-height: 1.6;
	padding: 0;
	vertical-align: middle;
	position: absolute;
	top: 50%;
	transform: translate3d(0,-50%,0);
	width: 100%;
	text-align: left;
}
.header-title span{
	-webkit-text-stroke: 0.05em #006934;
	/*text-shadow:0px 0px 10px #006934;*/
	display: block;
	width: 950px;
	margin: 0 1em;
        font-family: 'Noto Sans JP';
        font-weight: 900;
}

.headline-copy-center,
.headline-copy {
	margin: 0;
	padding: 0;
	color: red;
	text-align: justify;
  	-moz-text-align-last: justify;
	text-align-last: justify;
	font-size: 2.4rem;
        font-family: 'Noto Sans JP';
        font-weight: 900;
	line-height: 1.2em;
}
.headline-copy-center {
	text-align: justify;
  	-moz-text-align-last: center;
	text-align-last: center;
}

@media screen and (max-width: 1024px) {
	.headline-copy-center,
	.headline-copy {
		font-size: 1.2rem !important;
		font-weight: 700;
		text-align: left;
		text-align-last: auto;
	}
	.headline-copy-center {
		text-align: justify;
	  	-moz-text-align-last: center;
		text-align-last: center;
	}
}

		#menu-header { background-color: #e8fef2; }
		#menu-header > li {
			flex-basis: 20%;
		}
		#menu-header a.nav-link
		{
			font-size: 1rem;
			font-weight: normal;
			line-height: 1.5;
			padding: 1rem;
			min-width: 140px;
			cursor: pointer;
			-webkit-user-select: none;
			-moz-user-select: none;
			-ms-user-select: none;
			user-select: none;
			-webkit-transition: all 0.3s;
			transition: all 0.3s;
			text-align: center;
			vertical-align: middle;
			text-decoration: none;
			letter-spacing: 0.1em;
			border: 1px solid #ffffff;
			border-bottom: 5px solid #ffc153;
			color: white;
		}

		#menu-header a.nav-link {
		  background: #f1e767;
		  background: -webkit-gradient(linear, left top, left bottom, from(#f1e767), to(#feb645));
		  background: -webkit-linear-gradient(top, #f1e767 0%, #feb645 100%);
		  background: linear-gradient(to bottom, #1eaa39 0%, #1eaa39 100%);
		}
		
		#menu-header a.nav-link:hover {
		  background: -webkit-gradient(linear, left bottom, left top, from(#f1e767), to(#feb645));
		  background: -webkit-linear-gradient(bottom, #f1e767 0%, #feb645 100%);
		  background: linear-gradient(to top, #f1e767 0%, #feb645 100%);
		}
		@media (max-width: 991px) {
			#menu-header { display: none; }
		}
		@media (min-width: 1200px) {
			#menu-header a.nav-link
			{
				font-size: 1.1rem;
				font-weight: bold;
				min-width: 160px;
			}
		}
		@media (min-width: 1333px) {
			#menu-header a.nav-link {
				/*padding: 1rem 2rem;*/
				min-width: 170px;
			}
		}
		@media (min-width: 1405px) {
			#menu-header a.nav-link {
				padding: 1rem 2rem;
				min-width: 180px;
				font-size: 1.1rem;
			}
		}
		@media (min-width: 1495px) {
			#menu-header a.nav-link {
				min-width: 200px;
			}
		}


/*#side_col { background: #fff; position: absolute; top: 0; z-index: 10; padding-top: 60px;}*/
#side_col { background: #fff; position: relative; z-index: 10; padding-top: 60px;}
#side_col .store-information,
#side_col .store-information02
  { position: relative; margin-top: 50px;}

/* グローバルメニュー */
@media screen and (min-width: 1025px) {
  #global_menu {
	font-size: 18px;
/*margin-top: 60px;*/
	margin-top: 0;
/*margin-bottom: 60px;*/
	margin-bottom: 0;
	text-align: center;
	padding: 10% 10%;
	*zoom:1;
  }
  #global_menu li{
	position: relative;
	font-weight: normal;
	border-bottom: 1px dotted rgb(30, 170, 57);
	display: block;
	padding: 0.8rem 0 !important;
	color: #333333;
	text-align: left;  
  }
  #global_menu li a {
    display: block;
    padding: 0 !important;
}	
}

#copyright { background: rgba(30, 170, 57, 0.8); color: #fff; font-size: 12px; line-height: 60px!important; height: 60px; margin-bottom: 0!important; bottom: 0!important; position: relative!important; text-align: center; z-index: 10; }


#index_news { position: fixed; top: 0; right: 0; height:30px; overflow:hidden; color: #fff; font-size: 14px; }
@media screen and (min-width: 1025px) {
  #index_news { position: fixed; top: 0; left: 0; }
  #index_news { width: 100%; z-index: 101; }
}
#index_news .ticker { position: relative; overflow: hidden; height:30px !important; margin:0; float:left; background:rgba(30, 170, 57, 0.8); }
#index_news ul li { height:30px; overflow:hidden; }
#index_news ul .date { width:90px; height:30px; margin:0 10px 0 40px; line-height:30px; display:block; color:#fff; font-size: 12px; float:left; }
#index_news ul .title { height:30px; line-height:30px; display:block; float:left; text-decoration:none; color:#fff; }
#index_news .archive_link a { text-decoration:none; height:30px; line-height:30px; display:block; color:#fff;background:rgba(30, 170, 57, 0.8); text-align: center; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;  padding: 0 0 0 15px;}

.fixed-top {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1030;
}

.img-right {
	float: right;
	top: 0.5em;
	right: 0.5em;
	margin: 0;
	padding: 0;
}

/* ----------------------------------------------------------------------
 font-size - フォントサイズ 追加
---------------------------------------------------------------------- */
.text120{font-size:120%!important}
.text130{font-size:130%!important}
.text140{font-size:140%!important}
.text150{font-size:150%!important}
.text180{font-size:180%!important}
.text200{font-size:200%!important}
.text230{font-size:230%!important}
.text240{font-size:240%}
.text250{font-size:250%}
.text260{font-size:260%}
.text270{font-size:270%}
.text280{font-size:280%}
.text290{font-size:290%}
.text300{font-size:300%}
.text310{font-size:310%}
.text320{font-size:320%}
.text330{font-size:330%}
.text340{font-size:340%}
.text350{font-size:350%}
.text360{font-size:360%}
.text370{font-size:370%}
.text380{font-size:380%}
.text390{font-size:390%}
.text400{font-size:400%}
/* ----------------------------------------------------------------------
 font-color - フォントカラー
---------------------------------------------------------------------- */
.black{color:black !important;}
.red{color:red !important;}     /* 赤色 */
.blue{color:#2ca9e1;}    /* 青色 */
.lightblue{color:#0080ff !important;}
.green{color:#82ae46 !important;}   /* 緑色 */
.bluegreen{color:#00ad8c !important;}   /* 青緑 */
.lightgreen{color:#00c613 !important;}
.forestgreen{color:rgb(0,145,58);}
.darkgreen{color:#00913A !important;}
.orange{color:#ff7d00 !important;}    /* 橙色 */
.mikan{color:#ffaa00 !important;}
.darkorange{color:#e95513 !important;}    /* 橙色 */
.yellow{color:#fff000 !important;}    /* 黄色 */
.darkyellow{color:#ffda00 !important;}    /* 黄色 */
.pink{color:#ff0084 !important;}    /* ピンク */
.gray{color:#999999 !important;}    /* グレー */
.white{color:white !important;}
.brown{color:rgb(128,79,33);}
.darkblue{color:#036EB7 !important;}
.navyblue{color:#1D2087 !important;}
.lightpurple{color:#AD66FF !important;}    /* 薄紫色 */
.purple{color:#9500ff !important;}    /* 紫色 */
.redpurple{color:#cd00ff !important;}    /* 赤紫色 */
.momo{color:#ff527f !important;}
.sakura{color:#ff92db !important;}
.marine{color:#0068B6 !important;}


.red-2{
font-size:0.6em;
color:red;
}


/* ----------------------------------------------------------------------
 background-color - 背景色
---------------------------------------------------------------------- */
.bg-yellow{padding:2px;background-color:#ff0} /* 黄色の文字背景 */
.bg-blue{padding:2px;background-color:#4ab0f5}  /* 青色の文字背景 */
.bg-red{padding:2px;background-color:red} /* 赤色の文字背景 */

.bg-green{background-color:#00b904;}
.bg-orange{background-color:#f3b349 !important;}
.bg-mikan{background-color:#f29600 !important;}
.bg-skyblue{background-color:#71bce0}
.bg-forest{background-color:#55ac63 !important;}
.bg-darkgreen{background-color:#00913A !important;}
.bg-pink{background-color:#e95599}
.bg-cream{background-color:#fffff5}
.bg-white{background-color:white;}
.bg-lightpink{background-color:#ff9dd9 !important;}
.bg-sakura{background-color:#ff6d9d !important;}
.bg-sango{background-color:#ff936d !important;}

.vtop{vertical-align:top;}
.vmiddle{vertical-align:middle;}
.vbottom{vertical-align:bottom;}
.justify{
	text-align: justify;
	text-justify: inter-ideograph;
}


/*
 * 追加設定 --------------------------------------
 */

.notoT {font-family:'Noto Sans JP';font-weight:100;}
.notoL {font-family:'Noto Sans JP';font-weight:300;}
.notoR {font-family:'Noto Sans JP';font-weight:400;}
.notoM {font-family:'Noto Sans JP';font-weight:500;}
.notoB {font-family:'Noto Sans JP';font-weight:700;}
.notoK {font-family:'Noto Sans JP';font-weight:900;}

.strong {
        font-family: 'Noto Sans JP';
        font-weight: 900;
}

@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 100;
  src: url(fonts/NotoSerifCJKjp-ExtraLight.otf) format('opentype');
}
@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 200;
  src: url(fonts/NotoSerifCJKjp-Light.otf) format('opentype');
}
@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 400;
  src: url(fonts/NotoSerifCJKjp-Regular.otf) format('opentype');
 }
@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 500;
  src: url(fonts/NotoSerifCJKjp-Medium.otf) format('opentype');
 }
@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 600;
  src: url(fonts/NotoSerifCJKjp-SemiBold.otf) format('opentype');
 }
@font-face {
   font-family: 'Noto Serif Japanese';
   font-style: normal;
   font-weight: 700;
  src: url(fonts/NotoSerifCJKjp-Bold.otf) format('opentype');
 }
@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 900;
  src: url(fonts/NotoSerifCJKjp-Black.otf) format('opentype');
 }

/*
 * table 枠線無し
 */

.b-noneFL {
border: solid 1px #fafafa !important;
line-height: 1.40em !important;
background: #fafafa !important;
}

/*
 * panel パネル
 */

.pl-4point {
    margin: 15px 15px;
    position: relative;
    width: calc(100% - 30px);
}

ul.square-list {
    margin: 0 0 3% 3%;
    list-style: square outside url(img/list-square.svg);
}

ul.check-list {
    margin: 0 0 3% 3%;
    list-style: square outside url(img/white-check.svg);
}

ul.n-check-list {
    margin: 0 0 3% 3%;
    list-style: square outside url(img/black-check.svg);
}

.row-eq-height {
	display: flex;
	flex-wrap: wrap;
}

.white-shadow-black,
.white-shadow-green {
	text-shadow:
	  0   -1px  1px #FFF,
    	 -1px  0    1px #FFF,
	  1px  0    1px #FFF,
	  0    1px  1px #FFF,
    	  1px  1px  1px #000,
    	  2px  2px  2px #000,
    	  3px  3px  3px #000;
	font-weight: bold;
	color: #000;
}
.white-shadow-green {
	color: green;
}

.white-shadow-orange {
	text-shadow:
	  0   -1px  1px #FFF,
    	 -1px  0    1px #FFF,
	  1px  0    1px #FFF,
	  0    1px  1px #FFF,
    	  1px  1px  1px #000,
    	  2px  2px  2px #000,
    	  3px  3px  3px #000;
	font-weight: bold;
	color: orange;
}

/*
 * 患者様の声
 */

.well_voice {
    margin: 1em 0 30px;
    padding: 0;
    line-height: 2;
    border: 1px solid #cdcdcd;
    background: #fcfcfc;
    box-shadow: 0 1px 3px 0 rgba(195,195,195,0.3);
	border-radius:20px;
}

.well_voice p{
	margin-bottom:0.5em !important;
}

.voice_name {
    background: #FFEEC8;
}

.voice_listHeader {
    position: relative;
    border-bottom: 2px solid #9A68CD;
    background: #FFF8EB;
    -webkit-border-radius: 20px 20px 0 0;
}

.icn_voice {
    height: 55px;
    line-height: 40px;
	padding-top:15px;
	padding-left: 10px;
	/*padding-left: 43px;*/
    /*background: url(/wp-content/uploads/2020/09/icon_p.png) no-repeat 0 15px / 40px 40px;*/
}

/* 症状別ページ */
.symptoms-header h2 {
    position: relative;
    font-size: 28px;
    margin-bottom: 20px;
    padding: 20px 0;
    border-bottom: dotted 2px  #f77c8b;
    line-height: 1.2;
    font-weight: bold;
    color: #f77c8b;
}
.style-title {
    position: relative;
    padding-bottom: 10px;
    font-weight: bold;
    font-size: 26px;
    line-height: 1.2em !important;
    margin: 20px 0 10px;
}

.style-title:after {
content: '';
position: absolute;
bottom: 0px;
left: 0;
width: 35px;
height: 4px;
background-color: #f77c8b;
}
@media screen and (min-width: 1025px){
#main_col .row .col-md-4 {
    margin-left: 10px;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 30%;
}
}

.orange-box,
.black-board,
.pink-board {
	margin: 15px 0 0;
	padding: 0;
	color: white;
	background-color: #f7b52c;
	border: 15px solid yellow;
	border-radius: 24px;
	font-size: 100%;
	width: 100%;
}
.black-board {
	background-color: #006934;
	border: 1em solid #c79f62;
	border-bottom: 1.5em solid #967442;
	color: white;
}
.white-board {
	background-color: #ffffff;
	border: 1px solid #333;
	margin: 15px 0;
	padding: 0;
	color: #333;
	font-size: 100%;
	width: 100%;
}
.orange-box .subtitle,
.black-board .subtitle {
	margin: 0.5em 0 0.5em 0.5em;
	padding: 0.2em 1em;
	width: 75%;
	border-radius: 8px;
	color: white;
	background-color: #00b904;
	font-size: 1.8em;
        font-family: 'Noto Sans JP';
        font-weight: 900;
	line-height: 1.25em;
}
.black-board .subtitle {
	background-color: #f3b349;
}
.orange-box ul,
.black-board ul,
.orange-box ol,
.black-board ol{
	margin: 0 0 0 2em;
	padding: 0 0 0.5em 0.5em;
	font-size: 1.5em;
        font-family: 'Noto Sans JP';
        font-weight: 400;
}
.white-board ul{
	margin: 0 0 0 2em;
	padding: 1em 1em 1em 1em;
	font-size: 1.3rem;
        font-family: 'Noto Sans JP';
        font-weight: 400;
}

.white-board ol{
	margin: 0 0 0 1.5rem;
	padding: 1em;
	font-size: 1.3rem;
        font-family: 'Noto Sans JP';
        font-weight: 400;
}
.image-right {
	float: right;
	margin-left:20px;
}
.image-left {
	float: left;
}
.orange-box .image-right {
	float: right;
	top: 0.5em;
	right: 0.5em;
	margin: 0;
	padding: 0;
}
.black-board .image-right {
	float: right;
	bottom: 15px;
	right: 0.5em;
	margin: 0;
	padding: 0;
}
.white-board .image-right {
	float: right;
}

@media screen and (max-width: 1024px) {
.image-right,
.image-left {
	float:none;
	max-width:100%;
	margin:0 auto;
}
#edit-area .row img {
    max-width: 100%!important;
	width: auto;
}
.white-board .image-right {
	width:40%;
	padding:0 5%
}	
/*.white-board .image-right {
	display:none;
}*/
	
	.orange-box,
	.black-board,
	.pink-board {
		width: calc(100% + 30px);
		margin: 15px -15px 0;
		border: 5px solid yellow;
		border-radius: 8px;
	}
	.black-board {
		border: 5px solid #c79f62;
	}
	.white-board {
		width: calc(100% + 30px);
		margin: 15px -15px 0;
		border: 1px solid #333333;
		border-radius: none;
		margin-bottom:10px;
	}	
	.pink-board {
		border: 5px solid #FFEE00;
	}
	.orange-box .subtitle,
	.black-board .subtitle {
		margin: 0;
		padding: 0;
		text-align: center;
		border-radius: 0;
		width: 100%;
		font-size: 1.5em;
	}
	.orange-box ul,
	.black-board ul,
	.white-board ul {
		margin: 0 1em;
		font-size: 1.25rem;
		list-style: square none outside;
	}
	.orange-box li,
	.black-board li,
	.white-board li {
		margin: 0.5em 0 0;
		padding: 0 0.5em 0;
		line-height: 1.25em !important;
	}
}

/*
.black-board {
	background-color: #006934;
	border: 1em solid #c79f62;
}
.black-board a, .black-board a:link {
	color:white;
	text-decoration: underline;
}
.black-board ol {
	margin-left: 1em;
	list-style-type: decimal;
}
@media screen and (max-width: 1024px) {
        .black-board {
                width: calc(100% + 30px);
                margin: 15px -15px 0;
                border: 5px solid #c79f62;
        }
}
*/

.staff-box, .staff-box-green, .staff-box-brown {
	margin-top: 2em;
	padding: 1em;
	background-color: white;
	border: 0.5em solid gray;
	font-size: 1em;
}
.staff-box-green {
	border: 0.5em solid #DEFFE0;
}
.staff-box-brown {
	border: 0.5em solid #FCEAB1;
}
.staff-box .staff_archive_thumbnail,
.staff-box-green .staff_archive_thumbnail,
.staff-box-brown .staff_archive_thumbnail {
	border-right: 2px dashed #1EAA39;
}
@media screen and (max-width: 991px) {
	.staff-box .staff_archive_thumbnail,
	.staff-box-green .staff_archive_thumbnail,
	.staff-box-brown .staff_archive_thumbnail {
		border: 0;
	}
}
.staff-box li,
.staff-box-green li {
	margin-top: 1.8em;
	border-bottom: 1px dashed #1EAA39;
}
.staff-box-brown li {
	margin-top: 1.8em;
	border-bottom: 1px dashed #1EAA39;
}


.pink-board {
	background-color: #FFF1FF;
	border: 15px solid #FFEE00;
	font-size: 1.25em;
}
.pink-board table, .pink-board tr {
	margin: 0;
	padding: 0;
	border: none;
	background-color: #FFF1FF;
}
.pink-board th {
	font-family: 'Noto Serif Japanese', serif;
	font-weight: 400;
	font-style: normal;
	color: black;
	padding: 1em !important;
	vertical-align: middle !important;
	text-align: justify;
	text-justify: inter-ideograph;
	border: none !important;
	background-color: #FFF1FF;
}

.pink-board td {
	font-family: 'Noto Serif Japanese', serif;
	font-weight: 400;
	font-style: normal;
	color: rgb(0,145,58);
	padding: 1em !important;
	vertical-align: middle !important;
	text-align: justify;
	text-justify: inter-ideograph;
	border: none !important;
	background-color: #FFF1FF;
}
.pink-board td.icon {
	width: 15%;
}
@media screen and (max-width: 1024px) {
	.pink-board th, .pink-board td {
		padding: 1em !important;
		margin: 0 !important;
		width: 100% !important;
	}
	.pink-board th {
		vertical-align: top !important;
		border: 0;
	}
	.pink-board td {
		vertical-align: top !important;
		border: 0;
	}
	.pink-board td.icon {
		width: 15% !important;
		padding: 0 !important;
		padding-left: 5px !important;
		vertical-align: middle !important;
/*		visibility: hidden;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
*/
	}
	.pink-board td.icon img {
		width: 100% !important;
/*		visibility: hidden;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
*/
	}
}

.pink-button {
	text-align: center;
	width: 222px;
	height: 44px;
	font-size: 1rem;
	line-height: 44px;
	padding: 0;
	border: 0;
	color: white;
/*width: 222px;*/
/*height: 44px;*/
	background: none;
	background: url(img/pinkbutton.svg);
	background-repeat: no-repeat;
	background-position: center left;
	background-size: 100% auto;
}
.pink-button a, .pink-button a:link {
	color:white;
	text-decoration: underline;
}

.zupper { z-index: 100; }
.znormarl { z-index: 10; }
.zlower { z-index: 5; }

.clip-board {
	margin: 30px 0 0;
	padding: 0 30px 30px;
}
.clip-board .clip {
	display:block;
	position:relative;
	top:-2em;
	width:10em !important;
	margin:0 auto;
	padding:0;
}
.clip-board ul {
	font-size: 2rem;
}
.clip-board li{
	text-align: justify;
	text-justify: inter-ideograph;
}
@media screen and (max-width: 1024px) {
        .clip-board {
		width: calc(100% + 30px);
		margin: 15px -15px 0;
		padding: 5px;
		border: 5px solid cream;
		border-radius: 8px;
        }
        .clip-board ul {
                margin: 0.5em 0 0.5em 1em;
                font-size: 1.25em;
                list-style: square none outside;
        }
        .clip-board li {
                margin: 0.5em 0 0;
                padding: 0 0.5em 0;
                line-height: 1.25em !important;
        }
}

.grain-back {
	margin: 15px 0;
	padding: 1em 2em;
	background-color: white;
	background-image: url(img/Melamine-wood-001.png);
        border-radius: 30px;
}
@media screen and (max-width: 1024px) {
	.grain-back {
		margin: 15px -15px 0;
		padding: 0;
        	border-radius: 5px;
	}
}

.gradient_red {
	background: #ff3e00; /* Old browsers */
	background: -moz-linear-gradient(left, #ff3e00 0%, #ff9900 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, #ff3e00 0%,#ff9900 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, #ff3e00 0%,#ff9900 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff3e00', endColorstr='#ff9900',GradientType=1 ); /* IE6-9 */
        border-radius: 15px;
}

.circle {
	position: absolute;
	color: #00913a;
	background-color: white;
	height: 8vw;
	width: 8vw;
	top: -1vw;
	border-radius: 4vw;
	-moz-border-radius: 4vw;
	-webkit-border-radius: 4vw;
	text-align: center;
	line-height: 8vw;
	font-size: 2.5vw;
	font-family:'Noto Sans JP';
	font-weight:900;
}

.circleRight {
	padding-left: 4em;
	height: 2.5em;
	line-height: 2.5em;
}

.circle_list {
	position: relative;
}
.circle_list .title,
.circle_list .long-title {
	margin: 0 2.5rem;
	padding: 0 3rem;
	font-size: 2rem;
	font-family:'Noto Sans JP';
	font-weight:700;
	line-height: 2.5rem;
}
.circle_list .long-title {
	font-size: 1.5rem;
	line-height: 2rem;
}

.circle_list .note {
	margin: 1rem 4rem;
	padding: 0 2rem;
	font-size: 1.2rem;
	font-family:'Noto Sans JP';
	font-weight:300;
	line-height: 2rem !important;
}
.circleS {
	position: absolute;
	color: #00913a;
	background-color: white;
	height: 4rem;
	width: 4rem;
	top: -1rem;
	border-radius: 2rem;
	-moz-border-radius: 2rem;
	-webkit-border-radius: 2rem;
	text-align: center;
	line-height: 4rem;
	font-size: 2rem;
	font-family:'Noto Sans JP';
	font-weight:900;
}
@media screen and (max-width: 480px) {
	.circleS {
		margin: 0;
		padding: 0;
		height: 2rem;
		width: 2rem;
		top: -0.5rem;
		border-radius: 1rem;
		-moz-border-radius: 1rem;
		-webkit-border-radius: 1rem;
		line-height: 2rem;
		font-size: 1.5rem;
	}
	.circle_list {
		padding: 0;
	}
	.circle_list .title,
	.circle_list .long-title {
		margin: 0 0 0 1.2rem;
		padding: 0 0 0 1.2rem;
		font-size: 1.2rem;
		line-height: 1.33rem;
	}
	.circle_list .long-title {
		font-size: 1.2rem;
	}
	.circle_list .note {
		margin: 1em 0 0 0;
		padding: 0 1em;
	}
}

.dummyC {
	position: absolute;
	height: 8vw;
	width: 8vw;
	top: -1vw;
	text-align: center;
	line-height: 8vw;
	font-size: 2.5vw;
	font-family:'Noto Sans JP';
	font-weight:900;
}

span.rotate-text {
	display: inline-block;
	-moz-transform:    rotate( 90deg );  /* Firefox用 */
	-webkit-transform: rotate( 90deg );  /* Chrome,Safari,新しいOpera用 */
	-o-transform:      rotate( 90deg );  /* 古いOpera用 */
	-ms-transform:     rotate( 90deg );  /* IE9用 */
	transform:         rotate( 90deg );  /* CSS3の書き方 */
}

.subtitle-bar,
.point-subtitle,
.point-subtitle-orange,
.recruit-subtitle {
	margin-top: 1em;
	padding-left: 1em;
	width: 100%;
	font-size: 180%;
	color: white;
	background-color: #29A03A;
	background-position: center left;
	background-repeat: no-repeat;
	background-size: 100% auto;
}
.point-subtitle {
	margin-top: 2em;
	padding-left: 5em;
	background-image: url(img/point.svg);
}
.point-subtitle-orange {
	margin-top: 2em;
	padding-left: 5em;
	background-image: url(img/pointdarkorange.svg);
	background-color: #DD5419;
}
.recruit-subtitle {
	margin-top: 2em;
	padding-left: 4em;
	background-image: url(img/recruit.svg);
}

@media screen and (min-width: 1281px) {
	.point-subtitle,
	.point-subtitle-orange,
	.recruit-subtitle {
		font-size: 180%;
		padding-left: 6em;
	}
	.subtitle-bar {
		font-size: 180%;
	}
}
@media screen and (max-width: 1280px) {
	.point-subtitle, .point-subtitle-orange,
	.recruit-subtitle {
		padding-left: 5em;
	}
}
@media screen and (max-width: 991px) {
	.point-subtitle, .point-subtitle-orange,
	.recruit-subtitle {
		font-size: 150%;
		padding-left: 5em;
	}
	.subtitle-bar {
		font-size: 150%;
	}
}
@media screen and (max-width: 767px) {
	.point-subtitle, .point-subtitle-orange,
	.recruit-subtitle {
/*font-size: 90%;*/
		font-size: 100%;
		padding-left: 5em;
	}
	.subtitle-bar {
		font-size: 100%;
	}
}
@media screen and (max-width: 480px) {
	.point-subtitle, .point-subtitle-orange,
	.recruit-subtitle {
/*font-size: 50%;*/
		font-size: 100%;
		padding-left: 3em;
	}
	.subtitle-bar {
		font-size: 100%;
	}
}

.underline-darkgreen {
	border-bottom: 2px solid rgb(0,145,58);
}
.underline-mikan {
	border-bottom: 2px solid #f29600;
}

.image-box, .image-box-green, .image-box-brown,
.image-box-20
{
	margin: 0;
	padding: 0 !important;
	width: 100% !important;
	height: auto;
}
.image-box-green {
	border: 2px solid rgb(0,145,58);
}
.image-box-brown {
	border: 0.5em solid #FCEAB1;
}
.image-box-20 {
	float: left;
	width: 20% !important;
}
.relative-box {
	position: relative;
}
.relative-box .catchcopy {
	position: absolute;
	bottom: 10%;
	width: 100%;
	background-color: rgba( 255, 255, 255, 0.55 );
	font-size: 2vw;
	text-align: center;
}
.relative-box .logo, .relative-box .copy {
	position: absolute;
	width: 15%;
	height: auto;
	top: 5%;
	left: 5%;
}
.relative-box .copy {
	top: 30%;
	width: 36%;
}

.border-right {
	position: absolute;
	top: 0;
	right: 0;
	border-right: 5px solid #8DC21F;
	width: 5px;
	height: 100%;
}

.border-bottom {
	position: absolute;
	bottom: 0;
	left: 0;
	border-bottom: 5px solid #8DC21F;
	width: 100%;
	height: 5px;
}


.headline, .description, .heading-1d, .heading-2d, .heading-3d, .heading-4d,
.text-1d, .text-2d, .text-3d, .text-4d {
	margin: 0;
	padding: 0;
        font-family: 'Noto Sans JP';
        font-weight: 900;
	line-height: 2em;
	min-height: 2em;
}
.text-1d, .text-2d, .text-3d, .text-4d {
        font-family: 'Noto Serif Japanese';
        font-weight: 400;
}
@media screen and (min-width: 1281px) {
	h1.description, .heading-1d, .text-1d {font-size: 3rem;}
	h2.description, .heading-2d, .text-2d, .headline {font-size: 2.4rem;}
	h3.description, .heading-3d, .text-3d {font-size: 2.1rem;}
	h4.description, .heading-4d, .text-4d {font-size: l.8rem;}
}
@media screen and (max-width: 1280px) {
	h1.description, .heading-1d, .text-1d {font-size: 2.4rem;}
	h2.description, .heading-2d, .text-2d, .headline {font-size: 1.8rem;}
	h3.description, .heading-3d, .text-3d {font-size: 1.6rem;}
	h4.description, .heading-4d, .text-4d {font-size: 1.4rem;}
}
@media screen and (max-width: 800px) {
	h1.description, .heading-1d, .text-1d {font-size: 2.2rem;}
	h2.description, .heading-2d, .text-2d, .headline {font-size: 1.6rem;}
	h3.description, .heading-3d, .text-3d {font-size: 1.4rem;}
	h4.description, .heading-4d, .text-4d {font-size: 1.2rem;}
}
@media screen and (max-width: 600px) {
	h1.description, .heading-1d, .text-1d {font-size: 1.7rem;}
	h2.description, .heading-2d, .text-2d, .headline {font-size: 1.1rem;}
	h3.description, .heading-3d, .text-3d {font-size: 1rem;}
	h4.description, .heading-4d, .text-4d {font-size: 1rem;}
}
@media screen and (max-width: 480px) {
	h1.description, .heading-1d, .text-1d {font-size: 1.4rem;}
	h2.description, .heading-2d, .text-2d, .headline {font-size: 1rem;}
	h3.description, .heading-3d, .text-3d {font-size: 1rem;}
	h4.description, .heading-4d, .text-4d {font-size: 1rem;}
}

.headline {
	color: red;
	text-align: center;
	padding: 1em;
	line-height: 1.5em;
}

.nowrap {white-space: nowrap;}
.w100per {width: 100%;}
.w90per {width: 90%;}
.w80per {width: 80%;}
.w33per {width: 33%;}
.w25per {width: 25%;}
.p1em {padding: 1em !important;}
.pt1em {padding-top: 1em !important;}
.pb1em {padding-bottom: 1em !important;}
.pl1em {padding-left: 1em !important;}
.pr1em {padding-right: 1em !important;}
.p2em {padding: 2em !important;}
.pt2em {padding-top: 2em !important;}
.pb2em {padding-bottom: 2em !important;}
.pl2em {padding-left: 2em !important;}
.pr2em {padding-right: 2em !important;}
.m1em {margin: 1em !important;}
.mt1em {margin-top: 1em !important;}
.mb1em {margin-bottom: 1em !important;}
.ml1em {margin-left: 1em !important;}
.mr1em {margin-right: 1em !important;}
.m2em {margin: 2em !important;}
.mt2em {margin-top: 2em !important;}
.mb2em {margin-bottom: 2em !important;}
.ml2em {margin-left: 2em !important;}
.mr2em {margin-right: 2em !important;}

table.time-list th, table.time-list td,
table.price-list th, table.price-list td,
table.price-list2 th, table.price-list2 td,
table.recruit-list th, table.recruit-list td {
	text-align: center;
	font-weight: normal;
}

table.price-list2 {
	border: 1px solid #8DC21F;
}
table.recruit-list {
	margin: 0;
	padding: 0;
	width: 100%;
	color: #231815;
	border: 1px solid #1EAA39;
}

table.price-list th {
	width: 35%;
	color: #ff7864;
	background-color: #fff4ff;
}
table.price-list2 th {
	width: 40%;
	color: white;
	background-color: #1EAA39;
}
table.recruit-list th {
	width: 30%;
	text-align: left;
	padding-left: 1em;
	background-color: #FFFDED;
	border: 1px solid #1EAA39;
}

table.price-list td {
	color: #1EAA39;
}
table.price-list2 td {
	color: black;
}
table.recruit-list td {
	text-align: left;
	padding-left: 1em;
	background: none;
	border: 1px solid #1EAA39;
}

table.time-list {
	margin: 0;
	padding: 0;
	font-size: 2rem;
	border-top: 1px solid gray !important;
	border-left: 1px solid gray !important;
}
table.time-list th {
	padding: 5px 0 5px 0;
	background: none;
	border-right: 1px solid gray !important;
	border-bottom: 1px solid gray !important;
}
table.time-list td {
	padding: 5px 0 5px 0;
	line-height: 2rem;
	vertical-align: middle !important;
	border-right: 1px solid gray !important;
	border-bottom: 1px solid gray !important;
}
@media screen and (max-width: 1024px) {
	table.time-list th,
	table.time-list td {
		line-height: 1rem;
		font-size: 1rem;
/* padding: 6px !important; */
	}
}


ul.flatlist {
	margin: 0;
	padding: 0;
	font-size: 1.4rem;
	line-height: 1.5em;
        font-weight: 300;
        font-family: 'Noto Sans JP';
}
ul.flatlist li {
	font-size: 2rem;
	line-height: 2em;
        font-weight: 900;
        font-family: 'Noto Sans JP';
}
@media screen and (max-width: 1024px) {
	ul.flatlist {
		font-size: 1rem !important;
		line-height: 1.25em;
	}
	ul.flatlist li {
		font-size: 1rem !important;
		line-height: 1.5em;
	}
}

ul.komejirushi {
	list-style-type: none;
	margin-left: 1em;
}
ul.komejirushi li:before {
	content: '※';
	margin-left: -1em;
}

ul.nijyumaru {
	list-style-type: none;
	margin-left: 1em;
}
ul.nijyumaru li:before {
	content: '◎';
	margin-left: -1em;
}

ol.marusuji {
  counter-reset: my-counter;
  list-style: none;
	margin-left: 1em;
  padding: 0;
}

ol.marusuji li {
  margin-bottom: 0;
  position: relative;
}
ol.marusuji li:before {
  content: counter(my-counter);
  counter-increment: my-counter;
  background-color: black;
  color: white;
  display: block;
  float: left;
  line-height: 1em;
	margin: 0;
	margin-left: -1.25em;
	text-align: center;
	height: 1em;
	width: 1em;
	border-radius: 50%;
}

/* ----------------------------------------------------------------------
   最終的に以下は無効にする。
---------------------------------------------------------------------- */
.lineh100 { line-height: 100% !important; }
.lineh05 { line-height: 0.5em !important; }
.lineh08 { line-height: 0.8em !important; }
.lineh10 { line-height: 1.0em !important; }
.lineh125 { line-height: 1.25em !important; }
.lineh133 { line-height: 1.33em !important; }
.lineh140 { line-height: 1.4em !important; }
.lineh15 { line-height: 1.5em !important; }
.lineh18 { line-height: 1.8em !important; }
.lineh20 { line-height: 2.0em !important; }
.lineh25 { line-height: 2.5em !important; }
.lineh30 { line-height: 3.0em !important; }
.lineh35 { line-height: 3.5em !important; }
.lineh40 { line-height: 4.0em !important; }

/* ----------------------------------------------------------------------
 padding - 要素の内側の余白
---------------------------------------------------------------------- */
.p0{padding:0 !important}   /* padding-0px を指定するクラス */
.pt0{padding-top:0 !important}    /* padding-top0px を指定するクラス */
.pr0{padding-right:0 !important}  /* padding-right0px を指定するクラス */
.pb0{padding-bottom:0 !important} /* padding-bottom0px を指定するクラス */
.pl0{padding-left:0 !important}   /* padding-left0px を指定するクラス */

.p5{padding:5px !important}
.pt5{padding-top:5px !important}
.pr5{padding-right:5px !important}
.pb5{padding-bottom:5px !important}
.pl5{padding-left:5px !important}

.p10{padding:10px !important}
.pt10{padding-top:10px !important}
.pr10{padding-right:10px !important}
.pb10{padding-bottom:10px !important}
.pl10{padding-left:10px !important}

.p15{padding:15px !important}
.pt15{padding-top:15px !important}
.pr15{padding-right:15px !important}
.pb15{padding-bottom:15px !important}
.pl15{padding-left:15px !important}

.p20{padding:20px !important}
.pt20{padding-top:20px !important}
.pr20{padding-right:20px !important}
.pb20{padding-bottom:20px !important}
.pl20{padding-left:20px !important}

.p25{padding:25px !important}
.pt25{padding-top:25px !important}
.pr25{padding-right:25px !important}
.pb25{padding-bottom:25px !important}
.pl25{padding-left:25px !important}

.p30{padding:30px !important}
.pt30{padding-top:30px !important}
.pr30{padding-right:30px !important}
.pb30{padding-bottom:30px !important}
.pl30{padding-left:30px !important}

.p40{padding:40px !important}
.pt40{padding-top:40px !important}
.pr40{padding-right:40px !important}
.pb40{padding-bottom:40px !important}
.pl40{padding-left:40px !important}

.p50{padding:50px !important}
.pt50{padding-top:50px !important}
.pr50{padding-right:50px !important}
.pb50{padding-bottom:50px !important}
.pl50{padding-left:50px !important}
.pl80{padding-left:80px !important}
.pl100{padding-left:100px !important}

.deffontsize { font-size: calc(112.5% + 4 * (100vw - 600px) / 400);}
/*.deffontsize { font-size: calc(112.5% + 0.25vw);}*/
.deffontsize h1 { font-size: 2.5em;}
.deffontsize h2 { font-size: 2em;}
.deffontsize h3 { font-size: 1.75em;}
.deffontsize h4 { font-size: 1.5em;}
.deffontsize h5 { font-size: 1.25em;}

.fontsz01 { font-size: 0.1rem !important;}
.fontsz02 { font-size: 0.2rem !important;}
.fontsz03 { font-size: 0.3rem !important;}
.fontsz04 { font-size: 0.4rem !important;}
.fontsz05 { font-size: 0.5rem !important;}
.fontsz06 { font-size: 0.6rem !important;}
.fontsz07 { font-size: 0.7rem !important;}
.fontsz08 { font-size: 0.8rem !important;}
.fontsz09 { font-size: 0.9rem !important;}
.fontsz10 { font-size: 1.0rem !important;}
.fontsz11 { font-size: 1.1rem !important;}
.fontsz12 { font-size: 1.2rem !important;}
.fontsz13 { font-size: 1.3rem !important;}
.fontsz14 { font-size: 1.4rem !important;}
.fontsz15 { font-size: 1.5rem !important;}
.fontsz16 { font-size: 1.6rem !important;}
.fontsz17 { font-size: 1.7rem !important;}
.fontsz18 { font-size: 1.8rem !important;}
.fontsz19 { font-size: 1.9rem !important;}
.fontsz20 { font-size: 2.0rem !important;}
.fontsz21 { font-size: 2.1rem !important;}
.fontsz22 { font-size: 2.2rem !important;}
.fontsz23 { font-size: 2.3rem !important;}
.fontsz24 { font-size: 2.4rem !important;}
.fontsz25 { font-size: 2.5rem !important;}
.fontsz26 { font-size: 2.6rem !important;}
.fontsz27 { font-size: 2.7rem !important;}
.fontsz28 { font-size: 2.8rem !important;}
.fontsz29 { font-size: 2.9rem !important;}
.fontsz30 { font-size: 3.0rem !important;}
.fontsz35 { font-size: 3.5rem !important;}
.fontsz36 { font-size: 3.6rem !important;}
.fontsz37 { font-size: 3.7rem !important;}
.fontsz38 { font-size: 3.8rem !important;}
.fontsz40 { font-size: 4.0rem !important;}
.fontsz45 { font-size: 4.5rem !important;}
.fontsz50 { font-size: 5.0rem !important;}

